November 4th, 2008

Slava lays out the options

What are the differences between Computer Science and Computer Engineering?

Computer science is when you use useless languages and study hopelessly theoretical and impractical things such as esoteric type systems and category theory, with plenty of greek letters to go around. You scoff at people who write web applications because what they do is "trivial", despite the fact that your academic language of choice does not have libraries for database access, threads, or sockets, and even opening a file is considered an "advanced" "impure" feature.

Computer engineering is when you pretend to enjoy your job maintaining a Java monstrosity where the XML configuration alone has more lines of code than a typical academic has ever written in his life. To feel trendy and work your way up the pecking order, you read Rails celebrity blogs to find out what the latest buzzwords are, latch on, and parrot canned talking points without thinking.

The third alternative that you forgot to mention is living in your mother's basement and hacking Perl on a Gentoo Linux that you compiled entirely from source using the l33t3st GCC flags from the h4x0r IRC channel.

Slava Pestov

Business names I hate

Any second franchise that includes "2" or "II" in the business name is a big loser. Extra loser points if the "2" is turned into a super great play on words as "Too".

There is a local business here called "Love That Car Wash, Too!"

Also, any business that tries wordplay with "Maine", like "Maine-ly Plumbing."