https://clearmeasure.com/developers/forums/
Michael Perry is a Director at Improving Enterprises and a self-described "Software Mathematician" who has spent his career applying mathematical principles to software development, drawing on the foundational work of thinkers like Bertrand Meyer, James Rumbaugh, and Donald Knuth. He is the author of "The Art of Immutable Architecture" and the creator and maintainer of Jinaga, an open-source immutable runtime framework for building collaborative and distributed applications in .NET and JavaScript. A former seven-year Microsoft MVP, Michael has produced multiple Pluralsight courses covering CQRS, XAML Patterns, Cryptography, and Provable Code,and is a frequent speaker at developer conferences across the country. At Improving, he helps enterprise clients harness the power of immutable architecture and software mathematics to build scalable, robust systems.
Mentioned in this Episode
LinkedIn
Twitter / X (@michaellperry)Â
GitHubÂ
Personal Site
FactoryEngineering.dev roocode - plugin for VSCode - has subagentsÂ
Windsurf (AI Tool)
Want to Learn More?Â
Visit AzureDevOps.Show for show notes and additional episodes.
James and Frank dig into the messy world of AI agentsâClaudes, Copilots, âclawsââand why now is the wrong time to over-box these tools. They debate GUI vs. CLI futures, explain when AI should be invisible and baked into workflows, and warn about AI-produced âslopâ and long-term maintenance. Plus, Jamesâ Light Phone/e-ink experiment adds a practical take on simplicity and real-world tradeoffs.
ââ Review Us ââ
Machine transcription available on http://mergeconflict.fm
Links:
A scenario.
Here's another speculative scenario about the future of software in an increasingly hostile international environment.
It seems indisputable that the future of software development involves substantial use of LLMs. Some people experiment with vibe coding, but I find it more plausible that we'll see widespread use of LLM-based agents that produce code, with continuous, but superficial human supervision.
Can we trust those LLMs?
In other articles, I've discussed whether LLMs deserve our trust. The perspective in these articles have mostly been on the inherent non-determinism of these models, as well as their lack of 'understanding' of what it is that they do. The point I will make here, on the other hand, does not depend on assumptions of that kind. You may, if you will, imagine a future in which LLMs are far more reliable than today.
Even so, there's a fundamental aspect of the ecosystem that most developer-cum-futurists seem to ignore. The current systems, operated by companies like OpenAI and Anthropic, run with colossal deficits. While their valuations are measured in billions of dollars, they are losing money every year.
This implies that the way agentic software development works today isn't representative of future directions. But even if today's systems are too inexpensive to last, my social media feed regularly showcases examples of what can best be termed token angst: the dread of running out of tokens.
Investors ultimately want return on investment. While the AI companies currently run on deficits, they can't keep doing that. Sooner or later, they'll either turn a profit or go out of business. How will they generate profit?
There's been some talk of 'showing ads' in chatbots, but that isn't compatible with agent mode. If no-one is looking at the output of an LLM, then ads are an unlikely revenue stream. Perhaps my imagination is poor, but the most realistic scenario is coding agents as paid services. You buy a subscription with a token budget, or alternatively, you pay for tokens as you use them.
This suggests that in the future, price is going to be a competitive factor. You may decide to use Company X for agentic coding, rather than Company Y, because Company X is less expensive.
For practical purposes, today's AI companies are American. It'd be naive to think that it will stay that way. When a technology becomes sufficiently strategically important, other states subsidize national enterprises to catch up. To Silicon Valley ears, this may sound derivative and unfit for competition, but such a strategy can work. Historical evidence exists.
You can find examples in another capital-intensive industry, aviation. Airbus probably wouldn't exist without European governments taking an active interest. And I find it fair to argue that Airbus is currently doing better than their main competitor in civil aviation.
Other aviation-related examples may be found with certain airlines that operate out of resource-rich countries. Air fare is surprisingly cheap, while service is top-notch.
In other industries, Chinese electric cars are, too, notably less expensive than competitors. Even if you're a dyed-in-the-wool liberal capitalist believing in competition and free markets, current world trends are moving away from that. We see increasing protectionism and focus on reshoring strategic manufacturing capabilities.
Subsidized AI companies will exist, too.
Most of the modern information infrastructure has turned out to be porous. Even though top companies are American, adversarial state actors use social-media platforms to wage information warfare. I'd be surprised if something similar doesn't happen to LLM systems.
Granted, some clandestine way of injecting data directly into American LLMs seems difficult. What state actors can do, however, is to offer alternative, subsidized systems. Use this new LLM-based coding service: It's much cheaper than the one you currently use!
You may counter that you'd never use a Chinese, Russian, or pick-your-own-enemy LLM system. But some people and organizations are more price-sensitive than security-conscious. Besides, a dismissal of this scenario assumes that ownership is transparent.
An adversarial state actor could set up a shell company in your country, while keeping technical control. Much evidence seems to indicate that a major video-reel-serving app company already works that way, and although that example is not exclusively related to generative AI, I'm sure that you can extrapolate.
Once a foreign state establishes such a clandestine beachhead, it can use it in several ways. It can passively spy on users' code bases (and other content), and it can actively inject backdoors, viruses, etc. into customers' code bases. If that sounds far-fetched, you may not have heard about the xz utils backdoor. Such attempts are already being made.
What can you do to avoid this risk?
You may consider only using systems of known origin. You may decide to stick to OpenAI, Anthropic, or other American companies. Perhaps, but I think that you should consider at least two things. The first is that, as already covered, these companies run huge deficits. Where do the money come from? Investors, you say? Indeed, but which investors? Is it conceivable that some of the investors are already, through chains of shell companies, controlled by foreign governments? And if not now, then in the future?
The second consideration is whether you should consider a US-controlled company benign or hostile. If you work in the US, then you probably consider the US government to be the good guys. Over here in Europe, we used to think that, too, but currently, we are not so sure.
You may, then, think of another countermeasure: Buy hardware powerful enough for in-house LLM hosting. This might be a viable option for some organisations, particularly because continued advancements in both hardware and software will make this increasingly feasible. Still, where are you going to get the LLM?
A few organizations are big enough that they may be able to train their own LLM, but most are not. They'll need to use a copy of an existing LLM. In that case, we're back to the issue of trust. Where do you get the LLM, and why do you trust it?
To be clear, you can't 'review the LLM code'. It's a system trained on massive data sets, the result of which is billions or trillions of weights (i.e. numbers). All you can do is trust it. That said, since training of these systems is a non-deterministic process, you could argue that adversaries can't train malign behaviour into them either. If systems come with spyware, it's more likely that it's embedded in the code that surrounds the model itself. Thus, you could, theoretically, review that part of the system. You'll probably not get the source code, however, so your review would have to be of the machine code. I don't find that realistic.
What can you do to protect yourself against such threats?
Some of these are more problematic than others. When you give a third party access to your source code, there's ultimately no way to detect if the third party takes a copy of all the code. Pragmatically, you either have to trust that third party enough, or else behave as though you had already made your code base open source (which there are other good reasons to do, in many contexts).
It's possible that research into zero-knowledge proofs could help address such issues, but this is not something I know much about, so perhaps I only display my ignorance.
The other large problem is whether adversarial LLMs may inject malicious code into your code base, installing backdoors, spyware, or similar. This threat seems more tractable: Treat your code base as if it was open source, and each contribution as a drive-by pull request that requires rigorous scrutiny. We're back to the discussion about trust in software development. As I've previously discussed, you can't even trust yourself to write code without errors, perhaps you can't trust your colleagues either, and I don't think it's wise to trust LLMs to write code.
Fortunately, we have decades of experience in making software development a safe and manageable process. Parts of Code That Fits in Your Head are about working together as a team, and how to ensure that you ship quality software. Treat LLMs as randos on the internet submitting pull requests to your open-source project, and review accordingly.
"But Mark, the LLMs produce code much faster than we can review it." Yes, I know. You are the bottleneck. You and your brain. It was always like this. Typing was never the bottleneck, although it's embarrassing so quickly the industry seems to forget that.
The economics of AI companies in early 2026 seem unsustainable. In the future, these services will become more expensive; perhaps to a degree where price becomes a competitive advantage. If that happens, adversarial state actors might set up and subsidize shell companies that run LLM-based coding services at more attractive prices than competitors.
Once such companies have customers of interest, they can spy on the source code, and plant backdoors and spyware into code bases.
This is just one of many reasons to be wary of AI-generated source code.
In this post, we explore how to write first and last lines â with examples. Weâve created a quick start guide to writing first and last lines.
Read the other posts in our Quick Start series:
Before we start â BIG SPOILER ALERT!
Right, now thatâs out the way, letâs begin. Your first line, or lines, are the key that unlocks the door to the world of your book. Your last line, or lines, are the ones that keep readers hooked on you as an author. You want readers to remember those lines forever, not just as head knowledge, but with a shiver of emotion, one of delight or unease, or even sorrow. The lines need to be more than good. They need to be legendary. They set the tone of your whole book.
Here are three ways to write legendary first and last lines.
Writing Tip: Your first line, whether it is a question, a statement, or a description should start by leading the reader in one comforting emotional direction. Add a phrase or a detail that seems to veer off into the opposite emotion. For the last line of the book write a statement of line of dialogue that reveals that the unease the reader felt was justified.
Goal: Your reader needs to feel that shiver of uncertainty at first, and then have it confirmed in the last line, or deepen the doubt the reader has been carrying about the main character or situation.
Example: Peter And Wendy by JM Barrie
First line: ‘All children, except one, grow up.’
Last line: ‘When Margaret grows up she will have a daughter, who is to be Peterâs mother in turn: and thus it will go on, so long as children are gay and innocent and heartless.’
Explanation: The phrase, âexcept oneâ, gives the reader a sense of unease. Does the author mean physically, emotionally, intellectually, or morally? The last word of the book answers that question. Peter Pan was heartless. Throughout the book – which despite what Disney would have us believe, is not a tale of children having fun and fighting pirates on a magical island – there is this sense of unease when it comes to Peter Pan himself. The real story is about kidnapping, abuse, Stockholm syndrome, murder, misogyny, jealousy, unresolved personal or intergenerational trauma, and violence. And both the first and last lines bracket that story. Peter Pan wasnât the hero. He was the villain.
Examples: The Hunger Games by Suzanne Collins and White Oleander
 by Janet Fitch have beginnings and endings that fit into option 1. Read more here: How To Write A Beginning And An Ending That Readers Will Never Forget
