3 ms·
come on now, have you ever fallen in love with a phillips head screwdriver?
by keefe 16y ago
come on now, have you ever fallen in love with a phillips head screwdriver?
- kevbin 16y agomodule Comment where import Control.Exception (assert) class Loveable thing where loves :: Person -> thing -> Bool instance Loveable ScrewDriver where _ `loves` PhillipsHead = False instance Loveable ProgrammingLanguage where Me `loves` Haskell = True TheOtherGuy `loves` Haskell = True _ `loves` _ = False data ScrewDriver = FlatHead | PhillipsHead | Torx data ProgrammingLanguage = Haskell | Lisp | Scheme data Person = You | Me | TheOtherGuy implies a b = if a then assert True b else assert True True argument person = (not (person `loves` PhillipsHead)) `implies` (not (person `loves` Haskell)) check a = mapM (print . a) [You, Me, TheOtherGuy] Comment> check argument True False False
- chc 16y agoProbably not. But many photographers have fallen in love with certain kinds of cameras or techniques or development methodologies. And many musicians have fallen in love with particular kinds of instrument or playing styles. And I know gearheads who will go on for hours about the virtues of Obscure Mechanical Thing A versus Obscure Mechanical Thing B. But no, programming languages must be like screwdrivers. You just mindlessly turn them clockwise all day and you've created Google. Right?
- keefe 16y agoWas falling in love with those particular tools optimal for the photographer, musician, gearhead? Could they have made more money, created more if they had broadened their horizons? It all depends on if the goal is to make as much money as fast as possible or to have fun and satisfy yourself intellectually. There's nothing wrong with loving programming language X, but I wouldn't make career or project decisions based on enjoying the syntax of one vs the other. imho the difficult part is figuring out the logic of the program, determining which libraries to commit to, writing any novel algorithms and engineering the system so it runs efficiently and doesn't fall over.
- sz 16y agoI'm a musician and I can tell you from experience that I sound a lot better on a Steinway concert grand than on a cheap Casio keyboard. So, more money? I guess the keyboard is cheaper, but when the musician is happy the music is better.
- keefe 16y agobetter tools certainly make for a better product, no question. I think this stretches the analogy a little bit though, if we're comparing java and haskell I don't think we can compare a steinway and a casio, maybe a steinway and some off brand.
- prodigal_erik 16y agoIf I were uncommonly proficient with a nailgun, I would want to know which homebuilders would let me use it rather than the industry standard rock-onna-stick. You don't have to love a good tool to think inferior tools suck.