5 ms·
I have been a heavy Python user now about 15 years, but for me now I'm increasingly reaching for modern JavaScript and particularly TypeScript to do the things
by samwillis 4y ago
I have been a heavy Python user now about 15 years, but for me now I'm increasingly reaching for modern JavaScript and particularly TypeScript to do the things I would have traditionally done with Python.
ES modules, fat arrow expressions, and all the other nice new syntax and library features have made the language so more pleasant to use. In many ways the ergonomics of TypeScript in particular are far superior to Python now, and I find that really surprising.
I haven't yet found a replacement for Django (particularly the ORM/Admin/Forms combination) it is just so incredibly productive to use. So, I don't think I will be moving off it, but it's certainly not the growth language for me anymore.
- leetharris 4y agoIf you're looking for a Django replacement, check out Adonis. Laravel in PHP was heavily inspired by Django but is much better and Adonis is an exact clone of Laravel. I think you'd like it.
- fredley 4y agoI am going this way too. I recently tried to onboard a few contractors with limited python experience. It took several deep sessions to work out why they couldn't get an environment set up. After 10+ years I've never come across the install certificates command. There's still no way to get a dev environment with a specific version of Python working with one command that works reliably everywhere. pyenv isn't even packaged for Linux, you have to install from source. This, plus Typescript's superior type system makes it very tempting for application development. However I'll probably wait until there's a really good Jupyter Notebook equivalent...
- beiecuehdbdu 4y agoNo need to wait, there is a Javascript kernel for Jupyter Notebook: https://github.com/n-riesco/ijavascript https://github.com/n-riesco/ijavascript I used this for interactive debugging AWS API calls using the AWS Javascript SDK. It worked great!
- SiempreViernes 4y ago> However I'll probably wait until there's a really good Jupyter Notebook equivalent... Ha, take that Observable! >:)
- hot_gril 4y ago> There's still no way to get a dev environment with a specific version of Python working with one command that works reliably everywhere. Closest thing to this is Docker nowadays. It's so annoying. npm just works.
- roflyear 4y agoI don't mean this to be insulting, but I find it really strange that you find TypeScript more pleasant to use than Python!
- samwillis 4y agoOh, I wouldn't say TypeScript is more pleasant than Python, but it is more pleasant than old JavaScript. But I increasing precise the productivity I have with TypeScript and some of the ergonomics than Python. I still love Python. Just feel like I'm cheating on it with this new younger model...
- Ambix 4y ago> I haven't yet found a replacement for Django Take a look here https://adonisjs.com https://adonisjs.com
- hot_gril 4y agoSame. I analyzed a little why I find JS (I don't like TS) easier to deal with for some tasks: - Particular support for web frontends or backends, both very broad categories. - JS concurrency is easier to deal with. Focused entirely on promises with the nice async/await syntax on top, unlike Python which slapped on too many different ways to do this. - By far easier package management and imports. Python's is so annoying that any project you download is gonna have you spin up a Docker container for it. - ES6 added a lot of array/etc managing that JS was lacking before. - Freeform objects with {key: value} syntax are convenient, despite maybe seeming weird at first. Python OOP somehow got really complicated over the years. - Inline functions (I use fat-arrow but regular way is also fine). I never got why Python, despite being common in function-oriented programming, didn't let you do an inline def. - Curly braces. Indentation shouldn't affect logic flow. - No Python3 vs 2 drama. Specific use cases have been Express backends with node-postgres and lots of SQL, and React (or RN) frontends.
- jononomo 4y agoPython 3 vs 2 drama is from 5 years ago. It's just python 3 now.
- hot_gril 4y ago"Python 2 is unsupported by the Python Foundation since 2020-01-01" according to Debian docs. Ubuntu defaulted to Py2 until around then. So I'd say that's when the drama ended, then again it's probably not the last I've seen of Py2.