Archive for February, 2008

VSTO boost

Friday, 22nd February, 2008

Maarten has got info on some VSTO powertools that MS have kindly made available.

He’s got all the detail, which I won’t be repeating.

What I will mention is that one of the tools is a bunch of classes to allow C# to cope with optional parameters and parameterised properties. These features are vital in dealing with the Excel OM in a low pain way. I was only whining about this very issue a couple of days ago.

I know a few of us have been moaning at MS to sort this out for quite a while, in various levels of forcefulness so its great to see them listening and acting.

Now if they sort out deployment and give VSTO away with Office, VBA might actually get a bit of competition.



State of the profession

Thursday, 21st February, 2008

Johan asks:

Do you wan’t Office to be an attractive development platform? If Yes, what do you think is the best way to attract new talents to Excel and Excel automation?

Dick M and others have highlighted the lack of new blood in the Excel development community. I for one would like to see more folks joining in (as long as they don’t drive rates down to .net dev levels ;-).

I see 2 target groups:

  1. Excel users
  2. .net devs

    A few Excel users will always filter through to developer type roles. Better availability of advanced training might help them (I get 2-3 requests per year via codematic for advanced training). Not sure how to encourage this group? any ideas?

    Personally I think many devs have a strong herding instinct, so probably giving away salt licks with Excel would do it. ;-)

    Many devs are pre-occupied with their CV and what will look good on it, that kind of depends on what is going to be big. Not always, but often, what Microsoft commit to gets to be the big new thing. when I say commit I mean real financial commitment not cheap sound bite commitment – no one buys them.

    They bet the company on .net and the internet and devs have flocked to it (moo-ed to it?). Sadly in betting on t’intarweb, they effectively bet against the desktop. That is what we are up against now.

    Microsoft have been pushing (very very lightly (/cheaply)) the Office smart client story for years and years. But they havent put any real money in it so no one really believes them. Look around, there are loads of MS employee Visual Studio evangelists (who are all talking Silverlight at the mo). I do not know of one single Microsoft employed Excel development evangelist in the whole world. Do you?

    The community is strong, but really needs proper support from Microsoft. I tried to get an MS speaker for the Excel User conference, they were not able to provide a member of staff. There were valid reasons, but really it comes down to priorities.

    Not many folks can afford the time or cost to go to San Jose, or want to listen to the Sharepoint noise. Years ago there were quarterly roadshows that toured the country. We need those back, but focused on Office as a smart client. If devs see MS investing real cash in Office as a smart client they will take a look. Maybe they could coordinate a tour with a new enhanced VBAIDE?

    In summary Devs will follow the money, and thats all in web dev currently.

    What do you think?



    Vista SP1

    Thursday, 21st February, 2008

    Vista SP1 seems like a bit of a difficult birth, but if you have it and your Office apps start crashing try disabling all the add-ins. This is Word 2007 related, has anyone had Excel problems?



    Whats so good about VBA?

    Tuesday, 19th February, 2008

    A (very valid) question from Johan.

    Here is why I think VBA is so great, but first lets try and define VBA.

    A tightly integrated application automation system that allows professionals from non software development disciplines to enhance their organisations use of the host application. With justifiable levels of training costs and tooling costs.

    And secondly, lets add some context – we don’t develop in a vacuum so we should not review our tools in one.

    Its 2008, VBA was integrated into Excel in v5 in 1995, last notable update was 97 really when we got the current IDE. Prior to VBA many orgs has dipped a toe in the macro waters with XLM and Lotus macros. Many organisations have over 10 years worth of live VBA code. And coders with 10 or more years experience solving that orgs problems with that toolset.

    Software vendors desperate to sell us their latest version have almost convinced us that ‘legacy’ means ‘old useless shite that should be thrown out’. But legacy also means ‘something of value handed down from ancestors’. What better legacy than tested, proven, working code, no matter how out of fashion the language might be? or how ‘not to your style’ the code might be?

    I’ll be frank, I don’t much care for BASIC derived languages, I prefer C based ones. VBA has a few language features missing, and a few backwards compatibility ones I’d happily see removed. It also has the odd inconsistency, and a few awkward twists (If not (x is nothing) then... springs to mind). VBA is more, much more than a language though, its a complete system in partnership with the host app, with history.

    ‘Do you like the whole VBA story or not?’ boils down to do you savour proven, working code? or do you like new stuff? Do you like safe and certain? or do you like unnecessary risk and waste?

    VBA has a major entry barrier for someone from a user background (I mean business here, but also science, engineering etc – anything except sw dev I guess). But once over that barrier is a gentle learning curve through to extremely high levels of productivity. Object Oriented approaches represent an even bigger barrier to that target group in my opinion, with limited payback in that problem domain.

    Excel is a functional tool, its users understand functions – they write them in almost every cell. Very few use classes, objects make no sense to Excel users. Classes are considered an advanced technique in Excel VBA, not because they are difficult, because they are an unusual way for a spreadsheeter to go about solving the sorts of problems they solve with spreadsheets.

    Spreadsheeters email their spreadsheets around, this approach is absolutely proven to work in (and out of) organisations of all sizes all over the world in all industries. VBA supports this zero deployment in almost all cases. Most spreadsheet users have never heard the expression ‘deployment’ that is how ‘zero touch’ VBA is. (many have never heard of testing either but that is a separate discussion)

    The Excel COM object model is an ideal target for VBA, optional parameters, parameterised properties etc are all fine. Unlike C# for example, which is from a whole other era, designed from the ground up to solve a whole other type of problem. Should Excel get a C#/manged code friendly object model then that would even things up a little. But by then there might be 15 or 20 years (or more??) of VBA legacy code to compete with.

    Whats so good about VBA?, is like saying whats so good about driving on the left? honestly? it would be better for a whole host of reasons if we swapped and got in line with all the new world countries. But who, when, how and where could this be done? and who will pay, and when would they get payback (hint: never ever ever).

    Whats so good about VBA? its here, now, in widespread use. Perhaps the correct question is what should an organisation that is already heavily invested in VBA (most are) do now in 2008?

    Of course theres lots to not like about it too, but thats a topic for another post. The point of this post is that I don’t see anything currently better than VBA for most of the stuff that VBA is used for, and for the folks that use it.

    Maybe the VBA argument comes down to: SW devs will always hate it because its an impure bastardisation of a beginners language. Business users will prefer it to the other available options because they can leverage existing investments, so it represents the best value for money.

    Try this test: ribbon v commandbars? .net v VBA? either you like new stuff or you like existing proven stuff.

    What have I missed? anything to add? anything you disagree with?



    Chart guru blog

    Tuesday, 19th February, 2008


    Excel MVP, and charting whizz Jon Peltier has started blogging about all things Excel and charting.

    Ribbon FAIL

    Tuesday, 19th February, 2008

    Sorry I couldnt resist.

    I couldn’t think how to show the biggest fail – shuffling the commands to alienate experienced users. I can’t comment on the apparent programmability fail. the picture shows a mystery fail and 2 ridiculous size fails.

    ribbon FAIL

    I was going to change it back to the more familiar blue scheme, but I couldn’t find the command. Don’t bother telling me, I don’t need to know.



    Can .net ever catch up?

    Monday, 18th February, 2008

    Or should that be can it even keep up?

    Everyday more and more lines of VBA code are getting written. Organisations are investing more and more in VBA. The potential wrench from moving off VBA is getting bigger and bigger.

    There are more and more Excel VBA dev jobs on Jobserve everyday, and the rates are getting better, and the requirements are getting more realistic. .net dev on the other hand, still now after 7 years and 4 versions, is still a drop in the ocean of office dev. Maybe VSTO 2008 will fix that, I’m not convinced are you?

    It seems to me that the migration from VBA to .net is not getting easier for most orgs, as they continue to develop in VBA.

    Rate of change

    Even though much of stuff is getting more usable with each version, I wonder if its too little too late?

    What do you think?



    Office developer conference

    Monday, 18th February, 2008

    Anyone seen a decent summary of this event? (San Jose 10-13Feb)

    I just read a piece that said it was like a ghost town, and then that there were 2,000 people there – which is it?? (I would have been pretty happy with 2k at the Excel User conf…)

    I read some stuff saying the ribbon was a massive success, so obviously I am not going to take anything they say seriously.

    Another site was a bit more realistic (‘ribbon takes some getting use to’), but it mainly talked about Sharepoint.

    I guess I’m mainly interested in the client side, any links welcome, I don’t seem to have been inundated with media coverage – was the media even there??



    Excel add-in market

    Saturday, 16th February, 2008

    One of my favourite elements of working in Excel is the sense of community. There is a ton of excellent information freely available in many places. There is an army of keen, helpful experts ready and willing to answer any question loosely related to Excel/VBA and related technologies.

    There is also a boatload of free utilities to add all sorts of useful functionality. Writing an add-in is a great way to learn about Excel. Distributing it is a great way to learn about the challenges of deployment. Giving it away for free is a great way to get coverage… or is it?

    Would more people try a product if it cost money? perhaps a free 30 day trial followed by a 20/40/60 quid price?

    Thats one question, here is another:

    Does the existence of so much excellent free stuff actually damage the Excel user experience?

    The obvious answer is no, of course not free stuff is great, it can only be good for users.

    But thinking about it, I wonder if the market were more financially attractive, would more software vendors write more products? would those products be higher quality? would users get more choice? would competition improve price/quality? might it improve longevity of support? or support in general?

    Many of the add-ins I have used would easily be worth 50 quid thinking rationally. All they would need to do is save an hour or 2 and they have paid for themselves (or half an hour for some folks?).

    I have bought quite a few general applications, and the odd add-in, but actually there don’t seem to be that many for sale.

    What do you think? would a more lucrative market help? or would it damage our friendly community?



    Office Zealot random dates

    Friday, 15th February, 2008

    I was just checking out OZ. Something freaky is happening with the dates in their world:


    Anyone else seeing these random dated entries? or is it something with my machine?

    I know the new folks there are doing a re-vamp, not sure this is what they had in mind though.



    [edit seems to be fixed now – operator error??]