View  Info
 

Podcast 025

[incomplete]

Intro, advertising

[01:27]

Atwood: Hey, we have Steve Yegge on the line.

Yegge: Hey gents.

Spolsky: Hey Steve.

Atwood: Joel is on, let's make sure everybody's here. Joel are you here?

Spolsky: I think so.

Atwood: Okay, and we're recording, everything is good.

Yegge: Cool.

Atwood: We had a little technological break down earlier in the call. We were experimenting with some new equipment.

Yegge: Well, I'm glad because I had to take that time to run to another room since, Googlers kinda throw a lot of parties and so like you'll book what you think is the quietest part of the room and then all of a sudden people will be like throwing some sort of party next to you and that actually happened. So we're all good now. It's quiet.

Spolsky: What was that party about, successful search results?

Yegge: I didn't bother to ask, I just fled.

Spolsky: Uh Uh

Yegge: They throw parties like for everything, they even throw meta-parties. It's a little over the top here sometimes. You would think they'd be working, but no.

Spolsky: Like the 1024th party on a week day or something?

Yegge: [laughter] That's right. So, how do you guys do this? I was asking Jeff if there's a theme song. You know, like the Muppet show or you know something like that?

Spolsky: Oh, well I have new gear, so I could make a theme song. Do you have any requests?  I'm loading up iTunes.

Yegge: Nothing really comes to mind.  Actually, how about the Love Boat show?  Can we swing that?

Spolsky: I'll work on it.

[02:49]

Atwood: I have suggestion.  So one meme that came up recently was they want to put - I don't know if you guys know that "Transformers, the movie" for a lot of people of a certain age, that was a very significant movie.  And there's this incredibly cheesy theme song music, it's like 80's guitar schlock, but it's very beloved.  And they actually contacted the guy who wrote it and he wrote back to them and they want to include it in rhythm games like Guitar Hero and Rock Band.  The reason I know this song, it was actually a song in the movie, I don't know if you guys have seen the movie, "Boogie Nights."

Spolsky: Yeah.

Atwood: It's one of the incredibly cheesy songs that he sings in the studio as part of hit "recording career,"  Dirk Diggler's recording career.  I had no idea this song was in the Transformers, so it's like taken on a whole new meaning to me now.  But that...

Yegge: Now when you say, "people of a certain age," you mean old people right?

Atwood: Yeah, that's what I'm fast becoming, it's a little scary.  When you're like ten years older than a co-worker, it's the first time that happens it's a little weird.  You're like, "wow we have almost no growing up TV shows in common anymore."

Yegge: Yeah, although there's a lot of people around here that put me to shame and I'm getting up there, but I'm kind of curious like what's the plan for programmers like us who are going to work and work and never quite make it big enough to retire and sail our yacht around?  I mean do we just like work until we collapse on our keyboards?  I mean I think the dynamics kind of changing a little bit isn't it?

Spolsky: I think that what will happen is that, eventually of course you'll be kicked out of Google because you won't be producing, you'll be really just to old to really crank out the code.  So you'll end up at one of those companies that doesn't yet have TPS reports, and you'll institute the TPS reports.

Yegge: Yeah, because by then that movie will be so old that nobody will have heard of it.

Spolsky: Exactly, they won't know the old ways, and you will have had a reputation of being an organizational person, a good person to...

[04:46]

Yegge: Although I have it on good authority from an intern there - although this is admittedly second-hand and everything but that Intel is actually the source of the TPS reports.

Spolsky: No kidding?

Yegge: Have you guys heard this?

Spolsky: This stands for something?

Yegge: Yeah, it does.  And they actually send out a memo when the cover page changes.

SpolskyGreat.

Yegge: Nice Place.

Yegge: But all right, so we don't have to talk about getting old and dying yet.

Spolsky:  Steve, my experience has been that--I don't know if you agree with this or what you think about this but my experience has been that I get slower and slower, but I still produce the same number of debugged lines of code because I get smarter and smarter about how I do things.

Yegge: Yeah.  Yeah.  That's true, that is true.

Spolsky: And it sort of makes up for it.  Like there's none of that reckless--

