December 01, 2009

Microsoft bares its soul -- and creates an opening for Google

The hypocrisy undermining the company's visual tools vision should make developers rethink their Visual Studio commitment before it's too late

Do as I say, not as I do: That's the message I took away from Microsoft's latest confessional session at its Professional Developers Conference (PDC). Apparently, several of Microsoft's best and brightest -- the people who help chart the course for the company's tools division -- admitted to eschewing modern visual programming techniques in favor of the "old school" text editor and command-line approach.

This would hardly be news if it weren't for the fact that it flies in the face of everything that Microsoft has said and done in the developer tools space over the past two decades. At PDC after PDC, company executives have touted the wonders of their latest visual goodies. To now learn that company's own gurus don't use these same glitzy, paint-by-numbers toolkits is tantamount to hearing how wonderful Obamacare will be and then finding out that the people passing the relevant legislation are exempt from the program. (I wonder if their "Cadillac" health plans will be taxed?)

[ Follow all the significant developments at PDC 2009 in InfoWorld's coverage. | Read Neil McAllister's Fatal Exception blog for the latest insights on application development issues. ]

Of course, nobody at this panel thought to question why these Microsoft hotshots avoid visual tools like the plague. That's because everyone already knows the answer: performance. Simply put, lazy programming models -- like the ones at the heart of Microsoft's visual tools -- produce bloated, inefficient code.

additional resources
White Paper - How to Improve Delivery of Advanced Web Applications

White Paper

Virtual Workforce: The Key to Expanding The Business While Cutting Costs

Get the independent advice and expertise you need to support a virtual workforce.

Go inside:
The three-step approach to making a virtual workforce a reality.
The four flavors of client virtualization technologies.
The three key initiatives that solve IT challenges.
Download now »
White Paper: Successfully Secure Your Wireless LAN With Wi-Fi firewalls.

White Paper

Addressing Linux Threats Leveraging Fewer Resources

The increase in Linux popularity has increased the frequency and sophistication of malware attacks. Read this 2 page white paper now to learn how you can protect your Linux environment with real-time protection that is certified by all major Linux vendors.

Download now »
White Paper - The 2009 Handbook of Application Delivery

White Paper

The 2009 Handbook of Application Delivery

Ensuring acceptable application delivery will become even more difficult over the next few years. As a result, IT organizations need to ensure that the approach that they take to resolving the current application delivery challenges can scale to support the emerging challenges. This handbook elaborates on the key tasks associated with planning, optimization, management and control and provides decision criteria to help IT organizations choose appropriate solutions.

Download now »
White Paper - Is Your Backup System Outdated?

White Paper

Mid-range Storage Considerations

A common misconception is that mid-range storage requirements are dramatically different than that of a larger enterprise. Mid-range storage users may require less capacity, but they have similar functionality and management requirements. This ESG paper examines mid-range storage needs and reviews a new solution that adjusts size while retaining value, performance and functionality.

