| ▲ | nutjob2 6 hours ago | ||||||||||||||||
> A lot of important and large codebases were grown and maintained in Python How does this happen? Is it just inertia that cause people to write large systems in a essentially type free, interpreted scripting language? | |||||||||||||||||
| ▲ | hibikir 6 hours ago | parent | next [-] | ||||||||||||||||
Small startups end up writing code in whatever gets things working faster, because having too large a codebase with too much load is a champagne problem. If I told you that we were going to be running a very large payments system, with customers from startups to Amazon, you'd not write it in ruby and put the data in MongoDB, and then using its oplog as a queue... but that's what Stripe looked like. They even hired a compiler team to add type checking to the language, as that made far more sense than porting a giant monorepo to something else. | |||||||||||||||||
| ▲ | xboxnolifes 6 hours ago | parent | prev | next [-] | ||||||||||||||||
It's very simple. Large systems start as small systems. | |||||||||||||||||
| |||||||||||||||||
| ▲ | oivey 6 hours ago | parent | prev | next [-] | ||||||||||||||||
It’s a nice and productive language. Why is that incomprehensible? | |||||||||||||||||
| ▲ | wiseowise 3 hours ago | parent | prev | next [-] | ||||||||||||||||
Python has types, now even gradual static typing if you want to go further. It's irrelevant whether language is interpreted scripting if it solves your problem. | |||||||||||||||||
| ▲ | oofbey 6 hours ago | parent | prev | next [-] | ||||||||||||||||
It’s very natural. Python is fantastic for going from 0 to 1 because it’s easy and forgiving. So lots of projects start with it. Especially anything ML focused. And it’s much harder to change tools once a project is underway. | |||||||||||||||||
| |||||||||||||||||
| ▲ | tjwebbnorfolk 3 hours ago | parent | prev | next [-] | ||||||||||||||||
Most large things begin life as small things. | |||||||||||||||||
| ▲ | IshKebab 2 hours ago | parent | prev [-] | ||||||||||||||||
Someone says "let's write a prototype in Python" and someone else says "are you sure we shouldn't use a a better language that is just as productive but isn't going to lock us into abysmal performance down the line?" but everyone else says "nah we don't need to worry about performance yet, and anyway it's just a prototype - we'll write a proper version when we need to"... 10 years later "ok it's too slow; our options are a) spend $10m more on servers, b) spend $5m writing a faster Python runtime before giving up later because nobody uses it, c) spend 2 years rewriting it and probably failing, during which time we can make no new features. a) it is then." | |||||||||||||||||
| |||||||||||||||||