Saturday, April 4, 2015

What are you working on that they don't know about?

I recently came across a blog post on reddit entitled  "The Best Professional Advice I Ever Got", written by Eric Niebler, in which Eric describes some of his experiences while working on Windows 2000 at Microsoft.  He had a boss who one day came into his office and said:

"Eric, every now and then I’m going to come into your office and ask you, “What are you working on that I don’t know about?” You should always have something to tell me."

I immediately bookmarked this article, as this concept hit me pretty hard as a college student.  It seems those who are bound to attend college are hard-wired with the mindset that that your coursework is your life.  I myself went in to college primarily with the goal of having a well paying job that I wouldn't hate in order to secure a good future for myself and my future family.  This meant good grades, which in turn meant hard work.  When you are also faced with the need to work in order to pay rent and bills, you really have little free time or energy to even think about creating on your own terms.

Even as I write this post, I am drilling myself on another monitor to my left on specific bits of Assembly and C for an exam tomorrow morning.  On my right I have a notepad where I have jotted down various applications and command line tools that I hope to learn in order to excel at my new job as on-campus IT support.

Reading this article however has stuck something new in my head, outside of my job and education... "Make something they don't know about."

It seems those who are bound to attend college are hard-wired with the mindset that that your coursework is your life.  The number of students who actually take the time to apply this education to their own projects and not just to work for a grade really seems to be diminishing.  I include myself in these numbers, as at the end of the day, it's difficult to be motivated to continue the productive state that you have been carrying for the majority of the day.

Thankfully, I've been exploring the internet long enough to realize how limiting a college degree program can be.  It really needs to be treated more-so as a gateway to the kind of things you can be doing as opposed to everything you need to know.  Among the courses I'm taking this semester, I'm gaining a fair amount of experience in Java, Assembly, and C, but only with limited applications.

Starting now, I want to expand.  I'd still like to participate in game development, but I want to take what I am learning and build away from the notes that are written on the whiteboard.  As I am still limited on time, these projects will start small.  For starters, I'll actually write my Dice Bag program I planned out last summer, which will probably be written for the terminal in Java.  I have 2 or 3 books I would like to start reading as well, including my Java textbook, "The C Programming Language" and "the Unix Programming Environment".

Once the semester comes to a close, I have plenty more options to choose from: taking a crash course in android development, exploring open-source projects on github, getting back into python development and, most importantly, continue work on my game projects.  What all of this comes down to is this:  it is important to keep yourself busy with work you are interested in.

A note to self: Never be afraid to have more than 1 project on your table.  When someone peeks over your shoulder to ask "What are you working on?", aim to have a new answer every time. 

See the blog post by Eric Niebler here: