Gobo is made of Fail

I spent a day messing with Gobo, and X is still messed up.  Plus, Gobo seems to have even worse problems figuring out dependencies than other distros.  Here’s my experience, in a nutshell: Look for some commo package using FindPackage (ssh, Xorg, etc).  Wait while, every single time, it tries to sync with some server (caching is, obviously, broken).Be unable to tell whether the package is a available as a binary, but at least we have a name.Try to install some common package (InstallPackage).

Read More
|

sup... again!

Argh!  Aaaaargh! So, I’m totally addicted to the gmail mail management workflow.  I admit it.  I can’t bring myself to use a traditional email client – it is, simply, painful.  So, yesterday, I was going to use sup again (despite it’s critical flaws), only now sup-sync segfaults!  I’ve tried everything, including deleting the .sup directory.  There’s no help from Google. There’s no other explanation: I’ve angered the software gods, and they’re punishing me.

Read More
|

The sad state of operating systems (and Linux distributions)

I spent several hours yesterday getting NixOS installed on a spare laptop.  I’ve been toying with Nix for a couple of years; it is an elegant solution to a thorny problem that all operating systems face, and about which I’ve written before: dependency hell. The problem, in a nutshell, is that all modern software is built upon other software.  These are dependencies, and often, the software being depended upon isn’t explicitly aware of the dependents.

Read More
|

sup disenchantment

Ugh.  Harsh reality rears its ugly head. It turns out that sup isn’t as great as I thought it was.  For one thing, it doesn’t write state back to the server.  Consequently, if you ever view your inbox with anything other than sup – or, god forbid, with sup itself running on a different machine – then all of the work you’ve been doing to delete, flag, thread, label, and read email messages is lost.

Read More
|

Sup is an outstanding email client

Sup is a console-based email client that provides GMail-like management of  mail accounts.  It supports mbox, IMAP, and Maildir, and I’m here to tell you: it rocks.  Archiving, labeling, filtering, tagging… the workflow of mail management is almost identical to how you manage email in GMail.  I’d been slowly deprecating my other mail accounts in favor of GMail, but this was primarily because no other mail client (on Linux) provides the same capabilities as GMail.

Read More
|

NoSQL, and the Zone Of Pain

You can do some incredible things with SQL.  It’s a very full and complex language, and relational databases are venerable and well-tuned.  There’s a movement called NoSQL which argues that relational databases aren’t appropriate for all problem domains, and that other database paradigms should be considered in any problem. NoSQL focuses on key/value databases  – not strictly; you get graph dbs and even XPath query DBs, but most of these “distributed” DBs boil down to key/value DBs – since that’s what most of the proponents are.  I haven’t yet encountered a NoSQL advocate who recomments an OODB, for instance.  They’re all about Hadoop, Riak, CouchDB, HBase, and BigTable (although, there are more).  I suspect that this is because Google gave these DBs a lot of credence when it was exposed that they weren’t storing their data in a SQL database.  OODBs never had such a persuasive validation, and consequently are much more rare.

Read More
|

Strange dreams

In my dream, Brett and Marnie (my siblings-in-law, above) came by, and they both had flawless skin from the California sun.  Marnie had gotten plastic surgery, and was telling us about how disgusting it was, and about how she woke up in the middle of it and had to have more sedative administered.  She now looked like Claire Danes.  Both of their hair was lighter – Marie is already blonde, but Brett’s a brunette, so now he was sort of brown with blonde highlights.

Read More

Quality is not optional

I keep seeing this “good enough” meme going around.  At a company meeting where I work, recently, management was espousing the same crap. I can only hope that these people are plagued with “50%-good” products.  How about some 50%-good tires on their cars?  Maybe they’d like some 50%-good surgery, or a 50%-good pacemaker.  How about getting to fly in 50% good airplanes for the rest of his life?  I know!  Let’s give their kids some “good enough” education!

Read More
|

More on VCS, branching, merging, etc.

Martin Fowler has posted a good discussion about the various flavors of processes to manage branching and merging.  There’s a lot of good information in there.  His conclusion is that cherry picking with the VCS is undesirable, that cherry picking should be done in software, and that continuous integration is the preferred process. It’s a good read (with pretty diagrams), although I don’t agree with his conclusion. In particular, he ignores the fact that some categories of changes can not be continuously integrated.  For example, systemic architecture changes are one category which often can not be continuously integrated.  Also, the examples provided by Martin entirely ignore parallel branches (in the feature-set sense, rather than the VCS sense) of the software, and/or long-lived support for releases.  Of course, these are exceptions, and nothing in Martin’s suggestion prevents the use of cherry picking to solve these cases.

Read More

Multitasking and Software Development

Three articles that I came upon recently seem related, although they stem from unconnected sources. The first is the Stanford study which shows that multitaskers not only don’t do individual tasks very well but actually multitask more poorly than non-multitaskers do, and that they don’t realize it, either. The second is a very well-written article by Paul Graham about the difference between Maker’s and Manager’s schedules. Of course, both provide examples of the Dunning-Kruger effect.

Read More
|