Hard imagining well designed web app bottlenecked by server-side processing that is not offloaded to database, or done via bindings to libraries written in compiled languages.
I would first blame the programmers, the design and lack of specialty offloading before blaming any programming language. Well designed web calls scale nearly linearly with usage and usually poor design or programming is the source of slowness. You can always trade language complexity for speed but assuming it is the cause of all perceived slowness is a poor man's view.
It is the same story every time again, first it was java, which has so many large scale projects most people won't even know it's running things they use, now it's apparently python who is to blame for all slowness on the web. When the next JIT or scripted language comes along which is not someone's favourite pet that will get the blame.
Python is slow, though, and so was java compared to other compiled languages of its time. Sure, it might not matter much if you're mostly doing database calls. If you're not, though, then yes, it's the languages fault if your app is slow. You can try to make it faster, but it's gonna be marginal gains. Or, you could just switch to another language and get a 100x speedup for free.
I also denounce the notion that trading language complexity for slowness is the case. Python is already complex, and there's some language and frameworks that are actually quite a bit easier to use for web backends. Like java, or dotnet. It just makes no sense to use python for this usecase, even if you ignore the slowness.
But that's not completely true, there is one very good reason to use python. Your devs know it. But, that doesnt say anything about the language itself.
Is this not a discussion about a web application? Order of magnitude matters. If Python is slower than Rust by 2 orders, but faster than IO by another 2 orders, are you not haggling just to shave off a few dimes on your 100 dollar bill?
You say it hasn't saved you any time because you're doing more work now - e.g. documentation. I would say that's being pedantic, but I guess the expectations shift with it, so in practice, you can't just maintain your old output level and reclaim the saved time.
I haven't seen our roadmap accelerate because of AI. I'm sure, given time, having the P2s like documentation and prototyping in place will yield dividends. But I still can't imagine even doubling our rate of progress.
I am in an area that is bottlenecked on many things besides writing the code. Testing requires physical devices and realtime execution. So having the code 10x faster is little difference when the other processes take most of the time.
Having a family solves this issue nicely. I have a wife and five kids, and none of us are lonely because we have each other. It's one of the choices I made in life that I am most grateful for.
There's also a 50% chance he will not have that company at some point in his life, and will become part of the loneliness epidemic, which for some reason he's not taking into account.
One thing I would add to this site is to avoid seed oils like the plague. PUFA is in almost everything that is processed, and it absolutely wrecks havoc on your metabolism.
I tried the latest nightly release AppImage on Fedora 43 and got a nice undefined symbol error:
/usr/lib64/gio/modules/libdconfsettings.so: undefined symbol: g_assertion_message_cmpint
Failed to load module: /usr/lib64/gio/modules/libdconfsettings.so
/usr/lib64/gvfs/libgvfscommon.so: undefined symbol: g_task_set_static_name
Failed to load module: /usr/lib64/gio/modules/libgvfsdbus.so
So I tried out the container version with podman and that worked. I am familiar with Emacs, so some things were natural to me. I like Lem quite a bit. But to really drive with it, I need:
- Solid LSP support
- Project scoped buffer switching/searching
- Great vim keybinding support (this seems to have improved since last I tried lem years ago)
- Tree-sitter support for the languages I care about.
According to the website, LSP support is still a WIP. I didn't want to go through the hassle of testing it out in the docker container. From what I can tell, there is no project scoping for buffers, but I might be wrong.
All in all, a big improvement from a few years ago when I last tried it!
Hello, yes there's project scoping: https://lem-project.github.io/usage/usage/#project-commands (added by yours truly, which was easy thanks to Lem's quality code base). I find the vim layer excellent, you can open an issue if you find obvious things missing.
I'll take my sprawling suburb with a big yard to grow ample food any day over a densely populated and carefully planned cityscape. With the advent of cheaper solar panels and electric vehicles, it's not a big issue.
Depends which ones. Python? Definitely a source of slowness.
reply