a16z Podcast - a16z Podcast: The End (and Beginning) of Programming
Episode Date: June 8, 2018There are over 20 million programmers out there -- and double that, if you count everyone else coding in other ways -- but where are the next 100 million developers? How do we get to a billion develop...ers? The answer, observes a16z general partner Peter Levine in conversation with GitHub co-founder and former CEO Chris Wanstrath (based on a Q&A recorded at our last a16z Summit event) lies in changing the very definition of a "programmer" and "programming". It might even mean the end of code, argues Levine (who apparently loves arguing the end of things!), and the beginning of a future where data isn't just "the new oil", but one where we all become our own "oil wells". With everyone is manipulating data -- the new programming, in a sense -- expertise can be scaled (especially with new tools) so everyone gets the answers and solutions they need. So what does this mean for open source developers? CIOs and organizations that have lots of different data streams, as well as domain experts? This episode of the a16z Podcast covers all this and more, including touching briefly on what's ahead... The views expressed here are those of the individual AH Capital Management, L.L.C. (“a16z”) personnel quoted and are not the views of a16z or its affiliates. Certain information contained in here has been obtained from third-party sources, including from portfolio companies of funds managed by a16z. While taken from sources believed to be reliable, a16z has not independently verified such information and makes no representations about the enduring accuracy of the information or its appropriateness for a given situation. This content is provided for informational purposes only, and should not be relied upon as legal, business, investment, or tax advice. You should consult your own advisers as to those matters. References to any securities or digital assets are for illustrative purposes only, and do not constitute an investment recommendation or offer to provide investment advisory services. Furthermore, this content is not directed at nor intended for use by any investors or prospective investors, and may not under any circumstances be relied upon when making a decision to invest in any fund managed by a16z. (An offering to invest in an a16z fund will be made only by the private placement memorandum, subscription agreement, and other relevant documentation of any such fund and should be read in their entirety.) Any investments or portfolio companies mentioned, referred to, or described are not representative of all investments in vehicles managed by a16z, and there can be no assurance that the investments will be profitable or that other investments made in the future will have similar characteristics or results. A list of investments made by funds managed by Andreessen Horowitz (excluding investments and certain publicly traded cryptocurrencies/ digital assets for which the issuer has not provided permission for a16z to disclose publicly) is available at https://a16z.com/investments/. Charts and graphs provided within are for informational purposes solely and should not be relied upon when making any investment decision. Past performance is not indicative of future results. The content speaks only as of the date indicated. Any projections, estimates, forecasts, targets, prospects, and/or opinions expressed in these materials are subject to change without notice and may differ or be contrary to opinions expressed by others. Please see https://a16z.com/disclosures for additional important information.
Transcript
Discussion (0)
The content here is for informational purposes only, should not be taken as legal business, tax, or investment advice, or be used to evaluate any investment or security and is not directed at any investors or potential investors in any A16Z fund. For more details, please see A16Z.com slash disclosures.
Hi, everyone. Welcome to the A6 and Z podcast. Today's episode is all about the end and new beginning of programming, featuring guest Chris Wonstroth, co-founder and former CEO of GitHub,
and A6NZ general partner Peter Levine,
who's on the board of and led our investment in GitHub.
The conversation was recorded previously
at our annual A6NZ summit event,
only this Q&A turns the tables
with Chris asking Peter all the questions
around his thesis about the end of programming
with a glimpse ahead of what comes next.
Hi, everyone, hello.
Thank you for joining us today.
I'm Chris, by the way.
This is Peter.
If you're confused about who was who,
I'm the GitHub person, this is the end recent person.
But we've actually known each other since 2012.
We've been working together for a long time.
We're 10 years old, and we first decided to raise investment in 2012
after we were around four years old
because we wanted to branch out from our own personal networks
of software developers, from programmers.
We wanted to get into the world of business.
We wanted to really expand GitHub to anyone who was interested in building software.
And Drithen has been a huge part of that.
But Peter, in particular, has been there since 2012,
since the very first meeting that we had.
So I say that, not to say that Peter is this great guy because he is,
but to tell you that he has interviewed me so many times
that I'm very excited to interview him for once.
So this is a big moment for me.
I come from this world of really product-oriented, consumer-focused software developers
building things for other software developers.
And Peter has helped, as a software developer himself,
me and the company really expand what we're thinking in terms of customers
and in terms of, you know, our approach to business.
So this was an opportunity for us, I feel, to talk about some of the things we agree on in terms of the next 10 years
and some of the things we don't agree on.
I don't think either of us knows the truth of what's going to happen in 10 years from now,
but I think it's somewhere in the middle.
I have to ask one question.
You know, we're here to talk about the beginning and end of programming.
How many programmers are out there in the world?
We think there are 20 million people employed that are writing code.
But the idea of what a programmer is, someone who writes software in their free time or even professionally that's not counted in a programmer, it's way more than 20 million, it's way more than 40 million. It's growing every day. And I think what that means isn't that the reporters are wrong or Gartner is wrong or Red Monk is wrong. I respect this firms a lot. I think really what that means is the term and the sort of definition is evolving and changing. We also see our customers, people that used to use Jira, people that are in the marketing team that want to update just some copy.
on a website. They're increasingly moving
to something like GitHub, and they're also giving
us feature requests specifically
for these teams of people that are not the
core sort of code,
collaborate, ship developer pipeline.
So I think the answer to the question
is 20 million full-time
40-hour plus developers,
but don't be fooled
by that number. There are way more people
who have their fingers in development
than the numbers than
GitHub can even tell, and it's growing.
So the more you can open that up, I think, the better it is for everyone.
So anyway, what I want to talk about, though, is not 20 million or 40 million developers.
We talk at GitHub a lot about the next 100 million developers.
But what do we need to do to ensure people in the future can become developers?
For me, it's a lot more of how do we lower the barrier to entry,
how do we get more people on board, how do we make development this thing that a billion people want to use?
I think for Peter, he sees it almost, I don't want to put words in his mouth,
sees a different route to the next billion developers.
and I think you see it more from data
than simplifying tools,
making tools easier, lowering the bread entries.
So originally I was thinking about this talk
as titling it
the end of software development,
but then maybe a little much.
So it's really how do we go from 20 or 30 million developers
to a billion developers?
So in order to get to a billion developers,
I want to change the definition
of what a developer and what a programmer is, right?
And when we think about sort of data as the input into a system, we often think about right now, like, you know, facial recognition is easier done, better done by a computer than done by a human right now.
And I started to think about how data as an input to a system could actually change the world of programming such that everyone becomes a programmer.
The reason why I think that programming ends, as we currently know it,
is the declarative languages that we've used since the beginning of time,
beginning of compute time, has all been based on if-then-else.
If this, do that, do this, right?
And it gets very complicated, but it's all if-then-else.
And basically, as a programmer, you have to know what you're asking for.
You tell the computer what you want it to do.
As opposed to the reverse is, I want to look at data.
and I want to instruct the outcome as opposed to a priori knowing what the input might be.
So let me give you an example.
A football coach becomes a programmer.
And if one had a program a football game and said,
quarterback throws the ball to the receiver,
if this, then that, and these guys go do this,
it's an indeterminate problem.
There's too many moving pieces like the program would be very, very complex to just run
one play. Okay, just like if you were doing facial recognition or voice recognition, it's very
complicated to do if then else on facial recognition. So imagine now, when we have all the tools
to go and do this, imagine that through repetitive looking at football plays, the system actually
learns. And it learns what the right movements are and all of that. And then what does the
coach do? The coach comes in and optimizes that model to say, you know what, the system got it a little
wrong here. The quarterback should move 10 yards back, whatever. And the coach, in conjunction with
the system, actually is a programmer because the coach actually informs the data, and they become
in my new definition of the world, a programmer. And you can take this now across any field,
whether you're a lawyer, an accountant, a salesperson, and we can watch the best behaviors,
we can watch the best behaviors and best human interactions. Let's say I'm trying to
fix a transmission. Well, I can wear goggles and I can record it, and I have the best expert going
and fixing a transmission, and that person would then go back to that data. And of course, we need
the right tools. So what are the tools for us to go manipulate this data? It won't be a spreadsheet.
It will be some visual interface where I, as an auto mechanic, can go in and modify the output
of what the system is doing. And in effect, we create a set of expert rules based on what the
human does, and then imagine that we go roll out those rules to everyone else who has to go
fix transmissions or become a salesperson or a lawyer or an accountant or football coaches.
And in my mind, by using data and having folks optimize the data, they actually become the
next generation of programmers. They're not trained as programmers. They won't even know what a
program really is. They're all manipulating data in the context by which they are familiar with their
own expertise. So that's what I think happens. Well, so I guess my question there is my father is not a
computer guy, but very much a car guy. My father, too. He loves cars. He works on them. And if I can give
him all the information at his fingertips to fix the car, I think it makes his journey much better.
But if I were to give him all the information available to fix the diagnostic program that was
running on his car, let's say he has all the data available to him. Is he able to actually make
those changes. So one side of it is, yes, I have all this data available to me. The other side of it,
I think, is do I have the tools to make these changes? Yes, I can understand, but can I actually
affect the world? Is there a second sort of industry or a second tier of, you know, data becomes
the most important thing that says, yes, now everyone has access to what's going on, but how do we actually
affect that, or do you see those things being intertwined? I mean, I think it's very intertwined.
You know, your father, I've actually met your father. He brought ice cream to a party once.
He did bring Peter ice cream one time.
If you're ever from Cincinnati, please go to Greater's Ice Cream.
It's the world's best ice cream.
It's worth bringing to California.
So, I mean, imagine your dad is fixing some part of the car,
and that has been done by someone else.
And imagine if somebody else has optimized effectively
has created the exact precise user manual
for how to fix a particular part of the car.
Imagine if your dad now was wearing goggles,
and it looked at what he was doing,
and the system was helping him to do a better job
in fixing certain parts of the car.
You take the experts who are the programmers in their field
and they then push that knowledge off to everyone else.
So maybe your dad's an expert in certain parts of this
and he can participate in it.
It's the open source of data, right?
Everyone's manipulating this to get better solutions.
So then for the current open source developers,
people that today spend their time fixing bugs,
sort of trying to make this piece of software better,
not because they're making money off of it,
because they want to become a developer who has this name.
What does this do for them?
Does this make them become data scientists,
the current crop of open source developers,
or do they now partner more with data scientists in the future?
You know, I think that data science
will become the new academic approach in computer science.
It will be less coding and more about data science,
new algorithms for data science,
new approaches to understand the world around us.
So, you know, we can call this software 2.0, which is moving from code to data.
And I think many people will need to literally upgrade their skill sets to know much more about
data than they will about code, my opinion.
Don't people just suck at interpreting data?
So, like, I think about fake news, and I think about, like, the lies that we all see going
to the Internet.
And I think about programming.
Like, if we're trying to get a billion developers,
Don't we feel like people in general, including myself, are bad at data, but okay at, like,
telling people in machines what we want?
So let me parse the question in a couple of ways.
When we know what we're looking for, we're actually very good at that.
I can write a query and say, look for, you know, all numbers, you know, greater than 10.
When you know what you're looking for, we're actually very good at that.
What we're not good at is looking for things that we don't know that we're not looking for, right?
And so I think what's going to happen, and we're already starting to see this, is systems in the future will actually help us see data in ways that we can't see it right now.
So let me give you an example, a real example.
There's a company that collect data off a traffic signals and to see how many red and green lights that occur in a traffic environment and the flow of traffic.
That's the input.
So that, I would argue we could code that.
but the system actually uncovered the fact that there's a correlation between the lights not working
and the maintenance schedule for the light itself.
That was something that the human, in your sense, right, terrible at finding things that we don't know that we're not looking for.
Because you don't know.
But a computer through looking at data and looking at patterns actually helped to determine in that situation
a new thing that the human wasn't looking for to begin with.
And that's where I would argue that code breaks down.
Code will say the number of times that the current code,
if light goes on, counter goes up by one, right?
But if you're not looking at a maintenance schedule there or whatever,
how would you ever know to look at a maintenance schedule?
Right.
So that's an example of kind of taking correlated data
and using that through a machine that I believe will start to really move us again
from this notion of intent, you know, find something to this notion of using data to find
correlations that actually we may not have been looking for. I mean, to some people, the fake
news is real news. So that's a little more arbitrary. But certainly, you know, the input of data,
I believe, is going to be a super big deal. So then I guess part of that is one of the things
that we first talked about ever when we met was that you worked on X-11, the X-Window system.
Yes. The Unix windowing system, X-Windows. So I've used that for a long time. It came
out of the 80s, one of the big first, in my opinion, successful free software projects
that brought sort of this idea of open source and free software to consumers. And it wasn't
the best, but it was there. And it was an option. And it was great. So I think that is all to say
that there was once a period of time where everyone, everyone believed that codes intrinsic data
was in being kept private. And there was value in code. And like, if I had this piece of code
and you didn't. I had something that was worth something. And maybe you were in a position
where while the industry felt that way, you know, some of the hippies that, you're not wearing
sandals today, but some of the hippies you either went to class with or you were. Shirts, T-shirt,
no shoes. People in the 80s where you were hanging out, they were really into free software.
Before a lot of us, I think, realized that there's something real there. It's not just about
hippies. It's about there's a practical value. Do you feel like data's in a similar spot?
It's our valuable asset. There's intrinsic value into keeping data secret.
right we once felt that about code i don't know if i think that data being open is going to be
something that works but i think a lot of people once felt that about code yeah do you think that
we're going to want to make data more open yes i think we do you know there's this phrase out there
data is a new oil right and i have this vision that we all become our own oil well and we are going
to dispense data and there are now ways where people can get paid for producing data right so
instead of contributing my data to some centralized place, I can actually monetize that data,
my data, to the extent that I want to, or I can contribute it. Examples might be if I have a
camera on the front of my car and I'm going through streets and I'm recording visual information,
I can choose to maybe offer that to some service that's going to make maps better, but maybe I get
paid for that. Or if I have, let's say, our talk here, if somebody finds it valuable, maybe
we get paid for it, right? And so I think there will be a lot of cases where data becomes the
purview of each individual, and we will choose how we want to go dispense it. And I think in certain
cases, our data and what we produce will become valuable to consumers, and there'll be a market
for data. And rather than all our data going to centralized companies that are, you know,
hidden inside of organizations, we all will have control over our data. And I think
to have a market and to have economics around that data is really interesting.
So I think that's kind of the way it takes shape in terms of what happens to data
and how people own it and control it.
Yeah, that definitely resonates with me.
I've seen a lot of history repeats itself,
but the time scale is always what is the most different to me.
You know, free software really started in the 80s.
GitHub came out in 2007, and for me, GitHub was very much influenced by the open source movement.
But I think for a lot of people, open source,
didn't become part of their vocabulary until maybe later, 30 years after free software.
So with data, do you see a similar timeline?
I mean, in some ways, it's already happening.
There are companies out there who look at Salesforce productivity.
I'm looking at the most productive salespeople in an organization, learn what they do,
modify that, and then go give that information to, so where everyone gets assisted by this new
technology, a lot of that stuff is starting to happen.
We may not think about it as the data economy or this change in programming, but it is starting to happen as we have these new models where we can process massive amounts of information and to where the outcomes really become, I'd say, digital assistance to humans to actually make them better.
Whether it's the football player, the auto mechanic, the accountant, the lawyer, or the salesperson, each of those can be better based on an observed.
the experts in that field, and I would argue it's starting to happen. And sure, it'll take a long
time and all that, but I definitely see it. So my final question is hopefully relevant to people here.
It seems like this is starting to happen. Like your blog post, I think, from a year ago on edge
computing. Yeah. You felt it was starting to happen. So maybe to you, a lot of what's
occurring in this conversation feels obvious, but to others it's very new. What should I think about
if I'm like a CEO or any executive at a company and I'm hearing this? Is there anything I should
you differently in the next year? Is anything I should think about? Or is it just like trust my
team because this is happening? You know, in all of these sort of my end of things that I've
been thinking about, whether it was the end of cloud computing last year, the end of programming,
you know, when I keep with the end. Peter's trying to kill everything. Yeah. But it starts a new thing.
And what has been interesting is when you start out with these, like when I start to talk about
this stuff, literally everyone looks at me because I've been through this now like I'm crazy. Like,
Are you nuts? Program is going to be around forever, and as I start to think about it in my own mind and put some concrete examples and bring things together, it actually starts to make sense even to me. I mean, I thought about this. I couldn't really describe it. Now, you know, kind of over time, you get better at sort of thinking about the examples and that. So what I would leave for all of you is what does it mean in your organization to utilize data? I mean, I gave the Salesforce example. That's a very real.
example. So where else can we model the experts in your environment? Where can we take those,
you know, kind of that data, and then how do we provide, you know, what framework and what
rules would you go and look at as CIOs on where you might optimize things based on people
doing expert work in your environment? And I will bet you, if you start just thinking about this
because I did, I went through this exact exercise, you will realize that every functional
within your company has the opportunity to be data-driven, has the opportunity to be iterative
and cognitive based on the work that we're all doing to try to optimize things. And once you
start thinking about this, then it becomes reality. And so I'll leave you with that. And next
year, we can revisit this. I guarantee you it will start to proliferate through the industry
in the same way that some of the other things are. Awesome. Well, thank you so much. Thank you, Peter.
Thanks, everyone.
Thank you.