banner
mrmartincowen.bsky.social
@mrmartincowen.bsky.social
The funny thing about writing comments before coding in an interview: medium.com/@marciacripp...
is that I previously blogged about it
blog.martincowen.me.uk/comment-driv...

Why not adopt this practice every day?
November 12, 2025 at 9:01 PM
Windows is both: I see you have an anti-virus installed, so I will use that instead of Defender.
and
I see you have a backup program installed (eg Easus ToDo) but when you restart I will insist you don't have backup running and must use OneDrive for that. And not let you start work until you submit.
November 12, 2025 at 9:45 AM
Don't copy that floppy.

It says so.

#retrocomputing
November 11, 2025 at 1:16 PM
Great argument from Carl

LLMs are just the next generation of data processing tech using lossy compression searching against a cloud scale index using unstructured query language. Not "thinking". Hallucinations are compression artifacts.

youtu.be/0qnZDMvJPh4
Generative AI's Place in the History of Tech: A Contrarian View
YouTube video by Internet of Bugs
youtu.be
November 10, 2025 at 2:26 PM
Reposted
Before there were multimeters, there was the galvanometer. Born from Ørsted’s magnetic needle experiment and refined by Schweigger, Ampère, and Ohm, the galvanometer became the 19th century’s essential instrument for detecting and measuring electricity.

emedia.digikey.com/eMagazine-Vo...
November 8, 2025 at 2:10 PM
Wonder how many scientific papers will be misunderstood by AI due to exponential notation which gets mangled in typesetting. Numbers like 106 would appear more often in their output than expected where a human would realise & correct to 10^6
November 8, 2025 at 12:33 PM
Hot take: speakers at conferences which will have a bigger video audience than in-person audiences should sit down. Even if most of the split screen is the slides, wandering around, kicking your feet and gesticulating is distracting and achieves nothing.
November 7, 2025 at 5:43 PM
Error handling with callbacks and line numbers in C.

If you put the __FILE__ and __LINE__ macros in the called functions, it will not show you the caller function location. Need to use a macro which wraps the function and passed params on, & adds these macros.
🧵
November 6, 2025 at 12:41 PM
If you want to find the shortcut for a command in VS Code, you can type the name of the command, but if you want to reverse look up the keys to see what the command is, you can click the keyboard icon on the right in the search bar and then type the shortcut keys.
Ctrl-K Ctrl-S brings this up.
November 6, 2025 at 11:16 AM
I don't think there's any reason I should accept a LI request from a company owner who didn't honor their contract to pay for licences for software which I wrote.

It's a small business so they either knew or should have known. B2B so not a small % of sales like B2C.
November 4, 2025 at 3:34 PM
Software Design and TDD: every few months I re-read this amazing post and try and understand a bit more of it: explaining.software/archive/the-...
the sudoku affair
Software design is a deliberate process, and requires deliberate effort.
explaining.software
October 30, 2025 at 12:23 PM
C is simple language, they said. Then you get this comment in response to this talk www.youtube.com/watch?v=2KZg...
October 29, 2025 at 6:46 PM
Feels odd doing publicity photography, should be bottom of the priorities list, but then the results are worth it. Updated the blog header photo
from to
October 29, 2025 at 4:43 PM
Were there 12 of them?
October 29, 2025 at 8:31 AM
📫New on the blog: blog.martincowen.me.uk/unit-testing...

Final post of series (4/4) on the firmware for my PCB, covering unit testing with CppUTest for C projects. Fast - runs 0.12ms per test, completes within 100ms. Runs on build, so suits CI. Source now on GitHub.

#C #firmware #TDD #unittest
Unit Testing Embedded C: Off-Target with CppUTest on Windows
The reasons for having unit tests in your projects are well-known and accepted; I'm not going to rehash them here. Whether you follow the school of thought that says you must write the tests first or ...
blog.martincowen.me.uk
October 28, 2025 at 5:40 PM
Tell me you've written a giant pile of code and have just found out that your compliance procedure requires tests a few weeks before the release date, without telling me.
October 28, 2025 at 12:26 PM
I got 3 blog posts out last week, a record for me, totaling 6k words. Final in the series should be out by the end of tomorrow, another 2k words.

But it's the research and code development behind these posts that takes the time, not the final write up. As always, I'm hoping they will help someone.
October 27, 2025 at 6:58 PM
📫New on the blog: blog.martincowen.me.uk/building-emb...

Third of 4 posts on the firmware for my PCB, covering the problems of Linuxy C tools on Windows, getting a build system for embedded projects to work with VS Code to run and debug. Sample project & problem solving included.

#C #firmware #TDD
Building Embedded C Applications on Windows with GCC, CMake and Ninja
Most embedded C developers start writing their code on their microcontroller manufacturer's provided IDE - STM32CubeIDE, MPLAB X, TI Code Composer, NXP MCUXpresso, Segger Embedded Studio, Keil uVision...
blog.martincowen.me.uk
October 24, 2025 at 3:57 PM
📫New on the blog: blog.martincowen.me.uk/using-finite...

Second of 4 posts on the firmware for my PCB, covering designing FSMs, using DOT language, Graphviz and visualisers to autogenerate C code with a python script. Links to expert calcs on real-time scheduling.

#STM32 #firmware
October 22, 2025 at 11:32 AM
📫New on the blog: blog.martincowen.me.uk/countdown-ti...

First of 4 posts on the firmware for my previously published PCB, covering layered design, 7-segment driver, overcoming HAL limitations with PWM using Negative polarity pin, musical pitch generation.

#STM32 #firmware
October 21, 2025 at 5:03 PM
Reposted
Azure came along much later than AWS. Some of those older products were apparently never migrated to Azure. Maybe whatever products those are, their teams will now have renewed interest in converting to Azure.

I can hear the Monday morning status meetings now, “Where are we in leaving AWS?”
October 20, 2025 at 9:03 AM
Don't Microsoft have their own cloud servers? Why are they using Amazon's? 😉
October 20, 2025 at 8:53 AM
Nice ad www.youtube.com/watch?v=SQte...

but they are cheating with the "7-segment" font in the banner frame ...
CASIO x BACK TO THE FUTURE
YouTube video by Casio UK
www.youtube.com
October 17, 2025 at 10:55 AM
Someone asked about the licence on this gist, happy to make gists licenced as CC0. GitHub doesn't seem to provide a standard field for licences for gists, maybe next time I will put it in the header comment, but not having it in a field isn't good for search/filter. gist.github.com/MartinCowen/...
convert build time timestamps in the C preprocessor from US format to ISO 8601 format
convert build time timestamps in the C preprocessor from US format to ISO 8601 format - isodate.c
gist.github.com
October 16, 2025 at 10:21 AM
Trying out Hyper-V for the first time. Haven't worked with VM for at least 8 years. In this case its Windows 11 on Window 11 to test app installation instructions on a clean machine. This is why I decided to get the 32GB RAM version of this laptop and Win 11 Pro.
October 10, 2025 at 2:24 PM