Yegge: You guys know Foo Camp, right?  

Spolsky: Yes.

Yegge: You guys have both been there, yeah?

Spolsky: No, I don't go to things like that.

Atwood: I've heard of it.

Yegge: So like, they do these introductions ceremony, right, where all 300 people are in this tent, and they gotta stand up one at a time, and they gotta say their name, where they're from, and three words.

Spolsky: Oh, it's a Google weekly staff meeting.

Yegge: [chuckle]  Oh, man, I'm getting all confused.

Spolsky: Did they stop doing that at Google?  Yeah, I was consulting at Google when they were about 50 people.  And everybody would get together in the cafeteria every Friday and stand up and explain who they were and where they were from because there were so many new people every week, and what they were working and what they accomplished this week and what they hoped to accomplish the next week.  

Yegge: Yeah.

[6:19]

Spolsky: And with I don't know, in the two weeks I was working there, they went from 50 to 75 people and it was just ridiculous.  It was just too many people.

Yegge: Yeah.  I mean like the week that I got here, there were probably 50 or 70 new people and that was like three and a half years ago.  And they made us wear these colored beanie caps and sit in the special section at TGIF.  And I mean, like it was crazy.  Like, it was like this army of new people.  And some of them were...I mean, you're sitting next to like Ken Thompson or something.  I mean, there are famous people starting every week, too.

Spolsky: So when you're hiring this many new people, doesn't it happen that they get in and they never really learn the Google way of doing things.  They just keep doing things their old way and nobody notices because there's nobody experienced to look over their shoulder and they just sort of bring their bad old habits from whatever TPS-report-company they come from?

Yegge: You'd think that but it's kind of weird.  I've noticed this dynamic where people change to fit the company that they're at, right.  And they really, by and large, they adapt.  And so you might have worked at some company three companies ago where you know the management style was you were encouraged to be a jerk, right? 

Spolsky: [chuckle]  I did, in fact, exactly three companies ago.  How'd you know?

Yegge: Yeah, I mean I recognize that it's relatively rare and everything but in some places you know they kind of like a-hole managers, right?  And so like people show up there, they'll turn into a-holes, but they never really lost that nugget of goodness they had before they started and so they'll show up at Google and literally, like, in 15 minutes of looking around, it'll be like, "Oh... this place is - I get it", right, and they'll revert back to being the good person they were before and you know, it's the same thing for whatever your work habits are.  Also, there are a lot of peer pressure here to unit test and to document things and they've got a lot of even automated processes in place to kind of like almost force you to do it. So, it's not bad, but they have slowed their growth.

[08:20] 

Spolsky: So how come that's happening... Netscape had that problem, they hired people at the rate Google is hiring them now.

Yegge:  You were at Netscape?

Spolsky:  No, No, I just know about this.

Yegge:  I was going to say, cause I was wondering if you know were at Netscape around the time you're talking about then you should have blown all your money on crack by now but maybe that was only a few of them.

Spolsky:  Not me and I have better taste than that.

Yegge:  Ya, I'd hope so. 

Spolsky:  Uhh... What were we talking about?

Yegge:  Netscape, they just went like from ..

Spolsky:  I believe they went from fifty to a thousand engineers in one year, and the net result is that everybody brought whatever bad habits they had from their previous company in Silicon Valley.  They were sort of hiring anyone who was walking in the door.  I don't think that Google has gotten that desperate yet.  Although...

Yegge: Yeah, not yet, but since you mention it, you got a résumé for me?

[9:20]

Spolsky: But when you have a whole team... sure let me hand you all the rejects from Fog Creek. But when you have a full team that arrived there... they're going to do whatever they do. They'll have a culture themselves. So you're saying this doesn't happen at Google.

Yegge{to be transcribed} ... where at Google very early on set up this set of processes very early on for growth ... have to follow style guide.... you  have to pass this readibility review... so it makes moving groups

Spolsky: How do you know who wrote something?

Yegge: Most shops these days use Perforce, right?

{to be transcribed}

[12:51]

Yegge: Who wrote that article that says that Starbucks is a two-phase commit?

{to be transcribed}

