{ on programming and the internets }


by Louis Brandy

The 75% answer

People often ask what I refer to as non-questions. What programming language should I learn? That’s not a real question. You need to probe further to figure out what they are really asking. Is it your first language? Do you want to get a job? Do you want to bend your brain?

There are many canonical examples of non-questions, but they occur even more frequently in niche areas. What web framework should I use? If you are completely ignorant of web frameworks, there’s simply no way you can choose the best one for your needs. And there’s absolutely no way anyone else can tell you what the best one is going to be. The beauty of the situation is that the best anyone can do is get you 75% of the way there. That’s it. You can spend twenty minutes doing research and get a 75% answer, or you can spend three weeks doing research, and maybe get 85%. Go with 75%.

Since these questions, by their nature, demonstrate a fundamental level of ignorance that cannot be easily cured (by either the asker, or the answerer) then we simply need to strive for 75% answers. If you know enough about a particular topic to know why a 75% answer isn’t good enough for you, you probably know enough to ask better questions. If you know literally nothing, find one of the many 75% answers, and just go for it.

The 75% answer to all newbie questions

Operating System?

  • Linux: servers, work desktops
  • Macs: laptops, work or play
  • Windows: home machines (only if you play games)

Linux distro? Ubuntu.

Gnome or KDE? Gnome.

Text editor? Emacs.

Web framework? Ruby on Rails.

Web server? Apache.

Prototype or jQuery? jQuery.

What programming language should I learn? C.

I already know C. Python

Anything else? Lisp

What hourly rate should I charge? $75 per hour.

Someone help me pick a good font! Georgia or Verdana. And never put black (#000) on white (#FFF)

Paper or plastic? Plastic! And don’t give me any dirty looks either, hippy!

Effect or affect? Use the following words, only: effect (noun), affect (verb), effective, affected, affecting (you’ll be right more than 75%).

If you are struggling with any of these questions, and have no overriding reason to disagree with my answer, go with it. Stop doing research, stop reading the internet, and stop asking non-questions in various forums. Find a 75% answer, and jump into it. I promise everything will work out. Even if you find it doesn’t suit your needs, it’ll teach you enough to figure out which alternative will. And 75% of the time, these will work out just fine.

trackback

20 Responses to “The 75% answer”

  1. May 11th, 2009 at 9:50 am

    Aaron Davies says:

    to affect is to effect an effect

  2. May 11th, 2009 at 10:26 am

    Anon says:

    It’s funny that you made note of effect versus affect, but then used farther instead of further above that.

  3. May 11th, 2009 at 10:29 am

    Geoff Wright says:

    Really, really made me laugh:

    What programming language should I learn? C.

    I already know C. Python

    Genius!

  4. May 11th, 2009 at 10:40 am

    louis says:

    If I was a software project, my inability to correctly navigate the gotchas of the English language would be a known issue and patches would be accepted.

    Further/farther… effect/affect… who/that… You don’t even want to know what happens when I don’t have a spell checker.

    I am in a never ending quest for 75% rules as far as this stuff goes.

  5. May 11th, 2009 at 11:11 am

    Travis says:

    Love these rules. Sounds to me like a weekend webapp project in the waiting — 75percentrules.com ;)

    It would be good to have a compilation of these things on the internet. Of course, general access could turn this into a major flamewar (especially things like OS choice, language choice, etc.)

  6. May 11th, 2009 at 11:50 am

    Jim says:

    That Ruby On Rails Framework is going to be tricky without learning Ruby at some point.

  7. May 11th, 2009 at 12:48 pm

    kevin says:

    What is wrong with putting black on white???

  8. May 11th, 2009 at 1:15 pm

    northwind says:

    Echoing what Jim mentioned: as you have chosen Python as the language to learn after C, wouldn’t Django be a better web framework to learn?

  9. May 11th, 2009 at 1:37 pm

    louis says:

    I guess. Of course the question wasn’t “If I already know Python, which web framework should I use?”. Django would make a great answer to that question.

    Besides, if you already know Python, Rails is a perfectly respectable thing to learn. The same logic, by the way, applies to jQuery over prototype (the rails default).

  10. May 11th, 2009 at 3:31 pm

    svat says:

    To add to those 75% rules: when in doubt, (1) leave out the apostrophe, and (2) use ‘who’ not ‘whom’. (It’s far more distracting to see “it’s” for “its” than the other way round, and “who” is a perfectly acceptable substitute for “whom” these days.)

  11. May 11th, 2009 at 5:31 pm

    Zach says:

    I have 2 Linux boxes (an EEEPC and a server) and 2 windows boxes (home computer and work computer). The key thing holding me back from switching everything over to Linux is MS Excel. Such an amazing piece of software.

  12. May 11th, 2009 at 5:41 pm

    fcp says:

    “What programming language should I learn? C.”

    really? I’d venture that at least 75% of people don’t need and don’t want to learn about pointers and memory management. Granted it would make them a better programmer in the long run if they do some significant work in C, but I would reverse Python and C for those questions.

  13. May 11th, 2009 at 5:51 pm

    tangential says:

    Gnome or KDE? Gnome.

    Why? (I’m really interested, especially as you’re a fellow coder).

    Personally, I find the gnome codebase to be massively inferior. Doesn’t help that I work for the kinda opposition, but yeah, genuinely interested in why someone who has a pretty good idea on software would choose gnome.

  14. May 11th, 2009 at 8:47 pm

    Andres says:

    And how did you came up with the magic number?

  15. May 11th, 2009 at 8:48 pm

    Andres says:

    s/came/come/

  16. May 11th, 2009 at 8:50 pm

    KodaK says:

    Emacs? For a complete newbie? How about pico? Not that I’m into either (I’m a vi kind of guy) but pico makes much more sense for a newbie. The instructions are right there on the screen.

  17. May 12th, 2009 at 2:36 am

    Duarte says:

    That’s quite similar to the paretto principle! 20% of the research gives you 80% of the answer

  18. May 12th, 2009 at 1:45 pm

    Dhaval says:

    Well, most of your Answers are very useful and I really appreciate them but I am a newbie, somewhat and I have seen that ubuntu is not the best OS for switching. It left a very bad taste in my mouth. It was full of problems and I had to go to Google every five minutes for one thing or another and even then, it was too much.

    As for GNOME and KDE I’ll quote the statement I saw while installing openSUSE (several times because I… nevermind) that “It’s purely a matter of preference.” So guiding someone to GNOME seems kinda wrong.

  19. May 12th, 2009 at 10:51 pm

    Steve says:

    75% of comments will nitpick minute details of a good article.

  20. May 13th, 2009 at 12:34 pm

    jenna says:

    Paper is FAR better than plastic. Plastic doesn’t degrade, and you end up with flotillas in the Pacific the size of Texas (with only a very small exaggeration on my part there).

    Paper comes from both recycled resources, as well as renewable resources. Trees harvested for paper production are replanted (we’re not talking forests that are clear-cut for farming, that’s a different issue).

    Unless you’re saving bags to clean up dog poo in your yard, go with paper on the bag.

Leave a Reply


Need a new job?