Jeff Atwood's Blog
January 6, 2025
Stay Gold, America
We are at an unprecedented point in American history, and I'm concerned we may lose sight of the American Dream:
The costs of housing, healthcare, and education have soared far beyond the pace of inflation and wage growth.We are a democracy, but 144 million Americans – 42% of the adults who live here – do not vote and have no say in what happens.Wealth concentration has reached historic levels. The top 1% of households control 32% of all wealth, while the bottom 50% only have 2.6%.We must act now to keep the dream alive. Our family made eight $1 million donations to nonprofit groups working to support those most currently in need:
Team Rubicon – Mobilizing veterans to continue their service, leveraging their skills and experience to help Americans prepare, respond, and recover from natural disasters.Children's Hunger Fund – Provides resources to local churches in the United States and around the world to meet the needs of impoverished community members.PEN America – Defends writers against censorship and abuse, supports writers in need of emergency assistance, and amplifies the writing of incarcerated prisoners. (One of my personal favorites; I've seen the power of writing transform our world many times.)The Trevor Project – Working to change hearts, minds, and laws to support the lives of young adults seeking acceptance as fellow Americans.NAACP Legal Defense and Educational Fund – Legal organization with a historic record of advancing racial justice and reducing inequality.First Generation Investors – Introduces high school students in low-income areas to the fundamentals of investing, providing them real money to invest, encouraging long-term wealth accumulation and financial literacy among underserved youth.Global Refuge – Supporting migrants and refugees from around the globe, in partnership with community-based legal and social service providers nationwide, helping rebuild lives in America.Planned Parenthood – Provides essential healthcare services and resources that help individuals and families lead healthier lives.I encourage every American to contribute soon, however you can, to organizations you feel are effectively helping those most currently in need here in America.
We must also work toward deeper changes that will take decades to achieve. Over the next five years, my family pledges half our wealth towards long term efforts ensuring that all Americans continue to have access to the American Dream.

I never thought my family would be able to do this. My parents are of hardscrabble rural West Virginia and rural North Carolina origins. They barely managed to claw their way to the bottom of the middle class by the time they ended up in Virginia. Unfortunately, due to the demons passed on to them by their parents, my father was an alcoholic and my mother participated in the drinking. She ended up divorcing my father when I was 16 years old. It was only after the divorce that my parents were able to heal themselves, heal their only child, and stop the drinking, which was so destructive to our family. If the divorce hadn't forced the issue, alcohol would have inevitably destroyed us all.
My parents may not have done everything right, but they both unconditionally loved me. They taught me how to fully, deeply receive love, and the profound joy of reflecting that love upon everyone around you.
I went on to attend public school in Chesterfield County, Virginia. In 1992 I graduated from the University of Virginia, founded by Thomas Jefferson.
During college, I worked at Safeway as a part-time cashier, earning the federal minimum wage, scraping together whatever money I could through government Pell grants, scholarships, and other part-time work to pay my college tuition. Even with lower in-state tuition, it was rocky. Sometimes I could barely manage tuition payments. And that was in 1992, when tuition was only $3,000 per year. It is now $23,000 per year. College tuition at a state school increased by 8 times over the last 30 years. These huge cost increases for healthcare, education, and housing are not compatible with the American Dream.

Programmers all over the world helped make an American Dream happen in 2008 when we built Stack Overflow, a Q&A website for programmers creating a shared Creative Commons knowledge base for the world. We did it democratically, because that's the American way. We voted to rank questions and answers, and held elections for community moderators using ranked choice voting. We built a digital democracy – of the programmers, by the programmers, for the programmers. It worked.
With the guidance of my co-founder Joel Spolsky, I came to understand that the digital democracy of Stack Overflow was not enough. We must be brave enough to actively, openly share love with each other. That became the foundation for Discourse, a free, open source tool for constructive, empathetic community discussions that are also Creative Commons. We can disagree in those discussions because Discourse empowers communities to set boundaries the community agrees on, providing tools to democratically govern and strongly moderate by enforcing these boundaries. Digital democracy and empathy, for everyone.
In order for digital democracy to work, we need to see each other through our screens.

We often behave online in ways we never would in the real world because we cannot see the person on the other side of the screen. But as our world becomes more digital, we must extend our kindness through that screen.
I've always felt Stack Overflow and Discourse are projects for the public good that happen to be corporations. I probably couldn't have accomplished this in any other country, and I was rewarded handsomely for a combination of hard work and good luck. That's what the American Dream promises us.
We built it, and people came. I earned millions of dollars. I thought that was the final part of the American Dream. But it wasn't.
I recently attended a theater performance of The Outsiders at my son's public high school. All I really knew was the famous "stay gold" line from the 1983 movie adaptation. But as I sat there in the audience among my neighbors, watching the complete story acted out in front of me by these teenagers, I slowly realized what staying gold actually meant: sharing the American Dream.
In the printed program, the director wrote:
This play is a reminder that strength lies not just in overcoming hardships but in staying true to ourselves and lifting up those around us.
We hope you feel the raw emotions, sense the camaraderie, and connect with the enduring themes of resilience, empathy, and unity. Whether you've read this story recently, long ago, or not at all, I hope you are able to find inspiration in the strength and passion of youth. Thank you for being part of this journey with us.
Stay gold.
I believe deeply in sharing The American Dream. It is the foundation of our country, the second paragraph in our Declaration of Independence, written by the founder of the public university I attended:
We hold these truths to be self-evident, that all men are created equal, that they are endowed by their Creator with certain unalienable Rights, that among these are Life, Liberty and the pursuit of Happiness.
But the American Dream is not always available to every American. Its meaning can be distorted. Jimi Hendrix captured this distortion so eloquently in his rendition of our national anthem.
We are still trying to live up to those ideals today. In November 2024, enough of us voted for people who interpret the dream in a way that I don't understand.

