Sunday, August 12, 2007

Defining Success


Success is important to me. At times it's not so much the result, but rather knowing that I'm not wasting my life in a generic and average way. In the past when I have felt unproductive, I'd step up the pace only long enough to be getting somewhere. After attaining my desire to feel fulfilled, I would stop working and repeat the process over and over, getting virtually nowhere. In my desire to live a fulfilling life, weeks would pass where I knew that I was simply wasting my time. Maybe it's the hacker in me, but I find it immoral, for myself, to live without getting anywhere. Simply being alive in and of itself is amazing. It would be a shame for me to waste my life without doing anything with it. With my lethargic default nature and mentality of life, I knew that I would have to make a change. If you find yourself in a similar situation, the only requirement to start getting out is a desire for success.

A great way to turn a desire for success into results is to create weekly to-do lists. Simply write out all the tasks, including check boxes for each, of what you would need to accomplish in the week to consider yourself successful. You can add tasks based on chunks of time or completion. The idea is to divide your weekly goals into units that are just a bit harder than what you are comfortable with. Make each task require some effort but not so much that you get discouraged and quit.

Be careful not to include too many tasks at first as your list may take more effort to complete than you had originally anticipated. Just start with a few tasks and build momentum by completing every single one in the allotted week. Seeing everything become checked off is a great way to build excitement and put all the more effort into next week's list. Add more difficult tasks to next week's check-list until you fail to complete everything for the given week. Then add a few less for the week after. The idea is to fail half of the time and succeed the other half. Failure means that you are attempting things outside of your abilities and success means you are achieving your goals of what's important to you.

An alternative of to-do lists is to schedule your time. I find that scheduling all of my time instead of using to-do lists didn't work as well for myself because things change. For example, I may plan at the beginning of the week to spend two hours during an evening to write program code. This would be done without knowing my situation during that evening so if something comes up, such as an assignment deadline or my boss asks me to work extra, I would find it much harder, if not impossible, to complete my goal. Alternatively, a to-do list offers a greater sense of control as one can choose when to complete a certain task at times when more information about other obligations and new plans is available.

Life is said to be a journey. I believe this and think that it's not where you end up, it's what you did with your time on the way there that counts for the most. People can always look at where they are in life and see ways to improve. It becomes very hard to declare one's self successful if something could have been done better. I propose a more genuine approach is making the most of one's time. Writing to-do lists does just that!

Thursday, August 09, 2007

Learning How to Run


Running is a great way to lose weight, think better and faster, relax, and build discipline. It's also one of the cheapest ways. The only things required is a watch and nice pair of running shoes. I recommend a comfortable pair of Nike running shoes which cost about $100. The pair I bought are surprisingly light, made with nylon mesh, and above all else comfortable.

Can't run for longer than two minutes without feeling like a knife is twisting your stomach? That was me just a few months ago. I had lifted weights already for over a year but running was out of the question. I had no stamina and simply didn't want to run enough to actually put in an honest effort. That all changed when my back started hurting. At first it was when I lifted weights but then it prolonged to the point I couldn't even sit in cushioned chairs without some degree of pain. I immediately started caring about my posture but I couldn't just continue aggravating it by lifting weights like I was used to. So, what do you do when you want to exercise but weight lifting is out of the question? You run! This catalyst was what I needed to get started. Now a few months later, I can run for over half an hour, non-stop, and I don't even lose all my breath! The exciting thing is that you could too.

As I mentioned, the first step to running is wanting to. This involves setting a goal. Personally I decided that I wanted to be able to run for fifteen minutes, non-stop, and have enough breath after to be able to have a conversation with a friend. I further declared to two esteemed friends that I would run five times a week for no less than twenty minutes of run-a-minute walk-a-minute until I could meet this goal. I had already been running for a week or two so I could just barely accomplish this. I also had a few months of summer ahead of me so there was plenty of time before I would have to resort to buying an indoor track pass and settle for subpar scienery. Still the goal seemed daunting and I knew the effort required to achieve it would hurt. This combined with the promise I made to my friends made failure a most unacceptable option.

