4 ms·
Why does everyone make these with PHP? Serious question. Maybe it "just works" but all of these projects feel ancient to me because of their stack despite bein
by tbrock 11y ago
Why does everyone make these with PHP? Serious question.
Maybe it "just works" but all of these projects feel ancient to me because of their stack despite being brand new. Sure as a user it doesn't matter but as the maintainer/administrator I just don't want to deal with it. Modphp? Yuck.
We don't always need to use the new new thing all the time but I can't shake the feeling that the same person who runs this is also rocking an unpached PHPMyAdmin and PHPMySQL.
- lorenzhs 11y agoThe same goes for forum software, but what bothers me more than PHP is that these things usually only work with MySQL. Is this due to shared hosting providers usually only supporting MySQL and not PostgreSQL, or what is the reason? I honestly don't understand.
- forgottenpass 11y agoThe Linux/Apache/MySQL/PHP stack was the hotness about a decade ago, so that's the kind of hosting that was most available. Shared hosting was much more popular (physical hosting was more expensive, VMs were expensive and new, and tooling was worse). In 2025 someone might ask why $oldStack developers don't always do $newHotness. It's often the timing of popularity that tools grow together. This is just apocrypha, but MySQL was popular during the rise of PHP because MySQL was more performant on small databases on developer workstations.
- de_dave 11y agoProjects like this were often started many years ago, back when PHP was the language of choice.
- tbrock 11y agoOk, so then the right question is why aren't people starting these projects today?
- prodmerc 11y agoIs Kite's JavaScript + Python better? Asking as a noob who started learning JS and Python :-)
- pmalynin 11y agoIf you're doing JS you might as well drop python and do NodeJS. Or Meteor which is even better
- prodmerc 11y agoOk, thanks for the advice! It makes sense to go all JavaScript, especially since Node.js seems to offer some advantages over Python.
- Sir_Cmpwn 11y agoI'd be careful going this route.
- prodmerc 11y agoWhat do you mean? I commented in the first place because I was surprised that Kite uses JS+Python, a unique combination for an email client from what I've seen (which is not a lot). I'm not interested, nor do I have the capabilities to make an email client (I can reskin RoundCube or use Gmail) or any app, for now. But the reason I want to learn JavaScript, as well as Python, is because I want to get a feel of how both work, and not get binned in the "uses JavaScript for everything" category, which seems to be a bad thing :-). It was hard to decide on a language to learn by myself, C and Java are recommended, but look hard to begin with. I don't want to get discouraged early on. JavaScript is always needed (monetary opportunities) and rather easy, Python also seems easy to learn and very flexible. Ruby was my other choice, but I feel like I'm going to get overwhelmed studying them all at once.
- Sir_Cmpwn 11y agoI was suggesting you avoid ditching Python and going to the "uses JavaScript for everything" category", which is indeed a bad thing.
- nickpsecurity 11y agoI agree. It's bad for performance, security, and maintenance. Any time I see PHP I'm thinking: is what they did worth the re-write effort? Despite that, people keep making good apps in it. Starting to wonder if it's worthwhile to do an automated porting tool along lines of Semantic Designs' DMS toolkit. Just to keep the apps, current and future.
- oberstein 11y ago> It's bad for performance, security, and maintenance. Compared to what, exactly? Ruby? I'll give you Node for double performance and roughly equivalent (and annoying) maintenance, but PHP's security story, with or without the various popular frameworks, is at least as good. Any stack built on the JVM has its own set of tradeoffs -- I would rather maintain PHP than any standard JavaEE solution, but I would rather maintain anything built on Clojure's Ring than PHP. These days Python with Flask is my go-to solution for quick things where I might have used PHP in the past, but even then there are tradeoffs, near the top being you can't just deploy to any shared hosting service that's been around for over a decade.
- nickpsecurity 11y agoPython was my main point of comparison actually. Better across board aside from performance which I'd have to test more. While PHP was easily smashed, Coverity consistently reported a low defect rate for Python. Other alternatives included about any safe, systems or apps language of the time. Ada, Pascal, industrial BASIC, Smalltalk, Common LISP, Ocaml, Eiffel, and so on. Even subsets of C++ and Java using simpler frameworks were better for some although I didn't try that haha. REBOL might have had something then, too. Didn't get around go trying it, though.
- strasser 11y agoWhat's the successor to PHP?
- gopowerranger 11y agoAnything that's not PHP.
- SwellJoe 11y ago"Modphp? Yuck." It's very rare to find someone deploying with mod_php today. The security implications are too dire, and the performance/memory usage is problematic. There are a number of ways to run PHP under a reasonably modern app server model, and with the security of suexec. FPM being the most modern, but there are lots of mod_fcgid deployments out there, as well. I'm not a fan of coding in PHP, but it's still a reasonable choice for developing applications that you want to be able to run everywhere. In fact, if your goal is to make something people will use very widely, PHP may still be the best choice for web apps. There are still lots of shared hosting accounts out there (I know, I can't believe it either, in a world with so many low cost virtualized options), and many can only reasonably run PHP apps.
- xorcist 11y agoWhile I share your skepticism for PHP the language, PHP is a very mature platform with well understood deployment modes. As an example, I run one of the applications mentioned here for several customers in chrooted read-only no-exec environments without fuss. The platform gives me good tools for instrumentation and logging in order to work proactively withever operations issues that arise. Even if your (or mine) favourite language had a community large enough to develop great webmail tools, very few has a deployment story to match.
- thaumaturgy 11y agoThe target market for Roundcube at least (which I have made some very small contributions to) is small ISPs, and outside of HN and a few other developer enclaves, nobody in the ISP market cares about Python or Ruby or whatever else is sexy today. Wordpress runs on PHP. Drupal runs on PHP. Joomla runs on PHP. Ergo, ISPs know how to build servers that run PHP. Ergo, if you're writing software that targets the ISP market, you write it in PHP.