Hacker Newsnew | past | comments | ask | show | jobs | submitlogin

Sorry, but after using Golang with its very simple and powerful goroutines and channels approach to concurrency, this seems like a convoluted mess. When I need concurrency, I certainly don't think of Python as the right tool.

Python seems to have lost its way after the 2 to 3 shift and is no longer what I'd consider "pythonic".



I think programming language design as a having a large random component. New languages pop up every day, and it's really hard to predict which constructs will resonate well with human brains.

Guido was competent, but not nearly as brilliant as, for example, Larry, but Python 2 was dramatically better than Perl. I think this is mostly by chance. Hundreds of new languages come out every year, and by whatever fluke, a few of them really work. Python 2 was that.

In an ecosystem like that, past performance is no indication of future performance. There are very few language designers who did well more than once (Guy Steele is the only one I can think of who wasn't a one-hit-wonder).

So I too felt like Python 3 was more of a step backwards than forwards linguistically. But at this point, it has features I need which Python 2 lacks, so I'm mostly working in Python 3. But it definitely feels (unnecessarily) less clean.


Python's origin story as being a replacement to Perl is so completely out of scope compared to what modern scripting languages are doing it's laughable.


If you want to integrate with the data science ecosystem, would you use modern Python for APIs as well, or do Go services with minimal Python bits?

EDIT: coming from someone who has had great experiences with FastAPI and Uvicorn combined with Dask and Redis.




Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: