> But also whatever language partisanship I had is gone, and won’t come back in the guise of a new favorite language.
This sentence is worth pointing out as a good attitude. I think the healthiest place to be is using tools you like, but able to appreciate the good bits of other systems.
For instance, as long as I'm not actually working with it, I can appreciate the idea that PHP made it very easy for a lot of people to do something with the web, something that otherwise they might not have been able to do, because it is very easy to get started with. That is worth something, and worth thinking about for those who are building tomorrow's languages.
I like how you squeezed in that subtle dig at PHP. It's like you like the idea of being language agnostic just as long as it doesn't involve languages you don't like.
I don't read that as being a "subtle dig at PHP". There are many very legitimate reasons for a developer, especially one well-versed in many languages, to not want to use PHP.
And his position is very reasonable. He doesn't seem to care if you use PHP, if it works for you. But he doesn't like using PHP himself, for whatever reason(s), and wishes to not use it. His abstinence from PHP doesn't prevent or affect your (or anyone else's) use of it.
> There are many very legitimate reasons for a developer, especially one well-versed in many languages, to not want to use PHP.
Like what? I feel there are many reasons why it is a dangerous language for a novice, but if you can be productive with C/Java/Python/Go/YouNameIt, you can probably write nice, maintainable and reliable PHP.
If you're talking about technical difficulties or elegance or whatever, sure. I'll just go with the Facebook argument. I've bootstrapped many projects for companies who aren't made of über hackers, and going PHP guarantees them they can very easily find people who can pick-up the code later on. Also, any * hosting will run your code.
I think nowadays, ideally, I'd just use Go for everything. But in reality, productivity > idealism.
That's not what he's saying. He's basically saying that it's 0K to use PHP if you can't use anything else because you are not smart enough. And you won't even achieve great things, you will barely be able to build something.
PHPers like me know very well this kind of trolling (after years of suffering it), but we are also way above it already. Sometimes we want to reply, but then we remember that this trolling is born from bitterness and lack of success, so we just let it be.
I was trying to point out a good side of a language that I do not particularly care for.
Think about it this way: there are plenty of smart people with good ideas who, however, are not programmers. Doctors, accountants, architects, physicists... whatever. A system that has a low barrier to entry so that these people can create something is a positive thing to have.
And if programming PHP floats your boat, that's fine too.
With respect, I'm a proud PHP developer who does crazy things like use a Lisp that compiles to PHP to build services; I am working on some awesome stuff to take advantage of Composer and the new modular PHP Library systems, and all sorts of other stuff. I love working in PHP, and I'm not ashamed to admit that, despite having written my own languages, and being partial to C. My current favourite to work with is nimrod...
Anyway, the point is: you completely read the OP wrong, in my opinion, and I'm the person that would be most offended if it was a dig...
Or maybe it's you the one who can't read it properly? Else explain to me what he meant by this: "PHP made it very easy for a lot of people to do something with the web, something that otherwise they might not have been able to do"
I do python and scala at work yet I love php, it's made a ton of difference to the web (think wordpress for example) - it's perfectly possible to write killer php and do everything from machine learning to webapps. PHP has the best date extractor of any language that i've seen.
I don't think OP is talking about absolute neutrality. It is more about maintaining a perspective. (Which usually includes understanding/acknowledging the good and bad parts)
Yeah, at this point I actually find it amusing just how much flack PHP gets from people on HN who only think about it in terms of Wordpress and spotty 15 year olds trying out web dev for the first time.
I think at this point PHP programmers don't care about the flack. We're pretty used to it.
As a php programmer and a member of a php user group I can say that group seeems to have half of its talks on non php topics javascript, html5, css etc.
I like the community that doesn't fret about tools and only about how to build something interesting.
I think PHP was used an example of a language that is a total train wreck from a technical standpoint (and I don't think many people would disagree with that.) Despite being a train wreck, PHP is still useful and has been a net positive for the tech industry. Plus all the work that Facebook has done in fixing PHP has turned it into something better than it was.
I miss my Apple II days. I miss Applesoft BASIC, GPLE and Take-1 Programmers Toolkit. I am glad I'll never need to program with those again unless I want to.
Ahhhh AppleSoft + whatever graphical extensions, GPLE, Toolkit Assembler (there was another assembler but I don't remember its name), Pascal UCSD in 80 columns,cp/m,... Memories...
Doesn't it really just depend on what you focusing on and choosing the best language for that. I prefer python, but have written a lot of objective c, i created a search engine and ended up using lucene, nutch, opennlp and a few other Java programs and i really liked working with java and it seems like the Apache projects are really cool for big data projects. I also enjoyed javascript when i used it to create an api for an ios app but since i spend most of my time doing machine learning now, python is where the datascience community is and i love the opensource tools they create like ipython notebook, pandas, scikits, etc... So i just never get the staunch stance people take over languages but maybe its about being a "master" in a language and i am definitely not anyway near being a master in python.
Choice of development language is realistically more of a business decision than a technical one. With the proliferation of REST APIs, there are no longer really any technical hurdles to using any language.
Scalability can be an issue, but honestly business scalability is a problem for most businesses long before technical scalability is. Ruby and Python are awesome, but it can be hard to scale a company with one of those languages because it's hard to find good programmers who know Ruby or Python. It's much easier to find good Java or C# developers.
At this point, given all the work the Apache foundation has done to make Java awesome, I don't really know I would consider another language from a business standpoint. Sure, from a technical standpoint Java isn't that exciting; but it's easy to scale, easy to hire for and relatively standard across a number of platforms. Java code is also relatively easy to maintain since it forces you into certain design patterns.
There are some domains where this wouldn't hold true (and data science is definitely one of them -- you'll have an easier time hiring a machine learning expert who knows Python than Java) but that's really just technology. In a production environment, you'd eventually wrap your Python code in REST APIs and write all the ETL and interface code in Java.
This is probably one of the most excellent argument with respect to why we choose mainstream technology I've ever read.
You're on the money with Apache foundation (and other great quality tools/libraries/software written in Java). The ecosystem is just too huge to ignore. The other day we saw ElasticSearch at the top of HN when they announced they just released v1.0.0. I know tons of hi-tech companies are using it.
Meanwhile, there's no group or organization that invest in Ruby or Python the way Apache does to Java.
It's kinda sad. I really really wish (and want to see) similar thing happen to Ruby/Python but it's 2014 and sadly it hasn't happened. Outside Rails, I don't see anything else in the Ruby world that reach that level of adoption (maybe Jekyll or Octopress). Django seems to become minority. Plone seems to quiet down. Turbogears is probably dead. Flask is on the rise. Twisted doesn't seem to be the defacto solution.
Just that in general, Ruby or Python community seems to be locked on CRUD for web-app but nothing else.
Ruby and Python are awesome, but it can be hard to scale a company with one of those languages because it's hard to find good programmers who know Ruby or Python.
Good programmers usually become good python programmers quickly if it has become their day-to-day job. But maybe we have different levels in mind when we say "good".
While I would love to hire a bunch of elite hackers who are able to adapt to any language in a week, the reality is that most of those guys work for Google or Facebook and aren't interested in writing code for business apps (and probably wouldn't stick around anywhere early in their career for more than a year or so anyway). What you end up being able to hire are the B students from CS programs at good state schools (Texas, Michigan, etc.) They're not bad developers by any means, just not uber-hackers.
A lot of these guys are developers because it pays well and affords them a comfortable life for them and their (potentially future) family, not because they love technology. And there's nothing wrong with that.
Php is easy and getting more complex every day. With x/y/z framework nowdays,newbies will struggle to understand php same as other programming language.
As a beginner PHP is still way easier to get started with for Web Development. I can take a new machine, or shared hosting and be pretty confident that I can get a PHP "Hello World" on a web page working. I'm still not sure what is the best or easiest way to do that in Python[1], although I've been using it quite a lot for more general stuff.
This sentence is worth pointing out as a good attitude. I think the healthiest place to be is using tools you like, but able to appreciate the good bits of other systems.
For instance, as long as I'm not actually working with it, I can appreciate the idea that PHP made it very easy for a lot of people to do something with the web, something that otherwise they might not have been able to do, because it is very easy to get started with. That is worth something, and worth thinking about for those who are building tomorrow's languages.