Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
4 changes: 4 additions & 0 deletions Makefile
Original file line number Diff line number Diff line change
Expand Up @@ -18,6 +18,10 @@ serve: # Serve the application
npm run serve
.PHONY: serve

talk: # Scaffold a new conference talk: make talk NAME=my-conf-2026
hugo new --kind conference-bundle conferences/$(NAME) --source sites/ainsley-clark
.PHONY: talk

deploy-prod: # Deploy production to Vercel
vercel --prod
.PHONY: deploy-prod
Expand Down
10 changes: 10 additions & 0 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -57,6 +57,16 @@ hugo new --kind post-bundle insights/my-post
hugo new --kind portfolio-bundle portfolio/client-name
```

**Create a new conference talk (ainsleyclark.com)**

```shell
make talk NAME=my-conf-2026
```

Then add `images/featured.jpg` and `files/slides.pdf` to the bundle, fill in the event metadata and sources, and
generate a QR code pointing to `https://ainsleyclark.com/conferences/my-conf-2026/`. The page stays in draft (excluded
from production builds) until `draft: false` is set, typically a day before the talk.

## Open Source

ainsley.dev permits the use of any HTML, SCSS and Javascript found within the repository for use with external projects.
Expand Down
Empty file.
Empty file.
28 changes: 28 additions & 0 deletions sites/ainsley-clark/archetypes/conference-bundle/index.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,28 @@
---
title: {{ replace .Name "-" " " | title }}
description: A description of the talk between 120 and 160 characters for search engines and social cards.
heading: {{ replace .Name "-" " " | title }}
talkTitle: The Actual Title of the Talk
lead: A short description of the talk that appears on the card and page.
weight: 1
publishdate: {{ dateFormat "2006-01-02" .Date }}
pageColour: white
draft: true # Flip to false ~a day before the talk to publish.
tags:
- Go
buttonName: View Talk
event:
name: Conference Name
date: {{ dateFormat "2006-01-02" .Date }}
location: Venue, City
url: https://example.com/
# video: https://www.youtube.com/watch?v=xxxx
slides:
path: files/slides.pdf
name: {{ .Name }}-ainsley-clark.pdf
text: Download slides
sources:
- title: 1. Source Title
url: https://example.com/
description: A short description of the source.
---
3 changes: 3 additions & 0 deletions sites/ainsley-clark/content/conferences/_index.md
Original file line number Diff line number Diff line change
@@ -1,3 +1,6 @@
---
title: Conference Talks
build:
render: "never"
list: "always"
---
Original file line number Diff line number Diff line change
Expand Up @@ -2,6 +2,7 @@
heading: Go Guild - Sept 2024
lead: Building Open Source Go Projects in Public with MelkeyDev. Learn how popular Go author, Melkey built go-blueprint live on twitch; with a community round up as always.
weight: 9
publishdate: 2024-09-01
tags:
- Open Source
- Community
Expand Down
Binary file not shown.
25 changes: 20 additions & 5 deletions sites/ainsley-clark/content/conferences/gophercon-uk-2025/index.md
Original file line number Diff line number Diff line change
@@ -1,14 +1,29 @@
---
title: GopherCon UK 2025 - Deploying Go Microservices in Minutes
description: How Just Eat uses tooling to deploy Go micro-services in minutes, exploring how Go Kit helps engineers to deploy complex event-driven workflows with ease.
heading: GopherCon UK 2025
lead: How Just Eat uses tooling to deploy Go micro-services in minutes. This talk explores how Go Kit helps engineers to deploy complex event-driven workflows with ease.
weight: 1
publishdate: 2025-08-14
pageColour: white
draft: false
tags:
- Go
- Microservices
- Platform Engineering
buttonName: Watch Talk
externalURL: https://www.youtube.com/watch?v=JnjKQZOsvcw
build:
render: "never"
list: "always"
buttonName: View Talk
event:
name: GopherCon UK
date: 2025-08-14
location: The Brewery, London
url: https://www.gophercon.co.uk/
video: https://www.youtube.com/watch?v=JnjKQZOsvcw
slides:
path: files/slides.pdf
name: gophercon-uk-2025-ainsley-clark.pdf
text: Download slides
# sources:
# - title: Go Kit
# url: https://github.com/go-kit/kit
# description: The micro-service framework covered in the talk
---
Binary file not shown.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
70 changes: 70 additions & 0 deletions sites/ainsley-clark/content/conferences/gophercon-uk-2026/index.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,70 @@
---
title: How to Stay Passionate in Tech in the Age of AI
description: How AI tooling is reshaping our sense of accomplishment as engineers, and nine practical ways to reclaim your passion and craft in this new era.
heading: GopherCon UK 2026
talkTitle: How to Stay Passionate in Tech in the Age of AI
lead: The lines between human and AI labour are becoming increasingly blurred. This talk explores how AI tooling is quietly reshaping our sense of accomplishment as engineers, what the research says about effort, ownership and craft, and nine practical ways to reclaim your passion in this new era.
weight: 1
publishdate: 2026-07-21
pageColour: white
draft: true # Flip to false ~a day before the talk to publish.
tags:
- AI
- Career
- Craftsmanship
buttonName: View Talk
event:
name: GopherCon UK
date: 2026-08-13 # TODO: Confirm conference date.
location: The Brewery, London
url: https://www.gophercon.co.uk/
slides:
path: files/deck.key
name: how-to-stay-passionate-in-tech-ainsley-clark.key
text: Download slides
sources:
- title: 1. Breaking Engagement Apart
url: https://www.cambridge.org/core/journals/industrial-and-organizational-psychology/article/breaking-engagement-apart-the-role-of-intrinsic-and-extrinsic-motivation-in-engagement-strategies/A277714CC7A3FE3E94DE80F4EEBBC2EF
description: The role of intrinsic and extrinsic motivation in engagement strategies.
- title: 2. Self-Determination Theory
url: https://selfdeterminationtheory.org/SDT/documents/2000_RyanDeci_SDT.pdf
description: Deci & Ryan, 2000.
- title: 3. The Measurement of Experienced Burnout
url: https://doi.org/10.1002/job.4030020205
description: Maslach & Jackson, 1981. Journal of Organizational Behavior.
- title: 4. The Scale of AI Fatigue in 2025
url: https://clearing-ai.com/stats.html
description: A synthesis of data from various sources by Clearing AI.
- title: 5. The 73% Collapse
url: https://quasa.io/media/the-73-collapse-how-ai-is-erasing-entry-level-tech-jobs-and-rewriting-the-career-ladder
description: How AI is erasing entry-level tech jobs and rewriting the career ladder.
- title: 6. AI Sucks the Joy Out of Programming
url: https://alexn.org/blog/2025/10/27/ai-sucks-the-joy-out-of-programming/
description: Alexandru Nedelcu.
- title: 7. Has Anyone Lost Passion in SWE Due to AI?
url: https://news.ycombinator.com/item?id=45572130
description: Hacker News discussion.
- title: 8. Canaries in the Coal Mine?
url: https://digitaleconomy.stanford.edu/app/uploads/2025/11/CanariesintheCoalMine_Nov25.pdf
description: Six facts about the recent employment effects of AI. Stanford Digital Economy Lab, 2025.
- title: 9. The State of Psychological Ownership
url: https://doi.org/10.1037/1089-2680.7.1.84
description: Pierce, Kostova & Dirks, 2003. Review of General Psychology.
- title: 10. The Impact of Generative AI on Critical Thinking
url: https://www.microsoft.com/en-us/research/wp-content/uploads/2025/01/lee_2025_ai_critical_thinking_survey.pdf
description: Self-reported reductions in cognitive effort from a survey of knowledge workers. Microsoft Research.
- title: 11. Expecting to Teach Enhances Learning
url: https://pubmed.ncbi.nlm.nih.gov/24845756/
description: Nestojko, Bui, Kornell & Bjork, 2014. Memory & Cognition.
- title: 12. AI Coding Tools in 2026
url: https://tech-insider.org/ai-coding-tools-2026-transforming-software-development/
description: How generative code is transforming software development.
- title: 13. Stack Overflow Developer Survey 2025
url: https://survey.stackoverflow.co/2025/
description: Annual developer survey, including language salary data.
- title: 14. KPMG Workplace Friendships Survey
url: https://kpmg.com/us/en/media/news/kpmg-survey-workplace-friendships.html
description: Workplace friendships play a critical role in employee mental health and job satisfaction.
---

