Friday, May 26, 2006

Maybe I'm Too Well Paid?

I have yet to work for an employer who will buy software tools for the team when we ask for them. The beautiful side of this is that it drove me to pursue open source alternatives, which has proved to be a very good thing. One of the ways a state agency is ill-equipped to produce great software is that their byzantine purchasing process makes it very difficult to get development tools. Apparently the only place we can easily purchase from is shi. If shi doesn't carry it, then for all practical purposes, it doesn't exist for us. I guess no one has explained to the state agencies that we're entering a new golden age of independent software development. Software in boxes is so last century. I have been using a trial version of TextMate, a fabulous text editor for developers on the mac. Its entire development is the work of one nice young man from Copenhagen. This software is worth more than the asking price (around $50), and Allan deserves our money, so I approached my boss, gave him a flashy demo, and asked him if he can get it. After explaining the near-impossibility of fulfilling this request, he offered me an intriguing organizational hack: "If you pay for it with your own money, I'll reimburse you in time off." By the way, this is the officially-supported means of compensating for overtime, which when you think about it is not really a benefit ("You get to work on Saturday instead of Monday!"). At first, I was excited. A solution! I can get all the software I want! "See you in a couple of weeks boss, there's lots of stuff I wanna get." But then I started wishing I wasn't paid quite so well. If only I made minimum wage, I would get to take more than a day off in compensation for buying TextMate. As it is, though, I only get two and a half hours. Sheesh, that's only a long lunch. It's funny, ever since my son was born I have become very philosophical about time, about how I should value my time ever more highly. When faced with the chance to pay money for time, it suddenly feels like a different equation. In this particular case, it's a no-brainer, because not only do I get two and a half hours back, I get some great software! I guess the problem in general with being compensated in time, is that just like that, it's gone. There's a larger lesson here, isn't there? Time, she is a cruel mistress.

Friday, May 19, 2006

Flirtation with MacBook Pro

I'm borrowing a shiney 15" MacBook Pro from work. First impression? It's cooking my lap! I had heard that these guys run hot, but it's leaving a MacBook-shaped mark on my body. My other impression is that you can sort of tell that the Intel machines aren't as reliable (yet) as their PowerPC brothers. One of the first things I tried to do was download the new Intel compatible version of Eclipse, and on two attempts Firefox would only download the first 75% or so, and then StuffIt Expander would try to expand the incomplete file, hang and eat one of the CPU cores until I opened Activity Monitor to force it to quit. I'm sure there is an Intel mac in my future, but playing with one rubs off some of the mystique. It's still just a computer. It's good for me to learn not to covet.

Wednesday, May 17, 2006

Brainless Stock Photography

Part one of a new series.


This woman loves her computer so much, she'll sit in front of it even when it's not on!

Update: the series began unofficially last October with this beauty from Apple.

Zach Thomas: Browser Maverick!

I guess Firefox is just too popular for my taste. I'm switching to Camino! Actually, I'm just giving Camino a test drive. After all, Greasemonkey contributes a great deal to making Firefox the coolest browser in the world. We'll see where this goes. Heck, I could still wind up with OmniWeb or Opera.

Monday, May 15, 2006

Impactful Website

Thank goodness. Apparently I'm not the only one who despises the use of the word "impact" as a verb.

Bubble or No?

