4 ms·
It is impressive that PHP ran the largest Bitcoin exchange for a while and the main flaw happened to be a software hack than its ability to scale. If you think
by ojr 13y ago
It is impressive that PHP ran the largest Bitcoin exchange for a while and the main flaw happened to be a software hack than its ability to scale. If you think language X would be more secure and saved Mt Gox, the Russians would like to have a word with you
- gnerd 13y agoPHP is a tool and as any tool with a low learning curve it can be used by people with or without expertise. I think we certainly have had PHP built infrastructure that scales, but surely you can see why an order matching system should not be written in PHP. First of all, by doing it that way, the order matching system was coupled to the website, so now it makes perfect sense why the BitCoin price crashed after the DDoS attacks on MtGox. Because taking the website down meant taking the order matching down with it. No more trading. From what I am seeing, this is not a case of PHP being evil (although, would you really run mission critical systems with PHP? The execution model doesn't make sense in that world and if you think a set_time_limit(0) on a PHP script is the same as an actual daemon written in a robust language meant for that execution model, then I think we are in extreme disagreement). For me this is a case of a guy who's confidence was ahead of the reality. I'm sure in his mind a pacemaker running on PHP code is perfectly fine, and perhaps it might actually work for a while but that's just it, it will fail eventually (its a square peg in a round hole after all) and when it does it will be bad. We don't craft critical systems thinking of the best case scenario, we do it thinking of the worst and for my money, whatever happened at MtGox, its the worst case scenario. PHP in Facebook, yes, NYSE? FUCK NO.
- girvo 13y agoI love PHP. Yes, you read that right. And, I completely agree with you. Also, for the GP, PHP's shared-nothing architecture means scaling horizontally is actually pretty easy all things considered. I just wouldn't write a bitcoin exchange in anything that doesn't have static typing: PHPs gotchas could quite literally cause a massive loss of money.
- Jedd 13y agoPeople picking on other people's language skills ... who doesn't understand the difference between whose and who's ... may be living in a glasshouse.
- brianpgordon 13y agoGox was harmed nontrivially for a long time by its failure to scale. A lot of bitcoin tickers had a "Mt. Gox lag" indicator that displayed how much lag was in the trading engine at that time, because it was such a big deal. And every time the trading engine stopped responding (due to DDOS, or whatever) people would panic sell.
- eterm 13y agoIt didn't scale well at all actually, several "ddos" problems were more likely just the exchange crumbling under its own weight, particularly around the november gold rush period.
- godd2 13y agoThat's not what he's saying. He's saying that it didn't scale well because Karpeles didn't know how to program, not that PHP didn't lend itself to said scaling.
- coldtea 13y ago>and the main flaw happened to be a software hack than its ability to scale Languages do not scale, application designs do. You can even make BASIC scale if you design your app for that purpose. Besides, nothing impressive about PHP running the "largest Bitcoin exchange". Bitcoin, in the grand scheme of things, is an insignificant niche, not even 1% of the world population has anything to do with it at the moment. PHP runs much bigger stuff, like Yahoo! and of course Facebook (sure, Facebook now has custom PHP JITs et al, but used to run on just PHP back in the day when it was already huge).