Skip to content
HHackerTube.videoSurprise me

Unconditional Code • Michael Feathers • GOTO 2018

Unconditional Code • Michael Feathers • GOTO 2018 on HackerTube: recommended by 2 Hacker News commenters across 2 separate months, 2018–2021.

GOTO Conferences

talk · intermediate · evergreen

Open on YouTube

Michael Feathers' GOTO Chicago 2018 talk on reducing error checks and conditional logic in code. He offers a framework for handling errors and decisions at the level of code and architecture.

Why Hacker News recommends it

HN recommends it for the idea of giving data instead of asking for it, and ties it to zero values and exception-free design.

people recommended it
2
separate months
2
strong recommendations
0
discussed on HN
2018–2021
“giving data instead of asking for data avoids error conditions”
— hinkley, Feb 2020, in “You’re better off using Exceptions”

What HN commenters said

3 Hacker News comments link this video. Each one links back to its thread.

hinkleyFeb 2020Recommends

I was watching this the other day: ▶ this video Unconditional Code by Michael Feathers One solution to this problem is discussed toward the middle: giving data instead of asking for data avoids error conditions. Doing so pushes use of the data farther down the call tree and pulls acquisition up near the top, where we are closer to the user and thus able to more clearly decide what if anything to do about these corner cases.

in “You’re better off using Exceptions” · View on HN

raghavaDec 2018Recommends

Blockchains Are a Bad Idea (James Mickens) [link] I find almost all from GOTO 2018 very insightful. [link] esp ones listed below. GOTO 2018 • The Do's and Don'ts of Error Handling • Joe Armstrong [link] GOTO 2018 • Pragmatic Event-Driven Microservices • Allard Buijze [link] GOTO 2018 • Why Business Cases are Toxic • Chris Matts [link] GOTO 2018 • Unconditional Code • Michael Feathers ▶ this video

in “Ask HN: Best talks of 2018?” · View on HN

cratermoonOct 2021Cites it

Please no on the Universal nil. Meaningful zero values for types are essential. It may be confusing to some that nil is a valid zero value for some types and not others, in which case that needs to be refined, but having a type that can either be a value, a zero value, or a nil introduces complexity where there should be simplicity. Having a zero value enables, for example, Unconditional Programming: ▶ this video

in “Things Go needs more than generics” · View on HN

Topics & tags

Software architecture & designSoftware practice, open source & careersconditionalserror handlinglegacy codeunconditional programminggoto conference