Spolsky: It's Gregor Hope.

Atwood: Come on Steve, you planned that.

Yegge: I'd just say, "Gregor, I didn't know you were that smart."

{to be transcribed}

Spolsky:  Edit me!

Yegge: Edit me!

[19.49]

Spolsky: OK, here's the thing. For a startup to work, it has to be an idea that is not very convincing. It has to be a completely terrible idea.

Yegge: [laughs] Come on!

Spolsky: No guaranteed, because let's say you have an idea "Search really sucks and I know how to make it better. I'm going to..."  Let's not take that idea because it's just too unique and whatever.  Whatever your idea is, if it's obvious: it's being done.

Yegge: Yeah, that's true.

Spolsky: If you explain it, and everyone says "Oh yeah, that would work, I'm surprised that's not being done" - then it is being done.  However, if you explain it and they say "That wouldn't work, because of blah.  It could never possibly work, you could never have auctions on the Internet because people are untrustworthy and they will use it to steal your money by pretending to sell you a laptop and not sending you the laptop, so you can't have auctions on the web."  But as it turns out you can have auctions on the web.  Or whatever the idea it, it has to have a fatal flaw at first glance and it has to sound like a terrible idea and you have to believe in it for some reason which you just have trouble explaining to anyone except your brother-in-law who joins you in your startup or your college roommate who doesn't really get it, because you do need someone to join you, but the idea has to be not obvious and it has to sound bad - otherwise it's getting done.

Yegge: That sounds right, because if I look back at all the startups that I missed out on.  I recognise that if I had been pitched that idea at the time, I would have said "that won't work."  Like YouTube, I would have laughed at those guys.

Spolsky: Yeah, how are you just not going to get filled up with all kinds of copyright violations.  You're going to be a permanent lawsuit target.

Yegge: Exactly.

Spolsky: And it's just going to be a big hosting site for pornographers.

Yegge: And you know I mean there was another one, and then every once in a while there is actually a good idea and then you're like "Oh My God how come nobody else thought of that."  It really does happen sometimes, right?  Like that company that just revolutionized uh, they just stole 13% of the market share from digital video recorders [cameras], right?

Spolsky: Flip

Yegge: The Flip, thank you.  That was a good idea, right?

Spolsky: Ummmmm.

Yegge: Yeah, come on, you can't say it wasn't, right?  It's the perfect description.  It fits in your pocket, has one button, you know, record.  It has this other tiny button play.  It has no wires, it just plugs into your computer via USB port.  It doesn't have any battery you can change.

Spolsky: So let's just say you were the guy inside Sony or Panasonic or somebody making video recorders and that was your idea.  Are you going to try to sell it?

Yegge: You right.  You're absolutely right.  Playing devil's advocate they would have said "no it's all high-end audiophiles that want this stuff.  You're describing a market that does not exist."

Spolsky: Yeah, that's really what it is.  Besides the fact that you have to make something that is totally unconvincing and therefore the most people you have convince the more unlikely it is to get made.  You know you are also in a conservative institution.  Because institutions are conservative, they try to preserve the institution.  Even an institution like a Google which tries not to be conservative and deliberately encourages people to do startup like ideas with the 20% time and whatnot.  And yet, realistically, you have a much better chance of just going out and doing it outside.  That's why these companies go out and buy some of these startups.  They're basically outsourcing the innovation.  There's too many organizational reasons that startups kind-of can't happen internally.  Google might prove, its certainly doing more than anyone else is to encourage skunk-work projects, to try and reward people disproportionally for coming up with great ideas although that to me sounds like a horrible idea.  They're doing more than anybody else.

Yegge: Well I don't know.  They reward people years after the thing has become clearly really successful to the level where they would have paid a bunch of money for them if they had been a startup. Does that make any sense?

Spolsky: It does but what about all the people, there are people working on things that are not as easily recognizable that may be worth a lot more to the company and there are people that are just good soldiers and are just doing what they are told and doing it well and it's not their fault that they did not invent Gmail.  They would have loved to invent Gmail.  They were probably telling somebody that they should do Gmail.  And for months and months and months nobody was listening to them because they were not very persuasive.  So it seems to me what winds up being partially unfair but also gives people an incentive to try kind-of stupid flashy things in hopes to get something down the road.

