Fog Creek Software
Discussion Board




How does MS maintain cross-platform source code?

Joel said he has written everything that he has to say.  But one thing he has not talked about is how Microsoft maintains their source code, particularly Excel, for different platform.  Yeah, it is easier to say they use p-code, etc. but how does it get away with platform specific GUI related stuffs and COM interface.  (Don’t tell me MS uses RealBasic)

I would love to know if MS has some secret GUI framework that is better than MFC, at the same time cross-platform like http://www.wxWindows.org .  I am sure Joel has been out of MS for long enough, they would not care much.

Care to share how MS does it?

INGSOC
Monday, June 14, 2004

"Joel said he has written everything that he has to say".

I missed that, when did he say that ?

Steve Jones (UK)
Monday, June 14, 2004

I don't think there is a secret GUI library. I even think that Mac and Windows developers of the same product doesn't share a large part of their source code.
I'll take Micorsoft IE as an example: Windows and MacOS releases were never synchronized (Mac IE 5 is equivalent to Win IE 6.) HTML rendering bugs and CSS interpretation problems are not the same on both platforms which suggests that they don't use the same code for their HTML rendering engine. The UI is also not the same and some features are only available on the Mac version (such as the Scrapbook.)

GinG
Monday, June 14, 2004

If you took the Microsoft label off Office or IE for the MAC and Windows it would not be obvious they come from the same company.  However, some time ago Microsoft ported IE and Media player to Solaris.  These two apps looked identical to their Windows counter parts.  That would be the code I would be interested seeing how they ported it.

Bill Rushmore
Monday, June 14, 2004

They have a business partner called MainWin who has an MFC to Unix porting package.

old_timer
Monday, June 14, 2004

MainWin does a lot more than just MFC conversion. They implement a Windows-like runtime on Unix.  It's like Wine, but with legal access to the Windows source code.

Oren
Monday, June 14, 2004

MainWin... these were the braintrusts that were responsible for leaking the Windows source code because the CEO or CTO had it on a network-connected machine that he was too lazy to secure.

Neat Chi
Monday, June 14, 2004

I worked at Microsoft _very_ briefly before deciding to go back to my old company. Part of the frustration was having to reimplement font dialogs, table border dialogs, etc.

WinMain is how they do it, there is no code reuse at MS.

John
Tuesday, June 15, 2004

You can mine some info on this from Rick Shaut's blog http://weblogs.asp.net/rick_schaut/ at times.
e.g. http://weblogs.asp.net/Rick_Schaut/archive/2004/02/26/80193.aspx

Just me (Sir to you)
Tuesday, June 15, 2004

*  Recent Topics

*  Fog Creek Home