Giving Up on Microsoft

Although I am generally platform agnostic, I make no secret of the fact that I am primarily a Microsoft developer. In a way, I grew up with Microsoft-- as a teenager, I cut my programming teeth on the early microcomputer implementations of Microsoft BASIC. And I spent much of my professional life writing Visual Basic code. When Microsoft rebooted their programming franchise with .NET in 2003, I was thrilled and reinvigorated, glad to finally have a viable exit strategy from the glass house that was Visual Basic.


This is a companion discussion topic for the original blog entry at: http://www.codinghorror.com/blog/2007/05/giving-up-on-microsoft.html
2 Likes

Even worse are the poeple that make a living on the microsoft stack that have nothing but negative things to say about everything Microsoft. It’s hard to work with people that have such a low opinions of themselves and how they make a living.

I wholeheartedly agree. I can see this being a post I link a lot of people to when they frustrate me.

1 Like

Like the post and I do agree that there is always more than one way to solve a problem. I work in a development team using Microsoft products and whilst I do spend some of my spare time trying to stay on top of other technologies there are so many these days there is just not enough time in the week (especially if u try and have a social life as well!). Someone needs to create a matrix style brain feed and my problem will be solved!

Well, Mike Gunderloy is a bit of a societal “drop-out” (and I say that with respect, not derision), so it doesn’t shock me that he’d be inclined to give up on Microsoft.

