Posted on 06/08/2012. By Pete Otaqui.
Gina Trapani has an interesting post on learning PHP “the right way” .
I think she almost makes the full point about why PHP has been a) successful and b) isn’t really so bad, but I think she just doesn’t quite spell out the heart of the matter.
Perfection is hard
The real point here that I rarely see anyone making is that learning to program has a high correlation with learning another spoken language. There are very strict rules about to speak “correctly” in any language, and of course these are flouted all the time by very many of even the most proficient speakers. You can, if you want to learn a language, start with a text book and work you way from some simple vocabulary right up to every weird edge case of the subjunctive before you ever try and talk to anyone but the chances are you won’t achieve any communication until very late in the day, and there is also a very high likelihood that you’ll give up before you ever get that far.
Focus on the goal
Another approach to learning languages is that espoused by Michel Thomas . He throws out most concerns about learning lots of vocabulary, and even real worries about how the underlying rules of grammar work, in favour of practicality. His approach is to get you really communicating as quickly as possible, actually tapping into the reason that anyone would want to learn a new language in the first place. There is a feedback loop here, because you can actually use the tools you have in the real world you do use them, and this is a fantastic motivator to learn more tools and to use them more proficiently.
Infinitely More Than Nothing
And so it is with PHP – the fact that is has such a low barrier to entry means that people can make actually useful software quickly – and this is for many people the very best way of learning anything. There are further ramifications of this fact – more people can make something, so it’s cheaper and easier to do so, so more businesses want software made, so more people use that software, so their understanding of “good” software grows, etc, etc. Had no language with such a low barrier to entry ever existed there would be far fewer websites, built by fewer businesses, with fewer users.
Software built by people without a great deal of experience can cause real problems, but it can also achieve many ends. Of course, even software built by the best developers in the world can go wrong. Something, no matter what it is, is infinitely more than nothing.