When I started learning to program in PHP around 2 years ago, one of the things that excited me the most about it was the vibrant following it had. The community was strong in numbers, loyalty and willingness to help alike. I was always able to find help with almost anything PHP related that I needed. It wasn't the 'cut and paste' kind of help, it was the 'detailed explanation' kind of help. There were numerous resources which I could use to learn the basics of the language and a vast number of examples I could draw from to get an understanding of how to apply the basics that I had learnt in order to build a useful application. It appears however that those days may be long gone.
Please, don't get me wrong, I am not at all implying that the PHP community has gotten any weaker. In fact I think that it is growing at a rapid rate due mainly to the fact that the language itself is becoming more robust and mature. The issue I have however is that it is becoming increasingly more difficult to learn PHP. Just pure PHP. Beginners nowadays are being hit over the head with grandiose concepts such as 'dependency injection' and 'favouring composition over inheritance' which really have nothing to do with PHP itself. Whatever happened to <?php echo 'Hello World!'; ?> ? I understand that these are concepts which, when thoroughly understood, aid in the development of scalable and robust applications. However, why are we forcing newcomers to our community to build their PHP homes from attic to basement? As a result of this foolishness we now have PHP developers going around developing inferior software. The fallout is then of course not limited to the guilty developer, much of it lands squarely at the feet of the PHP programming language. 'PHP sucks!'. 'PHP is a hobbyist language!'. 'PHP is not suitable for enterprise!'. We have developers obsessed with micro-optimizations and zombie followers of design patterns when the truth of the matter is that had they just taken the time out to learn the language properly in the first place many of these concepts would become like second nature or at the very least much easier to understand and expand upon.
Now I understand that the onus is on these newcomers to ensure that they learn the language correctly from the ground up. However, as developers who have all been at the newcomer stage, senior members of the PHP community need to, for the sake of our beloved language, shift some of the focus of our discussions and our articles back to PHP. Just pure PHP. It may seem at first like taking a step backwards but I can assure you that there will always be something new to learn about PHP that you either overlooked or never never encountered before. This is one of the many reasons that I hate PHP frameworks. They do absolutely nothing to aid in the learning of the language and, at the rate that they are going, we'll soon find that PHP frameworks abstract away PHP itself. That however will have to form the subject of another blog post. Remember guys (and gals), PHP Depends on You!