Personally, I think Microsoft’s really got its stuff (developer tool-wise) together in the last 5 years, and I haven’t heard of an IDE better than Visual Studio. Do Perl and Python developers even HAVE an IDE, or do they just use vim or Emacs? Yech. I don’t think I’d want to work in such an environment, but certainly we can learn a lot from “the other half”. (And look what’s happening with C# 3.0… quite a bit of inspiration from Lisp and Ruby, I suspect.)

Hilarious picture of Bill, though!

P.S. I really enjoyed your .NET Rocks interview, Jeff - even listened to it twice!

I totally get where Mike Gunderloy is coming from. I’ve been developing asp.net applications for the past five years and up until a year ago i was pretty happy. I began digging into other web frameworks, mainly those that implement an MVC2 pattern. You know, to see how the other half lives. Around this time i also began to embrace standards (both dom scripting and XHTML). That is when I really started to question some of the decisions that MS made with the asp.net framework. INamingContainer destroys semantics (can’t rely on element ids instead you must venture into class-itis), can only have one form with runat=server, why does an asp.net label render as a span when label is a valid html element, why doesn’t an asp.net grid render headings as th tags, no support for optgroup element and the list goes on and on. It seems to me that asp.net was created by architects and programmers and not people who actually build web applications (in the “real world”). My struggles have really forced me to look at other careers, most notably ruby on rails. Problem is I live in Ft. Worth, Texas, surrounded by corporations entrenched in Microsoft technologies. I would leave asp.net in a heart beat if i could find another technology that could support my family.

[can you even name any startups that use Microsoft development tools?]

Well no… but then again they don’t feel the need to display that fact triumphantly in their literature like open source startups do…

Up front I say that I’m a Linux geek, and generally anti-Microsoft. However, it’s more because I can only run Microsoft software/tools on the Microsoft operating system. “Duh”, you’re probably thinking, but really, I would love to learn .net if I could either write it or run it with no fuss on my linux box (or Mac for that matter).

I love Java because my IDE (Eclipse) and anything I write will just run with no fuss wherever I happen to be working. I prefer my Linux OS, but sometimes I just have to be in Windows. The nice thing is that my development environment doesn’t change just because my OS does. When I browse the web with Firefox, my experience is exactly the same whether I’m on XP or Fedora.

I understand that MS wants to make money, and good for them; they should, but the us vs. them would surely change if they were more open – not be confused with open source or free – just more open. I’m not even saying that Microsoft needs to go out of its way to produce software for OS’s other than their own. But, for example, if they provided an open spec of how to implement the equivalent of a java virtual machine for .net (CLR is it?), the open source geeks would implement it and allow .net apps to run on Linux or any other platform that might so desire.

As it is, I never even consider anything MS has to offer because if I were to choose a MS solution, I’d be locked into their OS as well, and that ain’t gonna happen.

We can be friends and all, but I’ll still never buy an iPod.

The problem is that developing with Microsoft tools on Microsoft’s OS for Microsoft platforms just isn’t emfun/em. The Microsoft stack appeals to risk averse executives (“Nobody ever got fired for using IBM/MS/MCSE”) so it becomes an entrenched default and developers put up with it.

Does anybody truly love working the MS stack? If you had to pay for all the development tools yourself, would you? Or would you go free and open source?

Hey, if Visual Studio and all that stuff works for you, great. I used to be a web designer in an insurance company that was all .NET. It was hell trying to bend templates to my will; VS just wanted things its way.

I’m much happier now as a freelancer and entrepreneur working on my Mac with Rails, Subversion, MySQL, and the Aptana IDE.

As a software developer, you’re doing yourself a disservice by pledging allegiance to anything other than yourself and your craft-- whether it’s Microsoft or the principle of free software. Stop with the us vs. them mentality.

You have a strange view of free software if you think it requires an “us or them” mentality. Free software is explicitly about freedom for all software users – even those who don’t “pledge allegiance”. Anything that restricts that freedom isn’t part of free software.

I’m a pragmatist.

As am I. Without software freedom, there’s no future to look forward to with software. That freedom is either demanded openly, or exercised covertly in spite of restrictions placed upon the user; to willingly give it up is the least pragmatic act I can think of with software.

@cmv: I also live in Fort Worth, TX. I spent the first 8 years of my career working with MS technologies. I switched in 2000 to Java Enterprise development and have been doing that for the last 7 years. You CAN switch if you want. I’ve had no shortage of job offers while developing in Java. The good thing is I keep up my MS skills also so I can take pretty much anything that comes along.

After Microsoft you’re going to find the next most available jobs to be in Java. Finding one for anything else, PHP, Ruby, etc. is more difficult.

I would love to learn .net if I could either write it or run it with no fuss on my linux box (or Mac for that matter)

This is exactly, EXACTLY why Mono exists. Take a look:
http://www.mono-project.com/Main_Page

the current font is quite annoying to read

body { font-size:90%; font-family:calibri,tahoma,arial,sans-serif; margin:0px 0px 20px 0px; background:#FFF }

Which font is your browser rendering? You can download a TrueType file of Calibri here: http://jeffmilner.com/index.php/2005/07/30/windows-vista-fonts-now-available/

Don’t forget about Silverlight, the DLR, IronPython, IronRuby, etc. - which is a different MS world if you are into dynamic languages (even though I live in VS2005 during the day).

http://sessions.visitmix.com/default.asp?event=1011session=2012pid=DEV02disc=id=1511year=2007search=DEV02

Btw, IronPython is open source http://www.codeplex.com/IronPython/Project/License.aspx

I have been using the MS stack since VB1 (1991) and from a monetary perspective, I can’t really complain.

“I haven’t heard of an IDE better than Visual Studio. Do Perl and Python developers even HAVE an IDE, or do they just use vim or Emacs?”

I haven’t heard of an IDE better than Visual Studio.

IntelliJ IDEA is as good as Visual Studio if not better (and much better than the eclipse POS)

Do Perl and Python developers even HAVE an IDE

I don’t know for Perl, Python sure has a few IDEs (Wingware’s Wing IDE and ActiveState’s Komodo mainly, not as good as Visual Studio or IntelliJ though). The thing is that you mostly don’t need them: you have a good editor (or even Eclipse or IntelliJ with their respective Python plugins), you have your interpreter, and you just grind ahead.

The overhead is much lower than when coding in Java or C#, so the IDE isn’t required.

can you even name any startups that use Microsoft development tools?

Yes. Phanfare and PlentyOfFish. But it’s hardly the cool thing to do these days.

I too understand Mike’s position, but don’t share it. I do agree with him, though, that the intellectual property stuff around the ribbon was seriously questionable. When MS starts focusing more on protecting its monopoly than giving developers and users what they want, it gives me pause as well.

One of the problems with learning how other half lives is that it’s bloody hard just to keep up with the Microsoft stuff. Piling on RoR, Linux, MacOS and Java just means you’re drinking from the Amazon instead of just a firehose.

You could always go the Java road and have 15 different frameworks installed and try to get them to play nicely.

Nathan: I don’t Ilove/i the MS stack, but I’ve never seen anything better that works for Windows development (I’ve never seen anything better in general but I haven’t really been looking; I have a few Macs, but I don’t Iwant/i to do Cocoa very much. Since I haven’t been looking, my lack of seeing anything better means nothing!).

And even if my company wasn’t paying… VS Express is free, isn’t it? As is SQL Express.

(Of course, what I do is UI-intensive and I spend a lot of time mucking about with forms and control layout; if I was doing web development, the VS advantages might be less compelling.)

Microsoft has figured out that free tools get people using the platform.

Ever heart of that pretty big JAVA IDE called Eclipse?

No, seriously, whats so special about VS05?