Tag Archives: work

All things relating to work, and all things work-related. This could be renamed “stress” or “bain of my existance” or “where there are always too many witnesses”. (And I love my job.)

Going mechanical…

I’m geeking out over my most-recent nerd upgrade.  A mechanical keyboard.  And not just any mechanical keyboard, but a mechanical keyboard designed specifically for programmers.

http://codekeyboards.com/

The funny thing is that this will probably end up being at work 90+% of the time, since I don’t actually do a lot of programming at home.  (But maybe that would change if I had a keyboard like this.)  Anyway, my work keyboard is just a cheap generic HP keyboard that came with my PC.  I swapped it out for a Microsoft Natural Keyboard for about a week before switching back.  But the cheap keyboard isn’t pleasant to type on.  Indeed, I would prefer my laptop keyboard to the one I have at work.

So I’m joining the keyboard cult (a term used by Jeff Atwood, co-creator of the CODE keyboard).  I’m pretty excited about it.  I spend 90% of my working day in from on my computer, and probably 90% of that with both hands on the keyboard.  If this makes that time more enjoyable, then I’m all in.  I just hope the keyboard isn’t too loud.  I mean, a little bit would be great, but not too much.

Currently listening to “Open Your Eyes” by Snow Patrol

I’m mostly likable…

This post is a story.  A story about the workplace.  I generally try to avoid the topic of work ever since I started working at a company that has bi-yearly confidentiality training.  But this story is about my interactions with people, not anything product-related, so I think I’m safe.

It’s been a bit of an interesting year.  Around the end of last year, I was extremely busy.  But around the beginning of this year, there was a project that I needed to be moved to (I was still busy, but not as bad).  Another engineer had had the project for 4+ months and was struggling to get the software on a new platform into a production-worthy state.  In all fairness, he was completely out of his element.  Our manager had decided to let him spin his wheels–sink or swim–and he sunk.  When I got brought in to audit the code, I found numerous errors, and many code releases went out without fully resolving these errors.  I took over, and the previous engineer was given a workload that required far less development–because it was maintaining programs that I had worked on for the past two years.  The majority of the maintenance that I was doing was given to a second engineer so that I could focus on the new program/platform.

In two weeks, I had completely overhauled the program, stripping out all unnecessary bloatware and simplifying the work of future engineers.  I don’t mean to toot my own horn, but it was simply a difference in skill sets–having the right man for the job.

Unfortunately, during the auditing process of the first engineer’s attempt to develop the code, I called out a lot of his mistakes.  You have to understand: multi-million dollar decisions could be made based on the data gathered by these programs–we can’t afford to release bad code, literally.  But at one point, there was even a slight confrontation between this coworker and myself.  We had had a meeting a few days previous, and he had been given an action item to change a number of things in the code.  I took it upon myself to modify a script that I had written to check the code for needed changes.  I modified the script, but this engineer didn’t ask me for the data.  Instead, he made a couple changes and then made a program release.  When I caught the error–that the agreed-upon changes had not been made–I sent out an email to him and our manager(s).  His quick response was that he thought the script had been run and that everything was fine–basically, he pushed the blame over to me because I was in charge of this script that should have done his work for him.

As fate would have it, neither his manager nor our common manager was at work that day.  I was mad.  I don’t remember now if it was the same day or the next, but at one point I asked him point-blank, face-to-face if he was blaming me.  Oh, he quickly backed down from that one.  No, he wasn’t blaming me (now).  And then later he has the gall to say to me that “he would appreciate it if we didn’t use raised voices” in further discussion.  I had to just turn on my heel and walk back to my desk before I hit him in the face.  (Don’t worry, this coworker is still alive, and I happily help him at least once a week, albeit, slightly amazed at the simple debugging that stumps him–he’s not a programmer.)

So when I took over his project, there may have been some feeling that I took it from him or got him kicked off the project.  And that’s partly true.  I told my boss to put me on the project.  But it wasn’t because of any ill-will.  I wanted the best for our team and the best for our company.  I wanted the program done right.  And yes, I was the guy sitting on the bench, yelling, “Put me in coach!  Put me in!”  I wanted to jump on that sinking ship and save it.  And I did.  I threw out any work the previous engineer had done (it was in a completely wrong direction, an example of “better to start over than try to salvage”).  I started with a fresh fork of the program (we borrow code from another group).  And I’m not exaggerating when I say that I had a stable production release within two weeks.  My coworker, bless his heart, did not understand the program, didn’t really know what he was doing, and he was only able to complete a fraction of the total program requirements.  I mean no disrespect, but I can say with complete confidence that he never would have gotten the program where it needed to be.

