Skip to main content


Working With Development Seed

I'll get right to it.

I've decided to join Development Seed, a consulting and R&D shop in Washington, DC with whom I've done past work and known personally for over five years, in a full-time capacity. I'll be continuing to live and work in Portland, Oregon, though I will be visiting DC, a former home of mine, from time to time for code sprints. The first of these is next week.

Specifically, I'm going to be working on the MapBox team, continuing development of MapBox for iPad and getting into some server-side work in the Node environment.

So, three sections to follow with some more info: some background on my decision, a bit about the space and what we hope to accomplish, and lastly, where this leaves Code Sorcery Workshop.

Some Background

As I've mentioned here before, I've been working with Development Seed on the MapBox project since early last summer. I've had a blast, and I've long held the folks at Development Seed to be amongst the best innovators I know.

I have huge respect for Development Seed's impact on the Drupal community. Now that I've been working up close with them on a daily basis, I've seen their process and just how much heart they put into their work. I've also seen the willingness they have to head in new directions, specifically with things like the positively stunning TileMill and the work that I've been on in the iOS space.

At the same time, personally, I've been completely happy as a freelancer and solo shop. This past November, I reached the milestone of four years of being self-employed, and presumably with no end in sight. I've had great clients, fun and interesting projects, excellent travel opportunities, a sustainable pipeline of new work, and the chance to achieve an ideal work-life balance. I've lived abroad, moved between coasts of the US, released a new product, presented at conferences and been on a number of podcasts, and expanded into new areas such as iOS development and Mac OS X Server administration.

In short, when Eric at Development Seed and I started talking last month about a more permanent role with the team, I just couldn't picture doing anything other than what I was doing at present. I loved it too much.

The more we talked, though, the more I realized that the MapBox work has been one of the most fun, as well as the most iterative and experimentation-driven, projects that I've had the pleasure of working on. As I saw innovation continue in the spaces around TileMill and the MBTiles format, I couldn't picture not being involved firsthand. I wanted to be there. A wild ride is about to begin.

I've been tempted many times in my solo career to join other firms, many outstanding in their own right. Turning down several of these has been very difficult. But none felt like they were tempting enough to give up the indie lifestyle. I much preferred working on a project basis as a hourly contractor for the control over my time and work style that it afforded me, as well as the ability to keep the work interesting through variety.

Up Next

At Development Seed, I'll be focused on the iPad space in particular, eventually hopefully working on server-side technologies as well. I've been involved in the server-side technology space (in the form of PHP/MySQL, often Drupal) for well over a decade and Cocoa programming for over six years, but I feel like both areas are just starting to get really good at this point in time. I think the things we will be building will be, as Development Seed likes to put it, positively disruptive.

Such a goal is exciting and challenging. Knowing that that is the driver behind what we're doing, both in the tools we provide people as well as the open source technology that we are releasing in order to impact even more people, is awesome. People in non-profits, governments, and developing countries will have access to our tools. Just have a look at Development Seed's about page for some background on the excellent work they've done so far.

In the near term, I hope to be thinking hard about what the touch interface brings to mapping technology, as well as what it means to have highly custom and personal maps offline and with you everywhere. I can see a time where it just doesn't make sense to collaborate around anything with a geographic context and not have instant, touchable, personal and interactive access to what you're talking about.

I attended a phenomenal conference in October called SecondConf and saw Brian Boyer from Chicago Tribune speak there. Brian's talk on hacker journalism really got the wheels turning for me and I entered 2011 really wanting to focus on the open data and positive social change spaces. Joining Development Seed is a natural fit with that. And as it turns out, Brian is now using MapBox tools in his work!

The Workshop

My company will continue to exist at the present time as an entity, though I do not expect to have the bandwidth to take on any consulting work for the foreseeable future. On the products side, my apps will continue to be offered and I hope to make incremental improvements to them. In fact, both of my main apps are in active development right now.

Over the course of the four years that I've been on my own, I've realized that I'm not really a product person. People know and love my apps, and I use them both myself every day, but a company built upon software download sales is neither something that I found particularly motivating day to day nor sustainable with a healthy work-life balance. Again, for me, personally -- I have many friends who do this and do it well. Keeping the apps moving, but largely devoting my time to services, are what worked best for me.

That said, my apps are useful to certain people and I've put a lot of heart into them. I want to continue to keep them alive, though perhaps not at the growth rate that many others in the community enjoy. But none of this should come as a huge surprise to anyone who's actually watched the pace of development thus far.

In short, I'm off the consulting ship for a while and my apps are not being sold nor end-of-lifed. I will continue to improve them when I can and how I see fit, and will continue to evaluate where they are and if the directions need to change to best benefit my users.

In Conclusion

I'm excited for the future. If you had told me even a month ago that this is where I'd be today, I've have hardly believed it, but now it feels right. I'm looking forward to being on an outstanding team -- and being positively disruptive.

DrupalEasy podcast interview

I'm a bit late in linking to a podcast interview that I had the pleasure of being on recently.

DrupalEasy, an organization focused on training and consulting around making Drupal easier to use, runs a podcast interviewing various folks in the Drupal community. My interview was about my work on Drupal, my business in general, Cocoa desktop and iPhone work, my Drupalcon presentation, my career history (in brief), and a lot more.

I had a great time being interviewed by Ryan and I hope you'll take a listen!