[24:58]

Yegge: So you know you're right, you're right about all of this sort of institutional resistance to new ideas.  I mean there are a bunch.  People they almost have a built in "naw it could never work" type of reaction, I mean they are kind-of jaded, right?  But that said, you know, that causes people to go off and do startups and you lose talent.  It's kind-of opportunity cost because it might get sold to someone else and not you.  It's in Google's best interest, I think really in every company's best interest, to try and find a way around these problems.

Spolsky: Why shouldn't Google just, and I'm just playing devil's advocate here, I can see why Google thinks this, but if I were in Google's position why wouldn't you just say not everything is going to be invented here.  We're opened to buying other companies and let's let the market test these ideas and the ones that make it to success we'll over pay for.  And instead of paying for developing 20 ideas in-house and one of them pays off you just buy one of those companies instead of 20 for 20 times as much money because that is what it is going to cost you to buy the startup once it's successful.  You're going to have to pay a multiple of 20 because it's been successful. And you might as well do that and get to pick and choose among the ones that kind of work instead of only choose among the ones that were done in house.

Yegge: Sure, well you know I like can't obviously speak for Google about policy things right.   All I can talk about is what engineers in our position think and I haven't been in a bunch of other companies that I can say this sort of decision about whether to go do a startup or try to advance your ideas inside the company that's a common pattern, a current theme.  And I can also tell you I can look at a lot of companies that we have acquired and I can look at an equal number or greater number of internal startups that actually happened here like where somebody said like "screw you guys" I've been here for long enough, I've given enough blood to the company or I've vested or whatever you know.  Or maybe I worked at Microsoft for 15 years before I came here so I'm working for free anyway.  There's all sort of ways you can get into this situation, to get into a position where you are willing to walk if you don't get to do what you want to do.

Spolsky: Yeah.

Yegge: But every once in a while one of those people has an idea they want to pursue and they say I'm doing it here because you know you guys have good infrastructure and I don't want to have to re-invent big table and the localization system and all that other stuff.

Spolsky: Right, right.

Yegge: And you know examples, we talk about all the time like Orkut which hasn't been a huge success in the US but in some countries it's completely taken over, right?  And I mean Gmail was to an extent like that and GoogleTalk.  I mean there is a whole long list.  I mean it can be successful and people are willing to more the risk reward ration and compress it.  Right?  I mean because some of us are married and we have lives outside of work and the concept of doing a startup.  Yeah sure the potential reward is a lot higher, you know, but the risk is huge right?  You know it's not that appealing.  We want to be innovators but not entrepreneurs.

Spolsky: Right, absolutely.  When you're an entrepreneur you're going to waste an awful lot of time.  Like I'm.  Fogcreek is 8 years old now and today Michael and I, the co-founders, are actually installing blinds. 

Atwood: Yeah, you got blinds?  That's great.

Yegge: That's a great engineering activity Joel.  Are you going to be writing about the technical challenges there? 

Spolsky: Naw.

Yegge: I mean that's the thing there.  I think programmers who say I'm going quit and go do a startup grossly underestimate just how much non-programming stuff they are going to wind up doing.  I mean if you're going to go do it you have to be at heart an entrepreneur.  Actually maybe even not a programmer, more of an organizer.

Spolsky: Either that or you're just bored with programming.  That's a solved problem for you and you just want to move onto the next thing.

Yegge: Yeah sure, whatever your reason.  You're reason shouldn't be I have this great idea that I want to build with my own hands and so I'm going to go and be an entrepreneur.  It ain't going to work for you.

Spolsky: It might, it can.

