While I agree with the overall point, I don't think the "I don't know C" hand-waving is very useful (both from the author and various commenters). If you want something done, then one should not be afraid to dive in and learn some C to figure it out. I don't know a lot of C though I learned on it, but I knew enough to open up the PHP source code and figure out what was going on with a multibyte encoding issue to file an accepted bug report and a follow-up feature request. Why don't I do that for parameter ordering in functions? Because, like the author stipulated, I'm not one of the people who cares enough to want to. But, those who do care enough to want it should stop making excuses for themselves about not knowing C and go learn it. Move on from there to writing documentation for the Zend stuff if it sucks in the places you want it to shine.
It's a recurring theme - "we need to rewrite PHP and I know exactly how to do it and PHP maintainers are idiots for not doing it years ago. Oh, btw, I don't know C and have no idea how PHP internals look like, but how hard could it be?" Happens all the time.
Yeah the old armchair programmer syndrome. It is very easy to just sit back in your armchair and give out advice on how to do stuff without having any knowledge or experience in doing it.
"Ah yeah just rewrite the entire code, you are meatheads for not doing that in the first place, you should have done it years ago. Oh yeah I have no programming experience per se, for example I don't know how to program in C and have no idea what the PHP internals look like, but how hard can it be? I mean you just load your C Code into your IDE and then search and replace all the bad code and write in the good code and then press the compile button and there you go. It works that way when I design HTML web sites in Dreamweaver, so it should also work for C, right?" -Archie Bunker 'Armchair Programmer' and 'Technology Bigot'
I wouldn't say I have no idea, I've looked into it. I know exactly how difficult it is and respect anybody who manages (or even tries to) make PHP better. I certainly at no point in the article called anyone an idiot.
You would not claim this bullshit if you had any idea who is actually maintaining and using PHP. Unfortunately, somehow it seems fashionable to make broad statements about PHP without bothering to find out a single bit of information.
Read the source code to MediaWiki some time. You can say a lot about MediaWiki, Wikipedia and PHP, but at least MediaWiki is PHP done right (if such a thing is possible).
It's a stinking shit crock from end to end. Just because it has a few celebrity developers like Rasmus, doesn't mean it doesn't fuck you in the eyeballs the moment you see it.
Just sit down for a couple of hours with tmux fired up, and vim with bits of ZE source code on the left and on thr right, Python.
You will see. It will make you sick looking at the ZE source code.
I work as a PHP developer, but for personal projects I create apps with Java on Android, and have also created iPhone apps with Objective C, I disagree with you.
PHP has some issues (like the ones presented here), but its also a great language for specific projects. I do prefer Java syntax honestly, but I'll never use JSP for a website, PHP is more adapted for that.
PHP is not for newbies, it is easier for newbies yes, but you can be a hardcore programmer and still use PHP.
i bet you think whatever language you use makes your balls bigger , but not your brain obviously, because you dont know what PHP is and how it is used everyday by million of businesses. In fact you must be a noob, only noobs talk like that.
Let's say - for the sake of argument - that I walk outside, buy a "C for Dummies" book and read that thing cover to cover. In a month I might be a reasonable C developer and after a few more months I might have a good enough understanding of how PHP works internally, fire my code into a feature branch post that RFC up on the board, then... what? If people are dismissing things like Property Accessor syntax after it's coded up by an experienced C and PHP dev, then why are they all going to vote yes on an RFC bashed together by somebody who is brand new to this?
That's not an excuse, thats logic. It's very possible that so few people get involved in core development because there is very little motivation to do so. "I can work really hard on something that I feel really passionate about, then have it totally ignored by a bunch of people who think PHP should just remain a cluster-fuck of inconsistent PHP functions." Yaaaay!
See the issue? It's very easy to say "Well why don't you do more?" but when people see those that try being met with negativity in such a big way it REALLY doesn't make me want to even try to help.
Are you saying it is a "Leaky Egos" type of problem here? That the maintainers' egos are preventing new people from joining and helping out?
Let's just for the sake of argument say you read a "C for Dummies" book and actually write a few programs. OK now you are a beginner C developer with a small bit of experience under your belt. Now you need to read an Intermediate C book and learn data structures and algorithms that "C for Dummies" didn't teach you. Then you need to read a few Advanced C books to learn how to do system level programming, write your own libraries, hook into interrupts, link to binary libraries written in a different language, and learn how to program C to access operating system internals. After all that, you have to join some smaller level open source C projects, and then move up to medium level, and then finally to large level such as PHP.
Of course at that level, you got people just like you used to be giving you advice on how to do your job, and how to rewrite the program, but you are very busy trying to submit code to the project that is accepted by the maintainers and included in the main branch of code, and you have a few other maintainers telling you how bad your code is, and a few others telling you that your code conflicts with what they wrote. Of course the noobz don't know any of this, but you are frustrated, stressed out, and nobody is paying you any money to do this and you owe a lot of debt on your bills. So you get told "Well why don't you do more?" by a noob, in response to some feature they want you to add to the project, but you know that adding it will cause a lot of problems with the other programmers and maintainers, and also cause them to give you a lot of negative feedback for it.
You consider your options, you could just fork the PHP code into a different open source project, but then who would join you in on it? You could write an open letter to the PHP community about adding this feature and supporting the programmers and maintainers by donating money so they are able to spend extra weeks working on it and quit their jobs and start doing the project full-time. You could just hope that everyone sees it your way and works on adding this feature eventually. You could just give up in frustration and quit, citing family issues. You could talk negatively to the noob and hope he/she quits suggesting these features be added and tell him/her just how hard and complex that would be. You could do something else as well.