markdown guide

Yes but hate is a personal emotion. It is my hate, based on a subjective or objective experience. It doesn't have to be based on reasoning or logic.

So please let me hate whatever I want, just that, I promise I will be careful when I respond to questions:

  • my professional opinion is ...
  • but personally I hate it

I can leave the 2nd response out if I'm in an official meeting :))


Unless you've used the language and have experience with it, why would you hate it?

People just blindly follow what others say because it's hip or cool. If you used the language and experienced a similar issue then it would be fine to hate on it or suggest your professional opinion.


Unless you've used the language and have experience with it, why would you hate it?

I don't know, I'm just being the devils advocate here, but that's the beauty of hate, it doesn't have to be objective.

You can have love at first sight, or hate at first LOC.

Stupid examples "I hate Java because is too verbose, and you have to spend years of learning libs and frameworks" Or "I hate all languages where I have to type the semicolons."

Most of the web development is done on hip or cool, so you're fighting a hurricane here :))

People are replacing simple queries with ML scientists, DOM elements with 100kb frameworks and try to write fast important/responsive web services in interpreted languages.


It is okay to hate a language. The assumption I keep seeing is you wouldn't hate a language if you knew its nuances. I disagree. I know PHP pretty damn well and I have to use it. But I hate it. I love Python, and I don't get to use it as much as I want.

Having a personal opinion about a language is okay, whether you use it or not. I don't have to try a crap sandwich to know I won't like it. I can look at a language/framework/tool and go "Yep, my experience tells me that is not for me. I don't like how it handles X Y or Z."

Hating a language and telling someone they're dumb for using it is different. I personally hate PHP, but I don't begrudge anyone using it. That doesn't mean I can't say I hate it for fear of hurting your feelings. The fact that you even have feelings to be hurt over me saying I hate a language you love in itself shows that there is more to this than just objectiveness.

You love something, I hate it. That's totally okay. We can even have a fun discussion about the whys on both sides.


The funny thing is that people who hate on PHP don't actually use PHP, the ones who do are busy getting things done and being productive


people who hate on PHP don't actually use PHP

Well, maybe they don't use it because they hate it :)

Joke aside, you are kinda right, most PHP haters don't actually use or know the language enough to justify this hate (I would know, I'm one of those awful persons :D), but hey, it's not important, IMHO, it's best to just let people have their opinion, whether or not it's justified. Also "hate" is often not "hate" and more "I don't feel like using this language, just leave me alone"... which is kinda ok too, I guess.


I used PHP, created a lot of apps in it in v4-5. I wouldn't say I hate it, but I would never use it again on a new project. But then again, I could say that about a lot of languages.

Javascript, I hate. Its weird edges have wasted entirely too much of my limited lifespan.


Jokes aside, besides all that personal emotional stuff, there are metrics existing. Even for the language design. The easiest one is sorta pair division: when two of us are arguing about different languages, they should stop arguing and play a game: you invent a problem, I solve it in the language of my choice, and vice versa. Then we compare results.

That simple, but it works.


I don't program PHP anymore myself since many years ago, but I know some PHP shops that make good profit by building Webapps in PHP.

Besides, in my experience, being productive depends quite more on the developer and the team than in the language.

Definitely there's a number of companies running php and are happy about it, question is - how happy developers are. From my experience php programming is way much less about the language and mostly about frameworks.
In fact, language + stdlib is so poor that every other framework defines its own Collection (hi Doctrine). This makes php developer more Symfony or Laravel developer, and the tend to use Bundles distributed along with these frameworks. Just check out php's package manager repository - for every library out there there's "bundle" version which is easy to plug into Symfony. Developers started to forget, how to use libraries.
Funny enough, now Symfony pushes against Bundle distribution system, but it took them this long to decide on that. I dont think this is healthy for both developers and framework, to be that "big" in the whole picture. I like idea of clean architecture and framework being implementation detail, but with php, when you are throwing away framework in an attempt to have clean architecture, you're left with nothing. Believe me, I've been there and abandoned these pointless efforts - amount of boilerplate is overwhelming.
So my point is - php developer's place is being a framework-dependent and producing framework-centric applications. Not something I find particularly exciting.


Learning the nuances of PHP only makes you hate it more :P


When I was younger I used to hate on different languages too. Many years and 10 or so languages later I'm happy to say that they all suck in their own ways. Also Turing complete languages are essentially just morphisms of finite state automata, so why argue about the packaging? ;-)


Turing complete languages are essentially just morphisms of finite state automata


When I see two developers arguing, say, python vs ruby, I always imagine a scuffle of native speakers, like “German language is better than Russian language because of Goethe”—“Nah! have you ever heard about Tolstoy?”


I see some great potential blog post titles in this: "Pushkin doesn't scale!" or "Schiller considered harmful".


— DRY violations in Don Quixote
— SRP by example: characters in War and Peace
— Singleton pattern in Byron’s poetry
Les Misérables vs Die Jungfrau von Orleans: comparison of GC approaches
— Delegation in Tom Sawyer and Huck Finn
— Active Messaging between Rilke and Tsvetaeva
— ...


If every language is good at something we probably have some languages good at being made fun of (respectfully) :)


I did java for about 8 years, never really liked it.

I was sceptical about moving to javascript after 8 years of java, but I loved JS.

I came back to PHP after about 10 years of not using it, and I loved it.

Bottom line: it's just a language. Languages evolve, and it really depends on what you're trying to achieve which language is suitable to your needs. They're just tools. As with real-life languages, it doesn't hurt to actually learn something about a language before you start bashing it.


