Ask HN: Java and PHP rant
5 comments
It's a double edge sword.
I'm going to speak about my experiences with PHP (8 years worth).
Anybody can pick up PHP. I kid you not, not just programmers, so the labor pool for PHP is huge so the wages are lower. Not only is it lower compare to say Ruby but there are tons of bad self taught programmers.
I led a development team of 5 programmers and let me tell you, 3 of them were self taught-- they were very very bad.
Needless to say, I tried apply to other places and all salaries they've offered were slap in the face. When I asked them for 80k they would be like we can hire 2 programmers with that salary (80k for 8 freaking years man, I'm very confident with my skills). Hell you can just outsource it to another country with that logic.
My last interview I was interviewed by a CTO PHP dev, it was bad. During the interview he uses so many buzz words it was killing me inside. "We migrate our code base from PHP4 to PHP5.3 and hydrate our code." Wtf does hydrate even mean? Needless to say he can really sell himself to non technical people. He asked a shit tons of technical questions from his ipad (design patterns, pdo & prepared statement, etc..), I'm pretty sure he googled it, I asked him a few until it dawn to me he was self taught. I asked to confirm it. Yup. Like if he knows closure, traits, etc.. He would always right off the bat says of course never really explaining it. I asked him if he was part of the old php developers he said no. If he was the most senior, yup. What happen to the old developers. He stopped, and you can see the gears in his head churning trying to give a nice excuse. "They didn't work out and didn't meet project deadlines. So we clean them out and now we me in charge we went from fixing 2 bugs to 20 bugs and from finishing 1 projects to 5 projects." Noticed how he focus on output instead of code maintenance. Real hallmark of some dude that backstab or suck up to a higher ladder rung position.
These people and people like this is the reason why I'm moving away from PHP. I would like to be under someone that is at least knowledgeable and as passionate as me in programming.
Most of these PHP shops offer horrible salary and they don't offer any good incentive. If you're going to give horrible salary you should at least offer learning opportunity (ruby, redis, nodejs, android, ios, anything). But nope, you get stuck with PHP code from some self taught programmer, you don't grow and advance you're just stuck at PHP among the huge labor pool.
I'm going to speak about my experiences with PHP (8 years worth).
Anybody can pick up PHP. I kid you not, not just programmers, so the labor pool for PHP is huge so the wages are lower. Not only is it lower compare to say Ruby but there are tons of bad self taught programmers.
I led a development team of 5 programmers and let me tell you, 3 of them were self taught-- they were very very bad.
Needless to say, I tried apply to other places and all salaries they've offered were slap in the face. When I asked them for 80k they would be like we can hire 2 programmers with that salary (80k for 8 freaking years man, I'm very confident with my skills). Hell you can just outsource it to another country with that logic.
My last interview I was interviewed by a CTO PHP dev, it was bad. During the interview he uses so many buzz words it was killing me inside. "We migrate our code base from PHP4 to PHP5.3 and hydrate our code." Wtf does hydrate even mean? Needless to say he can really sell himself to non technical people. He asked a shit tons of technical questions from his ipad (design patterns, pdo & prepared statement, etc..), I'm pretty sure he googled it, I asked him a few until it dawn to me he was self taught. I asked to confirm it. Yup. Like if he knows closure, traits, etc.. He would always right off the bat says of course never really explaining it. I asked him if he was part of the old php developers he said no. If he was the most senior, yup. What happen to the old developers. He stopped, and you can see the gears in his head churning trying to give a nice excuse. "They didn't work out and didn't meet project deadlines. So we clean them out and now we me in charge we went from fixing 2 bugs to 20 bugs and from finishing 1 projects to 5 projects." Noticed how he focus on output instead of code maintenance. Real hallmark of some dude that backstab or suck up to a higher ladder rung position.
These people and people like this is the reason why I'm moving away from PHP. I would like to be under someone that is at least knowledgeable and as passionate as me in programming.
Most of these PHP shops offer horrible salary and they don't offer any good incentive. If you're going to give horrible salary you should at least offer learning opportunity (ruby, redis, nodejs, android, ios, anything). But nope, you get stuck with PHP code from some self taught programmer, you don't grow and advance you're just stuck at PHP among the huge labor pool.
Not everybody does. I'm relatively partial to Java, for example, although I despise PHP.
That said, there are fair criticisms of both Java and PHP, and hackers can sometimes run towards being obsessive over details and over analytical. So the extent to which Java is verbose because of the required boilerplate for, say, getters and setters, offends the aesthetic sense a lot of people have. Likewise, Java is seen as "less powerful" because it lacks some features (multiple inheritance, etc.)
My take on Java is this: I don't like the language per-se as much as I like, say, C++. But in pragmatic terms I can get a shit-ton more usable work done in Java, because it had binary compatibility for libraries from day 1, which meant that creating and distributing libraries in Java is dead simple, which led to an ecosystem where Java has libraries for damn near everything. And the JVM is nearly ubiquitous, running on almost every platform known to man. And since I learned Java back when it was still fairly new, it just happens that I already know it, it does most everything I need, and has libraries for everything under the sun and then some. Pragmatically speaking, it's a great choice, at least for the kinds of problems I tend to find myself working on.
Of course, the great thing is, no one is limited to just one language. I can fall back to C, C++ or Python if needed... and I actually do most of my coding in Groovy these days - but I consider Groovy to just be "a better Java". All of that said, I have an ambition to dive deeper into a number of other languages (Erlang, Haskell, Go, Scala, Clojure, R among others) but just rarely have time to go off and spend time with that stuff. That's the downside to having a dayjob and a startup I guess... time to do purely exploratory, "fun" stuff is a little limited.
why do hackers seem to hate the most popular languages?
I'd argue that most don't, and that you're hearing from a vocal minority. The people who find Java, PHP, COBOL, whatever perfectly usable, don't have a reason to voice it to the world. They just quietly sit back and do what they're doing. But the people with an axe to grind are the ones writing blog posts, posting long rants on forums, etc., etc.
That said, there are fair criticisms of both Java and PHP, and hackers can sometimes run towards being obsessive over details and over analytical. So the extent to which Java is verbose because of the required boilerplate for, say, getters and setters, offends the aesthetic sense a lot of people have. Likewise, Java is seen as "less powerful" because it lacks some features (multiple inheritance, etc.)
My take on Java is this: I don't like the language per-se as much as I like, say, C++. But in pragmatic terms I can get a shit-ton more usable work done in Java, because it had binary compatibility for libraries from day 1, which meant that creating and distributing libraries in Java is dead simple, which led to an ecosystem where Java has libraries for damn near everything. And the JVM is nearly ubiquitous, running on almost every platform known to man. And since I learned Java back when it was still fairly new, it just happens that I already know it, it does most everything I need, and has libraries for everything under the sun and then some. Pragmatically speaking, it's a great choice, at least for the kinds of problems I tend to find myself working on.
Of course, the great thing is, no one is limited to just one language. I can fall back to C, C++ or Python if needed... and I actually do most of my coding in Groovy these days - but I consider Groovy to just be "a better Java". All of that said, I have an ambition to dive deeper into a number of other languages (Erlang, Haskell, Go, Scala, Clojure, R among others) but just rarely have time to go off and spend time with that stuff. That's the downside to having a dayjob and a startup I guess... time to do purely exploratory, "fun" stuff is a little limited.
why do hackers seem to hate the most popular languages?
I'd argue that most don't, and that you're hearing from a vocal minority. The people who find Java, PHP, COBOL, whatever perfectly usable, don't have a reason to voice it to the world. They just quietly sit back and do what they're doing. But the people with an axe to grind are the ones writing blog posts, posting long rants on forums, etc., etc.
Just curious what kind of work are you in to consider Java as a great choice?. Anything Web related because Java seems like an overkill to do Web development with.
I find Java to be perfectly reasonable (if not great) for some classes of web based applications. I mean, I wouldn't use Java for a generic company website that was mostly static HTML with no interactivity. But for a web based application that requires talking to databases, pushing messages onto a message queue, consuming web services, etc., I like it. Note that I'm not saying it's perfect, but that's half the point of what I was saying above. A language doesn't need to be perfect, it just has to be "good enough" AND meet a few other pragmatic criteria: availability of libraries, documentation, compilation speed, whatever it might be.
That said, Java also strikes me as a good choice for things like text mining, machine learning, data mining, etc. It also fits well where there's an emphasis on integrations with other systems, but that is, again, partly down to the availability of libraries. And just based on it's popularity for such applications, I think it's safe to say that many people find Java a good fit for building things like database engines, message queueing servers, etc.
That said, Java also strikes me as a good choice for things like text mining, machine learning, data mining, etc. It also fits well where there's an emphasis on integrations with other systems, but that is, again, partly down to the availability of libraries. And just based on it's popularity for such applications, I think it's safe to say that many people find Java a good fit for building things like database engines, message queueing servers, etc.
Is good to for once hear some positive things about Java on here. I'm getting into Web development mainly and I've been learning Java and PHP of and on for the past year. Is it possible to learn both at the same time? or is better to stick to one and learn it for Web development. I like both Java and PHP. I think Java looks better though and I use both eclipse and IntelliJ.
Is it possible to learn both at the same time?
Hard to say. My guess is that it depends on the individual. I'd probably try to master one thing at least reasonably well, then move onto something else. But that's just me.
Hard to say. My guess is that it depends on the individual. I'd probably try to master one thing at least reasonably well, then move onto something else. But that's just me.
It's just like political debates, really. Java is a Franz Kafka-esque dystopian bureaucracy, while PHP is a Monty Python-esque anarcho-syndicalist commune.
Because most of big and horrendeous systems are written in them. And maintaining such systems is a PITA.
And Ruby/Python are much more productive.
And Ruby/Python are much more productive.
And Ruby/Python are much more productive
Languages themselves are not productive. You could make the argument that they allow developers to be more productive. Although a talented PHP developer with years of experience could be much more productive than a novice Ruby/Python developer.
Languages themselves are not productive. You could make the argument that they allow developers to be more productive. Although a talented PHP developer with years of experience could be much more productive than a novice Ruby/Python developer.
Haters gon hate. It's what we do.
Java personally seems to be a simple and pretty language to me I can see why the hate on PHP the thing is ugly but it still seems to get the job done fast and simple.
why do hackers seem to hate the most popular languages?