4 ms·
You're basically advocating the model similar to how WhatsApp grew. The truth is that most companies are willing to throw more money for delivering a result fas
by devonkim 9y ago
You're basically advocating the model similar to how WhatsApp grew. The truth is that most companies are willing to throw more money for delivering a result faster, and even the fastest C++ programmers cannot pump out a CRUD app and re-iterate as those using some random crap like Node.js and that's a fundamental reality of languages you have to compile and ship versus just modify in-place.
I think it's a great idea for bootstrapped startups to host their own hardware until they've got the capital to try to spend more for results faster. But again, I think the current software market primarily driven by an obsession of faster iterations even at a far greater up-front cost is what de-emphasizes your romanticized notion of development cycles and care for efficiency (which I personally fully support - I started in embedded dev and all this web stuff has been boring to me since the 90s).
- bsenftner 9y agoThe tooling is just arriving to enable as rapid a development cycle in C++ as with managed languages. I was having multiple issues, only optimizing portions of a traditional (W/L)AMP stack or node.js solution with C/C++ components until I found Restbed (https://github.com/Corvusoft/restbed https://github.com/Corvusoft/restbed). Now I can create a complete self-contained REST API server in a 100K executable with no (W/L)AMP stack or other infrastructure required. Compiling C++ is fast, and unlike the typical (W/L)AMP, node.js, or other "conventional web stack" one is not compiling and/or executing through gigs of data and executable - the re-compile and execute/debug cycle in C++ for Restbed is instantaneous on modern hardware, and the execution speed runs circles around any managed language. Such a development solution is faster, consumes exponentially fewer resources, and is a great idea for much more than startups. You just need good C++ developers that also know the web - a bit rare right now, but the savings are too real for the situation to remain that way.
- mschuster91 9y agoThanks for the hint - I'll definitely have a look at it. Compile it statically and you can run it on a bare Linux kernel (or on a container) without any dependency... reminds me a bit of Go. Do you happen to know if there's a benchmark comparison (CPU usage, RAM usage, RPS) against nodejs and php (the code style of the example reminds me of Silex)?
- devonkim 9y agoThe other part of the equation is that good developers let alone good C++ developers are in very short supply in a market already dying of thirst for merely competent developers. Most large companies that need software simply will never be able to attract them, so you have to throw your net wider and accept the hegemony of Java, Python, Ruby, and Javascript. I think labor economics fundamentally wins in the current market over any technical factors until we start approaching large scale systems by which time, ironically, the costs of high-overhead, low-LOC software infrastructure are far too great and you're like Facebook drowning in piles and piles of legacy code that people are scared to really tear apart just to save maybe 20% on the number of servers while still making hiring even harder. Furthermore, a pet dating app founder doesn't really have any benefit picking C/C++ over Python, Node.js, etc. unless they are so under-funded they're trying to save $300 / mo on hosting costs in which case they can't even begin to think about paying someone in the first place. By the time you start hitting $2000 / mo in infrastructure costs where a solid C/C++ core on even AWS you'll likely be bringing in enough users that you could conceivably raise more funding anyway. I'm totally a fan of writing C/C++ for modern software but if I'm in the driver's seat of a company I really can't expect to be lucky enough to find someone that knows what they're doing with modern C/C++ in that market. Heck, even in the super competitive yet lower-pay games industry most programmers aren't on C++11 or C++14 last I heard, so they'd still have to learn new stuff if I hired them for a random web start-up or big company.