Microsoft has championed graphical programming methods through its development tools, led by Visual Basic and Visual Studio, over the past 20 years. However, we've spoken to the software company's own superstar developers who've revealed their loyalty to old-school methods of coding software.
Graphical programming methods have been championed by Microsoft over the past two decades.
The company's development tools, led by Visual Basic and Visual Studio, have been used by millions of software developers over the last 20 years.
However, at the recent Professional Developers Conference in Los Angeles, Microsoft's own superstar developers revealed their loyalty to old-school methods of coding software.
"I will fight you if you try to take away my text editor," said Don Box, a Microsoft distinguished engineer.
"Do people want to draw pictures [to program]? Sure, I guess," continued Box, who works on creating declarative languages and tools for Microsoft.
"But if you grew up programming when I did, you did it in text. And I think we lose that at our peril."
"Graphical programming environments are usable when they are useless, but unusable when they would be useful," said Jeffrey Snover, another Microsoft distinguished engineer and creator of Microsoft's PowerShell scripting tool for Windows.
"When there are five things on the screen, you can burp that out [in text]. But when there are 500 things, [graphical programming] is completely unusable. You zoom in and zoom out and you lose all context. I think it's just smokin' dope."
While visual programming can be easier to learn and can help make developers more productive, it's also "easier to delude yourself," said Butler Lampson, a technical fellow at Microsoft.
For instance, "no one can ever tell you what a UML diagram means".
Lampson, winner of the Association for Computing Machinery's A.M. Turing Award in 1992 for his "contributions to personal computing and computer science", is a co-creator of nine programming languages.
Microsoft is belatedly increasing support for the Unified Modeling Language, or UML, in the upcoming Visual Studio 2010 release that's slated to ship next year.
Besides visual programming tools and UML, Microsoft is pushing managed code through its Common Language Runtime (CLR) technology in the next version of the tool set.
Managed code runs inside a virtual machine. That makes it easier and faster to write, and more secure, say proponents. Managed code also lets developers "perform above their level of competence", Snover said.
"Managed code is like antilock brakes," he added.
"You used to have to be a good driver on ice or you would die. Now you don't have to pump your brakes anymore."
Snover joked that programming is getting so abstract, developers will soon have to use Microsoft's in-air motion sensor game controller for the Xbox, dubbed Project Natal, to "write programs through interpretative dance".
NEXT PAGE: The views of other superstar developers
- Programming gurus share their views
- The views of other superstar developers