Download now »
gabimb 1-Dec-09 12:43pm
Randall: I think you are wrong about your assessment. You don't need a visual tool to develop a visual tool. It can be done by handcrafting it. A bad coder is a bad coder, regardless of the tools (notepad, netbeans or visual studio.NET) the person uses. VS is the greatest development tool out there, as far as I'm concerned; I have use Netbeans, which is not bad. I have not delved into Eclipse, and I might in the near future. I have also used Borland (absorbed by Embacardero Corp) tools, which is on a par with Microsoft to a lot of degree. Do you remember Delphi? In spite of using VS, I still do most of my coding (database access, networking, piping, etc) by handcrafting it. With the avanlanches of functions, objects, you name it, how do you want to remember all of those, without the aid of great tools like VS. Stop bashing the "almighty" Microsoft!
rdm 1-Dec-09 12:58pm
I use visual studio. And I use gvim -- sometimes from within visual studio, sometimes not. And... I can not think of any profession where the use of one tool would require that no other kinds of tools could be useful.
SRA 1-Dec-09 1:34pm
Randall beating up on MS? Am I dreaming??? Or is there some ulterior motive? Also, Randall now trying to go Lou Dobb's route by mixing computer software with politics like Lou mixed finance with politics?
Turetel 1-Dec-09 1:42pm
I agree with gabimb, a bad coder will be a bad coder with or without fancy visual tools. I use a host of visual tools, but in the end I almost always end up hand coding...something about the peace of mind to it I suppose.
mraabe 1-Dec-09 4:00pm
Randall, your charges of "hypocrisy" seem a bit misguided. So some notable old farts like Don Box still like to rattle away on text editors. So what? Does he speak for Microsoft? I imagine he likes to compose letters to his grandchildren on that same text editor. Does that mean Microsoft is hypocritical for offering a word processor and trying to get the rest of us to use it? Old programmers are prone to romanticizing the tools they had their legendary youthful successes with. It makes them feel "closer to the metal" or something. We all know graybeards who think vi is still the ONLY EDITOR anyone will EVER NEED. I even know a guy who thinks Assembler is a bastardization; he thinks we all would be better off if we were still using PDP-8-style bit switches on the cpu faceplate to toggle in each word of code. It's just another form of imprinting (the phenomenon where a baby duck thinks the first thing it sees is its mother). Let these guys program. Let somebody else spec out the features for the products they're supposed to build. P.S., I love that you see Chrome OS as the inevitable receptacle for all of this Windows programming "brain drain." Others may disagree. Just the other day I was reading an article entitled "Why Chrome OS will fail -- big time" by some guy ... what was his name? Oh yeah: Randall Kennedy!
Red T-Rex 1-Dec-09 6:33pm
That's pretty funny. All the other commenters overlooked the obvious problem and actually took the writing seriously. A 2 bit hack is trying to pass himself off as a professional developer. He spends all day trying to find something to throw some mud at. When has he ever done anything contructive or created anything? I pity poor Randall. When he looks back on his life what has he really contributed to society.
Missing-Pieces.com 2-Dec-09 1:09am
I gotta laugh. Its no Microsoft-only hypocrisy, its the same everywhere. When I was at Iris/Lotus working on Notes, the 'best' (ie: most skilled, knowledgeable, reclusive, grumpy, set in stone...(get the idea? ;-)) would break dev protocol and just code deep in text screens, disabled old versions of Windows with obsolete, banned compilers. You couldn't challenge their ways, they were supreme... but they couldn't use their own product nor type word doc either! lol There are the same in the Java world, the Web world and there will be in the Google world too! Heck, you get the same out in the REAL world, those with the obsolete tools or ways, who still make magic in medicine, science, engineering, manufacturing, car making, car REPAIR! Get over it. Non-story here. ;-)
geewhizbang 2-Dec-09 1:57am

My company continues to develop in ASP.Net, but we are using the MVC pattern with ExtJS.

We get the excellent integrated debugging, the C# language, and the Visual Studio editor, but we deal directly with the browser javascript rather than writing it indirectly using inefficient ASP.net controls.

Our app is at least 5x faster than what we could do with web controls. The code isn't harder to write, once we got over the hump of learning ExtJS metaphors.

The backend code is really clean and easy to read because all it does is send data objects to pages in JSON format.

Microsoft does push a lot of lazy metaphors, and they are fine for simple pages, but for large apps, you have to handle things yourself more efficiently.

mpswaim 2-Dec-09 8:13am
The thing is, most of my code doesn't have to be that performant. It's a lot more efficient for me to let the tools handle the stuff that I don't care about, and hand code the important stuff. How much time do you really want someone to spend on a form's message loop?
JTB2468 7-Dec-09 12:26pm
I'm 22 (read not a greybeard) and I prefer hand writing code to the visual tools. Give me Gedit and let me roll.
TheJammer 7-Dec-09 12:41pm
Thank you for having the fortitude to say in this medium that VS is horribly inefficient. I've known VS is a dog for years but staunch MS developers just refuse to recognize a lame product when they see one. Herd mentality in action. I've noticed how many developers are "forced" to justify their stated beliefs that VS is useful. They can talk about "good" coders and "bad" coders all they want, but they're engaging in distraction. The problem being discussed is the tool. It doesn't matter if you are a "good" coder or a "bad" coder if you have the wrong tool for the job. And incidently, using the wrong tool for the job will make you a "bad" coder because you will have traded reason and logic for visual development.
TheJammer 7-Dec-09 12:51pm

Thank you for having the fortitude to mention in this somewhat visible forum that VS is inefficient. So many die hard MS developers refuse to recognize a dog when they see one. I chalk it up to herd mentality.

I've noticed how many developers have been forced to justify their stated beliefs that VS is useful. They can talk all they want about "good" coders and "bad" coders all they want, but they're missing the point.

The problem being discussed ehre is the tool. It doesn't matter if you are a "good" coder or "bad" coder if you are using the wrong tool for the job. However I should mention that using the wrong tool for a job will most likely create a whole bunch of "bad" coders.

Sign up to receive InfoWorld Resource Alerts

Subscribe to the Today's Headlines: First Look Newsletter

Find out what will be news for the day, with our first-thing-in-the-morning briefing.

©1994-2010 Infoworld, Inc.