Serious do we always have to go back wards? PHP is rubbish
SmallTalk was showing the way, showing how objects to help with re-usability and ease of use and understanding. And it had resulted in object pascal and C++ in the early 90's. And I thought that languages where showing that they could leave behind their ugly past based in COBOL and Fortran and its even uglier sisters like RPG.
Unfortunately the quest to win the rat race took me away from programming as the GUI and web started to take hold.
But in the last 5 years I have got back into programming par time. Initially just in VBA and access, but then C# for all things serious. After 6 months of exposure of C# I started disliking VBA, it could not decide what it was, like typically update basics, it is no longer basic, not quite a fully typed language. Some variables can be implicitly typed, some explicitly typed.
But at least the editors where able to distinguish them and then provide you the ability to remember function, variable and constant names, and any classes they may have related to them.
With C# it is possible to declare variables implicitly or explicitly so you can choose, although I prefer explicit since this means a number of bugs can be identified before run time, reducing dev time.
Anyway back to my original point enough about my back ground. So a colleague asks me to assist with a problem he is having with an "open source" online shopping product. After delving into the product through the forums I find that you have to make mods to the code to do what he wants. So off I go. I takes me about a day to set up an environment for me to be able to do so dev, changes to me windows, editors to be downloaded, luckily I did not have to install that web server named after some unfortunate India tribe, but with everything in place off I go to w3schools to teach myself the basics.
Hell no. This language is almost as bad as writing batch files in DOS. And that ain't fun. When I worked with batch languages before they where exactly that batch languages designed to do a quick hack in order achieve basics. This language is a batch language that thinks it is a player. It is awful. If you want a decent dev environment you have to buy it, I have used Visual Studio Express for free for 5 years and it does everything I need. everything feels like a hack.
All variables are the same, you cannot explicitly define variables, things like master pages are non existent, you have to go back to the days when we used include files, that is something I learnt to do in the 80s YUK.
Global variables have to be explicitly defined in functions, and NO classes or objects. The help says you can do things, only to find that you need some other extension to use those functions. This thing is as nasty as a wooden fishing boat that has seen to many storms, it is creaking at the seams and has not learnt about steel boats yet. It takes programming back about 40 years.
I am sad to see that it is becoming so popular, but I cannot imagine that any serious programmer considers this a one up on C#. I hear some of the big names use it, but they are run by HR departments that do not understand technology.
For me, I will do what I have to do and run back even VBA and grovel on my knees to be let back into the land of much better tasting grass.