Top all-time · #114
fuzzy notepad
Personal blog · eev.eeprogramminggameswriting
fuzzy notepad is a personal blog at eev.ee about programming, games and writing. Since 2014, 311 different Hacker News readers have linked it 376 times, most often “PHP: A fractal of bad design (2012)”. It is still writing: the last post was on 2025-07-22, and you can follow it by feed.
Rarely recommended · 3 of 40 sampled comments recommend it?
Why HN links it
HN readers link eev.ee, especially the 2012 post 'PHP: a fractal of bad design', as a well-known critique of PHP. Other linked posts cover CSS, Python 2 versus 3, Unicode and music theory.
Summarised by Claude from a sample of 40 HN comments that link here. Each comment is marked recommending, critical or neutral (citing without judging); how this works.
Most-linked posts?
- PHP: A fractal of bad design (2012)101 people · 116 mentions · first linked 2016-02-25
- PHP: a fractal of bad design (2012)30 people · 31 mentions · first linked 2014-05-13
- Music theory for nerds13 people · 15 mentions · first linked 2016-09-19
- Old CSS, New CSS9 people · 10 mentions · first linked 2020-02-02
- Dark corners of Unicode (2015)9 people · 9 mentions · first linked 2016-12-11
- Maybe we could tone down the JavaScript (2016)9 people · 9 mentions · first linked 2016-03-07
- A Rebuttal for Python 38 people · 9 mentions · first linked 2016-11-24
- Apple did not invent emoji8 people · 9 mentions · first linked 2016-04-13
- Python FAQ: Why should I use Python 3?8 people · 9 mentions · first linked 2016-08-01
- Let’s stop copying C (2016)7 people · 7 mentions · first linked 2016-12-01
What Hacker News says?
Sure. The foundation of commerce is sustained relationships where value is mutually exchanged. I give you a few bucks, you give me a cheeseburger. If fix somebody's problem with a computer, they give me cash. Product for payment; value for value. When some commercial effort departs from that, it's good to be suspicious. The bills are getting paid somehow. E.g., look at network television from 1960-2000 or so. The vi…
Comment linking /blog/2020/02/01/old-css-new-css/
on “GitHub Codespaces”Submitted Old CSS, New CSS as a story · 1018 points
HN discussionIt's type system and automatic casting/comparing is a nightmare. Although there are namespaces now, the idea of everything being in the global scope was insane (and still even with namespaces, much is still in the global scope). mysql_real_escape_string There are no type-safe comparisons for greater or less then (You have ===, but no <== or >==). This article: https://eev.ee/blog/2012/04/09/php-a-fractal-of-bad-desi…
Comment linking /blog/2012/04/09/php-a-fractal-of-bad-design/
on “GitLab sees huge spike in project imports”Submitted I quit the tech industry as a story · 1017 points
HN discussionhttps://duckduckgo.com/?q=hash+site:reddit.com/r/lolphp https://duckduckgo.com/?q=crypt+site:reddit.com/r/lolphp >crc32($str) and hash("crc32",$str) use different algorithms .. >Password_verify() always returns true with some hash >md5('240610708') == md5('QNKCDZO') >crypt() on failure: return <13 characters of garbage > strcmp() will return 0 on error, can be used to bypass authentication > crc32 produces a negativ…
Comment linking /blog/2012/04/09/php-a-fractal-of-bad-design/
on “We spent $20 to achieve RCE and accidentally became the admins of .mobi”Submitted Music theory for nerds as a story · 766 points
HN discussionThe grid version, praised as the best version, on https://eev.ee/media/2020-02-css/thumbnail-grids.html#grid renders incorrectly in chrome 79, the current stable release. (It looks fine on Canary and in Safari.) The more things change...
Comment linking /media/2020-02-css/thumbnail-grids.html
on “Old CSS, New CSS”Submitted The Rise of Whatever as a story · 644 points
HN discussion> especially now that flexbox and grid have solved all our problems. That is certainly not the case. Look at https://eev.ee/media/2020-02-css/thumbnail-grids.html#grid Large gaps of empty space. A manual layout would pack the thumbnails much more densely.
Comment linking /media/2020-02-css/thumbnail-grids.html
on “Old CSS, New CSS”Submitted Music theory for nerds (2016) as a story · 367 points
HN discussionI haven't read it, yet, only did a quick search to see if I could fine the words "tonal center" somewhere. I think that concept is under-emphasized and resolves a bunch of common confusion about music. e.g. this post[1] that was on the front page a few weeks back in which the author did not understand what's the difference between C major and A minor. [1]: https://eev.ee/blog/2016/09/15/music-theory-for-nerds/
Comment linking /blog/2016/09/15/music-theory-for-nerds/
on “Music Theory: An Education from First Principles”Submitted Maybe we could tone down the JavaScript (2016) as a story · 298 points
HN discussion> You already know why they halt: there's a gas limit. Did you actually read my post? I'm not claiming halting is a problem; it's merely an example of undecidability . The "gas limit" doesn't help in the cases where the program does halt with unexpected behavior. > Turing complete programs don't generally halt. That's the definition. Where did you get this nonsense? See [1] for the actual definition. > attack was an…
Comment linking /blog/2012/04/09/php-a-fractal-of-bad-design/
on “153k Ether Stolen in Parity Multi-Sig Attack”Submitted One year later as a story · 291 points
HN discussionFor sure. The longer somebody has been coding, the more examples they can list where the worse technology won out. Exhibit A here is the JS language itself. It became popular not because it was the best language, just the most ubiquitous one. You could read the 25 years since as trying to turn it into a solid language. Or look at the rise of PHP. It started out as a tool for making a Personal Home Page, which is a f…
Comment linking /blog/2012/04/09/php-a-fractal-of-bad-design/
on “From Node to Ruby on Rails”Submitted Old CSS, New CSS (2020) as a story · 284 points
HN discussionPHP is a fractal of bad design[0] and creating a superset will not enable you to create a better language. [0]: https://eev.ee/blog/2012/04/09/php-a-fractal-of-bad-design/
Comment linking /blog/2012/04/09/php-a-fractal-of-bad-design/
on “Sapling: A new source control system with Git-compatible client”Submitted The sad state of web app deployment as a story · 267 points
HN discussionhttps://eev.ee/blog/2012/04/09/php-a-fractal-of-bad-design/ Well, this is still true.
Comment linking /blog/2012/04/09/php-a-fractal-of-bad-design/
on “PHP in 2019”Submitted Twitter's missing manual as a story · 244 points
HN discussionAnd yet ~everything in https://eev.ee/blog/2012/04/09/php-a-fractal-of-bad-design/ is still true. All that's happened is that the language is even more complex, has even more baggage.
Comment linking /blog/2012/04/09/php-a-fractal-of-bad-design/
on “PHP in 2019”Submitted Old CSS, new CSS (2020) as a story · 201 points
HN discussionI read the "fractal" part as a hat tip to this rather famous article: https://eev.ee/blog/2012/04/09/php-a-fractal-of-bad-design/
Comment linking /blog/2012/04/09/php-a-fractal-of-bad-design/
on “Go is Google's language, not ours”Submitted I quit the tech industry (2015) as a story · 165 points
HN discussionI have been paid to write PHP for several years of my career. More than any other language, I think, neck and neck with JS. I have also written heavy amounts of Python and Java at various points in my career. A few other languages too. PHP has many, many bad spots. It's easily the ugliest, clumsiest language I have been paid to use. It's slightly dated, but this is still the best summary I know of: https://eev.ee/bl…
Comment linking /blog/2012/04/09/php-a-fractal-of-bad-design/
on “Why is modern web development so complicated?”Submitted Dark corners of Unicode as a story · 158 points
HN discussionI'm surprised no one has posted this fairly thorough criticism of PHP from a few years ago https://eev.ee/blog/2012/04/09/php-a-fractal-of-bad-design/
Comment linking /blog/2012/04/09/php-a-fractal-of-bad-design/
on “Taking PHP Seriously”Submitted A Rebuttal for Python 3 as a story · 155 points
HN discussion> I suspect that the second option was more popular for the most important packages of the ecosystem You're 100% wrong. The few packages which decided on option 2 early on (e.g. dateutil) ended up having to roll back to option 1 because it was such a pain in the ass, both for the maintainer and for downstream users. The migration only really started happening once 2.7 dropped, projects like Six[0] started appearing,…
Comment linking /blog/2016/07/31/python-faq-how-do-i-port-to-python-3/
on “Pip has dropped support for Python 2”Submitted Dark corners of Unicode (2015) as a story · 150 points
HN discussion