34% of adults in America did not exercise their right to vote. Why? Is it voter suppression, gerrymandering causing indifference, or people who felt their vote didn't matter? The 7.6% that are ineligible to vote are mostly adults living in America who have not managed to attain citizenship, or people convicted of a felony. Whatever the reasons, 42% of adults living in America had no say in the 2024 election. The vote failed to represent everyone.
I think many of the Americans who did vote are telling us they no longer believe our government is effectively keeping America fair for everyone. Our status as the world's leading democracy is in question. We should make it easier for more eligible Americans to vote, such as making election day a national holiday, universal mail in voting, and adopting ranked choice voting so all votes carry more weight. We should also strengthen institutions keeping democracy fair for everyone, such as state and local election boards, as well as the Federal Election Commission.
It was only after I attained the dream that I was able to fully see how many Americans have so very little. This much wealth starts to unintentionally distance my family from other Americans. I no longer bother to look at how much items cost, because I don't have to. We don't have to think about all these things that are challenging or unreachable for so many others. The more wealth you attain, the more unmistakably clear it becomes how unequal life is for so many of us.
Even with the wealth I have, I can't imagine what it would feel like to be a billionaire. It is, for lack of a better word, unamerican.
In 2012, the top 1% of Americans held 24% of our country's wealth. By 2021, the top 1% of Americans held 30%. So many have so little, while a tiny few have massive, wildly disproportionate wealth, which keeps growing. Now the global top 1% hold nearly twice as much wealth as the rest of the world combined.
I grew up poor in America, inspired by the promise of the American Dream that I could better myself and my family by building things that mattered:
Work is service, not gain. The object of work is life, not income. The reward of production is plenty, not private fortune. We should measure the prosperity of a nation not by the number of millionaires, but by the absence of poverty, the prevalence of health, the efficiency of the public schools, and the number of people who can and do read worthwhile books.
Our version of capitalism delivered so much wealth to my family for my hard work in co-founding two successful companies. My partner and I gladly paid our full taxes, and we always planned to give most of our remaining wealth to charities when we pass, following the Warren Buffet Philanthropic Pledge:
More than 99% of my wealth will go to philanthropy during my lifetime or at death.
I admire Buffett, but even having only a tiny fraction of his $325 billion fortune, to me this pledge was incomplete. When would this wealth be transferred?
Last year he amended the pledge, giving all his wealth at death to a charitable trust run by his children, aged 71, 69, and 66, who do not make for natural charitable bedfellows. I am only holding back enough wealth for my children so they can afford college educations and buy a home. I am compelled to, because being a parent is the toughest job I've ever had, and I am concerned about their future.
November 5th raised the stakes. It is now time to allocate half the wealth I was so fortunate to be dealt within the next five years, not just for my own family, but for all my fellow Americans.
Our government seems to be slower and slower at delivering change due to the increased polarization of our two party system. The last meaningful constitutional amendment we've managed to pass in the last 60 years was the 26th amendment in 1971, lowering the voting age to 18 and giving more people a voice in our democracy.
Political polarization is at historically high levels and rising. In a two party system, this level of polarization is counterproductive and even dangerous. Do we all still believe in the same American Dream?

