GOTO Amsterdam 2023

Jan Klat
Dr.Max Product Blog
9 min readSep 12, 2023

--

Greetings from GOTO Amsterdam 2023! Grab your virtual notepads as I spill the beans on the enlightening adventure I had at this year’s conference. A heartfelt round of applause to the masterminds behind the scenes, partners who made it all possible, tireless volunteers, and the vibrant attendees who turned this event into a knowledge-packed extravaganza. I’m also grateful to Dr. Max for allowing us to improve and learn new things!

Day 1

If you’d think the start would be slow, make no mistake and come early from the very first keynote it was an information-packed blast.

Daniel Bryant — The Busy Platform Engineers Guide to API Gateways

Daniel drafted a couple of points that I find valuable for anyone implementing an API Gateway. And not necessarily only that, you could apply these principles to other situations when you’re doing work that affects engineers rather than users. Or when generally working on developer experience tasks:

“Treat the platform as a product”

Take from that what your standard process tells you to — do you define persons? Do you include the UX team to optimize developer portal workflows? Do you take their insight into account when defining roadmap and priorities?
The second and equally important argument from Daniel is that API Gateway specifically is a Type 1 decision, one that will stick with you for quite some time, be a key component in your traffic path and be costly. Make sure to take all these into account when making the decision

Clare Sudbery — Continuous Integration: That’s not what they meant

Clare’s main point is: unless you’re doing Trunk Based Development, it’s not really Continuous integration. And it’s a valid point. The change though, as these often do, requires s significant shift in your process and most importantly minds. If in doubt though consult the linked resources and you might find that your fears might not be as valid as you’d expect.
📚 DORA metrics
📚 State of DevOps

Joris Kuipers — Industry myth busting

Joris embarked on a myth-busting journey that might not have triggered mental fireworks, but it certainly lit a spark of critical thinking. His session right after the lunch was like a gentle warm-up before a cerebral workout.

“Calling things Extreme apparently really helps so … what I’m proposing today is for you to practice Extreme pragmatism in your day-to-day job”

Adele Carpenter — A teacher, an economist and a developer walk into a bar…

What do these teachers and economists have to do with software development you ask? Well, Adele’s talk addresses the phenomenon of things and topics people in these industries and professions just “know”.

On a fictional story of legacy codebase that definitely needs a rebuild and how that project progresses she points out how to take a different perspective on things you might usually take for granted. She also emphasizes the need to focus on relationships in the team and proposes to utilize ANCA concept

Uri Goldshtein — GraphQL Mesh — Query any API, run on any platform

Uri was presenting a set of tools from The guild — a group of open-source developers who actually supply quite a nice toolset to support your usage and maintenance of GraphQL ecosystem. If that’s something you’re interested in or struggle with I definitely suggest checking out at least a couple of them:
GraphQL Mesh for federating various data sources in GraphQL endpoint
GraphQL Hive for schema registry and monitoring of your APIs

Monitoring GraphQL APIs — source https://the-guild.dev/graphql/hive

Bert Hubert — Privacy, crime, national security, human rights & you in the middle

Closing the day was a great talk by Bert Hubert, which is already publicly available (see below). I definitely suggest watching the whole talk so that you can better think about how and what data you work with and what implications it might have (even if your intentions are noble). If there was one key takeaway from me it would be

When government approaches you and asks for data ALWAYS point them to Legal Department

Day 2

Opening the second day was a keynote by Erik Scherder a neuroscientist who not only gave his insights on how our brains work and what we can do to improve that. At 71 years he himself is quite an impressive example of the effects his suggestions might have.

Gert Hengeveld — State of Storybook 7

Keynotes on existing products tend to turn into self-promo which definitely wasn’t the case with Gert’s presentation. He focused on improvements they’ve done over the past months and the direction they’re heading into. Storybook is trying to define a standard for UI components library definition that doesn’t even necessarily rely just on their tool and is language/framework agnostic as is defined in vanilla JS. If you haven’t heard go ahead and check the tool. I also chatted to Gert at the party later that day and had a chance to further pick his brain. Cheers, much appreciated!

Stefan Tilkov — Practical (a.k.a. actually useful) architecture

One of my most favorite talks from the conference, Stefan focused on practicalities, struggles, and how to deal with them for architects.
Some of the suggestions revolved around

  • Ways to approach different detail levels of architecture (i.e. domain->macro->micro). Check C4 model
  • Matching organization to product (~ Conway’s law)
  • Realizing what’s the depth of standards you want to define — rather than being super strict org-wide think about defining best practices
  • Importance of comparing delivery flows to actual Runtime quality

Ben Sadeghipour — How the hack?