Passion isn’t found, it’s built — over time, through effort and repetition. From the IKEA effect to diary studies of AI-assisted work, this talk digs into why engineers are reporting a declining sense of craft, and shares nine practical ways to stay connected to the work: prompting with intent, post-processing, setting boundaries, building and finishing things, teaching, finding a niche, staying connected and never stopping learning.
Original file line number Diff line number Diff line change
Expand Up @@ -2,6 +2,7 @@
heading: JET Tech Fest
lead: A career change is daunting. Moving from hospitality into the tech industry was an uphill battle, but it led me to a field I genuinely love. If you’re trying to break into a new industry, this story may resonate.
weight: 9
publishdate: 2023-08-01
tags:
- Career
- Soft Skills
Expand Down
Binary file not shown.
21 changes: 16 additions & 5 deletions sites/ainsley-clark/content/conferences/london-gophers/index.md
Original file line number Diff line number Diff line change
@@ -1,14 +1,25 @@
---
title: London Gophers - Deploying Go Microservices
description: Learn how Just Eat deploys Go microservices with well crafted tooling, making sophisticated event-driven workflows faster to ship and easier to maintain.
heading: London Gophers
lead: Learn how Just Eat deploys Go microservices with well crafted tooling. Making sophisticated event-driven workflows faster to ship, easier to maintain & easier to run.
weight: 2
publishdate: 2025-02-19
pageColour: white
draft: false
tags:
- Go
- Event-Driven
- Architecture
buttonName: Watch Talk
externalURL: https://drive.google.com/file/d/1jEjlx3S9dEaeggHuj4s1Cd_mAssn9St-/view?usp=sharing
build:
render: "never"
list: "always"
buttonName: View Talk
event:
name: London Gophers
date: 2025-02-19
location: London
url: https://www.meetup.com/londongophers/
video: https://drive.google.com/file/d/1jEjlx3S9dEaeggHuj4s1Cd_mAssn9St-/view?usp=sharing
slides:
path: files/slides.pdf
name: london-gophers-ainsley-clark.pdf
text: Download slides
---
7 changes: 5 additions & 2 deletions sites/ainsley-clark/layouts/conferences/card.html
Original file line number Diff line number Diff line change
@@ -1,8 +1,11 @@
<!-- =====================
Conferences Card
Links to the conference single page when it renders, falling back
to the external URL for talks that opt out with build.render: never.
===================== -->
{{ $internal := ne .RelPermalink "" }}
{{ partial "components/featured-card.html" (dict
"href" .Params.externalURL
"href" (cond $internal .RelPermalink .Params.externalURL)
"image" (.Resources.GetMatch "images/featured.*")
"imageDefault" (.Resources.GetMatch "images/featured-small.*")
"heading" .Params.heading
Expand All @@ -11,5 +14,5 @@
"buttonName" .Params.buttonName
"fullWidth" false
"numbers" false
"external" true
"external" (not $internal)
)}}
34 changes: 34 additions & 0 deletions sites/ainsley-clark/layouts/conferences/schema.html
Original file line number Diff line number Diff line change
@@ -0,0 +1,34 @@
<!-- =====================
Conference Schema (Event)
===================== -->
{{ with .Params.event }}
<script type="application/ld+json">
{
"@context": "https://schema.org",
"@type": "Event",
"name": {{ $.Params.talkTitle | default $.Params.heading }},
"description": {{ $.Params.lead }},
{{ with .date -}}
"startDate": {{ dateFormat "2006-01-02" . }},
{{- end }}
{{ with .location -}}
"location": {
"@type": "Place",
"name": {{ . }}
},
{{- end }}
{{ with $.Params.video -}}
"recordedIn": {
"@type": "VideoObject",
"name": {{ $.Params.talkTitle | default $.Params.heading }},
"url": {{ . }}
},
{{- end }}
"performer": {
"@type": "Person",
"name": {{ $.Site.Params.person.name | default $.Site.Params.niceName }},
"url": {{ $.Site.Params.url }}
}
}
</script>
{{ end }}
Loading
Loading