StaffPlus London 2023

I spent a few days this week at the first ever StaffPlus London, a conference for senior individual contributors being run alongside the LeadDev London event. The conference was compèred by Tanya Reilly, author of The Staff Engineer’s Path.

Unlinke other conferences I’ve been to, there was only one track which made choosing what sessions to see quite easy. The talks were of varying lengths, and there were a lot of them, which made sketchnoting them quite a task.

Filling The Jar Of Impact And Trust As A Principal Engineer

by Nayana Shetty

Filling The Jar Of Impact And Trust As A Principal Engineer by Nayana Shetty

The Journey Of A Byline

by Alice Bartlett

The Journey Of A Byline by Alice Bartlett

Running Large Scale Migrations Continuously

by Suhail Patel

Running Large Scale Migrations Continuously by Suhail Patel

How To Not Lose Friends And Alienate Yourself

by Waheed El Miladi

How To Not Lose Friends And Alienate Yourself by Waheed El Miladi

Scaling Your Influence Through Documentation

by James Ford

Scaling Your Influence Through Documentation by James Ford

Solving The Puzzle Of Staff+ Time Management

by Blanca Garcia Gil

Solving The Puzzle Of Staff+ Time Management by Blanca Garcia Gil

Maximising Your Impact When Context Switching

by Maude Lemaire

Maximising Your Impact When Context Switching by Maude Lemaire

Homebrew’s Greatest Migration: Moving To Github Packages With Zero Downtime

by Mike McQuaid

Homebrew's Greatest Migration: Moving To Github Packages With Zero Downtime by Mike McQuaid

The Dark Side Of Lessons Learned

by Dianing Yudono

The Dark Side Of Lessons Learned by Dianing Yudono

Working On Software That Is Older Than You

by Sally Wahba

Working On Software That Is Older Than You by Sally Wahba

Practical Systems Thinking For Software Engineers

by Laura Nolan

Practical Systems Thinking For Software Engineers by Laura Nolan

Unmasking Imposters By Debugging Doubts

by J Bobby Dorlus

Unmasking Imposters By Debugging Doubts by J Bobby Dorlus

Delivering A Digital-First BBC - An Architect’s Perspective

by Hannes Ricklefs

Delivering A Digital-First BBC - An Architect's Perspective by Hannes Ricklefs

Defining A Technical Visiion

by Eamon Scullion

Defining A Technical Visiion by Eamon Scullion

Putting Down Line Management - Returning To The Individual Contributor Role

by Caroline Handley

Putting Down Line Management - Returning To The Individual Contributor Role by Caroline Handley

Cloud Infrastructure Architecuture For Nubank’s Global Expansion

by Lais Oliviera

Cloud Infrastructure Architecuture For Nubank's Global Expansion by Lais Oliviera

Building A Shared Vision: Creating Alignment Across Autonomous Teams

by Maria Neumayer

Building A Shared Vision: Creating Alignment Across Autonomous Teams by Maria Neumayer

Working Sideways

by Aish Raj Dahal

Working Sideways by Aish Raj Dahal

Scaling Your Influence When You Can Only Be In One Place

by Michael Tweed

Scaling Your Influence When You Can Only Be In One Place by Michael Tweed

The Dark Side Of Standardisation

by Samantha Schaevitz

The Dark Side Of Standardisation by Samantha Schaevitz

Librarian’s Guide To Documentation

by Kaitlyn Tierney

Librarian's Guide To Documentation by Kaitlyn Tierney

Building A Diverse And Inclusive Guild From The Ground Up

by Liem Pham

Building A Diverse And Inclusive Guild From The Ground Up by Liem Pham

Setting Goals As A Staff+ Engineer

by Sabrina Leandro

Setting Goals As A Staff+ Engineer by Sabrina Leandro


DDD South West 11

A few weeks ago I attended DDD South West. It was run very similar to last year’s event, but was much better attended. Here are my sketchnotes of the talks.

Being Staff Plus

by Ian Cooper

Being Staff Plus by Ian Cooper

User Testing In Production

by Eli Holderness

User Testing In Production by Eli Holderness

High Performance .Net JSON Serialization With Code Generation

by Ian Griffiths

High Performance .Net JSON Serialization With Code Generation by Ian Griffiths

Event Sourcing Using .Net, CosmosDB And Elastic

by James World & Gareth James

Event Sourcing Using .Net, CosmosDB And Elastic by James World, Gareth James

There’s No Such Thing As Plain Text

by Dylan Beattie

There's No Such Thing As Plain Text by Dylan Beattie


DDD South West 10

DDD South West returned for its 10th event a few weeks ago. With it came a few new organisers, plus a brand new venue which was great. I took the opportunity to have a long weekend in Bristol, a city that I always enjoy visiting.

The Source Code Generation Game

by Steve Collins

The Source Code Generation Game by Steve Collins

Exploring Minimal .Net

by Kevin Smith

Exploring Minimal .Net by Kevin Smith

Data Scientists: Making Shit Up Since 1974

by Gary Short

Data Scientists: Making Shit Up Since 1974  by Gary Short

Why Premature Optimisation Is The Root Of All Evil

by Craig Jones

Why Premature Optimisation Is The Root Of All Evil by Craig Jones

Let’s Stop Blaming Our Users For Getting Hacked When It Is Our Problem To Solve

by Scott Brady

Let's Stop Blaming Our Users For Getting Hacked When It Is Our Problem To Solve by Scott Brady


NDC London 2022

After a hiatus of over two years due to the pandemic, NDC London returned this week to an in-person conference. After attending many virtual user groups, conferences, and training courses, it was great to meet up again with friends I’ve got to know through attending conferences over the years (and also a few former work colleagues as an unexpected bonus). The conference itself didn’t feel any different from the previous NDC London events I’ve attended, with a great venue, lots of interesting talks, and some excellent hospitality laid on by the organisers.

Here are the sketchnotes that I made for the talks that I attended.

The Last Twenty Years Of Software Development

by Richard Campbell

The Last Twenty Years Of Software Development by Richard Campbell

Richard went over the history of the past twenty years of software development, demonstrating how both technology and the big companies have changed in that time period. What was notable was the acceleratation in the pace of change in technology over the latter half of the timeframe.

The Curious Incident In Your Software In The Daytime

by Liam Westley

The Curious Incident In Your Software In The Daytime by Liam Westley

Liam discussed how to deal with incidents that happen with your software. He covered the kind of things that you should consider having in place to deal win an incident, and showed some example incidents and how they were dealt with. One thing that stood out from the examples was that having extensive detailed logging helps to inform about what has happened, and what data is affected. He also discussed points of failure that many people wouldn’t even consider, such as Slack being down or maxing out a credit card that is needed to pay for more resources.

The Untruthful Art - Five Ways Of Misrepresenting Data

by Alexander Arvidsson

The Untruthful Art - Five Ways Of Misrepresenting Data by Alexander Arvidsson

Alexander used many humourous examples to demonstrate how data can be displayed, or even manipulated, to give an incorrect representation. He also stressed the importance of considering any agenda that the author may have when creating the visualisations.

Wearable Live Captions

by Jo Franchetti

Wearable Live Captions by Jo Franchetti

Jo demonstrated her live captioning face mask - a wearable face mask that she built to enable her deaf mother to read what she was saying while looking at her. Traditional captioning technology relies on reading what the speaker is saying from the phone screen, making it diffuclt to look at someone when they are speaking. This is different in that the phone uses Azure Cognitive Services to convert the speech to text, and then sends the text to and LED panel in the face mask via bluetooth.

The Visible Developer

by Heather Downing

The Visible Developer by Heather Downing

This talk was all about having a “developer brand”. Life isn’t fair, and it isn’t sufficient to work hard and be a good developer. If you do only that, you will not get recognition for your achievements. Heather encouraged people to make sure that other people know what you have done, and talked about several ways of doing this.

Roslyn Source Generators

by Stefan Pölz

Roslyn Source Generators by Stefan Pölz

Stefan went through several uses for Roslyn source generators, and how to use them.

How The Fastest Growing Companies Develop Their Public API

by Josh Twist

How The Fastest Growing Companies Develop Their Public API by Josh Twist

This talk was about making a public API on the web. Josh covered several of the key things that need to be considered when making a public API, and presented some possible solutions. One common solution for all of the considerations was an API gateway. He then demoed the Zuplo API gateway, something that Josh created after working at companies like Microsoft, Facebook, and Stripe.

Design For Developers

by Lex Lofthouse

Design For Developers by Lex Lofthouse

Lex covered several of the core design principles and theories for presenting content, with lots of resources to draw from for example content.

Tracking Database Changes With Apache Kafka