Atwood: What I hear missing a little bit there is for some people they want to be like Larry Page.  They want to be one of the key people in the company.  And I know I've worked at places where, not that I want to be kind of the world or anything, but it's a little frustrating because you're not one of the cabal that runs the company. You're just never going to be "the guy" that's really a part of the key decisions that take place at the company.  And I know that can be kind of frustrating.  I mean I guess if you have this sort of magical infrastructure where you never hit road blocks and you're always able to do exactly what you think needs to happen for some idea to move forward then I guess that would not be necessary but I've seen that dry bed where you just can't become part of the power structure of the company.  You're doing great work and you're helping them build whatever it is they're building.  But sometimes you just want to own the thing that you're building.  I mean really own it.  Like every aspect of it.  And I guess there are infrastructure issue there where you require like big table or thousands and thousands of servers then you're sort of in a catch-22 situation.  How can you build that kind of infrastructure without having a company to support you on some level and that's something I'm not really hearing there.

[30:33]

{to be transcribed}

Spolsky:  Edit me!

Yegge: Edit me!

[36:52]

Spolsky: We have twenty four listeners.

[36:53]

{to be transcribed}

Spolsky:  Edit me!

Yegge: Edit me!

[38:29]

Yegge: [...] some people man, they can't handle that [a failed project]. They're out on the ledge, you have to talk them down real slow. It's usually more junior people.

Spolsky: I don't know about junior, but they identified with the project that they were working on.

Yegge:Yeah, that happens.

Spolsky: And that's kind of important. Otherwise they're not going to work the 24 hour days, if they're not particularly identifying with it.

Yegge: At Google, I got in trouble once for working 24 hour days, so I had to back off.

Spolsky: People are going to be much more devoted to a project that they identify with.

Yegge: You know, it's funny: if you're going to point to one thing in my blog that's never really been spoken but that's underlying everything that I've written is that, identifying with anything so strongly that it starts to give you emotional reactions is really bad.  Because you never know when your language is going to be obsolete or your project is going to get canceled or your favorite framework is going to be replaced.  Right?

[39:24]

{to be transcribed}

Spolsky:  Edit me!

Yegge: Edit me!

[44:35]

Atwood: [...] It's about trading off computer time for human brain time.

Spolsky:  I'm not saying that you don't make improvements in programming languages, I definitely feel like you do. I feel like there are definitely better and worse languages, I don't want to deny that, and there're definitely major steps forward, and there are some kind of minor steps forward. I think the major steps forward are things like garbage collection/managed code, not having to manage your own memory actually does get you more productive because you stopped dealing with accidental complexity and can deal with only the complexity that you care about.

Yegge: Concurrency's another big one. I wasn't able to actually use threads safely or sanely until the java.util.concurrent libraries came out, and they actually made it reasonable, at the expense of a little extra computational overhead, because the libraries may not generate as efficient locking as what you could do by hand, but it did let you throw together this multithreaded thing that would get 1000 times the throughput, so who cares if you lost 30% efficiency over a hand-tuned version, because you never would have got the hand-tuned version working

[45:44]

{to be transcribed}

Spolsky:  Edit me!

Yegge: Edit me!

[46:28]

Spolsky: [...] even the ability to call functions recursively is something the average programmer uses about once a year.  It's good to have, but it's not going to necessarily make a huge difference - that one time a year it does - but it's not as big a deal as garbage collection.

Yegge: Sure.

Spolsky: So, but that said, there are definitely languages that are better and worse, but that said, there are also programmers that are better and worse.  And there's something a little bit weird about (frankly) script-kiddies obsessing over what language they will choose to be betrothed to as though they were picking...  It just sounds like sixteen year olds trying to decide what used jalopy to get.

Yegge: I would love to see everybody learn a bunch of languages because it does make you a better programmer.  It gives you the ability to take a look at some language - like Excel macros - and sort of squint at it, and say "if I did this and this and this, it would almost look like a real language." 

Spolsky: Yeah.

Yegge: And so you can't do that unless you've programmed in - pick your favourite five high-level languages - you can't squint at Java and say "oh, I know how to turn this into almost a real language"  It's hard, right, because you're down in it.  I'd love to see people do that, but there is sort of a tension to try to find one language that you can kind of stick with because languages today are silos and they don't interoperate very well.  I mean, they kind of interoperate at the IPC level, at these really course-grained... but you can't share stack with a lot of them, right?

Spolsky: It sort of depends.  If you stick to the Microsoft world they interoperate nicely

