If code is the colouring pens and lego blocks of our times - the tools of creation - how do we teach the curiosity, joy and wonder to our kids? I spent last summer looking at programming and play: how to create experiences that go deeper than just learning logic.
So, just like Alice, I swallowed the blue pill and fell down inside the machine.
It's not your fault. Code rots. We don't hold entropy against you, but we expect you to give a damn.
This story is about code that brings new meaning to the word 'legacy'. The accidental discovery of this body of code provoked a moral crisis. I wanted to pretend I hadn't seen it, yet I couldn't justify tiptoeing quietly away.
This talk examines the dilemmas we face when balancing our choices today with their cost tomorrow.
It's not your fault. Even so, it is your responsibility.
Abstraction is a tool that magnifies the force of the human mind. The use of abstraction to make complex ideas manageable is fundamental to our work as programmers and to human culture as a whole. That's why mathematics — the study of abstraction — is so important and powerful.
This is a talk about abstraction: where it comes from, what it's for, and how we can use it to make our programs better.
Our code is full of hidden assumptions, things that seem like nothing, secrets that we did not name and thus cannot see.
These secrets represent missing concepts and this talk shows you how to expose these concepts with code that is easy to understand, change and extend.
Being explicit about ideas will make your code simpler, your apps clearer and your life better. Even very small ideas matter. Everything, even nothing, is something.