• The Many Shades of Geek

    There are many kinds of people who end up working software development. I’ve been writing code for half a decade now and I’ve discovered that there are only a few general categories people fall into. There are strengths and weaknesses in each category, and you’ll be able to tell which category I think I fall into when you read them:

    • The Doer: This person has a way of becoming a single point of failure. They’re always in the middle of things, and are the person you go to when something has to get done right and quickly. They adapt well to changing requirements. They may be a little anti-social and have other odd habits, but they are forgivable by the volume of work produced. The one thing the Doer doesn’t do well is document things. The Doer sucks at documentating because they’re always writing code and “doing”. It’s always best to pair the Doer with the Librarian.

    • The Talker: This person never seems to get things done, but loves to talk about everything. This person will talk about a product like they actually know it, and will be extremely vocal in meetings, but when it comes time to write actual code, the Talker is nowhere to be found.

    • The Laurel-Sitter: This person probably used to be the Doer, but now they’re tired of doing and want to spend their time telling other people how to do their job and never turning out anything of their own.

    • The Geek: This person is so into new technology and using it that they often miss the obvious (although not as exciting) solution. They’re sometimes hard to corral into doing their job because they’re always out hopping from bleeding edge to bleeding edge instead of writing the code they’re supposed to. They’re great to have around when you’re brainstorming on a new project or problem because they often know a little about a lot of different technologies and can point you in interesting directions. But, they often spend a lot of time in experimentation that they should use writing code they know will work.

    • The Droid: The Droid will do what he’s told, and usually does solid work, but can’t be counted on to always find the best solution to a problem. They’re not someone to go to with those wacky problems. They frequently try to apply the same solution to every problem, even when it doesn’t apply.

    • The Professor: The Professor is somewhere between the Talker and the Laurel-Sitter. The Professor loves to talk about standards, conventions, rules and how they would do things. The Professor’s problems lie one of two areas. Either the Professor spends so much time thinking about tabs vs. spaces or the number of comments he should put in his code that he forgets to write anything. Or, the Professor has never actually written anything using these rules, and their code is extremely messy. The Professor will deny this, but of course you know it’s true.

    • The Inquisitor: This is the guy who makes your meetings more fun. He asks the either impossible or ridiculous question that make people sweat or giggle. They’re good to have around for entertainment sake, but the Inquisitor usually has a little too much of the Professor in him to be useful when actually writing code.

    • The Lump: No one is ever sure what the Lump does, what their role is or why they’re still around. Either the Lump is a legacy system or someone’s relative. The Lump always finds a way to get out of work. They like to procrastinate until the job doesn’t gone, or someone has to jump in at the last second and do it for them. The Lump is entertaining in normal circumstances, but under a deadline crunch, the Lump is likely to discover that no one will talk to him anymore.

    • The Librarian: This is the person you let handle all your documentation. They’re usually OK in the coding department, but never much beyond the Droid. They do put great comments in their code. My favorite use of the Librarian is to send them to meetings and make them take notes, write requirements documents and run post-mortems. Librarians usually have amazing recall when it comes to facts and meetings, and are a great asset to have on a team.

    I’m sure there are some I’ve missed… anyone? Any guesses as to which one I am?

  • And One Fell Out

    I’m sure that if you pay attention to such things, you know that AOL laid a lot of people off today. I’ve been through several (I think this is my sixth or seventh, I can’t keep them straight now). They’re no fun, and it always feels like people have died when I hear they’ve been laid off. I still have a job. Most of my friends still have jobs, but some of them don’t. For those that don’t, I don’t know what that feels like and I hope I never do.

    No one feels much like working right now, but I’m working anyway. Through my cold and running nose, I’m plugging along writing more Java, trying to make things speedy and happy and light. Inside, I don’t feel like any of those things. In fact, the worst part about this is that I’m afraid I’m not feeling much of anything. I’ve been through so many of these that it’s almost routine. The rumors start a week or so before they happen, then there’s quiet as people wait for that knock. There are constant IM’s asking if I know anything, and me asking the same. Then, it starts. People drop off Buddy Lists. IM’s start… “They got X who sits next to me. He’s crying,” and “I guess this is my last day… know anyone who’s hiring?” If they’re lucky, they get to send a good-bye e-mail that tries to sum up years of work, relationships and feelings in the fifteen minutes before their e-mail address is ::poof:: gone and they’re gone along with it. And here I sit, feeling guilty for still having a job, and trying not to think about the imminent re-orgs I know are coming. All the while, I keep working. I keep doing the same thing I’ve done since I got here, through a dozen re-orgs, a new position in a new groups and now a half-dozen layoffs. I’m all alone in my little office… typing.

  • The Man

    Don’t fight the Man… it only leads to pain, my friend.

    To explain, web standards: CSS, DIV’s, XHTML, the whole “separating content from display” nonsense, etc… it’s hard. It’s really hard. It’s especially hard when you have an extremely wide range of browsers to support, a rigid and uncompromising client, a design that doesn’t lend itself to it and no time. But, because I’m a glutton for punishment, I tried it anyway. I went on a windmill fighting crusade to make things “better” and now I’m paying the price by taking this gorgeous, validating, sleek and fast site I’ve built with my two hands and turn it into a hacked up mutant of a thing that works in everything under the sun (except Netscape 4.x, thank God).

    When clients tell you they want it “fast”, you better make sure that they understand what that means. If your client wants a page with a lot of data on it to be “fast”, it can’t have much aside from the data. If you have fifteen K of data, you can’t add fifteen K of graphics, stylesheets and javascript on top it and expect it to load in six seconds over a modem. It’s just not going to happen. Unless you remove some graphics and javascript, you’re screwed and are going to spend the rest of your life trying to fit a cow down the garbage disposal.

    And let’s talk about “users”. What is wrong with you people? Why do so many of you insist on NOT upgrading? Don’t you realize that if you upgraded, things would work better? You have lots of yummy browser flavors to choose from. Personally, I would suggest Mozilla 1.2.1, but you’re welcome to use IE (oh shut up, there’s no way I’m linking to it), Netscape 7, Chimera, Phoenix, heck, Opera will probably even work.

    It’s a losing battle if everything we build is interpretted by browsers that can’t keep up. Unfortunately, there’s no argument I can think of to convince a reasonable business person that denying users of older browsers to upgrade.

    … I’m grumpy. My cold has come back and I can’t sleep, and I’m working my butt off. Excuse my rantings, I’m going to go take some NyQuil.

  • One Word At a Time

    one word. so little time. – You have sixty seconds to write about one word. We used to do that kind of thing in writing class my freshman year at BYU. Go try it out, have a ball.

  • Use Terminal Instead of Finder = Bad Finder

    I’m bored waiting to get sleepy enough to crawl into my empty bed in a house that’s too quiet. I went to blo.gs and checking out all the recently updated sites, and stumbled across Daring Fireball. Interesting Mac-related stuff. The guy’s on a crusade against the Mac OS X Finder, and he makes some excellent points. I have noticed some real problems with it in 10.2 that I hadn’t noticed before. It’s fine for “simple” tasks like finding and opening single files. It’s OK for moving single, or a few files between two windows. It breaks down when trying to move large numbers of files from a single directory to another. Recently, I’ve been moving hundreds of pictures around. If you highlight more than twenty (I’m guessing, it’s usually more than fifty that I run into this) and go to the File menu (like to see the combined size of the selected files), if you move the mouse over Open, Finder likes to freeze, crash and bounce itself, making the system very unstable.

    The troubles I’ve had recently with the Finder remind me of something I either came up with or heard when I started using Linux. I started a looo-oooong time ago with RedHat 5.2. I didn’t actually use the system for anything… it was too hard. After moving out here, I got a copy of RedHat 6.2 and went to town. I quickly realized though that using the file manager was a pain and I could do things faster in terminal. When typing your commands into terminal is a more efficient and painless way to get things done, there’s something seriously wrong with the application. Terminal should be a last resort, especially in OS X. The thing I love about OS X in general is that it doesn’t create work for you. It lets you think about what you want to do, not the gymnastics you have to do to accomplish it. I spent so many years wrestling with Windows, and all its poor usability and learned work-arounds (that just make you THINK Windows is easier…), that when I started using OS X (with 10.1, 10.0 and 10.0.4 were… unpleasant) it was a revelation. Things just work. Installing Movable Type? Drop it in /Library/WebServer, run chown and chmod (in Terminal, but I can make exceptions, it was MUCH easier than trying to install it in Windows) and voila – DONE. Managing photos? Plug in camera, turn on camera, iPhoto starts up, click import – DONE. And now iTunes has even caught up (they fixed my biggest problem with it, not putting track number at the beginning of the filename) and is extremely easy to use. There are some things missing from OS X, but for the most part (I don’t like some of the keystrokes, and I miss having a backspace and delete key), I can do everything I want with it without worrying about it working.

  • En Fuego Con Queso

    I was on fire today. I was on the ball, “en fuego”, all that and a bag of chips and smokin’. I ruled. I was “tha man”. I could do no wrong. I was the master of all I surveyed. I was the king of the hill, the top, A number one, the big cheese, el tigre!!!

    I broke the rules; I made the rules; I kicked ass; I took names; I held everyone after class and made them sniff chalk dust.

    I carried my own weight (plus three other peoples’), towed the line, went the extra mile. I thought outside the lines, shifted paradigms, stuffed big blocks into small holes, made large buildings disappear using the power of my mind and bent spoons.

    I got an amazing amount of work done today amid a sea of interruptions. I created something so amazingly cool, I’m half-tempted to show it to you all now and risk getting fired. But, no, I will wait until February when I can unleash it on the unsuspecting world. I wrote code, troubleshot other peoples’ problems, fixed them, then my own, rewrote things to make them faster and created some wicked stuff. I am extremely proud of myself (if you can’t tell). I worked my ass off today and produced some good stuff.

    I also got offended that someone would question me, wrote a possibly ill-advised word missile and sent it to not only my boss, but my boss’s boss, and several other important people. It was fortunately well received (thankfully, I came to my senses and editted out all the swearing and insults). I called my code a “work of art” and meant it (and I still do).

    Jen and Max come home tomorrow and I couldn’t be happier. Tomorrow will be spent cleaning the house, finding winter coats, making dinner for them and twiddling my thumbs until it’s time to pick them up.

    I think I’ve been at work too long…

  • The Snow@AOL

    I made it in to work to bring you: Snow@AOL.

    The drive in was a blast. Four wheel drive, ten – twenty miles an hour the whole way, the roads are a disgrace and I had way too much fun doing it.

    If it lasts much longer, it won’t be so much fun, but I love the first snow of the year. It makes me feel alive and full of wonder. Falling snow always makes me think of Iceland, walking to school in driving horizontal whiteout conditions, playing for hours in our rock fort, bundled in our snow suits, water-proof wool mittens, moon boots and ski masks. We’d sled down the old volcano outside the base in refrigerator boxes from the Exchange and have snowball wars with the kids in the neighborhood (I think there were maybe ten of us, ages five – 18).

    I know I’ll tire of the snow pretty quickly, but today it’s beautiful.

  • A Winter Wonderland

    It’s snowing!! I was so excited last night, I couldn’t sleep. 5-6″ so far and more coming down. I’m gonna see if the camera will wake up and am gonna go take some pictures then crawl into work in my 4×4.

    The snow started around 11pm. At midnight, I used taking out the trash as an excuse. There wasn’t much snow on the ground, but it was coming down heavily in small, fast flakes. I love the sound of snow when there’s no wind. It’s a collective whisper of the thousands of flakes hitting the ground, the cars, trees, etc. It was gorgeous.

    Ok, enough talking, time for picture taking. Expect some soon (if I can find the USB cable).

  • The Last Little Frankenstein

    You have to love a comic strip that can make dying funny. I’m gonna miss the little corpse.