TIL: Cognitohazards

TIL: Cognitohazards

Could social media posts be actively damaging to our mental health? – literally, not just figuratively? That’s the premise of a TechScape article in The Guardian, that draws on both science fiction and psychological research.

In Neal Stephenson’s “Snow crash” there is a plot device of an image in a metaverse that, when viewed, crashes the viewer’s brain. We haven’t seen this in social media (yet), but there’s an increasing concern about deepfake images and other forms of misinformation. Research suggests that such images are damaging even if viewers know that they’re fakes, which suggests that techniques like content-labelling images as AI-generated are insufficient to remove their harm. Other examples include massively engaging artificial images such as the “pong wars” animation of two simultaneous “Breakout” games going on between two algorithms: something that shouldn’t be as engaging as it is (as I can attest to myself).

Social media attention grabbing at an industrial scale might therefore constitute a cognitohazard, a way of hacking people’s brains simply by being viewed.

Loving Common Lisp, or the savvy programmer’s secret weapon

Loving Common Lisp, or the savvy programmer’s secret weapon

nil

Mark Watson. Loving Common Lisp, or the Savvy Programmer’s Secret Weapon. Leanpub. 2023.

While pitched as a way of sharing the author’s enthusiasm for Lisp (which really shines through), this book is really a deep demonstration in using Lisp in modern applications – from web APIs and the semantic web to deep learning, large language models, and chatbots.

In some ways, like many other Lisp books, it’s really two books in one. The first chapters are introductory – and to be perfectly honest could be dispensed with, as they’re inadequate as a proper introduction and there are far better introductions out there. The later chapters focus on applications, and provide the real value. One could criticise them as often tying-together tools in other languages, with the Lisp code basically being glue; but that’s a very effective way of leveraging all the code and services out there, and is an important technique for Lisp programmers too.

Lisp in space

Lisp in space

Lisp in space (podcast, 38 minutes)

An interview on the Corecursive podcast with Ron Garret.

In 1988 (when, for context, I was in the second year of my BSc) Garret started working on autonomous navigation software for Sojourner, NASA’s first Mars rover, which flew in 1997. He used Lisp to do planning, essentially developing an entire domain-specific language for autonomous vehicles. The project was never flown, as NASA opted for a far less ambitious approach to driving to rovers – a decision that Garret now considers to have been the correct one.

But that isn’t the end of the story, because Garret then went on to develop an autonomous Remote Agent controller for the Deep Space 1 technology demonstration mission that performed asteroid and comet fly-bys. Without spoiling to story, the spacecraft flies with a full Lisp system onboard, and Garret gets to interact with its REPL at a distance of 30 light-minutes via the Deep Space Network – surely the longest latency of any REPL session ever!

It’s an fascinating insight into both the potentials of Lisp and the political difficulties that using a non-standard development language can engender.

Lisp hackers: Interviews with 100x more productive programmers

Lisp hackers: Interviews with 100x more productive programmers

nil

Vsevolod Dyomkin. Lisp Hackers: Interviews with 100x More Productive Programmers. Leanpub. 2013.

I’m not convinced by the sub-title: at the very least, there’s no evidence to support the claim that Lisp programmers really are hundreds of time more productive. But there are some serious insights here from individuals who’ve made serious contributions to the Lisp world – and beyond. The contributions all take the form of email interviews consisting of a standard prelude of questions (how did you discover Lisp?, do you use it at work?) followed by a couple of questions tailored to the interviewee.

The practitioners selected have all been affected by Lisp, either in terms of it changing their own thought processes, or by helping to develop the core ecosystem, or by applying Lisp to real-world problems, and often to great effect. My favourite was the discussion with someone who was using Common Lisp to develop low-latency network routing for financial services: it’s hard to think of a better example of Lisp’s power and range.

My Lisp experiences and the development of GNU Emacs

My Lisp experiences and the development of GNU Emacs

My Lisp Experiences and the Development of GNU Emacs

The never-dull Richard Stallman talks about his experiences with Lisp and with the development of Emacs. It’s got some useful observations on why Lisp became the core of Emacs: it was news to me that this hadn’t always been the case. It started with an “editor control” language in the spirit of editors like ed. But as people wanted more support from their editor, they wanted to program it more effectively.

The language that you build your extensions on shouldn’t be thought of as a programming language in afterthought; it should be designed as a programming language. In fact, we discovered that the best programming language for that purpose was Lisp.

The result was a re-write of Emacs in C (for portability), with a Lisp interpreter specialised towards editing tasks.

He then gives an insider’s perspective on the Lisp machines and their evolution, as well as revealing the genesis of his ideas for the free software movement. While these are interesting to read, it should be noted that much of it has been rebutted: his description of the formation and later history of the two spin-outs, Symbolics and Lisp Machines Inc, is strongly disputed by Dan Weinreb on his blog.)