Microsoft's Top Devs Don't Seem To Like Own Tools
ericatcw writes "Through tools such as Visual Basic and Visual Studio, Microsoft may have done more than any other vendor to make drag and drop-style programming mainstream. But its superstar developers seem to prefer old-school modes of crafting code. During the panel at the Professional Developers Conference earlier this month, the devs also revealed why they think writing tight, bare-metal code will come back into fashion, and why parallel programming hasn't caught up with the processors yet." These guys are senior enough that they don't seem to need to watch what they say and how it aligns with Microsoft's product roadmap. They are also dead funny. Here's Jeffrey Snover on managed code (being pushed by Microsoft through its Common Language Runtime tech): "Managed code is like antilock brakes. 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 also joked that programming is getting so abstract, developers will soon have to use Natal to "write programs through interpretative dance."
Another anti-Microsoft "story" with no content from kdawson.
à_à
"Word is not a programming language."
When you type text into Word, it is parsed. Your words are turned into tokens which are checked against the list of valid symbols (the dictionary) and then interpreted as sentences that are analyzed for grammatical inconsistencies which, if found, are highlighted. All this is done in much the same way as static code analysis helps you in your favorite IDE.
"CSS doesn't begin to approach a programming language."
Why - because it is (as far as I know, I'm no CSS expert) declarative?
"Spreadsheets can be used that way, but they quickly become unwieldily."
Yes they do, that much we can agree on, but you can't say BAG isn't right. Seeing spreadsheets used this way isn't uncommon at all.
I think hughperkins is right to observe that the question of what we call programming is mostly semantics. But since you are making an argument saying we shouldn't call certain things programming, it makes me curious as to why, and what your requirements are. Using a General Purpose Language (GPL)? Adding the constructs to turn something such as a domain specific language (DSL) from a non-GPL into a GPL is pretty easy. Very simple languages can be GPLs, while at the same time a non-GPL DSL can be quite sophisticated, so using a GPL by itself would seem a bad candidate for what constitutes "real" programming.
(Btw, I have no idea about facebook, but are you saying that the language in question is not a GPL? Or is it the API you are complaining about?)
If using a GPL isn't enough for "real" programming, then what? Using a GPL with good library support? How good library support? What are the essential libraries? Is I/O among them? If so I guess you don't count a pure, side effect free Functional Programming (FP) language as a "real" programming language? Must the programs be imperative, rather than declarative? Again, that cuts pure FP out...
If you object that it is hard to draw the line, well, of course this is exactly my point.
And if we can't draw the line in any useful way, but you still want to argue that people aren't actually "programming" when what they're doing is somehow sufficiently less sophisticated than what you're up to, then what's to stop someone who's doing something even more complicated than you, in an even more sophisticated tool, from proclaiming that what you're doing isn't "real" programming?