I <3 Steve McConnell*
Coding Horror
programming and human factors
by Jeff Atwood

March 21, 2009

See You at EclipseCon!

I have the very great honor of speaking at this year's EclipseCon with one of my heroes, Clay Shirky.

eclipsecon logo

The theme of this year's EclipseCon is collaboration -- so all the talks are presented by two speakers. Our talk, The Social Mind: Designing Like Groups Matter, will alternate between the theory (Clay) and practice (Jeff) of online community. Hopefully in a coherent way.

This is an easy talk for me to deliver, because I quite literally used Clay Shirky's book, Here Comes Everybody: The Power of Organizing Without Organizations, as a blueprint for building Stack Overflow.

Here Comes Everybody: The Power of Organizing Without Organizations

I wasn't kidding when I said It's Clay Shirky's Internet, We Just Live In It.

I can't emphasize enough how deeply I respect Clay. I've read everything he's written to a degree that you might even say I studied it. Clay continues to be one of the most perceptive and insightful technical writers in the world on the topic of internet culture and community. His latest missive on the demise of newspapers is not to be missed. It's thrilling to have this opportunity to speak side by side with such a vital, important figure in internet history.

It is also extremely gratifying to me that I am giving this talk to a group of non Windows-centric developers. Despite my personal background, we always intended Stack Overflow to be a tribute to the greater craft of programming, a place where you could rub shoulders with fellow programmers from all sorts of different backgrounds and professional interests -- a bit like the old, classic computer programming magazines like Byte and Dr. Dobb's Journal.

old-byte-magazine.png old-dr-dobbs-magazine.png

It pains me to see developers who let themselves get locked into some particular toolchain ghetto, without at least peripheral awareness of what else is going on in the programming world around them.

Good programmers are interested in everything -- and that's exactly the kind of talk Clay and I intend to deliver.

Update: I'm not sure the event was recorded, but Alan Zeichick's summary of our talk is outstanding. I also put the slides up on SlideShare for viewing or download, though it's tough without audio.

Posted by Jeff Atwood    View blog reactions
« Five Dollar Programming Words
Who's Your Arch-Enemy? »
Comments

First post. :-) My honor.

Lee jong-sung on March 22, 2009 6:26 AM

Next post =) Dr. Dobb's has come a long way from that issue...

Rainier on March 22, 2009 6:51 AM

"It pains me to see developers who let themselves get locked into some particular toolchain ghetto, without at least peripheral awareness of what else is going on in the programming world around them."

Glad I'm not the only one who thinks that. I think that statement applies to a lot of things in computing - including browsers and OS.

AnonJr on March 22, 2009 7:01 AM

I just hope you know you yourself are stuck in a specific "ghetto", Jeff. .NET, Windows, IIS, and so on.

At least the Eclipse people have a cross-platform IDE and language(well... kind of). Mono and Moonlight are not valid answers to that point either, as they are still a long way off. I don't think I've ever seen you advocate a program, language, or IDE that was cross-platform Jeff... but always Microsoft-centric.

Way to be an example of how not to be in a ghetto, eh? ;)

Zeroth on March 22, 2009 7:24 AM

Zeroth, did you not read the 2nd half of Jeff's sentence? dude.

Allann on March 22, 2009 7:57 AM

He may claim it, but he hasn't shown it. IIRC, he said in a previous blog post, when they were discussing stackoverflow's infrastructure, the requirement was that it had to be on Windows. I could be wrong.

I'm just pointing out what seems to be a bit of hypocrisy on the part of Jeff. I didn't mind that he was windows-centric as long as he never made the claim to be telling other programmers(specifically FOSS) that their world is too limited and he knew the answers.

See my issue here? He talks a lot about Windows specific applications, servers, and infrastructure, and then claims to know what the right way to go is to Eclipse developers, and in the same sentence calls it a ghetto.

Thats hypocrisy.

Zeroth on March 22, 2009 8:10 AM

He means this:

"(...) despite my personal background, we always intended Stack Overflow to be a tribute to the greater craft of programming, a place where you could rub shoulders with fellow programmers from all sorts of different backgrounds and professional interests (...)"

