Sign in

Mark Seemann

@ploeh.dk
211 followers 2 following 243 posts
PostsRepliesMedia
Mark Seemann @ploeh.dk · 25/09/2026
I'll be in London November 23-27, and could probably swing by for half a day or so if you think it would be useful for your organisation. blog.ploeh.dk/hire-me
blog.ploeh.dk
Hire Me
Would you like help with software design, TDD, code review, process, or programming? If so, I may be able to assist.
000
Mark Seemann @ploeh.dk · 24/09/2026
@hillelwayne.com I'm embarking on a series of blog posts tackling your PBT / Example Testing comparison problem. Is there any context related to that gist? I mean, why did you originally post it? I tried asking Brian Marick back when you were taking a break: mastodon.social/@ploeh/11600...
mastodon.social
Mark Seemann (@ploeh@mastodon.social)
@marick@mstdn.social Sorry for the extremely belated reply, but in https://www.crustofcode.com/arriving-at-properties/ you refer to a problem posed by Hillel Wayne. Do you know anything about the cont...
100
Mark Seemann @ploeh.dk · 16/09/2026
New article: On learning programming in an age of LLMs. blog.ploeh.dk/2026/09/16/o...
blog.ploeh.dk
On learning programming in an age of LLMs
Open answers to a reader's letter.
032
Mark Seemann @ploeh.dk · 08/09/2026
New article: Worse is better: C# versus F#. blog.ploeh.dk/2026/09/08/w...
blog.ploeh.dk
Worse is better: C# versus F#
C# is a great programming language, but F# is better.
041
Mark Seemann @ploeh.dk · 26/08/2026
Among many other things, I'm also interested in helping improve legacy code bases (C#, F#, or Haskell; possibly Python), as this is typically a really difficult problem. So get in touch if you think I can help.
045
Mark Seemann @ploeh.dk · 24/08/2026
The medical open-source project that hired me to help seems to have unexpectedly run out of money, so it looks as though I'm available for hire until November. Get in touch if you think I can help your software engineering organisation. blog.ploeh.dk/hire-me
blog.ploeh.dk
Hire Me
Would you like help with software design, TDD, code review, process, or programming? If so, I may be able to assist.
031
Mark Seemann @ploeh.dk · 18/08/2026
New AI DevOps Podcast episode, this time with yours truly as a guest, in which we discuss code quality related to LLMs, among other things: azuredevopspodcast.clear-measure.com/mark-seemann...
azuredevopspodcast.clear-measure.com
AI DevOps Podcast: Mark Seemann: AI Code Quality - Episode 415
Mark Seemann is a self-employed programmer and software architect based in Copenhagen, Denmark, and the author of Code That Fits in Your Head and Dependency Injection Principles, Practices, and Patter...
010
Mark Seemann @ploeh.dk · 18/08/2026
ISTR seeing a figure like my poor attempt at a reproduction posted here. It was, of course, much nicer done, and also IIRC had more details and colour. Can anyone help me track down the original?
000
Mark Seemann @ploeh.dk · 13/08/2026
New article: Why use ORMs if LLMs write code? blog.ploeh.dk/2026/08/13/w...
blog.ploeh.dk
Why use ORMs if LLMs write code?
The return of SQL?
120
Mark Seemann @ploeh.dk · 23/07/2026
New article: Does code quality still matter? blog.ploeh.dk/2026/07/23/d...
blog.ploeh.dk
Does code quality still matter?
I honestly don't know, but I guess we'll find out.
022
Mark Seemann @ploeh.dk · 21/07/2026
Min kone fik en ide, der er så god, at jeg var nødt til at dele den. Så nu har vi oprettet vores første borgerforslag: Fjern eller sænk moms på økologiske varer. Denne ide er lidt af et columbusæg, der løser mange problemer på en gang. Støt forslaget her: www.borgerforslag.dk/se-og-stoet-...
011
Mark Seemann @ploeh.dk · 17/07/2026
My 14th consecutive Microsoft MVP award: How lovely 😊
030
Mark Seemann @ploeh.dk · 06/07/2026
New article: Worse is better: JSON versus XML. blog.ploeh.dk/2026/07/06/w...
blog.ploeh.dk
Worse is better: JSON versus XML
JSON is not a good data-interchange format.
132
Mark Seemann @ploeh.dk · 29/06/2026
New article: Worse is better. blog.ploeh.dk/2026/06/29/w...
blog.ploeh.dk
Worse is better
The most popular technology may not be the best.
010
Mark Seemann @ploeh.dk · 16/06/2026
Coming off a successful undertaking, I have time for new endeavours. Potentially full time until end of August, and perhaps a few months more. Part-time with no definite end. I may be particularly interested in improving legacy code. blog.ploeh.dk/hire-me
blog.ploeh.dk
Hire Me
Would you like help with software design, TDD, code review, process, or programming? If so, I may be able to assist.
030
Mark Seemann @ploeh.dk · 15/06/2026
This was the most interesting episode in a long time. Worth listening to, despite the bad audio quality. Bear with it; the content is good.
020
Mark Seemann @ploeh.dk · 10/06/2026
Are you using LLMs to generate so much code that reviews or other forms of quality assurance have become a bottleneck? I may be able to help. blog.ploeh.dk/hire-me
blog.ploeh.dk
Hire Me
Would you like help with software design, TDD, code review, process, or programming? If so, I may be able to assist.
020
Mark Seemann @ploeh.dk · 29/05/2026
As impressive and occasionally useful as LLMs are, the hype means that I'm regularly disappointed when I try to get it to do something useful. Latest example: I want some LLM to summarise a podcast episode. I can even provide a transcript. So far, no such luck. Suggestions?
200
Mark Seemann @ploeh.dk · 28/05/2026
Recently, I've been feeding LLMs photos of hand-drawn diagrams, asking them to turn them into TikZ drawings. This seems to be at the frontier of what LLMs can do. It's not an entire fiasco, but on the other hand not going particularly well, either.
111
Mark Seemann @ploeh.dk · 04/05/2026
New article: Motivated reasoning. blog.ploeh.dk/2026/05/04/m...
blog.ploeh.dk
Motivated reasoning
Most of my concerns about AI are probably irrelevant, but what if one of them is not?
120
Mark Seemann @ploeh.dk · 20/04/2026
New article: In defence of bureaucracy. blog.ploeh.dk/2026/04/20/i...
blog.ploeh.dk
In defence of bureaucracy
Objectivity, meritocracy, high bus factor. What's not to like?
041
Mark Seemann @ploeh.dk · 13/04/2026
New article: Secret agentic AI. blog.ploeh.dk/2026/04/13/s...
blog.ploeh.dk
Secret agentic AI
A scenario.
110
Mark Seemann @ploeh.dk · 09/04/2026
In both 2023 and 2024 I gave keynotes related to AI and software development: youtu.be/bLpwNWWs5EY?... youtu.be/X_SsnmZ4Dlc?... Since they are of a general nature, I still find them relevant in 2026. Let me know if you need a keynote for your conference. blog.ploeh.dk/hire-me
youtu.be
IT Days - Epistemology of software - Mark Seemann - Programmer and Software Architect
YouTube video by Today Software Magazine
030
Mark Seemann @ploeh.dk · 07/04/2026
Lately, I've observed that engagement on all platforms have all but dried up. Is this a general phenomenon, or am I just writing for no-one? If you still read and get value out of my blog, please let me know. You could, for example, support it: blog.ploeh.dk/support
blog.ploeh.dk
Support the blog
Ploeh blog is free, and always has been. Keep it free.
022
Mark Seemann @ploeh.dk · 06/04/2026
New article: The hailo effect. blog.ploeh.dk/2026/04/06/t...
blog.ploeh.dk
The hailo effect
LLM friendliness does not entail competency.
040
Mark Seemann @ploeh.dk · 30/03/2026
New article: Programming languages for AI. blog.ploeh.dk/2026/03/30/p...
blog.ploeh.dk
Programming languages for AI
Which programming language is best suited for LLM-based generation?
020
Mark Seemann @ploeh.dk · 23/03/2026
New article: Will you go to prison for an AI? blog.ploeh.dk/2026/03/23/w...
blog.ploeh.dk
Will you go to prison for an AI?
Who is liable for code written by LLMs?
120
Mark Seemann @ploeh.dk · 09/03/2026
New article: Which of these languages are best for AI? blog.ploeh.dk/2026/03/09/w...
blog.ploeh.dk
Which of these languages are best for AI?
A rhetorical poll.
111
Mark Seemann @ploeh.dk · 06/03/2026
#repostfriday Keeping cross-cutting concerns out of application code. blog.ploeh.dk/2024/09/02/k...
blog.ploeh.dk
Keeping cross-cutting concerns out of application code
Don't inject third-party dependencies. Use Decorators.
000
Mark Seemann @ploeh.dk · 05/03/2026
Worth mulling over: www.rockoder.com/beyondthecod...
rockoder.com
Cognitive Debt: When Velocity Exceeds Comprehension | rockoder
A systems analysis of how AI-assisted development creates a gap between output speed and understanding, and why organizations cannot see it happening.
020
Mark Seemann @ploeh.dk · 04/03/2026
Other readers are showing their appreciation of ploeh blog by supporting it. You, too, can do that. blog.ploeh.dk/support
blog.ploeh.dk
Support the blog
Ploeh blog is free, and always has been. Keep it free.
000
Mark Seemann @ploeh.dk · 03/03/2026
New article: In defence of correctness. blog.ploeh.dk/2026/03/03/i...
blog.ploeh.dk
In defence of correctness
Not all software needs to be correct, but a large subset does.
111
Mark Seemann @ploeh.dk · 27/02/2026
#repostfriday Should interfaces be asynchronous? blog.ploeh.dk/2024/07/08/s...
blog.ploeh.dk
Should interfaces be asynchronous?
Async and await are notorious for being contagious. Must all interfaces be Task-based, just in case?
000
Mark Seemann @ploeh.dk · 23/02/2026
New article: TDD as induction. blog.ploeh.dk/2026/02/23/t...
blog.ploeh.dk
TDD as induction
A metaphor.
110
Mark Seemann @ploeh.dk · 20/02/2026
#repostfriday Gratification blog.ploeh.dk/2024/05/13/g...
blog.ploeh.dk
Gratification
Some thoughts on developer experience.
000
Reposted by Mark Seemann
Laszlo @ladeak.net · 16/02/2026
my unpopular opinion on AI and tests: blog.ladeak.net/posts/ai-uni...
blog.ladeak.net
Laszlo - .NET Developer, Personal Blog
I work in an environment where people seek opportunities for using AI such as GitHub Copilot to perform daily development tasks.
001
Mark Seemann @ploeh.dk · 16/02/2026
New article: Critiquing tests. blog.ploeh.dk/2026/02/16/c...
blog.ploeh.dk
110
Mark Seemann @ploeh.dk · 13/02/2026
#repostfriday Do ORMs reduce the need for mapping? blog.ploeh.dk/2023/09/18/d...
blog.ploeh.dk
Do ORMs reduce the need for mapping?
With some Entity Framework examples in C#.
000
Mark Seemann @ploeh.dk · 09/02/2026
New article: Simplifying assertions with lenses. blog.ploeh.dk/2026/02/09/s...
blog.ploeh.dk
Simplifying assertions with lenses
Get ready for some cryptic infix operators.
000
Mark Seemann @ploeh.dk · 06/02/2026
#repostfriday Test-driving the pyramid's top. blog.ploeh.dk/2023/07/31/t...
blog.ploeh.dk
Test-driving the pyramid's top
Some thoughts on TDD related to integration and systems testing.
000
Mark Seemann @ploeh.dk · 04/02/2026
Unpopular(?) opinion: Marker interfaces are code smells.
230
Mark Seemann @ploeh.dk · 03/02/2026
Other readers are showing their appreciation of ploeh blog by supporting it. You, too, can do that. blog.ploeh.dk/support
blog.ploeh.dk
Support the blog
Ploeh blog is free, and always has been. Keep it free.
000
Mark Seemann @ploeh.dk · 02/02/2026
New article: Code that fits in a context window. blog.ploeh.dk/2026/02/02/c...
blog.ploeh.dk
Code that fits in a context window
AI-friendly code?
120
Mark Seemann @ploeh.dk · 30/01/2026
#repostfriday Works on most machines. blog.ploeh.dk/2023/07/17/w...
blog.ploeh.dk
Works on most machines
TDD encourages deployment flexibility. Functional programming also helps.
000
Mark Seemann @ploeh.dk · 28/01/2026
Some thoughts about the (far?) future use of AGI for programming. My 2024 IT Days keynote "There's no Voight-Kampff test": youtu.be/X_SsnmZ4Dlc?...
youtu.be
There's no Voight-Kampff test
YouTube video by Today Software Magazine
000
Mark Seemann @ploeh.dk · 26/01/2026
New article: AI-generated tests as ceremony. blog.ploeh.dk/2026/01/26/a...
blog.ploeh.dk
AI-generated tests as ceremony
On epistemological soundness of using LLMs to generate automated tests.
243
Mark Seemann @ploeh.dk · 23/01/2026
#repostfriday When is an implementation detail an implementation detail? blog.ploeh.dk/2023/06/19/w...
blog.ploeh.dk
When is an implementation detail an implementation detail?
On the tension between encapsulation and testability.
000
Mark Seemann @ploeh.dk · 19/01/2026
New article: Filtering as domain logic. blog.ploeh.dk/2026/01/19/f...
blog.ploeh.dk
Filtering as domain logic
Performance and correctness are two independent concerns with overlapping solutions.
010
Mark Seemann @ploeh.dk · 16/01/2026
I still get a chuckle out of this example. #repostfriday AI for doc comments. blog.ploeh.dk/2023/07/10/a...
010
Mark Seemann @ploeh.dk · 12/01/2026
New article: Two regimes of Git. blog.ploeh.dk/2026/01/12/t...
blog.ploeh.dk
Two regimes of Git
Using Git for CI is not the same as Tactical Git.
001