The Price of Free


First off, I realize that I'm a little late to blog about this, but this past weekend I've been in the process of moving. I'll certainly be posting more on that in the not-too-distant future, but suffice it to say that I've been a little busy these past couple days...

Anyway, last week, I was thrilled to hear from my friend Daniel Jalkut of Red Sweater Software that Leo Laporte singled out and mentioned Pukka on MacBreak Weekly, his weekly podcast, as a Pick of the Week. Ever since I learned that both Leo and productivity geek and frequent show guest Merlin Mann had used Pukka, I was hoping that they would mention it. A few months ago, my friend Jim alerted me to the fact that Pukka's posting sound effect appeared in the middle of a MacBreak Weekly episode (Episode 65, about 10:20 into the show) but no mention was made of Pukka -- though obviously someone was using it during the show! That's why in this past week's episode, when Leo and the guys spent a good chunk of time talking about Pukka, I was really excited! I found the spot in the show (Episode 82, about 1:36:18 into the show) and my wife and I sat down to listen.

On the whole, I was quite happy with the feedback -- after all, Leo said "I love Pukka" and "Pukka is simple -- it just does what it does." But pretty quickly, though the feedback about the app never went negative, I heard something that made both my wife and I take pause -- "They shouldn't charge for it, but they do."

I'm not going to rehash arguments for and against this, as Daniel wrote eloquently on this and received 87 comments on his blog post before he closed commenting. I really wanted to get my word in there, but the time for that conversation has passed (however, you should still go over there and read both Daniel's excellent analysis as well as the many thoughtful comments if this is a topic of interest for you.) Other folks also got their say on their own blog posts: Michael McCracken, Tom Armitage, Matt Johnston, and Baron VC, for starters.

One of the commenter's thoughts, about Pukka being no more than two hours of work, is ludicrous enough that I'm not even going to address it save mentioning a few nuggets of Pukka's programming that could keep you busy for more than a couple hours each:

  • AppleScript support
  • Spotlight support with Core Data
  • Scalability testing on up to 25,000 bookmarks
  • Custom managed object deletion policy in Core Data (Hint: when deleting a bookmark, only delete each of its tags if it was the last bookmark for that tag, and when deleting a tag, only allow deletion if all of its bookmarks are deleted, but maintain a consistent and responsive data set during these transactions. Also, see above re: 25,000 bookmarks.)
  • Sparkle support: Cocoa code, but also a distribution and appcast feed update process.
  • Working out fun API issues like inconsistency and client throttling.
  • Trying to implement dockless mode while maintaining future compatibility with Leopard code signing. Also, taking the time to blog publicly about it as a way to help other programmers as well as to open your own thinking to analysis & criticism by others.
  • Dealing with a Leopard API instability that is core to your application. Also, taking the time to blog publicly about it for your users and for other developers.
  • Doing the above with an installed user base on Tiger and Leopard.
  • Doing the above, while providing what I feel is an above average level of support, for two years.

I'll leave that argument as is -- blame the above list on a lot of driving in the past few days while thinking about that specific comment ;-)

It's true, at first glance, Pukka may not look sexy (it doesn't produce smoke effects, after all) and may seem to be nothing but a simple form-like frontend to a free, public service, but as many kind commenters on the above-mentioned blogs have pointed out, and as Leo himself summarized when he said, "It doesn't do much -- I just love it!", Pukka represents hours and hours of thought and planning and attention to the user experience -- that is what is king in the Mac software business. Mac software for me is like a good relationship -- the more time you invest in the software, the more richly you will be rewarded with little surprises and delights along the way. You can see the kernel of this idea in my first post here over two years ago:

I set out to write a program that does the actual posting and I had it working that night. It grew from there as I lovingly tweaked it and worked with beta testers to make it better. I hope you like it. What’s more, I hope that you’ll support my efforts so that I can keep the creative juices flowing.

I followed that up a few months later when I started charging for Pukka:

If you look at my blogroll, you’ll see over 30 Mac developers or products that I admire, nearly all of which I use and have paid for, if they charge. I’ve easily spent several hundred dollars on Mac shareware [...] The Mac has shown me what it has undoubtedly shown you — that software is art, and Mac users have deeper loyalties than price points.

On the topic of pricing, it's true that there is some voodoo to determining the price of a piece of software that you've created, and I say that even though I do not make my entire living off of Mac software (though I will point out that Pukka enabled me to bootstrap my own business, including starting out on my own and enabling me to attend developer conferences and meet like-minded entrepreneurs.) I don't typically like to quote the same blog when discussing two different points, but again Daniel Jalkut nails this topic in his post The Price is Wrong from several years ago (there's a reason Daniel attracted a Daring Fireball link and 87 commenters on his latest post.)

I'm all on board with free software if it works for the developer -- in fact, the day the MacBreak Weekly episode was published, I released a little freeware application called Snarf for icon designers. I maintain and build Drupal modules. And before that, I released a number of open source programs like Ticketsmith, spliff, and purgeimap.

But for me, it all comes down to this: what will the market support for an application that, for the right user, adds at least that amount of value to their workday? For me, right now, that's what I'm charging for Pukka. I hope that you agree, but if not, I fully support your right to make a better application, at a price point that works for you, or to use the free services that Pukka works with yourself directly. And I'll even help you out if I can, because others have certainly helped me along the way.

Syndicate content