Yegge: Yeah, well, Microsoft got it. 

Spolsky: Yeah.

Yegge: They did.  With .NET, once Microsoft realized that languages matter (which the big Sun lawsuit was a big slap in the face) but they got it, to their credit they went out and got a bunch of language people and built .NET which does a whole bunch of things right, and now Sun's been playing catch-up.  I'm going to hear a whole bunch of crap from Sun people going, "oh, we support languages just as well now"

Spolsky: Let me just tell them in advance: nobody email us.  Just don't.  We're already sorry.  We're going to apologize in advance for everything that we say.

Yegge: Yeah, I mean I love them all, they're all great, really.  Please don't email me back.

[49:07]

Spolsky: You know what?  The interoperability in .NET and the way the languages work together and share a stack, and a lot of of those things and the way you can even communicate between processes and assembles (and all that kind of stuff) is really like a version of COM that assumes garbage collection.

Yegge: Yes.

Spolsky: Once you assume garbage collection (or memory management as they call it) then you can do things that in COM you used to have to do manually, and they were a nightmare.  COM had the right idea, it was just that it was impossible to ever keep your reference counts correct, and... 

[49:26]

Yegge: Yeah.  Yeah.

Even so, right.  Even in the rare cases, like .NET, where you can get them to interoperate - I think they actually had to make concessions, they actually had to change VB to the chagrin of hardcore VB users. 

Spolsky:  Yeah-yeah-yeah.

Yegge: They had to actually make semantic changes, right?  To make them all interoperate.  That has to happen to some extent.

Spolsky:  It was sort of embarrassing.  I mean, that was a problem.  That was sort of the abandoning of the world's most popular programming language.  I hate to say this, but VB was the best selling programming language of all time, and to abandon all that code, basically say, "You know, we'll give you some tools that don't work for importing it, and we're going to make these fundamental changes in the way the language works, and then we're going to blithely change the whole forms system so that you can't really port your code reasonably." It basically made the largest single cohesive community of developers in the world all suddently decide, "OK. What's next? We can't keep using VB, what are we going to use next?". I think they scattered to the winds, really, a lot of them just started doing web, and they went to PHP.

Yegge: And if they were trying to kill VB, then that was a great move. It's every language community's fear, that they're going to make a decision that actually causes people to scatter to the wind. It happens, right? Sometimes a language will come along and it'll recruit from some existing language, that's how they get successful, they target some other audience, saying, "You're unhappy, come to us". But even when you get to the point where things are interoperable, like in .Net, just having things in two different languages poses these impedance mismatches, these friction points, where maybe your tool is better with one of them than the other one. You can't mix at the source-code level very well, it confuses your editor or whatever. They've got a lot of work to do before languages become commoditized interoperability.

Spolsky: They are in .Net, but only because each language has taken a slightly different form than its native self would be.

Yegge: It's worth it, right? Most people will never switch languages. They're one horse programmers. Microsoft's made a really good decision to try to get as many of them together as possible. They have to make minimal changes to their working model. You have to learn this new version of VB, or C#, or Ruby, or Python. They're doing all these things and then they get interoperability which is really good. Maybe the answer to, "Which language?" is going to be solved by Microsoft.

[52:00]

Atwood:So Steve, I want you to tell us what you're working on.

Yegge: secrecy.  It's this weird trade off, right?  suddenly shock people into realizing it's a really good idea.

Spolsky:Google Brown Paper Bag.  GPaperbag.  Saying snotty things about it.  You're showing it a little too early.  2.0, 3.0, or 4.0.  funny thing that they released.  K-N-O-L.  google.com/knol.  A lot of people look at it.  It's supposed to be a Wikipedia clone.  C-U-I-L got a lot of publicity.

[54:18]

{to be transcribed}

Atwood: Steve's doing actual work over there.

[56:05]

{to be transcribed}

Yegge:I want to port it to the...

Spolsky:Android.

[56:34]

{to be transcribed}

Yegge:So I don't know, there's a bunch of stuff I'd like to do on the side.  fiercely defending it.

[56:53]

{to be transcribed}