Ricardo N. on March 22, 2009 9:05 AM

I'm not so sure it's that this Clay fellow is a genius, it's more that he's kept up with advancements. He can just verbalize the thoughts more eloquently.

Nearly anyone in their early 20s/late teens can tell you that the internet has become extremely social in the past several years, and that (especially with the widespread use of Bittorrent) it is reshaping media consumption in a way that cannot be stopped, that the main producers don't like (Ex, RIAA, MPAA).

Izkata on March 22, 2009 9:33 AM

Sigh... I loved DDJ. Shame they finally went under.

Bill on March 22, 2009 10:25 AM

Well, I read the book, and I could barely put it down. An excellent read for anyone whose primary professional purpose is designing modern, relevant web sites for organizations.

One thing I will say: Web 2.0 is not a UNIVERSAL solution. The web is good for a lot more than spontaneous, low cost group forming. If you read Shirky's book, you'll have an excellent idea of when to talk up a network community, and when to talk the client down off the ladder before they spend a ton of money on something that will never be used.

Both of these (Jeff and Clay) guys are smart, they have a lot of experience, and they rub shoulders with the giants in the industry. They can also write well. Regardless of the technical details, they're a springboard for ideas and further research. On occasion, their writing is the right tool for the right job. It's going to be a great talk. Hopefully the transcripts will be available to those of us who cannot attend!

Rick Cabral on March 22, 2009 10:26 AM

No, typically people who study a text have *critically* analyzed it. You just seem to unquestioningly praise it gospel. It pains you? Then why do you lock yourself in the Microsoft barrio?

Metaphor Monster on March 22, 2009 1:45 PM

No matter what you do, if you're making software you're making choices, and platform is just a choice. I'd love it if all software worked on all platforms, but I grew up and moved on. I can't be good at everything, so I try to get better at what I'm good at to provide value for my clients.

How lame is it that years and years and years on the same people are still bleating about the same issues.

And it's less about locking in or being myopic about change, but change for change's sake isn't right either. You get paid to develop software, and there is a tendency to continually throw the baby out with the bathwater. We've obviously gotten it wrong - programming is still such an f'ing hassle and is only getting marginally better as time goes on.

changeme on March 22, 2009 2:10 PM

The windows platform is a really good platform to develop on. I can't fault a person for using it to develop customer facing applications - especially when it's their realm of 'expertise'. (I use the term somewhat loosely but the intent should be clear).

Being aware and able to use other platforms and languages to develop is the first distinguishing mark. Actually using other languages regularly would probably be the next.

I work with people that are stuck in .NET world. One made the comment he'd never use Python because it was slow - or any dynamic language. And he's a smart guy with some very good technical skills.

I've read posts by Jeff that explore when dynamic languages ARE the answer. This is at least one step above my work mate that refutes dynamic languages based on their speed.

So yes, I believe Jeff IS in a position to make the comment he did. Those that are a little more language-able shouldn't be so critical.

