A Little Knowledge Goes A Long Way

 

The worst web page I (never) encountered belongs to a CRM vendor. I understand they may possibly have a good product. However, every time I tried to access their website I ended up immediately at macromedia.com. No helpful messages. No warnings saying "you don't have Flash installed on this browser". No HTML version of the website. Just a blanket refusal to talk to me and immediate redirection to a completely different site with no apparent relationship to CRM.

Eventually, I emailed the account manager who forwarded my problem to the helpdesk. They refused to consider this to be a problem. As far as they were concerned, every user in the world always has Flash installed and working all the time, and the whole thing was my fault.

Ever since then I have made it my business to disable Flash on every browser I use. And to try and avoid this company's product, of course.

I'm at the stage in my career when I get to see a lot of bids and responses to bids. I've sent out requests for tenders, I've assessed the responses and I've also written responses to bids that we are going for. The main thing I've learned from this is that one should always answer the question. Not what you would like the question to be, but what it actually is. As a corollary to this, when writing a question you should phrase it in such a way as to elicit the answer you are looking for. There's not much point in dancing around the point, you'll only get irrelevant answers.

There is one thing that I consider pretty unacceptable in a response to a technical bid. Unmitigated woffle. Consider the following gem:

"...public services in general have a mandate to leverage the egalitarian dynamic of electronic communications to communicate and transact with the public."

I pretty much stopped reading at that point. I mean, I know what their point was supposed to be (though personally I don't consider electronic communications to be especially egalitarian, unlike mobile phones for instance...). It was just that I was expecting this document to contain estimated prices and specifications for firewall configurations, licences, proxies and so on.

I'd talked to these people; had meetings with them, shown them spreadsheets, Visio diagrams and given them a half-page of requirements as bullet-points. They knew I was the person who would be making the decision on which supplier to go with. Why did they think that 20 pages of marketing-speak was the correct response?

Today I thought I'd go sign up on Technorati and see about getting some hits. Big mistake. That has to be one of the worst designed websites I've ever come across. Really crap. Well, I've seen worse, but this one is definitely in the "Websites that Suck" class. Things like infinite redirections, forms that consistently fail to post, losing state between pages so that you're logged in on one page, click on a link and get the sign-up for a new account page. I tried three different browsers in quick succession (including IE which is usually my browser of last resort). Everything failed to work. That website must have more bugs than a barrelful of anteaters.

I recently had to come up with an off-the-cuff estimate for how much a 300-person system would cost to put in. I got at least the right order of magnitude, but it's surprising how many associated costs slip your mind under pressure.

  • Hardware
    • Servers
    • Racks
    • Cabling
    • Network connection
    • Backup costs
  • Software
    • Licences for software
    • Licences for required other software (databases etc.)
    • Manpower required to install new software
  • Support
    • Annual maintenance for both h/w and s/w
    • Other support costs
    • Possible additional support staff
  • Training
    • Backfill (cost of fill-in staff while people are being trained)
    • Training facilities
    • Possible cost of developing training course
    • Trainer
  • Consultancy
    • Analysts (to examine problem)
    • Designers (to design a solution)
    • Developers (to implement design)
    • Testers (to make sure everything works)
    • Project management (to make sure everyone else cooperates)
    • Other

Utility computing

I seem to have become the local champion of utility computing. From the point of view of a traditional IT department, grounded in the mainframe era (and indeed there is still an ICL VME mainframe in the server room), centralising computing resources makes a lot of sense. And of course the VME guys go "virtual machines? No problem! We understand this."

Why virtual systems? Well, the idea is to try and free ourselves from a dependency on specific machines. Right now, we've got racks full of Dell servers, bought at various times over a period of 5 years or so. Each server runs one application, because a lot of vendors won't support their application unless they are the only thing on the box. This means that each server has a different configuration depending on when it was built, what Microsoft weirdness was in fashion at the time, and what the person who built it threw into the mix to get the damn thing working. This means that every server is different and if a server crashes, we're shafted as far as business continuity goes.

Virtual systems means that we're running on an abstract machine that doesn't care what the underlying hardware is. It also means that we can (in theory) run up a new virtual machine in a couple of hours instead of ordering a new one with a 4-week lead time. Since many of these application have a couple of users, tick over once a day and use a few megabytes of disk, ordering a new Dell with twin Xeons, 1Gb of RAM and 250Gb of disk is a bit of a waste. But for some reason or rather we can't order the 64Mb Pentiums that are all the users actually need. Virtual machines would let them share a state-of-the-art box while remaining oblivious to the fact that another application is running on the VM next door.

So far, the local utility computing strategy has three main threads. These are user interface, storage and processing.

User interface

Basically, we're going down the Citrix route for desktops. Any IT operations department wants to be able to control user systems (at the moment we can't even back up email archives because the users have them on their PCs). We've looked at remote management tools, things like Landesk, and even invested in some of them. There's no denying though that Citrix gives you all the benefits of centralised management, and you get to use it from home, over the internet or whatever.