Atwood: When do you think it'll be canceled?

Yegge:I'm in complete control of it.  You know what I mean?  They didn't have like product managers researching it.  They were always like really happy because of that, right?

[57:45]

{to be transcribed}

Atwood: So you're like the PM or whatever?  How many people are working on this with you?

Yegge: It's a small project, and I want to keep it small.

[58:28]

{to be transcribed}

Spolsky: Six to eight weeks.

[58:43]

{to be transcribed}

Yegge: I'm not having a lot of scrum meetings.  It's funny how we get an extra hour a day.

[59:11]

{to be transcribed}

Atwood:When I used to post on coding horror.  My mind overdrive.  actually written reasonably well.  Your writing process, how long it takes.

[59:35]

{to be transcribed}

Yegge: one sitting.  So pretty much everything.  40% writing, 60% editing.  I throw a lot of stuff out.

[1:00:05]

Spolsky: I would hate to see what's on your cutting room floor.

[1:00:07]

{to be transcribed}

Yegge: two hours every couple days.  You can't write about anything that's interesting without making a bunch of people mad.

[1:00:48]

{to be transcribed}

Spolsky: And a villain.  I think you need a villain, make somebody out to be a villain.

Atwood:When you actually wouldn't put comments in your code.  Then people get pissed off.  Then people accuse you of trying to be controversial when all you're trying to do is be interesting.

[1:01:55]

{to be transcribed}

[1:02:08]

{to be transcribed}

Spolsky: Um, yeah.  Of course.  That's a software program that they bought, Steve.  it sends email to a bunch of high page ranked people.

[1:02:30]

{to be transcribed}

Yegge: "I read your blog".  Now all of a sudden you're thinking.  "Steve, you're a clown fish.  Say something funny."  It's kind of crazy.  If the thing's a total flop.

[1:03:11]

{to be transcribed}

Atwood:I remember when your blogs first sort of hit the scene.  There were some really good ones.  The CTO asked me to take off. 

Yegge: too much internal information.  So unfortunately some of the good ones got yanked.  Been there for five years.

[1:03:57]

{to be transcribed}

Spolsky:  And how did these get distributed internally? Was there some kind of...? Does Amazon have some kind of internal blog?

Yegge: early adopter types.  word of mouth.  To like a thousand readers every time I posted.  It's like my diary.  So go away.  But that just seemed to bring more people in.  It doesn't work.  opposite of what you want. 

[1:04:47]

{to be transcribed}

Atwood:the paradox of information when working within an organization.

[1:05:13]

{to be transcribed}

Spolsky:  it's more efficient to write notes to yourself.

Yegge: all these copies of the web, historical copies.  It's even back-dated.  It's totally changed if you think about motivation for why people do things.  immortality.  kids that look like themselves.  These days.  Everything you say quoted out of context.

[1:06:12]

{to be transcribed}

Yegge: It's totally changed...I mean, if you think about motivation for why people even do things, like open-source software or write essays or whatever, it's the new bid for immortality. People used to have little kids, you'd have to have kids that looked like themselves, and you'd teach them to talk like you--that's your bid for immortality--but these days, everything you say can be quoted out of context five hundred years from now.

Spolsky: The other thing is, if you're not on the Web, if you're not writing stuff on the Web, then when people search for you they're going to find stuff that you don't control. It may be good, it may be bad, it may just be a little piece here, a piece there...Just to give a random example, there's a childhood friend of mine who I haven't seen since I was nine, and every once in a while I'll search for his name on Google, and I'll find a story about his brother getting killed in a car crash--that's the only thing you can find about this person, the only thing you can find about his existence. For all intents and purposes...It's not that he doesn't exist; he does exist. He has a life and stuff...It's just that his life online is not controlled by him because he hasn't really produced anything there. You pretty much have to kind of flood...If you want to control...Think of all these people that had one negative story about them...because they did something stupid once, and it was on YouTube, and now that name is known; now they're known as that Star Wars kid, or whatever it may be, and this is their reputation that they've got to carry around forever, and the only way you could ever overcome that is by flooding the inputs, flooding Google with all kinds of other stuff about you.

