The Daily WTF
thedailywtf.com · Group blog · on HN since 2007
The Daily WTF collects reader-submitted stories of bad code, failed projects, and absurd workplace decisions in software.
What HN saysCommenters call it one of the best blogs, programming or not, and genuine in its stories. HN links it as the home for developer horror stories.
778HN people shared it
517linked it in comments
499stories submitted
5.7Kstory points
2 months agolast shared
2007people per year2026
Most-shared posts
- 1The Daily WTF goes white to "support" SOPA99 people · 334 points · first shared 2008 · 47 comments on HN
- 2How Æxecor’s programming error led to 28000 tons of coal delivered (2009)30 people · 54 points · first shared 2014 · 7 comments on HN
- 3The speed-up loop28 people · 8 points · first shared 2015 · discussion on HN
- 4The Inner Json Effect27 people · 296 points · first shared 2016 · 141 comments on HN
- 5What Is Truth 0x3f25 people · first shared 2015
- 6A Case of the Mumps (2007)19 people · 7 points · first shared 2015 · 1 comments on HN
- 7The Speed-up Loop12 people · 4 points · first shared 2008 · 3 comments on HN
- 8We Use BobX (2010)11 people · 8 points · first shared 2014 · discussion on HN
- 9The brilliant Paula Bean (2005)11 people · 3 points · first shared 2016 · 1 comments on HN
- 10The Inner-Platform Effect (2006)10 people · 5 points · first shared 2015 · discussion on HN
- 11Solving turnover (unusual dailywtf)9 people · 384 points · first shared 2008 · 96 comments on HN
- 12Æxecor's programming error led to 28,000 tons of coal delivered (2009)9 people · 1 points · first shared 2020 · discussion on HN
- 13ITAPPMONROBOT (2007)8 people · 74 points · first shared 2016 · 13 comments on HN
- 14What is truth? (2005)8 people · 4 points · first shared 2021 · 1 comments on HN
- 15The Automated Curse Generator8 people · 4 points · first shared 2014 · discussion on HN
What HN people wrote when they linked it
jacobyoder · 2023-12-30
> Whenever people say stuff like this I can't help but wonder what on earth kind of projects they work on. Even GPT4, while useful for things like reformatting or generating boilerplate code and stuff like that, it's still a far cry from any decent dev I've ever worked with, especially if you're not using a popular language like JS or Python.
I mean this not overly sarcastically, but ... have you seen https://thedailywtf.com ? Between my own experiences, and that of some colleagues, I could probably put together at least a half-a-dozen WTF stories that would rival some of the best that site has to offer. There's enough really incompetent people in positions they shouldn't be in to the point that chatgpt - at this point - could realistically provide better output than more than a few of them.
seer · 2021-01-21
Not exactly programming jocks, more like tech jokes, but I remember http://bash.org/?top to be an amazing source of humor back when I had my first steps as a techie 15 years ago
Also a more long form source of funny developer anecdotes was https://thedailywtf.com/
mtmail · 2018-07-12
https://thedailywtf.com/ collects those stories for 10+ years now.
Mine was when a colleague calculated tomorrow's date with a simple yyyymmdd+1. Checked in Friday before leaving the office, thus the product feature shipped on time. Of course failed on the last day of the month but by then all the launch celebrations were done and it was treated as a small bug. I think he did the right thing on the day, just should've wrote the issue down and fix it quietly the following days.
flukus · 2017-04-10
We have entire websites dedicated to them: http://thedailywtf.com/ . If they did great harm to the company though, that's the companies fault for keeping them and/or not monitoring them.
sametmax · 2017-03-12
Probably one of the best blog ever, programming or not, because it's not just good, it's so damn genuine.
Also http://thedailywtf.com/
kkapelon · 2015-12-15
Great story! You should submit this to http://thedailywtf.com/
dalke · 2015-05-27
So how would you answer my question? Would you really dock someone who could give all three of those implementations, but struggled to give a truly horrible implementation? How bad does it need to be truly horrible?
I ask because I struggled coming up with a horrible implementation of FizzBuzz. My best attempt was to have Python create a sqlite table then use SQL to do the test. Such implementations occur all too frequently at http://thedailywtf.com/ .
But surely this would not be an example of great understanding of either Python or SQL. Therefore, I don't see how you can draw your conclusion.
Could you explain more fully?
hendzen · 2013-05-15
1) http://www.altdevblogaday.com/
2) http://mechanical-sympathy.blogspot.com/
3) (Not really a blog, but so great) http://lwn.net/
4) (For entertainment) http://thedailywtf.com/
worldimperator · 2012-09-03
Reads like a constructive version of http://thedailywtf.com/ , maybe because of the anonymized stories. But good read :-)
barik · 2012-08-13
This is fantastic. I followed it immediately. It reminds me of a condensed version of The Daily WTF [1] or perhaps http://bash.org/, but for Hacker News. More amusingly, it seems to have that strange meta property in which this thread itself is sure to generate a few more tweets, much in the same way that no one is quite sure if the real Daily WTF is the post itself or the comments that try to solve the problem in the post.
[1] http://thedailywtf.com/
yitchelle · 2012-05-04
Great idea! Are you drawing your inspiration from http://thedailywtf.com/?
Osiris · 2011-10-17
I read Alvin Ashcraft's Morning Dew, which is a .NET resource. He posts links to tons of articles every morning on 10 different topics. It's fun to read up on such a variety of different topics.
http://www.alvinashcraft.com
I also read the Daily WTF every day. It's great to have a chance to look at crappy code and try to re-write it in your head on how it should have been done.
http://www.thedailywtf.com
TorKlingberg · 2011-08-18
It could be worth clarifying that this is counting instances of the string 'WTF' in code, not code that makes you think WTF, as on http://thedailywtf.com/
brisance · 2010-08-31
It depends a lot on the experience/background of the person, as well as the problem at hand. Most programming "problems", like any other engineering field, have already been solved, so there's no shame in turning to a search engine or even better, StackExchange, for solutions. The best coders are the ones that are learning all the time.
On the other hand, there is usually an impedance mismatch between the description of the problem and the actual solution. Take a look at the horror stories on The Daily WTF. http://thedailywtf.com/
Anyway, try to read as much code as possible, both good and bad, find a mentor(s), be able to take constructive criticism, and just persevere, and you should be fine.
nt8eo923nt45 · 2018-04-06
I find this disingenuous. It is a very common scenario that a new user knows of some way to solve some part of their question (or just thinks they do), and assumes the best/easiest/fastest/safest/whatever answer involves using that technique. This is exactly the scenario that Alex Papadimoulis referred to in his blog post[1] that I have to believe was the inspiration for his site The Daily WTF[2]:
> "A client has asked me to build and install a custom shelving system. I'm at the point where I need to nail it, but I'm not sure what to use to pound the nails in. Should I use an old shoe or a glass bottle?"
>...[potential answers]
>b) There is something fundamentally wrong with the way you are building; you need to use real tools.
The answerer is often telling the person, what you are trying to do sounds like a really bad/inefficient/ineffective/whatever solution. The common way to solve this is Y because of reasons A, B, and C. Are you doing something where those reasons are not a concern?
[1] https://weblogs.asp.net/alex_papadimoulis/408925
[2] http://thedailywtf.com
OliverJones · 2016-11-13
Gotta do a back-story post on this.
Developmental psychology (specifically the work of Robert Kegan) offers a good way to understand the life transition Ms. Shellnutt described so eloquently.
(http://www.worldcat.org/title/evolving-self-problem-and-process-in-hum…
Developmental psychology by stages isn't just for middle schoolers. It it continues until we close our eyes for the last time.
Lemme do some broad strokes on this, even though it grossly oversimplifies things.
When we're kiddos growing up, we go through a bunch of stages of socialization. Most of us emerge in our late teens and young adulthood into a stage Kegan calls "interpersonal." In that stage we define ourselves by our relationships. We learn to tell our own stories by telling the stories of how we relate to the people around us. "BFF" is a shorthand for that. In the world of social media, lots of followers / friends / links is a goal -- in itself -- of this stage. "I know this many people."
After a decade or so, may of us make a switch to a new developmental stage. Kegan calls it the "institutional" stage. Again, to oversimplify, in this stage we become our business cards or our families. We tell our stories by the institutions we serve and our relationships to them. Silicon valley rituals like deciding whether to have job titles are part of the dance of this stage. So is the glory that comes from having a short domain name. "I am the VP of design for ZZZ Corp" is a…
fusiongyro · 2012-06-06
Bad programmers I've dealt with tend to share certain traits:
- Their code is large, messy and bug-laden
- They have very superficial knowledge of their problem domain and their tools
- Their code has a lot of copy and paste, and they have very little interest in techniques that reduce it
- They fail to account for edge cases while inefficiently dealing with the general case
- They're always rushing around putting out fires, trying to look like heroes battling vast problems against impossible odds
- They never have time to comment their code or break it into smaller pieces
- Empirical evidence plays no role in their decisions
It would be hard to self-test, but some clues would be: do you think you're the best programmer in the world? Do you find code with a lot of functions messier and harder to understand than code with only a few large functions? Do you routinely copy code from one place to another and make a few small changes to it? Do your programs tend to be a few huge files or lots of small files? When you're asked to make a change, do you usually have to touch most of the code or just a small chunk of it? If you say 'yes' to most of these, you're probably bad. If not, you're probably alright. :)
Another clue is to go read the CodeSOD articles at The Daily WTF[1]. If you find them funny or horrifying, you're probably alright. If you don't understand what makes them terrible, you're probably bad.
[1] http://thedailywtf.com/
ben_w · 2026-07-10
You may laugh/cry with the contents of: https://thedailywtf.com
As with the sibling comment, I advise you to be skeptical of causation: lots of corporations have weird office politics and you'll need to rule that out before you can tell if it's AI or just your boss.
> Idk, might switch to driving trains, if they don't automate that too...
I'm surprised they've not already been entirely automated away. A few lines were created fully automated and seem to have managed fine ever since. Much easier than self-driving cars.
gnuvince · 2026-06-14
Basically, folks nowadays think that this article[1] was aspirational rather than a cautionary tale.
[1] https://thedailywtf.com/articles/Classic-WTF-No-Quack
trumpdong · 2026-06-06
Are we just posting irrelevant links? https://thedailywtf.com/
LeonB · 2026-05-24
Finally c# will have a more idiomatic way to represent this classic code example from “The Daily WTF” in 2005 —
enum Bool
{
True,
False,
FileNotFound
};
See https://thedailywtf.com/articles/Classic-WTF-What-Is-Truth
jfountain2015 · 2026-05-08
The classic Speed Up Loop
https://thedailywtf.com/articles/The-Speedup-Loop
pseudohadamard · 2026-03-30
Obligatory link: https://thedailywtf.com/. It's full of stories like this.
Tangurena2 · 2026-03-06
Or... your company should be training potential replacements. This is what the US military and "white shoe" consulting companies do. While expensive, it guarantees that critically needed skilled staff are always available.
I recommend the article "Up or Out: Solving the IT Turnover Crisis" [0] which gives a reasonable argument for doing exactly that.
Notes:
0 - https://thedailywtf.com/articles/up-or-out-solving-the-it-turnover-cri…
reedlaw · 2026-03-05
LLM-generated snippets of code are a breath of fresh air compared with much legacy code. Since models learn probability distributions they gravitate to the most common ways of doing things. Almost like having a linter built in. On the other hand, legacy code often does things in novel ways that leave you scratching your head--the premise behind sites like https://thedailywtf.com/
DaiPlusPlus · 2026-02-19
...huh, TDWTF is not-only still online, but it even has recent updates.
(for those wanting context, it's from this post from 2005: https://thedailywtf.com/articles/Classic-WTF-What-Is-Truth )
adornKey · 2026-01-29
Mice can fit through tiny holes. An old rule says that if a pencil can get through - a mouse will get through.
Some mice even fly.
I once had a bat clinging on my good old CAT cable. So even leaving windows open at night might affect bandwidth...
Another classic is the "Frog on Keyboard error". Software developers have to be prepared for everything...
https://thedailywtf.com/articles/Classic-WTF-Cursed-and-ReCursed
pif · 2026-01-05
Mandatory reference: https://thedailywtf.com/articles/Classic-WTF-The-Indexer
tdeck · 2025-10-29
The Daily WTF is going to enter a new era soon.
(For those not familiar https://thedailywtf.com/)
svieira · 2025-09-30
Yeah, LLM-created commit messages verge on "Brilliant Paula" for some reason. It's probably because nobody bothers to RLHF commit messages (yet).
https://thedailywtf.com/articles/the_brillant_paula_bean