Linux is quite good, but should get layered into device drivers and protective kernel, because at the current moment any device driver can bring in a kernel-wide security breach. Moreover, Linux' scheduler, tty handling, VM and panic handling are shit;
Nokia's phones suck, they just suck less than those of other companies (I've worked for Nokia, they're CowboyCoders all right);
MySql is a very good product, for which I give my highest esteem;
PHP is a heap of crap. It's almost as bad as VBScript, but doesn't suffer from overdesign.
What's wrong with the Linux scheduler now that it's O(1)?
The most important aspect of a scheduler is not how much time it itself
consumes but instead how "correct amount" of time it gives to different
processes. But the comment(s) above may be outdated. IIRC, they were
written year 2002.