News for hackers. Stuff that matters.
Re:What I Learned at Stripe by faitswulff on Tuesday February 28, 2023 @09:00AM (#34969348)
You could learn the opposite lesson as well, that if you want to create a successful startup you need a dynamic language that responds to business needs and you can put off worrying about infrastructure costs until later.
Re:What I Learned at Stripe by likeabbas on Tuesday February 28, 2023 @09:05AM (#34969392)
Your argument is based on a fallacy that you can build something faster in a dynamic language than a typed one. IMO that argument fails when you need to onboard new people to read the codebase and contribute to it. I'd argue you will be able to onboard people faster to a typed codebase than a dynamic one. And for me personally, I don't see a difference in my ability to produce code between Java/Go and a dynamically typed language.
Re:What I Learned at Stripe by faitswulff on Tuesday February 28, 2023 @09:07AM (#34969424)
That's not my argument. My argument is that without more data, your original statement that "you'd be better off" is just as subjective. In fact, with data, we see rather the opposite picture:

> Y Combinator, an accomplished investment fund, and startup incubator has published a list of its top 100 graduate companies ranked by valuation as of October 2019. 8 out of the 10 most valued companies in the ranking were built using Ruby on Rails.

https://spreecommerce.org/ruby-on-rails-most-popular-among-t...

I'm not entirely convinced, but my main point is that polemic based on individual experiences is wholly subjective.

Re:What I Learned at Stripe by likeabbas on Tuesday February 28, 2023 @09:11AM (#34969455)
No it's not. You would objectively be better off in Java or Go than Ruby once you reach scale. Java and Go can truly utilize multi-core threading, and have superior garbage collectors. This matters a lot for latency requirements
Re:What I Learned at Stripe by likeabbas on Tuesday February 28, 2023 @10:27AM (#34970343)
You edited your response. How many of those companies are profitable?
Re:What I Learned at Stripe by faitswulff on Tuesday February 28, 2023 @10:34AM (#34970414)
I edited my response from "Without more data, your original statement that "you'd be better off" is just as subjective" to the more fully fleshed out comment you see now while I was looking for a link for my sources.

You, on the other hand, are moving the goalposts.

Re:What I Learned at Stripe by likeabbas on Tuesday February 28, 2023 @11:52AM (#34971583)
I'm not moving goal posts. I never said you could not be successful with ruby. All I'm saying is that once you hit scale, you would have an easier time cutting costs in a language that could better utilize less infrastructure and thus lowering your operating costs.
Re:What I Learned at Stripe by hbrn on Tuesday February 28, 2023 @02:17PM (#34973542)
For overwhelming majority of startups hardware is a tiny fraction of their operating costs.

Not to mention that a lot of the hardware costs are language-agnostic: database servers, disk volume.

Re:What I Learned at Stripe by likeabbas on Tuesday February 28, 2023 @03:09PM (#34974132)
Why do people keep misreading what I'm saying. The argument is specifically for WHEN YOU REACH SCALE
Re:What I Learned at Stripe by hbrn on Tuesday February 28, 2023 @03:26PM (#34974353)
To most people "reaching scale" means either revenue number or number of customers (word "when" implies that).

You can easily reach "scale" (earn millions of dollars, serve millions of customers) while still running on 2-4 web servers.

Re:What I Learned at Stripe by likeabbas on Tuesday February 28, 2023 @06:19PM (#34976357)
Name one company that runs 4 servers of ruby and earns millions per year
Re:What I Learned at Stripe by hbrn on Tuesday February 28, 2023 @09:25PM (#34977986)
Given that very few companies in the world make their infrastructure public and I never worked in a Ruby shop, I can't.

But I've done it with Python and I can't see why Ruby would be any different.

Re:What I Learned at Stripe by likeabbas on Wednesday March 01, 2023 @10:44AM (#34983552)
A company makes millions of dollars through 4 servers running python?
Re:What I Learned at Stripe by hbrn on Wednesday March 01, 2023 @02:08PM (#34986827)
Yes, 2-4 web servers. And it's not like they are using most expensive configuration, just 4 vCPU per node. CPU utilization is below 20%, so it could even run on a single node, but that's not good for availability.

Why is that so surprising? Nobody sane does anything CPU-intensive in their webapps.

Re:What I Learned at Stripe by faitswulff on Tuesday February 28, 2023 @03:20PM (#34974277)
Probably because your original comment doesn't say anything about scale and instead says specifically "you'd be better off," which implies "better off from the start." I'm not saying that's what you said, but that's what it reads as.
Re:What I Learned at Stripe by likeabbas on Tuesday February 28, 2023 @06:18PM (#34976351)
I guess "successful startup" doesn't equate to "scale" ?
Re:What I Learned at Stripe by faitswulff on Thursday March 09, 2023 @02:59PM (#35085848)
No, it doesn't. A successful startup can have a few large customers and millions of dollars in revenue.
Re:What I Learned at Stripe by codegeek on Tuesday February 28, 2023 @09:10AM (#34969448)
I am not GP but the argument that typed language is always better to start with has its own fallacy. What if I don't have experience with a typed language and I need to get to Product Market Fit first where most startups fail ? You need to look at it from a business perspective as well. If I only know say Ruby and I can get something up and running with it, I would use that. I wouldn't worry about Typed Language or whatever.
Re:What I Learned at Stripe by likeabbas on Tuesday February 28, 2023 @09:14AM (#34969492)
I'm not saying it's not possible to build a successful start up with the language. My argument is just that the language can become a major expense and limiting factor once you reach scale. Many programmers know multiple languages, and if they have a choice then it may be wise to opt for a language that could help you avoid some of these problems later.
Re:What I Learned at Stripe by aerhardt on Tuesday February 28, 2023 @09:31AM (#34969671)
What proof is there that companies built on dynamic typed languages struggle with server costs, payroll, or development velocity, though?

Looking from the outside, all I can say is that both Github and especially Stripe have continued to churn out features and entire product lines well after they reached global scale…

Regarding their economics, I’d have to see a serious study proving that that the effect in infra and server costs is not only real but also non-negligible, ie, it has a real impact on the bottom line, shareholder value, company efficiency, competitiveness, or what-have-you…

Re:What I Learned at Stripe by likeabbas on Tuesday February 28, 2023 @11:58AM (#34971654)
> What proof is there that companies built on dynamic typed languages struggle with server costs

The proof is in the limitations of the language. If you have a 4 CPU server and you want to run a web application, you would be able to process far more transactions per second in a Java or Go application than Ruby. This is because Ruby has a GIL which means it can't truly multithread, so to get parallelization you need to multiprocess. These days kernels can spawn threads in 5ms (or with Green threads that can be in nanoseconds), but a new process takes 50ms to spawn. Then, there's the issue of Garbage Collection pauses. Java is one of the best with some very low latency (<10ms) GCs. Ruby far from the state of the art GCs. Then there's the runtime, which Ruby can be 10-100x slower than Java or Go.

It's just a matter of this logic being scaled to big levels

Re:What I Learned at Stripe by dalyons on Tuesday February 28, 2023 @10:53AM (#34970646)
I work at a company that does ruby “at scale” too (10mil b2c users). Yes we need more web instances than we would have in go(or whatever). No, it doesn’t really matter at all - web process compute is a tiny fraction of our AWS bill, and a meaninglessly tiny % of overall op-ex. We’re talking sub sub 1%. It doesn’t matter, really.

Of course if we had a few billion users , diff story, but approximately no one does.