Home GOTO Experts Kevlin Henney

Kevlin Henney is a GOTO legend with more than 500k views on the GOTO Youtube channel. He will deliver an honest session about success and failure.

He's an independent consultant, trainer, reviewer and writer best known for being the author of two volumes in the Pattern-Oriented Software Architecture series and editor of 97 Things Every Programmer Should Know and 97 Things Every Java Programmer Should Know.

Kevlin's development interests are in programming, people and practice. He has been a columnist for various magazines and web sites, a contributor to open source software and a member of more committees than is probably healthy (it has been said that "a committee is a cul-de-sac down which ideas are lured and then quietly strangled"). Kevlin also boasts over 500K views on the GOTO Conferences YouTube channel.

He has written on the subject of computer programming and development practice for many magazines and sites, including Better Software, The Register, C/C++ Users Journal, Application Development Advisor, JavaSpektrum, C++ Report, Java Report, EXE and Overload.

One of our favorite quotes by Kevlin: "Less code = less bugs"

Topic focus: Programming, people and practice

Check out some of Kevlin’s past talks:

A few of Kevlin’s books:

Upcoming masterclasses featuring Kevlin Henney

Keeping It Simple

We are often urged to keep code, design and architecture simple. What, however, is the motivation for this? And what does this mean in practice? Is simplicity just an aesthetic or does it also have social, economic and technical implications? Does simplicity reduce cost of change, of maintenance, of ownership? And when we say ‘simple’, is one person’s ‘simple’ necessarily the same as another person’s ‘simple’?

In this masterclass…

  • We’ll consider simplicity from a number of viewpoints, including essential versus accidental complexity, value demand versus failure demand, simple versus simplistic.

  • We’ll also look at typical sources of complexity in our coding habits, along with code examples in various languages.

  • We'll see that many practices and approaches can be used both to simplify and to complicate. It's all in knowing how and when versus how not to and when not to use them. For example, we can encourage reuse through code libraries, platforms and services, but we can also make an architecture needlessly complex and draw in unnecessary dependencies, with implications for maintainability and security. Similarly, AI assistance can be employed to make code simpler and easier to work with but, without attention and guidance, it can make things harder in the long run, becoming a new source of legacy.

  • We’ll explore verbose and convoluted code, the effect of programming paradigm and how we can turn down the imperative noise of many languages and styles with declarative techniques.

  • We'll learn it’s not just in our programming and languages where we find complexity: our development processes, tools, architectures and organisational cultures can often encourage unnecessary complexity, costing us time, effort and opportunity where simplicity would have had the opposite effect.

  • We’ll look at how we can work with incomplete knowledge without adding speculative complexity of so-called future proofing.

  • We’ll acknowledge technical debt and neglect for what they are and understand why ‘legacy’ is so often the opposite of ‘simple’, no matter what its backstory. We want to make sure that as well as recognising unnecessary complexity in the small and the large, that we also have an idea of the practices that can help with simplification.

As well as presenting concepts, examining themes and considering code, this masterclass will also offer plenty of opportunity for questions and discussion.

Tuesday Sep 30 @ 09:00 | Copenhagen, Denmark

Reserve your spot now

Upcoming conference sessions featuring Kevlin Henney

On our live stage, magic happens

Speakers interview each other on topics that matter to them.

The Program Committee brings special guests in front of the camera — with you as the audience. Some interviews will be planned, others completely spontaneous. All of them will be magnificent, no doubt about it.

Expect the unexpected.

Thursday Oct 2 @ 14:15 @ GOTO Copenhagen 2025

Get conference pass

The Way the Future Was

The future is not what it used to be. From the end of the 19th century, through the dawn of the Atomic Age and past the rush of the Space Race, the future was painted as a place of possibility and optimism. But now? Not so much. Our view of the future lies somewhere between neutral and gloomy. Why the change? That question has come up almost every time our Program Committee has met. Back in the good all days the future was always bright. Innovation and craftsmanship was blooming. Failure not a topic.

So, if the future is not what it used to be, what is it? In this keynote, PC members Kevlin Henney and James Lewis will look at the future seen through the eyes of the past.

