James Gosling: Java, JVM, Emacs, and the Early Days of Computing | Lex Fridman Podcast #126
IT__Nrr3PNI • 2020-09-24
Transcript preview
Open
Kind: captions Language: en the following is a conversation with james gosling the founder and lead designer behind the java programming language which in many indices is the most popular programming language in the world or is always at least in the top two or three we only had a limited time for this conversation but i'm sure we'll talk again several times in this podcast quick summary of the sponsors public goods betterhelp and expressvpn please check out these sponsors in the description to get a discount and to support this podcast as a side note let me say that java is the language with which i first learned object oriented programming and with it the art and science of software engineering also early on in my undergraduate education i took a course on concurrent programming with java looking back at that time before i fell in love with neural networks the art of parallel computing was both algorithmically and philosophically fascinating to me the concept of a computer in my mind before then was something that does one thing at a time the idea that we could create an abstraction of parallelism where you could do many things at the same time while still guaranteeing stability and correctness was beautiful while some folks in college took drugs to expand their mind i took concurrent programming if you enjoy this thing subscribe on youtube review it with five stars on apple podcast follow on spotify support on patreon or connect with me on twitter at lex friedman as usual i'll do a few minutes of ads now and no ads in the middle i try to make these interesting but i do give you timestamps so go ahead and skip but please do check out the sponsors by clicking the links in the description it's the best way to support this podcast this show sponsored by public goods the one-stop shop for affordable sustainable healthy household products i take their fish oil and use their toothbrush for example their products often have a minimalist black and white design that i find to be just beautiful some people ask why i wear this black suit and tie there's a simplicity to it that to me focuses my mind on the most important bits of every moment of every day pulling only at the thread of the essential in all that life has to throw at me it's not about how i look it's about how i feel that's what design is to me creating an inner conscious experience not an external look anyway public goods plants one tree for every order placed which is kind of cool visit publicgoods.com lex or use codelex at checkout to get 15 bucks off your first order this show is also sponsored by better help spelled h-e-l-p help check it out at betterhelp.com lex they figure out what you need and match you with a licensed professional therapist in under 48 hours i chat with the person on there and enjoy it of course i also regularly talk to david goggins these days who is definitely not a licensed professional therapist but he does help me meet his and my demons and become comfortable to exist in their presence everyone is different but for me i think suffering is essential for creation but you can suffer beautifully in a way that doesn't destroy you i think therapy can help in whatever form that therapy takes and i do think that better help is an option worth trying they're easy private affordable and available worldwide you can communicate by text anytime and schedule weekly audio and video sessions check it out at betterhelp.com lex this show is also sponsored by expressvpn you can use it to unlock movies and shows that are only available in other countries i did this recently with star trek discovery and uk netflix mostly because i wonder what it's like to live in london i'm thinking of moving from boston to a place where i can build the business i've always dreamed of building london is probably not in the top three but top ten for sure the number one choice currently is austin for many reasons that i'll probably speak to another time san francisco unfortunately dropped off from the number one spot but is still in the running if you have advice let me know anyway check out expressvpn it lets you change your location to almost 100 countries and it's super fast go to expressvpn.com lexbod to get an extra three months of expressvpn for free that's expressvpn.com lex pod and now here's my conversation with james gosling i've read somewhere that the square root of two is your favorite irrational number i have no idea where that got started um is there any truth to it is there anything in mathematics or numbers that you find beautiful oh well there's lots of things in in math that's really beautiful um you know i i used to consider myself really good at math and these days i consider myself really bad at math i never had really had a thing for the square root of two but when i was a teenager there was this book called the the dictionary of curious and interesting numbers which for some reason i read through and damn near memorized the whole thing and i started this weird habit of when i was like filling out checks you know or you know paying for things with credit cards i would want to make the the receipt add up to an interesting number is there some numbers that stuck with you that just kind of make you feel good they all have a story and fortunately i've actually mostly forgotten all of them um are they uh so like 42 uh well yeah i mean that one 42 is pretty magical and then the irrationals i mean but is there a square root or two story in there somewhere well it's it's like the only number that has destroyed a religion in which way well the the pathagorians they they believed that all numbers were perfect and you could represent anything as as a as a rational number and [Music] in that in that time period um the this proof came out that there was no you know rational fraction whose value was equal to the square root of two and that that means nothing in this world is perfect not even mathematics well it it means that your definition of perfect was imperfect well then then there's the ghetto and completeness theorems in the 20th century that ruined it once again for everybody yeah although although although girdle's theorem um you know the lesson i take from girdle's theorem is not that you know there are things you can't know which is fundamentally what it says um but you know people want black and white answers they want true or false um but if you if you allow a three-state logic that is true false or maybe then then life's good i feel like there's a parallel to uh modern political discourse in there somewhere but yeah let me let me ask um so with your kind of early love or appreciation of the beauty of mathematics do you see a parallel between that world and the world of programming you know programming is all about logical structure understanding the the patterns that um come out of computation understanding sort of i mean it's often like you know the path through the graph of possibilities to find a short a short route meaning like uh find a short program that gets the job done yeah kind of thing but uh so then on the topic of irrational numbers do you see dc programming you just painted it so cleanly uh it's a little this trajectory to find like a nice little program but do you see it as fundamentally messy maybe unlike mathematics i don't think of it as i mean i mean you know you watch somebody who's good at math do math and you know often it's it's fairly messy sometimes it's kind of magical um when i was a grad student um one of the students his name was jim sax was he had this this this this this reputation of being sort of a walking talking human uh theorem proving machine and if you were having a hard problem with something you could just like accost him in the hall and say jim and and he would do this this this funny thing where he would stand up straight his eyes would kind of defocus he'd go uh you know just just like get you know like like something in today's movies and then you straighten up and say and log in and walk away and and and you go well okay so n log n is the answer how did he get there by which time he's you know down the hallway somewhere yeah it is just the the oracle the black box just gives you the answer yeah and then you have to figure out the path from the question to the answer i think in one of the videos i watched you mentioned uh don knuth uh well at least recommending his uh you know his his book is something people should read oh yeah but in terms of you know theoretical computer science do you do you see something beautiful in in that has been inspiring to you speaking of n log n in your work on programming languages that's in the in that whole world of algorithms and complexity and you know these kinds of more formal mathematical things um or did that not really stick with you in your programming life it did stick pretty clearly for me because one of the things that i care about is being able to sort of look at a piece of code and and be able to prove to myself that it works um you know and you know so so for example i find that um i'm i'm at odds with many of the people around me over um issues about like how you lay out a piece of software right you know so so software engineers get really cranky about how they format their the documents that are the programs you know where they put new lines and where they put you know the braces the braces and all the rest of that right and i tend to go for a style that's very dense to minimize the white space um yeah well to maximize the amount that i can see at once right so i like to be able to see a whole function and to understand what it does rather than have to go scroll scroll scroll and remember right yeah i'm with you on that yeah that's and people don't like that yeah i've i've had i've had you know multiple times when engineering teams have uh staged what was effectively an intervention um you know where they they invite me to a meeting and everybody's arrived before me and they so all look at me and say james about your coding style i'm sort of an odd person to be programming because i don't think very well verbally um i am just naturally a slow reader um i'm what most people would call a visual thinker so when you think about a program what do you what do you see i see pictures right so when i look at a piece of code on a piece of paper it very quickly gets transformed into a picture um and you know it's almost like a piece of machinery with you know this connected to that and like these gear knobs yeah yeah i i see them more more like that than i see the the the sort of verbal structure or the lexical structure of of letters so then when you look at the program that's why you want to see it all in the same place then you could just map it to something visual yeah and just kind of like like it leaps off the page at me and yeah what are the inputs where the outputs what the heck is this thing doing yeah and yeah getting a whole vision of it can we uh go back into your memory memory long-term memory access what's the first program you've ever written oh i have no idea what the first one was i mean i i know the first machine that i learned that i learned to program on what is it was a pdp-8 um at the university of calgary do you remember the specs oh yeah so so the thing had 4k of ram nice 12-bit words the clock rate was um it was about a third of a megahertz oh so i didn't even get to the to the m okay yeah yeah so you know we're we're like 10 000 times faster these days um and was this kind of like a super computer like a serious computer for no the pdp 8i was the the first thing that people were calling like mini computer got it they were sort of inexpensive enough that a university lab could maybe afford to buy one and was there time sharing all that kind of stuff um there there actually was a time sharing os for that but it wasn't used really widely the machine that i learned on was one that was kind of hidden in the back corner of the of the computer center um and it was it was bought as a as part of a um project to do computer networking um but you know they didn't actually use it very much it was mostly just kind of sitting there and it was kind of sitting there and i noticed it was just kind of sitting there and so i started fooling around with it and nobody seemed to mind so i just kept doing that and i had a keyboard and like a monitor oh this is way before monitors were common so it was it was literally a a model 33 teletype okay with a paper tape reader okay so the user interface wasn't very good yeah yeah it was it was the first computer ever built with integrated circuits but by integrated circuits i mean that they would have like 10 or 12 transistors on one piece of silicon right not the 10 or 12 billion that machines have today so what did that i mean feel like if you remember those i mean did you have kind of inklings of the the magic of exponential kind of improvement of moore's law of the potential of the future that was at your fingertips kind of thing oh it was just a cool yeah it was just a toy you know i had always liked building stuff but one of the problems with building stuff is that you need to have parts you know you need to have pieces of wood or wire or switches or stuff like that and those all cost money and here you could build you could build arbitrarily complicated things and i didn't need any physical materials um it required no money that's right it's a good way to put programming you're right it's uh if you love building things it uh okay so it you know completely accessible you don't need anything and anybody from anywhere could just build something really cool yeah yeah if you've got access to a computer you can you can build all kinds of crazy stuff um and you know and when you were somebody like me who had like really no money um and i mean i i remember just lusting after being able to buy like a transistor um you know and when i would do sort of electronics kind of projects they were mostly made done by like dumpster diving for trash you know and you know one of my big hauls was uh discarded relay racks from the back of a the phone company switching center oh nice that was the big memorable treasure oh yeah yeah that was what do you use that for i i built a machine that played tic-tac-toe nice out of relays of course the thing that was really hard um was that all the relays required a specific voltage but getting a power supply that will would do that voltage was pretty hard and since i had a bunch of trashed television sets i had to um sort of cobble together something that was wrong but worked um so i was actually running these relays at 300 volts and and none of the electrical connections were like properly sealed off you survived that period of your life oh for so many reasons for so many reasons i mean you know you're you know it's pretty common for teenage geeks to discover oh thermite that's real easy to make yeah well i'm glad you did but do you remember the do you remember what program in calgary that you wrote anything that stands out and what language well so mostly the anything of any size was assembly code um and actually before i learned assembly code there was this programming language on the pdp called focal five and focal five was kind of like a really stripped down fortran and i remember playing but you know building programs that did things like um play blackjack um [Music] or solitaire or for some reason or the things that i really liked were ones where they were just like plotting graphs so something with uh like a function or a data and then you'd plot it yeah yeah i did a bunches of those things and went ooh pretty pictures um and so this would like print out again no no monitors right so it was like on a teletype yeah so using something that's kind of like a a typewriter and then using those to plot functions so when i apologize to romanticize things but when did you first fall in love with programming you know what was the first programming language like it's a serious maybe software engineer where you thought this is a beautiful thing i guess i never really thought of any particular language as being like beautiful because it was never really about the language for me it was about what you could do with it um and you know even today you know people try to get me into arguments about particular forms of syntax for this or that and i'm like who cares you know it's it's about what you can do not not not how you spell the word um and you know so back in those days i i learned like pl one and fortran and cobalt and and you know by the time that people were willing to hire me to do stuff you know it was mostly assembly code and you know pvp assembly code and and fortran code and control data assembly code for like the cdc 6400 which was an early i guess super computer even though that super computer has less compute power than my phone by a lot and that was mostly like said fortran yeah world that said you've also showed appreciation for the greatest language um ever that i think everyone agrees is lisp um well lisp was definitely on my list of the greatest ones that have have um existed is that number one or i mean um are you i mean you know that you know the thing is that it's it that you you know i wouldn't put it number one now is it the parentheses what uh um what do you love what do you not love about lisp um well i guess the number one thing to not love about it is so freaking many parentheses yeah um on the on the love thing is you know out of those tons of parentheses you actually get an interesting language structure and i've always thought that there was a friendlier version of lisp hiding out there somewhere but i've never really spent much time thinking about thinking about it but you know so like like up the food chain for me um then from lisp is simula which a very small number of people have ever used but a lot of people i think he had a huge influence right yeah the programming but in the simula i apologize if i'm wrong on this but is that one of the first functional languages um or no no it was it was it was the first object-oriented programming language got it it's really where object-oriented and languages sort of came together um and it was also the the language where co routines first showed up as a part of the language so you could have a programming style that was you could think of it as multiple uh sort of multi-threaded with a lot of parallel parallelism really there's ideas of parallelism in there yeah yeah so that was that was back you know so the first stimulus spec was simula 67 like 1967. yeah wow so it had it it had co-routines which are almost threads the the thing about co routines is that they don't have true concurrency so you can get away without um really complex locking you can't usably do co-routines on a on the multi-core machine or if you try to do core code routines on the multi-core mute machine you don't actually get to use the multiple cores um either that or you you know because you start then having to get into the universe of you know semaphores and locks and things like that um but you know in terms of the the style of programming you could write code and think think of it as being multi-threaded the mental model was very much a multi-threaded one and all kinds of problems you could approach very differently to to return to uh the world of lisp for a brief moment you uh at cmu you've you uh wrote a version of emacs that i think was very impactful on the history of emacs um what was your motivation for for doing so at that time so that was in like 85 or 86. um i had been using unix for a few years and um most of the editing was this this tool called edie um which was sort of an ancestor of vi and is it a pretty good editor not a good editor well if if what you're using um if your input device is a teletype it's pretty good yeah it's certainly more humane than tico which was kind of the the common thing in a lot of um the dec universe at the time tico is both tk is that the tico t-e-c-o the text editor and corrector corrector huh so many features um and the original emacs came out as so emac stands for editor macros and tico had a way of writing macros and so the original um emacs from mit sort of started out as a collection of macros for tico but then you know you know the the sort of emac style got got popular originally at at mit and then people did a few other implementations of emacs that were you know the the the code base was entirely different but it was sort of the philosophical style of the original emacs what was the philosophy of emacs and by the way were all the implementations always in c and then no and how does lisp fit into the picture no so so the very first emacs was written as a bunch of macros for the tico text editor wow this is so interesting and the the the macro language for tico was probably the most ridiculously obscure format you know if you just look at a tico program on a on a page you think it was just random characters it really looks like just line noise just kind of like latex or something oh worse way worse than the tick way way worse than latex um but you know if you use tico a lot which i did the the tico was completely optimized for touch typing at high speed um so there were no two character commands well there were a few but mostly they were just one character so every character on the keyboard was a separate command um and actually every character on the keyboard was usually two or three commands because you know you hit shift and control and all of those things you know it's just a way of very tightly encoding it and mostly what emacs did was it made that that visual right so one way to think of tico is use emax with your eyes closed where you have to maintain a mental model of you know sort of a mental image of your document you have to go okay so the the cursor is between the a and the e and i want to exchange those so i do these these things right so it almost it is almost exactly the emax command set well it's roughly approximate roughly the same as emacs command set but using emacs with your eyes closed um so what emacs you know part of what emacs added to the whole thing was was being able to visually see what you were editing um in a form that matched your document um and you know a lot of things changed in the in the command set it um you know because it was programmable it was really flexible you could add new commands for all kinds of things and then people rewrote emacs like multiple times in lisp there was one done at mit for the lisp machine there was one done for multix and one summer i got a got a summer job to work on the pascal compiler for multix and that was actually the first time i used emacs and and and so to write the compilers you've worked in compilers too it's yeah that's fascinating yeah so i did a lot of work you know i mean i spent like like a really intense three months working on this pascal compiler um basically living in emacs and it was it was the one written in mac list by bernie greenberg and i thought wow this is a just a way better way to do editing um and then i got back to cmu where we had kind of one of everything and two of a bunch of things and four of a few things and um since i mostly worked in the unix universe and unix didn't have an e-max i decided that i needed to fix that problem so i so i wrote this this implementation of emacs in c because at the time c was really the only language that worked on on uh on unix um and you were comfortable with c as well oh yeah at that point yeah at that time i had done a lot of c coding that this was in like 86. um and you know it was running well enough to be used for me to use it to edit itself within a month or two and um then it kind of took over the university and and it spread and then it died yeah and then it went outside the and largely because unix kind of took over the research community on the on the on the arpanet then and emacs was kind of the best editor out there it kind of took over and there was a actually a brief period where i actually had login ids on every non-military host on the on the arpanet you know because people would say oh can we install this and and i'd like well yeah but you'll need some help uh the days when security wasn't uh when nobody cared nobody cared yeah we can ask briefly what were those early days of arpanet and the internet like what was uh what i mean did you uh again sorry for the silly question but could you have possibly imagined that uh the the internet would look like what it is today you know some of it is remarkably unchanged so like one of the things that i noticed really early on um at you know when i was at at carnegie mellon was that a lot of social life became centered around the arpanet so things like you know between email and text messaging because the you know text messaging was a part of the arpanet really early on there were no cell phones but you know you're sitting at a terminal and you're typing stuff and essentially email or like what what is well just like like a one-line message right so so so oh cool so like chat like chat yeah right so it's like like sending a one-line message to somebody right and and and so pretty much everything from you know arranging lunch to going out on dates you know it was all like driven by social media so you know right in the in the in the 80s easier than phone calls yeah you know and my life had gotten to where you know i was you know living on social media you know from like the early mid 80s um and and so when when it sort of transformed into the internet and social media explodes i was kind of like what's the big deal it's just a scale thing it's it's right the the scale thing is just astonishing yeah um but the fundamentals um in some ways the fundamentals have have hardly changed and you know the the technologies behind the the networking have changed significantly the you know the the the watershed moment of you know going from the arpanet to the internet um and then people starting to just scale and scale and scale i mean the the the the scaling that happened in the early 90s and the way that so many vested interests fought the internet oh who oh interesting what was the oh because you can't really control the internet yeah so so so fundamentally the you know the cable tv companies and broadcasters and phone companies um you know at the deepest fibers of their being they hated the internet but it was often kind of a funny thing because um you know so so so think of a cable company right most of the employees of the cable company their job is getting tv shows movies whatever out to their customers they view their business as serving their customers um but as you climb up the hierarchy in the in the cable companies that view shifts because um really the business of the cable companies that had always been selling eyeballs to advertisers right um and you know that view of of like a cable company didn't really dawn on most people who worked at the cable companies but i mean you know we you know i had various dust-ups with various cable companies where you could see you know in the stratified layers of the corporation that that this this this this this view of you know the reason that you have you know cable tv is to capture eyeballs you know there they didn't see it that way well so so the people who the most the people who worked at the phone company are at the cable companies their view was that their their job was getting delightful content out to their customers and their customers would pay for them would pay for that higher up they viewed this as as a way of attracting eyeballs to them and and then what they were really doing was selling the eyeballs that were glued to their content to the advertising to the advertisers yeah and so the internet was a competition in that sense right and and and and they were right well yeah um i mean there was one proposal that we sent the the we one detailed proposal that that we um wrote up you know back at that sun in the in the early 90s that was essentially like look anybody you know with it with internet technologies anybody can become provider of of content so you know you could be distributing home movies to your parents or your cousins or your who are anywhere else right so anybody can become a publisher wow you were thinking about that already yeah yeah that was like yeah that was that that was like in the in the early 90s yeah and we thought this would be great you could you know and the kind of content we were thinking about at the time was like you know home movies kids essays um you know stuff from like grocery stores or you know you know that or or a restaurant that they could actually like start sending information about out and um that's brilliant and and the the the the reaction of the cable companies was like no because because then we're out of business what is it about companies that because they could have just they could have been ahead of that wave they could have listened to that and they could have they they didn't see a path to revenue you know there's there's somewhere in there there's a lesson for like big companies right like to to listen to to try to anticipate the the renegade the out there out of the box people like yourself in the early days writing proposals about what this could possibly be well and that you know that you know it wasn't you know if you're in a in a position where you're making truckloads of money off of a particular business model um you you know the the the the the whole um thought of like you know leaping the chasm right you know you know you can see oh new models that are more effective are emerging right so like digital cameras versus film cameras um you know i mean why take the leap why take the leap because you're making so much money off of film and um you know in my past at sun one of our big customers was kodak and i ended up interacting with folks from kodak quite a lot and they actually had a big um digital camera research and you know digital imaging business or b development group and they knew that that you know you you know you just look at the at the trend lines and you look at um you know the emerging quality of of of these you know digital cameras and you know you can just plot it on the graph you know and it's like you know sure film is better today but you know digital is is is is improving like this the lines are going to cross and and you know the point at which the lines cross is going to be a collapse in their business and they could see that right they absolutely knew that the problem is that you know up to the point where they hit the wall they were making truckloads of money yeah right and when they did the math um it never started to make sense for them to kind of lead the charge and part of the issues for a lot of companies for this kind of stuff is that um you know if you're going to leap over a chasm like that like like with kodak going from from film to digital that's a transition that's going to take a while right we have we had fights like this with people over like smart carts the smart cards fights were just ludicrous but that's where visionary leadership comes in right yeah somebody needs to roll in and say then take to take the leap well it's it's partly take the leap but it's also partly take the hit take the hit right so so so so you can draw all the graphs you want that show that you know if we leap from here you know you know the you know on our present trajectory we're doing this and there's a cliff if we um force ourselves into it into a transition and we proactively do that we can be on the next wave but there will be a period when we're in a trough and pretty much always there ends up being a trough as you leave the chasm but the way that public companies work on this planet they're reporting every quarter and the one thing that a ceo must never do is take a big hit take a big hit you know over some some quarter and and many of these transitions involve a big hit for a a period of time you know one two three quarters and so you get some companies and you know like tesla and amazon are are really good examples of companies that take huge hits but they have the luxury of being able to ignore the stock market for a little while and that's not so true today really but you know in the early days of of both of those companies um you know like like like like like they they both did this thing of you know i don't care about the quarterly reports i care about how many how many happy customers we have yeah right and having as many happy customers as possible can often be um an enemy of the bottom line yeah so how do they make that work i mean amazon operated in the negative for a long time it's like investing into the future right but you know you know so amazon and google and tesla and facebook a lot of those had what it what amounted to patient money um often because the there's there's like a charismatic central figure who has a really large block of stock and they can just make it so so what uh on that topic just maybe it's a little small tangent but uh you've gotten the chance to work with some pretty big leaders what are your thoughts about on tesla side elon musk leadership on the amazon side jeff bezos all of these folks with large amounts of stock and vision in their company i mean they're founders yeah either the complete founders are like early on folks and uh they're they amazon have taken leave a lot of leaps uh and you know uh that probably at the time people would criticize as like what is this bookstore thing why yeah and and you know bezos had a vision and he had the ability to just follow it lots of people have visions and you know the average vision is completely idiotic and you crash and burn um you know the the silicon valley um crash and burn rate is pretty high um and they're not they don't necessarily crash and burn because they were dumb ideas but you know often it's it's just timing um timing and luck and you know you take companies like like like tesla um and and and and and really you know the the original tesla um you know sort of pre um elon was kind of doing sort of okay but but but he just drove them and because he had a really strong vision you know he would he would make calls that were always you know or well mostly pretty good i mean the model x was kind of a goofball thing to do but he did it boldly anyway like there's so many people that just said like there's so many people that oppose them on the falcon one door like the doors yeah from the engineering perspective those doors are ridiculous it's like yeah they're they are a complete travesty but but they're but they're exactly the symbol of what great leadership is which is like you have a vision and you just go like if you're gonna do something stupid make it really stupid yeah and go all in yeah yeah and and you know to to must credit he's a really sharp guy so going back in time a little bit to steve jobs you know steve jobs was a similar sort of character who had a strong vision and was really really smart and you you know and he wasn't smart about the technology parts of things but but sort of he he was really sharp about the the the sort of human relationship between you know the relationship between humans and objects um and but he was a jerk you know right can we just linger on that a little bit like people say he's a jerk um is that a feature or a bug well that's that's that's the question right so you take people like steve um who was really hard on people and and the and so the question is was he really was he needlessly hard on people or was he just making people reach to to meet his vision and you could kind of spin it either way um well the results tell a story you know he's uh he through whatever jerk ways he had he made people often do the best work of their life yeah yeah and that was absolutely true and you know i interviewed with him several times um i did you know various negotiations with him and um even though kind of personally i liked him i could never work for him why do you think uh it that what can you put into words the kind of tension that you feel would be um destructive as opposed to constructive oh he he he'd yell at people he'd call them names and you don't like that no no i don't i don't think you need to do that yeah um and you know he you know i think you know there's there's pushing people to excel and then there's too far and i think he was on the wrong side of the line and i've never worked for musk i know a number of people who have many of them that have said and it's you know shows up in the press a lot that that musk is kind of that way and one of the things that i sort of loathe about silicon valley these days is that um a lot of the high-flying successes are run by people who are complete jerks um but it seems like there's been become this there's come this this sort of mythology out of steve jobs that the reason that he succeeded was because he was super hard on people and and and and and and and in a number of corners people start going oh if i want to succeed i need to be a real jerk yeah right and and and that for me just does not compute i mean i know a lot of successful people who are not jerks who are perfectly fine people um you know they they tend to not be in the public eye the the the the general public somehow lifts the jerks up into the into the hero status right well they because they're they do things that get them in the press yeah and you know the people who um you know don't do the kind of things that spill into the press um yeah i just uh talked to chris ladner um for the second time he's a super nice guy just an example of this kind of kind individual that's in the background i feel like he's behind like a million technologies but he also talked about the jerkiness of some of the folks yeah yeah and the fact that being a jerk has become your required style but one thing i'd maybe want to ask on that is and maybe to push back a little bit so there's the jerk side but there's also if i were to criticize what i've seen in silicon valley which is almost the resistance to working hard so on the jerkiness side is um it's it's so posted jobs and elon kind of push people to work really hard to do and there's a question whether it's possible to do that nicely but one of the things that bothers me maybe i'm just rushing and just kind of you know romanticize the whole suffering thing but i think working hard is essential for accomplishing anything interesting like really hard and in the parlance of silicon valley it's probably too hard this idea that you should work smart not hard often to me it sounds like you should be lazy because of course you want to be to work smart of course you want to be maximally efficient but in order to discover the efficient path like we're talking about with the short programs yeah well you know the the the smart hard thing yeah isn't an either or it's an and as an and yeah right and um you know the the the the the people who say you should work smart not hard they pretty much always fail yeah thank you right i mean that's that's that's just just a recipe for disaster i mean there are there are counter examples but they're more people who benefited from luck and you're yeah exactly luck and timing like you said is often uh an essential thing but you're saying you know you can be you can push people to work hard and do incredible work without without uh without being nasty yeah without being nasty i think uh um google is a good example of the leadership of google throughout his history has been a pretty good example of uh not being nasty i mean the the the the twins larry and sergey um are both pretty nice people sandra paches very nice yeah yeah yeah and you know it's it's a culture of people who work really really hard let me ask a maybe a little bit of a tense question uh we're talking about emacs it seems like you've done some incredible work so outside of java you've done some incredible work that didn't become as popular as it could have because of like licensing issues and open sourcing like issues um uh what are your thoughts about the the the entire mess like what's about open source now in retrospect looking back uh about licensing about open sourcing do you think uh open source is a good thing a bad thing do you have regrets do you have wisdom that you've learned from that whole experience so in general i'm a big fan of of open source the way that it it can be used to build communities and promote the development of things and promote collaboration and all of that is really pretty grand um when open source turns into a religion that says all things must be open source right um i get kind of weird about that because it's it's sort of like saying you know some some versions of that um end up saying that that that all all software engineers must take a vow of poverty right right as though um it's unethical to have money yeah to build a company to uh right and you know there's a there's a there's a slice of me that actually kind of buys into that right because you know people who make billions of dollars off of like a patent and the the patent came from like you know literally a a stroke of lightning that that hits you as you lie half a week in bed yeah that's lucky good for you the way that that sometimes sort of explodes into something that looks to me a lot like exploitation you know you see a lot of that in in in like the the drug industry um you know when you know when you've got a got got medications that cost you know cost you like a hundred dollars a day and it's like no yeah so the the interesting thing about the sort of open source uh what bothers me is when something is not open source and because of that it's a worse product yeah so like i mean if i look at your just implementation of emacs like that could have been the dominant implementation like i use emacs that's my main id i apologize to the world but i still love it uh and you know i could have been using um your implementation of emacs and why aren't i so are you using the gnu max i guess the default on linux is that new yeah and and that through a strange passage started out as the one that i wrote exactly so it's it still has uh right yeah right well and and part of that was because you know in you know the last couple of years of grad school it it became really clear to me that i was either going to be mr emax forever or i was going to graduate i couldn't actually do both was that a hard decision that's so interesting to think about you as the pub like it's a different trajectory that could have happened yeah that's fascinating um you know and maybe you know i could be fabulously wealthy today if i had become mr emax and emacs had mushroomed into a series of text processing applications and all kinds of stuff and you know i would have you know but i have a long history of financially suboptimal decisions because i didn't want that life right and you know i went to grad school because i wanted to graduate um and you know you know being mr emax for a while was kind of fun and then it kind of became not fun not fun um and you know when it was not fun and i was you know there was no way i could you know pay my rent right yeah and and i was like okay do i carry on as a grad student as a you know i you know i had a research assistantship and i was sort of living off of that and i was trying to do my uh you know i was doing all my ra where all of my r.a you know being grad student work and being mr emacs all at the same time um and and i i decided to pick one and one of the things that i did at the time was i went around you know all the people i knew on the the arpanet who might be able to to to take over looking after emacs and um pretty much everybody said i got a day job so so i actually found you know two folks and a couple of folks in a garage in new jersey um complete with a dog um who are willing to take it over but they were going to have to charge money um but my deal with them was that they would um only that they would make it free for universities and schools and stuff and they said sure and you know that upset some people so you have some now i don't know the full history of this but i think it's kind of uh interesting you have some tension with me mr richard stallman um over the and he kind of represents this kind of like like you mentioned free software uh sort of a dogmatic focus on yeah all all information must be free must be free so what is there an interesting way to uh paint a picture of the disagreement you have with richard through the years my my basic opposition is that you know when you say information must be free uh to a really extreme form that turns into you know all people whose job is the production of everything from movies to software um they must all take a vow of poverty because information must be free and that doesn't work for me right and and i and i don't i don't want to be wildly rich i am not wildly rich um i do okay um but i do actually you know you know i've you know i can feed my children yeah i totally agree with you i it does just make me sad that sometimes the closing of the source for some reason the people that like a bureaucracy begins to build and sometimes it doesn't it hurts the product oh absolutely absolutely it's always sad and there's and there is a there is a balance in there that's a balance um and you know it's it's not hard hard over you know rapacious capitalism and and it's and it's not hard over in the other direction um and you know a lot of the the open source movement they they have been magic to find a path to um actually making money right so doing things like service and support works for a lot of people um you know and there are some some ways where it's it's kind of um some of them are are a little a little perverse right so as you know a part of things like this sarbanes-oxley act and various people's interpretations of all kinds of accounting principles um and this is kind of a worldwide thing but if you've got a a corporation that is depending on some piece of software um you know the often you know various accounting and reporting standards say if you don't have a support contract on this thing that that your business is depending on then that's bad you know so so so you know if you've got a if you've got a database you need to pay for support and and so but there's a difference between you know the the sort of support contracts that you know the average open source database uh producer charges and what somebody who is truly rapacious like oracle charges it's a it's a it's a balance it is it is absolutely a balance and you know there are there are a lot of a lot of different ways to make you know the math work workout for everybody um and you know the the very you know uh un unbalanced sort of you know like like the winner takes all thing that that happens in so much of of modern commerce um that just doesn't work for me either i know you've talked about this in quite a few places but you have created one of the most popular programming languages in the world this is the programming language that i first learned about object-oriented programming with you know i think it's a programming language that a lot of people use in a lot of different places and millions of devices today java so the absurd question but can you tell the origin story of java so long time ago at sun in about 1990 there was a group of us who were kind of worried that there was stuff going on in the universe of computing that the computing industry was missing out on and so a a few of us started this project at sun that really got going i mean we started talking about it in 1990 and it really got going in 91 and it was all about you know what was happening in terms of you know computing hardware you know processors and networking and all of that that was outside of the computer industry and that was everything from the the the the sort of early glimmers of cell phones that were happening then to you know you look at elevators and locomotives and process control systems in factories and all kinds of audio audio equipment and video equipment they all had processors in them and they were all doing stuff with them and and it and it sort of felt like there was something going on there that we needed to understand and so c c and c plus plus was in the air already oh no c and c plus plus absolutely owned the universe at that time everything was written in c and z plus plus so where was the hunch that there was a need for a revolution well so the the need for a revolution was not about the a language it was about it was just as simple and vague as there are things happening out there and we understand them we need to understand them and and so um a few of us went on several um somewhat epic road trips um literal road trips literal road trips it's like get on an airplane go to japan visit you know toshiba and sharp and mitsubishi and sony and all of these folks and you know because we worked for sun we had you know folks who were willing to like give us introductions you know we we visited you know samsung and um you know a bunch of korean companies and we went all over europe we went to you know places like like phillips and siemens and thompson and what did you see there you know for me the one of the things that sort of left out was that they were doing all the usual computer computer things that people had been doing like 20 years before the thing that really left out to me was that they were sort of reinventing computer networking and they were making all the mistakes that people in the computer industry had had made and sinc
Resume
Categories