Atwood: Skype doesn't do multi-cast video
Spolsky: Seriously? It's like you can't even...
Atwood: Only point-to-point
Cartaino: I'm surprised
Atwood: We knew that from the VC call remember?
Spolsky: Ah, I dunno, I've never had video before. Wait, why does it say "Missed conference call"? Oh cos that was the other computer. I got Skype logged on to two computers. I got a whole new setup this week. Hey welcome to the StackOverflow Podcast X... X... X... X...
Atwood: 87 maybe?
Spolsky: No this is the special, it's like the special edition, it's like we've broken the inter-regnum.
Atwood: Oh, it's kind of like when the Eagles got back together
Spolsky: Heh heh heh, or like the [?] concert in Central Park
Atwood: That's right, I believe the title was "Hell Freezes Over"
Spolsky: The Eagles one?
Spolsky: Yeah. Err, that's good, that's a good one. Pigs flying is another good one. Why are they making all that noise in the kitchen? Hold on. We have with us in the audience today the special guest Robert Cartaino. Have we ever announced to the public at large?
Atwood: No, not yet, but we will, we want to, we will. He's gonna... I'm gonna... yeah... it's in the works. By the time this podcast is published it should be known.
Spolsky: Excellent plan. Robert is the new Community Manager, although I dunno what title we're going to put on his business card for StackOverflow Inc.
Cartaino: I've been putting Community Coordinator on. I don't know if that's apt, but it seems to work for now.
Spolsky: Coordinator? OK. Alright, coach, team leader, contessa. I always say any title you think is appropriate you can have.
Cartaino: I guess my role today is to laugh at Joel's jokes, so...
Spolsky: ...Jeff doesn't have to.
Atwood: Joel's jokes are too subtle sometimes, I don't actually... I don't actually get them until like afterwards when I'm listening to the podcast.
Spolsky: Like "Contessa - BWHA HA HA!"
Cartaino: You just have to splice them back in as an effect.
Atwood: That's right, we need a laugh track.
Spolsky: I will sometimes do that in the post-edit, post-production, I'll take Jeff's and I'll move them to other places in the podcast.
Cartaino: Ah, so now we nailed it.
Atwood: No, I don't think Joel does that. So let me talk briefly about why Robert is a member of the team. I think this fits well with we're going to get heavily into StackExchange 2.0 today and what that's about. Hopefully a lot of Q&A about that ideally. But certainly one thing we've learned with StackOverflow and SuperUser and ServerFault is that the software part is - I don't want to say it's trivial, because it's not - software is what we do - but that ends up being the easier part of the challenge. The real challenge in building community is the sociological and urban planning aspects of like how do you have a community that doesn't blow up, people don't kill each other.
Spolsky: Or even worse - that nobody goes to because they can't, because they don't care enough.
Atwood: Or it's a ghost town and nobody cares and there's litter all over the streets. I mean these are urban planning problems and I think that's what... If we've gotten good at anything, it's not like compiling code, it's hopefully that we've figured out, at least for some kinds of community, not for every community in the world, but for some kind of communities, we've come up with a new tool, a screw-driver or pipe-wrench or whatever fits, that seems to work really well. The software does part of it, but the growing community part of it, that's what StackExchange 2.0 is all about, it's like how do you put rules and guidelines around, how do I build a community of people interested in topic X? And that is what we're looking at and that is why Robert is going to be so pivotal because he's doing sociology basically. He's helping us work out what's working and what's not working.
Spolsky: More like social work than sociology.
Spolsky: Your job, Robert is to find the homeless guy who's also crazy and probably has cancer and get him help for all his problems.
Spolsky: Even though he doesn't want to be helped and he's blabbing on about something about the Kennedys.
Atwood: Well, when we were in New York, Joel, there was some guy that came into a store, followed us, that was yelling at us because he felt like we were taking pictures of him.
Spolsky: So, question: Were you taking pictures of him?
Atwood: No, we weren't
Spolsky: Just checking
Atwood: The guy had some issues obviously.
Atwood: That does actually happen, you joke about it, but that actually happened to us in New York City, so that was kinda weird. I also want to emphasise that Robert is, indeed, technical. I don't think we'll ever hire anybody for the company that isn't fairly deeply technical. Robert is a programmer like us, but, I think, Robert, you have a pretty deep background in some of this stuff, right? Like you've been doing, since the BBS days.
Cartaino: Yeah, I've been, I wrote my first BBS, I didn't write the first one, but I did write the first successful one. So I have a pretty low-level understanding of, you know, what it takes to get one of these systems [?] and databases working and that sort of thing. I hope I can bring some of that experience or at least pass it on to customers when they ask for crazy features that I just know aren't doable always, so
Spolsky: Speaking of crazy features...
Cartaino: Yeah, you know, people ask for things, but you know, sometimes it's just not practical.
Spolsky: Or not possible.
Cartaino: Yeah, but I'm amazed, I'm amazed at some of the stuff you guys get in there. I mean, there's some database queries that you know.
Spolsky: I'm actually, I'm amazed that it's fast, because I think you can just tell that there are a lot of database queries on every page.
Cartaino: Yeah, I've seen feature requests come through and been like "Oh my God, there's no way they can do that.
[Talking over one another]
Spolsky: I started programming for the web was the Netscape web server and, err, C, might have been C++ and wrote with some libraries from C++ where you could do advanced things like use strings. And we were talking to a Sybase database and I remember saying "You know what, my goal is going to be one query per page. No more than that. You cannot get good performance if you get more than one query per page and so I will structure my databases in such a way that you can usually construct an entire page with the one query." Sigh, that never...
Atwood: Well, there's actually some new theory on that. That the network and the databases and the infrastructure is so fast now that they do this coalescing thing where you send lots of small queries though that because they're small, I mean this is like queuing theory. If you have really small units of work, this is like, RISC versus CISC again, so you have really small units of work, that can move through the pipeline quite rapidly. It's when you have... [Joel attempts to interrupt] but... but... my point is that if you take it to extremes it's probably bad. So if you say "Well we're only going to do one query per page", but your query is like this mongo ten hundred line abomination that, you know, it has [?] there's a point of diminishing returns. Or you could, "I'm gonna do 100 queries of, you know, SELECT field FROM WHERE id=x", which is a very trivial query. Oddly enough, I agree with you, I have always tried to defer to the side of try to do fewer queries, but what we found with some of the LINQ stuff, it's not that it does too many queries, it does very simplistic, small queries and that turns out to be OK-ish on StackOverflow.
Spolsky: Yeah, it's just, you know, I just think technology's changed since 1995. I mean the other thing that I remember is that we couldn't rely on connection pooling. I don't even think we had connection pooling the first time, so every query was a database login and then do the query and then log out.
Atwood: Wow, that sounds really painful.
Spolsky: We lost Robert. Oh Robert, where did you go? How do you get him back?
Atwood: I'll let him back in, hold on.
Spolsky: Oh you're the organiser.
Atwood: Yes, I will bring him back in. I am calling him now. That's OK with all our blah blah blah...
Spolsky: Yeah, he probably just lost interest, probably fell asleep and knocked the phone off the hook. Umm, err, um, ummm.
Atwood: I'm trying to add him, so
Spolsky: And that is why the world is banana shaped
Atwood: Well did you, while I'm doing this, did you want to start with any questions on Meta?
Spolsky: Yes, so basically, the reason we're doing this special podcast even though we're in hiatus and what-not is because we sort of made a big announcement which some of the podcast listeners may have just completely missed if you only listen to the podcast. Which is a couple of pretty major changes in direction under StackExchange or, to use a Dave Winer term, a "corner-turn". Basically what we're going to do in the future is about 45 degrees different than what we did in the past with StackExchange. Now to bring everybody totally up to speed, StackExchange is the white-label version of StackOverflow that allows theoretically anybody to come along and give us a credit card and we'll sell you the software that we use to make StackOverflow, usually on a hosted basis where we host it for you and you can make any kind of community you want in exchange for a small monthly fee. And what we found is that that worked surprisingly well in a couple - well not surprisingly - that worked well in a couple of dozen instances where it created dynamic and awesome sites, but it was just not really working you couldn't really say. You know, I don't think we're happy with the growth and penetration that we were getting with those few communities that were getting created on the StackExchange model. And so, basically, the corner turn was this: first of all, we're going to stop charging for it, so, you know, originally the price started at $129/month and we just sort of decided that that kind of makes sense when you compare it to other software-as-a-service-type things. I dunno, it's kind of expensive, but it's sort of what we estimated it would cost. And we're going to stopcharging for it, and that makes it much easier to create communities. And then, simultaneously, instead of just sort of letting individual entrepreneurs create communities, we're going to let the communities create the communities. So we're trying to set up a process that almost feels like a democratic process in some ways that people vote for communities that they want to see created and then we'll create them. The difference is that we'll own them, so a bunch of the people that were involved in StackOverflow 1.0 basically, had an entrepreneurial bent to create little businesses, and we'll pretty much allow them to continue as long as they have, you know, some level of traffic and as long as, you know, we can continue to do so.
Atwood: Well, can I interrupt?
Atwood: So, let's clarify. One question that came up, you know, is the concept of ownership and whether we're going to do this revenue-sharing thing.
Atwood: The more I thought about this the more I realized that actually we are walking that line between being a for-profit company and a non-profit company. So let me draw some lines around some boundaries. So, Wikipedia is a non-profit.
Atwood: So they've set that boundary. Craigslist is a for-profit company that offers a public service, to which I would point out there's no visibility as to how that is governed whatsoever [laughs]. It's completely...
Spolsky: Right, they very secretly get in a room together, the 12 of them, and do whatever the hell they want.
Atwood: Right well that's, I mean I'm sure they don't, but the point is that there's no visibility, so who knows? Who knows how it's run? And of course there's obviously Google which a lot of people think of as a public good even though they are very much a commercial business. So those would be some of the boundaries around the topic that we are discussing but I think we want--at least I the more I thought about this--we want to behave like we have the goals of a non-profit company. I mean, money is necessary to run the business, money is required to keep the servers powered, money is necessary to pay awesome programmers to work on this and pay awesome people like Robert to help us manage it and, you know, the sales stuff that we drive the engine forward with and we are going to continue to improve the platform and roll those improvements out to everybody. Like right now we are working on an API which means you'll be able to develop an API against any site that's on the engine. And I think another big part of that is that I want to continue this yearly donation thing where we give back to the community for Stack Overflow. I think we want to continue to do that, but I don't think we ever want to directly pay people. I think money is such a weird motivator--like I think that the Stack Exchange... the idea that you pay people $129 a month and you get this service was the wrong motivator for actually link community...
Spolsky: Exactly. It was getting a much smaller group of people, you know. We were getting the intersection of people that had a great idea and people who wanted to much an entrepeneurial kind of, you know, start a business around that idea, or had a business around that idea. What we really wanted to get everyone who has a great idea and can get an audience for that idea. It [the change] was making it much more liberal and as such, we are taking exactly what you described as Craigslist--an approach of electronic government, really, around this new public resource. And the public resource, just so I am clear, all the content around the new Stack Exchange, just like Stack Overflow, is literally owned by the community. So it is under that Creative Commons license and we make data dumps available of it so that the people can contribute all that content are the community, and they have to own it. Now, we are going to be displaying it on a webpage and letting people to interact with it and in the very long term we believe we will be able to find organic, useful ways that we can benefit people by making money.
Atwood: Well, I want to point out that there are already benefits because this has come up a couple of times and I think it is weird, and maybe Stack Exchange, it was sending people in the direction, sending them the wrong message--but the benefits you get from participating in Stack Overflow are: you're the one showing off your knowledge. So, we are not saying "go to Stack Overflow because we provide the answers;" we are saying "go to Stack Overflow because these awesome system programmers hang out there who know just everything, you know, they're geniuses, right? I mean, we are showing off your talent and your ability; it is never really been about us. I mean, it's not like, you know, Joel Spolsky Stack Overflow or Jeff Atwood Stack Overflow. I love telling people this story about the guy that met us at the airport who recognized our Stack Overflow logo but had no idea who Joel was or who I was. I was like "That's perfect, that exactly how it is supposed to be because the community is awesome and not, not the web site.
Spolsky: You think we should put our names on the front page somewhere, right?
Spolsky: Just kidding. [laughs]
Atwood: If you go to the about page it gives some information about like who created this and where did it come from. But we also have a community moderators too, right? So its not just us.
Spolsky: Right. It is more about the community moderators, and especially with these new Stack Exchanges that are created by the community, those moderators and the administrators of the community and the people who get communities off the ground have to be from the communities because, you know, I can't do anything about the Siberian Huskie community--I don't know anything about Siberian Huskies--mine has diarrhea and won't go into its crate, you know, so I am the last person who you want to be asking. [laughs]
Atwood: I do not want to be going to your house today.
[more 17:33 onward]
Atwood: edit me!
Cartaino: edit me!
Spolsky: edit me!