Fog Creek Software
Discussion Board




Excel Frontend

Some years ago I attended a -well known- Microsoft Certified Training Course.  The instructor (also Microsoft Certified) said s.th. like the following:  "The backend for Excel was programmed in C++, the frontend was programmed using Visual Basic.  See how good is Visual Basic, even Microsoft uses it internally for their products."  Is it true or was he selling VB ?

JReader
Monday, March 22, 2004

It is doubly not true. The backend of Excel is programmed in C and the frontend is programmed in C. There's no C++ there, let alone VB. Interfaces with COM are a real pain in the ass because it's C, not C++.

Just goes to show you -- certification and a buck will get you a cup of coffee.

Joel Spolsky
Fog Creek Software
Tuesday, March 23, 2004

Didnt the Excel team have their own compiler to p-code? If so, did it compile plain ol' C, or an enhanced/variant language?

Someone who thinks Excel is MS's best product
Tuesday, March 23, 2004

And why didn't they just use C++?

Count Dooku
Tuesday, March 23, 2004

"And why didn't they just use C++?"

I'm guessing that because at the time tools of sufficient quality weren't available. I know that's the case when Windows NT development started in 1988.

John Topley (www.johntopley.com)
Tuesday, March 23, 2004

And don't forget to put the certification diploma on the table in case you spill the coffee !

JReader
Tuesday, March 23, 2004

> Interfaces with COM are a real pain in the ass because it's C, not C++.

*cough*

COM interfaces are binary.


Tuesday, March 23, 2004

It is a binary interface, but in C, you have to make your own Vtables, while in C++, the compiler makes them for you, so I still assert that it's a pain in the ass to do COM programming in C.

Also, young people, C++ did not always exist and at the time Excel was created it was virtually unknown outside of Bell Labs, and certainly nobody thought it would become the successor to C. (In those days the money was on Objective C, and I doubt if anyone had a decent compiler for either language).

Joel Spolsky
Fog Creek Software
Tuesday, March 23, 2004

I sometimes think that all you get for your money at official MS courses is coffee, biscuits and misinformation.

About three years ago our two Exchange Server administrators went off to a course with an official MS Arabia trainer. We had the problem that Exchange was not processing any messages we sent with attachments.

Our guys asked the trainer about this. His reply was: "You can't send attachments with Exchange 5.5; you must upgrade to Exchange 2000".

About six months later one of the admins casually clicked on the Advanced tab for Exchange settings and found a check box to check/uncheck. Immediately we could send attachments, and I could disconnect the modem from the office telephone line.

Stephen Jones
Tuesday, March 23, 2004

>I sometimes think that all you get for your money at
>official MS courses is coffee, biscuits and misinformation.

Where is Philo? :-)

Patrik
Tuesday, March 23, 2004

--"Where is Philo? :-)  ---"

Probably working out a legal disclaimer in case we come to expect coffee and biscuits.

Stephen Jones
Tuesday, March 23, 2004

Most funny thing I ever heard at a course by a MS Certified Partner (this was a prepare for Windows Server 2003 thing): "Microsoft ditched all of IIS 5, adopted Apache and called it IIS 6.0".

Just me (Sir to you)
Tuesday, March 23, 2004

"(In those days the money was on Objective C...)."

Oh, if only it were so.  Development would be much more fun if the positions of Objective C and C++ were reversed.  In fact, it might be almost as fun to develop on other platforms as it is to develop in Cocoa on OS X.

:)

Jim Rankin
Tuesday, March 23, 2004

In what languages other than python is COM programming not a pain in the ass?

fool for python
Tuesday, March 23, 2004

ATL

Fool For ATL
Tuesday, March 23, 2004

Python itself is the antithesis of "pain in the ass".  COM in python is breezy, but so is everything else in the python world (with the exception of Zope ;)

lumberjack
Wednesday, March 24, 2004

"In what languages other than python is COM programming not a pain in the ass?"

VB6, Delphi.

John Topley (www.johntopley.com)
Wednesday, March 24, 2004

VBScript, PHP

dmooney
Wednesday, March 24, 2004

C++. If you are in the minority of people able to use it well.

_
Wednesday, March 24, 2004

Python is good for COM?

Is it good for using COM, or can it create COM servers?

What about ActiveX controls?

Any links?

This could make my life much easier.  Thanks.

Ged Byrne
Thursday, March 25, 2004

Before somebody says 'Google is your friend,' I have found this:

http://www.python.org/windows/win32com/

Very interesting.

Ged Byrne
Thursday, March 25, 2004

If you're serious about Python+COM, the book "Python Programming on Win32" by Mark Hammond and Andy Robinson is highly recommended.

Python Programmer
Sunday, March 28, 2004

*  Recent Topics

*  Fog Creek Home