by Francesco Tisiot

Tracking Database Changes With Apache Kafka by Francesco Tisiot

This talk covered how Apache Kafka can be used to track changes to a relational database. Francesco used a worked exampled to decouple a production transactional database from other potential uses such as data analysis and reporting, using Kafka log streaming to synchronise the data into a separate data store. He then introduced Debezium to track changes to a database without the need for polling.

Failure Is Always An Option

by Dylan Beattie

Failure Is Always An Option by Dylan Beattie

Dylan using the famous “failure is not an option” quote from Apollo 13 as inspiratino to highlight how we should always consider failure as an option in software systems, with examples from history of how failure modes were anticipated and came to be needed later.

Nevermind The Containers

by Rob Conery

Nevermind The Containers by Rob Conery

This talk was centred around the Remote Containers Visual Studio Code extension from Microsoft. This extension allows the configuration of a development environment using a devcontainer.json file, which when run with the extension spins up a Docker container with VS Code running inside it, with the UI running on the host machine. Rob did a very slick demo of how to set it up and use it using his Ruby-based blog as an example.

Fractal Architecture

by Mark Seemann

Fractal Architecture by Mark Seemann

Mark talked through his latest thinking on developing easy to maintain code, which he has captured in his latest book. Using theroies about the human memory and its limitations, he introduced the concept of a “hex flower” to represent the 7 elements that fit in your head when reading code. By breaking code down into small enough parts to fit into these shapes, it allows a software system to be seen as being composed of hierarchies of these systems that fit together to abstract behaviour.

Software Lessons From Aviation Disasters

by Adele Carpenter

Software Lessons From Aviation Disasters by Adele Carpenter

Adele talked through two examples of flights that went wrong, and linked them to their underlying causes. She compared these to the world of software as things to look out for.

Team Topologies, Software Architecture And Complexity Science

by James Lewis

Team Topologies, Software Architecture And Complexity Science by James Lewis

James talked about how most software companies get slower as they grow due to an ever-increasing number of processes and levels of hierarchy, and compared them to Amazon who are quoted as saying “the bigger we get, the easier it becomes to get bigger”. He then went through some of the reasons as to why Amazon can achieve this, with analogies drawn from city planning and biology.

Marvels Of Teenage Engineering

by Anders Norås

Marvels Of Teenage Engineering by Anders Norås

Anders took a nostalgic look back through development over the past forty years to highlight how the early developers honed their skills, and how seeming impossible things were achieved through perserverance and experimentation. He then lamented about how that is no longer the case as modern developers typically start coding much later in life, and don’t hone the curiosity that they would have if they were to start younger.

I’m Gonna Make You Stop Hating CSS

by Lemon

I'm Gonna Make You Stop Hating CSS by Lemon

Lemon showed some things that CSS does poorly, such as the CSS is awesome meme, how people tend to fix them, and how to fix them in very simple ways, some of which required only a single line of CSS.

How To Close The Diversity Gap

by Heather Wilde

How To Close The Diversity Gap by Heather Wilde

Heather talked about the diversity gap in the majority of tech companies, and some of the things that can be done to reduce it. She used many examples from the WeCrashed and Super Pumped Tv series to demonstrate the issues.

ASP.NET Core Beyond The Basics

by Chris Klug

Chris did a talk consisting of 100% code (hence the lack of a sketchnote), showing how to do some of the more advanced things with ASP.NET Core. These included:

He also used the Insomnia API client during his demos, which looked like a more lightweight version of Postman.


Finding wifi passwords for saved networks

Occasionally I need to find the password for a wifi connection that I have previously connected to. Navigating the maze of dialogs to find it is never easy, especially when the path to those dialogs changes frequently in Windows 10.

One way to do it is to find the network via the Windows Control Panel (Control Panel -> Network and Internet -> Network and Sharing Centre). Once found, clicking on the connection properties will open the Wi-Fi Status panel:

Status of a wifi connection

Clicking on the Wireless Properties button and then selecting the Security tab will show the wifi password:

Security properties of a wifi connection

This method works, but involves a lot of clicking through screens. Also, it requires starting at the legacy Control Panel, which is gradually being replaced with the new Settings app. Instead, all of this information and more can be accessed via the command line using the netsh command.

To get the password for a wifi network, run the command:

netsh wlan show profile WifiName key=clear

You can also use this command to see the list of every saved network that your device has connected to:

netsh wlan show profile