Wednesday, April 1, 2009

Working at Union Pacific

Recent Happenings


So anyway, it turns out I'm now in Omaha working at Union Pacific. It's a railroad company, and its actually pretty cool. I am working on a very crucial product for the business (it's called PTC or Positive Train Control).

I am being challenged every day here, so this is a plus. I know that I absolutely need to keep learning at a break-neck pace if I want to move up in the world. Especially with technology companies. I bought a book called "Agile Software Development" by Uncle Bob (Robert Martin) to better understand the "theoretical" best way to decouple my designs and utilize TDD. I also discovered a book called "Clean Code" by the same on our e-learning website. Since my current team here isn't enforcing any particular software development practice, I am on my own to learn one. This is not because I think that there is one particular method that will fix everything, but because I think it is important to at least know one or two of them so you can start to learn WHY they are there in the first place. Then you can eventually become comfortable enough to roll your own "methodology" and proclaim yourself the lead evangelist if you like ;)

Procrastination and laziness


From my previous post, I was brainstorming ideas on how to maximize my learning while away from work. This didn't turn out as well as I hoped. I sort-of hinted at what I was suspecting about my job - was that I would be tired and not really in the mood for programming afterwards. Well, its not because I hate my job, but more because there are lots of time-wastey things to do at home that keep me from getting things done. Here are my personal evils:
  • Google Reader
  • Gmail
  • Hulu
  • Netflix
  • Peggle (yeah...)
  • 50 Cent: Blood on the sand (Ok, I can explain. My friend had me rent it for multiplayer! I swear!)
  • Intoxication (it doesn't take much alcohol to inhibit the "i want to think" part of the brain)
  • Working out/ Losing weight
The last one there isn't really a time-waster, but it sure is a will-power draining task. I have been at that since I started at UP and it really does take some motivation to keep going. After that, I feel like I deserve a break - not more stress and coding.

Even with these setbacks, I have managed to get something started. I am working with Django trying to create a website about goals. Right now they are fitness and diet goals, but I would like to generalize them to any type of goal or aspiration. I think it is useful to be able to track this stuff online in a social atmosphere. However, the pace has been painfully slow since it takes so long to "wind up" my brain for coding - and my brain usually isn't rested from work until about 11pm - an hour after I should already be in bed.

Reality Setting In


One thing that has changed in me since my last post, is all the excitement I had for the future. This isn't to say I am not excited about it, but that I see how many challenges and hurdles I face. I initially thought that since I'm a self-proclaimed "smart person", that I would figure out a way to succeed. That may still be true, but the more I learn about starting a business and what is already out there, the more I realize that ideas are a dime-a-dozen. This means that the startups that succeed are the ones who make it through thick-and-thin AND can adapt to the market. Not necessarily the ones who have a good idea to begin with.

Even if they have that, there is no guarantee however. There might be some minor thing you did to make your users wary of your product and nobody buys. Maybe nobody ever told you that you aren't supposed to do X so you did it and lost all your money. Life is unfair like that, and only the people who take those setbacks as challenges and fight back are the ones who succeed.

Take Mark Zuckerberg. He is incredibly successful with Facebook. He is a multi-millionaire and owns one of the coolest companies you can imagine! If he wasn't so nerdy I'm sure he would get all the chicks! But Mark is in a big dilemma right now - how to monetize? They could go under just like anybody else. How would he feel if Facebook could never really keep revenue > expense and eventually died out? It is possible, and Zuckerberg knows it. That must be terrifying.

I guess my point is that there is no time in life where you just go BOOYAH! and you now have money, women, friends, assets, and free time and not a care in the world. Well maybe Tim Ferriss does, but nobody else.

I still think that I will get the most out of life by trying the entrepreneurial route. However, I now realize that my "happiness" will not likely be some stress-free life. It will be filled with problems that need solving, and it will be up to me whether I sink or swim. I hope I swim, but that is yet to be seen.

So what's your point again?


Everyone wants to have a good life. But it's not easy. My level of happiness is probably comparable to what it will be as an entrepreneur in the future. I will just have higher standards for certain things, and maybe lower standards for others. The only thing preventing from me being happy right now is the thought that I should be doing more to get better. So really, I am trying to say everything is relative. Make the most of it while it's happening and stop worrying so much about the future (like I do)!