Well, most of this is water under the bridge.  It’s been over 4 months since this all went down.  And like I said, my coworker comes to me for help with his current work.  And I like him–he’s a nice guy.  Not a great programmer, but very few people are.  I sometimes get frustrated that he’s working 100% of his time on something that used to be ~10% of my time, but I’m doing my best to deal with the fact that not everyone works at the same rate.  But despite my griping, I want to get along and work well with him.  And I think I do.  At least I hope I do.

So fast-forwarding to today.   I think me and this coworker above get along alright–we’re able to work together as necessary at the very least.  (I mean, we’re not hanging out on the weekends, but I don’t think we have much in common anyway.)  So the surprising part of this story (and really the part that prompted this post) is what happened with a different coworker.  Engineer A above actually interviewed with our group before I joined the company.  He was hired into a different group originally.  Engineer B used to work with engineer A back at their previous employer.  I believe it was engineer B that referred engineer A to the company.  Engineer B was my cube-mate for almost two years.  We got along pretty well.  Eventually, engineer A was placed into our group by upper management.  And that’s how we all ended up working together.

Then one day during the drama/excitement mentioned previously, walking to lunch together, another coworker made a joke or comment about engineer A’s code or something.  (As both this coworker and I had been brought in to audit and help with engineer A’s project when we both had more than full workloads, we were frustrated with A and kind of surprised at some of the errors he had made–and we talked about this at lunch sometimes.)  It wasn’t something awful, but I remember thinking, “Oh no.  We probably shouldn’t talk about this around B,” and I quickly changed the subject.  But I must have been right, because after that day, B stopped having lunch with us.  And after I took over A’s project, he really turned a cold shoulder.  I tried several times to invite him to lunch, each time being declined.  He no longer just talked to me in the cube.  If we did chat, I was the one initiating the conversation, and it was short.  There were a lot more whispered conversations between A and B.  Generally, the atmosphere that had been friendly turned very cold.  I flat-out told my best coworker (as I will call him) that I don’t think B likes me.  A couple interactions in the last few weeks have cemented this in my mind.  Nothing horrible–just chilled.

Now, I know I’m not prefect.  Heck, I’m writing a long blog post about work drama.  But I like to think that I’m a mostly likable person.  I know that I’m confident about my skills, and that might seem cocky or arrogant to some.  And that might rub some people the wrong way, especially when that attitude puts me in a place to take over your project (or your coworker/friend’s project).  But it’s also the attitude that makes some coworkers happy to hear that I’ll be handling work that will directly affect them (or disappointed to hear that you no longer handle work that affects them).  I’m not going to give 10% just so that someone else’s 100% looks better.  I’m going to give 110%, and if that put me ahead, then that’s life.  That shouldn’t be held against me.  I didn’t have a vendetta against A.  I just saw a sinking ship, that’s all.

You can’t win ’em all.  If someone doesn’t like you because you worked to help your company and your team, even if some feelings and egos might have been bruised, then that’s not really someone whose approval or appreciation should be sought.  It is what it is, I guess.

But when all that’s said and done, it would still be nice to be liked.

Eureka, but without the nudity…

…like Archimedes.

I started this a while back, and for some reason, I never finished it.  So here it is, though kinda boring.

One of the most rewarding parts of my job is solving problems with software.  Usually it’s Python scripts or webpages written in PHP and Javascript.  Today, it was Python.  And it was a good one.  Been working on it for about a week, and today I got it working.  And it works perfectly (once I worked the bugs out of it).  There’s still a bit of tweaking and improving to do, mostly to purge the data of human error.  There’s nothing quite like the feeling of writing a couple hundred lines of code from scratch and seeing it work, gathering hundreds of megabytes of information and outputting a usable data file.  I love it.

Minor discoveries…

It’s been a while since I last blogged.  A month an a half to be exact.  I’m not good at writing regularly.  I feel like I never have anything interesting to say.  I don’t have anything particularly interesting to say right now.  But if I watch any more TV, I’m going to feel like the biggest loser.

Sav is gone for the week.  Left me all alone to go to work and make bread and bacon.  Actually, we don’t make bread or bacon, because we’re a tech company.  For the sake of security and because Sav has taught me to love pseudonyms, let’s just say that we make widgets.  So I’m home alone this week while she’s off boating, hiking, and other types of vacationing.  It will be the longest we’ve been apart.  It’s the first time she’s left me home alone for more than a day.  It weirded me out yesterday.  It’s lonely in this empty house.

So I’ve watched TV, messed around on my server, and changed my blog theme.  On the subject of the server (skip if you don’t care, it won’t hurt my feelings):  I’m trying a fresh instance and see if things improve.  I’ll probably have to upgrade to a more capable instance, but we’ll try this first.  It’s much cheaper if I can keep it running on a micro instance.  The problem is MySQL 5.5.  It keeps crashing.  I may try a script to check if MySQL is running every 30 minutes and restart it if it has crashed.  It could also send me an email.  That’s the next step if problems persist.

So the idea of my post today was to share a few things I’ve discovered over the last few weeks and months.

  1. Having a lawn is a pain.  You have to cut it every week.  Some parts of ours are dead, and it’s hard to convince them not to be.  We overseeded, but I didn’t cut the  grass as short as I ought, and it only helped in select areas.  I’m probably going to re-overseed this fall.  Then there’s weeds, bugs, watering, and more.  I’m sure that after a while it won’t seem so bad though.
  2. Every IT/IS department is awful.  Especially when outsourced.
  3. Amazon Video On Demand works so much better than Netflix.  If the Prime selection was just a little better, we could drop Netflix completely.  My favorite part?  When I rewind or fast-forward, Amazon VOD is smart enough that it doesn’t have to re-download if it’s cached.  And it keeps a cache to rewind at least a minute without any delay.  It’s awesome.
  4. Solarized.  Probably my coolest discovery of ever.  (This is another super nerdy paragraph.)  I found it more or less by accident when I was trying to get my work terminal looking like the default gnome-terminal in Gnome 3 on Ubuntu. Now my terminal in Ubuntu has been solarized.  My work terminal has been solarized (even Putty on my Windows machine).  Vim and gvim have been solarized.  My directory listings have been solarized.  Even this blog will probably become a little solarized.  Here’s the thing: it only took a few hours on Windows looking at PDFs (black text on white) to give me eye strain and the beginnings of a headache.  But I can work all day at my computer staring at my solarized terminals and not feel a thing.  It’s awesome.  And it makes vim so much nicer to use.  The colors make more sense (especially when using vimdiff) and are just plain pleasant.  It makes everything in a terminal nice.
  5. I still like Grey’s Anatomy.  Sav and I started watching it together.  I wasn’t sure she’d like it, but she does.  I think it’s funny.  Judge me if you want, but it’s entertaining.
  6. I don’t like going to bed early.  I need to, I ought to.  Right now I should be sleeping.  But instead, I’ll probably make some sleepy time herbal tea and drink it while not sleeping.  Ironic?  (That’s actually a question, because Sav often calls me out for not using “ironic” correctly.)

So that’s a few things I felt like sharing today.  Really I could go on and on about Solarized.  But I know that of the 5 friends that read this blog, only ~1 of them is probably going to care about it.  (Try it!)  But now it’s late and I need to go to bed.  6:30 always comes so quickly.

Currently listening to “Cosy In The Rocket” by Psapp

Technical difficulties resolved…hopefully…

Our little (tiny really) chunk of the cloud experienced a few technical difficulties the past few weeks.  Without gushing too much nerd your way, a software upgrade cause the system to run out of resources.  (MySQL kept crashing.)  But luckily I apparently know what I’m doing and was able to fix the problem by limiting the number of connections and server processes.  Hopefully it’s fixed.  It’s been working, so that’s a good sign.

I learned a few cool things about Linux the past few days.  First, I learned that with 11 characters I can use my mouse in Vim.  I learned that screen can require a password when reattaching.  And I learned that Bash is much better than tcsh.

Things at work are great.  (That’s where I learned a few of these things.)  I also have learned that in a corporate environment you don’t always get the most up-to-date software, even if it’s free software.  I also learned that my work email filters out gziped tar files, even if they are simply full of vim and bash configurations to help me figure out the settings I want.

Anyway, this is a boring post.  Sorry

Currently listening to “Speak Now” by Taylor Swift

I’m loving my job…

I’m really liking my job.  First, it’s so great to just go to work and then come home without a ton of homework to do.  Second, my coworkers are really great, and pretty much everyone I have to work with.  I’ve been doing a ton of training videos with quizzes, but I find that even really dry video lectures are more interesting when you actually care about the material.  Third, my job is cool.  Though I’m trying not to scare people by doing things my own way.  I can’t help it if I’m the only one on the team who has used something better than SVN (Git).  I’m going to use Gnome and Git and eventually Bash, because they’re better and I can be more productive.  Less headaches for me, and more work done for them.  Everyone wins.

Today was especially awesome.  A few times I’ve walked to or from my car and seen a bunny.  Well, today I saw a turkey when I went to lunch.  I think I might have been one of the first people to see it.  By the time I came back from lunch there was a mass of people huddled around where it was.  I took some pictures.

Currently listening to: “Starships” by Nicki Minaj

The week to top all weeks…

This is the week. A week that might forever change our lives. In two days time, I will be in Boise, put up in a hotel, trying to sleep, knowing that the morning starts hours of interviews that could potentially lead to a job offer that would rock my socks.

I’m nervous. While it technically isn’t the first on site interview I have had for a full-time position, it is the first one that I actually want to receive a job offer from. I find that wanting the job makes you more worried about the interview.

Of course, once the interview is over, I am going to be even more anxious and nervous as I wait to hear back. Luckily I have a thesis to write so I have plenty to take my mind off the fact that a group of people hundreds of miles away are making a decision that will decide where my children grow up. You know, just little things like that.

But right now it is raining, which makes everything feel peaceful. I am glad because I need all the sleep I can get.

Easter eggs, part 2…

I promised that I would take a picture of my old computer, now used by another programmer.  Without further ado:

Easter Eggs
Very festive…once a year.

The thing that I find funny and ironic about this is the fact that if I were to start a job and my computer had this background, I wouldn’t do anything else until I figured out how to change the background.  (Unless of course it was Easter, in which case I would leave it for a week or two, then immediately change it.)  It wasn’t hard to do–just a quick Google search told me how:

sudo defaults write /Library/Preferences/com.apple.loginwindow \
DesktopPicture "/Path/To/New/Picture.jpg"

If I had access to the machine, I’d probably change it back, but the new programmer used and changed the password to the support account instead of creating her own account.  Guess I’ll just have to single-user-mode the computer and get in that way.

Currently listening to: “Testing 1, 2, 3” by Barenaked Ladies

I love Amazon…

We needed a humidifier.  We had a few different choices.  We could go to a local medical supply store and probably pay too much.  We could go to Walmart, get a cheap one, and wait in a line for 30 minutes to buy it.  Then I remembered: I have Amazon Prime.

So we bought this little guy.  Just $3.99 for one-day shipping?  Yes mam!  Totally worth saving me an hour-long trip to Wally World.  Plus, it’s super quiet, works great, and is kind of cool looking.

In other news, I have been told to challenge Sav to have a blogging resolution.  A resolution to blog.  A blogolution.  Dearest Sav, this is your challenge: blog more (every day!).

In other news, I didn’t pack a lunch today because I was late to meet a coworker to help him with an inportant task.  When I arrived, he wasn’t there.  An hour later, my boss emailed him.  Guess what?  He’d been told not to do said task by the client, and hadn’t thought to fill tell our boss (who the client should be talking to instead) or me (who was going to meet him).  In the end, this coworker is only hurting himself.  He’s not exactly winning brownie points.  (And all I’ll say is that he could use them.)

Well, good night blogosphere.  It’s getting late, and I do have an eventual goal of getting up at 7 (eventually 6 or 6:30) every day (except weekends, duh).  Let’s just say, it hasn’t happened in a while.

P.S. Did anyone else hear this song on the New Year’s celebration program on TV?  They didn’t have Adam, and it was awful.

Currently listening to: “Stereo Hearts (feat. Adam Levine)” by Gym Class Heroes

Easter eggs…

I don’t know what made me do it.  I think that I just wanted to leave my mark differently than everyone else.

I recently started working at my last job, programming web applications.  Though we’re under new management.  No longer are we Health and Human Performance Services.  Now we’re Campus Life Web Consulting.  Or something like that.

Anyway, right before I left, possibly as I was cleaning my computer on my last day, I decided that I was going to change the login image on the Mac Pro that I’d been using to be something besides the boring Snow Leopard background.  A quick Google search, and I knew just how to do it.  It was extremely easy too.  Then I just had to select my image.  I left in April, and I guess I still had Easter on my mind.  So I chose a very colorful DigitalBlasphemy.com image of Easter eggs.  Then I left and forgot all about my little bit of fun…

…until last month when I started working there again.  I didn’t get my computer back.  (In fact, I’ve given up a Mac Pro in exchange for a Dell running Linux (Ubuntu 11.10)).  It was when the person using my old machine logged out.  There it was, the most colorful background you could imagine.  And I smiled.

A picture is forthcoming.  A good way to test out the new WordPress app for Android and the Quick Photo feature.

Currently listening to: “I Write Sins, Not Tragedies” by Panic At The Disco