image_science version 1.1.3 has been released!

Posted by Daniel Wed, 30 May 2007 20:59:13 GMT

image_science version 1.1.3 has been released!: ImageScience is a clean and happy Ruby library that generates thumbnails – and kicks the living crap out of RMagick. Oh, and it doesn’t leak memory like a sieve. :) For more information including build steps, see http://seattlerb.rubyforge.org/ [No attitude required, but if true, nice.]
Source: Polishing Ruby

Posted in  | no comments | no trackbacks

1/2 Century

Posted by Daniel Wed, 30 May 2007 20:25:00 GMT

Despite my right knee still giving me minor fits, I felt it was time to up the ante.

At the end of last cycling season I did a few 50 milers, and then the weather turned and I was busy with work and I never caught a nice day in the winter. I was trying to make them routine.

Despite more of a layoff this winter than I’d hoped, I’ve kinda picked up where I left off more or less. I still have weight to lose that I gained in the early spring after valiant weight flogging through the winter. And, my knees are still not 100%. But they’re closer than they’ve been in a long time. So I’m not rushing, but I’m trying to bring them along and get them healed.

Today’s ride started in Piermont headed toward Ridgewood, NJ (about 15 miles) looping toward Suffern and back (about 20). After the second bit of hill climbing I’ve done this season (hills and bad knees are not a happy combo) I decided to hang with my friend Jenni while she added some miles to her “I’m going to RAGBRAI and I better ride account” on a pleasant path, rather than ride a few more hills back to Piermont. She gave me a lift when we were done.

We started out a little cold, but the day warmed up beautifully. Considering I’ve only had a couple of weeks to ride, I’ve been struggling to drop weight, and I’m down to one problem on one knee, and it’s not yet June and I just clocked my first 1/2C… I’d say the cycling season is promising to be a good one.

Soon I’ll be ready for Seth to ride circles around me. :~)

Posted in ,  | 1 comment | no trackbacks

RubyMicrosoft

Posted by Daniel Wed, 30 May 2007 20:08:00 GMT

RubyMicrosoft: My colleague John Kordyback pointed out that at the heart of all this is realizing that Ruby is not Yet Another .NET Language but a whole community and attitude to software development. Ruby is a community where open source, agile thinking, and lightweight solutions are deeply ingrained values. He says a common problem in Redmond is that “They ask me ‘Why is this language important’ rather than ‘Why is this thinking important?’” [Unsurprisingly lucid]
Source: Martin Fowler

Posted in , , ,  | no comments | no trackbacks

Michael Brecker "Pilgrimage"

Posted by Daniel Tue, 29 May 2007 13:34:00 GMT

Michael Brecker "Pilgrimage": “Michael has gone up yet another notch with his writing and playing,” said Hancock, who has recorded and performed with Brecker since the ‘80s and appeared on one of Brecker’s biggest selling albums, Nearness of You (2001). “There’s always good news that comes with bad news, and that’s the good news – in spite of his condition, or maybe even because of it, he continues to climb mountains and move forward. That’s the best way to take a poison and turn it into medicine. He’s taken something that’s destructive and turned it into something extremely constructive.” [Astonishing energy in the playing. The writing is amazing.]

Posted in , , ,  | no comments | no trackbacks

You have to expect things of yourself

Posted by Daniel Tue, 29 May 2007 12:21:00 GMT

A couple of quotes from this article on Bo Jackson. I found the first quote from Jordan especially true.

Bo Jackson was always grouchily unimpressed with himself. Michael Jordan thought that was part of Bo’s magic. “Neither of us is very easily amazed,” Jordan told Newsweek in those days when he and Bo were the two greatest athletes in the world. “You have to expect things of yourself before you can do them.”

“What do you think of Bo Jackson?” a reporter asked, well, Bo Jackson.

“I’ve known this guy for years,” Bo said of Bo. “And nothing he does fazes me.”

Posted in ,  | no comments | no trackbacks

Lance Armstrong's LiveStrong Foundation

Posted by Daniel Fri, 25 May 2007 21:40:00 GMT

LiveStrong: Here’s the thing. A couple of weeks ago, I went over to the LiveStrong site. In the Cancer Support section, I filled out a form detailing what’s up with Susan and the kind of help we would like.

I expected maybe a form letter back in a couple weeks, maybe a list of local resources I could contact on my own.

Instead, the next day, I got a call from a lady who stayed on the phone with me for 90 minutes, heaping practical help. She set us up with ways we could save money on prescriptions. She conference-called in research foundations, hooking us up with clinical trials we might participate in. And while she was the model of efficiency, she was also incredibly caring and personal. She gave me her direct number and told me to call her when I was ready to take next steps.

[Just this weekend I started wearing the yellow bracelet again for personal reasons. Now I have even more reason to wear it. LiveStrong isn’t the only cancer related institution that needs support… but I feel really good about wearing that bracelet again, and buying a few more for friends.]
Source: Fat Cyclist

Posted in , ,  | 2 comments | no trackbacks

RSpec goes 1.0

Posted by Daniel Tue, 22 May 2007 21:34:08 GMT

RSpec: Spec provides a Domain Specific Language with which you can express executable examples of the expected behaviour of a system. [I haven’t had a chance to try this, but I’ve been following along for a little while. I’m looking forward to feeling what this is like.]

Posted in , ,  | no comments | no trackbacks

Release It! (Design and Deploy Production-Ready Software)

Posted by Daniel Tue, 22 May 2007 18:42:00 GMT

