7 ms·
Q&A: PHP Creator Rasmus Lerdorf (2002)
- tomcam 9y agoRasmus should win a Turing award for bringing an easy to use web-centric server language to regular people. He does not get nearly the attention he deserves.
- deleted 9y ago[deleted]
- deleted 9y ago[deleted]
- jimktrains2 9y agoWhy? Php wasn't some new, amazing idea. There was perl at the time as well. Php took off mostly because of mod_php, but there was already cgi. There was also asp from Microsoft that had almost all the same properties as php e.g. inline code and markup, upload and refresh), but Windows only. Php was just a little simpler to configure on a Linux webserver than cgi, but at the expenses of using php -- we've been paying for the decision for what, 20years now. As someone who works in php daiy, I despise the language. It's getting much better than php4, but it still is lacking.
- goshx 9y agoWhy do you still work with it?
- jimktrains2 9y agoThere are more things to a job than just the language used. Company culture, work environment, work-life balance, and coworkers to name a couple.
- goshx 9y agofair enough :)
- DonHopkins 9y agoAnything but a Turing award. Turing was a computer scientist who cared. "We have things like protected properties. We have abstract methods. We have all this stuff that your computer science teacher told you you should be using. I don't care about this crap at all." -Rasmus Lerdorf
- firasd 9y agoTuring didn't care about Java-style OOP though :)
- DonHopkins 9y agoHis methods were quite abstract, though. ;) https://en.wikipedia.org/wiki/Turing_machine https://en.wikipedia.org/wiki/Turing_machine https://en.wikipedia.org/wiki/Church%E2%80%93Turing_thesis https://en.wikipedia.org/wiki/Church%E2%80%93Turing_thesis
- bpicolo 9y ago> We have things like protected properties. We have abstract methods And php has both protected properties and abstract methods now
- dvfjsdhgfv 9y agoI also don't think PHP deserves a Turing award, but the remark about abstract methods and protected properties is completely irrelevant - you can have an amazing language without these and crappy ones with them.
- DonHopkins 9y agoThe point of the quote is not about abstract methods and properties, it's about not giving a shit, and being proud of it. If you really didn't already know about Rasmus Lerdorf's anti-intellectual attitude (who admits to being "really, really bad" and a "terrible coder", but still thinks he's "better than you"), then here are some more quotes: There are people who actually like programming. I don't understand why they like programming. I'm not a real programmer. I throw together things until it works then I move on. The real programmers will say "Yeah it works but you're leaking memory everywhere. Perhaps we should fix that." I’ll just restart Apache every 10 requests. I do care about memory leaks but I still don't find programming enjoyable. I don't know how to stop it, there was never any intent to write a programming language [...] I have absolutely no idea how to write a programming language, I just kept adding the next logical step on the way. I was really, really bad at writing parsers. I still am really bad at writing parsers. I really don't like programming. I built this tool to program less so that I could just reuse code. I actually hate programming, but I love solving problems. For all the folks getting excited about my quotes. Here is another - Yes, I am a terrible coder, but I am probably still better than you :) https://en.wikiquote.org/wiki/Rasmus_Lerdorf https://en.wikiquote.org/wiki/Rasmus_Lerdorf
- vesak 9y agoOr perhaps he should be in prison for being partially responsible for some of the worst security breaches in the industry.
- DonHopkins 9y ago"PHP can do anything, what about some ssh?" -Mark Karpelès ಠ_ಠ https://web.archive.org/web/20100701145902/http://blog.magicaltux.net/2010/06/27/php-can-do-anything-what-about-some-ssh/ https://web.archive.org/web/20100701145902/http://blog.magic... https://en.wikipedia.org/wiki/Mark_Karpel%C3%A8s https://en.wikipedia.org/wiki/Mark_Karpel%C3%A8s
- vesak 9y agoIndeed. I realize the guy I answered to was probably just trolling, but it was very effective. To suggest that Rasmus should get academic praise for PHP is highly insulting.
- grzm 9y agoThere's significant daylight between - someone should receive an award - someone has had a large impact - someone should go to prison Countering the first with the third isn't very constructive, particularly as you note "I realize the guy I answered to was probably just trolling." It just further degrades the conversation.
- DonHopkins 9y agoMark Karpelès's crappy PHP code full of gaping security holes lost many people a hell of a lot of money ($450 million), and earned him a year in prison. http://themerkle.com/mark-karpeles-twitter/ http://themerkle.com/mark-karpeles-twitter/
- jsjohnst 9y agoThat's a leap.. The year in prison was related to embezzling charges, not the collapse of Mt. Gox due to his "crappy PHP code full of gaping security holes".
- tannhaeuser 9y agoI don't agree. PHP was a quick shot to grab market share from Perl and other web development languages used at the time. While Rasmus may have developed it in good faith to bring easy web site programming to the masses, PHP is the single piece of software standing out for countless DDoS attacks making life difficult for web site owners of PHP and non-PHP web sites alike, and driving folks to centralized services such as CloudFlare. PHP's original use case is dynamic HTML generation from HTML/SGML processing instructions embedded in otherwise static HTML. That's useful, but PHP's lack of HTML-aware template expansion and escaping mechanisms was and is bordering on the criminal IMHO.
- DonHopkins 9y agoWell there's certainly is a well documented case for negligence: "I was really, really bad at writing parsers. I still am really bad at writing parsers." -Rasmus Lerdorf
- open-source-ux 9y agoOne of the key reasons why PHP remains so widespread in use is the ease of deployment. No other language can match it. PHP is the only language with almost universal support among web hosts. It can run on basic shared hosting plans and on nearly every server. It can be deployed by simply uploading your code to a directory on your web host. Sure, it's a widely criticised language (even within the PHP community), but it still accounts for the vast majority of server side code (80% according to some sources). What's baffling is why other languages and so many developers are blind to this problem of easy server install. They think it's a non-issue. Prolific blogger and programmer, Jeff Attwood ranted about how he disliked PHP in one of his blog posts, but recognised that: "If you want to produce free-as-in-whatever code that runs on virtually every server in the world with zero friction or configuration hassles, PHP is damn near your only option." To broaden choice, Attwood argues we should: "build compelling alternatives and make sure these alternatives are equally pervasive, as easy to set up and use as possible." That was written in 2012. (https://blog.codinghorror.com/the-php-singularity/ https://blog.codinghorror.com/the-php-singularity/). It's 2017 and what's changed? Nothing. Having a ridiculously easy web app installation process for servers would unlock countless opportunities for developers to reach more users or customers. And it has, for many PHP open source projects and products. Want your customers to self-install your software? Good luck getting them to do that easily with any language other than PHP.
- aaron-lebo 9y agoIt's a good barrier to entry. If in 2017 you can't figure out how to setup an ec2 instance and run a simple webserver in any language, then you don't need to be setting up software. It's not hard.
- jimktrains2 9y agoNot even that, but with services like heroku and app engine, upload-and-refresh style development isn't php or old asp or cgi on a shared host anymore.
- wolco 9y agoBut people do need to setup software and run their business. If your favourite language can't abstract away those setup details your language will be skipped by the masses who want to get things done and won't want to invest the time in the setup details. It was easy to get setup and start programming in the 80s. That allowed you to spend time/energy on the complex logic you needed to write the program. Most programming is so much easier the level of math required is so much smaller and most websites are simple crud. Why are we making the setup process more difficult? Do we really need a gate keeper?
- deleted 9y ago[deleted]
- jpswade 9y agoThere's an analogy that describes PHP as a weird sort of toolbox. Everything's there, but they are all a little funky. The hammer is a double sided claw hammer, the pliers don't have serrated edges. They will do a job, but perhaps not the job that you expected. Eventually it leads to everyone using this weird little toolbox ends up with a weird sort of house that might collapse at any moment. Things have moved on quite a bit since then. Certainly in PHP 7, you're able to give it the same treatment as a "proper" programming language and people do. My view is though, it's a little too late. I don't think new people are coming into PHP because the barrier to entry has become higher than other languages. It has become almost impossible to write a PHP application to do even the simplest task without getting bogged down in all sorts of over engineering and so called "design patterns". We all know PHP will be around for a while longer. Yet in 2017, I wouldn't recommend learning about PHP. Go learn something else.
- revmoo 9y agoSpoken like somebody who is completely ignorant of the current state of PHP.
- muglug 9y ago> It has become almost impossible to write a PHP application to do even the simplest task without getting bogged down in all sorts of over engineering and so called "design patterns". That's rubbish. There's nothing that stops you creating a single script to return a value based on stdin or get parameters. Design pattern nerds exist in every language. PHP has them no better or worse.
- jpswade 9y agoSure, but then in your example, you're using PHP just to transpose data. Why?
- innocenat 9y agoNot parent but I have done this before. There was an old PHP code that utilise TCPDF to generate a very complex report. The main application is being rewritten (in JS), but the report is very complex and utilise many features of TCPDF that I cannot find in PDFKit or other nodejs pdf libraries. In the end, the PHP code that generate reports was wrapped to take JSON input from STDIN and output the resulting pdf to STDOUT.
- muglug 9y agoDon’t judge PHP by a 15-year-old interview with its creator. The internals have been completely rewritten by an incredibly talented team that continues to make improvements. Also, many of the demons from PHP4 (in use in 2002) have been excised, e.g. https://wiki.php.net/rfc/remove_php4_constructors https://wiki.php.net/rfc/remove_php4_constructors
- throw2016 9y agoPHP is a delight to work with, but that does not suit the signalling and over engineering crowd. We must recognize there is a social phenomenon evolving where some people seem to like complexity. That's why these developers are blind to ruby setup and dependency hell or nodejs insanity but magnify any self-perceived flaw in PHP without seeing the dissonance. This is a difficult act to pull off. This is so over the top and one sided it ceases to be useful. Pandering to these criticisms will not work as they are not sincere and these developers are too caught up in how they are perceived to ever use PHP. Those who care for PHP should be concerned about attempts to pander to perceptions as this will destroy the accessibility and simplicity that makes PHP useful for everyone.
- jszymborski 9y ago>I got tired of rewriting the same code over and over again, and also wanted to separate my business logic from my HTML layout. > So I wrote a very simple tag parser that would parse through an HTML file looking for special markup tags and replace those special tags with the result of my business logic code written in C. (emphasis my own) I really like PHP, but I find it very interesting that Lerdorf doesn't consider PHP code itself as business logic, but more of a templating language for the web. A lot of PHP's fundamental strengths and weaknesses make sense in that light.
- dvfjsdhgfv 9y agoIt's interesting to see how much the concept of 'backend' and 'frontend' changed over these years: > I personally use a combination of PHP and Perl for many of my projects: Perl mostly for back-end tasks, while I have PHP doing all the front-end work.
- DonHopkins 9y agoJust like "client" and "server" swapped during the transition from X-Windows to WWW.