Friday, March 10, 2006

Interview technique

Earlier today I was interviewing this guy for a web development role and wondering whether or not I should tell him that he was flying low before palming him off on one of the juniors for an office tour. He'd blown the interview anyway, he actually showed real passion while explaining how he'd use UML diagrams to design a simple bookshop website. There's no place on this ship for a coder who can't think in Assembler. Then he tried to persuade me that all our problems would be solved if we just adopted PRINCE2. This guy's got four year's experience at a big consultancy firm and I was beginning to wonder if he'd ever actually written a line of source code or checked anything in to source control other than diagrams, specs and project management documents.

So I pulled a recursive Perl problem from the stack of interview questions, that one really sorts the men from the boys. It's a handy little problem that gives me the ammunition I need to get the personnel department to send off the standard thanks but no thanks missive, and the candidate the fervent wish to work elsewhere.

Thursday, March 09, 2006

Underwhelmed by the hype?

Have you been eagerly anticipating the latest press release from Wintel? Sure you have *yawn*. The origami project has been announced today with much pomp and ceremony. This thing has been so widely leaked that it came as no surprise to anyone that the announcement was for a miniature tablet pc. Not just any mini-machine, this... Wait for it.
  • Battery life: too short to be useful (3 hours)
  • Weight: too heavy to be truly portable (2lbs)
  • Size: too big to fit in your pocket (7")
  • Price: too expensive for Joe Public
It has not gone unnoticed that origami is - as I'm sure you don't need to be told - folding paper. And that folding paper is basically another euphemism for spondoolicks, wonga, lucre, cash, money. A coincidence? Unlikely.

So be sure to ridicule the first of your geek mates who proudly pulls out one of these babies. Don't get me wrong, I'm sure they'll be great devices in oh let's see, (what's the Microsoft Beta again?) about 4 years time.

Our Microsoft Product Support wooing junior programmer, who shall henceforth be referred to as Jim, has somehow persuaded the object of his affections to give him her messenger account details. Unwise of her you might think - and I'd have to agree, although I guess she can always block him later - but it is a cause of minor celebrations in the team as Jim's phone mooning was beginning to pall. I say beginning to, it had got to the stage where one of the test engineers had drawn up a circuit diagram for wiring his headset to the mains.

Anyway, my money's on Jim being the first in the building to part with his hard-earned for one of these. Just for that eventuality, I've drawn up a watertight purchase request for the Boss to sign for half a dozen of these. Just so the team can research their usefulness to the salesforce you understand. Of course, we won't need one for Jim by then...

Wednesday, March 08, 2006

Cockahoop over google’s latest leak

Apparently the world, his dog and a blogger or two are going cockahoop over some leaked screenshots of a calendar google are working on. All I've got to say on the matter is, what in the world is taking them so long?

It isn't exactly rocket science, I wrote a calendar application on the ZX81 with a 16k ram pack when I was 12 in less time than it takes to understand the google privay policy. It's not as if they haven't got the staff.

Question: Will the calendar support the new software project management calendar units?

The PAP or Project Approval Process unit

This unit represents the average time taken from initial concept to budget approval. Somewhat alarmingly, extensive research has revealed that this unit is completely independant of project size, scope or importance. It is however dependant on an organisation's size and structure. Here's how you can calculate PAP for your organisation:
  • Start with the number of line managers between the Chief Information Officer (or equivalent) and the rawest recruit in the software development function
  • Multiply this number by the number of people involved in the budget approval process
  • Add to this the total number of committees on which any of these people serve
  • Add 42
  • Multiply by the average number of developers on a project team at your organisation
  • This is the number of working days it will take to approve a budget on any project proposal at your organisation - not counting public holidays, annual leave, sickness or maternity leave
  • If your organisation has accountants to approve budget decisions add 1 year

It may seem surprising to you, but the PAP is a consistently accurate measure. To avoid frustration, it is often best to ditch the budget approval process altogether.

I run a tight ship here. We take a simple competitive approach to project approval within the team. A quick Duke Nukem death match between the principal protagonists decides the result.

The Leak

This unit represents the average time between initial prototype production and the first leaked product shots appearing on the web. Like the PAP, the Leak is largely dependant on organisational size and structure. Here's how you calculate expected Leak time for your organization:

  • Start by taking the average number of projects completed in a year
  • If you have a staff canteen, divide by 2
  • Multiply by the number of locations
  • Divide by the number of employees working for your organisation
  • If you have a marketing department with more than 5 employees, divide by 5
  • Multiply by your organisation's male to female ratio
  • This is the number of hours between initial prototype production and the first leak

If you work for Apple, Microsoft or Google, ignore this method. Your Leak will be negative. Mocked up product shots of everything you could possibly have thought of have already been posted somewhere on the web with your corporate logo photoshopped in.

The Beta

Made famous by Google, the beta needs little explanation. Once again, the unit appears to be independant of project size, scope or quality with the organisation being the determining factor. Reasearch has not yet unearthed an industry standard formula for calculating the Beta for your organisation, however I do have figures for some of the industry leaders in the field.

Microsoft Beta

For a new Microsoft product, the beta always starts off looking like a realistic timescale. But after features have been cut, deadlines shifted by 9-12 months, problems with manufacturing and distribution, you're looking at 18 months to 2 years. However once we factor in a measure of product quality - waiting for service pack 2 usually does the trick - any number of security updates in the meantime, you're looking at a period of around 4 years from initial beta to usable product. By this time it's likely you'll be 1 version behind and looking at discontinued product support within the year.

Google Beta

As yet, researches have insufficient data to draw any statistically significant conclusions on the beta for Google so take this with a pinch of salt, but it appears that the Google beta is infinite. Which is not to say that Google will never get a product out of beta, simply that the Google beta is growing by more than a day each day. This is an interesting statistical phenomena - which has led researchers to compare the Google beta expansion to the ever expanding universe - which appears to arise when more products are entering Beta than are exiting. It is a moot point, but some believe that when time reverses and the universe begins to contract, the Google beta will be the one universal measure which continues to show positive entropy.

The database is down... again

Just got back from telling my boss that the workflow database is down again. I blamed the outage on Microsoft Automatic Updates. I waffled on about a conflict between the Windows 2003 Server essential security patch 1.5.667 and SQL Server 2000's natural language query engine until he managed to interrupt me to ask what we were doing to get it back online. He's a non-technical manager you see. He wouldn't know an essential security patch from an alt.binaries.pictures. erotica download.

In actual fact, we're still running a totally unsecured SQL 6.5 installation with the sa password set to blank. The management don't know that. Well, I wouldn't have got paid the overtime for that weekend I spent in Paris back in 1999 when I should have been upgrading to SQL 7; or got the all expenses paid week-long trip to Orlando, Florida for the "SQL server 2000 training course" in the Summer of 2001. I'm still thinking about what to pull for the SQL server 2005 upgrade.

Anyway, I told the boss I'd got one of the junior programmers on the phone to Microsoft and we should have it resolved within a couple of hours. Actually the programmer in question is always on the phone to Microsoft. He's using up his two free product support calls that came with his Visual Studio 2003 license. Initially he was just calling up for a lark, but when the answering MS PSS technician was a female of the species, he could hardly contain his excitement. What can I say, he's a computer scientist, just out of university, he doesn't get out much. Anyway, he managed to come up with a sufficiently vague initial query that it's become very difficult for the poor lass to close the case. I'm sure she must be considering taking legal action against the spotty little stalker.

You'd have thought I'd be stressed about the workflow database considering we have 500+ users relying on that server to tell them how to do their work, recording their time spent etc etc, but you'd be wrong. I'm not paid to get stressed. Actually, I should check the staff handbook on that point, I could be wrong. My first action on leaving the boss's office was to fire up the reception web cam - the new 18 yo blonde receptionist is a fox. Action number two was to start a blog - everyone else is doing it and it seems I'm rather behind the curve. For the rest of the afternoon, I think a marathon session of tardis tennis courtesy of the beeb is in order. It turns I out I am paid to do that rather a lot. Unintentional on personnel's behalf I assure you.

You see, the workflow database goes down quite a lot. I tend to blame Microsoft, BT, or a third party software conflict on rotation. Of course, it's never actually their fault. It's generally down to the crappy database programmer I was hired to replace back in 1997. There's no way I'm touching his code with a barge pole. I have standards! I wouldn't even inflict that on the spotty junior programmer who's wasting his efforts on the telephone voice of Microsoft product support.

Still, I'll reboot the machine in an hour or so and it'll be right as rain again. Got to do something to justify the lucre.