I've always loved the ideals behind the American Dream, though we continually struggle to live up to them. They are worth fighting for, even if it means making "good trouble". We must come together and believe in our shared American Dream so deeply that we can improve our democracy... but which dream?
The American Dream contains the path of hate, and the path of love. Throughout our history, one hand is always fighting the other. Which path are we choosing?
Our family pledges half our wealth toward an American Dream founded on love.blockquote.kg-blockquote-alt { text-align: left; padding: 0; color: #000; }
Here are some starting points for longer term efforts:
We can support organizations making it easier for Americans to vote for a new Congress in two years and a new president in four years. My concern is damage to our democratic institutions may happen so quickly that our votes could matter even less within the coming years.We could fund nonprofits that have a proven track record of protecting democratic institutions.We could found a new organization loosely based on the original RAND Corporation, but modernized like Lever for Change. We can empower the best and brightest to determine a realistic, achievable path toward preserving the American Dream for everyone, working within the current system or outside it.All states are shades of purple, not fully red or blue. We have more in common on specific policies than we realize. It would be very difficult to draw borders if we split. I know what divorce feels like, and we don't want this. Let's come together through our shared American Dream. We can start with change in our local communities. Vote in your own city, county, and state elections. Support local independent journalism and media. Find a local organization doing work you admire, ask what they need, and help them meet those needs. Listen to the stories of fellow volunteers, listen to the stories of the people you’re serving – that is the heart of Democracy.We've already completed the eight $1 million donations listed above to help those most immediately in need. Within the next five years, half of our family wealth will support longer term efforts. There is no single solution, so let's work together. I will gladly advise and empower others working towards the same goal.

Please join us in Sharing the American Dream:
Support organizations you feel are effectively helping those most in need across America right now.Within the next five years, also contribute public dedications of time or funds towards longer term efforts to keep the American Dream fair and attainable for all our children.Stay gold, America.
(I could not have done this without the support of my partner Betsy Burton and the rest of my family. I'd also like to thank Steve McConnell, whose writing inspired me to start this blog in 2004. So many people from all walks of life generously shared their feedback to improve this post. We wrote it together. Thank you all.)December 2, 2024
The Great Filter Comes For Us All
With a 13 billion year head start on evolution, why haven't any other forms of life in the universe contacted us by now?

(Arrival is a fantastic movie. Watch it, but don't stop there - read the Story of Your Life novella it was based on for so much additional nuance.)
This is called the Fermi paradox:
The Fermi Paradox is a contradiction between high estimates of the probability of the existence of extraterrestrial civilizations, such as in the Drake equation, and lack of any evidence for such civilizations.
- There are billions of stars in the galaxy that are similar to the Sun including many billions of years older than Earth.
- With high probability, some of these stars will have Earth-like planets, and if the Earth is typical, some might develop intelligent life.
- Some of these civilizations might develop interstellar travel, a step the Earth is investigating now.
- Even at the slow pace of currently envisioned interstellar travel, the Milky Way galaxy could be completely traversed in about a million years.
According to this line of thinking, the Earth should have already been visited by extraterrestrial aliens. In an informal conversation, Fermi noted no convincing evidence of this, nor any signs of alien intelligence anywhere in the observable universe, leading him to ask, “Where is everybody?”
To me, this is a compelling argument, in the same way that the lack of evidence of any time travellers is:
Many have argued that the absence of time travelers from the future demonstrates that such technology will never be developed, suggesting that it is impossible. This is analogous to the Fermi paradox related to the absence of evidence of extraterrestrial life. As the absence of extraterrestrial visitors does not categorically prove they do not exist, so the absence of time travelers fails to prove time travel is physically impossible; it might be that time travel is physically possible but is never developed or is cautiously used. Carl Sagan once suggested the possibility that time travelers could be here but are disguising their existence or are not recognized as time travelers.
It seems, to me at least, clear evidence that time travel is not possible, given the enormous amount of time behind us. Something, somewhere, would certainly have invented it by now... right?
So if not, what happened? The Great Filter maybe?
The Great Filter theory says that at some point from pre-life to Type III intelligence, there’s a wall that all or nearly all attempts at life hit. There’s some stage in that long evolutionary process that is extremely unlikely or impossible for life to get beyond. That stage is The Great Filter.
I liked Wait But Why’s take on this a lot, which covers three main filter possibilities:
Life is extraordinarily rare, almost impossible


Those are three Great Filter possibilities, but the question remains: why are we so alone in the observable universe? I grant you that what we can observe is appallingly tiny given the unimaginable scale of the universe, so “what we can observe” may not be enough by many orders of magnitude.
I encourage you to read the entire article, it's full of great ideas explained well, including many other Great Filter possibilites. Mostly I wanted to share my personal theory of why we haven't encountered alien life by now. Like computers themselves, things don't get larger. They get smaller. And faster. And so does intelligent life.
Why build planet-size anything when the real action is in the small things? Small spaces, small units of time, everything gets smaller.
Large is inefficient and unnecessary. Look at the history of computers: from giant to tiny and tinier. From slow to fast and faster. Personally, I have a feeling really advanced life eventually does away with all physical stuff that slows you down as soon as they can, and enters the infinite spaces between:
This is, of course, a variant on the Fermi paradox: We don’t see clues to widespread, large-scale engineering, and consequently we must conclude that we’re alone. But the possibly flawed assumption here is when we say that highly visible construction projects are an inevitable outcome of intelligence. It could be that it’s the engineering of the small, rather than the large, that is inevitable. This follows from the laws of inertia (smaller machines are faster, and require less energy to function) as well as the speed of light (small computers have faster internal communication). It may be – and this is, of course, speculation – that advanced societies are building small technology and have little incentive or need to rearrange the stars in their neighborhoods, for instance. They may prefer to build nanobots instead.
— Seth Shostak
Seth delivers an excellent TED talk on this topic as well:
If we can barely see far in the universe as is, there's no way we could possibly see into the infinite space and time between.
That is of course just my opinion, but we'll see.. eventually.
November 30, 2023
I Fight For The Users
If you haven't been able to keep up with my blistering pace of one blog post per year, I don't blame you. There's a lot going on right now. It's a busy time. But let's pause and take a moment to celebrate that Elon Musk destroyed Twitter. I can't possibly say it better than Paul Ford so I'll just refer you there:
Every five or six minutes, someone in the social sciences publishes a PDF with a title like “Humans 95 Percent Happier in Small Towns, Waving at Neighbors and Eating Sandwiches.” When we gather in groups of more than, say, eight, it’s a disaster. Yet there is something fundamental in our nature that desperately wants to get everyone together in one big room, to “solve it.” Our smarter, richer betters (in Babel times, the king’s name was Nimrod) often preach the idea of a town square, a marketplace of ideas, a centralized hub of discourse and entertainment—and we listen. But when I go back and read Genesis, I hear God saying: “My children, I designed your brains to scale to 150 stable relationships. Anything beyond that is overclocking. You should all try Mastodon.”
It's been clear for quite some time that the early social media strategery of "jam a million people in a colosseum and let them fight it out with free speech" isn't panning out, but never has it been more clear than now, under the Elon Musk regime, that being beholden to the whims of a billionaire going through a midlife crisis isn't exactly healthy for society. Or you. Or me. Or anyone, really.
I tried to be fair; I gave the post-Elon Twitter era a week, thinking "how bad could it possibly be?" and good lord, it was so much worse than I could have possibly ever imagined. It's like Elon read the Dilbert pointy-haired-manager book on management and bonked his head on every rung of the ladder going down, generating an ever-growing laundry list of terrible things no manager should ever do. And he kept going!
It's undeniably sad. I really liked Twitter, warts and all, from 2007 onward. In fact, it was the only "social network" I liked at all. Even when it became clear in the Trump era that Twitter was unhealthy for human minds, I soldiered on, gleaning what I could. I'm not alone in that; Clay Shirky's moribund signoff at the end of 2022 reflected how I felt:

Indeed, Twitter was murdered at the whims of a billionaire high on Ketamine while it was (mostly) healthy, because of the "trans woke virus".
I urge you, all of you, to disavow Twitter and never look at it again. No one who cares about their mental health should be on Twitter at this point, or linking to Twitter and feeding it the attention it thrives on. We should entomb Twitter deep in concrete with this public warning on its capstone:

In the end, I begrudgingly realized, as did Paul Ford, that Elon unwittingly did us a favor by killing Twitter. He demonstrated the very real dangers of any platform run by a king, a dictator, a tyrant, a despot, an autocrat. You can have all your content rug-pulled out from under you at any time, or watch in horror as your favorite bar... slowly transforms into a nazi bar.

I've been saying for a long time that decentralization is the way to go. We can and should have sane centralized services, of course, but it's imperative that we also build decentralized services which empower users and give them control, rather than treating them like digital sharecroppers. That's what our Discourse project is all about. I propose collective ownership of the content and the communities we build online. Yeah, it's more work, it's not "free" (sorry not sorry), but I have some uncomfortable news for you: those so-called "free" services aren't really free.

Which, again, is not to say that "free" services don't have a place in the world, they do, but please don't harbor any illusions about what you are sacrificing in the name of "free". Grow up.
I take a rather Tron-like view of the world when it comes to this stuff; in the software industry, our goal should be to empower users (with strong moderation tools), not exploit them.

So I encourage you to explore alternatives to Twitter, ideally open source, federated alternatives. Is it messy? Hell yes it's messy. But so is democracy; it's worth the work, because it's the only survivable long term path forward. Anything worth doing is never easy.
I'm currently on Mastodon, an open source, federated Twitter alternative at https://infosec.exchange/@codinghorror – I urge you to join me on the Mastodon server of your choice, or quite literally any other platform besides Twitter. Really, whatever works for you. Pick what you like. Help make it better for everyone.
To inspire that leap of faith, I am currently auctioning off, with all funds to benefit the Trevor Project which offers assistance to LGBTQ youth, these 10 museum quality brass plaques of what I consider to be the best tweet of all time, hands down:

(Blissfully, @horse_ebooks is also on Mastodon. As they should be. As should you. Because everything happens so much.)
If you'd like to bid on the 10 brass plaques, follow these links to eBay, and please remember, it's for a great cause, and will piss Elon off, which makes it even sweeter:
https://www.ebay.com/itm/225895658859
https://www.ebay.com/itm/225895658395
https://www.ebay.com/itm/225895657953
https://www.ebay.com/itm/225895656856
https://www.ebay.com/itm/225895655560
https://www.ebay.com/itm/225895655243
https://www.ebay.com/itm/225895654889
https://www.ebay.com/itm/225895654391
https://www.ebay.com/itm/225895654002
https://www.ebay.com/itm/225895653408
I will sign the back of every plaque, because each one comes with my personal guarantee that it will easily outlive what's left of Twitter.
March 4, 2022
The 2030 Self-Driving Car Bet
It's my honor to announce that John Carmack and I have initiated a friendly bet of $10,000* to the 501(c)(3) charity of the winner’s choice:
By January 1st, 2030, completely autonomous self-driving cars meeting SAE J3016 level 5 will be commercially available for passenger use in major cities.
I am betting against, and John is betting for.
I have another long-term bet:
— John Carmack (@ID_AA_Carmack) March 4, 2022
I bet @codinghorror $10k that by January 1st, 2030, completely autonomous self-driving cars meeting SAE J3016 level 5 will be commercially available for passenger use in major cities. \
By “completely autonomous”, per the SAE level 5 definition, we mean the vehicle performs all driving tasks under all conditions – except in the case of natural disasters or emergencies. A human passenger enters the vehicle and selects a destination. Zero human attention or interaction is required during the journey.

By "major cities" we mean any of the top 10 most populous cities in the United States of America.
To be clear, I am betting against because I think everyone is underestimating how difficult fully autonomous driving really is. I am by no means against self driving vehicles in any way! I'd much rather spend my time in a vehicle reading, watching videos, or talking to my family and friends … anything, really, instead of driving. I also think fully autonomous vehicles are a fascinating, incredibly challenging computer science problem, and I want everyone reading this to take it as just that, a challenge. Prove me wrong! Make it happen by 2030, and I'll be popping champagne along with you and everyone else!
(My take on VR is far more pessimistic. VR just… isn't going to happen, in any "changing the world" form, in our lifetimes. This is a subject for a different blog post, but I think AR and projection will do much more for us, far sooner.)
I'd like to thank John for suggesting this friendly wager as a fun way to generate STEM publicity. He is, and always will be, one of my biggest heroes. Go read Masters of Doom if you haven't, already!
And while I have you, we're still looking for code contributions in our project to update the most famous programming book of the BASIC era. Proceeds from that project will also go to charity. 😎
* We may adjust the amount up or down to adjust for inflation as mutually agreed upon in 2030, so the money has the desired impact.
December 31, 2021
Updating The Single Most Influential Book of the BASIC Era
In a way, these two books are responsible for my entire professional career.

With early computers, you didn't boot up to a fancy schmancy desktop, or a screen full of apps you could easily poke and prod with your finger. No, those computers booted up to the command line.

From here, if you were lucky, you might have a cassette tape drive. If you knew the right commands, you could type them in to load programs from cassette tape. But that was an expensive add-on option with early personal computers. For many of us, if we wanted the computer to do anything, we had to type in entire programs from books like 101 Basic Computer Games, by hand... like so.

Yep, believe it or not, circa 1983, this was our idea of a good time. No, we didn't get out much. The book itself was a sort of greatest hits compilation of games collected from Ahl's seminal Creative Computing magazine in the 1970s:
As soon as Ahl made up his mind to leave DEC, he started laying the groundwork for Creative Computing. He announced intentions to publish the magazine at NCC in June 1974 and over the next few months contacted prospective authors, got mailing lists, arranged for typesetting and printing, and started organizing hundreds of other details.
In addition, he also moved his family to Morristown, NJ, and settled into his new job at AT&T. He had little spare capital, so he substituted for it with "sweat equity." He edited submitted articles and wrote others. He specified type, took photos, got books of "clip art," drew illustrations, and laid out boards. He wrote and laid out circulation flyers, pasted on labels, sorted and bundled mailings.
By October 1974, when it was time to specify the first print run, he had just 600 subscribers. But Ahl had no intention of running off just 600 issues. He took all the money he had received, divided it in half, and printed 8000 copies with it. These rolled off the presses October 31, 1974. Ahl recounts the feeling of euphoria on the drive to the printer replaced by dismay when he saw two skids of magazines and wondered how he would ever get them off the premises. Three trips later, his basement and garage were filled with 320 bundles of 25 magazines each. He delivered the 600 subscriber copies to the post office the next day, but it took nearly three weeks to paste labels by hand onto the other 7400 copies and send them, unsolicited, to libraries and school systems throughout the country.
I also loved Creative Computing, but it was a little before my time. And it took a while for inexpensive personal computers to trickle down to the mainstream, which brings us to roughly 1984 when the sequels started appearing.
There was a half-hearted attempt to modernize these early BASIC programs in 2010 with SmallBasic, but I didn't feel these ports did much to bring the code up to date, and overall had little relevance to modern code practices. You can compare the original 1973 BASIC Civil War with the 2010 SmallBasic port to see what I mean:
[image error]Certainly we can do a bit better than merely removing the line numbers? What about our old buddy the subroutine, merely the greatest invention in computer science? It's nowhere to be seen. 🤔
So it was with considerable enthusiasm that I contacted David H. Ahl, the author, and asked for permission to create a website that attempted to truly update all these ancient BASIC programs.
[image error]Thankfully, permission was granted. It's hard to understate how important this book was to an entire generation of programmers. At one point, there were more copies of this book in print than there were personal computers, period!
... in 1973, DEC published an anthology, 101 BASIC Computer Games. The book quickly went into a second printing, for a total of 10,000 copies sold. “That was far more books than there were computers around, so people were buying three, four, five of them for each computer.”
It went on to be the first computer book to sell a million copies. Quite a legacy. I think we owe it to the world to bring this book up to date using modern, memory safe languages that embody the original spirit of BASIC, and modern programming practices including subroutines.
So let's do this. Please join us on GitHub, where we're updating those original 101 BASIC games in memory safe, general purpose scripting languages:
JavaPythonC#VB.NETJavaScriptRubyDelphi / Object PascalPerlNow, bear in mind these are very primitive games from the 1970s. They aren't going to win any awards for gameplay, or programming sophistication. But they are precious artifacts of early computing that deserve to be preserved for future generations, including the wonderful original art by George Beker.

We need your help to do this right, and collaboratively together, as with all modern programming projects. Imagine we're all typing these programs in simultaneously together online, all over the world, instead of being isolated alone in our room in 1984, cursing at the inevitable typo we made somewhere when typing the code in by hand out of the book🤬.
Thanks Mr. Ahl. To encourage contributions, by the end of 2022, for every functioning program submitted in each of the 8 indicated languages, I'll donate $5 to Girls Who Code. Before beginning, please read the guidelines in the readme, and if you have questions, scan through this discussion topic. And most of all, remember, this stuff is supposed to be fun.
(I don't want to be "that one guy", so I'm also looking for project co-owners who can help own and organize this effort. If this is a project that really appeals to you, show me what you can do and let's work together as a team.)
Perhaps as your new year's resolution you can see fit to carve off some time to take part in our project to update a classic programming book – one of the most influential books in computing history – for 2022 and beyond! 🎉
April 19, 2020
Building a PC, Part IX: Downsizing
Hard to believe that I've had the same PC case since 2011, and my last serious upgrade was in 2015. I guess that's yet another sign that the PC is over, because PC upgrades have gotten really boring. It took 5 years for me to muster up the initiative to get my system fully upgraded!
September 12, 2019
The Rise of the Electric Scooter
In an electric car, the (enormous) battery is a major part of the price. If electric car prices are decreasing, battery costs must be decreasing, because it's not like the cost of fabricating rubber, aluminum, glass, and steel into car shapes can decline that much, right?
On an electric scooter, though, the effect of battery price has to be even more dramatic because scooters are such lightweight, compact, and simple machines. They aren't much more than a battery and an electric motor to begin with. Remember the the Zappy electric scooter from twenty years ago?
What killed the electric scooter back then is the same thing that killed the electric car of year 2000: terrible lead-acid battery technology. It's too heavy, it lacks power, it doesn't have enough range, it takes too long to charge. These are all different ways of saying the same thing: the battery sucks. It wasn't until Lithium Ion batteries matured that both the electric car and the electric scooter — and pretty much electric everything, if you think about it — became viable.
Thus, one way to see if Lithium Ion battery prices are indeed generally dropping independent of all other manufacturing concerns is to examine the cost of electric scooters over the last few years. Let's consider one of the most popular models, the Xiaomi Mi M365:
This graph only shows roughly two years, from January 2018 to now; it looks like the original price for the Xiaomi M365 when it hit the US market in early 2017 was around $800. So the price of a popular, common electric scooter has halved in three years. Very good news indeed for electric vehicles of all types!
This dramatic drop in electric scooter price from 2016 to 2019 may not be surprising versus the parallel rise of the quasi-legal electric scooter smartphone app rental industry over roughly the same time period, in the form of Bird, Lime, Skip, Spin, Scoot, etc.
Early versions of Bird scooters were actual Xiaomi M365s, slightly modified for rental. Only by late 2018 had they migrated to custom built, ruggedized scooters optimized for the rental market. The rental industries have their own challenges, and ironically have started to pivot to monthly rentals rather than the classic 15 cents per minute.
Bird has experimented with its business model in recent months. In early March, the company altered its repair program in Los Angeles, which had relied on gig workers to fix broken scooters. It moved repairs in-house (though scooters are still charged each night by an army of gig workers). Later that month, the company introduced scooters with locks in some markets, in a bid to prevent theft and vandalism.
In April, it announced the launch of a more traditional rental program in San Francisco and Barcelona, in which users could pay $25 per month to rent a Xiaomi m365 from the company rather than paying per ride.
But this isn't meant to be a blog entry about the viability of scooter rental company business models.
I want to tackle a more fundamental question: are electric scooters the future of transportation?
Even Uber, as screwed up of a company as they still are, knows cars are overkill for a lot of basic transportation needs:
Uber believes their current micro fleet of ebikes and scooters can displace trips under 3 miles.
46% of Uber's rides are under 3 miles
August 20, 2019
Electric Geek Transportation Systems
I've never thought of myself as a "car person". The last new car I bought (and in fact, now that I think about it, the first new car I ever bought) was the quirky 1998 Ford Contour SVT. Since then we bought a VW station wagon in 2011 and a Honda minivan in 2012 for family transportation duties. That's it. Not exactly the stuff The Stig's dreams are made of.
The station wagon made sense for a family of three, but became something of a disappointment because it was purchased before — surprise! — we had twins. As Mark Twain once said:
Sufficient unto the day is one baby. As long as you are in your right mind don't you ever pray for twins. Twins amount to a permanent riot. And there ain't any real difference between triplets and an insurrection.
I'm here to tell you that a station wagon doesn't quite cut it as a permanent riot abatement tool. For that you need a full sized minivan.
I'm with Philip Greenspun. Like black socks and sandals, minivans are actually … kind of awesome? Don't believe all the SUV propaganda. Minivans are flat out superior vehicle command centers. Swagger wagons, really.
The A-Team drove a van, not a freakin' SUV. I rest my case.
After 7 years, the station wagon had to go. We initially looked at hybrids because, well, isn't that required in California at this point? But if you know me at all, you know I'm a boil the sea kinda guy at heart. I figure if you're going to flirt with partially electric cars, why not put aside these half measures and go all the way?
Do you remember that rapturous 2014 Oatmeal comic about the Tesla Model S? Even for a person who has basically zero interest in automobiles, it did sound really cool.
It's been 5 years, but from time to time I'd see some electric vehicle on the road and I'd think about that Intergalactic SpaceBoat of Light and Wonder. Maybe it's time for our family to jump on the electric car trend, too, and just late enough that we can avoid the bleeding edge and end up merely on the … leading edge?
That's why we're now the proud owners of a fully electric 2019 Kia Niro.
I've somehow gone from being a person who basically doesn't care about cars at all … to being one of those insufferable electric car people who won't shut up about them. I apologize in advance. If you suddenly feel an overwhelming urge to close this browser tab, I don't blame you.
I was expecting another car, like the three we bought before. What I got, instead, was a transformation:
Yes, yes, electric cars are clean, but it's a revelation how clean everything is in an electric. You take for granted how dirty and noisy gas based cars are in daily operation – the engine noise, the exhaust fumes, the brake dust on the rims, the oily residues and thin black film that descends on everything, the way you have to wash your hands every time you use the gas station pumps. You don't fully appreciate how oppressive those little dirty details were until they're gone.
Electric cars are (almost) completely silent. I guess technically in 2019 electric cars require artificial soundmakers at low speed for safety, and this car has one. But The Oatmeal was right. Electric cars feel like spacecraft because they move so effortlessly. There's virtually no delay from action to reaction, near immediate acceleration and deceleration … with almost no sound or vibration at all, like you're in freakin' space! It's so immensely satisfying!
Electric cars aren't just electric, they're utterly digital to their very core. Gas cars always felt like the classic 1950s Pixar Cars world of grease monkeys and machine shop guys, maybe with a few digital bobbins added here and there as an afterthought. This electric car, on the other hand, is squarely in the post-iPhone world of everyday digital gadgets. It feels more like a giant smartphone than a car. I am a programmer, I'm a digital guy, I love digital stuff. And electric cars are part of my world, rather than the other way around. It feels good.
Electric cars are mechanically much simpler than gasoline cars, which means they are inherently more reliable and cheaper to maintain. An internal combustion engine has hundreds of moving parts, many of which require regular maintenance, fluids, filters, and tune ups. It also has a complex transmission to translate the narrow power band of a gas powered engine. None of this is necessary on an electric vehicle, whose electric motor is basically one moving part with simple 100% direct drive from the motor to the wheels. This newfound simplicity is deeply appealing to a guy who always saw cars as incredibly complicated (but computers, not so much).
Being able to charge at home overnight is perhaps the most radical transformation of all. Your house is now a "gas station". Our Kia Niro has a range of about 250 miles on a full battery. With any modern electric car, provided you drive less than 200 miles a day round trip (who even drives this much?), it's very unlikely you'll ever need to "fill the tank" anywhere but at home. Ever. It's so strange to think that in 50 years, gas stations may eventually be as odd to see in public as telephone booths now are. Our charger is, conveniently enough, right next to the driveway since that's where the power breaker box was. With the level 2 charger installed, it literally looks like a gas pump on the side of the house, except this one "pumps" … electrons.
This electric car is such a great experience. It's so much better than our gas powered station wagon that I swear, if there was a fully electric minivan (there isn't) I would literally sell our Honda minivan tomorrow and switch over. Without question. And believe me, I had no plans to sell that vehicle two months ago. The electric car is that much better.
I was expecting "yet another car", but what I got instead was a new, radical worldview. Driving a car powered by barely controlled liquid fuel detonations used to be normal. But in an world of more and more viable electric vehicles this status quo increasingly starts to feel … deeply unnatural. Electric is so much better of an overall experience that you begin to wonder: why did we ever do it that way?
Gas cars seem, for lack of a better word, obsolete.
How did this transformation happen, from my perspective, so suddenly? When exactly did electric cars go from "expensive, experimental thing for crazy people" to "By God, I'll never buy another old fashioned gasoline based car if I can help it"?
I was vaguely aware of the early electric cars. I even remember one coworker circa 2001 who owned a bright neon green Honda Insight. I ignored it all because, like I said, I'm not a car guy. I needed to do the research to understand the history, and I started with the often recommended documentary Who Killed the Electric Car?
This is mostly about the original highly experimental General Motors EV1 from 1996 to 1999. It's so early the first models had lead-acid batteries!
May 30, 2019
An Exercise Program for the Fat Web
When I wrote about App-pocalypse Now in 2014, I implied the future still belonged to the web. And it does. But it's also true that the web has changed a lot in the last 10 years, much less the last 20 or 30.
Websites have gotten a lot … fatter.
While I think it's irrational to pine for the bad old days of HTML 1.0 websites, there are some legitimate concerns here. The best summary is Maciej Cegłowski's The Website Obesity Crisis.
To channel a famous motivational speaker, I could go out there tonight, with the materials you’ve got, and rewrite the sites I showed you at the start of this talk to make them load in under a second. In two hours.
Can you? Can you?
Of course you can! It’s not hard! We knew how to make small websites in 2002. It’s not like the secret has been lost to history, like Greek fire or Damascus steel.
But we face pressure to make these sites bloated.
I bet if you went to a client and presented a 200 kilobyte site template, you’d be fired. Even if it looked great and somehow included all the tracking and ads and social media crap they insisted on putting in. It’s just so far out of the realm of the imaginable at this point.
The whole article is essential; you should stop what you're doing and read it now if you haven't already. But if you don't have time, here's the key point:
This is a screenshot from an NPR article discussing the rising use of ad blockers. The page is 12 megabytes in size in a stock web browser. The same article with basic ad blocking turned on is 1 megabyte.
That's right, through the simple act of running an ad blocker, you've reduced that website's payload by twelve times. Twelve! That's like the most effective exercise program ever!
Even the traditional advice to keep websites lean and mean for mobile no longer applies because new mobile devices, at least on the Apple side, are faster than most existing desktops and laptops.
The iPhone XS is faster than an iMac Pro on the Speedometer 2.0 JavaScript benchmark. It's the fastest device I've ever tested. Insane 45% jump over the iPhone 8/X chip. How does Apple do it?! ✨ pic.twitter.com/5nCKZUCAYK
— DHH (@dhh) September 21, 2018
Despite claims to the contrary, the bad guy isn't web bloat, per se. The bad guy is advertising. Unlimited, unfettered ad "tech" has creeped into everything and subsumed the web.
Personally I don't even want to run ad blockers, and I didn't for a long time – but it's increasingly difficult to avoid running an ad blocker unless you want a clunky, substandard web experience. There's a reason the most popular browser plugins are inevitably ad blockers, isn't there? Just ask Google:
So it's all the more surprising to learn that Google is suddenly clamping down hard on adblockers in Chrome. Here's what the author of uBlock Origin, an ad blocking plugin for Chrome, has to say about today's announcement:
In order for Google Chrome to reach its current user base, it had to support content blockers — these are the top most popular extensions for any browser. Google strategy has been to find the optimal point between the two goals of growing the user base of Google Chrome and preventing content blockers from harming its business.
The blocking ability of the webRequest API caused Google to yield control of content blocking to content blockers. Now that Google Chrome is the dominant browser, it is in a better position to shift the optimal point between the two goals which benefits Google's primary business.
The deprecation of the blocking ability of the webRequest API is to gain back this control, and to further instrument and report how web pages are filtered, since the exact filters which are applied to web pages are useful information which will be collectable by Google Chrome.
The ad blockers themselves are arguably just as complicit. Eye/o GmbH owns AdBlock and uBlock, employs 150 people, and in 2016 they had 50 million euros in revenue, of which about 50% was profit. Google's paid "Acceptable Ads" program is a way to funnel money into adblockers to, uh, encourage them to display certain ads. With money. Lots … and lots … of money.
February 16, 2019
The Cloud Is Just Someone Else's Computer
When we started Discourse in 2013, our server requirements were high:
1GB RAM
modern, fast dual core CPU
speedy solid state drive with 20G+
I'm not talking about a cheapo shared cpanel server, either, I mean a dedicated virtual private server with those specifications.
We were OK with that, because we were building in Ruby for the next decade of the Internet. I predicted early on that the cost of renting a VPS with those specs would drop to $5 per month, and courtesy of Digital Ocean that indeed happened in January 2018.
The cloud got cheaper, and faster. Not really a surprise, since the price of hardware trends to zero over time. But it's still the cloud, and that means it isn't exactly cheap, because it is, after all, someone else's computer that you pay for the privilege of renting.
But wait … what if you could put your own computer "in the cloud"?
Wouldn't that be the best of both worlds? Reliable connectivity, plus a nice low monthly price for extremely fast hardware? If this sounds crazy, it shouldn't – Mac users have been doing this for years now.
I suppose it's understandable that Mac users would be on the cutting edge here since Apple barely makes server hardware, whereas the PC world has always been the literal de-facto standard for server hardware.
Given the prevalence and maturity of cloud providers, it's even a little controversial these days to colocate actual servers, but we've also experimented with colocating mini-pcs in various hosting roles. I'm still curious why there isn't more of a cottage industry for colocating mini PCs. Because … I think there should be.
I originally wrote about the scooter computers we added to our Discourse infrastructure in 2016, plus my own colocation experiment that ran concurrently. Over the last three years of both experiments, I've concluded that these little boxes are plenty reliable, with one role specific caveat that I'll explain in the comments. I remain an unabashed fan of mini-PC colocation. I like it so much I put together a new 2019 iteration:
2017 — $6702019 — $820
i7-7500u
2.7-3.5 Ghz, 2c / 4ti7-8750h
2.2-4.1 Ghz, 6c / 12t
16GB DDR3 RAM32GB DDR4 RAM
500GB SATA SSD500GB NVMe SSD
This year's iteration of the scooter computer offers 3× the cores, 2× the memory, and 3× faster drive. It is, as the kids say … an absolute unit.
Jeff Atwood's Blog
- Jeff Atwood's profile
- 34 followers
