Recent blog entries for insom

23 Feb 2005 (updated 23 Feb 2005 at 13:19 UTC) »
titus, Market Forces is hell. In prose form. I'm unclean by association from owning it.

Which would be fine, really. There are lots of bad science fiction authors- one day I hope to be one myself. But Altered Carbon is such a fantastic book that I weep- weep!- to read how boiler-plate cyberpunk Market Forces is.

Really, the only new thing that it adds is the whole concept of "driving" for positions. This is not only totally silly (like; no extrapolation from the current world), but it's not even heavily featured until the end of the book.

It's like in the middle he thought, "This is a little nerdy", and decided to make a Tom Clancy / Robert Ludlum political thriller.

Sigh.

28 Oct 2004 (updated 28 Oct 2004 at 16:00 UTC) »
Posit: Contract programming is a business destined to deliver "bad" products.

I had avoided the terms "sub-standard" and "sub-par" for the same reason that I avoid the term "industry standard practice". Because being widely used does not make anything intrinsically good.

I'm a contract programmer, and while I'm willing to admit that I might be very, very wrong here, I've about 5 years experience to the contrary.

It's not that my project managers have failed, or the companies have failed, or (hopefully) that I have failed: Software development is an expensive process, especially with contract programmers or consultants like myself.

It requires lots of expensive programmer (and designer, and PM) time to bring a product "to market", and for most companies that I've worked with when it ticks the boxes on the functional spec, or does everything that it's supposed to do then it gets the green light.

Now, I'm sure programmers who care about their projects are aware of wanting to just add a little more polish to the application, and the pragmatic among us will stop themselves.

If you're working on a quotation, then you are not getting paid to add polish. If you are working on time & materials, someone else is paying for that polish, and if that polish doesn't bring in revenue equivalent (or better) to what you spent doing it, then you are literally wrong to do it.

Paying programmers by the feature, or by 1000s of lines of code, is akin to paying writers by the word. We live in a world of penny dreadful software.

At this point, some people would break into song about how great OSS is. (That's not good, hackers, that's not good ...). OSS in some cases suffers from a different problem, which is that people scratch an itch.

This leads to absolutely top-notch development environments, programming languages and text editors, because these are the tools of the trade. Programmers use them every day, and most of the popular ones have had years and legions of programmers wear away any of the burrs.

My theory, which might be wrong, is that somewhere there exists a balance between outside measurement (users, and eventually, money) and aesthetics (abstractions, good code, corners rounded and not cut).

I've been reading Hackers & Painters (it shows, doesn't it?), which raises issues similar to this. With a target user base that has a choice to use something else[1] and something to gain, I find it easy to design a user-centric application, but with very harsh monetary and time constraints, I find it hard.

Ergo: The only way to develop quality software, is to work for yourself, and ultimately be the one responsible for if users prefer your product to a competitor's. It's your money you're spending on the development, but then it's you doing the work required to really make it shine, and you reaping the rewards.

[1]

I've developed a lot of intranet applications; when there is no choice, users will put up with most usability failings.

In fact, I've had people overload fields rather than ask for extra ones; something I completely don't understand. (For example, naming something "Hotel Name 5 Star" instead of asking me to enter a "Star Rating" field for the system.) "Five Worlds" from Joel on Software - why internal software sucks.

Ha ha.

Ahem.

I'm going to start using this as my developer diary (which is presumably what it's for). My longer but less frequent postings will remain on insom.me.uk/blog/.

New Advogato Features

New HTML Parser: The long-awaited libxml2 based HTML parser code is live. It needs further work but already handles most markup better than the original parser.

Keep up with the latest Advogato features by reading the Advogato status blog.

If you're a C programmer with some spare time, take a look at the mod_virgule project page and help us with one of the tasks on the ToDo list!