In a new article at BusinessWeek (apparently it was written in the future — it's dated seven days from now), they consider the question of whether we're in the midst of another tech bubble, headed for another crash.

The authors say probably not, and I agree with them. While it's true that many new companies are starting up with copycat ideas and little real value, the difference this time is that they are spending next to no money to get started. Innovation in business is just like innovation in nature: a thousand ideas must perish to find one that will propagate to future generations. In this era of cheap startups, there is very little harm in failure. This may prove to be an ideal environment for creating wealth in the Paul Graham sense of the word.

Friday, May 12, 2006

You Know You're Having a Rough Week When…

…it's Friday and you have your first chance to open your email, read your RSS feeds, and walk over to the vending machine to buy a Coke™.

Tuesday, May 09, 2006

Skype + WiFi + Itty Bitty Phone

As a sometime rock star, I can attest to the difficulty of making and receiving phone calls while touring the globe. My cell phone won't work overseas. Every country has its own version of pre-paid phone cards. They're expensive (the last time I was in Europe, I racked up more than $300 in phone calls to Elizabeth). And they're complicated: Every country has its own arcane formula of prefixes, country codes, area codes, exchanges, and extensions. The friendly robotic instructions will often not be in the language of your choice.

Those days are over. SMC has announced a WiFi phone with embedded Skype. Skype is a popular software system for making free calls over the Internet. They have a service for making calls to other Skype users and to regular telephones, and they have a service that gives your Skype account an ordinary phone number that people can use to call you from any phone. To this point, Skype has been a tool for nerds who like to keep their laptop computers around them at all times. With the advent of SMC's new phone, you won't need a computer at all to make and receive calls from anywhere.

There is a major caveat, of course: you have to have access to a WiFi network to make or receive calls. This isn't so bad, especially with the proliferation of Internet cafés worldwide. And it's only a matter of time before ubiquitous wireless Internet access blankets the earth.

Monday, May 08, 2006

You Know Someone is a Bad Software Manager When…

A software project manager who shall remain nameless was staffing up a new team. We were standing in line together at a hamburger cookout and after some small talk he asked me if I knew any software engineers looking for work.

“I know of one, but he is really unlikable,” I said.

Said the manager, “If he’s good, his personality doesn’t matter.”

He went on to drive his project into the ground. I wish I was making this up.

Sunday, May 07, 2006

Screencast: Adding a Drawer to a Window

I've been having a lot of fun with Cocoa all weekend. Inspired by Apple's Core Data movie (which I found out was done by "Wolf" Rentzsch), I decided to make a short movie to share a little of what I learned recently: How to Add a Drawer to a Window with Cocoa.

Saturday, May 06, 2006

Rocking with Core Data

My wife and child are in San Antonio for the weekend, so I'm left alone to — what else? — write code! I have embarked on a 36-hour code jam with Objective-C and Cocoa. I'm attempting to build a personal finance application for my own use that may turn into something more.

If you want to write apps for OS X and you'd like to be productive in a hurry, I super highly recommend watching this video tutorial from Apple that demonstrates building an application with a technology called Core Data. Core Data was introduced with Tiger (aka OS X 10.4) and is just monstrously useful. With the information in the tutorial alone, you can write a zillion simple, handy apps.

Improv Everywhere Mission: Best Buy

Oh, the glory. This is my kind of civil disobedience.

Friday, May 05, 2006

Backyard Veggies

Let's check in on my garden! I am a complete beginner using Mel Bartholomew's Square Foot method. The basic idea is that you plant in boxes filled up with ideal soil, and that you put each crop into one square foot, marked off by a grid. Here's the box I planted mid-March. It's four feet on a side, for a total of 16 square feet. I've got pole beans, purple bush beans, cucumbers, scallop summer squash, cherry tomatoes, bell peppers, New Zealand spinach, parsley, two kinds of beets, and four kinds of lettuce. My garden, all 16 square feet. Waiting for my cherry tomatoes to turn ripe is hard work. This is a variety of Romaine lettuce called "Freckles." Here's another box ready for planting.

Venture Voice

Greg Galant at the entrepreneurship podcast Venture Voice has a remarkable talent for conducting interviews. He's a great listener, and he has a knack for asking questions that make it easy for his subjects to talk, unlike this bozo who, in his interview with Paul Graham, barely lets him get a word in edgewise. Great work, Greg. I always look forward to the next interview.

Wednesday, May 03, 2006

Feel Like Going to Berkeley?

Here is an embarrassment of riches: http://webcast.berkeley.edu/courses/ I just watched a couple of videos of Alan Kay, inventor of Smalltalk and most of the user interface innovations we take for granted in contemporary graphical operating systems. Here are parts one and two. Not only will you be amazed again and again while watching these lectures, you will become convinced that computer science has been at a virtual stand-still since around 1976. I can hardly believe how much milk Berkeley is giving away for free. My son is growing up with a wealth of resources at his stubby fingertips.

Tuesday, May 02, 2006

Simple Productivity

I came up with a technique for my whiteboard that is working really well for me:

I have a list of the major tasks that still need doing, the ones that would take more than a day to complete. Right next to it on the same whiteboard, I put a list of little things that I would like to complete today. Every morning when you're ready to get to work, you mentally decompose the big items into a handful of next actions and put them on your TODAY list. Ask yourself the following question: "What is the list of accomplishments that I could truly feel good about having finished by the end of the day?" Like you, I am easily distracted, but now when I catch myself being swallowed by NetNewsWire (thanks Brent!) or http://developer.apple.com/documentation/, I just turn my head a few degrees and look at my list. Then I latch onto something and grind through it.

It has been really important for me to have this list on a whiteboard staring me in the face. I have tried Trac and some other software tools, but I find it's far too easy to drop a ticket into the system and let it languish indefinitely. Physically crossing things off feels good, especially the big ticket items.

I have read David Allen's "Getting Things Done," and I recommend it highly. You can get a lot out of it even if you don't implement the full system, which requires a ton of discipline, and I haven't ventured that far yet. The book reinforces a lot of ideas that weren't new to me, but what was new to me was the idea that we can free ourselves from the nagging and stressful voice inside our heads that is constantly inducing us to panic because the library books are overdue and the gutters are clogged and the car needs an oil change and your son's 2nd birthday is in two weeks and on and on. I have always taken this voice for granted, a necessary evil of complicated times. The prospect of gaining back all the energy you waste worrying about 150 things at once is truly liberating.