The Joe Walker Podcast - The Brave Cookie Monster - Brendan Eich
Episode Date: May 29, 2018Brendan Eich is widely regarded as a 'Father of the Web'. He is the creator of JavaScript and...See omnystudio.com/listener for privacy information....
Transcript
Discussion (0)
From Swagman Media, this is the Jolly Swagman Podcast. Here are your hosts, Angus and Joe.
Hello, ladies and gentlemen, and welcome to the 50th episode of the Jolly Swagman Podcast.
I'm Joe Walker, and welcome also to my good friend and co-host Angus Iles.
Great to be back. We haven't seen each other since New York.
It's been a while. We had a great night out in New York.
That final night was great and since then you've just gone on an absolute interviewing spree.
I'm sure all our listeners have been keeping up with the episodes but just some absolute bangers.
I've been on a rampage and it's been a lot of fun
and it's taken us to today which is a milestone it's big 50th episode it's it's been a good
journey here thanks to all the listeners who have joined us along the way uh when we started out
this little old podcast who would have thought hey 50 episodes and some big names along the way
to that we've spoken to and we're having a party at the end of June to celebrate.
Yeah.
Look, one thing we love to do here at Swagman Media is throw a few parties.
So keep an eye on the website and the Facebook page and the Twitter account for all the details.
If you're in Sydney, we'd love to have you.
Details to be released soon and a new line of merch coming out.
Yeah.
Bottle openers, t-shirts-shirts you name it we got it
yep let's talk about this week's guest his name is brendan eich yes that is his name and everyone
everyone listening would be familiar with his work whether they know it or not that's right
so brendan is a father of the web and not not because he's a spider but he's one of the one of the most impressive
developers in the world he created javascript at netscape back in 1995 just say that again he
invented javascript invented javascript yes which is now one of the three core programming languages of the web alongside html and css so as of 2016 this was the most recent
statistic i could get but about 92 of the web is written with javascript and a lot of the biggest
websites you'll know are heavily reliant on it for example facebook and is google javascript as well
i actually have no idea i'm pretty sure google's javascript oh in fact i know that it's probably
probably yeah so there you go so i just didn't want to speak out of line all right that's what
we do so he famously created javascript in a 10-day sprint while he was at netscape netscape
the the famous company which was known for the netscape web browser which mark andreessen founded
brendan's story has a great narrative arc because there's this like
theme of redemption so as we discussed in the in the episode he is ambivalent about some aspects
of his legacy what happened is that javascript in the in combination with the cookies technology
when web servers drop a cookie on your browser is what has essentially enabled ads and ad tracking.
So ads and advertisers stalking you around the web.
So this is like when you look at a pair of shoes on a Google website
and all of a sudden in the next browser there's just shoes everywhere.
Exactly.
I hate that.
It's so annoying.
Exactly.
The ones that annoy me the most are if you buy –
so I bought a flight to New York last year.
And then for the next three months,
I was being stalked by flight deals to New York.
I only needed the one flight.
But why? You can have more though.
So Brendan, before we return to that storyline,
Brendan went and co-founded the Mozilla project,
which you will know for the Firefox web browser.
So that was also Brendan Eich.
And then in 2015, he's kind of come back to address this legacy of advertising through Brave,
which is the company that he now leads as CEO and co-founder.
Yeah, so I've been using Brave a bit.
It's just another web browser, but it blocks this cookie dropping, this ads and tracking code that gets dropped into your browser. So you can download Brave now as a web software and it's pretty cool stuff but it's
interesting that he's come back to kind of address some of the problems that he helped create it's um
it's quite an interesting sort of quirk about brendan yeah absolutely and brave also allows
micro payments they led an ico last year for the basic attention token. So as a user, you get paid these basic attention
tokens, which is based on the Ethereum blockchain. And it's a way to break the standoff or a way to
break the incentive misalignment problem between advertisers and users. In this episode, we talked
the history of creating JavaScript and what it was like back in those days in Netscape.
We talk about the Mozilla Corporation and what Mozilla represented.
We talk about Brendan's mission to change the way users experience advertising on the web.
And we go into other things as well like what coding is like, whether it's an art or a science.
Enjoy the episode, guys.
I can't wait to hear it.
Yeah.
So please enjoy.
Boom, we're on. Brendan Eyck, thank you for joining me.
You're welcome. It's my pleasure.
And I'm very excited to talk with you because not only are you someone who's created world
changing technology, but you also hold a very distinguished place among Americans
in that you know what a swagman is.
Because far from knowing what a swagman is,
most people I speak to over here ask whether I'm English or Scottish
or French or whatever, but I was very impressed.
Yes, my wife's Canadian, and our children know or knew, maybe I've forgotten now,
Waltzing Matilda, so I know what a swag man is. Perfect. Well, today we're going to talk about
JavaScript, obviously, the founding of Mozilla and Brave, which is your latest company.
But before we get there, I just wanted to
introduce you to the audience. So you were born and raised in Palo Alto?
No, I was born in Pittsburgh, Pennsylvania. I'm East Coast. We East Coast people have
that edge over the slackers in California. I was born in Pittsburgh in 1961.
I was a Cold War kid.
I like to think, because I was sort of late bloomer, that I'm not a boomer.
And I discovered some people carved out Generation Jones, which seems like a made-up generation.
But I'll take it.
It's pre-Gen X, post-boomer.
And I lived in Maryland for a time near D.C. in Gaithersburg from fifth to middle of 10th grade and then Palo Alto. Right. And what was Palo Alto like when you were growing up? Because
I've been staying there the last few days with friends and it's sort of a very, I mean, the
streetscapes are very glitzy and kind of well-kept. It's pretty posh now. It was more sleepy.
It was more like old California,
which extended up into the foothills
and down to Santa Cruz.
It was more farmers and hippies.
There were a lot of orchards still in the valley then.
The air was different.
I can't really describe it.
I miss it.
It was, you know, obviously a high-tech area even then
because Intel, National Semi,
Fairchild before Intel uh famously um with
robert noyce and others defecting uh or they called the the traitorous aid or something they
all quit fairchild or they all quit um shockley to go found pairchild i forget the exact details it's
it's a famous history of semiconductor companies in the valley but uh there were a lot of orchards
it was a different place and in the 80s you studied were a lot of orchards. It was a different place.
And in the 80s, you studied a Bachelor of Computer Science at Santa Clara University?
79 to 83, yeah. And then Masters of Computer Science at the University of Illinois.
Yes. Eight or 10 years before Mark Andreasson and others, yeah.
Oh, there you go. Don't let them forget it.
I was there when it was the old small buildings,
the rabbit warrens in the basement of the digital computing lab.
I wouldn't recognize it now.
It's been completely built up with the Siebel Center
and all sorts of fancy new buildings.
Right.
And back when you took those degrees,
what sort of mindset was computer science held in
as both an academic course and a career because today
obviously there's this huge aura around tech and entrepreneurship in the valley was it different
back then it was uh it was different but i think computer science had already gone through the
first um you know great two decades where i think in many areas of science you find a lot of the Not all but a lot of the important work gets done
Just very rapidly by the leading lights. They sort of search the space and
So when I got to graduate school
The Sun one architecture was being licensed to seven companies including Sun Microsystems
Which famously was founded by Andreas Bechtolsheim, who quit his PhD program at Stanford to join Bill Joy and others to found
Sun. And that meant that there were technical workstations that could run Unix and were
compelling computers, and they were more like a PC, like a desktop machine. The computers I used in the university lab were still mini computers.
These were big, as big as a refrigerator or bigger.
We still had mag tapes.
So it was a different era of computing, different computing class of devices that was common.
But computer science was esteemed in the Valley.
I think hardware was perhaps more important.
And what was interesting to me then was that you saw a lot of companies doing both. They would do new hardware, new VLSI or new board level custom computing. Risk was
coming in in the later 80s. They were doing software to match, system software.
Nice. So I'm going to jump ahead now to Netscape. So you've been a programmer for roughly sort of 10 years.
And then in 1995, Netscape recruits you.
Yes, they tried in 94 and I foolishly turned them down.
But I was still at another startup, which is a long story.
I'll skip.
But it was an amazing place.
It was like the PhD program I didn't do.
And so I stayed a third year at that startup called MicroUnity.
And then I went the second year to Netscape when the same people I knew invited me again. And those
were people from Silicon Graphics because Netscape was a confluence of Jim Clark and some founding
people from SGI and Mark Andreessen and people from his team at NCSA at the University of Illinois
Urbana-Champaign, plus Lou Montulli from Kansas University.
So not all of my listeners might be familiar with Mosaic and Netscape, but Mosaic was the
first sort of popular web browser.
And Mark Andreessen led the team that created that technology.
And then he founded Netscape, which was another very successful browser.
Yes, Netscape, Clark and Andreessen
apparently were going to try to do something innovative
and they weren't sure what.
And I heard later they had planned to look at the Nintendo 64
as a new platform for software.
But when push came to shove,
they realized they could unseat Mosaic,
which had just become
sort of popular and popularized the web, but was not full strength commercial ready.
It didn't have what we now take for granted as transport layer security, the HTTPS URL
scheme, the padlock in the browser URL bar.
So it wasn't what you'd want to trust your credit card to going over the wire
in the clear um and andreason and clark i think realized we could they could just take a second
run at it unseat mosaic and make netscape be the the browser that commercialized the web and put
the url on the billboard which they did got it so andreason i'm very interested in because he's one of the smartest people in tech. He's now enacted this amazing career pivot from entrepreneurship to venture capital. And he's at A16Z with Ben Horowitz. But there are some very famous stories of his both brilliance and temperament back in the Netscape days. I'm wondering if you have any anecdotes or war stories you can share with us.
I get to burn Mark's ears a little bit.
Mark did not invest in Brave, so I'll just say one thing.
He was back then a big kid who looked like he was fresh off the farm.
And he, sorry about that,
he liked to eat at the Peninsula Creamery in Palo Alto,
and that's where we hatched our JavaScript plans.
So Peninsula Creamery in downtown is still open.
You can get milkshakes and very fattening desserts.
And Mark's lost a lot of weight since then.
He looks great last time I saw him.
So I'll leave it at that.
Mark was always working, always up late.
Everybody, I think, played Quake a lot back then.
You have to realize Mark was really young, right?
And I was older.
But how old was I?
I was like 34.
Yeah, 34 when I joined.
And everything was supposed to go super fast.
I think there was a sense both of opportunity and of necessity
because Microsoft was known to be coming after Netscape
because they tried to buy Netscape in late 94 for too little money,
and Jim Clark and Jim Barksdale, the CEO, said, get lost.
And so at some point, Gates realized this is not going away
and this is going to change what we were planning.
Microsoft had been planning to take down AOL, one of the big Walt Gardens,
with a project codenamed Blackbird.
And when they realized that Netscape was going to unseat Mosaic and commercialize the web,
Gates wrote a famous memo called the Internet Tidal Wave, I believe.
And he basically cracked the whip on all of Microsoft and turned the company away
from its proprietary takedown of AOL toward sort of copying Netscape
and then sort of eventually taking over the browser market,
which they did.
So embrace, extend, extinguish is the famous triad.
And this is what was called the first browser war.
Yes.
Netscape had a shot at it for a while
because Microsoft took a while turning
and they had bought Spyglass, which was...
I think they bought Spyglass, or they bought the code from it or something.
That became like Internet Explorer 1, which wasn't released.
IE2, which wasn't really ready for primetime.
IE3, which you could start to see coming into form in 96.
And then IE4, which in 97, 98, was bundled with Windows 95 and then 98 and was pretty darn good on Windows.
So the first browser war, that's sort of the historical backdrop to your hiring at Netscape.
I think so.
I think the background of urgency coming from Microsoft lowballing Netscape and getting sent away and then known to be coming after them, was complemented by the sense of opportunity, real opportunity,
more of a positive sense that Netscape could make a new platform.
And that's why they did the deal with Sun Microsystems to license Java
and put the Java sort of runtime into the Netscape browser.
And that's what changed what I was working on from the time I was recruited,
where they said, come and do Scheme,
the beautiful Lisp dialect with static scope from Guy Steele and Jerry Sussman.
So Scheme was an early programming language.
Yes, it was a 70s research language. It was a Lisp variant. Some famous papers written by
Guy and Jerry, Lambda the ultimate X, you fill in the blank, Lambda the ultimate go-to,
Lambda the ultimate, you could do a lot with the Lambda calculus and the concrete
programmable form of it that was Lisp, or in this case, Scheme, which had some nicer
properties. It had a minimal set of basic forms. It had lexical scope, which we finally have in
JavaScript. It had, eventually, this wasn't worked out at the time fully, I think, hygienic macros. And so it sounded like a great language
for people who idealized
Lisp. And I was one of them because I hadn't used it commercially. I talked to people who did
later on and they said, Scheme's not quite the industrial language
that you would reach for. And the use of it as
recruiting bait worked because I jumped a year late from MicroUnity to Netscape.
But when I got there, this deal with Sun was in progress
to license Java, and Mark was going around saying,
Netscape plus Java kills Windows.
And a bunch of people were saying,
shh, don't say that too many times
or Microsoft will get you.
First of all, they'll get aroused to action, which they did.
The internet did a wave memo.
Because it sounds like an existential threat.
If Windows is just a commodity OS and you can raise the level of applications
and discourse to the browser with a full-strength programming language like Java,
then who needs Microsoft's tools?
Who needs Visual C++?
Who needs Visual Basic?
Who needs any of that stuff except maybe Excel, which is
still going strong. It's about the only thing
from that era that's really, I think,
making a lot of sense now.
So you had
this
sense of opportunity about
Java plus Netscape, and
that meant when I hired, it wasn't Scheme anymore.
It was like, do we need
a second language at all?
Or okay, maybe we need a language but it's got to look like Java.
And that's what became JavaScript.
And Mark?
Yeah, so just to clarify for people,
Java and JavaScript are not the same.
Not at all.
JavaScript is sort of like the glue that holds Java together.
That was the idea originally.
Eventually JavaScript grew up and Robin became Batman and
took over the Batcave because Java
is pretty much dead on the
client. My
CISO, Yan Zhu, just tweeted yesterday
an update,
screen cap of the Java updater
trying to connect over port 80
insecure. She tweeted
dying of fire because nobody wants Java
on your machine anymore. It became a security vector, a malware vector. It became a terrible malware vector like
10 or 12 years ago. Brian Krebs, formerly Washington Post, a notable security expert,
identified it as the number one vector for malware at the time. This was like 10 years,
11 years ago. And it's gone. People don't use Java on the client unless they feel compelled
to for some legacy
reason like scandinavian smart card technology no one uses but the government mandates
so javascript one it could replace java yeah yeah but at the time um mark andreason thought that
java was the secret weapon that would help yes we all thought that you needed two you needed
uh this is like sith lords you needed two. You needed, this is like Sith Lords,
you needed the big language that the component authors used
because they were the expert programmers
who cost, at the time, $100,000 a year or more.
They would write these reusable components.
This was before Java Bean,
so you have to think of them as some kind of a class
or a package in Java.
And then there were the million-fold,
less expensive, possibly not expert programmers at all,
maybe accountants or designers who could program a little bit, people who use Visual Basic to good
advantage on Microsoft's platform. And I think this is a valid model. It's sort of an anthropological
model that you have this pyramid of programmers, and it's much broader at the base. And those
people are not ready for, nor do they need to write type declarations and a package wrapping their main function
and all this ceremony that Java requires.
So the idea was give them a dynamic language like BASIC,
give them a language they can start using by the yard.
They can just write some JavaScript in the HTML.
Mark was very clear on that, which I took to heart
because I had to figure out how to do it.
Embed it directly in the markup without making it leak out into the text that you see that's rendered,
especially in old browsers that don't understand it,
and make it easy to use, make it approachable,
make it something that almost anybody could use,
make it something that you could copy and paste from a site you saw,
which makes it almost like a virus.
Right.
So that was the challenge.
Before we kind of continue this story,
I just want to ask you, you know,
what was the prevailing environment like back at Netscape in those days?
Because I've heard rumors of, you know,
you working 100-hour-plus weeks and whatnot.
Yeah.
What was it like walking into the office at 9 a.m and um or waking up there uh so jamie zwinski wrote a famous essay you can still
find called nscp dorm nscp is the stock symbol for netscape and it describes what it was like i think
it was like a continuation of university uh jamie was on the first floor of the company i was on the
second floor not in building terms but in joining and so i saw i saw it uh after he did but it was still going and he in
particular had a camouflage net draped over his cube and so it's kind of dark in there and you
couldn't be sure if he'd been in there all night um but so he would literally sleep at his desk
yeah i mean here's a jamie story uh he had a famous blowout, I think it was with Lou Montulli, and he threw a chair at the wall and he left for a week. And while he was gone, his
colleagues, who I think liked him in spite of the fighting, put a mannequin in his chair with a Jamie
clothes on and Jamie wig, and they kept it dark. And so people would walk by and say, hey, Jamie.
They wouldn't know he wasn't in there. I guess he didn't always reply.
So, you know, it was an intense place.
There were, you know, younger crowd.
I first saw the sleeping room, which had beds with relatively clean linen.
The VP of engineering,
founding engineering manager Tom Paquin
would take the sheets home every other day
because he had a maid who could wash them.
I was kind of horrified by that because at Jim Clark's first company that I joined out of graduate school, Silicon Graphics, Clark said, engineers get offices.
You need quiet.
You need to be able to concentrate.
You need to be able to think.
And at Netscape, there was a promise of offices that was never made good on.
And in fact, there was a sleeping room.
So now you were working longer and harder than I think anybody did at SGI,
except for maybe the people starting it at Stanford.
So it was intense.
JavaScript, I did notoriously in a 10-day sprint.
It was actually a byte-coded interpreter
because it was meant to be put in the server as well as the client.
If you know about JavaScript now,
you heard of something called Node.js,
which is a way of running JavaScript servers
and very lightweight,
sort of asynchronous IO programming.
In the 90s, we didn't have the async part,
but we did have JavaScript in the server at Netscape.
We had it of grand vision.
And that was, I think,
the other exciting thing for me
was this whole push to make a platform that could take down Windows. And it did scare Microsoft,
but it didn't come about directly. Yeah. Have you met Bill Gates?
No. I enjoyed 96. I was revising JavaScript and we were pushing it towards standardization
finally later in the year under some moral pressure from people like gates who was whining escape keeps changing javascript
incompatibly and it's like not that you've never done that before with visual basic which was
changing incompatibly uh so i think it was the pot calling the kettle black but we did we did
standardized javascript and microsoft was constructive in that process because i think
they knew at least the principal who worked on it earnestly,
knew that it was going to be an important standard.
So you just alluded to the fact that
you created JavaScript in that 10-day sprint,
but I was wondering if we could start at the meeting
in the fattening creamery down in the valley.
Do you remember anything about that moment?
Sure.
It sounds almost like a conspiracy of sorts. It was because there were people in the escape who thought, remember anything about that moment? It sounds almost like a
conspiracy of sorts. It was, because there were people in Netscape who thought, well,
we're doing Java, why do we need another language? And so there was this sort of one-bit thinking
that says, if you've got Java, that's the hammer for all nails. They didn't attend to the programming
ziggurat where you have a million more people at the bottom who can program and glue the components together, the glue language idea.
So they didn't see the benefit of JavaScript.
And Mark and I had to prove it.
And that's why one of the reasons I did that 10-day sprint for a demo.
There were other teams that were hoping for JavaScript to happen because they wanted it on their server side.
The LiveWire project, which was kind of like an authoring tool set and PHP-like server.
You could hit a database and get the data through a authoring tool set and PHP like server. You could hit a database
and get the data through a template into
HTML forms and things like that.
And they wanted JavaScript for that very much.
So there was a little
conspiracy even inside Netscape at the time, which was
only like 150, 160
people.
Sun, Bill Joy was our big ally.
He was a founder, as I mentioned, but I don't
think anybody else liked it.
James Gosling and company had worked on Java for five years at a company called First Person, which Sun bought or funded.
I forget the exact how that came about. It was a set-top box research, I think it was clear to James and Arthur Van Hoff and others,
I know Arthur pretty well, who were working on Java, that they should also do a browser. So they
did HotJava. But HotJava was not commercially credible. It was very clean code, but it wasn't
compatible enough. It wasn't going to take down Mosaic or replace Netscape. So the Sun deal came
together mainly through Bill Joy and Mark and me. And at the premier meeting, Mark was very ambitious.
He said, well, we need Java, we need JavaScript,
and we need our own graphics layer in the browser,
which HTML did not provide.
There was no canvas element for programmable pixel-pushing images.
There was no WebGL, of course.
At the time, there was GL from Silicon Graphics,
which was being standardized as OpenGL through the 90s,
which led to OpenGL on mobile, which led to WebGL. But Mark wanted to do all three. And I said,
I know somebody who could help, but he's a PhD student at MIT. And Andrew Myers,
he's a professor at Cornell now. And I said, let's get him, but it's going to cost. And I
don't know if I can really get him out of grad school. That didn't happen. But that
Creamery meeting was where you could see Mark thinking big. And I could see it too, because I
had enough experience from Unix and SGI and my career to see how the whole package would come
together. It wouldn't just be two programming languages and HTML engine, it would be a graphics
engine. And if you have that, you can do almost any app. You need a few more things to do with
file system access, things like that, that are you can do almost any app. You need a few more things to do with file system access,
things like that, that are finally coming to the web slowly.
Or in the smartphone area, you need a bunch more sensor APIs.
But back then, on a PC, that was a pretty credible stack.
And we went for it. That was the Creamery meeting.
The Creamery meeting, yeah.
And was there any sense at the Creamery
about how significant this would be?
I think there was, like I said, the sense of opportunity, the sense of threat of Microsoft.
Mike Homer, rest in peace, the VP of Marketing had this metaphor for the giant monster truck of Microsoft in the distance coming up toward the little Netscape Yugo.
And you look in the mirror and it's way back there,
but it seems to be getting bigger.
And so you better step on the Yugo's gas,
but then you look ahead and there's a wall.
And then the next time you look in the rear view mirror,
you see the monster truck's bumper
with the Microsoft vanity plate right there.
And you're in big trouble.
And this happened in Netscape.
Over the course of 95 to 96 to 97,
Internet Explorer iterated.
This is what Microsoft does.
Well, they copy and then they improve.
They polish.
And out comes IE4, 97, 98.
I think it was in previews in 97.
And it's on Windows.
It's very compelling.
It is that stack that even had the graphics piece that was missing, and that's VML, vector markup language. And they had a lot of stuff based on ActiveX or the precursor, the Windows.com
or Olay automation interface layer.
It was a compelling platform.
And a friend of mine from MicroUnity
who joined Netscape,
and I went to a demo of IE in San Jose
at a local brew pub,
and our friend at Microsoft, Scott Isaac,
showed us everything.
And we were just like, we are doomed.
So that happened.
And Homer's metaphor, the monster truck,
it ran the Yugo into the wall.
I remember Barksdale at a meeting said,
KPMG, which was right across the street there
in Mountain View from Netscape,
just dropped us for Microsoft's products.
Replaced Netscape browser with IE.
They replaced Netscape servers
because Netscape was building a server-side business
where they could actually charge decent margins
with Microsoft servers.
And he said, don't go do anything bad at the building.
Don't vent at them.
And he said, this is bad.
We're losing the ability to charge for our products.
So I think I remember also in 97, two trips to France.
One was to standardize the first version of JavaScript,
the ECMA standard, and the second was in December.
You remember this?
This was when I believe Mike Homer was coming
to swing the axe at the very large Netscape sales office
in Paris, La La Fonse.
And it was the end of an era, right?
Netscape had been riding high,
and it had the fabulous IPO in August 1995 that ignited the dot-com boom. Clark had this instinct
to get money raised in the public market soon, get his money out soon. He wasn't wrong. It violated
my norms from the 80s for how you do this because SGI had to have two or three profitable quarters,
profitable quarters, no EBITDA accounting tricks,
before they could go public.
And I went through that IPO at SGI when I was young.
But Netscape did it without profitability
and set off this whole wave of pets.com and Amazon,
which started from Bezos selling books out of a garage
to an online store that took off.
So I want to take a quick step back for the non-technical listeners.
Sure.
What can you give us?
I know this is incredibly sort of basic for you,
but can you give us like a layman's definition of a programming language?
Sure.
It's a lot like when you're writing down directions for a friend, maybe especially someone who doesn't speak your native tongue as their first language.
You have to break everything down into very unambiguous sequence of instructions that you have them step through.
And if you make any mistake, you use some idiom, they can get very
lost. So programming is like that. It's like math plus sort of prose or poetry.
So if someone asks left or right, you can't say both.
You cannot fudge it. If you try to get clever, you can get in big trouble. I think when you use
programming languages, you often, especially the ones that demand you to sort of write a mathematical proof before you can even get started, you feel like a
complete dunderhead. But as someone tweeted recently, when you pull it off, you also feel
like a genius. Or in my case, I think I felt humbled because you sort of feel you're, you know,
as Plato said of science, you're carving nature at the joint you feel like you've you've achieved some insight um blake's poem you've seen the universe in a grain of sand and
there is that grain of sand uh realism there because you're talking about silicon dioxide
you know uh substrate that has these semiconductors uh deposited photo photolithography
it's amazing that we can take uh sand turn it into computers that are so dense,
we can write some new languages we invent
that allow us to make the computers do things like
light up the screen, make a computer game,
allow us to communicate around the world.
To me, it's almost like the movies
where you have Neo and the Matrix.
You can bend the matrix.
Software was always about how can I sort of bend the rules?
How can I make things faster?
Or how can I connect two great tastes together, chocolate and peanut butter, in a way that nobody thought of?
And it's so much easier because there's no outdoor work and heavy lifting.
There's no backbreaking labor.
It's really mental,
and it's kind of platonic.
Most people wouldn't realize this, but it's not just about writing the code. It's what you were saying, Brennan, but writing it very elegantly and efficiently. And that's where,
you know, it's not just a science, but almost an art and a creative process.
Yeah, I think that's true. It's a human art.
Don Knuth wrote this famous series of books,
The Art of Computer Science.
I forget the title.
We'll link to it.
And Knuth volumes one through three and then four,
which was long delayed.
And they're full of math, really, but they're also full of art.
And Don said, if it weren't an art, we could make a program write programs.
We could automate it completely.
But it's a human effort that requires art.
And they're starting to make machine learning, deep learning that can write programs by what I regard as a series of statistical tricks on existing code bases.
So it's not clear when we'll have computers replace us as programmers, but it could happen.
I don't know.
The jury's still out.
This is kind of the singularity question.
But I think it's an art, definitely.
And there is, like you said, this minimalism or this really competing set of aesthetic
theories that programmers fight among each other over
which one's the most true and beautiful, right?
Which one has the best transcendental properties?
The scheme language I mentioned earlier
is from the Lisp family.
It's from the functional programming family.
But it's not what some people regard
as true functional programming,
which is yet another more refined and more mathematical form of programming. Haskell is the exemplar language there, and then after Haskell Curry, one of the logicians and mathematicians who did a lot of important work along with Alonzo Church and others in the 20th century. And then there are programming languages like Fortran, from which descends ALGOL, which
leads to C, C++, Java.
So, there's a completely different sort of school of thought there called imperative
as opposed to functional programming, and object-oriented programming.
And you get these sub-schools and little sex, it starts to look like warring sex.
But there is always a value on, I think, expressiveness, minimalism, beauty.
So there's an arty aspect.
Yeah.
And JavaScript was a great example of that because, you know, this language that you created at the end of those 10 days was able to say things in a few lines that might have taken Java hundreds of lines.
Yes.
This was noticed.
You described there almost like a family tree of languages going back to our analogy of of a programming language being like a set of directions
for a friend where did javascript fit into that into that family tree what right what type of set
of directions was it well it didn't come uh I wouldn't say it came linearly from Java, even though the name
would suggest that, and that's been a source of confusion. Both JavaScript and Java came from
the C family by way of C++ in the case of Java. JavaScript was so bare bones, you couldn't really
see the C++ there, except perhaps the new operator, the NEW. But otherwise, it was kind of like a subset of C or C++ or Java.
But it had some other things going for it that weren't in any of those languages.
It had function.
There's a keyword function, eight big letters.
And it allowed you to declare a block of code that could be invoked and passed parameters, and you could get back a result.
And this is the loose sense of the functional programming idea
from Scheme and Lisp.
It's not the hard mathematical idea from Haskell,
but it gives you the ability to not only have functions
that take parameters and give you results that could be numbers,
could add to numbers or something.
You can pass functions to functions. You can call a function that returns
a function. And that's called higher order functional programming or higher order functions
because they take functions as parameters or return them as results. And that gave JavaScript
a huge boost. That was like the number one thing I did right was to make it that way. And that was
not determined by the Java deal with Sun
or by Mark Andreessen.
That was something I chose,
partly because they baited me with Scheme,
and I couldn't do Scheme.
So I said, I'm going to take the one thing I have time to do,
and that's first-class functions.
And you first called JavaScript, or you first named it Mocha.
Mark did.
Mark did.
Mark named it Mocha.
The Netscape marketing people thought,
oh, there's some server database
or some middleware called Mocha,
so we can't use that, which is kind of silly
because in trademark law, at least in a lot of countries,
you can say it's a different area, so you could use it.
But they wanted to call things using a live prefix,
so they called it LiveScript around the summer of 1995,
and that was a working name into the Netscape
first beta release of Netscape 2.
And there was LiveWire,
the server-side JavaScript tool
and server package I mentioned.
But by late in the year,
they realized their original goal
when we hatched the scheme with Bill Joy,
which was to put it next to Java
as the sidekick language.
Robin to Batman, the little brother language.
And they did a trademark license.
Bill Joy signed for Sun.
His name was Mud with James Gosling and others, I think, the next day.
On December 4th, 1995.
And that was when Netscape got the right to call it JavaScript.
The rest is history, really.
Long history.
I can't get into it all because it was tortured. But history, really. Long history.
I can't get into it all because it was tortured,
but Netscape was going down, and after that trip to France in September of 97
to standardize it,
I turned to foundmozilla.org with others,
and I kind of left JavaScript with somebody else
to take forward.
People talk about uh flow state do you oh the mental state yeah i forget his name
the russian yeah it's michael i i don't want to begin i believe in flow i i find yourself
entering i i do sometimes not not so much uh that's when i was young and concentrated. I think Jim Clark was right about offices and silence.
I know people who, I know somebody,
she helped her found a ballet studio.
She was a professional before she retired to teach ballet,
and she talked about it.
She believed in it.
And I know people like musicians who swear by it.
Obviously, when you're doing something like that in real time,
I used to do gymnastics, too, and tumbling.
They say there's a half-second lag in your reaction time,
so we're actually processing reality out of sync a half-second.
But when you're doing, you know,
she was doing, like, double fouette turns
at the end of the big black swan dance,
or I'm doing, like, back handsprings in series.
You are not consciously thinking through what you're doing.
You're in some combination of flow mode
and just muscle memory, kinesthetic memory
that you've programmed into your limbs.
But it can't just be your limbs.
It isn't like reflex arcs that don't go to your brain.
Your brain is there.
And I had trouble for years in all these areas
of music and dance where I was dropping out of flow mode because I had this other part of my brain, like the critic that was coming in there and saying, ah, you did that wrong.
And then fix that, and it would drop you right out.
The half-second delay would come back.
I finally mastered it, which was gratifying, and now I'm old and overweight.
But when I mastered it, I felt a lot better because it is real and it happens in programming too,
I think. And if you interrupt someone that you can tell, because they actually get mad at you,
right? They will get upset. You've taken them out of flow mode and they've sort of lost this
resonant connection to the problem space or the platonic realm, right?
Do you remember whether you were experiencing that when you were writing java script uh well it
was so intense that yes i mean i had already done a number of uh language projects uh as a student
and then which is how i got into computer science from physics i i changed after my third year of
physics because the chairman at santa clara was not helpful getting. I recall he said, have fun mowing lawns.
So I was already working in the computer lab,
and I went and got computer science-related jobs,
and I was programming.
And I started with Pascal and assembly language on the DEC minicomputers at the time,
and we didn't have Unix yet.
It was already out, but we didn't have it at Santa Clara.
And I felt affinity toward the sort of language theory, have a unix yet um it was already out but we didn't have it at santa clara and i i felt um
affinity toward the sort of language theory the kind of what we call compiler construction or the
theory of parsing the theory of regular languages uh it was very beautiful well researched uh and
it allowed uh you to sort of automatically from a grammar construct a recognizer for that grammar. And I built such parser generators.
Unix had a famous one called YAC,
Y-A-C-C, yet another compiler, compiler.
GNU Bison has replaced it as a pun
on YAC the animal to Bison.
And these tools let me see sort of the light
about a lot of problems in software.
And they led me into writing toy languages. And then at SGI,
I wrote a couple of compilers for network packet sniffing. One was to generate the filters that
captured packets. The other was to display what was in the packets in a graphical form.
And I used programming languages for both because it gave other people leverage where they could
say, oh, I have a new protocol suite, the Apple Talk Suite.
I need to make those packets recognizable in the tool.
And they could use the language I created to do that without having to write a lot of manual code to do it.
So I knew how to write industrial strength, I would say, interpreters and parsers.
And when I did JavaScript, I kind of plugged in, went into flow mode,
and just cranked out the front end for the language.
And then I think I had
less experience on an area that was
becoming important, which was
what people call the back end or the run time.
So I didn't do a bang-up job
on that. I didn't have time anyway.
And it didn't have to be fast either.
So it was kind of okay at first.
There were lots of bugs.
But over time, JavaScript has become very fast,
and a lot of the techniques that are used there,
just-in-time compiler techniques, if you know what that is,
came from the 90s research work out of Stanford that Sun acquired.
And that got me to JavaScript eventually.
Is it a totally different challenge to create a language
as opposed to write in one?
I think you have to understand things like parsers
and grammars.
I think if you don't do that,
you can get lost just hand coding it.
You can make ambiguous grammars,
which is never a good idea.
And it gives you a great speed up having done it.
There was a practice effect.
Also, I was a kernel hacker, which is operating system level.
So I understood how to put systems together in a way that didn't have too many layers,
but had some kind of common abstraction that you could use to make everything similar enough
that the higher layer didn't have to deal with a bunch of special cases.
And so that meant in JavaScript, everything's an object to a fault,
a very dynamic object,
probably should have had some things be less objecty.
But I was in such a rush
that I not only made first-class functions,
I made functions and arrays
and almost everything be an object.
From Java, I made numbers, strings, and booleans
be something less than an object,
but they can be wrapped in object clothing
when they need to be.
And that was a Java influence.
And people nowadays look at that and say,
that's a wart.
Why do you have those little sort of less than object
primitive types in the language?
And I say, it's because of Java.
Brendan, I have absolutely no idea what you just said.
But I know that it works because today,
I mean, I read a statistic,
well, at least this was true as of 2016, but about 92% of the web is written in JavaScript.
Yeah, people can complain about it because it has these primal flaws.
Some of them were added by me after the 10 days at the behest of my early users.
So when you start getting something that other people use, they will come to you and say,
can you change this?
Can you add that?
Can you relax this?
My advice is say no,
because I said yes,
and that caused some of the warts
that I'm still roasted for, rightly,
to be in the language.
It wasn't in the first 10 days.
JavaScript also had the advantage
of being on first,
being the first mover,
which Microsoft got that IBM deal for the PC for the operating system.
And people say, well, if it was some other language, it would have been that language.
And that's true.
It's hard to disprove that.
We don't know what would have happened in that alternate reality.
But JavaScript had another property that I put in of necessity, which is I made it really hackable.
You could overwrite almost any built-in. another property that I put in of necessity, which is I made it really hackable.
You could overwrite almost any built-in.
You could make the world of JavaScript be different from what I made it.
You could kind of dress it up the way you liked.
And a lot of languages don't let you do that.
They lock everything down.
I unlocked things because I knew early adopters,
I was even dealing with them
during the beta releases of Netscape 2,
would need that kind of mutability.
They'd need to be able to change things,
partly to work around my bugs
or to plug in their own preferred built-in function of a certain kind.
And so I did that,
and it had these bad security properties down the road,
but it was, I think, necessary and valuable
for the early survival and proliferation.
So JavaScript is like a successful,
I wouldn't say virus,
a successful amoeba.
Some of the biggest websites are written in JavaScript,
websites like Facebook.
It's now one of the three core programming languages.
But apart from its huge importance to the web, I feel like you might be ambivalent about some aspects of its legacy. I've heard you state the equation, JavaScript plus
cookies equals ads and tracking. And I was wondering if you could explain what that means to us.
Sure. Well, I actually started with the image element. So this gives you another idea of Mark Andreessen and Eric Bina, who was the real programming heavy lifter for Mosaic and
then Netscape. I worked with Eric intensively at Netscape. Eric wrote the sort of engine that
turns Markup into a web page. And I put JavaScript into his engine. And he did Mosaic with Mark at NCSA. And in 1993, they cooked up the image element,
which HTML didn't have in any form that we recognized before then. So people couldn't
put the picture of their dog and cat on their web page until Mark said, hey, let's do it.
And you can find the email where he proposed this. And you knew he was proposing it at the
same time that Eric was coding it, and it was going to ship. So it happened.
Now, the image allows you to fetch the cat picture
from your friend's server.
You have a server.
Your web page is on your server.
The cat picture is on your friend's server.
Sounds innocent, right?
Somebody comes to your server.
They load your page.
The image element refers off to your friend.
Your browser goes over to your friend's server
and gets the compressed data to render that image of the cat.
Lovely cat.
Everything's good.
Except there have been two network requests, at least, from your browser on your PC.
One to your server and the other to your friends.
So now your friend can see not only if they're really your friend, they might know, hey,
they're using my cat picture. They know when they're really your friend, they might know, hey, they're using my cat picture.
They know when they're using it.
In 1994, Lou Montulli added the cookie,
and he added it so that when you logged into a website
and then shut your browser down,
or just went back in the browser back button
and then forward again, you wouldn't have to re-log in.
Because the protocol everyone uses in HTTPS,
these are the web protocols for getting hypertext,
getting all the resources that you get, including images,
is what's called stateless.
It doesn't remember who you are.
The cookie added a little bit of state, but it did it in a clever way.
It kept passing it back and forth.
Instead of giving you a user number and having the server remember you,
the server just put the user number in the cookie and set it to the client.
The client remembered it associated with that server's you, the server just put the user number in the cookie and set it to the client.
The client remembered it associated with that server's address,
its domain name, or kind of a part of its domain name.
And then next time you went,
whatever the server set as the cookie went back,
and the server could update it, it could add to it,
it could always remember you were user 1234.
What I don't think Lou intended, I'm pretty sure he didn't, this might have been debated, was that the cookie was sent on every request and response. So remember,
I'm going to my own web page. I'm getting my page with my friend's cat picture. That's cool. My
server knows it's me, and it can give me a cookie that remembers my user number. It makes out,
and it can remember things about me, maybe, because I'm me me. I don't care. But the request that my browser makes to my friend's cat server
also gets a chance to have a cookie set by that cat server.
So the cat server can now start tracking me.
And if that cat picture is embedded in 100 other pages,
it can start tracking everybody.
And this happened.
It happened slowly at first, but by the year 2000, it was happening.
And JavaScript was the third fuel in the fire element here because images and cookies were a little bit clumsy.
You had to put what's called a pixel, a little one-by-one image nobody could see as a tracker in the page.
And to this day in ad tech, you'll hear people say, oh, we have a pixel tracking that.
And they don't even mean that anymore because JavaScript let that become a zero-by- zero invisible script. It didn't have to have an image at all. But scripts also are
requested, there are resources requested, and the server can set a cookie for them. So what became
known as the third party problem, very confusing. It's like the Marx Brothers night at the Obamacare
party, the first part contract scene. The first party is the server you're going to. I guess you're the zeroth party.
So you're going to the New York Times,
well-known address.
You're going to your bank.
Better be sure it's your bank
or it might be tricking you
and stealing your password
and then stealing your money.
That first party relationship is very important.
That's why when we have security
through the transport layer security,
HTTPS, the lock and the URL,
you want to know that you aren't being phished.
You haven't been lured to a lookalike site
that's stealing your credentials.
The second party, I think legally,
was this contractor who helped build the website.
Doesn't matter, they're gone.
They're essentially the first party.
The third party is this cat server out there
that's tracking you.
That's the third party.
And no one knows who these companies are.
It's like AppNexus and Rubicon, my friends at Sanobi, a bunch of other names you've never
heard of.
You probably never went to their website in your life.
But because their elements, nowadays script, are embedded in the New York Times and ESPN
and Wikipedia, wherever.
They don't have ads at Wikipedia.
But there are some analytics tags there, I think.
These third parties can build up a dossier across the web
based on those requests coming for the sub-resources,
the embedded elements, the scripts mainly.
And that is a huge source of concern.
I think it's also the basis of advertising on the modern web.
Yeah.
So when people feel like they're being kind of haunted around the web by ads
or they clicked on something and suddenly they start seeing ads for it, that's this
cookie technology.
It's due to cookie, JavaScript, and formerly the image.
I think the image is kind of retired because JavaScript can do it invisibly and do it better.
And yes, JavaScript definitely is part of that story.
Because the browser is this blind runtime that reads the
HTML from your server, and then it sees, hey, there's an image that wants the cat, and it goes
and asks the other cat server for that. And the cookie gets sad, and it remembers it, does its
job. It's just passively doing whatever the servers tell it. But what I think people didn't
appreciate, I don't think Lou did or I did, was how in all human relations you
have what's called the principal agent conflict of interest. We see this with real estate,
with the real estate agents.
Yes, the incentive misalignment problem.
Yes. And you see sort of layers of that and layers of bias and temptation to fraud,
I would say, that go beyond just conflict of interest.
And the layers of advertising technology and tracking that evolved in order to allow small and medium websites, of which there are more than a billion, according to Google,
to get some ad deals. They were too small to go directly to General Motors or Procter & Gamble
and say, hey, I've got some space. Will you pay me if I give you my space to put some ads in?
They couldn't possibly have the scale
to get that conversation with the big brands.
They would go through intermediaries,
and the intermediaries could sell space
on all these small and medium publishers together,
and that gave them enough advertising space
to appeal to the big brands.
But that meant that they had trapped the user
across all those sites,
because the individual sites didn't have an interesting dossier on you. But the totality of sites did. But one thing to
notice right away is that this created perverse incentives to the trackers against the publishers
because if I'm a small publisher and I give up some of my users' data, that could be used against
me as a publisher. The ads could cause people to
go to other sites than my own. And of course, the technology to get the ads into my space
involves layers and layers of entities like ad exchanges and other platforms and three-letter
acronyms. All this is what we call programmatic advertising. Yes. I think programmatic is one of
these words they love because nobody knows what it really means. There is still what's called direct sales of ad space, where you're a
big website, like Hearst, which owns L.com, the fashion site, and you have that beautiful,
go to L, the front page is dominated by an ad that's more than half the space above the fold.
And you can directly sell that to a brand, you know, Louis Vuitton handbag ad, beautiful video ad.
And that makes a lot of money, but it requires a sales force.
It requires a very popular site, requires your own IT team to do the mechanics of filling that ad space.
What most sites can only afford, they can't afford all of that, the sales team and so on.
They can only afford going to someone like Google or I mentioned Abnexus Nexus Brothers and they say, help me get good revenue for my space.
I can't talk to the brands.
I'm too small, but you can get me a good deal.
And what the intermediary does is they say, of course, we'll help you, but we'll also
take a cut of the revenue first and then we'll give you whatever's left.
And it turns out there are so many people taking cuts that what's left for the publishers
isn't what was promised.
It tends to go down over time.
The user gets haunted, like you said, by what's called retargeting, where the tracking is incomplete.
So I go to one car website in the U.S., I think CarMax or AutoTrader, and suddenly I'm cookied by a third party as an auto-entender.
And then every other site I go to, I'm getting the same stupid car ad,
even though I was just casually looking.
That drives people to adopt ad blockers.
It has a negative externality.
Yeah, it's funny how inefficient some of that tracking is
because some purchases are like, you know,
once-off type purchases.
Like, you know, maybe you bought that car.
You're not thinking about buying
cars for another 10 years but you get followed around by cars and you bought it in a dealer and
you didn't do anything on the web to indicate that you've bought it so they should stop trying
to pitch you yeah yeah do you view this as a moral problem or sure i mean it involves humans so
there's always a moral dimension i think the uh i'm not a partisan of, you know, people say Adam Locke, sorry, Adam Smith, I was thinking of John Locke. Adam Smith and others said that, oh, you know, economics is sort of this Newtonian system where self-interest and competition perfectly balance each other, kind of like gravity and inertia in Newtonian physics. And I think that's
not true with humans in the world, but I think there's always a moral dimension. So what happens,
like I said, is you get layers of intermediation that always creates counterparty risk. A phrase,
I think, after the great financial crisis of 2008, a lot of people understand. If you've seen
the big short or read the book, and the movie is quite accessible, you start to understand what
happened, right? There were these intermediaries who were selling trash and lying about it,
or they were bundling up bad debt and then lying about the quality of it.
And those are moral problems. Somebody's lying.
Well, yeah. They become moral problems when the intermediaries don't own the downside risk for
what they're doing. No skin in the game.
No skin in the game, yeah. Okay. So, speaking of of ad blockers so i use ghostery to what extent are these viewed as a strategic threat like ad
revenue-based companies like google or facebook or i think google's so big that they only care
when um they're under some moral pressure uh which happens so first of all uh i would say
there's a popular uh suite of a couple of ad blockers,
possibly related. One's called Adblock. One's called Adblock Plus. And then there's Crystal,
which also jumped on the bandwagon. And they do something they call acceptable ads, which
allows some ads through that meet some criteria that a community of thousands or tens of thousands,
dominated by a few curators, usual, says it's acceptable.
Now, this is mainly about ad aesthetics. It's mainly about does the ad annoy me or jump around.
They do not block tracking. And what they also do that I think is unacceptable is that they take
big bucks, mainly from Google, to let certain ads through. They say the ads are acceptable by the
objective criteria, but they also take money to let them ads through. They say the ads are acceptable by the objective criteria,
but they also take money to let them through from the big players. They recently won a court case
in Germany where Springer took them to court and lost. And there's been a series of victories for
Adblock Plus. And this case, I think, came closest to testing whether this whitelisting for a fee model was licit. And Springer lost.
So I can't say I had a dog in this fight,
but I do think that taking fees from Google and others to let ads through
creates a really bad conflict of interest.
And you can be misdirecting your users by saying,
oh, we blocked those ugly ads while you're letting all the trackers through.
Because once you whitelist some ads, those ads do not perform unless the
invisible scripts that track to set up the audience for the bid and then confirm that the ad was
viewed or acted upon to deliver the payment. Those scripts have to come through. And so AdBlock Plus
and others do not by default block the tracking scripts. You have to turn on the easy privacy feature.
Ghostery is an interesting tool sold recently to Clicks.
I'm friends with some of the Clicks people.
And it lets you visualize the trackers, and it blocks some of them,
but it also gathers data in, they say, a differentially private way.
I haven't looked at it closely to see how sound that is,
but there's Ghostery, there's Disconnect.me, which blocks tracking.
uBlock Origin, which we admire a lot
and try to collaborate with,
which is a very hardcore blocker Ray Hill created.
He doesn't make any money off it, that I can tell.
No conflict of interest.
Probably could use some engineering help,
but it's very popular.
And when the whitelisting for a fee trick
that AdBlock Plus does got kind of more press a couple of years ago at a German marketing conference.
People got mad and AdBlock Plus shares went, user population went down and uBlock Origin went up.
Advertisers like Google are too big to care, except they do pay that fee.
They pay that fee and it's rumored to be eight figures, low eight figures, medium eight figures a year, maybe 20 million a year. I don't know. People cannot tell. The financial statements that all
companies, even private ones, are obligated to publish AdBlock is owned by IO and Cologne,
Germany, have been delayed. I just saw the 2015 statement balance sheet. It's in German. You have
to use a German form to get it. And it's a lot bigger than the 2014 number so i think google started ramping up the payments uh but google can well afford that
because if they're white listing uh at 20 million a year to save 3 billion in revenue it's no problem
for them to pay that and it actually helps google so there's a perverse effect there that makes
google even more powerful meanwhile other ad blockers like uBlock are very pure. Brave is very pure.
We don't whitelist for a fee.
We're a smaller share now, but we're growing.
And you know who hates us the most is not the advertisers, it's the publishers.
Because they're at the end of this payment chain, and every time they hear about ad blocking,
they just feel angry that they're already losing revenue due to the perverse effects
of the current parasitic ecosystem with too many layers of principal-agent conflict and too many fee-takers and too much fraud.
The fraud costs are clawed back from the publishers, too, just like with credit card fraud being clawed back from the merchant on top of the interchange charge.
So publishers just get it coming and going, and then they hear about ad blockers, and they just, ah, we get all the rage. But I'll tell you, three years ago when I was talking to them,
I started talking to them more like five years ago,
they were like, we're going to call security and walk you out.
You're an ad blocker.
Two years ago, it was like, ad blocking is not going away.
What can you do for me?
And then one year ago, it was like Facebook and Google are killing me.
Oh, but I still need Google to make some money, revenue.
Please help me, but don't kill Google.
And then this year, it's a brand new world.
They realized that the old model is broken.
There's something called the General Data Protection Regulation
and the companion e-privacy suite in Europe
coming into delayed effect this month
that requires consent for tracking.
Remember the cat server?
Yes.
You're getting your friend's cat picture,
but if your friend is sending a cookie,
that's going to be illegal without your consent,
and you're going to have to get consent
as the person who had the page with the cat picture.
The publisher is going to have to get the consent
and list all its scary partners,
the AppNexus, Rubicon,
all these companies you've never heard of,
and you're going to have to say,
do I want to share my data with all of them,
even against the publisher's interests and against my own?
Most people say no. I know a study that said 80% will say no. That's going to blow a hole in programmatic advertising, as you say it's called, in Europe. And it's also going to set, I think,
the pace globally because it protects anybody in Europe, not just citizens, but tourists.
It means the global brands, which have to worry about how they track and confirm ads, have to worry about it globally.
I read a study recently that was saying the estimate was about 5.5 million US is how much these companies are going to need to be spending on dealing with…
GDPR?
Yeah.
It really isn't clear.
I think the US companies were asleep. European companies are awake and we're talking't clear. I think the U.S. companies were asleep.
European companies are awake and we're talking to them.
Global companies are awake.
They were already upset with ad fraud and the inefficiencies and problems of the system.
But then GDPR will impose a 4% of gross annual revenue fine on the violators.
Now, this has to be adjudicated and get through the courts. And everyone, I think,
who might worry about infringing is hoping somebody else gets picked off by the regulators
first and that the courts clog up. But it's now changed the game. I think a lot of the brands we
talk to, the European agencies who represent the big brands in Europe say, we want a clean model.
We're not going to take any chance with a 4% of revenue.
Fine, and our publishers or our advertisers
don't want to mess with anything like that.
So we're going to be clean now.
And it's almost like an ecological approach.
I want to come back to this question of ad tracking versus ad blocking
because this story from JavaScript to ad tracking
has a very nice sort of poetic ending for you.
But before we rejoin that narrative arc,
I want to quickly ask you about Mozilla,
because you also co-founded the Mozilla Foundation in 98?
Well, it wasn't the foundation.
The Mozilla Project was...
Mozilla, sorry, Project.
Yeah, it was not a foundation until 2003 when AOL ejected it.
But it was sort of a life pod
like in Star Wars, the original movie
when the droids get out of the
ship that's been captured by the Star Destroyer
and the gunner is
lazy about shooting it down because there's no life
forms on board. That would have stopped the movie,
the whole series of movies, fast.
Netscape had this idea
of doing open source
release of its browser code, which no big
commercial company had done at the time. Linux was an example of an open source project that
started open source and grew to be commercial through Red Hat and other companies at the time,
some of which died. Red Hat really eventually did a lot of damage to Sun and became a success and
still going on Linux. There were other projects.
Apache was coming out of the NCSA server, HTTP server.
Obviously, the Gnu, Project Gnu from Richard Salmon and others had a C compiler and a bunch of tools
that also were commercialized by Cygnus and others.
But Netscape doing an open source release
was bold and exciting.
And it, I think, started a trend,
which we now see as commonplace where everyone does open source on GitHub.
I think the GitHub got a lot of money from Andreas and Horowitz because it helps the programmers show their work and share their work.
It reduces just the cost of development.
It helps recruiting.
It's definitely a tool of capital against labor.
But also, you know, thanks to Netscape, I think Netscape open sourcing browser really kicked things off. And that was the mozilla.org project. And we call
it a project because there was no legal entity. Most of us, like Jamie and Tom Paquin, the
engineering manager who ran it for the first eight months or so, and Lloyd Tabb, Terry Weissman,
a few other people, we were all Netscapers.
There was somebody at Red Hat, Chris Blizzard,
and Frank Hecker from Netscape Federal Sales.
I think he left Netscape, but he stayed on the staff.
And then Mitchell Baker came in in 1999 to manage because Tom Paquin was out.
I think he left Netscape or he was done kind of working hard.
Having been on the first floor.
And Mozilla was not given good odds.
It was this life pod.
It was tiny.
The Microsoft Star Destroyer had indeed captured the Netscape ship and was going to destroy it.
And yet, we persevered. We took the Netscape code, which was very messy,
hacked up by grad students over a couple of years and several releases,
and we tried to get people extending it.
We got people in Australia, Eric A. Young and Tim Hudson.
I coincidentally met Tim when I was at Silicon Graphics on a road trip.
They created what's now called OpenSSL.
It was called S-S-L-E-A-Y, Erica Young.
And they had to put their version of SSL,
the secure socket layer,
what we now call HTTPS or TLS,
into the Mozilla code
because we weren't allowed to export the crypto code.
It was a munition.
It was an electronic munition.
So Mozilla, when it released the open source,
you could take it and build it.
You'd get a browser that looked kind of like a stripped-down Netscape.
But if you were outside the US, you could not do secure connections with it.
So a pair of Aussies put that back for us.
That was the biggest thing that was done on the old code.
But it was so hacked over, I think that was the only thing that could be done that was really interesting.
Everybody else kind of chipped around the edges.
So in October of 98, I wrote a roadmap.
I was the sort of architect.
I said, let's rewrite.
Now, you're not supposed to rewrite.
This is what Joel Spolsky says.
You never rewrite.
You all sort of incrementally rewrite.
You keep your product in the field.
But we said, no, you know what?
AOL is buying Netscape.
We'll count on them keeping us alive.
We need greenfield development.
We need to bring in new people who don't see this hairball of code.
They need to write cleaner code.
We also need to have more standards because Netscape kind of lost the browser standards war, which is part of the browser war one, to Microsoft.
So let's do a clean code base that does cascading style sheets right.
And that was the Mozilla program for four years.
And it led to the 1-0 moment where we
had a pretty decent you know it didn't suck anymore browser and it started getting more
popular than netscape at the time and aol started realizing what did we buy and so they in 2003
through a series of uh of magic events spun out uh the foundation yeah set us up independently
and at that point we knew not only did we need a cleaner code base,
we needed just a browser, not a suite, as you remember,
where Netscape became with email and address book and editor
and browser and chat app or something.
You don't need all that stuff bundled into one Swiss Army knife,
just a browser, which we originally called Mozilla Browser,
then Phoenix, then Firebird, then Firefox.
And that restarted the browser wars, phase two,
restarted the standards process,
which had been totally shut down
when Internet Explorer monopolized the market.
And Firefox today is, you know, on desktop,
at least the second biggest browser in the world?
It depends on which charts you look at.
There are two main analytics firms,
StatCounter and NetMarketShare.
And NetMarketShare uses something it claims is like user sessions
or unique users, and StatCounter uses page views.
So they get slightly different numbers.
Firefox has been declining for a while, since 2011, I think,
when it peaked around 27%, which was number two for sure,
and then Chrome passed it.
So Chrome is now dominating,
but it's not getting to the 95%
that Internet Explorer reached at its height
because Apple makes Safari a default browser on macOS
and the only engine you can use on iOS.
So there's a lot going for Safari,
which I think has gotten better over the years,
and it's a good privacy conscious browser
and Microsoft is trying to hold the line with Edge
as it replaces Internet Explorer with its new Edge browser
but it's slowly, it seems to not be doing too well
Chrome is growing slowly
but we've reached this new normal
where Chrome is like 60% or more of the browser market
a billion plus users.
Yeah. So you're sort of a pivotal figure in both browser wars. You leave Mozilla in 2014
and then in 2015 you start a new company, which is called Brave, and we're here in the
offices today. I'm really interested in talking to you about Brave for a few reasons.
Firstly, you're not just a very successful programmer, but also a very successful entrepreneur.
And I wanted to ask you about some of your entrepreneurial lessons that might have arisen out of the experience of creating Brave.
But before we get to that, just give us the elevated pitch.
What's Brave and what problem is it solving?
So I mentioned we talked about tracking and advertising
and how the system is sort of an ecosystem problem.
Users perceive this as being stalked by ads.
Also, very slow page loads, especially on mobile,
because all those scripts that measure you and then deliver ads.
But the measurement alone adds a lot of network traffic.
That means you're also running your radio,
you're paying the data plan if you're paying by the packet.
It also means you're burning your battery
because the radio is the number two battery consumer.
So all these problems become user pain points.
And yet I think it's taken for granted
the user will just bear with it
unless they're savvy enough to get an ad blocking extension.
And Android Chrome does not have any extensions. There's no way to get relief on Android without
getting a whole new browser. Now, there are such browsers. One of them is from Adblock Plus,
so it has that whitelisting conflict. I thought, why not make a browser that blocks ads by default,
blocks tracking scripts, the invisible but costly,
the not seen part of the problem, and make that the base level of protection for users so that they don't get malware through ad exchanges, they don't get the data and the battery costs,
they don't get the pain of bad ads, and they get a much faster, better experience. And then
rebuild how the web is funded on top of that. So Brave starts looking like a browser that blocks ads by default,
which is very rare.
UC Browser in Asia did this and got bought by Alibaba.
In the West, browsers have been captured or owned outright
by advertising companies.
So they won't do this.
It's a deep business conflict against their users' interests
that their fiduciary duty as public company stewards of their shares,
they cannot walk away from.
They cannot, Google cannot say, oh, you know what?
Brave's right.
Let's block everything as the base, and then we'll rebuild how the web is monetized or
funded from that.
If they did, they'd be in antitrust trouble because they'd be hugely advantaged as the
number one ad server as well, and the number one ad exchange.
Google's like the New York Stock Exchange
and the High Frequency Trading Fund and Goldman Sachs and Charles Schwab all in one package.
So they would be in huge antitrust trouble. So they can't really go against their own
duty as stewards of their shares. They would be sued. I thought about this a lot. I thought,
how can I take a browser that's much faster and safer
which I think people can adopt
the lead users always go to the best browser
in 2003 or 2004 we were doing Firefox
and people said you can't start the browser
war again nobody cares
Internet Explorer 1
it's going to be Internet Explorer until doomsday
just give up
that's just dumb
even a mature category can be disrupted
Microsoft had abandoned,
all but abandoned, Internet Explorer to a skeleton crew. So it was full of security holes, pop-ups,
you remember, it didn't have tabs. We addressed all those with Firefox and we grew, starting from
the lead users, the expert users, the ones who are most aware of the problems and use the web
daily in their jobs. They don't want to be programmers. They might be designers or doctors
or lawyers, whatever.
But they switch browsers.
And we made it easy to switch to Firefox.
So the same thing applies to Brave.
And Brave is now chipping away from Chrome.
We have over 2.2 million monthly active users.
And I think we're going to get to five by the fall.
Getting those lead users is really valuable
because you kind of follow your nose with them.
You don't want to try to get everybody
using your browser at once.
You aren't ready for them because they'll have a lot
of support issues. But if you get the lead users happy, you can grow from them and they get their
friends and family using it. And then because we block everything, the publishers hate us
because we block ads that they're getting some remnant revenue from, we can start recreating a
clean, direct way of users and advertisers supporting publishers.
And that's what the Basic Attention Token is for.
Yeah, the Basic Attention Token, which is your token that you built on the Ethereum blockchain.
Yes.
Which ICO'd at the beginning of last year.
May 31st, actually.
It was a token sale that we did directly on Ethereum.
And it had two good effects.
It funded the project.
And it also created,
before we sold a billion tokens, we pre-created 500 million,
which gave us a big pool, over 300 million plus reserves,
to give to users.
Because ever since I founded Brave in 2015, I wanted to create what might be called social credit,
which is, you're a user, you deserve some tokens just for being you,
just for having suffered ads,
having come to the web with your own interests and eyeballs.
The thing that gets reduced to a pair of sense organs,
the eyeballs of the dot-com era,
not really a humanistic approach.
People deserve some tokens,
ad initio and pro rata on an ongoing basis.
And that's what we're trying to do with base contention token.
And then if we can get a clean ad model that users can consent to,
we will not foist it on them.
They will choose it because they get a big revenue share from it.
And if they don't want to take those private ads,
which do not involve tracking, they can always just donate.
And we will try to give them grants from the user growth pool as long as we
can.
So we're trying to create a new steady state that has fewer moving parts,
doesn't have all these layers of intermediation and parasitism.
That's incredible because I've always wondered whether it would be possible
to kind of, for want of a better term, unionize data,
like have users kind of group together and give them some leverage over the monopolies.
Because a lot of people argue that companies like Facebook and Google aren't monopolies
because consumers aren't paying anything for it.
But you actually are paying.
You're paying by giving your data away for free.
Absolutely.
And it's incredible that now we've found that blockchain can be the technological solution to that problem.
There are challenges because early blockchains, still an open problem, do not scale up to very fine, high throughput transaction scale.
And they also, you know, may not be anonymous, in fact.
But these problems can be dealt with incrementally.
And that's what we're doing at Brave with the basic attention token.
But I agree with you.
Unionizing the users is the way to get countervailing power
against these central network superpowers that evolved, right?
In any system, any networked system,
you get sort of first and second movers rising for a time
and being king of the hill.
And, of course, it was Microsoft with IE,
which did not become the Monopoly browser until Doomsday.
Now there's Google with Chrome, and there'll be something else.
If Brave became the monopoly browser, we would demand a recount.
We're trying to represent the stubborn minority that tries to reform an existing system by insisting on tracking protection, insisting on ad blocking.
So Brave may never become a mass market browser.
I think it could, and i'm not going
to uh joke too much about this but i think anybody realistic says we have a long way to go so what we
do in the meantime is we start with the lead users and the the stubborn minority and this is as talib
says why you know all salt is is is halal and kosher you don't want three different skews of
salt in your grocery store it's silly so salt is salt is always satisfying. This is the cycle of minority role. Yes. And that is something that I think you'll
see in the web standards more and more. You see a little bit of it. Firefox certainly was not ever
a majority browser. Like I said, it peaked at 27%, but it restarted the standards process.
We punched way above our weight. And I think Google wishes that Mozilla were still punching
at that 27% because it genuinely helps them advance certain standards causes that they're now having
trouble as the sole bearer of. And even a smaller share browser can do a lot. And Apple is a good
privacy browser. So we're going to work with Apple and the W3C on this.
Can I ask a couple of final questions? Just some of the entrepreneurial lessons that you've taken away from this. First thing is what struck me when I was looking at the story of Brave's founding in 2015 was apart from raising $2.5 million to kickstart the company, you had developers from lots of really well-known companies like Evernote, Yahoo, Khan Academy.
How do you firstly attract talent, but perhaps more importantly,
how do you attract the right type of talent, the right fit for the role?
Because of the many challenges in startups, recruitment seems to be one of the most tricky.
Yeah, I find that easier, though.
It's got its challenges in a competitive situation with lots of other companies that are trying for the talent.
What I've done is try to give engineers a large ambit.
We're not doing another Nokia phone
where the product manager or the design team rules the roost,
and the engineers are kind of interchangeable cogs.
And I detest that view of how development should be done
because I think the best engineers are creative. You certainly need designers and product people, but you need
engineers who will build, you know, sound design and build sound code and valid code. And that
I've always done in my career. Mozilla involved a lot of recruitment too, even when Netscape owned
it, because we were getting open source contributions in such scale that we hired some of the best people.
And before they cut it loose, I did an org chart for the offsite
where I colorized all the people who'd been –
color-coded all the people's names who'd been recruited from the Mozilla community
to distinguish them from the people who came from Netscape AOL.
And it was like the best top third.
So I've been recruiting for a long time.
I built up Mozilla Research by recruiting grad students.
And we had interns at Mozilla in the heyday.
And we're doing it here at Brave.
Do you feel like you're good at it?
I think so.
And I think also being open about your agenda, having sort of technical values that come from the, I would say, the old Unix and web days.
I tweet a lot, so it's mostly technical. I think
there's an ongoing conversation that allows me to show my philosophy in a way that attracts people.
I think giving engineers a lot of say in the early stages of a company is attractive.
I don't know exactly how it worked. Like Yonzu, I just emailed her and said, hey,
do you want to meet for lunch? And I recruited her. Brian Bondi was kind of asking me after I
pinged him about an earlier company idea. So he kind of got me back and started again.
This was a process that I probably should reflect more on, but it's something I've been doing for a
long time. Then the problem, I think, becomes execution, management, operation. And that's
got its own challenges. Growing the company has its challenges. But the other part
of entrepreneurship that I think is undervalued is you should always work on something. People
talk about being passionate about it. Passion comes from the Latin verb for suffer. I definitely
wanted to block ads and trackers. I was fed up. And at Mozilla, with Firefox, we'd actually stepped away from some changes that would have blocked the trackers.
And I felt bad about this because I thought, yes, we don't necessarily want to do that rashly.
It's hard for a big browser to do it because they rock a lot of boats.
But maybe we should have done it.
So I thought, with Brave, I'm going to do it.
This is going to make things better for me, for my family and friends.
And making something that you care about that you actually use and and using it from an early point, and then getting more users.
Super critical. Jamie Zawinski talks about this in Coders at Work, Peter Siebel's book. I have a
chapter in it, too. Peter just interviewed a bunch of us, gray beards. Jamie's not bearded.
He's not gray yet, either.
He's the exception.
Jamie said, for me, the thing is, it might be one of his essays.
I don't know if it was in Coder's work.
For me, the thing is getting users.
And if code doesn't have users, it can be as beautiful in your mind as anything,
but it may be wrong.
It may be full of bugs.
So you really want to get users and keep them and grow them.
And that ethic, I think, is evident in my career.
And that, I think, helps the company.
It helped us get, I think, the totality of what I'd done
helped us get that first round of investment.
And then the second seed was led by Founders Fund.
So that was very helpful, too.
Which is Peter Thiel's fund.
Peter Thiel and Simon Bannister and others, yeah.
Congrats.
I didn't know that.
That's incredible.
That was all before the token sale.
Wow. Before we were talking about how utilitarian users are when they're selecting their browsers,
what lessons do you have for product that you've tried to instill in the Brave browser?
So you have to, you know, first of all, have great customer support.
You can't ignore complaints or worse, talk back or trash your customers. You want to
have all the utilitarian boxes checked or you will just be checked out of the competition.
But I think people also, among these lead user cohorts, these minority who impose rules,
you will find that you can appeal to their values like ad blocking, tracking, protection, and the bigger idea of reconnecting legitimate funding
from advertisers and users through the user agent,
the browser, to the publishers and the creators,
the YouTube account holders.
That's attractive to some of the early adopters.
And so you want to have not just a utilitarian
or physical approach, but a metaphysical approach too.
Yeah.
Brendan, it's been an absolute privilege speaking with you.
And thank you so much for your time.
No problem.
We've gone slightly over, but before we leave you,
we've got quite a lot of, I suppose,
aspiring entrepreneurs and technology enthusiasts
in the audience back in Australia.
Do you have,
you know, any kind of final messages or calls to action for them?
I think, yeah. The other thing I would say besides do something that you care about,
it's kind of a cliche, you can suffer for it or not, but there are products that, you know,
relieve pain, acute pain, chronic pain, and there's products that just make life a lot better.
I think from Brave, we're starting with the relieve the pain,
but we're getting to make life a lot better
with the basic attention token.
I would say if you have a big enough ambition,
find a way to divide it up into stages
where you can not get starved for funds
or user growth at any one of those stages.
Little tips that help.
These are known to some growth hackers.
Sometimes you acquire an app that is in your sort of area
but not perfect, and then you get its user population
that helps you start from non-zero,
and then you improve it.
And we did that in 2015 with Link Bubble
from an Aussie in Brisbane, Chris Lacey.
It's retired since then.
I think Android was killing it
the way it operated as a background service.
But that was a good growth hack for us.
And I would pass that on as a tip.
Acquisitions.
Little acquisitions of neglected apps
that have enough users.
In the mobile era especially,
this can help you start from a positive number.
Yeah, yeah.
And if you assume the same kind of growth rate,
but you're starting from a higher bunch of users,
it's great to get that jumpstart.
It helps with fundraising too.
VCs may just kick you out if you have no users,
but suddenly if you have 70,000 users,
they're going to keep listening.
That's great advice.
Well, Brendan, thank you for joining us.
You're welcome.
It was a lot of fun.
Thanks very much for listening to my conversation with Brendan Eich.
I hope you enjoyed that as much as I did.
As we mentioned at the top, big news coming out in the next couple of weeks about our
one-year anniversary party and our 50th episode party.
So stay tuned for that.
Yeah.
If you follow us on Twitter or join our mailing list on
our website we'll uh we'll keep you posted until next week ciao bye