82 karma · joined December 28, 2020
In meanwhile I'll look into neovim and making its selection model more like in Helix. For me it's not about motion before verb... I can use visual mode etc.. but about having consistent advanced commands for refining multicursor selections like selecting in selection, searching in selection, spliting selection to even more cursors or collapsing touching selections into one etc.
But its lack of proper API and total lack of server-client model makes it just completely unusable. I've seen people trying to integrate it with their file browsers, file trees, terminal multiplexers or window managers but there is just no normal way to get data into a running Helix instance other than sending keypresses and absolutely no way to get data out of it except of reading its screen. Its basic premise is just absolutely horrible which is of course completely subjective.
Another dealbreakers for me are absence of a proper debug support, code outlines, memory views, variable watchers, registers views etc. for working with embedded (as in running on microcontrollers) Rust.
Learn to use obvious "entrypoints" first which are cmdline help, manpages, and official web documentation instead of searching the web first. Those TONS of tutorials about embedded rust are uninformative at best and actively harmful at worst.
If you plan to use Cortex M based microcontrollers then there is rtic.rs async framework / RTOS. It could teach even 95% C programmers how hopelessly underused/misused NVIC in those core usually are.
Then if you need drivers with bells and whistles there is another async framework / RTOS called embassy-rs but you can combine those drivers and subsystems with rtic.rs async engine.
EDIT: Don't imagine async engine on MCU as some costly abstraction. It's zero cost abstraction for embassy-rs when compared to traditional RTOSes and negative cost for rtic.rs since traditional RTOSes does not use dedicated hardware machinery for scheduling which is present in Cortex M cores.
Fortunatelly we have free market.
Quite recently there was a Soyuz with crippled cooling and the contingency plan for the American astronaut that came with it was to evacuate via Dragon if there was an emergency before new Soyuz arrived.
Original plain AFAIR was to use several Progress vehicles.
And going to graveyard orbit with something like ISS is not just a few whole times more difficult but at least an order of magnitude more.
I was hoping to get my hands on some functional DVI/HDMI controller. Well never mind, I'll wait.
In Rust you start by splitting peripheries to blocks, then to registers, then to register parts and distributes these (these are zero cost operations!) into irq handlers and tasks and the type systems will check that everything that need exclusive access has it .. that you do not use read-modify-write operation on a same register from two interrupts where one can preempt the other without using some guard as mutex.. while it perfectly allow you to do this with write-only registers without guard etc... it is just so nice to work with.
People who find it complicated and/or not worth it are usually doing either some rudimentary super duper easy stuff on architectures or OSes which does not have or utilize nested interrupts or they do it on some IOT like noncritical stuff where they don't give a s** (vs industrial machinery, drones, other vehicles..).
You can use derivations as (/ to represent) - packages - generated configuration files / settings - containers - whole OS images ... e.g. I'm building raspi SD card images using Nix.
Zig has been compiling to AVR targets sucessfully for a very long time.
Using writable rootfs goes against industry practices and is a disaster waiting to happen... like the one with emmc in Tesla's central panels.
Many times there is less than 50% chance that you buy a supported revision unless you go with things like Turris Omnia or Raspberry Pi..
Here many only have and use AC in their cars and only in peak summer and I remember there used to be warnings in TV news that you should turn off or start gradually decreasing AC intensity before arriving to your destination a getting of your car. (It was usually as a part of some interview with some GPs, discussing why are people getting more sick in peak summer.)
The logic analyzer itself, even the usage of cheap Pico in it is very cool.
But hey, put 'Raspberry' or 'Arduino' label on it and suddenly it's so new and innovative it makes me sick.