Ask HN: Would you choose C++ over Python/Ruby with Hadoop?
Met this guy the other day, who wants me to set up a Hadoop cluster for him - he's got this mobile app that uses crowdsourcing to build, maintain and distribute information on spam callers and text senders.
In the course of the discussion, turned out that he was heavily against me using Python/Ruby(stuff I normally work with) to write code. He believes C++ is..faster.
Of course, that is true. But I still have my doubts. I don't want benchmarks. I'd rather have experiences. What do you think?
3 comments
[ 2.8 ms ] story [ 20.3 ms ] threadPersonally, I'm okay sacrificing speed, (for what I do, it really doesn't matter) for a language I'm more familiar with and find it easier to write in. So, I, like you, would prefer python. And when it comes to Hadoop, as well as many other areas that university research labs focus on, they usually use python too, so there's a lot of libraries you can easily grab and work with, if need be. Also, it's easier to hand off python code to someone that doesn't know python than it is to hand off C++ to someone that doesn't know C++/Java.
However, in the real world, the customer is always right, even when they are wrong. Do what they ask, no more and no less. If they ask for a recommendation, give it. When they ignore it, don't push...just decide whether or not you want to work under the conditions / terms. It's sad, but people hire experts and ignore their opinions all the time.
Just don't take the job and try to change the terms later. That always turns out terrible.
Good luck.
* It's sad, but people hire experts and ignore their opinions all the time.*
True, that. I don't really think I'm going to take up this project. I mean, it's all about playing to one's strengths - that is definitely missing here.
Thanks a ton! Appreciate it.
In this case, since it seems like an ETL batch process that can be parallelized, your barriers are more the cost and time of development versus running time.