Imagine you built a piece of software that everyone uses hundreds of times a day. It’s installed on every computer and mobile device. The entire Internet relies on it. It’s the cloud, thirty years ago. That’s what Paul Mockapetris did when he created DNS, the naming system on which the Web is built. Oh, and he also wrote the first SMTP implementation. That’s email. In this candid session, hear what it was like at the beginning, when a little piece of code could have a huge impact on the world.
2. About Me
• Research / University
– Invented Virtual Memory at age 18
• (unfortunately, it had been invented years before)
– Added the S to SMTP
– Invented the DNS
• Startups
– @Home
– Software.com
– Fiberlane / Cerent / Siara
– Urban Media
– Nominum
3. Origins of the DNS
• 1983 the big switch from Arpanet (NCP) to Internet (IP/TCP)
– Redesign everything
• Mail
• FTP
• Etc, etc
• Paul gets the job of crafting a compromise
combining ~5 naming schemes
• Starts over while nobody is watching
• Rules learned?
4.
5. Rule #1 – Simplicity
• Don’t be clever if you don’t need to be.
• The customer needs to understand the interface, not the
inner workings.
• Your plan probably already has a flaw or two you will have to
deal with; avoid creating challenges.
6.
7. Rule #2 – Have a plan you can explain
• For example:
– DNS (3 years to launch) vs. DNSSEC (25 and
counting)
– So long the politics change out from under you
• Monte Carlo development works; but can be
expensive
8. Complexity as a limit
Impossible
Power of technology
Not Complexity
Limited
Time
8
9. Rule #3 – Plan for extension
• A system where you know every possible use isn’t
well specified, it’s limited.
• The future will extend and desecrate your baby.