Pre-order the print edition of Out of the Software Crisis
You can pre-order the print edition of Out of the Software Crisis, which should be released 7 November 2023 (or thereabouts).
Pre-orders get a $10 USD discount.
I’ve had a lot of fun working on this. Hopefully that’ll come through in the final product.
Web Dev Work
I’m continuing to prepare my web course on test-driven web dev. (You can sign up to get notified when it’s ready.)
As a part of that work I had a go at condensing core parts of it into a blog post. I’m on the fence as to how well it worked but you can see for yourself:
I don’t regret having written and published The Intelligence Illusion but it’s becoming clearer and clearer that doing so came at a price.
Not in terms of the book being a flop. It did well, all things considered. Not quite as well as Out of the Software Crisis but it’s clearly been helpful to people.
The opportunity cost, however, has been enormous. This becomes obvious whenever I write or publish anything that’s more concretely related to software development proper. Considering the difference in how well the two topics convert to consultancy opportunities, training or teaching gigs, and book sales, my conservative estimate is that taking all that time to research, write, publish, and promote a book that was critical of generative “AI” probably halved my income for the year, and that’s taking into account just how slow the year has been because of the layoffs in the tech industry.
It’s honestly been brutal and it’ll probably take me a few years to recover financially from having published a moderately successful book on “AI” because it doesn’t have any of the opportunity multipliers that other topics have.
What makes it all a little bit more painful is that hasn’t really changed anybody’s mind.
It’s disheartening to see people who know me well, say they like the book, say they trust my judgement, and then go and do pretty much the opposite of what I recommend.
The book has definitely been used to bolster people’s argument against using generative models at work or in a project – I’m glad that it’s been helpful that way – but I honestly don’t think it’s changed anybody’s mind, except for a few rare people who were on the fence and only needed a nudge to see the risks.
It’s a screen capture of a chatbot conversation where the chatbot has been asked to identify who is wearing a watch in a photograph. It gets it wrong and corrects it when prompted, which does give you the illusion of an imperfect intelligence. “See? It made a mistake and corrected it! If that isn’t intelligence then I don’t know what is.”
The problem is that it keeps changing its answer whenever prompted. The conversation reveals that it doesn’t actually have any intelligence whatsoever, it’s merely a system for delivering validation statements that give the impression of intelligence, a tactic that seems to be an artefact of how these systems are fine-tuned.
I covered this specific tactic in an essay titled “The LLMentalist Effect: how chat-based Large Language Models replicate the mechanisms of a psychic’s con”.
The “intelligence” presented by these systems is pretty much a con.
People who want to use it will still use it. People who don’t want to use it won’t. Nothing I do seems to matter in shifting people from the “use” side to “won’t use”, and even if it did, I would still have been better off focusing on software development topics proper.
Software dev and tech links
- "Narrative - You’re All Set: Casual Language, Embedded Advertising, And The Decline Of Human-Centered Design"
- "Pixels of the Week – October 22, 2023 by Stéphanie Walter - UX Researcher & Designer.“
- I published "How do you even web dev without node? A quick introduction to test-driven web development using just the browser"
- "Okta stock falls after company says client files accessed by hackers via support system". Rolling your own auth is hard. OTOH centralised auth service make for extremely attractive targets for motivated hackers.
- "Meta in Myanmar (full series) - Erin Kissane’s small internet website"
- "P&B: Jim Nielsen – Manu"
- "People and Blogs and Me - Jim Nielsen’s Blog"
- "Ten Things I’ve Learned - Milton Glaser". PDF warning.
- "Good is the enemy of the great. - Airbag Industries"
- "I’m banned for life from advertising on Meta. Because I teach Python. — Reuven Lerner"
- "Don’t build your castle in other people’s kingdoms". Old post but evergreen advice.
- "Why can’t our tech billionaires learn anything new?“. “These are anti-democratic fascists, of the sort that dip pretty quickly into eugenicist and ethnonationalist fantasies. If you’re curious who Andreessen views as helpful fellow travelers, he sure ain’t hiding it.”
- "Visual Studio Code is designed to fracture". A fairly convincing argument that VS Code is a mechanism for making open source communities dependent on MS.
- "Web performance and parallel vs. waterfall downloads | Go Make Things". IMO bundling, for standard JS, is a performance optimisation and you all know what they say about premature optimisation.
- "Does working from home damage productivity? Just look at the data. | The Hill"
- '“Massive” | everything changes'
- "Unless Explicitly Specified Otherwise, Open Source Software With Users Carries Moral Obligations". This is true and it’s also one of the reasons why OSS maintainers burn out.
- "I Will Fucking Haymaker You If You Mention Agile Again". “Which absolute fucking maniac in this room decided that the most sensible thing to do in a culture where everyone has way too many meetings was schedule recurring meetings every day?”
As I wrote about last week, I’ve been re-watching some of David Lynch’s work and that has led me to think a lot about subtext and how that can lead to multiple conflicting readings of a creative work that are all equally valid.
Knowing that subtext exists also leads many to misread anything that isn’t outright exposition as subtext that needs to be interpreted. For example, that the mindlessness of Romero’s zombies is a commentary on how we amble through life as consumers isn’t subtext: it’s so overtly a part of the text that the plot of many of his movies explicitly hinge on the idea. Any reading that omits this aspect of the movies is almost certainly misreading them.
This is important because David Lynch is simultaneously the most subtle and unsubtle filmmaker you’re likely to encounter.
Take Wild at Heart. The Wizard of Oz parallels are not subtext. They are hammer-in-the-face obvious text, ranging from overt hallucinations of wicked and good witches, slow pans over a pair of shoes that are in the exact wicked witch style, as well as a picture of the “wicked witch” beginning to melt after water is splashed on it.
Blue Velvet is similarly unsubtle about the symbolism of robins eating up the insects and vermin of the town.
In many of his movies David Lynch seems to delight in explicitly showing what other filmmakers would only hint at.
This is what makes him a remarkably unsubtle filmmaker, of a kind with David Cronenberg.
The other side of David Lynch is how subjective and surreal his movies are. Wild at Heart, Twin Peaks: Fire Walk With Me, Lost Highway, and Mulholland Drive are all so subjective that you have no narrative assurances of reality at all. All you know is that this is what the characters felt and maybe experienced.
Contrast this with Abel Ferrara’s King of New York which uses audio, camera positioning, and editing to give the story as much of the trappings of “realism” as you can get without doing a fake documentary or going full “Dogme 95”. (Predating Dogme by a full five years might have something to do with it.) King of New York isn’t a particularly good movie, but it is interesting in that few movies before it married that style of presentational realism with the subject matter as well as it did.
It is also the stylistic opposite of anything David Lynch generally does.
One of the effects of the subjectivity is that a lot gets omitted from the story. Things get unsaid which demands interpretation. Questions have no answer because the characters have none. This can make for stories that feel nuanced, symbolic, and deep, but after re-watching most of Lynch’s movies, I’m not convinced that this is earned.
The first reason being that his movies tend to be so incredibly creepy – and I don’t mean that in the positive “wow that horror movie is unnerving” way. His movies are unnerving, often expertly so, but they are also creepy in a “middle-aged man creeps on naked women” way and in how most of his movies have rape or prostitution as running themes.
Because of the age of the actors, it’s easy to forget that the women in Twin Peaks: Fire Walk With Me are all supposed to be high school students. Kyle MacLachlan’s character in Blue Velvet is an outright abusive creep who doesn’t deserve Laura Dern’s character in any way. Nicolas Cage’s character in Wild at Heart is a violent sociopath who doesn’t deserve Laura Dern’s character in any way, supposedly redeemed by a momentary willingness to walk away from her.
Also, I had forgotten just how juvenile and immature Wild at Heart is. I get that this is the point of the movie. The characters are explicitly portrayed as immature youths – take the scene where they jump out of the car to dance – but, because of the extreme subjectivity of the movie’s style, that immaturity suffuses every frame of the movie to the point of being distracting. For example, the scene with the crime lord who takes a phone call with naked women posed like dolls around him.
Blue Velvet and Fire Walk With Me share that same immaturity, albeit to a slightly lesser degree.
This is a bit surprising once you realise that David Lynch was in his forties when he made these movies. Lynch did eventually seem to lose interest (somewhat) in naked college or high school students with Lost Highway and Mulholland Drive and I find those movies to be much more interesting than his earlier ones.
Ever since it came out, Mulholland Drive has always been my favourite David Lynch movie. Partly because of the queer protagonists (I can’t help but grade queer movies on a curve). Partly because it is, from my perspective, one of the more straightforward of his movies.
The central climax of the movie is when the protagonists witness a performance continue after the singer has collapsed, as if she was still there. The central performer does not need to be alive for the performance to continue:
No hay banda! There is no band! Il n’est pas de orquestra! This is all… a tape-recording. No hay banda! And yet we hear a band. If we want to hear a clarinette… listen. Un trombon “à coulisse”. Un trombon “con sordina”. Sient le son du trombon in sourdine. Hear le son… and mute it… drop it. It’s all recorded. No hay banda!
The protagonists respond to this as if they have had a horrifying, life-altering, revelation, and the rest of the movie is an almost inevitable sequence of events from that point. It is very well played.
Like I said earlier, David Lynch is not a particularly subtle filmmaker about the symbolism he puts in his movies.
This movie always worked for me because – in addition to queer protagonists, which is always of interest – it did a great job of illustrating the destructive creepiness of Hollywood’s artificiality.
The problem with that is that if you watch a few Lynch movies in a row, it starts to look like David Lynch himself is a big contributor to said destructive creepiness of the industry and that undermines the movie. What works as an individual work is lessened once it’s a part of a body of work.
With the Twin Peaks revival series, Lynch seems to have changed the tone he uses in his work again and I’m not sure that I’m on board. I was a big fan of the original series, spent much too much time diving into the lore and backstory of it, but the new series just left me cold.
I didn’t even manage to finish the first episode.
I’ll have another go at it at some point.