Shipping Things

11 Sep 2016

I mentioned in my last post that I’m working on a Sandstorm app called IRC Idler. For the past few weeks I’ve been going full-tilt working towards an early alpha release. I’ve been better about focusing on one personal project than I think I ever have before. Heck, I’ve even been taking less consulting work because damn it I want to ship a thing for once.

I just built a package for the app. My plan is to dogfood it for a day or so, and unless something serious comes up I’ll send out a download link to the sandstorm-dev mailing list, soliciting alpha testers. I think this will be the first time I’ve formally asked for users/testers.

It’s still super janky, but I’m no longer working around bugs as part of my regular use of it. There are plenty of bugs, some of them known and I’m sure many unknown. There’s still lots of work to do, but it’s gratifying to ship a thing, even something that’s not a final version.

Most of my time on this has fallen into one of two categories:

  1. Figuring out how to talk to the sandstorm API
  2. Experimenting with the wonderfully under-documented protocol that is IRC.

Some time in the near future I want to write up some of my frustrations with the sandstorm APIs. While I think things will go more smoothly in the future, there’s a lot of incidental complexity involved in building a fully “native” app.

Dealing both of these issues has gotten me thinking philosophical thoughts about specifications, type safety, when you should pull out all the stops trying to make your software less error prone, what techniques are helpful under what circumstances, and when you should just say “fuck it.” I’ll probably get another blog post out of that sometime soon as well.