3 ms·
There are a few key properties of Python that make it a really great language to develop in, especially at the start of a project: no need to figure out type an
by dbrueck 3y ago
There are a few key properties of Python that make it a really great language to develop in, especially at the start of a project: no need to figure out type annotations up front, high signal-to-noise syntax, and Python's absurdly dynamic nature. These all work together to speed development, especially the early stages where you're modelling the program's design.
As the program gels, then it becomes a much better time to nail down precise data types and then 99% of Python programs no longer need an extreme level of dynamicity (dynamicness?). So far, Mojo seems to be getting this right: stay out of my way when I'm roughing things in and rapidly iterating, and then if and when it's needed, I'll happily lock in data types in exchange for more speed, AOT compilation, getting onto a GPU or microcontroller, etc.
- flashgordon 3y agoSo I mostly agree. Python makes it great to start with and iterate. Unlike say golang. What I've found is while python gets you started quickly it also lets you "sprawl" on your bad habits. A team that got into python with little experience in good habits ends up writing a lot of python code, fast that is hard to read and maintain and continue improving without fear. Having moved to golang (for services only) the idioms are more in your face. Frustrating at first but once you pay the tax it is smoothish sailing. Now I could be biased given experience in "general" software design.