Fog Creek Software
Discussion Board




MS Programming Environment

I have always wondered which programming languages do Microsoft development teams write code in for their own products like Windows OS, VB, VC++, .NET Framework, Longhorn etc. Any ideas?

rml
Friday, January 30, 2004

Perl

Li-fan Chen
Friday, January 30, 2004

Logo and GW-BASIC. Sometimes FORTRAN IV for speed. DirectX is actually written in FORTRAN IV with an Ada API. Did you know that?

Chris Nahr
Friday, January 30, 2004

Visual C++ mate

Photonix
Friday, January 30, 2004

Bill Gates has a cable coming out of his back, kind of like that Mentel Corporation Guy, in duff film, The Fortress

Other MS programmers use binary toggle switches on Altairs

Allegedly

S. Tanna
Friday, January 30, 2004

You guys are kidding right! right?

rml
Friday, January 30, 2004

When I debug VS and the .NET Framework, I often have to debug C++, C#, VB.NET and JScript, though rarely all at the same time.  There are probably little bits written in other languages as well, but I haven't run into any.

The build system that we use to construct the whole thing is written in a mixture of C++, C#, batch files, JScript, Perl, Xml-based declarative languages, NMAKE and probably a few others that I don't know about.

The trend is towards writing more and more of all the code in C#.  On my team, we write everything in C# unless there is a really compelling reason not to.

Why do you ask?

Eric Lippert
Friday, January 30, 2004

Just out of curiousity Eric, is the C# decision a team preference, or is this a standard laid down by the company?  Would this be your choice vs unmanaged C++, etc?

I'm still developing with VC++6.0 and MFC, and often wonder if I am missing out on something better.

Thinking Hard.
Saturday, January 31, 2004

With regard to VC6 and MFC: drop it like a hot rock and start using C#.

I used to work in VC6 and MFC exclusively. I reluctantly went and learned C# because I had one specific request for it. I *love* C#. I *love* the .NET framework. All the logistical concerns pale next to the simple idea that for once, the API makes *sense* to me.

I finally feel like I'm not being penalised for resisting the Windows storm. From the first day I started working in Windows (as opposed to DOS and command line UNIX), I felt like there was a huge mountain of stuff I was expected to know, and nowhere I could go to learn it. It took years before I felt like a competent Windows developer, and every time I turned around there was some new technology they'd apparently introduced just to make things harder for people like me.

Today, I feel like I'm standing on equal footing. For once, I can *answer* more questions about Windows programming than I need to ask. And that feels really good.

Caliban Tiresias Darklock
Saturday, January 31, 2004

> Today, I feel like I'm standing on equal footing. For once, I can *answer* more questions about Windows programming than I need to ask. And that feels really good.

Provided they are not questions about MFC :-)

There can be good reasons to use the old Win APIs in certain applications (and MFC is really best thought of as a mostly thin wrapper on the Win API).

S. Tanna
Sunday, February 01, 2004

That's true, there are some very good reasons to use the Win32 APIs. Among other things, .NET doesn't provide any way I can find to get the HWND of the desktop. But what is really impressing me is the organisation of the framework and the quality of its documentation; I can usually find the answers to my questions in MSDN, without having to search scads of technical notes.

I also hate feeling like a bum in a technical forum. If I'm going to participate in a community, I can't just come in and whine about how I don't know how to do something, I have to offer some value back to the community. And in the .NET community, there are lots of questions I can answer, so I get to show up and immediately help a dozen people before I even ask my question. It just feels a lot better, and there's much less chance of any accusation that I don't know my assembler from my elbow. ;)

Caliban Tiresias Darklock
Sunday, February 01, 2004

> is the C# decision a team preference, or is this
> a standard laid down by the company? 

Good heavens, you think that maybe Bill calls out "thou shalt use C# and it shall be good!" and we all start using C# whether it makes any sense or not?

I would not want to work at such a company, (and such a company would fail.)  We use whatever tools solve the problem best. 

> Would this be your choice vs unmanaged C++,
> etc?

It depends on what problem I'm trying to solve.  Managed code is not a panacea.  But in general, we try to write stuff in C# unless there is a good reason not to.  C# is a much, much more pleasant language to use than C++.  I'm much more productive, and whole classes of bugs have disappeared from my code.

Eric Lippert
Monday, February 02, 2004

"I'm much more productive, and whole classes of bugs have disappeared from my code"

<joke>Not only that, but noone has ever heard that statement before.

Given all the classes of bugs eliminated by each new language, just how many bugs are left? Or do people keep putting different classes of bugs back in just so they can be eliminated again in the next hottest new language?</joke>

The Real Blank
Tuesday, February 03, 2004

Delphi :-)

Johnny Moondog
Thursday, February 05, 2004

*  Recent Topics

*  Fog Creek Home