Wednesday, September 22, 2004

Point out and grunt programming?

Reading an article today about the benefits of ASP.NET 2.0 I was reminded of something Eben Moglen once said:
"What I saw in the Xerox Park Technology, was the caveman interface, you point out and grunt. A massive winding down, regressing away from language, in order to address the technological nervousness of the user"

Reading about all the wonderful options of "do more with less code" I just had this feeling creep up on me about how more then ever we will soon be yet again be flooded by masses of un-educated "programmers". Horrible drag and drop programming. This is something that has always worried me actually about most of Microsoft's easy to learn languages. It breeds programmers who only know how to make something work, not why it actually does what it does.

I already felt this way about the programming language -well programming dialect- Visual Basic, for a long time for example. The language itself can actually be applied quite nicely if your know what your doing, but unfortunately you don't need to know what your doing to accomplish something! Of course this has it's advantages, it means a very low learning-curve and you can develop something relatively quickly with what I would call "code grunts". The downside of course being it's often un-maintainable, slow, buggy and full of security holes.

Another problem I see, and one I think is exceptionally apparent in ASP.NET is your total dependence on Microsoft Libraries. You actually don't really know what is going on inside and how some things are resolved. With some study you can still find out a lot. But you lack the ability to really see the code and if you feel the urge change something your out of luck. Of course many programmers who are used to only dealing with Microsoft languages will never even bother worrying about any of this. As such they usually just look at you with a blank face when it turns out the software they just wrote is eating up all the memory on your server.

Most of those "revolutionary ASP.NET options" I can recall building my own classes and libraries for in other languages like PHP. And the added benefit is, I can change it whenever I feel it needs changing. To give credit to Microsoft, with ASP.NET you can also do all these things. Infact they have made even that so easy you hardly need to know what really is happening when you do. But I fear most people will simply not invest the time in it. I've often seen that on departments where any type of Visual Basic or ASP was used to program in, most programmers where actually quite unaware of what was actually happening and how their code actually works. One or two visionary programmers (often with a C/C++ background) served to "service" a small army of programmers who only knew how to get things to work, but not how they actually worked.


Post a Comment

<< Home