Thursday, 27 March 2014

Unusable software doesn't mean it's complicated

There's a weird perversity in some circles of software development where difficulty of use is a point of pride. The twisted reasoning goes that, if you have mastered something that is very difficult, then you must be very good, and the task performed by that software must be exceptional too. The online support communities get quite snarky at newbies (presumably because the n00bs couldn't possibly understand what we geniuses are doing up here in the stratosphere) and nobody aims to make the software easier to use, not just because that sounds like "dumbing it down", but because they literally cannot imagine another way.

The problem is often that the biggest difficulty in the system is the badly designed software obscuring what should be a relatively simple task. Oracle database developers vs Microsoft SQL Server is an example I have seen in practice.

SQL Server is a robust, full-featured program that runs reliably and doesn't require constant hand-holding from developers. The online community is helpful and professional. Oracle is less stable, much more complicated to operate and operations that are simple in SQL Server require a lot of time and effort to accomplish in Oracle. The online community is elitist and hostile, in general, though there are some helpful people too.

Why should this be the case? Both programs are database servers. Both do essentially the same thing, but one does it better in terms of usability, and that seems to follow through to the community online.

Mokalus of Borg

PS - My experience with Oracle is second-hand, but I trust my colleague.
PPS - I used to think the same way as those snarky, unhelpful ones. I've changed my mind.

No comments: