4 ms·
So if you replicated their special and custom 'platform' in Ruby or Python and it exceeded PHP's performance by miles what would their reasoning for continuing
by rkv 13y ago
So if you replicated their special and custom 'platform' in Ruby or Python and it exceeded PHP's performance by miles what would their reasoning for continuing to use PHP be?
- exarch 13y agoIf they're honest, probably something akin to, "solidified lava is hard to chisel up and replace with pavement".
- dkuntz2 13y agoThey might not like Ruby, or Python. They might genuinely enjoy PHP.
- greensand 13y agoand if it wouldn't, what would your reaction be ?
- kodablah 13y agoThis is a legitimate question due to speed comparisons I've seen between PHP and Python/Ruby. Also, it seems like the obligatory "if you replicated their special and custom 'platform' in C and it exceeded Ruby or Python's performance by miles what would their reasoning for continuing to use Ruby or Python be?" People like the language, deal with it...
- yareally 13y agoBecause they're costs in replacing an entire infrastructure that go beyond simply making the choice to switch to something else. - How knowledgeable your current employees are with it (and willingness to adapt and switch, as well as how long it will take to be as productive after the switch) - Time taken redo all your servers to support it and pay someone to do it - Subtle bugs that may appear related to the platform switch and not being as knowledgeable about it at first. - As someone else mentioned, they may actually like PHP. That may seem hard to understand for some, but heck, there are even people like that like Java. We might not fall under either case, but for the same reasons people like other things that people may find inferior (certain car brands, TVs, PCs components, etc), people apply the same logic to programming languages.
- jacques_chester 13y agoThe cost of backtracking up a decision tree to pick a new technology can be very high indeed. Economists call this phenomenon "Path Dependency" and it's all around us. http://en.wikipedia.org/wiki/Path_dependency http://en.wikipedia.org/wiki/Path_dependency And the costs are not just high because of the labour. There's also a high degree of risk. In practice we know less about the running code than we think we do. It usually contains enormous amounts of knowledge about edge cases that will, most likely, be missed on the rewrite and cause trouble.
- rkv 13y ago>Because they're costs in replacing an entire infrastructure that go beyond simply making the choice to switch to something else. I'm assuming that they don't have to worry about any of that and are given three platforms (PHP/Ruby/Python) that, for the sake of my argument, all do the same thing. Then we ask the question, which would they choose and why?
- yareally 13y agoWhile it's a worthy question to ask, it's not applicable to them outside of theory, since they have been using PHP since they started some years ago. If you rephrase the question to a company just starting out, then it would be more fitting :) If you look at the larger companies that do switch platforms, the ones that generally make the leap usually do so without replacing the entire stack (Java to jRuby or Java to Scala, etc). Not always the case (since the language can still be hurdle itself), but the cost to switch in those sort of cases is far lower than jumping off the jvm/clr/etc. I'm sure if you asked Facebook now (and got an honest answer) that they would totally agree they would have picked another language and platform than PHP to build on given what they have had to go through since. However, PHP is what the developers knew starting out and sometimes it's better to go with what you know than learning something entirely new as building something from scratch is already a huge undertaking that can wear you down. Adding the burden of learning a new language/platform at the same time can lead to taking on too much and slow progress/motivation as well as lead to procrastination or distraction. It might lead to regrets later, but the greater regret is not building at all than choosing the right platform.