• Driving the Desert Bus

    There’s a natural temptation in the evolution of not-quite-successful-yet-not-quite-a-bomb products to make some small effort to fix the most egregious bugs, tune the operational monitoring to alert only in ‘oh shit we’re down’ circumstances and move the development resources elsewhere.
  • Google Apps for Domains

    Since my provider doesn’t provide SSL, IMAP or a decent webmail reader, I decided to take the plunge today and switch to Google Apps for Domains. Obviously it’ll take some time to see if it’s worth it, but so far I’m liking it.
  • The Fractal Geometry of iPhone App Design

    Brent Simmons has a post up about the amount of polish and thought that goes into an iPhone app. It’s true—I’ve never put as much effort into the details of an application as I’ve put into the app I’m working on.
  • Traits of a Good Developer

    There are a few things I think are essential to being a good developer. I’m probably parroting Joel Spolsky here, but I wanted to get them down while they’re fresh in my mind:
  • On Do(ugh)nuts

    I’m taking it upon myself as part of my ongoing community service to educate the public about the different sorts of donuts out there and their relative merits. So, here’s a quick summary:
  • Acalculia

    Watch this video.
  • On iPhone Development

    I work on a team at my company that, among many varying responsibilities, develops mobile applications that interface with our core on-demand web app. The idea being that a cellphone web browser is a less than optimal interface to our services and that a slimmed down, streamlined UI is a better approach. And what with the iPhone being the next big thing, it’s obviously next on our list of mobile platforms to develop for.
  • This has all happened before and it will all happen again

    I’m learning Ruby as a sort of professional development effort and I like what I see so far. Ruby’s a quick, concise and rich language that brings a lot to the table in terms of language constructs and platform support. Or so it would seem; I reserve the right to rescind this endorsement until I’ve spent a good month or so working with it in depth. In any case, I’m having fun with my first new language in a year or so.
  • Outside Projects

    I first got hooked on programming when my dad got us a copy of QuickBasic for our family’s Macintosh Plus. Later in high school, I graduated to coding in ThinkPascal on Mac LCs. And one of the first moments when I surprised myself at what I could do with these machines was when I completed my first render of the Mandelbrot set. It took me a week to figure out how to render pixels to screen (we were stuck on console programs at the time in class) and another week to figure out an algorithm that would actually do the calculations correctly.
  • MFC -> .NET

    So I work with MFC-based legacy applications for most my day. None of them were designed particularly well. They were created seven or eight years ago to satisfy a particular requirement. They did their job well but then mutated over the years to satisfy other requirements. With no eye to design or architecture, these changes were added piecemeal until present day, when what we have is a ball of code full of hacks, workarounds and general feature-aggregation.
  • Working from Home

    For my entire career until I joined my current company about a year ago, I worked in pretty much every conceivable office configuration. Huge cube farms, small team bullpens and everything in between. I even had an office once (how that happened is another story). But now, I work from home almost all the time. This isn’t a personal choice, it was a requirement for the job. In fact all engineers at my company (all 13 of us) work from home, leaving the support and sales folks as the only people in the office.

subscribe via RSS