`Josh on March 22, 2009 2:11 PM

Zeroth, you don't get it. Your the kind of person Jeff was describing. FOSS is just as much a ghetto if you refuse to look at Windows, Mac, Solaris or other commercial products for political reasons.

Craig on March 22, 2009 3:00 PM

This is one talk that can be skipped at EclipseCon.

Phill on March 22, 2009 3:07 PM

It's a comfort to learn that good programmers have diverse interests. I wouldn't describe myself as a good programmer. Yet. But I'm interested in so much - art, philosophy, culture, dance, video, acoustics, fluid dynamics, chaos theory, programming, motion graphics, compositing, databases - that it means getting anything done can be pretty difficult! This I've seen traditionally as a problem - how can I call myself a programmer if I've not been locked away in a room doing it since I was 5? It's nice to know that diversity is an attribute valued by the profession.

John Gallagher on March 22, 2009 3:10 PM

Thanks for the reading recommendation. : )

tam on March 22, 2009 3:48 PM

"It pains me to see developers who let themselves get locked into some particular toolchain ghetto, without at least peripheral awareness of what else is going on in the programming world around them."

And it pains me that some people out there still think you can be a generalist in an ever increasingly specialised profession. I believe that you should be aware of factors that affect the current set of technologies you use unless you are a decision maker.

Philip on March 22, 2009 4:10 PM

Good Luck with that Jeff.

Demian Garcia on March 22, 2009 4:53 PM

> And it pains me that some people out there still think you can be a generalist in an ever increasingly specialised profession. I believe that you should be aware of factors that affect the current set of technologies you use unless you are a decision maker.


You can specialize in a technology without having to close yourself from other tools. That's not being a generalist.

A generalist is a programmer who knows a lot about basics and can learn new languages quickly. This kind of people can work really well in small proyects or in start-ups (which can't hire one programer for every technology they use), but they are not as good to work in big critical systems or, for example, Videogame Engines. Most of his time is used reading documentation and technical manuals.

Demian Garcia on March 22, 2009 5:05 PM

Ah.. great!

I hope you may post a transcript of the talk here, or maybe as an external link.

Mohit Nanda on March 22, 2009 5:12 PM

here comes everybody... on it's way to my kindle now (with hopefully a little kickback for jeff :)

Jim Robert on March 22, 2009 6:34 PM

To the few people that think I'm purely FOSS... I'm not. I'm pragmatic. I use what is best for the situation. Here, we have a guy that self-admits he uses pretty much Microsoft as his solution, going to a talk, to try to get those FOSS developers to see outside their "ghetto". To me that speaks of someone espousing software for political reasons. ;)

I really wouldn't have cared if he had just said, "Hey, we're going to talk about Web 2.0, how it can be used, how it can't be used, and all sorts of stuff like that." instead of acting like he's the savior bringing The Light to the poor huddled masses.

Zeroth on March 22, 2009 6:37 PM

Jeff,

congrats. It is ironic that both Byte and DDJ magazines were at the center of important programmer communities from day one. Now they are practically non-existent. DDJ sort of exists but it is a shadow of its former self. Byte evaporated slowly, first becoming a digital edition and now it is absolutely irrelevant. And there is still no good (or better) substitute.

BugFree on March 22, 2009 7:14 PM

"Good programmers are interested in everything"

Over-generalize much? There are a vast number of things I don't give a shit about. Somehow that effects my programming ability?

Regis on March 22, 2009 8:09 PM

"It pains me to see developers who let themselves get locked into some particular toolchain ghetto, without at least peripheral awareness of what else is going on in the programming world around them."

You mean such as yourself? I've never seen you say you're using anything other than your beloved Microsoft products for any of your work.

RLD on March 22, 2009 9:32 PM

@Demian Garcia - Agreed - but I was talking about "Good programmers". Sure you can be a good generalist, but you will never write the optimised code that comes from understanding in depths the specifics of a particular paradigm, say... SQL Server. For instance, a good generalist might write fantastic LINQ code for SQL Server that works very well. BUT the best LINQ code is still going to run like a dog comparied to not using LINQ, accessing stored procedures directly (there been a fair bit published on this now, so I won't go into this further - if you believe I am wrong, do a search on google or better still do your own tests).

My point is that you have to get fully into the SQL server world to learn all the ins and outs - what gets performance happening and the different constraints with different data sizes and types. And you can't keep up on all of that and also keep up to the same degree on My SQL, Oracle, DB2, etc. You HAVE to become specialised and "move into a getto" if you are to get the type of solid performance needed in an enterprise system.

I have TOO much information to learn about MS Dynamics AX, SQL Server and C# (let alone all the specifics of each of these) to give a rats a$$ what's happening in the world of Java. There are only so many hours in the day and if I am going to become good at my job I have to put my energies into the task at hand. The only "peripheral awareness" I get is from the odd blog, and as cited here many times, that is very MS centric anyway.

Philip on March 22, 2009 10:40 PM

There was only one complaint I have about you. (IMO) You life as if there is nothing outside the Microsoft World (except occasional talks, like the recent one about Google Chrome).

I hope this "I have with you" becomes "I HAD with you" soon, Jeff@Eclise con does sound a start for that...

Nivas on March 22, 2009 11:02 PM

@Zeroth:
"Here, we have a guy (...) try to get those FOSS developers to see outside their 'ghetto'"

Did I read another blog post than you? Jeff never said it were the FOSS guys who are stuck in a ghetto. .NET can be a ghetto all of it's own...

"(...) like he's the savior bringing The Light to the poor huddled masses."

Yes, he sometimes has that tendency, and I don't like it very much either. But even though his professional background is 99% MS, his preachings have always been platform agnostic.

Marcus on March 23, 2009 2:49 AM

Isn't Eclipse slow?.

chetan on March 23, 2009 5:08 AM

For all you people going to EclipseCon...

Please tell IBM not to kill Netbeans if they buy Sun :)


htnmmo on March 23, 2009 8:05 AM

Eclipse = bloatware

Don't use it! That is, unless, of course, you like running a slow machine. Actually, I'm not a big fan of Java-based applications in general. They just slow down the machine. Just give me a good ol'fashioned comparable C/C++ compiled binary app any day. It'll run circles around its Java "equivalent."

Jim on March 23, 2009 8:53 AM

Thanks for the link to Shirky's essay on newspapers. It is very insightful and answers some questions that have been lurking in the back of my mind. It has been a while since I've read anything with that much scope.

I hope this conference moves Eclipse forward: I use it everyday.

Jeff Keehr on March 23, 2009 9:36 AM

Jeff just tried one of the oldest, and lamest, tricks in the book: Heaping endless praise on someone that you're associated with with the intention of actually praising yourself. "This guy is the greatest guy in the whole wide world. He's so super brilliant. Oh, and wouldn't you know it I've been selected to speak alongside him...so...you know...draw your own conclusion". And Shirky is yet another grossly overrated internet figure whose writings don't hold up to critical analysis, but they're just deep enough for lazy readers to link and say "This is just SOOOOOOO brilliant. And I'm brilliant for linking to it and saying it's brilliant."

Dennis Forbes on March 24, 2009 6:44 AM

Enjoyed your talk at EclipseCon, nice job.

Brett Hackleman on March 24, 2009 10:11 AM

It wasn't my method that sucked. I was mocking Jeff. Jeff implied that since many results were returned for "EE sucks" that it must mean it sucks.

search on March 24, 2009 10:51 AM

It's just good to know that there are people and organisations out there who won't take the unethical tactic of calling their opposition evil (without examples nor explanation) and they calling their own company and products saviours.

E-cards on March 24, 2009 10:57 AM

Oh so much hate going on in the posts....

Doesn't anyone weigh the articles on their content?
Sure there may be bias from the author... expect it!

Just because Jeff swims in the MS-centric world
(think water, not sewage please), that doesn't make his
message less valid to me.


Eric on March 24, 2009 11:48 AM

Enjoyed the talk at EclipseCon, will you be posting the slides anywhere?

Will on March 27, 2009 3:16 PM

Thanks for your talk at EclipseCon! Good stuff!

Chris Aniszczyk on March 30, 2009 9:09 AM

I had my doubts about the format of the keynote talks at EclipseCon but your talk was great. Good content and good presentation.

Thanks.

Saeid on March 30, 2009 11:34 AM

Slides are up -- I recommend downloading the actual presentation file, as it contains some of the explanatory text.

http://www.slideshare.net/codinghorror/eclipsecon-2009-keynote-the-social-mind-designing-like-groups-matter

No audio, unfortunately. :( The gist of it is captured by Alan, here

http://ztrek.blogspot.com/2009/03/secrets-of-social-site-success.html

Jeff Atwood on March 30, 2009 4:54 PM

Thanks, Jeff! I really enjoyed your talk.

Cheers, -Alan Z, SD Times

Alan on April 2, 2009 5:46 PM
Content (c) 2009 Jeff Atwood. Logo image used with permission of the author. (c) 1993 Steven C. McConnell. All Rights Reserved.