and a deeply coupled integrated mess

No images? Click here

Library of the moment

luerl - Lua on Erlang
github | hex

By Robert Virding.

I have not had an excuse to use this yet. I've poked at it briefly to confirm I can use it from Elixir which seems to work fine.

Lua is generally used for scripting, commonly in games and such because it is easy to drop in, sandbox and make safe. This is something that is otherwise very hard to do on the BEAM. Any Erlang/Elixir code can wreak absolute havoc if it wants, creating and running new code, running code on other nodes in the cluster. If you want your users to be able to write limited snippets of code to execute within your app this is a strong contender.

Interestingly, if I've understood it right when the Erlang code runs some Lua it produces a new value as an output, the new state of the Lua program. This means you could run some code, then make copies and run different code-paths from that, or use it as staged snapshots for future runs. It seems very well designed to live inside the BEAM. I believe it runs entirely inside of Erlang and can be pre-empted by the schedulers and is entirely a participant in the BEAM runtime, compared to say a dirty scheduler NIF. I have no doubt that it is somewhat inefficient but it is certainly cool and interesting.

I think if you are needing to build something that is very customizable, sort of Salesforce style selling custom implementations of the thing, then this is one way to go that route on the BEAM.

Here is an example of a Lua program.

     

    Minimalism is seductive

    My fascination with computers and hacking grew out of the 80's aesthetics around computers and hacking. It was a lot of devices, cables and overt tech. My preferences have shifted around over time as I'm very sensitive to fashionable things, good and bad. But a mix of nostalgia and actual real loss hits me when I compare tech now and then.

    Take Ghost in the Shell concept art as a prime example. Scroll a good ways down and you should find interiors of vehicles with boxy computers and monitors (definitely CRT) and more cables than even an audio engineer would be comfortable with. Serial Experiments Lain doubled down on this aesthetic during particular parts. I have artbooks for both. This fashion statement computer is on my mind as it sketches a different path than computing has taken.

    More and more hardware is being folded in on itself into proprietary blobs of silicon. More and more of the device's affordances is being stripped away in favor of a touch screen, software. Proprietary largely impenetrable software integrated with proprietary firmware. You can't touch any of it.

    In computers there are some that are bucking the trend. Framework on the laptop end is doing a lot to modularize again. Oxide seems to be doing a lot of open source going into their servers (not for consumers). I hear 45 Drives are working on some interesting stuff for homelab folks. And then there are the idealist-end options like Purism, Pine64 and such where open, hackable and such are high on the agenda but the level of integration, reliability and so on is a work in progress. They do smartphones but not very well.

    Smartphones started the journey to the death of my aesthetic ideals. I don't expect that pendulum to truly swing very much towards my ideals again. The smartphone requires deep integration, for performance, for convenience. The iPhone lead the way towards aggressively minimalist devices and trying to offload all UI duties to software. Everyone followed. You can ship updates to software. You can impose your will with software.

    Cars, my induction stove top, thermostats, kiosks, they are all going towards slab-of-glass plus software. And as a software developer I guess that ensures I have work in the future but I hate it. My induction stove touch surface causes constant problems. A splash of water or misplaced hand can clear your timers, turn off all your surfaces and ruin your cooking.

    Professional production industries still seem to get that physical controls matter and that it actually feels more premium. The cameras I work with have thought-out physical controls I can operate by feel and memory. The audio interface I use has knobs which stop and start at min and max. There are still cables for pretty much everything because we all know wireless can't be trusted.

    I am one of those people that still want a physical keyboard with my phone. But I also want, maybe even need, my phone to not suck. I use it a lot, even in my work. The high-end has abandoned physical controls and it frustrates me to no end. I can be reasonably fast on a touch screen but I don't even try to operate them blind.

    Minimalism is seductive. I've considered trying to become one of those minimalists. Perhaps to align myself with what the world seems to want from a techie. Unfortunately I am fundamentally very much about human mess. Or I am a human mess. I think tech with knobs, cables and controls is more honest to humanity. We are mess. I can't be a minimalist, my kids won't let me. They instead remind me that every button requires pressing and every knob requires twisting. Every shirt requires a stain. Dirt is fun.

    Then again, my older kid figures out touchscreens like nobody's business. I may just be pining for the 80s. But the future looked cool back then.

    I feel like this was a mess. That's aligned with the message though so I'll go with it. I'd love to hear your thoughts on this stuff. Reply to this email or poke me on the fedi @lawik@fosstodon.org.

    Thanks for reading. I appreciate your attention.

     
     

    This is an email from Underjord, a swedish consultancy run by Lars Wikman.

    Everything else is found at underjord.io

    You signed up for this newsletter and confirmed the subscription. If you want to stop receiving it. Just use the link below.

    Preferences  |  Unsubscribe