Sunday, October 28, 2007

I always wondered what was inside those things

Via Boing Boing, finally, the anatomy of a balloon dog. This is important research--probably being suppressed by the government for decades. Finally available to the public.

Friday, October 26, 2007

I love the liberation!

Twitter is a fascinating case study of the opportunities that still exist in the niches between existing applications/services/models out there. I've said before, Twitter fills a (very small) gap between IM and email. The O'Reilly Radar says something similar.

I distinctly remember people telling us our company idea was a lost cause because SAP was already doing something like that.. There was still plenty of room to distinguish ourselves from SAP.

Entrepreneurs should not be discouraged because "something similar already exists." If that was true, there would be no Microsoft, no Google, no Apple, no Facebook, etc. For your potential customers, filling a gap means complete liberation.

And with DTrace too!

And now I notice that Leopard has DTrace too!
To help you understand how the system behaves while your application runs, Leopard comes with DTrace, a comprehensive command-line monitoring utility that can probe almost any aspect of system performance. DTrace includes a large set of tools that cover most general aspects of system performance, including kernel and user space code. If there is an aspect of the system that you want to track that isn't already supported, you can create your own tool using the D programming language.
Note that the built-in Ruby comes with DTrace probes. This means you can trace the execution of your app from Rails, all the way down the Kernel and back.

Thursday, October 25, 2007

Ruby Inside - da di da dun!

From the Ruby Inside blog:
Someone / some people who have been responsible for integrating Ruby and Rails into the latest version of Mac OS X (Leopard) have written some notes on what was involved and how Ruby and Rails work in Leopard. The Ruby build is a customized 1.8.6 p36 and actually integrates into Xcode and Interface Builder.. now making it a relatively easy task to put together Ruby GUI apps on OS X. RubyGems is also installed with a smattering of the most popular gems preinstalled by default.
The office is awaiting our shipment of Leopard. Out of the box perl, python, etc, is one of the reasons I fell in love with OSX. I built my ruby 1.8.5 from source ("how rustic" says Sean) a few months back. It should be neat to see examples of ruby gui apps on the Mac.

Wednesday, October 24, 2007

Google Testing Blog: Automating tests vs. test-automation

Great summary of some of the techniques we have underway here to blur the line between test and development in Google Testing Blog: Automating tests vs. test-automation

Monday, October 22, 2007


I had a lot of opportunity to run across wild animals while growing up in the foothills outside the Valley. But that was 25 years ago, so I've always assumed that the wildlife would be on the decline in the area rather than on the rise. A few weeks ago the boys and Monica and I took a trip up to the foothills to go tarantula hunting. This time of year they're easily spotted walking across the road (males seeking mate). I was surprised at the abundance of wildlife. In particular I think the presence of predators is a good sign. I've seen an amazing variety of hawks in our trips up to the area. And talking to some of the locals there are are number of foxes, bobcats, coyotes, and the odd mountain lion, even today. I even had a chance to see an animal I never knew existed in the area (the Pine Marten) on our last camping trip.

These mountains are incredibly dry this year. I saw an article in New Scientist reporting on a study of mortality rates in trees in the Sierra Nevada that implies climate change is responsible for an increase. My wildlife surveys might be informal, but they seem to continue to flourish in the area.

Thursday, October 11, 2007

Defensive programming

A nice essay on what I characterize as defensive programming, "Confessions of a Terrible Programmer."

Scott McNealy in the Valley

I've received this from several people. The seats are probably going to fill up fast. Get yours while they're available. I suggested that our recruiter see if she can set up a table at the event. Not sure of the applicability to our business, but it should still be interesting. The only time I ever heard Scott McNealy talk was a keynote at a Unixworld conference about 15 years ago.

Wednesday, October 10, 2007

What's Normal?

I love using my Mac. But I have to use Microsoft software too. Well, I don't have to use their software, but it is convenient. I can tell when I'm using a piece of Microsoft software vs a piece of Apple software (or a nice 3rd party application like anything from the Omni Group). I can tell because the Microsoft stuff feels different to me as a user. There's glaring annoyances that stick out like sharp edges and scratch my skin every single time. The font drop down list in Entourage for example, or this gem from Microsoft Word whenever I open certain documents:

..when I close the document, I get this dialog:

What's Normal? Why should I care? What are the implications of choosing yes vs no? What's the difference between No and Cancel? Why should I care? I don't care.

Monday, October 08, 2007

Hence my two cables...

We must have spies in our camp--otherwise how could this post from the Atlassian News blog so perfectly describe our situation?
The quality of tools on the web is increasing far faster than most “boxed” enterprise software, and those web tools are free or low cost, and available immediately, as opposed to going through a much more involved procedure to get access to tools on the inside, or convince IT to make them available. Hence my two cables...
And yes, I literally have two cables.

The ideal batch size is one

The Lean Software Engineering blog has a concise historical perspective on the development of SDLCs over the past 30 years. Worth a read. In particular:
Back when the software development world was first trying to recreate the obsolescent mass-production culture of its day, the Japanese had already provided us with the answer. The ideal batch size is one.
When I apply this concept to my situation two things pop into my head 1) We'd better be practicing continuous integration 2) we'd better have full test automation. Otherwise, we can't do one piece flow (or even few piece flow).

Friday, October 05, 2007

Invalid extent entry

I recently bragged to somebody about OSX's geek friendly nature. Under the hood, it runs unix.

During my childhood I spent many long nights in the machine room rebuilding unix file systems using fsck. Crashed machines always resulted in file systems that needed some time of repairs. System admins learned the difference between the routine and the serious. More than once we were confronted with the inevitable 2:00AM question, "do I spend another several hours piecing together this file system, or cut my losses and restore yesterday morning's backup?"

Fsck was a powerful (and the only) tool for file system repairs. And the experienced admin could recover the most corrupted file systems if given enough time.

Fast forward 20 years: I'm attempting to upgrade my lovely wife's iBook to 10.4. But the upgrade is refusing to run due to a "disk error." I looked at the install log (which are conveniently made available by the installer app) and see a specific error Invalid extent entry. After a little poking around I realized that the error is coming from fsck, that it's a fairly minor error due to a corrupted directory, but that the only choices to repair are to format your disk or to buy a third party tool like DiskWarrior!

It seems that OSX's incarnation of unix isn't quite as rustic, or as "self service" as the unix of old. Apple's customer's expectations of ease of use must be evolving the platform into a PC with a really cool command line, rather than the hackers only system that was unix and is today linux.

Oh, and in case you're wondering, I bought DiskWarrior at CompUSA because the download version doesn't allow you to boot from CD (probably some licensing problem with Apple) and it made quick work of the directory error that was holding things up. A couple of hours of watching the barber pole and Monica's running Tiger..