2,777 karma · joined July 31, 2013
In terms of hardware, I can highly recommend Tinkerforge [1]. They support a wide range of sensors and actuators and can be controlled either via USB from a computer (all major platforms and many programming languages supported) or, for standalone devices, with an ESP32-based base-board called ESP32 Brick or ESP32 Ethernet Brick.
Since their products are open source (code AND schematics!) a design can be easily transferred to a custom PCB once the design is working.
Add either a web interface (native on the ESP32 or on your host computer if using a USB brick) or slap on a DearImgui frontend, and you have very powerful prototyping platform at your hands.
In all honesty, I find myself using the old T450s with a fat battery pack from Aliexpress more often than my new glass cannon T14s.
Images as illustrations in the code:
Yeah, sure, it would be nice to have the Vitruvian Man in the code, but it's also nice to be able to re-open your text file in 5 years, when development on the IDE has stopped and it no longer runs on current operating systems. Also, animations would be hugely distracting.
Code cells:
With jupyter and spyder I have been bitten by lingering obsolete state from re-running cells or code blocks various time. I find the program much easier to debug if it runs on a clean slate and builds all the state from scratch. If building state takes long, I try to cache, save it to disk, and go from there.
Nonetheless, an interesting perspective.
I enjoy clowning around and joking in personal interactions (if appropriate) and used to do it in my writing, but have come to believe that the humble, dry, concise style of the works mentioned above is most suitable and clearest for technical writing addressed to an unknown audience.
Tangentially related, I have recently become aware of a sound similar to a bag of potato chips being crushed coming from the rear wheel of my mountain bike. Closer inspection showed that the rear wheel hub exhibited an unwanted additional degree of freedom with respect to the rest of the wheel. The hub was able to be moved slightly back and forth radially. "An excuse to get my hands dirty, and an easy fix", I thought foolishly -- it is only mechanics, after all, nothing that will not surrender immediately to the agile mind and nimble hands of a computer programmer! Fast forward 300$ in tools of and 4 weeks of attempts to fix this, which typically resulted in the purchase of a new specialized tool, and the bike runs again. I learned more than I had hoped about the vast number of very small metal balls that reside in a modern freewheel hub, and it was a good lecture in humility.
I wonder how that is going to work the restricted memory and no virtual memory (making e.g. `fork` and dynamic memory allocation unsuitable).
That is a little bit too simplistic, isn't it? First, there was political instability before social media. Second, it seems that a lot of people are dissatisfied with how things are going, which is of little surprise given huge wealth inequality and a general rise in totalitarianism and authoritarianism all over the world.
The sentence also carries the connotation that political instability is inherently bad, hinting that the status quo cannot be improved. I'd argue against that - sometimes it's good to show the ruling class that they will not get away with everything and are being held accountable by the people whose fate they decide.