Writing Tip: Once youâve written your book, go back and rewrite the opening and closing lines. Play with tenses, mix them up, write future events as if they are in the past. Echo your end at the beginning and your beginning at the end, as well as hinting at your plot in the end. Work on being subtle, rather than on-the-nose.
Goal: You want your reader to feel off-balance. Du Maurier does this by using the dream motif (but please, for the love of Shakespeare, donât write a whole book that turns out to be one entire dream sequence!) and by moving the reader around in time before settling in the past to tell the story. Keeping your reader off-balance compels them to read more.
Example 1: Rebecca by Daphne Du Maurier
First Lines: ‘Last night I dreamt I went to Manderley again. It seemed to me I stood by the gate leading to the drive, and for a while I could not enter, for the way was barred to meâŚNo smoke came from the chimney.’
Last lines: ‘The road to Manderley lay ahead. There was no moon. The sky above our heads was inky black. But the sky on the horizon was not dark at all. It was shot with crimson, like a splash of blood. And the ashes blew towards us with the salt wind from the sea.’
Explanation: The author drops the reader into three different time zones in the first line. We donât really know where we are in the story to begin with. âLast nightâ is the recent past, âdreamâ is timeless, âagainâ is the distant past, but the speaker is in the present. Chapter 1 continues in the timeless dream that occurred in the recent past. Chapter 2 is the present. Chapter 3 onwards is the past. This time disruption leaves the reader wanting to know more. What is Manderley? Why was the gate locked against her? Why was the place uninhabited. You want to read more. The first lines set up the sense of being off-balance, and of the narrator always being on the outside. Which is her experience throughout the book. She may be married to Maxim de Winter but she never seems to quite unlock his heart, his secrets, or Mrs Danversâ approval etc.
The book begins in darkness and ends in darkness. In the start there is no smoke, in the end there is smoke, fire, and ash. At first, she is locked out and the place is abandoned, in the end it is destroyed and uninhabitable ever again. All her dreams for her future have turned to ash. The description of the sky is a reflection of one of the most important two scenes in the book; the shot, the crimson splash of blood, and the salt wind from the sea that reveals the boat in which Rebeccaâs body is found. The plot hinges on these.
Example 2: Titus Groan by Meryn Peake.Â
First line: ‘Gormenghast, that is the main massing of the original stone, taken by itself would have displayed a certain ponderous architectural quality were it possible to have ignored the circumfusion of those mean dwellings that swarmed like an epidemic around its outer walls.’
Last lines: ‘Through honeycombs of stone would now be wandering the passions in their clay. There would be tears and there would be strange laughter. Fierce births and deaths beneath umbrageous ceilings. And dreams, and violence, and disenchantment. And there shall be a flame-green daybreak soon. And love itself will cry for insurrection! For tomorrow is also a day â and Titus has entered his stronghold.’
Explanation: In this case, the messing with time, especially in terms of the plot that has already happened and will happen again, takes place in the last line. These two lines also reveal that inanimate objects have just as much power as people if you write it well.
Writing Tip: Find that one emotion or experience that your main character has that is a universal one and write it as if itâs a personal confession from your main character. Think of things such as an event like a birth, death, first date, first day on the job, first rejection, a habit, a failing, a dream unfulfilled, a character flaw. It could be something as simple as your character once again forgetting to take shopping bags with her to the store.
Goal: If you want your reader to immediately identify with your main character, writing a line like, âI met Karl Marx when I was sixteen in Parisâ, isnât going to do that.
Example 1: Back When We Were Grownups by Anne Tyler
First Line: ‘Once upon a time, there was a woman who discovered she had turned into the wrong person.’
Last Line: ‘There is no true life. Your true life is the one you end up with, whatever it may be. You just do the best you can with what you’ve got.’
Explanation: Donât we all, at some point, feel as if we were meant to be someone else? Someone better, different, rich, famous? Or maybe we feel we âcoulda been a contenderâ if only someone, something etc., had or hadnât happened. Donât we all make plans and then fail at them?
Example 2: Bridget Jonesâs Diary by Helen Fielding
First line: ‘1. Stop smoking. 2. Develop a mature relationship with an adult man. 3. Go to the gym. 4. Be kinder and help others more. Sunday 1 January Weight 9st 3, alcohol units 14, cigarettes 22, calories 5424.’
Last line: ‘An excellent yearâs progress.’ (Whited out)
Explanation: This is what is known as a âuniversal personalâ. Itâs utterly relatable experience, or emotion to nearly everyone on the planet. Your reader will immediately feel as if they know your main character personally. In a sense they do.
Additional Reading:
Writing first and last lines often need more thought and care than the rest of the book â if you want them to be legendary. If youâd like to learn how to write a great book, sign up for one of the rich and in-depth courses that Writers Write offers and get your writing career off to a great start.

by Elaine Dodge. Author of The Harcourts of Canada series and The Device Hunter, Elaine trained as a graphic designer, then worked in design, advertising, and broadcast television. She now creates content, mostly in written form, including ghost writing business books, for clients across the globe, but would much rather be drafting her books and short stories.
The post A Quick Start Guide To Writing First & Last Lines appeared first on Writers Write.