After reading and answering questions on programming forums, I always wonder why people are getting so lazy. I understand that the way we write web sites or web application code has really changed in the last few years, but I still don't understand why programmers (or pseudo programmers - I'd say) don't want to write code directly and often search for quick and ready-to-use solutions. I do understand that some add-ons, plug-ins, frameworks and libraries are really useful (and I wrote about it in the post regarding jQuery), but it seems to me that the art of coding is really dying.
As an example, somewhere was asked advise on how to create a table in html. Fair enough! Beginners are beginners and they need help. A poor soul answered explaining in depth the use of the appropriate tags (actually he explained everything about <table>, <tr>, <td> and all the related attributes, linking to the w3school web site at the end). That was not a good answer! The discussion continued until someone posted the complete code and that's, in my opinion, totally crazy.
In the same forum, if a user posts a question about how to manipulate a grid view, for example using css to obtain colouring effects, it would be plausible and useful to others. Asking for the basics... well... it seems to me quite too much. Not that providing an answer is wrong, but expecting to have a ready-to-use solution without even trying to get into understanding it, seems to me not plausible.
I don't think that beginners will eventually learn something that way. When I started coding, I've used forums as a source of information, but - let me be a little bit direct - I always tried to use my own brain. I've always looked for sites where the basics were explained. I've looked for examples and used them, just to experiment and understand what's behind.
Now I wonder if I am old school. The future is quickly moving towards plug and play or drag and drop. I see people looking for ready-to-use pieces of code, gadgets and libraries more and more. There are online services that will help you build a form: you drag and drop controls and they give you the code. Who am I to say that those services are not useful? Well, they might be, but...
Let me put it another way. Is a modern painter able to draw a simple and beautiful landscape? I believe so. Knowing the basics, he could then express himself through different ways (extreme ways sometimes).
Using different tools and pieces of code, you can actually write good and clean code, assuming you know the basics (am I repeating the concept too much?) and assuming you will learn something new.
For example, that is what's happening with new development tools. To make things easier for beginners, everything is done with drag and drop. It seems that with this way of programming, you do not really have a full control of the code automatically inserted. When you try to validate the page... oh my!... it is a mess.
Again, those tools are useful if you know the basics.
There's another interesting effect I would like to consider: web documents size. When using new technologies and development tools, it is easy to create oversized web documents. Code optimization is not taken into account because there's not really need for it: connections are faster, web browser are more and more complicated and complete. Who cares if a page is 119Kb in size?
In the end, I am starting to believe that coding is becoming obsolete. What I mean is that hand coding is dying. And the knowledge of programming is getting less and less a real value. Will we ever see a programmer opening notepad and start writing <html... in the near future?
Please feel free to send me a comment on the issue via email. I would really like to know what you think.