Hewlett-Packard’s 64-bit Unix is everywhere in medical environments. If you’ve had an MRI, an MEG or a CAT Scan, it’s likely your images were managed and viewed on an HP-UX workstation.

HP-UX is a System V (as opposed to a BSD) Unix. Mac’s OS X, on the other hand, is a BSD derivative, while you can think of Linux as BSD-like in many of its functions, such as printing. The current version of the OS is 11i (or 11.11), which comes in various flavors such as the Critical Operating Environment version used in medical record storage. Older version 10 workstations are still around, sometimes for application compatibility.

Generally, I’ll keep HP-UX-specific materials here, while most other general Linux and generic Unix issues will live under the GNU/Linux heading.

Feel welcome to add to this information by commenting below.

Why Software Projects Fail, part 5

Reason 5: Needless Complexity Crowds Out Simple Functionality

I consider this the flip side of the “fad of the moment” disease. Google Wave: Gotta Get It! AJAX: Gotta Have It! Oh cool, Google released Google Gears. Let’s build our site around their Javascript libraries!

Except that Google has dropped support for Gears, in favor of the functionalities provided by the incoming HTML5. Wave pretty much passed us by. And hardly anyone pays attention to the X in AJAX: XML.

One new site design was the result of “design by committee.” An administrator was determined that the site should have a scrolling banner on the home page. Another really, really wanted rounded corners. A third insisted that the design include hot-air balloons. Don’t even get me started on the roadrunners. (Remember, I’m in New Mexico.)

The fly-out menus (courtesy of Dojo) worked pretty well, though browser differences made text alignment an issue. “Spreadsheet” tables (by Livegrid) were more of a problem, and bothered about as many users as they made happy. But the true time-sucker was the so-called “site editor.”

Once upon a time, each site could enter a brief text description of their services. And it was good.

Until it wasn’t good enough. “Can’t we have,” someone asked, “a picture?” Which seemed pretty harmless, until someone else wanted *two* pictures, which prompted someone else to want THREE pictures. “And can’t we have a longer description? And can’t we format text, and paragraphs, and all that stuff?”

Pretty soon we’d implemented an FCK Editor interface for the site editor, and pre-built several templates to accommodate various numbers of pictures, and picture storage and resizing.

We implemented webDAV for uploading photos, implemented SSL for the logged-in areas of the website, held trainings for users at our main site and visited lots of remote sites.

We hired a photographer to get some quality images. We set up user accounts and administrator accounts, and a whole authentication/authorization operation.

We spent months on this stuff. Program sites now had a very pretty place to set up their site descriptions.

But then a high-level stakeholder remembered to ask: “What about the basic purpose of the website? Do we have a credential-tracking system in place?”

Oops. Uh. Well. No, but we have this really great site editor ….

Why Software Projects Fail, part 4

Reason 4: Complete Inability to Define Requirements


A conference room; several people seated, a whiteboard on one wall.

[Programmer:] Okay, let’s map out a couple of these workflows.

[Stakeholder 1: a high-level member of one division:] So we’re going with blue as the theme?

[Stakeholder 2: Stakeholder 1’s opposite number from a different division, which is at war with the other division:] No, I thought it was the coyote.

[Administrator of the agency handling a large contract funded by both divisions:] Don’t worry, it can be both ….

[Programmer:] Let’s think about how we register trainers. What information do we want from them when they apply?

[Stakeholder 2:] As long as we can make those menus that jump out have rounded corners, it’s okay.

[Programmer:] And we’re going to have to make them create an account to get to the application form anyway, or the whole internet will be spamming us. So that means a whole authentication and login operation.

[Administrator, recalling bitter experience:] Oh no, we can’t do that again!

[Stakeholder 1:] Do what? Round corners?

[Programmer:] No, he means the security issue.

[Stakeholder 2:] The menus are a security issue? How can that be?

[Programmer:] They’re not, don’t worry. But what fields do we need for the trainer application? First and last name, address, city, state, zip, of course. Phone number? Or two? Email, gotta have that….

[Stakeholder 2, stiffly:] Well, if we can’t have a modern site why bother.

[Administrator:] Why don’t we just work up a draft and you can tell us what to change?

[Programmer, dubious:] I kind of need more to go on, like isn’t there some kind of license number or credentials or something? I mean, I have to build data tables….

[Stakeholder 1:] Well, if you’re going to insist on those jumpy menus I have to insist on the blue theme.

[Stakeholder 2, refusing to look at Stakeholder 1:] I guess that’s all we can do today. [Starts gathering her things.]

[Programmer:] Wait, don’t we want some kind of approval process? I mean, who are we sending these applications to, anyway?

[Administrator, giving Programmer a hard look:] Don’t worry, the contract, I mean the web site is just fine, we’ll give you a call to look at a draft Friday.

[Programmer, in dismay:] Friday? Wait, it’s Wednesday! We don’t even have a site layout yet, I can’t get login accounts implemented and a trainer application working in two days!

[Stakeholder 1, coldly:] I thought you said you guys could build this thing yourselves?

[Administrator:] Oh no! It’s not a problem! We’ll figure it out and work it up.

[Stakeholders 1 and 2 depart.]

[Programmer:] Hoo boy, talk about set up to fail!

[Administrator:] If you don’t like it I have a stack of applications THIS BIG [indicates a height of about two feet with his hands] from people who want your job! [Walks out.]

[Programmer, going to white board:] Holy s***, what do we gotta have here? At least two login groups, trainers and admins…..

[Trails off muttering to himself. Administrator looks back in and nods in satisfaction: the contract is working just fine.]