Yegge: Yeah, and Joel, you've even taken it offline; you put yourself in print just in case there's some big EMP that wipes every disk in the world...

Spolsky: In case of emergency

Atwood: I think, for the average person, that's what Facebook and Myspace and things like that do for you; they give you the ability to put a footprint on the Web that you can kind of control--right?--to some degree, 'cause they're not going to, certainly, write blog posts. I mean, the average person's just not going to blog, and I know...Steve, one of your absolute favorite things you ever wrote, and I always cite it all the time, is the one about why you should write blogs. I loved that one.

Yegge: Thanks

Atwood: The things that's challenging there is that, for a lot of people, it's just not in their DNA to do that; it just isn't. It's not going to be...

Spolsky: Not gonna happen

Atwood: ...cajole them...It's an excellent idea, but it's just not going to happen, and I feel like, for those kind of people, stuff like Facebook and Myspace and, to a lesser extent, this stuff we're doing with Stack Overflow is a way for them to have a footprint without trying to convince them to do something that would be awesome, but they're just not gonna do it; it's not in their DNA. So it was a little frustrating to me because I would work with these brilliant, brilliant programmers that nobody knows about, and I still feel like there's this huge untapped market of really excellent programmers that nobody knows about because they're not marketing themselves. I guess this all goes back to marketing.

Yegge: And you have hallway conversations with people who are brilliant, right? and their ideas are brilliant, but that's it.

Spolsky: They don't go anywhere.

Yegge: Their ideas are limited to hallway conversations. It's kinda sad that people don't take a little bit of time to write down what they're thinking because they may think it's not interesting, but somebody out there is going to find it interesting when you show it to four billion people, you know?

Atwood: And then I feel guilty, too, because people will criticize you about your public presence, and I kind of agree with them. It's not that...For me in particular, it's not that I'm really that good at what I'm doing; it's that I'm noisy, right?

Yegge: Yeah, I hear you!

Atwood: If you're good at making noise, and you can make the right noises sound kind of right, you can achieve a level of success that you really probably don't deserve. And I'm speaking of myself; I'm not talking about you guys.

Yegge: No, no, it's true for me too. I know so many programmers who are better than me, and everybody always assumes that because I'm talking about things, I'm offering opinions, that I'm implicitly saying that I'm an expert, or that I'm a better programmer than them, I'm arrogant, when in fact, I've said it again and again and again, I'm a dumbass, right? I have an internal blog inside of Google called "Dumbest Person at Google" where I offer this sort of tongue-in-cheek inductive proof as to why I'm the stupidest person in the company, and people loved it! because it was kind of true, and it was nice to hear me saying it, but...I still don't understand. I think it's just people's natural reaction when you say something that accidentally puts them on the fence of...they take the other side...you've said something that they identify with, and you said it's stupid, or it sucks, or it needs to change, then their first reaction is going to be ad hominem.

[1:10:22]

{to be transcribed}

Atwood:  don't want to be attacked.  they just want to win.  be challenged and win.  the illusion of potentially losing.  perception of danger. 

[1:10:53]

{to be transcribed}

Yegge:I was in real danger, buddy.

{to be transcribed}

Spolsky:  Edit me!

Yegge: Edit me!

[1:13:36]

Spolsky: blog.stackoverflow.com  As usual, if you would like to contribute a little bit to the community, we have a transcript wiki online and there will be a link to also at the blog post, or you can go to stackoverflow.fogbugz.com and look for the transcript wiki, and what you'll find there is a community from around the world of people who are volunteering their time to just type out a few minutes or a few seconds or a few lines of this podcast to contribute, and very rapidly that becomes a complete transcript, which is very helpful to people and it allows it to show up in searches and it allows people who are hearing impaired, or don't feel like listening to a four hour, sixty five minute podcast with Steve Yegge just going on and on - and our boring selves.  So that would be appreciated.  Until then, see you next week.

Atwood: Yep, bye!

[1:14:32]

Outro, advertising

[1:15:51 ends]

Last Modified: 8/30/2009 12:47 AM

You can subscribe to this wiki article using an RSS feed reader.