Hacker News new | ask | show | jobs
by PaulHoule 1735 days ago
I write all kinds of low-volume webapps (e.g. for my personal use) that I use for things like workflow applications, classifying objects and controlling IoT devices.

I think it is fun to do this with asyncio in Python, particularly building systems that (say) communicate in real time listening to websockets, AQMP and some other sockets at the same time.

Every team I've been on for the last 10 years or so has used the JVM (either Java, Scala, or Kotlin code) for the back end. The strength of the JVM is that it handles parallelism and concurrency. It doesn't just claim to exploit processors with a many cores, it really does. (Before that I worked on a C# project which is almost the same.)

Python, node.js and similar things don't have a good multicore story so they are not going to hold up to heavy use.

2 comments

It is worth keeping in mind that "every team I've been on..." is a bias. Your skillset on one team will drive your success getting hired on the next. I recommend that people find a tech stack that they enjoy, because you will be anchored to it until and unless you actively seek to move off of it in future jobs.
Sometimes I have done back end coding w/ the JVM in those jobs, sometimes I haven’t.
Interesting, thanks for the feedback. Didn't even consider the whole innate multicore support.
Erlang/Elixir do much better at utilizing all CPU cores effortlessly -- without you having to lift a finger. In Elixir's case just use the Phoenix framework and you get something that can serve 2000 requests per second on a $5 VPS host.
Thanks for the pointer! Will look into it