I am Jeff Atwood (@codinghorror), co-founder of Stack Overflow and Discourse. Ask me anything! 4/8 @ Noon PST


Hey Jeff, will Windows ever die?


Hi Jeff,
how do you decide what is your priority?


Please share some thoughts and tips on starting really big projects!
Thanks :slight_smile:

1 Like

One argument to convince a community to use discourse vs slack

1 Like

Hey Jeff! Thanks for taking the time today, and thanks for building things that changed the internet. Very excited to be working with Discourse for this community forum and for our commenting system on Hacker Noon 2.0.

My question: when you think about the future of the internet, how should software design evolve so that people can gain more long-term benefit and relevant amplification of their words online?


I saw the movie First Man recently and someone on Twitter recommended the book Rocket Men – about the Apollo 11 and Apollo 8 missions to reach the moon, respectively. The amount of work and effort to reach that milestone was immense, and so inspiring. It makes me wonder what today’s “moonshot” is… or should be. :new_moon:

As far as recent books goes, I found Sapiens to be very interesting reading.

I am also required by law to recommend these books for programmers :wink:


My main advice is that no software plan survives contact with users :wink:

With Discourse some things we thought would work well, did not, and some things we thought were unimportant (presence and other chat-like features) turned out to be far more important than we realized. We had no way of knowing that until the software got in the hands of active users.

Thus the goal should be to get an early working version of your software in the hands of users, and have a tight and fast feedback loop to iterate on:

  1. deploy software
  2. gather feedback
  3. improve software based on that feedback
  4. repeat

Don’t optimize for getting everything right, that’s impossible, optimize for speed of improvement.


Hi Jeff, thanks for creating what saved many coders lives aha! My question is: did you do a big marketing push to grow the community? If yes, what worked? thanks :slight_smile:


That is unfortunate – sorry to hear that :frowning:

As an industry we didn’t think enough about user safety and designing for evil. Part of it is that a lot of us are men, and people don’t bother us in the way that women and underrepresented groups tend to get bothered online – so we didn’t consider the many ways our software could be abused to make other people’s lives miserable.

But the good news is that I believe software can be designed to encourage people to be their better selves online.


So true, how much do you think marketing could contribute and help to overcome this first contact?

Asking cuz we used Discourse as an example in Seth Godin’s seminar and everybody is so much fan of slack.

1 Like

If you have a lot of runway and funding honestly it’s probably more flexible and convenient to go with cloud hosting these days. If you want to be more frugal and optimize for monthly income, then colocation is about 5× to 10× less expensive once you get the servers deployed and ready. So I guess:

  • how tight is your monthly budget
  • do you have funds for an initial purchase of servers
  • are you willing to spend the time to build and rack them

It is a set of tradeoffs.

Oh also! Always use Amazon S3 for highly redundant backups, don’t bother trying to do super reliable on-site colocated storage, it’s extremely expensive and complicated to get that stuff right.


Generally… poor.

Now that we’re profitable at Discourse, every year we do try to give back to the open source ecosystem that Discourse is a part of and benefits from. This is a manual process of us identifying what dependencies we have, how much we rely on them, and then tracking down a way to send them the money.

A centralized service that offers one stop shopping here, a directory of open source projects with an easy one-click way to send a bunch of them money would be awesome though – and maybe the first significant step in that direction?

How can we reduce friction, and make it as easy as possible to hand money to {x} different open source projects at once?


Companies that use automated systems often shrug off responsibility for the behavior and potential user consequences of those systems.

It seems that a lot of developers believe that if they were not explicitly intending for particular aspects of the system to discriminate or mistreat then they are not responsible for the behavior.

How do you think we can best bring forward issues of complex potentially discriminatory system behavior especially among companies that make use of closed source systems with minimal oversight?

1 Like

Jeff, thanks so much for your expert perspective on this! James

1 Like

Good question… I feel like chat was one of the last frontiers where the good replacements took far too long to appear.

If you consider that Discord’s main innovation was moving something like TeamSpeak, which had a terrible UI and was very difficult to set up, into the ease of a one-click browser URL link… my intuition is that with WebAssembly people start building even more ambitious apps with the browser.


This resonates with me deeply as a woman in tech. Thank you for mentioning it.


A lot less people blog regularly, and there’s a zillion alternatives to blogging, including pervasive social media. If you just want “a web presence” then the zero friction way is to create a Twitter or Facebook / Instagram page. It pains me to say this but the era of the blog is probably over.

That said, there’s still a lot to be personally gained by putting your research journal on the web (as a blog or anything else you prefer), like I did back in 2004, and seeing what happens. You can link to it, you have a record of what you were working on, and interested people can find it over time. It still works!


I do not. I’m not sure “artificial intelligence” is a particularly useful concept at this time. “machine learning” is at least a little more accurate in describing where we are :wink:


The main challenge is that you’re asking people to create an account and sign in to the community site before posting. I view this as a helpful barrier that prevents low-value drive-by commenting:



Has IBM died yet?

1 Like