Citrix lets IT control everything it wants to control and the users get to forget about stuff they don't want to worry about. Of course, it's not so nice for the power users who want to store 100 gigs of MP3s on their work PC, but at least this way we won't get sued.

Storage

Storage Area Networks are the answer to the backup guy's prayers. Right now, our backup runs over the LAN and takes just under 48 hours. It's not the size of it (it's still less than a terabyte), it's the sheer complexity of building the backup images over the network. If it took any longer, we'd be running into business hours and things would rapidly get very nasty. We had two options, put in a special gigabyte backup LAN, or go for the SAN and backup over fibre directly to the tape drive. In the long run, the SAN wins out hands down.

In the past, and in my previous experience, SANs were a real pain to configure and usually required expensive consultants just to get the thing running. But the world has moved on and all the systems we looked at made some concessions to the fact that, what you really want is for the helpdesk to allocate your terabytes away. Of course, they do have to be warned not to allocate the entire SAN to someone's warez collection, but that's why you have ITIL procedures built into the helpdesk software.

We went a bit further than just the SAN software though. We're looking at storage virtualisation software from Falconstor. Even Network Computing had to admit in a recent review that maybe there was something to storage virtualisation these days. At long last, you can forget about LUNs and partitions. You can't quite treat every single disk in the server room as just part of your total storage pool, but you can get damn close. All we need now is to persuade someone to pay for it.

Processing

As far as virtual machines are concerned, there's not really much alternative to VMWare. Well, not until Microsoft gets Virtual Server out the door sometime later this year. And I'm not going to trust the servers to it until it's been around a while. VMWare, on the other hand, has been around the block. It's pretty stable, runs just about anything on Intel, and it's owned by IBM. Our evaluation system is going in any day now and we're hoping to run the test and development platforms for some major systems on it - with the intention of eventually running those major systems under VMWare too.

Right now, whenever we go out to procure a new system, we ask "can it be SAN-enabled?", "does it run under Citrix?" and "does it work under VMWare?" Much to our surprise, quite a lot of people answer "yes" to all three. That's partly because a lot of companies use VMWare for development and for demos. And they use Citrix for home working and support. And, well, most applications can't tell they're running on a SAN unless they're doing some very low-level tricks, which, quite frankly, I wouldn't want to let on any of our systems.

Even though I've been using Linux for a number of years, I have a Linux server at home and an Apple Powerbook, I still seem to end up pushing Windows at work. Given that I'm in a position to steer companies in the direction of more stable and politically correct systems, why do I end up recommending Microsoft all the time?

A lot of it comes down to the dominant position that Microsoft holds in the market for business software. All too often when we were looking for a new finance system, or a new (whatever) system, we would be told that it was completely integrated with Outlook and made full use of IIS, ASP and Active Directory. "So what", we would ask, "will it do with our Novell Groupwise, Netware and Domino webserver?" Not a lot, was generally the reply. If we were lucky, it would still be able to send email and wouldn't crash the minute it set eyes on the network. And that, you see, is why we're migrating this particular system to Exchange and Active Directory. It's not that we believe the Microsoft environment is any way better, it's just that we don't seem to have much choice.

Even in those cases where we have the option, it's hard to find the resources to implement an open source solution. Right now, I'm going to go and recommend an open source solution for certain components of a bid that's probably worth half a billion. I think it'll be bounced right back, because we don't have the people who could implement it. And, more to the point (because we don't have the resources to implement a Windows bid, right this minute, but we know where to get them) we don't even know of anyone who would be capable of supporting a Linux-based bid. Who would we go to? Let's say we have to install and support 20,000 Linux desktops and 500 servers in six months time. Is there even anyone with that experience? Let alone someone who can subcontract to us.

When it comes down to it, this is outside the comfort zone of too many people. They know a Windows solution works (most of the time). They don't even notice the quirks and the network problems any more. They curse and swear at Windows and Office when it fails, but trying something different is too much hassle, even if the potential benefit is worth it. Human nature, I guess.

Installing Kwiki has produced some interesting weirdness. Mostly around trying to get it to keep the admin function on a system (Pair) which only allows me to secure directories and not individual cgi files. I've resorted to symbolic links a lot.