Archive for March, 2008

Hope yet for 2003 UI

Friday, 28th March, 2008

Charlie sent us this rather ironic link.

Its a story about how the latest revisions to Google docs have reverted back to an Office 2003 drop down menu style. They used to be more like the tab based ribbon. Seems there are lots of useful screen space savings from using drop down menus.

This makes the Google docs v Office ‘battle’ (? too strong?) a bit more exciting, its becoming a battle of Office 2003 ui (Google) v Office 2007 ui. I really hope people switch to Google and justify it on the user friendly ui.

But according to this link Rob sent, that may be a challenge. (security privacy concerns)

I know the effluent UI battle lines are already drawn so lets not go over that, but does anyone here use Google docs regularly as part of work? and if so what sort of things do you do?



Getting a range

Wednesday, 26th March, 2008

How do you get a range in code?

If its a marker range (a single cell where I start my code from) I tend to name it at worksheet level then access it via

sheet1.[StartPoint].row/.column/.value etc

If I am looping through cells I use

.cells(r,c).value/.formula etc

I almost never use range(“A” & r) as it has a (part) fixed text cell reference that often ends in tears if someone modifies the sheet.

Bob P was outraged that I used [StartPoint] instead of Range(“StartPoint”), he now thinks I am a total cowboy. What do you think? if you don’t like [], why not? I was going to test the performance but its completely irrelevant as I only access these once.

I wish worksheet level defined names popped up in intellisense as a worksheet property, like public code thats added to a sheet class. This [] approach seems like a reasonable compromise to me. Obviously I’m not going to be wasting time wrapping a cell ref in a property (or variable) just to make intellisense do what I want. (Or should I?)

Whats your preference?



10,000 hours part 2

Tuesday, 25th March, 2008

Of course 10,000 hours wisely invested in becoming a spreadsheet guru isn’t going to be much help if you get a problem that would be best solved with a relation database right?

In skiing either you have developed the core skills to ski most terrain or you havent. You don’t get into a heavy powder field and think “bugger I should be snowboarding”. (Well I would actually, being more of a snowboarder these days).

In football you wouldn’t get to a position where you think “Damn I should have done this with a hockey stick”.

With spreadsheets, I have seen many ‘experts’ who can create a mega monster array formulas to solve all sorts of things. Way beyond what I can or would do.

To me any expertise has to include the ability to select the appropriate technology for the task. And potentially the confidence to say “you should do this in Java, for these reasons…I don’t do Java but I can recommend someone”.

Do you think being an expert in only one small area of IT means you really aren’t an expert in IT?



Blog stats

Monday, 24th March, 2008

Just some info on where we are at since Jan 07:

Number of posts: 382

Number of comments: 2,783

Number of visitors: roughly 3-400 per weekday, 1-200 on a weekend.

Best day: 900 (Excel 2007 calc bug presentation bug test code)

Most popular post: The spreadsheet disadvantage (2,253 views)

I think there are a hundred or so people who follow the feed (don’t know how to check?)

In terms of time taken, some posts take a few minutes (kicking MS mainly), but most take hours or days (some of the performance testing and data type stuff).

On the Codematic website – sadly the host has moffed up my logs so I don’t have any figures for the past few months, but it was running at about 1,000 visitors /1,500 page views a week in November.

I don’t track uniques or do anything clever, I assume most of the codematic stuff is new traffic because the site doesn’t change much. I assume most of the blog stuff is the same bunch of work dodgers day in day out!

As a matter of interest do many people use google analytics on their sites? I browse with no-script which breaks it I think, so I have never bothered.

If you have any stats to share feel free to comment or link to your site/blog info.



10,000 hours to be an expert

Sunday, 23rd March, 2008

I was reading somewhere to do with sports of a known phenomenon that it takes 10,000 hours of practice to achieve expert status in an activity.

The suggestion was those kids covering that many hours in football would almost certainly be excellent. In part time activity that’s about 10 years, which may explain why we have some superb players around 17. (club football tends to start around 7 in the UK)

In full time its about 5 years, which is why those with that level of experience of a product or business process are often considered gurus. Of course if your area changes fundamentally every couple of years, then its not going to be possible to achieve guru status in any current product.

There is another side to this that I first read in Code Complete – do you have 5 years experience, or 1 years experience 5 times? ie the progress you make depends how you invest your 10,000 hours.

And of course there is also the oft repeated phrase – practice makes perfect, but only perfect practice. Having watched tons of people practice and practice crappy ski technique, I am never surprised to see hundreds of skiers who have mastered the art of skiing badly. They have created a glass ceiling for themselves, that they will struggle to get through. Decent advanced training can fix this, but few intermediates take further training – taking misplaced pride in being self taught, just like many spreadsheeters?

Maybe people who code procedurally do the same thing? they will struggle to ‘move to the next level’ of object oriented coding? I’m not convinced thats valid as OO is often overkill, especially for spreadsheet based stuff.

