Hacker News new | past | comments | ask | show | jobs | submit login

Things that don't matter:

  - OS
  - Language
  - Compiler 
  - Runtime
  - Editor
  - Testing process
  - Deployment process
  - Bug management systems
The thing that does matter:

  - Building something successful that people want
Frankly, I don't care what language you used to build it. I don't care what shoddy infrastructure supports it. I don't care what hacks you put into place to scale that infrastructure. You know why? Because your customers don't care. They just care that the thing you built works.

So just build something successful that people want. And do it however you want.




That's absolutely right. I've established that there's a market for digging trenches for subterranean cables, and my decision to use teaspoons instead of pneumatic drills and mechanical diggers has no bearing whatsoever on my venture's prospects.


That would be a very valid analogy if no other trenches had been dug with teaspoons, but a high percentage have, including some of the largest and most successful.


The analogy wasn't particularly about PHP, it was about tools.

It might be true that the choice of tool is irrelevant to an end user, investor or other person that's not capable of or interested in judging the tool's merits, but if you're actually trying to build something the choice of tool matters quite a lot. The fact ryannielson doesn't know or care what I do all day doesn't help me get stuff done.

Epilogue: The company I work for recently bought a Content Management System / web framework for half a million bucks, then spent another half a million bucks trying to make it work, then abandoned it in favour of the system we were running before. I think the decision to go with that tool was a poor one.


This is the right attitude.

If you want to do business that is how it is supposed to work. The customer won't care less how the product was developed, and if he cares, he will be defining the tools anyway.


Woe betide developers actually feeling good and having fun whilst developing this app. You won't attract skilled new developers with technical debt and a crusty old language.


These are two different questions:

1. Should I care what successful product X was written in?

2. What influence does my choice of language have on the success of my product.


While I agree with your priorities, I think it's misleading to say they "don't matter". They do matter. They just don't matter as much.


What exactly is the argument that we're having?

If somebody were arguing that a website loses value by virtue of having been made in PHP, all else being equal, you're right, but nobody's arguing that.

If somebody were arguing that PHP should fall off the face of the earth, you would be right to say that this is an awful argument because so many people are already used to PHP and are productive, and learning a new language takes time. And I think not many people are arguing this either.

The relevant argument is, for the sake of maximizing the potential to Build Something Successful that People Want, PHP should rarely be advocated, because better languages and platforms exist. If you come back to me by pointing to Facebook and Wikipedia, I would ask you to explain to me how, given the challenges leveled againste PHP as a language, it could possibly be a preferable language to Python or Ruby.

The only redeeming value of PHP that I can think of is the easy setup. And I don't think that would help Facebook or Wikipedia if they started today (I'll grant you that PHP may have been the right choice given a lack of web frameworks at the time they started, I actually don't know why they chose what they did).

So by this reasoning, unless there can be a list of benefits to PHP that would lead you to believe that it would help lead to Facebook's and Wikipedia's success if they started today, the rest of us are left with the conclusion that, based on these ridiculous deficiencies, there's no reason it could possibly help them and it would probably hamper them. But more importantly, it's a losing proposition to learn and use to start a new project, other than something that's starting small and needs to get off the ground really quick.

Is that unreasonable? Imagine everybody was "doing just fine" making successful websites in assembly? How about a realistic case study: Ok Cupid wrote their own webserver in C++. They still use it because it's not worth redoing their whole infrastructure. But if they started today, they would have used Apache. They don't advocate anybody, themselves included, to write a web server in C++ (edit: today), despite the fact that they're "doing just fine" with it.

So if somebody is criticized for using PHP, and their response is, "Yeah, I know, but it's what I know" that's perfectly fine, learning a new language takes time and it may not be worth it, it's not my place to make judgement calls like that for people. If their response is "Hey man, I'm plenty productive with this, to each his own" imagine if they said that about assembly. Yeah, I guess they could be wired in such a way that it's more productive for them, but it's got to be such an oddball case that it doesn't justify the existence of the language. Yes, part of me wants to live and let live. But I can't sit back and accept this subjectivist attitude toward languages, there's actual reasons a language is good or not.


But when starting a project you still have to make all those decisions. So knowing that PHP sucks is useful information.




Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: