Crash Dot Com Part 8: Home Again

By Shamus Posted Thursday Dec 29, 2016

Filed under: Personal 39 comments

The tail end of this series overlaps with the start of another story in my life. This entry is where they intersect. So I’ve re-used a bit of text here to help set the stage. No, you’re not going mad. You’ve probably read bits of this before.

It’s midway through the year 2000. I’m 28 years old. Heather and I have been married three years. Rachel turns two this year. Our daughter Esther was just born. My dad is dying of cancer. He’s still talking about living to be 100, but the odds are so ridiculously long that I hope he’s just keeping up a brave face and a positive attitude and not in open denial. Or maybe he’s just kidding. It’s always hard to tell what’s really going on in that maddening, muddled head of his.

He’s never been very fond of going to the doctor, and by the time he got around to having himself checked it was years too late. They’re apparently calling it “intestinal cancer”, but the mass itself is a sprawling and ambitious thing that’s glommed onto his liver and a few other organs during its long and greedy lifespan. My brother explains all of this to me on the phone. I’m 600 miles away in Boston.

Boston

We never took a picture of the outside of our condo. This one was swiped from Google Earth.
We never took a picture of the outside of our condo. This one was swiped from Google Earth.

Living in Boston is not working for us. I’m feeling restless and missing my parents and siblings. We don’t have a lot of friends here. Since we only have one car, Heather is usually trapped in our little condo with the kids all day. I got a raise when we moved here, but it wasn’t nearly enough to cover the massive spike in cost of living between Pittsburgh and Boston. The dot-com bubble is just now starting to pop, and Boston is a ridiculously expensive place to live. Like a lot of young couples, we’re making the mistake of throwing unexpected expenses onto a credit card until we have the money to deal with them. While the numbers zigzag up and down, on balance these expenses build just a bit faster than we pay them off.

My health is bad. Something around here is inflaming my asthma. I’m pretty much always experiencing a low-level blockage of my airways. My breathing is heavy. The doctor puts me on steroids, which diminishes the asthma problem at the expense of making me perpetually hungry. I’ve been gradually putting on pounds for the last decade, but now I’m getting huge. At this point it’s entirely possible that some of my oxygen shortage is weight-related.

Also, the drugs are putting me into a constant state of agitation. My default mood is sort of “mildly pissed off”. That’s how I feel. All the time. Every day. When things actually go wrong, my temper is explosive. I growl and cuss and lose the ability to think straight. This makes technical work kind of challenging. I manage to keep my temper bottled up at work by grinding my teeth and muttering at the computer, but I’m always on the verge of slamming my keyboard into the monitor. It’s not that my job is stressful. I mean, it’s technical work and sometimes technology breaks, but this rage isn’t really instigated by my job. It’s bad medicine, bad health, and bad lifestyle. The job is just the catalyst. If I was unemployed, I’d spend all day at the home being mad at the furniture or the stuff in the fridge.

I can tell this anger is irrational, but that doesn’t make me stop feeling it.

The offices where I worked in 2000. Swiped from Google Earth.
The offices where I worked in 2000. Swiped from Google Earth.

Even ignoring the misery of working on the virtual mall, I really hate working in an office. My bosses are fine and my coworkers are fine, but it’s just so dang uncomfortable. The constant screen glare. The distracting chatter. The ringing phones. The dress clothes. How can anyone be creative and productive in a place like this?

I spend all day talking, so by the time I get home I have no more words left for my wife. We’re turning into the classic couple where the wife has a pent-up need for conversation and the husband has nothing but nodding and grunts. She’s burning to get out of the house, and I don’t want to do anything but sit still and be quiet. We compromise by going out occasionally, but it’s not enough. I’m still going out more than I’d like and she’s not going out nearly as much as she needs.

I'd put on a lot of weight while on steroids.
I'd put on a lot of weight while on steroids.

After months of unhappiness a few key ideas begin to crystallize. Didn’t I TAKE this job because it was fun and interesting? How did this go so wrong? I’m not getting any joy out of it because just about every other aspect of my life is dysfunctional. I’m taking drugs that are bad for me so I can work in an office I hate where I don’t make enough to pay the bills at the condo that’s too small for the family I don’t have time for. Meanwhile, my Dad is running out of days and I’m not spending any of them with him.

This is crazy. I need to get out of here. I need to move back to Pittsburgh.

I plan to tell my bosses that I want to work from home again. I know this is a good job, but I’m willing to give it up if that’s what it takes to get out of this madhouse.

I tell my bosses I need to talk to them. They say they need to talk to me. They tell me they want me to move to working on programming full-time. I tell them I need to move back to PA. They are not crazy about this. I’m so desperate to escape Boston and the virtual mall that I blurt out that I’ll continue making what I’m being paid as an artist, rather than seeing what they offer. I’m going to kick myself for this over the next ten years. They just got themselves a very cheap programmer.

Two weeks before the move I get the call. Dad is gone. I move back to my hometown in Pennsylvania.

Put me in, Coach. I’m ready!

Once I’m home, I end up in a three-way conference call. Lead programmer Roland has finally gotten wind of my promotion, and he’s not happy to have me jumping into the codebase. The call consists of my two bosses in Boston, Roland on the west coast, and me in Pennsylvania. Roland patiently and methodically runs through his objections:

  1. Shamus has never collaborated with other programmers or worked on a large codebase. (I say nothing. He’s right.)
  2. Shamus doesn’t have a degree. (I dislike the emphasis on a degree over accomplishments, but that’s a philosophical debate for another time. I stay quiet.)
  3. If we really want another programmer, we can go to the resume pile and find a dozen guys with more education and experience. (Again, I can’t really argue with him.)
  4. The tricks Shamus pulled adding visual effects to our software might look cool, but they’re not technically challenging and not a good indicator of skill level. (I’m tempted to quibble with this. Being able to spot high-yield, low-cost improvements is itself a skill, even if implementing those changes isn’t particularly hard. But this doesn’t feel like the right time to have that argument, so I keep quiet.)
  5. If we need graphical effects added, we have two programmers capable of adding them. The lack of graphical improvements thus far isn’t about programmer skill, it’s about management being willing to spend the time. (I slightly disagree with this, but I don’t say anything. I think the existing coders have shown a certain reluctance to embrace graphical upgrades. I believe they’re capable of doing them, but for whatever the reason they don’t see graphics as a priority. I think we can get huge visual gains for a small cost in man-hours, but right now I’m the only one who sees this opportunity. In any case, the question of “What features are most deserving of our limited programmer hours?” is a separate issue so I don’t say anything.)
  6. We have a system for how features get added, and if we turn Shamus loose on the codebase to add random things then everything will be chaos. (Here I finally jump in and assure him that I’m not about to go crazy adding unplanned features to the software. I’m prepared to work within the existing system.)

Roland makes his objections, and he’s overruled. He doesn’t like it, but I’m now on the coding team.

Roland

Roland, a few years after leaving the company. He was an avid bicycler.
Roland, a few years after leaving the company. He was an avid bicycler.

And from this point onward, it never comes up again. You’d never know he opposed my promotion at all. When I make a mistake that causes him problems (and I make plenty) he doesn’t run to my bosses and say, “See? This guy is a screwup just like I said!” Instead he calls me in private, talks about how I messed up, and offers a few tips on how to avoid the same pitfall in the future.

He often reviews the code I check in. Sometimes he finds something that could be done better. The easy thing would be to fire off an email telling me to fix it. The self-interested thing would be to tell the bosses. The expedient thing would be to fix it himself. But instead he does the more troublesome thing, which is to write me an email explaining what he saw, what he thinks is wrong, and how the problem probably should have been solved. Then he lets me fix it myself. This is the most trouble for him and the maximum benefit for me.

When I come up with something clever, he’s always happy to say so. We have a lot of energetic conversations about graphics tricks. After a few release cycles he’ll come to appreciate my ability to get big graphical improvements out of small changes. I’ve gone from being an artist-coder to a coder-artist, and it turns out that’s a pretty powerful combination. He’s always viewed graphical upgrades in terms of huge engine overhauls, and the stuff I’m doing shows that you can get a lot of bang for your programming hours if you know where to spend them.

When I have questions, he’s generous with his time, even when he’s got lots of his own work to do. Sometimes I get lost in the weeds of quaternions and transformation matrices and he’ll step in to help me out.

He is the best boss I’ve ever had, and – barring a miracle – ever will have. But maybe it’s unfair to call him my boss. Our working relationship is nothing like the other supervisor/minion situations I’ve been a part of. He outranks me, sure. But I follow his lead because I respect and trust him, not because his name is higher than mine on the org chart. For his part, he never pulls rank on me and insists on his way, but instead prefers to discuss things until one of us is persuaded.

Roland Vilett left Activeworlds a few years later and moved on to Maxis. If you’ve got an old copy of Sim City 4 lying around, you can fire it up and see his name in the credits. My time with him is one of the few things that I miss about the corporate world; I’d love to have the chance to mentor someone else the way he mentored me.

I’d always planned on thanking him for his support and knowledge. I waited too long. In June of 2015, He was struck and killed in front of his Oregon home by some teens street racing their sportscars.

But what about The Virtual Mall?

Now that I’m off the art team, the task of completing the mall falls to the rest of the artists. They’re good friends and I hate to see this mess dumped in their laps. Mike – who will be leading the project from now on – dismisses my apology. He doesn’t mind at all. He wasn’t at the meetings and so he’s not soured on the project. We spent a lot of time shaking our heads over the “Can of Beans” design and making fun of the more absurd design decisions, but he sees the project as a goof and not as a Kafkaesque nightmare.

In fact, Mike is pretty happy I’m moving to the coding team. Being an artist and a gamer, he’s been campaigning for ages that we need more graphical tools, better lighting, and more features to make worlds look better. He’s happy to see me switch to programming if it means we’ll get more features that are important to us.

Still, our company is somehow attached to this mall in a financial sense, and nobody knows how it’s going to turn out…

 


From The Archives:
 

