this post was submitted on 08 Sep 2024
35 points (92.7% liked)
Programming
17313 readers
625 users here now
Welcome to the main community in programming.dev! Feel free to post anything relating to programming here!
Cross posting is strongly encouraged in the instance. If you feel your post or another person's post makes sense in another community cross post into it.
Hope you enjoy the instance!
Rules
Rules
- Follow the programming.dev instance rules
- Keep content related to programming in some way
- If you're posting long videos try to add in some form of tldr for those who don't want to watch videos
Wormhole
Follow the wormhole through a path of communities [email protected]
founded 2 years ago
MODERATORS
you are viewing a single comment's thread
view the rest of the comments
view the rest of the comments
C.
C.
That said, Python and Rust are great for setting up "starting up" / "small task" apps and growing up from there.
There's nothing to really grow. It's mostly just small helpers. Aggregate sensor data, pull data from A and push it to B every hour, a small dashboard, etc.
C is too involved for my case , I want to be productive after all.
Rust is already rather low level, though there are some cool looking frameworks.
C is an extremely expressive language. There's a reason it won't die and, while we all love to shit on it for the memes, you can write perfectly safe software in it.
Of course, but I'm not productive in it.
If I have to do everything myself, it will take more time to get it done. The trade-off is of course always control/speed vs convenience, but C is definitely too inconvenient for me.
That's fair enough.
Yeah definitively sounds like even more support for Rust and/or Python in this sense.
I’d lean towards C# with AOT compilation if you’re not using reflection, you should be ok.
In the same way that you can safely walk through a minefield.
I dunno what you mean about it being an expressive language either. I would say it is relatively low on the expressiveness scale compared to something like Python or OCaml. It's basically as expensive as Go which is renowned for being unexpressive. Maybe you didn't mean "expressive".
If you've so far been able to do this stuff in Java, then presumably all your hardware has an OS and such and you don't need this, but a colleague has been having a lot of fun with Rust and proper embedded development.
It's very different from regular development, as you've got no OS, no filesystem, no memory allocations, no logging. It can most definitely be a pain.
But the guy always has the biggest grin on his face when he tells that he made a custom implementation of the CAN protocol (TCP is too complex for embedded 🙃) and that he had to integrate an LED to output error information and stuff like that. At the very least, it seems to be a lot less abstract, as you're working directly with the hardware.