How to tell a geek
catherinedevlin.blogspot.com
catherinedevlin.blogspot.com
Saying things like, "All geeks..." "Every geek..." "Geeks will always..." is just wrong.
Makes no more sense than saying, "All lefthanders..." "Every woman..." or "Nebraskans will always..."
There are as many kinds of geeks as there are geeks (NbrOfGeekCategories == NbrOfGeeks). Sure, there are a lot of generalizations, but we are all unique.
I bathe regularly, socialize often, have never watched Star Trek, don't play video games, and enjoy sports.
OTOH, I plot out every trip on Google maps before leaving home, schedule my day out in half hour increments, and place my things out in the morning to be picked up in the proper order. I have to go through the supermarket counter-clockwise to optimize filling the cart. If I learn a new fact, I'm looking for the general rule about 6 seconds later, and am plotting out use cases within an hour. I'll probably have some code written, too.
Is there anyone out there just like me? I didn't think so. (Thank goodness.)
Seriously, are you suggesting that part of "geekiness" is a tendency to think through and design an approach before doing anything? Or maybe that it's a skill for rationalizing any approach afterwards?
One of my first jobs was maintaining a national phone book library: 50lbs of new books in and 50lbs old books out every day, just the kind of thing to keep a 15-year-old busy all day. Within a couple weeks I had redesigned my pipeline to reduce labeling errors and speed the whole thing up by a factor of 2 or 3, which meant I could do other work as well (which lead to me learning print design, then animation, then programming).
I was not planning ahead, just bored, and it seemed normal to me. I was shocked when I tried to train my replacement: she stared at me like I was from Mars. I tried to explain how she should sort the new books first by state, not size, rip through the label printing process in one shot, remember that the list is now backwards when you apply the labels, spot-check every tenth book (ie, when you hit a perforation in the label fan-fold)... etc. She just went on with print-stick-shelf process for each book, and it took her all day.
Saying, "all geeks" means she sees something as a trend. I suppose her wording was a little bit stronger than it needed to be, but I doubt anyone reading this would suddenly take it as a definitive guide to geekdom.
You must really hate political speeches.
All things being equal, Earth Final Conflict was better...
I also know I'm responsible for work happening on days when I spend all my time reading HN...
Being a geek is more about fun, it is not about how well you can optimize.
This has lead to more than a few days of me sitting at my desk and browsing HN in the afternoons. I soon hope to finish a program that will browse HN for me so I can go home early.
In my opinion, this is the largest problem with unit tests and TDD. Much of it (though not all) is the type of boring work that lazy programmers dread. Calling it "professionalism" and saying it's what good developers are supposed to do doesn't help.
I'm not sure what the answer is for overcoming this. Dynamic languages help by cutting down on the amount of code. However, it still seems like we need better tools. Perhaps a way to convert a stack trace into a test? Or maybe a repl-to-unit-test generator?
Creating an application is fun, there's no monotony on it, in fact you don't repeat code, if you need it again, you can recall it.
Grease ebowl tasks are annoying and boring so no one wants them.