VSTO & .NET & Excel

October 25, 2006

Excel Developers – who are You?

Filed under: .NET & Excel — Dennis M Wallentin @ 11:09 pm

I had scheduled two posts this week about:
–  .NET books
– Classic COM Add-in for The Transition Case.

However, Simon Murphy has recently published an article about Excel Developers that I find to be very interesting and also very important. Therefore this week’s post is about this subject.

Excel has been around for more then 20 years now and in my opinion it’s about time to both set and discuss best practice, standards and also single out the group of Excel developers. That’s why I believe it’s important to take part of how Simon views the group of Excel Developers.

In my opinion the presented model is indeed a good start but as Simon says:
“There is a third dimension not considered in the diagram, and that is knowledge of the clients business”

Over the time the understanding of the underlying business processes has become my #1 concern, especially when working with large corporates.  It’s not only to understand them but perhaps the most important aspect is to give input how to reflect the processes in Excel based tools. An interaction between the client and the Excel developer will then be possible where the output of the process will be the mutual solution.

For me it would be a welcome development of the ‘landscape’ if the business processes could be reflected in the 3rd dimension in it.

Kind regards,



  1. An interesting write up. I agree with Simon mainly, although i think the “standard Excel dev” might be a little constrained.
    I would put my self here and quite a few others too. I think the main thing about being in this group is not using VB/com C etc, maybe SQL server too, but i think a lot of guys who put themselves here work with DAO quite a bit and write well formed code. I total agree with the concept of mainly writing from a Excel POV and not having a fuller understanding of OOP and general development concepts.

    I’m not sure how to represent the 3rd dimension, although like Simon and you I agree it is a pertinent aspect

    I look forward to seeing what others have to say on this matter, it’s a subject that interest me.

    Comment by Ross — October 26, 2006 @ 10:54 am

  2. Nice article, Simon.

    Another interesting question is “what path do people take” to get to boxes 2, 3 or 4? How many start in 2 or 3 and eventually have the combined skill-set to be in box 4? What % of those in box 4 started in box 1?

    I started in box 1, as did most of us, I think. It’s the Macro Recorder that lets us move up into box 2. Well, it gets the ball rolling anyway. The rest is tinkering, hitting the F1 key on commands kicked out by the Macro Recorder, and then eventually buying a book or two… Then one day you wake up and you’re in box 2. 🙂

    The vast majority of those in Box 1 and those who moved from Box 1 to Box 2 will still have their “day job” as an engineer, financial analyst, or whatever. And so will not generally have the time to learn about class modules, OOP, ADO, .NET. They’ll learn some of it, but mostly will have to be practical and so the learning here will be slow.

    Those who start in Box 3, might not love Excel, but if they gain exposure to it will start to learn it better and eventually find themselves in Box 4. This is particularly true if they are making add-ins for Excel and not just using Excel via automation.

    Those who start in Box 1 and eventually get to Box 4, I think have to “make the leap” at some point to change carreers, join an Excel-based consulting firm, or “really take the leap” and start their own consultancy. In other words, I think the migration from Box 2 to Box 4 is difficult, if one started in Box 1. At some point, you have to leave your “day job” behind. But this is a very difficult thing to do…

    Comment by Mike Rosenblum — October 26, 2006 @ 5:13 pm

  3. Very interesting article.

    I definately started in box 1, and have moved into box 2. I’d like to think that I’m just a little right of centre in it, as I have started playing with ADO and databases to store excel data. I wouldn’t place myself any higher than the middle of box 2 though, as every day I uncover something new in the product.

    Mike does raise a really good point. I work full time as an accountant, and do some consulting outside of that. Beyond trying to balance all that with family leaves little time for exploring more broader software knowledge. It is certainly on my radar, but I really wish we could switch to a metric clock with 100 hours in a day. 🙂 I do somewhat fear that in order to really make that next jump, I am going to need to switch careers, although I somewhat dream of doing that anyway.

    A good catch, that article, and worthy of interrupting the intended flow of articles, Dennis. 🙂

    Comment by Ken Puls — October 26, 2006 @ 5:41 pm

  4. Mike – You’re absolutely right in Your conclusion when it comes to ‘take the leap’. I can only see what I’ve been *trying* to do since the late 80’s.

    The defintion given for the Box 4:
    “These people have a very deep knowledge of Excel and its interaction with other products.”

    For the last 10 years or so we have a rapid development where ‘other products’ nowadays cover databases, different server platforms (MOSS, BizTalk et al) and also different kind of ERPs.

    What I can see is that we need to interact with other ‘specialist’ who have deep knowledge about the products we want to communicate Excel with.

    Another question I see is which group(s) in the ‘landscape’ does MSFT explicit target when it comes to the new product lines of .NET and VSTO?

    Ken – I fully agree 😉

    Kind regards,

    Comment by Dennis Wallentin — October 26, 2006 @ 6:23 pm

  5. Dennis,

    I feel that .Net and VSTO fit on the right hand side of that picture. Maybe I’m just on the outside looking in, but it seems to me that you will need some kind of “advanced” programming knowledge to get the best out of those products.

    Comment by Ken Puls — October 26, 2006 @ 10:47 pm

  6. Hi
    Thanks for the feedback, I wasn’t sure if I was anywhere near or not.

    I tried adding the third dimension and the couldn’t get the picture to look sensible, so I took the easy option and just mentioned it in the text.

    I said the borders were gradual (then put solid lines in – duh!) I think DAO/ADO could be heading towards 4. being able to take a business problem, spec out an appropriately normalised ER diagram and implement in the clients chosen DB would put you well into the 4 (or 3) zone I reckon.

    I think most people will have different skills at different levels so maybe a clear 4 for SQL but maybe more of a 1/2 for OO for example. If you think 2 is too constrained maybe you are really a 4? Or maybe it should be a 9 box diagram? Or maybe the boxes should be different sizes.

    In terms of paths I have put what I have seen – no one (roughly) with a mainstream software development background moves into Excel, maybe the odd DBA, but I don’t think I’ve ever met a programmer who was a programmer first then got into Excel. (ie there is no 3-4 movement (that I have seen – has anyone else?)) (oh actually I have just thought of one!)

    I have had some very interesting chats with a couple of other devs recently, basically about snobbery against Excel/Access, and server based stuff having more credibility.

    Those devs I know with first degrees in IT related subjects would not ‘lower’ themselves to work with Excel or VBA. One I remember in particlar would rather be out of work altogether. One I have been working with recently is desparate to get back to Access and on to SQL server.

    The main path I have seen is end user – xl dev and occasionally xl dev – specialist (via self study (leap) later on).(ie 1- 2 -(additional study)- 4)

    Unfortunately I think MS target group 3 with their .net stuff, and those people have severely limited interest in Excel – or any office app, they want SQL2005, C# and Web 2.0, or at least 98% do. 2% = 6/300 – the no of people at my .net and Excel presentation at MS last year / the no of people at the event.

    Ken I believe there is a sleep style where you take 20 mins every 4 hours which gives you another 4 or 5 hours a day, I think it only works if you have no other human contact in your life.

    One of my frustrations with .net is the rate of change, the technology changes faster than anyone can become expert in it. (I never tried the new sleep pattern though – maybe when all the kids are at school)


    Comment by Simon Murphy — October 27, 2006 @ 11:23 pm

  7. Simon,

    As a start and with the additional written aspects of the ‘landscape’ I find it to be useful.

    “Unfortunately I think MS target group 3 with their .net stuff, and those people have severely limited interest in Excel – or any office app,…”

    That’s my impression so far as well although MSFT has lately set more focus on VB.NET then just C# when it comes to Office.

    In a ‘perfect’ world it would be great if Excel developers could corporate with the ‘standard’ developers. The later group have little understanding (if any) of Excel’s Object model and its architecture. The group of Excel developers lack to a high degree understanding of .NET / OOP / Databases.

    “One of my frustrations with .net is the rate of change, the technology changes faster than anyone can become expert in it.”

    Well, we can’t stop MSFT which leaves us with a limited number of choices…

    I wonder if we ever will see again such a remarkable development of new versions as it is now:

    – Windows Vista
    – Office 2007 / Project 2007 / Visio 2007 
    – .NET Framework 3.0 / ADO.NET 3.0 
    – VSTO 2005 SE / VS.NET 2007
    – Sharepoint 2007 / Exchange 2007 / Project 2007 Server
    + additional platforms and tools I’ve forgotten…

    Kind regards,

    Comment by Dennis Wallentin — October 28, 2006 @ 5:08 pm

  8. Hmm. I think the contract rate ranges strongly suggest the business-knowledge dimension. I started as a 3 (well, I started in mainframe COBOL, but I’m old) and moved a little way into the 4 area but a long way into the business knowledge (investment banking in my case) dimension. As such, I have in the past been able to pull in rates toward the top end of those quoted. Without the relevant understanding of the environment and its business products I’d have been lucky to get the low end, if anyone would have hired me at all.

    Comment by Mike Woodhouse — November 1, 2006 @ 3:09 pm

  9. Mike,

    “Without the relevant understanding of the environment and its business products I’d have been lucky to get the low end, if anyone would have hired me at all.”

    I certainly agree on that. From my point of view the understanding is in the long run more necessary then just plain ‘technical brilliants’.

    Kind regards,

    Comment by Dennis Wallentin — November 1, 2006 @ 8:48 pm

  10. Mike
    You are right, I ummed and and ahhed about putting rates on as they are so broad they are almost pointless. And like it says above the table, and as you mention too, the business knowledge can have a massive impact (especially investment banking).
    Anyone got any suggestions for a better way to present the business side?


    Comment by Simon Murphy — November 3, 2006 @ 1:18 am

  11. Simon,

    From a basic point of view business knowledge is required in all the boxes.

    Initially I would try to catch the business knowledge by using a 3D model where:

    X= Broader software Development Knowledge
    Y= Deeper Excel knowledge
    Z = Deeper business knowledge where the arrow is flat

    Which means the model would end up in a 3D cube.

    Kind regards,

    Comment by Dennis Wallentin — November 3, 2006 @ 12:17 pm

  12. Very interesting discussion guys.

    I myself moved from “box” 1 to 2 and think I’m gaining momentum in moving towards box 4 since I’ve started my own business 3 years ago.

    I think the point about MSFT focussing on the # 3 group when it comes to VSTO is correct. For now!

    But I also think we’re going to be moved into the .NET area sooner than we think. I wouldn’t be surprised that Office 14 (yes, we’ll skip 13 for obvious but silly reasons) will ship with VSTA, kickstarting us all into .NET programming before we know it.

    Comment by Jan Karel Pieterse — November 6, 2006 @ 1:12 pm

  13. Hi Jan Karel,
    “I wouldn’t be surprised that Office 14 …will ship with VSTA, kickstarting us all into .NET programming before we know it.”
    I recently read that:
    “One of the cool features of VSTA is that it can exist side by side with VBA in the host application.” (http://blogs.msdn.com/vsta/)
    In view of this and Your comment I believe we will see a situation where Excel 14 or later will offer both VSTA and VBA.
    If only VSTA is offered then I believe that MSFT needs to completely rewrite Excel.
    Kind regards,

    Comment by Dennis Wallentin — November 6, 2006 @ 2:19 pm

  14. You’re right of course, VBA will be around for at least the two next versions (not counting 2007) I expect. There are simply too much VBA based solutions around to remove VBA support from Office any sooner.
    Heck, in 2007 you can still edit and create xlm macros…

    Comment by Jan Karel Pieterse — November 8, 2006 @ 9:31 pm

  15. Jan Karel,

    Only the future will give us the ‘right’ answer 😉

    The way MSFT ‘cut offed’ classic VB shows that the ‘transition – time’ may be shorter then what we expect…

    “Heck, in 2007 you can still edit and create xlm macros…”

    Is it a supported or unsupported ‘feature’ of 2007? It’s very funny that xlm is still around as it was officially replaced with VBA around the mid 90’s when Excel 5.0 was shipped.

    Kind regards,

    Comment by Dennis Wallentin — November 8, 2006 @ 9:41 pm

  16. Well, you can still insert an XLM macro worksheet and write macro’s in it.

    MSFT has strived to make sure these still work as they used to, but of course so much new stuff has been added to Excel, which is all unaccessible through XL4 macros. And since the entire charting/graphics engine has been renewed you may expect to see trouble with code that addresses drawing objects and chart objects from XL4 macros.

    They did their best to make sure you can still use the same XL4 macro functions in defined names as you could in previous versions. I haven’t been able to confirm they all work yet, as there were still some bugs around in the Beta2TR.

    So. XLM has been supported for about 12 years since VBA came in the world of Excel. I’d expect a similar timeframe for VBA when VSTA pops up.

    Comment by Jan Karel Pieterse — November 9, 2006 @ 10:19 am

RSS feed for comments on this post. TrackBack URI

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out /  Change )

Google+ photo

You are commenting using your Google+ account. Log Out /  Change )

Twitter picture

You are commenting using your Twitter account. Log Out /  Change )

Facebook photo

You are commenting using your Facebook account. Log Out /  Change )


Connecting to %s

Create a free website or blog at WordPress.com.

%d bloggers like this: