There are quite a few meaty issues on our ballot this year. There is State Initiative 1351 which would force the state to fund our schools at something like a reasonable level. An easy yes. There is Initiative Measure No. 591 which would further reduce rules on the ability to transfer killing machines (known as guns) without any form of safety check. Bad idea. No. And of course Initiative Measure 594 which would require that nobody can just hand out a killing machine without a background check, an easy Yes! We can return Jim McDermott to Washington, always a good idea. There is an infinite number of judicial races, most of which I’m not going to vote in because I believe the candidates have tainted themselves by raising money that puts them in hock to the people they are supposed to oversee and in many cases candidates couldn’t even be bothered to put up websites to fully inform voters. If a judicial candidate can’t spend the time to talk to the voters then don’t expect the voters to vote for them. For those in Seattle there is a metro bill we really need to support. For those who haven’t read one of my ballot cheat sheets before you should probably know that with the exception of Jim McDermott I generally don't vote for Democrats or Republicans.
I’ve joked for over a year now that if there ever was a HTML 6 its marquee feature would be Node.js. In other words I should be able to write a packaged app that sits on a device that has one part running in a browser/webview and another part running a local Node.js instance that I can use to accept incoming request. Furthermore I need to be able to build and deploy HTML 6 packaged apps on at least (but not at most) - Android, iOS, Linux, OS/X, Windows desktop and Windows RT. The purpose of this article is to lay out my nefarious plan for making HTML 6 packaged apps real.
The good news is that Node.js does run on Android. The bad news is that at least at the time I’m writing this the build process requires a few extra steps. Nothing too scary though. See below for details.
Below I look through options to add ad-hoc mesh support to Thali. I evaluate Wi-Fi Direct, Bluetooth, Serval, OpenGuardan and Commotion. It’s clear to me that at least the open source mesh technologies are not ready yet for prime time. They need more time in the oven. But both Commotion and Serval (which are working together) are exciting and I can easily imagine in a few years them reaching the point where they are ready for prime time. But not today.
This leaves Wi-Fi Direct and Bluetooth. Both are pretty seriously flawed for our mainline scenarios which involve opportunistic synching. They are really only useful when dealing with a small group of peers on a regular basis over a long period of time. We do have those scenarios but they aren’t as high priority at the moment. So for now I’m just not going to worry about it.
[Note: Originally published on 9/4 but updated on 9/5 thanks to Ben Mendis who kicked me in the rear to take a better look at Commotion. I updated again on 9/10 thanks to comments by Michael Rogers around limitations of Wi-Fi and options around Bluetooth. On 9/15 I updated the Bluetooth section based on more of the excellent conversation with Michael Rogers and added a section on AllJoyn. On 10/3 I added a section on Bluetooth Low Energy]
I evaluate below a bunch of backlog managers. I picked them based on what looked interesting. Not an ideal methodology but there are so many of these I had to narrow it down. The one that did everything I wanted was YouTRACK by IntelliJ, even the pricing was outstanding. But I rejected that option (for now anyway) because their UX is just too confusing for me. I actually had settled on Flying Donut and started to use them but I quickly realized that they were too simplistic. They didn’t do a good job of allowing me to manage iterations, epics and releases separately. So Tim Park had mentioned he had used Pivotal Tracker at his previous company and I tried them out. They aren’t perfect and their beta has some bugs but they had a really great balance between simplicity and flexibility. So hop on over to our new tracker and see how we are using them!
In this article I explore the options for places to stick my emergency cash. This is cash I need in case things go ’bad’ for us. So my primary concern is safety. Below I walk through the options and discuss how I handled things. Since I am not a financial expert and don’t play one on T.V. your mileage may vary.
One of the sessions I went to at Foo camp was about being a jerk. It seems we in software development land have a real habit of being jerks to each other and to our customers. The question the session discussed was - does it have to be so? I think the answer is actually, given how we run companies, probably. So let’s change things!
Thanks to the outrageous lies that Jon Udell told about me to Tim O’Reilly and Sara Winge I managed to get invited to Foo Camp this year. I had a chance to talk to a bunch of people about Thali. What I learned is that Thali doesn’t fit the Silicon Valley model and that’s just fine.
Zooko’s triangle proposes that a global naming system can be human meaningful, distributed or impersonation proof - pick 2. Below I look at Pet Names, the traditional way of handling Zooko’s triangle. Then I look at proposals that claim to actually solve Zooko’s triangle and show several attacks that these systems don’t appear to solve and so argue that Zooko’s triangle still stands.