In the game of baseball, pitchers and batters are continually making adjustments to improve their chances against each other. If a batter stikes out, he can learn from the pitches he saw and have a better chance of connecting in his next appearance at the plate. The same is true for entrepreneurs in the startup game.
Second generation entrepreneurs (or any employee of a startup, for that matter) can review past decisions in hopes of hitting one out of the park with their next startup. Adam D’Angelo is a former employee of Facebook where he learned valuable lessons – like choosing the right programming language – that helped him launch his very own startup, the Q&A service Quora.
Responding to a question asking why Quora chose Python for its development, D’Angelo – the site’s founder – harkened back to his days at Facebook for the root of his answer. According to D’Angelo, Quora chose Python for many technical reasons, but also because of the trouble he faced when using PHP at Facebook.
“PHP was out of the question. Facebook is stuck on that for legacy reasons, not because it’s the best choice right now,” says D’Angelo, referencing a separate Quora thread on the “crawling horrors” of PHP use. “Our main takeaway from that experience is that programming language choice is very important and is extremely costly to change.”
One of other important reasons that Quora chose Python, he says, is the desire to be built on open-source software stacks. Another language that was “promising” for Quora was C#, but it was built by Microsoft as part of .NET and the stability of open-source tools for it are uncertain, says D’Angelo. While choosing the right language is certainly a case-by-case decision for individual startups, D’Angelo feels Python was the perfect choice for Quora.
“Our main takeaway from that experience is that programming language choice is very important and is extremely costly to change.”
– Adam D’Angelo
“So far, we’ve been pretty happy with the choice,” he says. “There’s a small selection bias, but all of the employees who’d been working with other languages in the past have been happy to transition to Python, especially those coming from PHP.”
The programming language your startup chooses will serve as your site’s skeletal structure into the future, and relaunching on a new framework is not ideal. Each language has its own benefits over the others for completing different tasks, and for Quora, Python was the best choice, it seems.
Another lesson to take from their experience is to not fear learning a new language for a new project. New tools make it easier for developers to transition between languages, so don’t get stuck choosing a language simply based on your familiarity with it. Languages should be chosen for their ability to meet your startup’s needs, not for how well your developers know them.