Release It! by Michael T. Nygard is filled with “from the trenches” advice and stories of the sorts of things that all of us who have deployed software run into. Issues of “scale” and “availability” tend to be business issues of immediate impact and are often ill considered in the design and redesign of software. More here.

Posted in  | no comments | no trackbacks

“Lists” a web-based outliner that supports OPML.

Posted by Daniel Thu, 17 May 2007 16:33:40 GMT

Today we will be shipping “Lists” a web-based outliner that supports OPML. [Interesting.]
Source: Joyeur

[Still waiting for a notice that they shipped this…]

Posted in ,  | no comments | no trackbacks

Joyent Connector to be Open Sourced

Posted by Daniel Thu, 17 May 2007 16:30:00 GMT

Joyent Connector to be Open Sourced: Joyent will continue to invest heavily in further development of Connector. We have a full product roadmap for our developers. Today we will be shipping “Lists” a web-based outliner that supports OPML. (More later.) That’s significant investment. [More cool stuff from the folks at Joyent. I’m so glad I have an account with them.]
Source: Joyeur

Posted in , , ,  | no comments | no trackbacks

World’s Smallest GPS Receiver

Posted by Daniel Thu, 17 May 2007 13:37:45 GMT

World’s Smallest GPS Receiver: Rakon, a 39-year-old New Zealand-based company, has developed the world’s smallest GPS receiver. Claimed to be as tiny as the size of a baby’s fingernail, the GPS receiver chip is small enough to be fitted into devices such as watches and cellphones. [leading to…] GPS Enabled Phone? Just swap sim card!: A-GPS is great technology. I’ll explain briefly - an A-GPS device takes the strength readings as normal from the satellites but sends the 3 or more values via the cellphone network to a central server to work out the coordinates of your position and returns them to the phone. This means all the lat/long calculations - the knowledge of the curves of the earth, the geo-spacial processing is all done external to the A-GPS chip. [Interesting…]

Posted in ,  | no comments | no trackbacks

Rails scraps

Posted by Daniel Wed, 16 May 2007 22:14:00 GMT

There’s some Rails things that I can’t seem to remember… because I often don’t think about them until first deployment. Here’s a few.

rake rails:freeze:gems (moves and unpacks Rails and it's gems into vendor)
rake rails:unfreeze (reverses the above)
rake rails:freeze:edge TAG=rel_1-0-0 (freezes to a specific version, modify the tag to suit)
rake rails:freeze:edge(freezes you to the latest version in the repository (usually unreleased))

Next we have the same routine for any other Gems you might need:

'gem unpack ???????' while in your vendor folder.

Replace the ? with the name of the gem you wish to unpack.

Having done that… you’ll need to add something like this to your environment file:

[There’s some notes about this in the comments, which brings about a way of DRYing some of the requires… and seems to change the number of times something is loaded. There’s also more information here.]
 config.load_paths += %W( #{RAILS_ROOT}/vendor/???????/lib )

Then you can ‘require’ your gem in your controllers or libs etc.

All the “freezing” is about ensuring that the version that you’ve tested is the version your application uses in production. Much deployment peace is found here. I tell you three times.

Posted in , ,  | 2 comments | no trackbacks

On minimalism in software

Posted by Daniel Wed, 16 May 2007 20:34:43 GMT

A long time ago I started writing code because I needed solutions for *my* problems. Not thirty other problems which made it difficult for me to get stuff done. I like getting stuff done.

Ruby continues to attract me after nearly 4 years. I’m amused at how little Ruby I’ve actually written. It’s the nature of the problems I solve with it, in combination with the incredible power of it’s terseness and well written libraries.

For example, a client has data in a MySQL database. The app that put it there seems to have gone missing in a move, and until recently the data was not required. As these things go, it went from “huh?” to “sound the alarms” in short order. My solution to their emergency? Roughly equivelant to:

require 'rubygems'
require 'active_record'


ActiveRecord::Base.establish_connection(
        :adapter => 'mysql',
            :host => '127.0.0.1',
            :database => 'something')

class User <ActiveRecord::Base; end

User.find(:all).each do |f|
  puts "#{f.name}'s email address is #{f.email}"
end

Sure, someone wrote a lot of smart stuff that I relied on… but isn’t that always the case? Well, it is for me. But that’s very little code to set up an ORM and return a useful object.

I recently worked with a C# implementation of the Active Record pattern and was amazed at how much more code (and config) there was involved in getting the same result. That’s not a knock on C# or even the implementation, but it seems that it is in the nature of Rubyists (and Ruby) to produce such minimalist design. I enjoy that.

Posted in , , ,  | no comments | no trackbacks

Distributed Ruby Workers on EC2

Posted by Daniel Tue, 15 May 2007 15:02:00 GMT

Distributed Ruby Workers on EC2: Simply put, DRb allows you to interact with remote objects via TCP as if they were located right on your system. Hence, to avoid locking our server, we will simply get another computer to perform the time-consuming task for us. Of course, now you’re saying: where am I going to get another computer? Well, how about Amazon’s EC2 [EC2 is clearly a game changer.]

Posted in , , ,  | no comments | no trackbacks

RubyCocoa Gets ActiveRecord Bindings

Posted by Daniel Mon, 14 May 2007 16:04:13 GMT

RubyCocoa Gets ActiveRecord Bindings: RubyCocoa gets ActiveRecord Bindings —RubyCocoa just keeps getting better. [Wait for the new Ruby bridge or…]
Source: Encytemedia - Home

Posted in ,  | no comments | no trackbacks

Older posts: 1 2