What do you think?

Have you got 10,000 hours/5 years in? do you feel like an expert?



Book authoring

Friday, 21st March, 2008

Every now and then I wonder about writing a book related to the work I do, and the sort of stuff we discuss here. And equally I keep thinking I should finish the commercial version of XLAnalyst and get it up for sale.

The truth is I enjoy posting to this blog and the discussions we have, but I have a sneaky suspicion that writing a book is a lot less fun and a lot more grind.

I also like writing useful code (and making sure it does what I expect it to (to a fair extent anyway)). But I know for sure that the gulf between useful little (free) utility and polished, professional product is wide and full of low fun stuff like help files, marketing etc. The final polish on the free version of XLAnalyst took way longer than the interesting coding part.

So my latest dilemma is should I knuckle down and write and book and/or a proper app. Or keep just doing the fun bits posting articles and utilities here as I have time and enthusiasm?

In terms of commercial viability; from what I have read 5-10,000 copies is a common estimate for technical book sales. Royalties are in the 1 to 2 quid bracket, approx effort 6 months. The thought of earning 5k for 6 months hard slog doesn’t set me on fire, at the other end though (10k * 2) 20 grand working at home doesn’t sound too bad.

For XLAnalyst the finances are anyones guess, and thats part of why its not finished.

So the future looks like just cherry picking the best bits – maybe I’ll gather enough to publish as a book by accident?

Browser wars 2

Thursday, 20th March, 2008

Jon made a good point about the death of VB6 and IE’s reduced market share being symptoms of the same problem. I went back and re-read Joels API war post, it seemed longer than other times I’ve read it, but mostly familiar.

Here is the key part for me:
The first big win was making Visual Basic.NET not backwards-compatible with VB 6.0. This was literally the first time in living memory that when you bought an upgrade to a Microsoft product, your old data (i.e. the code you had written in VB6) could not be imported perfectly and silently. It was the first time a Microsoft upgrade did not respect the work that users did using the previous version of a product.

And the sky didn’t seem to fall, not inside Microsoft. VB6 developers were up in arms, but they were disappearing anyway, because most of them were corporate developers who were migrating to web development anyway. The real long term damage was hidden.

[my emphasis (I’m sure I don’t need to explain!)]

He mentions the ribbon mess in his latest post Martian Headsets, pointing out that the MSDN camp have won the compatibility v new features battle.

I quite liked the idea of IE8 conforming to standards, but I can see the value in backwards compatibility too. In fact the all too apparent disregard for backwards compatibility at MS is my biggest frustration. Sadly that seems to be getting worse, and I’m not sure we are getting sufficient new valuable functionality on return.

In related news here is an early review of OpenOffice 3.0 due out in 6 months or so.

iPhone dev farce

Wednesday, 19th March, 2008

I’m keeping half an eye out on the iPhone. Not that thats a realistic target platform for me, more out of curiosity really.

It’s easy to moan about Microsoft, and things they could do better, but sometimes looking at the alternatives gives a sharp reality check (eg). While we’re busy whining about .net deployment, or backwards compatibility issues, would-be Apple devs don’t even know if they will be ‘allowed’ to develop for the Apple platform.

And yet Apple PC’s are credited with 14% of the US PC sales market in Feb. Maybe Microsofts new more open approach is a mistake and they should be as secretive and protective as Apple?

Anyway I’m glad the well being of my family does not depend on the whim of Apple licensing.

Anyone here planning (past tense?) an iPhone app?



Browser wars

Monday, 17th March, 2008

Did the browser wars kill VB?

I’m only asking as years ago (say 1999) it was fine to build intranets using VB script on the client, because you could assume they would be using IE.

I don’t hear so much of that now, it used to be ‘VB everywhere’, now it seems to be Javascript most places and C# where possible.

I’m wondering if the reduction in love for the VB family coincided with IE haemorrhaging market share to Firefox? (Ff marketshare is almost 30% in Europe, and gaining, fast).

Maybe VB fell out of favour a bit before?

Or maybe you don’t think it has?

Get patching

Wednesday, 12th March, 2008

Microsoft have released some security patches to address critical flaws in Excel and some other Office components. Details here, looks like 2003 SP3 and 2007 SP1 are pretty much ok, but worth patching to keep everything in sync.

El Reg has some info here too.

The key point I wanted to make which people seem to miss is that this exploit (like many others) does not require macros. So clicking ‘disable macros’ doesn’t keep you safe. It is simply a malformed file, that may not contain macros or any data at all, just a certain binary sequence.

Another point worth mentioning is that in this attack like many others the attacker gets the same rights as the user they hacked. This is why so many security pros recommend running as the most limited rights user you can. Unfortunately to get any development done its much less hassle to run as admin, sadly that means an attacker would get admin right too.

If you apply the patches and have any problems let us know.