Tuesday, December 12, 2017

Lessons Learned

I got a 99% on one of my major semester programming projects.  I think it was the first truly complex programming assignment I've had (though that perspective might change as I get more experience) and I kind of wanted to jot down some thought on how it went.

When my previous workplace changed to our new Warehouse Management System, I experienced on a large scale something we all have as end users - attempts to fix one issue would often create another issue somewhere else.  It got to the point where every update we were left wondering what was going to go wrong this time, and how bad it would be.

For the first time, I experienced this from the other side.

We were simulating an ant colony, where each ant had specific tasks (i.e. the queen ant hatches new ants, the scout ant explores the area, the forager ant brings back food to the queen, and the soldier ant fights off enemy ants.)  I'd run it step-by-step for ten full turns, and suddenly all the ants would stop moving!
I'd figure out what was going on with that, would move on to other things, and then somehow whatever I did next would give me the exact same problem.  Again!  Though for a different reason of course...

You fix one thing, and it breaks something else.  It's very hard to capture the sheer level of frustration I felt as (yet again) my ants wouldn't act like they were supposed to!

On a related issue - I had a very hard time predicting how long it would take to finish the project.  I'd seem very, very close - ants were all acting perfectly - only to wind up right back where I started after making changes on something else.

I also learned that one of my dogs prefers to go out in freezing weather than sit in the warm, cozy living room while I  yell at my computer.

See, I have a bell hanging by the back door that they ring when they want to go outside.  I'd let out a particularly loud yell of frustration, and my dog would casually wonder over to the door and ring. 

It might be 10pm and below freezing outside, but she'll ring the bell.  And wait.  And if I don't get up to let her out, she rings it again.  And waits.   (To be fair, sometimes when I'm focused it'll take two or three rings before it registers that she's asking to go out).  I tell myself she's nuts to go out in weather like this, and she'll ring it again. 

When your dog is that persistent, then I guess she really wants to be outside.  In the cold.  (She generally gives a distinctive and repetitive yip at the door when she's ready to come back inside.)

So - right - my dog prefers freezing cold weather when I'm deeply frustrated.

Anyways, that's all done and I'm glad I got a 99%!  I missed one point on something that would have been an easy fix, and I probably should have caught it beforehand, but I'll take the 99%.  I've been a borderline A/B for this class and I really wanted to do well on this project.

No comments:

Post a Comment