Sr. Content Developer at Microsoft, working remotely in PA, TechBash conference organizer, former Microsoft MVP, Husband, Dad and Geek.
151561 stories
·
33 followers

Podcast: How valuable are agent skills? Conversation with Larah Vasquez and Fabrizio Ferri-Benedetti

1 Share
In this podcast, I chat with Larah Vasquez and Fabrizio Ferri-Benedetti about using skills to extend AI capabilities, the future of agentic engineering, local models like Qwen and Gemma, and whether the tech writer role is shifting into automation architecture. We get into the memory problem in LLMs (and why some of us actually prefer the no memory to extended memory), the progression from prompt engineering to context engineering to compound engineering to orchestrating whole agent systems, and how skills are quietly forcing engineers to write down knowledge they'd never documented before.

Read the whole story
alvinashcraft
15 minutes ago
reply
Pennsylvania, USA
Share this story
Delete

Who Created That Service Principal? Tracing It Back with Microsoft Graph

1 Share
As with previous posts, all source code and a corresponding GitHub repository can be found here ! This is one of those questions that seems like it should have a straightforward answer, but it doesn't because what good fun would that be if there were a straightforward answer? I'm sure you've been here before: someone spots an enterprise application in Microsoft Entra ID, notices it has permissions or credentials attached, and naturally asks: who created this thing? If you start digging...

Read the whole story
alvinashcraft
15 minutes ago
reply
Pennsylvania, USA
Share this story
Delete

Michael Perry: AI-assisted Development - Episode 397

1 Share

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.





Download audio: https://traffic.libsyn.com/clean/secure/azuredevops/Episode_397.mp3?dest-id=768873
Read the whole story
alvinashcraft
15 minutes ago
reply
Pennsylvania, USA
Share this story
Delete

510: AI Agents: Claws, Copilot, GUI vs CLI Debate

1 Share

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.

Follow Us

⭐⭐ Review Us ⭐⭐

Machine transcription available on http://mergeconflict.fm

Support Merge Conflict

Links:





Download audio: https://aphid.fireside.fm/d/1437767933/02d84890-e58d-43eb-ab4c-26bcc8524289/d805b373-0f9d-459b-a93e-6c712d435309.mp3
Read the whole story
alvinashcraft
15 minutes ago
reply
Pennsylvania, USA
Share this story
Delete

Secret agentic AI

1 Share

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?

Economics #

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.

Subsidized LLM services #

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.

Secret agents #

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.

A portrait of a digital secret agent with hat and dark glasses, humanoid but with some robotic features.

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.

Untrustworthy systems #

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.

Countermeasures #

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.

Conclusion #

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.


This blog is totally free, but if you like it, please consider supporting it.
Read the whole story
alvinashcraft
16 minutes ago
reply
Pennsylvania, USA
Share this story
Delete

A Quick Start Guide To Writing First & Last Lines

1 Share

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:

  1. A Quick Start Guide To Creating Characters
  2. A Quick Start Guide To Writing Fantasy
  3. A Quick Start Guide For Beating Writer’s Block
  4. A Quick Start Guide To Writing For Children
  5. A Quick Start Guide To Writing YA Fiction
  6. A Quick Start Guide To Writing A Memoir
  7. A Quick Start Guide To Writing Descriptions
  8. A Quick Start Guide To Writing Romance
  9. A Quick Start Guide To Writing Science Fiction
  10. A Quick Start Guide To Foreshadowing
  11. A Quick Start Guide To Writing An Inciting Incident
  12. A Quick Start Guide To Writing Dialogue
  13. A Quick Start Guide To Writing Crime Fiction
  14. A Quick Start Guide To Writing Emotions
  15. A Quick Start Guide To Writing Revenge
  16. A Quick Start Guide To Writing First & Last Lines

This post is about writing first and last lines.

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.

A Quick Start Guide To Writing First & Last Lines

Here are three ways to write legendary first and last lines.

Option 1- Write Emotional Contradiction And Cognitive Dissonance

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

Option 2- Time Disruption Vertigo And Reflection

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.

Option 3 – A Universal Personal

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.

The Last Word

Additional Reading:

  1. How To Write A Beginning And An Ending That Readers Will Never Forget
  2. How To Write Epic Beginnings
  3. 5 Incredible Story Beginnings & Endings

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.

Elaine Dodge
by Elaine Dodge. Author of The Harcourts of Canada series and The Device HunterElaine 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.

More Posts From Elaine

  1. What Is A Character Bible & Why Do I Need One?
  2. A Quick Start Guide To Writing Revenge
  3. A Quick Start Guide To Writing Emotions
  4. Why A Good Vocabulary Is Important For Writers
  5. What Is Cozy Fiction? & How To Write It
  6. What Is A Cozy Fantasy?
  7. What is Romantasy & Why Is It So Popular?
  8. How Much Personal Experience You Need To Write Fiction
  9. A Quick Start Guide To Writing Crime Fiction
  10. What Can Jane Austen Teach Writers Today?

The post A Quick Start Guide To Writing First & Last Lines appeared first on Writers Write.

Read the whole story
alvinashcraft
17 minutes ago
reply
Pennsylvania, USA
Share this story
Delete
Next Page of Stories