this post was submitted on 11 Jun 2023
157 points (100.0% liked)
Technology
37739 readers
529 users here now
A nice place to discuss rumors, happenings, innovations, and challenges in the technology sphere. We also welcome discussions on the intersections of technology and society. If it’s technological news or discussion of technology, it probably belongs here.
Remember the overriding ethos on Beehaw: Be(e) Nice. Each user you encounter here is a person, and should be treated with kindness (even if they’re wrong, or use a Linux distro you don’t like). Personal attacks will not be tolerated.
Subcommunities on Beehaw:
This community's icon was made by Aaron Schneider, under the CC-BY-NC-SA 4.0 license.
founded 2 years ago
MODERATORS
you are viewing a single comment's thread
view the rest of the comments
view the rest of the comments
Sorry guys, kbin is built on PHP.
So even if it did succeed, it won't be for long.
I know this is a joke, but not only is KBin built on PHP, but so are Facebook, Pornhub, and Wikipedia.
Well if Pornhub is built in it, then I am down with it (quite obvious/jk)
I'm sure there's some php still around at Facebook, but I doubt any new php projects have been started in 10+ years at any of those organizations.
You'd be surprised. Modern PHP with Laravel can actually be quite nice to work with.
I'm sure it is, and I hear good things about Laravel, but you're still working under some really bad decisions made in the past. That's always the problem with great frameworks on bad languages: the frameworks are great, but you can't escape the past.
I'd point you to r/lolphp, but well, you know. .
wtf?! I just frowned at my monitor
There’s more where that came from.
If history has taught me anything - I would say that means that kbin will persist forever.
I mean, almost half of all the websites on the internet is built on WordPress, so maybe you're onto something here...
I think people get way too caught up on technical optimisation issues with a language.
The reason a language, programming or otherwise, catches on is ultimately based on how many people use the language. So the lower the barrier to entry, they more people who will use it. PHP has a pretty low barrier to entry to creating a website (however simple/bad) and it has a lot of cultural momentum. I don't see PHP going away anytime soon.
Yeah ‘built in $language’ literally only matters from the point of view of attracting volunteer devs, end users couldn’t care less as long as the platform works. Lemmy and Kbin could be written in Malbolge for all they cared as long as it loads properly and doesn’t annoy them.
While I wouldn’t start a new PHP project myself as it’s yet another language to juggle and not one I’m particularly interested in it’s a perfectly legitimate choice even in 2023.
Yeah, I generally prefer kbin's UI over lemmy's but given the backend is in PHP I have concerns that it might not be able to scale effectively with its growth.
Not saying that PHP is a complete showstopper but there are valid concerns in terms of maintainability...
Can you explain this in simple terms for simple minds like mine? And I only ask for other people like me who may wonder but not ask
There is a "rumor"/"running joke" in the programming community that PHP application is hard to maintain.
Primarily, because it is originally designed to whip up a website in a quick and dirty way, hence the original name "personal homepage".
Where as rust (which is what Lemmy is built upon) is a much more modern language with more safe guard in place to help scaling the application.
Obviously, like many people pointed out there are many larger project is built by PHP. However, many larger companies have the resources build significant extension to PHP to make it more usable, like Facebook's hhvm and hack language are both tools that revolve around PHP. This is a luxury not enjoyed by smaller projects like kbin, Lemmy, even mastodon.
My personal opinion is that PHP is not a great language, but language is just a tool; programmers are also a huge contributing factor in creating maintainable program. For example, python is probably one of the less principled language out there (for example, it's variable scoping is very confusing); yet if the programmer programs in a manner to avoid these disadvantages, they can still build fast and maintainable project with it.
Cool, thanks! I only have experience with JavaScript and Python, and I personally prefer JS because Python has been confusing to me. But, I have heard Python is more efficient and easier in the long-term.
After 'mastering' JS to a sufficient ability I will put my efforts towards Python. I am stumped as to why I feel JS is easier than Python when I have also heard the opposite; that python is easier than JS
Ahm, no ;)
Both JS and Python are neither efficient nor easier in the long-term. They are both languages that were primarily built to make quick-and-dirty small and simple programs/scripts.
Both are really slow and inefficient (though Python is much slower than JS nowadays). Both are dynamic languages which opens then up for all sorts of dirty hacks and are pretty negative for maintainability.
Because of that, both languages have unofficial typing support (Typescript and Mypy) to make programs in these languages somewhat maintainable.
If you are looking for performance, the first tier is natively compiling languages like C/C++/Rust/Go. The second tier are languages that compile to bytecode and run on heavily optimized runtime environments like anything running on the JVM or C# or therelike. And the worst tier are super dynamic languages like JS or Python.
In terms of what's easiest, it really depends on what you're doing to be honest. Like, if you're a data scientist, you want to learn Python. If you're a web developer, you want to learn JavaScript - I believe that Wasm is the future of the web, but we're going to have traditional HTML/JavaScript for decades to come.
A lot of people seem to be talking about whether PHP has enough developer support, but that isn't the main issue.
The issue is that code written in PHP is probably at least 10 times less efficient in terms of CPU and memory than the equivalent code written in Rust.
This means that loads of hobbyist developers will be able to run lemmy instances for a fraction of the ongoing cost of kbin.
And the main issue Reddit and a migration has is server costs. So, it could be running into a face plant.
Lemmy.World instance has a new dedicated host with EPYC 7502P around €200-€300 a month with 15k users aboard. If PHP is even x2 as inefient that's absolutely insane. Those prices may be off but even so, shits going to cost and we all need to participate.
Modern PHP is supposed to be a decent language these days rather than a collection of footguns so I wouldn’t write it off out of hand. It wouldn’t be my first choice of language but it still runs huge swathes of the web, interesting choice for a greenfield project though. What it will mean is it’ll be harder for Kbin to attract developers on a voluntary basis I think, if I’m giving my time for free I’d personally much rather spend it writing Rust than PHP even if PHP is decent these days.
Let’s not hate on tools. Php has its uses and has been proven to be useful in commercial applications. So has Rust. They are different but the choice of programming language means nothing for the core project.
I, too, can use a banana to hammer in a nail
hahah, this made me laugh. I will be stealing this from you.
To be a bit more verbose, I don't think all programming languages are created equal, and its a disservice to pretend it is.
Duck Duck Go was written in Perl. GitHub (originally) in Ruby on Rails.
Languages are tools only because they're general purpose programming languages. The real path to success is in choosing a tool that you're good at using (no matter how blunt), rather than pretending all tools are equal.
Sure but dissing on languages you don't like will only make devs who like those languages defensive. Not every dev is good only at languages you're good at.
Fair, but for me, both Rust and Php mean I won't be customizing or contributing much to the project.
The repo's contributor archetype will change based on the language too. What language would you be comfortable in contributing with?
Quite the opposite. A poor technology choice is a lasting technology choice.
Urgh... php.
Rust or die...
Is php as bad as it wad previously?
No. It's not perfect by any means but it's leaps and bounds ahead of where it was.