From nearly the beginning, I took a systematic approach to running. A twenty minute session would involve running for a minute and then walking for a minute. I was utterly exhausted after these sessions for a few weeks. At the beginning I felt sore even on my off days. This brings up an important point. Everyone starts at a different level. I recommend to start running on one minute intervals like I did, but only for as long as you can without feeling tingly or having your vision change colors on you when you stop. If you can't even for a few intervals, why not start by simply walking for regular and longer distances than you are used to? The important thing is pushing yourself gradually. With this in mind, I eventually started running for two minutes and walking two minute during my twenty minute sessions. Then I started running for three minutes and walking for three. Naturally, I decreased my walking to two minutes. This continued for a few weeks. By now I had already been practicing for a few months and it seemed that I wasn't moving fast enough to complete my goal of running for fifteen minutes for the end of the summer.

One day, I decided that I would go for my goal and see how close I could make it. I ran in the direction of my relatives home, thinking that if I could make it, I would like to sit down for a bit after and drink some water. (I still can't drink or eat much before running without experiencing cramps, but it's getting better with practice.) After three minutes of running non-stop I was feeling pretty tired, but I kept on going. After seven and a half minutes, I was really tired but the thought of already being half done kept me going. Then after thirteen minutes, something really cool happened. Although I was panting hard by then, I noticed that my run wasn't getting harder. As long as I could maintain focus, I would achieve my goal. I kept my eyes closed for a good portion of those last two minutes and nearly stopped but I made it! I slowly walked to my uncle and aunt's home and talked with them for a while: goal complete! The next day, I ran for ten minutes, non-stop, instead of fifteen and was extremely tired after, just like the last day, but never the less I had run non-stop for a personally impressive amount of time. I had already started running home from work, which took about half an hour, when running a minute and talking the next, but now I could actually start running almost the entire distance without stopping. I seized the opportunity and before long was running the entire distance home from work. I can now make it in about twenty minutes for free whereas the bus takes about double that time for $2. I am still impressed that I can run and run without stopping now. The effort has finally paid off and it feels great.

Sunday, August 05, 2007

Promising God

Don't do it! In the Christian context, the bible teaches us that when we make promises to god, they can be used against us. James 5:12, of The Message translation, declares that we shouldn't emphasize statements with tag lines like "I swear to God", try to speed God up by bargaining with him, or tempt god with anger against us, as we may fail and then have lied directly to god!

As a person, I have an understanding of the universe that is limited by what I am able to see and comprehend. That means I may not be thinking of every possibility when I say something. As well, some situations are outside of my control. When then should I, or anyone else this applies to, make a promise that can be unforseeably hard to keep or, worse still, impossible to keep? Why should someone voluntarily risk being called a lier to his or her god?

Making promises to god creates red tape. They needlessly complicate what someone can or can't morally do. One who makes such a promise has to continually think about it to ensure that it's not being violated. The promise should probably even be written down if it lasts a long time. What if the promise keeper were to forget about it?

Not keeping a promise to god is as good as actively committing a crime against someone else. A feeling of immense guilt may arise because in the back of one's mind, there are two basic choices carry it through or shirk it some more. This is in opposition to having wronged someone in the past as it is in the current tense specifically. If one no longer wishes to carry through on a promise made to his or her god, he or she had better hope that his or her god will release the promise out of mercy. Not following through with god's wishes would create a situation where one is opposing his or her god and, by definition, god never ever loses a power struggle. His reputation can't be compromised at any cost.

An RPG Coding Quest: Simple Shooter

Wahoo! I've finished programming a small game I call Simple Shooter! It all started with a three hour crash course in C++ programming for my friend who hasn't programmed in years. Those initial 3 hours I spent tutoring my friend turned into about twenty as I continued to work on it after. Now, I'm left with a side scrolling space shooter with two enemies and a scrolling background! Mad props to my friend Peter who created the ships using Blender! Although this game is very simple, I have learned a few things about programming in the process:

Every module of a program should be segregated, by class for example. If the sprites were isolated, they same code, with minor changes of course, could be used in nearly any two dimensional game.

In gaming, giving the effect of something as opposed to actually providing it can be just as good, if not better. The ships could have been programmed to move really fast with the camera following them and the background could have been still but just appeared to move, due to a changing viewpoint, but that would have only served to complicate the code, introduce errors, and provide no noticeable difference in game play.

Programs don't have to be perfect! It took about twenty hours to program this game. Granted, I haven't programmed my own game in years before this, however it still goes to show that programming for a particular situation without caring about future expandability and caring about code that follows coding guidelines and the standards set forth in other areas of the same code is enough to think about. The important thing is getting the job done and still easily being able to understand what is going on by looking at the existing code at a later point in time.

If you know me in real life and would like a one-on-one tutoring session that results in a similar game, please let me know!