Daniel Terhorst-North
tastapod.com
Daniel Terhorst-North
@tastapod.com
Runs Goalwards: 'Your business, optimized.' Started BDD, caused Cucumber. Optimizes orgs, teams, code. Coach, mentor, geek, mischief-maker. Christian, infrequent blogger. WWGH

https://goalwards.co
Reposted by Daniel Terhorst-North
If everything Rob Pike created vanished overnight, the Internet would stop working. If everything AI created vanished overnight, we’d all breathe a huge sigh of relief and get on with our lives.
Fuck you people. Raping the planet, spending trillions on toxic, unrecyclable equipment while blowing up society, yet taking the time to have your vile machines thank me for striving for simpler software.

Just fuck you. Fuck you all.

I can't remember the last time I was this angry.
December 27, 2025 at 2:32 PM
Reposted by Daniel Terhorst-North
Early Christmas present from me if you're reading this and you're a:

- Senior web developer
- In London
- Really into books and libraries
- Looking for work rn

I am excited to inform you that the British Library is hiring a new head of web development

ce0752li.webitrent.c...
December 24, 2025 at 11:31 AM
I have a crazy idea for the RAM manufacturers (Samsung and SK hynix) that Sam Altman has done a deal with to take 40% of their output:

Tell him to pay for it.
December 22, 2025 at 3:13 PM
Reposted by Daniel Terhorst-North
Only 7 subscribers to go before we hit 250k 😁😱😎
December 13, 2025 at 9:04 PM
Reposted by Daniel Terhorst-North
"Any fool can write code that a computer can understand. Good programmers write code that humans can understand."

I stumbled across this quote from Refactoring by Martin Fowler when looking at dannorth.net/blog/cupid-f... by @tastapod.com .
December 12, 2025 at 1:56 PM
‘I’m gonna code me a new minivan!’
As announced by Tom Gallagher, VP of Engineering, MSRC, on stage at Black Hat EU, we’re evolving our bug bounty program. Now, high-severity vulnerabilities that directly impact Microsoft online services are eligible for bounty awards, whether the code is Microsoft-owned, third-party, or open source.
December 11, 2025 at 8:21 PM
I would like to propose SOSS: Sponsored Open Source Software.

If your company uses OSS, you sponsor the project $100/year.

Not per seat, or per team, just $100/year, all in.

- 30 developers using Ghostty? $100
- 300,000 engineers using tmux? $100, total
December 10, 2025 at 3:36 PM
#Microsoft365: putting the AI in FAIL and PAIN since 2025.

In other news, I will be downgrading to their apps-only service when my current Business plan ends, which hopefully doesn’t come with a chirpy lie generator.
December 10, 2025 at 3:35 PM
Reposted by Daniel Terhorst-North
SIX new chapters (6 to 11) have been added to the MEAP (Manning Early Access Program) release of our “Effective Behavior-Driven Development" book. They cover Formulation, the practice of turning concrete examples into business-readable specs

hubs.la/Q03L7kXM0
#BDD #Cucumber #Specflow #Reqnroll
Effective Behavior-Driven Development - Gáspár Nagy and Seb Rose
Build the right software, the right way! Software is the product of an evolving conversation among users, business stakeholders, and developers. The goal of Behavior-Driven Development (BDD) is to ca...
hubs.la
November 18, 2025 at 12:32 PM
Hey gophers, what would you recommend as the least worst CLI library for #golang? I'm looking for something like Python's Click.

The list of 'awesome Go packages' doesn't seem to filter for abandonware.

Criteria:
- flags and subcommands
- minimal boilerplate
- not abandoned
- few dependencies
Welcome to Click — Click Documentation (8.3.x)
click.palletsprojects.com
November 17, 2025 at 5:38 PM
Reposted by Daniel Terhorst-North
GOV.UK is a teenager! I hope there shall be plenty of cake to celebrate a happy 13th birthday.
October 17, 2025 at 7:43 AM
Reposted by Daniel Terhorst-North
Does widespread browser implementation of the Sec-Fetch-Site HTTP header mean we can protect against CSRF attacks without needing those hidden form tokens? It looks like the answer may be a cautious "yes"! https://simonwillison.net/2025/Oct/15/csrf-in-go/
A modern approach to preventing CSRF in Go
Alex Edwards writes about the new http.CrossOriginProtection middleware that was added to the Go standard library in version 1.25 in August and asks: Have we finally reached the point where …
simonwillison.net
October 15, 2025 at 5:08 AM
Inside you there are two wolves. One of them knows SQL. This is the WHERE-wolf.
October 14, 2025 at 4:24 PM
I'll see you at #FastFlowConf tomorrow. No talk, just attending as a punter. Come and say hello!
October 14, 2025 at 10:22 AM
I love the idea of a conference on renewable energy having panels 😀
October 10, 2025 at 12:40 PM
Reposted by Daniel Terhorst-North
I just saw someone use the abbreviation “AI;DR” and I’ll be laughing for a while.
October 6, 2025 at 10:00 PM
One rubber duck can speed you up, but two ducks slow you down, because they start talking to each other and distract you.

This is known as the ‘inefficiency pair-o-ducks’.
October 6, 2025 at 3:27 PM
Reposted by Daniel Terhorst-North
For those of you at GOTO Copenhagen, I'll be speaking at 14.15 in room 2 about what we can and should be learning from recent security incidents.

Supply Chain Security and the Real World: Lessons From Incidents
Conference talk with Adrian Mouat at GOTO Copenhagen 2025
f.mtr.cool
October 3, 2025 at 9:03 AM
So cool! Running `brew services start caddy` with this in my Caddyfile:

dannorth.localhost {
reverse_proxy localhost:1313
}

Suddenly I have an https version of dannorth.net running on my Mac, and I don't have to remember which port it is running on.

(Caddyfile is in `$(brew --prefix)/etc`)
Welcome to DNA
What do you do? We help your organization go faster. What do you mean by faster? Imagine: A product manager wakes up with a great idea. He tells his manager. She sees its commercial value and works wi...
dannorth.net
October 1, 2025 at 2:35 PM
Inside every crossword solver there are two vowels.
October 1, 2025 at 1:43 PM
Reposted by Daniel Terhorst-North
So exhausting..
September 28, 2025 at 6:41 PM
Tahoe day 4: Crashy Tahoe is crashy.

So far, during normal use:

- Calendar
- Keynote (twice)
- Mail (but I was editing a signature)
- Safari (!)
- Finder (!!)

When Calendar came back, it still had the half-written new event in the open dialog, so extra credit for trying.
September 25, 2025 at 8:19 PM
Tahoe day 4: now my Keynote decks have UUIDs too!
September 25, 2025 at 11:39 AM
In which your intrepid hero decides that he has written entirely the wrong talk and that a complete overhaul is the only way forward.
September 24, 2025 at 1:02 PM
Tahoe day 3.

Mail -> Show Contact Card for sender -> shows a system UUID, exactly what I was after.

Bonus: Clicking on 'Open with Contacts' opens... a completely different contact!
September 24, 2025 at 12:27 PM