Unproductive disparagement of other programming languages is explicitly disallowed at, for essentially this reason.

I'll add that it is the case that some languages are designed with haste or other constraints that make them less good at even their stated purpose than other alternatives. The thing is, though, that this is virtually never an interesting insight that adds to conversations in the places it is brought up, both for logical and contextual reasons and because tribal boundary drawing in online conversations tends not to lead to positive exchanges. "I don't like using foo-lang, and I think this understand of my own process for creating mental models explains why." is a correct characterization, but "foo-lang sucks" feels way better to say.


I think we all know what this really means is "publicly hating in a way intended to demean those that use it".

Hands up who likes being told that the thing you like is stupid and you are stupid for liking it? Anyone?

It's absolute fine to hate a language, a food, a genre of music etc. Having a personal opinion on stuff is one of the joys of life.

Forcibly inflicting or publicly broadcasting those opinions, however, is not cool.


I agree. It's fine to have your personal belief and the experiences affirm that belief.

But when you use that belief to push onto others a sense of inferiority, that's when problems occur.


I think it's kind of funny (and sad).
I mean, it's funny to chat with your colleagues about how much IndexedDB API sucks or why PHP is so shitty (I don't think it is).
It also true that smart developers know how these kind of statements are extremely subjectives and you mustn't bring them at work.

A wise person once said:
“Great people talk about ideas, average people talk about things, and small people talk about wine.”


The original quote

Great minds discuss ideas; average minds discuss events; small minds discuss people.

  • Eleanor Roosevelt

Well, I can understand the hate of PHP prior to version 7. But now we have strict type declaration, fast interpretation, PSR and a lot of cool things that make programming PHP experience far more clean and powerful.

I just guess that hate is also linked to the nowadays hype.

IMO you don't have to hate a programming language, because they are like tools, all great at something specific, also some of them evolve in a cool way. But you can definitely hate the way they are used.


And we have frameworks. When I started Laravel, it was like a new start. 4 in years and it's still awesome to crank out new projects with tests, dependency injection, middlewares, nice orm. Feels like pure magic! PHP itself is just a small, small part of it, it's the architecture you build on that makes it awesome.


I think it's partially up to not only languages but also the timings we meet them.

I had trouble to use JavaScript ten years ago and enjoy using it these days.
I don't know which is the reason that it has changed or that I have.

When it comes to PHP, I didn't like its grammar while just reading its code.
And I felt more familiar with it gradually as I understood how to write it.


Every language is good at something.

I'm gonna flip this statement and say that, in fact, every language is shitty at something. In the end of the day, we all love what we want to love and we all hate what we want to hate, whether or not we are right.

I hate PHP, even if I don't know it very well or use it very often.
I kinda hate JS even if I use it often and know it better everyday.
And I love Ruby even though I know this language enough to understand why some people hate it.

So I guess opinions will be opinions, just do your thing and don't mind what people say, no one holds the one and only truth and every language is both good and shitty anyway.


Exactly the same reason we have "console wars" (and why people find it so hard to get out of a con deal) - no-one wants to admit they are wrong, therefore they will defend their choice.

With coding (and consoles) it's not only about not being wrong, but being right-er than others, to justify your investment in time in your toolset (or few hundred bucks in your choice of console).

Therefore any competing technology is frowned upon.

It obviously does not help that language demand sometimes is superficially and in extreme measures inflated not by what it does, but how many non-technical people demand it, either for direct project work or recruitment agencies hiring to match their client requests.

Not a surprise then that programmers feel the need to publicly make every other language or framework look absolutely useless and incompetent.


I think it's perfectly normal to hate languages for the effect they have on the world, in terms of software that is around us, what languages new projects choose, what skills and concepts developers learn.

For example, why not hate Go for taking developers and projects that would otherwise have used Rust? If there are pain points that make people choose Go for server and cli projects where performance isn't absolutely critical, these should be addressed to make Rust a better language/ecosystem, not resorting to a language with garbage collection, no generics, and weird package management.

Also Java. And I'm not talking about today when it's popular to hate, I mean back when it was the hypest.


I hate PHP and JavaScript and I use both a lot.

I also love both languages in a way, too.

You are free to love and hate whatever language, just don't intentionally make others feel bad about their language.

I like trash-talking PHP, but it's only fun for me if it's among people who also know PHP and can relate. When I see somebody who doesn't know PHP trash-talking it, it does bother me. It's like "ha ha, really funny /s"

It's like, I can beat up my little brother or make fun of him but "you better not lay a finger on him, and don't you dare talk about my family like that."


You sure can. Because you understand all the nuances that comes with it.


“There are only two kinds of languages: the ones people complain about and the ones nobody uses.”

― Bjarne Stroustrup, The C++ Programming Language


Every language is good at something
except php

oh God I feel so entitled to say that again and again because I’ve wasted 5+ years with it ))))


I don't think hate is the issue here. It's making people feel like idiots for using a particular language, this is what people need to avoid.


Every language is good at something

Except JavaScript.



Haters gonna hate. Potaters gonna potate. I got no time for it.


The best way to overcome herd mentality influencing you to hate a tool is to unplug your wifi router and get out of your head.


I hate anything that transpiles to javascript, including javascript itself :)


I like languages but I don’t like frameworks around it. As Michael Brooks already said in his comment: “People just blindly follow what others say because it's hip or cool”.

Classic DEV Post from Jun 24

What If I Want My Website to Last for 100 Years?

Sadick profile image
An experienced software engineer who enjoys working on interesting and challenging projects.Open to new opportunities.