39 thoughts on “Crash Dot Com Part 8: Home Again

  1. Neko says:

    Damn, that sucks about Roland. I had the pleasure of an excellent C++ mentor in my last job, taught me a great deal about the maddening intricacies of it all. Also knows a lot about quaternions. I should drop him a line sometime.

  2. Mousazz says:

    Wow. Since I’m only 20, I see your actions belie experience WAY beyond mine. Even though I’m a comp sci student myself, I still have a hard time wrapping my head around how my life might look like in the future. Glad you’re sharing this with us, Shamus.

    Oh, by the way, you went from an artist-coder, to a coder-artist, which is a powerful combination. Well, what about your colleagues? Would you say they’ve shown a lack of creativity or spark to create at times? I myself am a guy who, whenever he boots up Minecraft, fails to think up anything inspiring to build, and in programming myself I’ve often failed to think outside the box and figure up some ingenious solution to my problems. Is that bad? Are such qualities essential for a good programmer, in your opinion?

    1. DerJüngerLudendorff says:

      As a CS student who also has trouble coming up with creative and inventive solutions, I would also like to know how important this is for a coder.
      Can the people with actual coding jobs give us some idea how much they actually need to do their jobs? Does it vary a lot depending on your project, specific problem you’re trying to solve, or your area of expertise?

      Also, congratulations to Shamus for managing to get his life back on track after all the misery he talked about in the series from the first paragraphs.

      1. Phill says:

        It varies greatly depending on what job you are doing.

        I’ve had jobs where I was hammering out lots of code in small teams and the ability to write flexible, clean and (most importantly) understandable code was the main skill required.

        I’ve done scientific simulation coding which is usually pushling the limits of what you can achieve – whenever more computing power is available, simulations get more detailed to take advantage of it. This sort of work often did require finding creative ways of getting more done, finding computational shortcuts or of managing the data. And when you are doing that sort of numerically intensive number crunchingm finding efficient algorithms that scale suitably is important.

        What I’m doing now is part of a bug fix team for a huge project, so I’m spending very, very little time writing code, and generally forensically examining logs, bug reports and code that I know virtually nothing about to figure out what has gone wrong and how to fix it. I probably average writing one line of code per week. But understanding the design patterns other people have used when you just have the code and no access to the coders is very different to previous jobs.

        So three different jobs that I’ve done, and they all require very different skill sets.

        Part of the skill of being happy working as a coder is finding a position where you can use your strengths and stay away from the things you aren’t so good at or that you just don’t enjoy. The good news is that coding jobs are very varied and there are almost certain to be positions that are a good match for you out there somewhere.

        1. tmtvl says:

          I haven’t done scientific coding, but I fully agree with no° 1 & 3. And if you’re looking to go into game development (don’t, seriously, don’t), the guys who work next door to us have told me that being able to get everything done with the tools that are used in-house is the most important thing.

        2. Falcon02 says:

          I’ve always wondered how these more complex Science program projects are managed. It seems like the programmers should be experts both in Comp. Sci. and in the scientific field their code is designed for.

          They need to have a good understand of programing and how to effectively manage a complex coding project, but also have a good understanding of the scientific systems they’re trying to model. More specifically, as a programmer you need to figure out what algorithms you need to use, and how do you integrate them together into the system. Many of those algorithms can get quite complex and understanding how to use them effectively can be challenging, especially without expertise in that scientific field.

          Subject matter experts don’t necessarily have the best programing skills/habits, and expert programmers don’t necessarily have the subject matter expertise to understand the systems they’re trying to model.

          I’m doubtful you get a lot of programmers with such dual expertise on such projects, and yet these complex scientific simulations get done, and work pretty well…

          Perhaps in practice all the programmers really need is their own mathematical expertise, and once given the algorithms by the experts and a high level explanation that may be all they need to put it to code… but I feel like such systems can get a little too complex… needing a bit more than that…

          1. Nose says:

            In my experience you still tend to get a division of labour in the numerical science projects, but less extreme. You get the ‘science guys’ who can wrangle the problem into an efficient form on paper then write it up into mediocre code, and the ‘implementation guys’ who can understand the problem and science guy’s solution once shown it, then translate the poor code into efficient code. Both can do each others job to a lesser degree and there isn’t a strict split, but people tend to gravitate to one role or the other.

      2. Will Riker says:

        You guys will be fine. Coming up with creative solutions isn’t something you’re magically born with; it’s a skill you develop just like anything else. Right now that you’re at the beginning of your programming career, everything is new and you don’t really know what you’re doing. It can often feel like you’re stupid, but really you’re just learning.

        People have this idea that “creativity” is somehow pulling genius shit out of thin air. It’s not. It has more to do with being able to take stuff you already know and apply it in a new way. When you’re new to something, you don’t have enough of a built up library of “stuff” in your head to be able to come up with creative solutions. The more time you spend programming, the more you will build up this library and the more often you’ll find yourself coming up with creative and inventive solutions to problems.

        The only advice I would give is this: have hobbies besides programming. Because that mental library I mentioned? It’s not neatly cordoned off into sections like “programming” and “art.” Everything sort of mixes together and inspiration for a beautiful piece of code can come from anywhere: something you remember from biology or learning guitar or reading sci-fi can become the seed of a great idea. Eventually you build up such an intuition for this you don’t even realize that’s what’s happening, and it really DOES feel like you’re pulling genius shit out of thin air, when really it’s this whole process going on subconsciously. You don’t get there by somehow being magically “creative,” you get there though a lot of hard work and experience.

        That was a bit rambly but I hope it made sense.

        1. Falcon02 says:

          I do agree with this assessment quite a bit for general technical creativity…

          It might be a bit overly generous to call myself a “programmer” in a professional sense. My job is focused on the maintenance and operation of complex systems I don’t have physical access to (I operate satellites) rather than coding. However it does periodically involve a bit of coding now and then to build/update tools or modify operational code. I certainly know how to write code in general in a few languages, but I don’t consider myself an expert on it.

          When it comes to Minecraft I have the hardest time coming up with any more than the most utilitarian of things to build… oh I need a house, let me make a simple square box… oh I want it to look nice…. let me make it out of wood or smooth stone instead of dirt! My creativity in an aesthetic sense is not well defined. I approach things from a fairly pure engineering perspective and create what’s “needed” often building up… creating something messy.

          However, when it comes to my technical work I feel I tend to be very creative in my solutions. But it largely comes from over time gathering together an understanding of the various bits and pieces of the system, how they work, how they work together, and knowledge of the experience of other missions.
          When approached with a problem I kinda run through in my head all these different resources we have to resolve it, and think through how we could get it to work for the problem we’re facing.

          Think about the scene from Apollo 13 where they have to design a makeshift adapter for the CO2 scrubbers. No one magically thought “this is simple, just put these things together.” They started from the ground up, they thought through exactly what they needed to do to get the job done, “find a way to make a large square filter work in the small circular slot designed for something else.” They then broke that job down even further, “need an air tight seal around this section,” “need some way to connect the two together”, “Need someway to ensure proper air flow.” You then play around with all those things with what you’ve got, and after a while you come up with something that works…

          https://www.hq.nasa.gov/alsj/a13/a13_LIOH_Adapter.html

          1. MrGuy says:

            I’d also like to add that “creative” is a term like “smart” that describes a multi-dimensional set of aptitudes, some of which are innate and some of which are learned. And it’s hard, and usually wrong, to look at it as an absolute scale (“Person A is smart, Person B is not smart, Person C is less smart than A but smarter than B”).

            To take us out of programming for a second, consider all the skills that go into being a good cook. There’s a knowledge of different preparation techniques – just knowing what techniques are out there and how to use them. There’s technical proficiency with various techniques. There’s knowing ingredients – how to handle them well and what preparations go well with them. There’s knowing flavors – what combines in a pleasing way. There’s presentation – how can you make something that looks good on a plate.

            Not everyone is at the same level on all of these skills. People consider me a decent cook. I’d say that I have a decent judge of which flavors work well together, and I know about a variety of techniques. So I know how to “remix” a recipe that I like to make something else that tastes completely different (apple-glazed pork chops vs. chicken marsala). Some people call that “really creative” even though in my head I’m mostly logically extending something I knows works over here to a different domain where I feel like it will also work well.

            Is that “creative”? In some ways it is, just as someone who is a great music producer and can make an amazing mix of a song is creative. But it’s creative in a different way than someone who can put notes together in a pleasing way, or write evocative lyrics is creative, and not all people who are good at one are good at all of them.

            Some of the best programmers I know don’t think of themselves as “creative” – they see their skill as recognizing where we need to make interesting choices, and based on experience applying the best technique for the job at hand.

        2. My job doesn’t exactly require creativity (I clean big things), but my writing definitely requires some thought.

          Since I really only started to take my writing/creative work somewhat seriously this year, I’ve noticed I still have trouble with stringing thoughts together and having something make sense. I’ve also, however, noticed an improvement in thinking things through and explaining them over the last year.

          So yeah, I still have a hard time, but since I started I’ve noticed my creative process is becoming a little easier to work with, though slowly.

          I imagine programming work comes with time just the same.

      3. Kian says:

        I’m a programmer, have been for close to a decade now, working with C++. I think coming up with “creative” and “inventive” solutions is over-rated.

        Understand the problem. Come up with the simplest solution that works. Move on to the next problem. Don’t try to be clever.

        There’s a simple formula at work here: it’s twice as hard to read code as it is to write it. If you are as smart as possible when you write the code, you won’t be smart enough to understand it when you need to debug it.

        1. Alex Broadhead says:

          I was going to say something along the lines of, “Programming is mostly problem-solving.” There is really fairly limited opportunity for ‘creativity’ or ‘invention’, in general, though software engineering very definitely is both science and art. I’ve met coders who had no real artistic ability, who could brute force things and pretty much nothing else, so they do exist, and their failure proves that there really is a need for ‘art’ or ‘elegance’ or what have you. But the real need for creativity is generally in the high level design and/or the design of the structures and algorithms. At a lower level, programming is doing puzzles with a fairly small tool set – you get faster and better at it the more you do it and see it done.

          The reason that being an ‘artist-coder/coder-artist’ was especially powerful, was that Shamus could understand the problems the developers were tasked with solving particularly well, as they were often artistic. This allowed him to suggest simple code changes that resulted in big artistic payoffs. This doesn’t really have to do with creativity or invention, but with specialist knowledge of the problem being solved with code. The same is true in my job developing soft- and firmware for mixers and speakers: it’s hard to come up with good solutions if you don’t know much about audio engineering, but we certainly have a number of audio engineers who aren’t developers and developers who aren’t audio engineers, as people who have training in both disciplines are relatively rare.

        2. Falcon02 says:

          The goal should never be to create a “creative and inventive” solution for it’s own sake. If that’s all you’re doing, then you’re spending effort to show off rather than solve the problem.

          But sometimes the best solution to a particular problem requires some out of the box thinking to come up with.

          But I do agree, the solution/code should still be understandable in the end. Taking 20 lines of code down to 5 is not necessarily helpful, if the 5 lines of code are nearly indecipherable. But sometimes the 5 lines can be much simpler than the 20 lines and easier to follow.

          Quite a few times I’ve encountered of code where the author used this odd long form logic to accomplish a job taking a dozen lines or so broken into specific parts, rather than using 1-2 lines of code that were much easier to read.

          This is also why I try to encourage people to comment code so much… even if you’re the only one who’s going to look at the code, when you have to review it again a month or two down the line you’re not going to remember exactly what you were doing with all those if statements and while loops…

          My proudest piece of commented code was a PHP script I knew I had to pass onto someone else, designed to make an on-demand graph out of some requested data. Since I knew the code wasn’t that straight forward and I had to use too many variables to count I had a page or two at the start to define what each variable was used for, and then commented throughout each what each “section” of code was doing.

        3. Retsam says:

          I’ve always taken some issue with that truism’s implication that you should code with half of your brain off, because it actually takes a fair bit of cleverness to write really good readable, maintainable code.

          Certainly the idea behind that truism – that simple solutions (where possible) are better than complex solutions, but hard-to-read code isn’t a sign that you’re being too smart, if anything it’s a sign that you aren’t being smart enough.

          The real mistake, that I think the truism is trying to attack, is that some programmers try to write code that makes them look clever, while the really clever ones write code that looks simple.

          It’s like writing: there are people who pontificate with prodigious phraseology in order to look impress others, but the better writers express complex ideas simply: it looks easy to write that way, but it’s not.

          1. Kian says:

            I agree, I wanted to stress it however because of the guys above worrying that they couldn’t come up with creative solutions. Which sounds like they’re worrying about the wrong thing.

      4. Cuthalion says:

        I’ve been programming professionally for a bit over 2 1/2 years now, as a web developer. (Python/Django)

        I think the creativity you’re worried about just comes with practice. Programming isn’t a set of solutions to memorize and then hope that the next assignment/project needs one of them. It’s a toolset. Think of all the programming concepts you learn as tools in your toolbox. The more comfortable you are with them (through using them here and there and knowing what sorts of problems they solve), the more you’ll be able to combine them in creative ways to build and fix things. You probably won’t even realize you’re being creative until afterwards!

      5. DerJüngerLudendorff says:

        Thanks to everyone who took time to answer our question! It’s been bugging me for a while, and your answers really helped put things into perspective! And of course it’s always interesting to hear from people who actually work in the field.

  3. King Marth says:

    A few months ago, I took some advice and sent emails to my previous bosses and mentors, thanking them for the guidance they gave me and asking about how they had been. One of those notes, sent to the first person I ever worked for, was answered by his wife who took over the company after he died roughly a year before. In retrospect, there’s some dramatic irony to receiving a heartfelt note of appreciation on behalf of a loved one, but I think the gesture was still worthwhile.

    It isn’t the same when you know they are dead before sending the message to their family, as then you don’t have the excuse of ignorance for bringing up the bad side of the memories while offering the good. Still, it might yet be worth reminding them that Roland was a great guy, even to those people for whom a more cynical person would expect he’d let that effort slide.

    1. Falcon02 says:

      Years ago (late 2007) a coworker of mine died suddenly (same age as me at the time, a year or two out of college) only a month after getting married. He left huge impression upon everyone that he worked with in his short time at my office.

      A year or two later the office wrote up a letter to his family reflecting on his time working here and how he’s still remembered. We got a very nice letter in response from the family appreciative of the letter and reflecting how he has always spoke happily of working with us. We still have that letter posted up and a picture of him in remembrance. Though sadly the number of people around here that remember him has dwindled over the years, that letter of thanks from his family remains a bittersweet reminder to me of his short time here.

  4. Oleyo says:

    This is a very touching article. It was strange for me to hear about Roland at the time, since I had never met him, and only heard his voice on the rare occasions where I answered the phone and he was looking for yourself or someone else. (I am the ‘Mike’ of the article, if anyone is curious.) I am glad that he was so helpful to you after the initial strife.

    I was indeed glad to see Shamus on the programing team, as he was so clearly good at it, and enjoyed it so much more than making content. It was bittersweet for me as well since our discussions were some of my favorite memories of that job, and you were sorely missed around the office afterward.

    I sometimes joke that I was Shamus’ first ‘fan’, since we got on so well on the job (dang, we were so young) We are definitely on the same ‘wavelength’ for interests. While I wasn’t an artist-coder, I was definitely a techie-artist, and was endlessly fascinated by the function the environment I was building for. Thanks to Shamus, I had the guts to actually write a Python script to build an exporter for Blender, so that I could stop using the TruLy awful TruSpace.

    Later we would get to talk on the phone occasionally, but it could only go so far before ‘Roger’ might come over and tap his watch, lol. Shamus always had a knack for writing / explaining, even back then.

    It shocks me to think that you have grown children that didn’t exist last time we spoke. Glad to see you doing well, Shamus! I am still here enjoying your work after all these years. Please give your warmest regards to Heather for me!

  5. Zak McKracken says:

    Ouch! I cringed when I read the line aboout keeping the artist salary. Both me and my wife made similar mistakes once. You’re in a personally problematic situation but management filters out anything you tell them about it because it’s not their problem. There is absolutely zero comprehension about anything that might help you, even if it would be super-easy to do so on their part. Unfortunately you have also little comprehension as to what you’d have to offer to get them to help you out. There’s not even many ideas as to what they could be doing apart (they’re not telling) or what is holding them back — so you just give them what you know will work, which is likely way out of proportion.

    In my case, I ended up with a part-time contract which would cover only a part of a project which needed to be finished, although I would have happily done the whole thing. This put management in a tight spot because they needed to find someone else to do it, and setting these contracts up was a pain for them, and it meant I had to spend a few months without a salary for no good reason. Oh, and they were mad at me for making them set up such a short-term thing (which I never asked for but I had no idea what the options were so I had to suggest whatever I believed they thought would be acceptable…)

    Dear management people: Employees are humans and would really appreciate if that was acknowledged. Honestly trying to make an eomployee’s life easier and cooperating on that front just a little can give you not just a lot of respect but also way happier employees.
    Also, if you think I’m not understanding your side of the equation, feel free to explain! I’m not trying to screw you over, just hoping to avoid going mad.

    1. Hal says:

      Eh, the problem is that a good number of employers are cheap weasels who will try to pay their employees as little as they can get away with. There’s the standard ways of doing this: Hiring young people straight out of school (with or without degrees), hiring foreign workers, using contract labor, etc.

      Other methods tend toward the psychological. For example, the prohibition on discussing salaries amongst one another is usually attributed to this. Employers will say they don’t want employees to assume levels of importance or authority based on the salaries. What will get admitted off the record is that they don’t want employees to know how much they might actually be worth. If John has been with the company 5 years and is making $50k/yr, and Jane has been there 5 years but is making $70k/yr, they don’t want John making a stink about his pay.

      1. Zak McKracken says:

        I’ve always been very reluctant to discuss pay for a different reason, which is that it makes people envious and/or erects barriers between people. I’ve always worked in places where the pay is mostly determined by a list, so there’s little use in comparing pay between people with equal job descriptions. Mentioning pay to family or friends, or possibly co-workers with different roles is really awkward: Either I make more than the other person, then it looks like I’m bragging, or I make less, then it looks as if I’m whining (or trying to brag, and failing). Either way, somebody will feel bad afterwards, and it has a very real potential of erecting barriers between friends if you bing up the differences in pay between them at the wrong moment.

        In the affair I mentioned above, the solution we arrived at was actually sub-optimal for me and bad for my employer because it delayed a project. It was also bad for my line manager because he had to organize two consecutive “custom” contracts with HR. I only later saw what kind of crap he went through to make that happen. Afterwards I realized there would have been a much easier solution for both sides, but the guy had simply made a mental wall between his brain and other peoples’ non-work problems (possibly for the very reasons you mention!), which ended up working against everyone.

  6. krellen says:

    I read that whole section about Roland thinking “Wow, this guy sounds like one of the greatest people ever”, and then that end broke me. I’m sorry you never got to thank him, Shamus, and it sounds like the world is truly poorer for his loss.

  7. Lazlo says:

    So, first thing, what you say about your conversational abilities being exhausted at work: From my own personal experience, that’s not an aspect of work environments, that’s a gender thing (or maybe a techie/engineer thing). I telecommute and will often go days without communicating with a single person not living in my home. My wife works a job where she’s talking with people most of the day. Yet still, her need for conversation with me *far and away* exceeds my need for conversation with anyone.

    Second: what you say about good bosses is so incredibly true. In the past twenty-some-odd years, I’ve worked for (I think) fifteen different companies. In that time, I’ve had a grand total of four bosses. That has happened because those four bosses were so *amazingly* good that whenever they left a company to work for someone else, I would follow them without a moment’s hesitation. A good, supportive, helpful boss is an amazing joy.

    1. Mr. Son says:

      Despite being male and having that issue, I would not say it’s a gender thing. I’m more inclined to call it a techie/engineer or rather a personality thing. Because I’m an autistic introvert and socialization drains me. Doing no work all day and spending 7 hours chatting with my best friend is as mentally exhausting as working on my writing, and I’d compare it to spending the day cleaning my apartment.

      But I know plenty of men who relax after work by going out with their friends to a bar. Which for me is the opposite of relaxing. Not only does talking take mental energy, but being out around strangers where I have to watch my behavior, not to mention the noise of the bar, would just ruin me. I’d have to sleep in the next day.

      1. Syal says:

        Definitely not a gender thing, the entire left half of my family will talk you deaf if you let them. There’s a running joke that my uncle works in a vortex because you’ll walk in to hand him something and when you walk out two hours have passed.

        And then my instinctive reaction to someone trying to talk to me is to throw something at them.

      2. Galad says:

        To add on to the going to a bar bit – I would almost never go to a social place outside by myself, unless I simply want to eat a meal and move on to wherever is next. However, if one or more of my not-that-many-but-enough friends calls me, I’d love to go out wherever with them.

    2. Kathryn says:

      It’s an introvert thing. Hubby and I both have to talk too much at work and have to force ourselves to talk when we get home to each other and our kids.

    3. Zak McKracken says:

      In addition to the stuff already said: I think the desire to talk about stuff is mostly dictated by the situation you’re in, the way you prefer to deal with good/bad situations, and your relationship to the person you may or may not talk to.

      Shamus has learned early in life to not bother people with his problems, so it’s logical that after work, if things aren’t going too well, he’d prefer to just swallow it and not complain to his wife, especially since it was him who convinced her to move to Boston etc.. He’s got really good reasons not to complain, especially not to Heather. But then, looking all fresh and happy when you’ve tried all day to keep a straight face in difficult situations — also not too nice an option.

      I’m a techie/engineer by profession and at heart, and talking with people who I know will react in a friendly way to what I have to say is a very very good prospect. Even talking about problems (mine or my significant other’s) is fine, because we’ve established a tone that’s reasonably constructive, and I’ve always be the person who rather mentions a problem than buries it and hopes it does not come back. Well, in most occasions, but I guess everybody has moments where talking about a problem will not help, and talking about something else seems like pretending. Recognizing those moments (most of the time) is what years and years of talking allows me to do.

  8. Having a mentor is always a helpful thing when it comes to work. I had one that I unfortunately disrespected a couple years ago, and to this day I still regret doing so, even if it was done out of immaturity. There’s a lot I could’ve learned from them, but I left.

    Aside from that, this coding business sounds complicated. How long had you been coding up to this point?

    1. Shamus says:

      Well, I started “coding” in 1984 when I got my first computer. But that was writing simple programs in Basic.

      I learned C in the summer of 1990. But it wasn’t until 1995 or so that I began using it professionally. And even then it was on self-directed projects to solve art problems. This was the first time I’d be coding features devised by someone else.

  9. Joshua says:

    Reading the link to the earlier blog, Shamus mentioned that he suspects he was held on much longer than he should have been with all of the other down-sizing. If he HAD been paid the appropriate wage, it might also have got him cut sooner.

    1. Cybron says:

      It’s not always a bad thing if you’re underpaid. I was let go from my first (fairly miserable) job to end up at a place that paid 1.5 times as much right off the bat. Of course, it doesn’t always end up so well, but still.

  10. Cilba Greenbraid says:

    Hi from the future.

    Y’know, reading this post today really got me in the feels. Here’s hoping Shamus and Roland are clinking glasses and laughing themselves sideways up above, reminiscing over ActiveWorlds and the youth of the internet.

    1. Paul Spooner says:

      I’d always planned on thanking him for his support and knowledge. I waited too long.

      Ouch, yeah, got me too.

Thanks for joining the discussion. Be nice, don't post angry, and enjoy yourself. This is supposed to be fun. Your email address will not be published. Required fields are marked*

You can enclose spoilers in <strike> tags like so:
<strike>Darth Vader is Luke's father!</strike>

You can make things italics like this:
Can you imagine having Darth Vader as your <i>father</i>?

You can make things bold like this:
I'm <b>very</b> glad Darth Vader isn't my father.

You can make links like this:
I'm reading about <a href="http://en.wikipedia.org/wiki/Darth_Vader">Darth Vader</a> on Wikipedia!

You can quote someone like this:
Darth Vader said <blockquote>Luke, I am your father.</blockquote>

Leave a Reply to DerJüngerLudendorff Cancel reply

Your email address will not be published.