6 ms·
I disagree. Most startups that YC has funded that became successful (Series B or higher) were written in Python or Ruby. Now you can say that this is a tradeof
by 3pt14159 4y ago
I disagree.
Most startups that YC has funded that became successful (Series B or higher) were written in Python or Ruby. Now you can say that this is a tradeoff for post Series B, and for that I don't know. I've never worked on a massive Python mono-repo for a company that size. But I know what I've done in Python and, yes, it includes performance optimization in Numpy / Scipy / Cython, and other than Ruby, no other language comes close to the developer performance I see with Python and the ecosystem around it.
That said, there is a good and a bad way of writing Python. You absolutely need tests and lots of them since there is no compiler for vanilla Python. Mypy helps a ton too and so do the linters and even Black. Also, get pdb++ and customize it. The tooling helps a lot.
Now I haven't ever written production Rust, but I have for Go and many other languages, and so Rust may be faster, but other than Ruby I haven't seen anything close.
- celdon25 4y ago> Most startups that YC has funded that became successful (Series B or higher) were written in Python or Ruby. Is there data on startup lifespan ranked by tech stack? Genuinely been looking for this for awhile now.
- badpun 4y ago> I disagree. > Most startups that YC has funded that became successful (Series B or higher) were written in Python or Ruby. It depends on what your goal is. If you want to get rich off of VC money, Python and Ruby might be a good fit. If you, on the other hand, want to write good, performant, maintenable and (relatively) bug-free software, then there are better choices.
- manfre 4y agoDev teams that are unable or willing to properly architect and test their projects will end up with buggy and difficult to maintainable code regardless of language.
- eatonphil 4y agoThat is unrelated to what the person you're responding to said.
- ithrow 4y agoIf you, on the other hand, want to write good, performant, maintenable and (relatively) bug-free software, then there are better choices. You can do that part when the money comes in.
- badpun 4y agoOnce you invite the investors in, the company isn't truly yours, and they expect 1000x growth. There will always be higher priorities than a rewrite. If you don't take investors' money, then it's theoretically feasible, but, in practice I've seen companies stuck with their Python/Ruby stack for 10 years or longer, always wanting to rewrite but never having the time. Microservice architecture helps (not that it's not a can of worms of its own), and these companies tend to write new functionalities in their desired language (such as Go or Scala) and deploy them as separate microservice. The old code remains in Python or Ruby though, and now they have a multilingual mess that is near-to-impossible to maintain for a small team. Why not start with a better language in the first place?
- valenterry 4y ago> Most startups that YC has funded that became successful (Series B or higher) were written in Python or Ruby So, what was the percentage of YC startups that started with Python or ruby and what was the share that became successful?