Ben’s focus in this presentation was mostly oriented to basic principles of bug bounties, how you can enter the space as well as how you can approach it from a company POV. If you haven’t seen it, check last year’s talk What the hack?

Christof Leng — Ten things we’ve learned from running production infrastructure at Google

Christof talked mostly about the challenges of large and scaled infrastructures compared to smaller operations. A couple of takeaways contain

  • Importance of planning reliability from the early start
  • Need to be treating the resources from a high level rather than caring for individual machines/…
  • Approaching processes — don’t blame, don’t praise heroes
  • Measuring what matters as in scale that’s what will help you identify weak points
  • Automation in scaling, definition, and issue mitigation

“Hope is not a strategy” — Google SRE motto

Dylan Beattie — Plain text

Quite an interesting talk on things that you might take for granted when working with simple text files.

You can watch a variation of the talk from the 2022 NDC Copenhagen

Mark Rendle — Programming’s greatest mistakes

Mark embarked on a time-travel escapade through “Programming’s Greatest Mistakes.” Picture this as a tech-themed trip down memory lane, complete with laughter, cringes, and the hope that history doesn’t repeat itself. It’s always funny to listen to these, but at the same time, listen carefully as you better learn from them.

You can also watch a variation of the talk from the 2022 NDC Copenhagen

Party

Party Time! As the curtain descended on day two, the conference grounds transformed into a party. Headlined by The Linebreakers concert, the conference party was like a carnival for coders, complete with games, gadgets, and even a three-sided table tennis that’s as perplexing as software bugs.

Day 3

Dave Thomas (Pragmatic Programmer) — One rule to rule them all

This talk again was already covered elsewhere — you can check it out below

Dave expands on his talk Agile is dead (GOTO 2015) and tries to suggest a way to get back to the original ideas of the agile manifesto in two ways
What — Find out where you are->Take a small step towards your goal->Adjust based on what you learn->Repat
How — If faced with 2+ alternatives that deliver roughly the same value take the path that makes future change easier

The reason for that is that in today’s world of our industry, no code is “correct” due to the fact that there’s a need for constant change (requirements, policies, law, …)

Dennie Declercq — Autism in tech

Dennie explained with examples from his own life & experiences how autism affects him and how you can better cooperate. Yet you also need to understand that what society calls “autism” is just shorthand for Autism spectrum disorder (ASD) and that not every two people with that diagnosis will be the same to work with.

For me, it’s very much easy to plan and go to a conference on the other side of the World — like the US or Australia than doing my grocery shopping.

For example, Dennie talks about the stimuli response system and the difference between hypersensitivity (being overwhelmed by stimuli) and hyposensitivity (lacking stimuli). Similarly then how seemingly mundane things can bring someone a hard time compared to things you’d expect.

You can also take learning from that and apply them to your users. Accessibility matters so much and as Dennie reminded us and paraphrasing on Microsoft a11y guidelines

Disability is a mismatch between a person’s capabilities and the situation

Eoin Woods — Democratising Software Architecture

Without a doubt a second participant in a tie for my favorite keynote of the conference.

Eoin goes into detail on the role of architecture in a modern ~ DevOps world. Not saying it’s not needed anymore but outlining things and concepts how it can adapt. In short — with DevOps having continuous everything, even the architecture can be approached in that fashion. In fact, it’s a title of a book he co-authored — linked below

📚Continuous Architecture
📚Continuous Architecture in Practice

📚Team topologies
📚Software Systems Architecture
📚Just enough software architecture
📚Design It!: From Programmer to Software Architect

Note: At the time of posting the audio of the uploaded file is incorrect and if you listen with single bud you might not hear anything (because of the “mono”fication — if that’s even a word). Use both earbuds :)

Dylan Beattie — Failure Is Always An Option

One more talk you can watch from its previous iterations below; On a couple of instances of catastrophic events of (not only, but prominently) NASA missions, Dylan paraphrases issues we can observe in software development.

A famous quote from Apollo 13 movie put to a test

One of the examples is how we treat failures — in a sense where we tend to neglect things that gradually worsen — one example I was recently discussing with a colleague might be monitoring alerts that with quantity become meaningless as you gradually skip on them to the point where you ignore them completely.

Closing question

Photo by Camylla Battani on Unsplash

Now the question I’ve been asked multiple times since is “How would you compare GOTO to LeadDev” — conference I’ve covered last year. I do have my preference between the two, but it’s based on the contents of them. While GOTO is aiming at more technical topics and dives deep into them LeadDev is more oriented toward the leadership (as the name suggests) and I believe both are equally important. Depending on your needs.

I liked the venue and organization slightly better at the LeadDev but it’s hard to compete with The Linebreakers concert. Ultimately the choice is of course yours.

--

--