Live data from Hacker News

Ask HN: Would you use Python as the main lang in a potentially large project?

news.ycombinator.com

11–16 of 16 posts

Re: Ask HN: Would you use Python as the main lang in a potentially large project?

#11
Yes. Use what you already know and make your project fast.

Today, after some large projects, I miss strong typing but not enough to change everything. You need more tests, but I can live with it.

We integrated with a large retailer in a complex project with only two developers and I think Python was the reason to it. Too many open source things already done and fast iterations.

Re: Ask HN: Would you use Python as the main lang in a potentially large project?

#12
Scaling is highly dependent on what you're building. For many web applications the app server isn't really the bottleneck, it's the database; switching to JVM won't help with that.

For other applications Python is way too slow... although PyPy helps a lot.

As for things like static typing and maintainability, it's certainly possible to do with Python. You also have the power to write horrible unmaintainable code. Unit testing tends to be much more more important in Python. And you can add static typing to Python these days, via external tooling.

Some ideas and tools for building long-term maintainable Python, originally written as guide for Java developers: https://codewithoutrules.com/2016/10/30/python-for-java-deve...

Re: Ask HN: Would you use Python as the main lang in a potentially large project?

#13
"startup aiming to build a sustainable SaaS "

This is the key piece of information based on which I will give you my advice. If you know Python and use it already, then go build it in Python.

If you do grow to that level of scale, python will be the least of your worries. You will figure it out then. Just build in python and release the damn kraken.

Re: Ask HN: Would you use Python as the main lang in a potentially large project?

#14

"startup aiming to build a sustainable SaaS " This is the key piece of information based on which I will give you my advice. If you know Python and use it already, then go build it in Python. If you do grow to that level of scale, python will be the least of your worries. You will figure it out then. Just build in python and release the damn kraken.

I want that last sentence on a coffee cup. Or tee-shirt I guess, but I have too many at the moment.

Re: Ask HN: Would you use Python as the main lang in a potentially large project?

#15
post #7

> Python as the main language in a potentially large-scale project This is the flaw in your thinking, the word Potentially . Good engineering means you worry about actual problems and not potential problems (within reason ofc). Your actual problem is that you haven't written the web application, so you do that first. For doing that, Python is an excellent choice. "But what about web-scale?" Well, chances are your pro…

Good point, that adjective changes everything. In regards to scaling, yes I haven't met performance scaling issues with Python web applications, even when needing long running asynchronous tasks by relying on the ever popular celery and redis, because I've never had somewhat even moderate traffic. In hindsight, I am guilty of over-engineering previous web applications "to deal with potential scaling issues", especially at the infrastructure level, leverage clusters of containers when I could of got away with Heroku.

Re: Ask HN: Would you use Python as the main lang in a potentially large project?

#16
JVM is fast and supports productive languages (including Jython) which can easily interop without service abstractions. You leave more options on the table.

But like others have said, it's tempting and typical for developers to obsess about details that at worse will be a good problem to have (... like having to super scale). Worth making sure you're not one of them.

Post reply on HN