Note: This document is work-in-progress. Please don’t publish it on news sites, or otherwise link to it in public without the author’s permission. Private linking is acceptable.
I once went to a job interview in downtown Tel-Aviv, which went very well. Then I received a phone call from them that they want me to come and install Fedora Linux on the computer. I did that, and next thing I knew, I was given other tasks.
I was instructed to write a mail-processing framework in PHP. Now since I know and love Perl, I know there are many fine modules for doing that on CPAN (= The Comprehensive Perl Archive Network), but there was little of substantial quality for PHP. At a certain time I needed to register at a site, to download the latest version of a PHP library, that was open-source software, because the download required authentication . There didn’t seem to be anything better.
I was told that they would prefer to write everything in PHP, because they expected to hire only PHP programmers, possibly without any Perl experience.
That wasn’t all. They also decided against using Postfix, which is a modern, high-performance and open-source SMTP server, and instead preferred the old Sendmail SMTP server which has a far worse reputation, and an arcane configuration system.
Furthermore, they also decided to use MySQL instead of PostgreSQL, and we ran into a PHP misbehaviour (which was fixable given a lot of PHP know-how) that made us have to restart the connection to the server after every request. Both MySQL and Sendmail were chosen due to political reasons.
With my PHP code barely working and prone to many errors, I decided to quit after about a month, out of being appalled by the bad code craftsmanship I had achieved there. Make sure you don’t repeat such a mistake.