Thursday Oct 2 @ 17:15 @ GOTO Copenhagen 2025

Get conference pass

Ye Cannae Change the Laws of Physics

Software is executable fiction. Software development is about constructing narratives, drawing from a broad palette of paradigms and technologies, married to our understanding of the needs and wants for a system. Abstraction allows us to simplify and reify the complexity of the world into a formal description that we continually update. Abstraction allows us to ignore things about the world and about computer systems that are irrelevant or inconvenient.

But there are limits to the enchantment of code and our ability to maintain illusions. When the rubber hits the road and the packet hits the network we find universal limits are there to keep it real. Nothing can be instantaneous or infinite. Not all computations can be reversed. Not everything is computable. Not everything can be known. Every computation costs time and energy.

Accompanied by a bunch of SF and retro pop culture references (not just Star Trek — we'll be crossing the streams), let's explore the metaphors and realities of the physical world and how they play out in our software systems

Wednesday Oct 1 @ 14:15 @ GOTO Copenhagen 2025

Get conference pass

Content featuring Kevlin Henney

50:23
Old Is the New New
Old Is the New New
GOTO Chicago 2018
50:26
Code as Risk
Code as Risk
GOTO Amsterdam 2017
49:32
Software Is Details
Software Is Details
GOTOpia Europe 2020
57:56
Book Club interview ft. Hannah Fry & Simon Singh, moderated by Kevlin Henney
Book Club interview ft. Hannah Fry & Simon Singh, moderated by Kevlin Henney
GOTO Book Club Live
1:3:46
#FAIL
#FAIL
GOTO Amsterdam 2022
46:25
Structure and Interpretation of Test Cases
Structure and Interpretation of Test Cases
GOTO Amsterdam 2022
Modern Software Practices in a Legacy System
Modern Software Practices in a Legacy System
GOTO Unscripted
Expert Talk: Agile Sabotage?
Expert Talk: Agile Sabotage?
GOTO Unscripted
50:18
Expert Talk: Scaling Down Complexity in Software
Expert Talk: Scaling Down Complexity in Software
GOTO Unscripted
A Fireside Chat with Hannah Fry, Simon Singh & Kevlin Henney
A Fireside Chat with Hannah Fry, Simon Singh & Kevlin Henney
GOTO Unscripted
39:39
Expert Talk: Web Development & Its Failures
Expert Talk: Web Development & Its Failures
GOTO Unscripted
Hydrogen Power: How Far Will It Take Us?
Hydrogen Power: How Far Will It Take Us?
GOTO Unscripted
Expert Talk: Cloud Chaos & How Contract Tests Can Help
Expert Talk: Cloud Chaos & How Contract Tests Can Help
GOTO Unscripted
50:59
Expert talk: Managing Complexity in Software
Expert talk: Managing Complexity in Software
GOTO Unscripted
56:14
Craftsmanship: Code, Guitars & Tech
Craftsmanship: Code, Guitars & Tech
GOTO Unscripted
Simplicity & Complexity: The Beauty & the Beast?
Simplicity & Complexity: The Beauty & the Beast?
GOTO Unscripted
56:37
#FAIL
#FAIL
GOTO Copenhagen 2021
55:57
The Past, Present & Future of Programming Languages
The Past, Present & Future of Programming Languages
GOTO Copenhagen 2024
44:36
Live interview
Live interview
GOTO Copenhagen 2024
41:53
97 Things Every Java Programmer Should Know
97 Things Every Java Programmer Should Know
GOTO Copenhagen 2024
40:56
Live interview
Live interview
GOTO Copenhagen 2024
Wibbly-Wobbly, Timey-Wimey Stuff
Wibbly-Wobbly, Timey-Wimey Stuff
Architecture with Agility Masterclass
Architecture with Agility Masterclass
Software Architecture in the 2020s
Software Architecture in the 2020s
Architecture with Agility
Architecture with Agility
Live Ask Me Anything with Kevlin Henney
Live Ask Me Anything with Kevlin Henney
Architecture with Agility Masterclass Taster
Architecture with Agility Masterclass Taster

Past masterclasses featuring Kevlin Henney

Architecture with Agility | GOTO Chicago 2018

Browse all experts

Here