PHP: A Fractal of Bad Design

Dear PHP, you’re dead to me. Thanks for a lousy time.

Wow, this just nails it. Reading this makes everything you always felt while coding in PHP so much more clear. Written beautifully. A must read for every developer (especially PHP ones).

A small spoiler:

  • PHP is full of surprises: mysql_real_escape_string, E_ALL
  • PHP is inconsistent: strpos, str_rot13
  • PHP requires boilerplate: error-checking around C API calls, ===
  • PHP is flaky: ==, foreach ($foo as &$bar)
  • PHP is opaque: no stack traces by default or for fatals, complex error reporting

I urge you – read the whole thing. There are so many gems in there. Thank you @eevee!

Also, a while back I felt I had to reduce my PHP dosage in order to have fun coding again, which is why I got into Scala:

And I’m loving every minute of it.