In this blog post however, I will focus on how to write down an effective list of goals. First, determine what you really want in life. It's hard to write down your goals if you don't know what you want in life. You might think, "but isn't determining what I want in life the same with the goals I will list?" They are mostly the same, if you don't process what you want in life to more specific items, now, these items are what becomes your goals.
I might go as far as saying that determining what you really want in life are your dreams. And your list of goals are your targets to be able to achieve your goals that are in turn aligned with your dreams. Dreams are more about the purest emotions and sensations that determines what makes you ultimately passionately happy while goals are more about concrete and specific targets that you set out to achieve.
For example, you have determined that what you really want in life is to be a successful software developer and be able to work from home freelancing making applications. You might say this is not specific, S.M.A.R.T. method teaches me to be specific about my goals. But we're not in goals yet. We're still in dreams, that part inside of you that lights up, that feels your entire being with fire and passion and peace at the same time.
Now that you've determined you want to be a successful software developer and be able to work from home freelancing making applications, you will now get to being more specific about it. This process will require you to brainstorm the goals that are aligned with your determined dreams. For example, you can come up with this list:
- Study design patterns more
- Study Reactive programming
- Build a library and publish it on github as open source
- Publish a technical blog regularly
- Start a side project
- Apply for work from home projects (either full time or part time)
Now that we've listed our goals, it's time to determine obsta... Wait!
Do you think your goals are specific enough that they can be converted to actionable items (Getting Things Done)? Let's see.
Study design patterns more - What exactly do we want to achieve from this? Why do we need it? Is it aligned with our dream of becoming a better software developer? Definitely yes. We've already determined that it's indeed important to be able to study design patterns more. But to what extent? Here, we can say, study design patterns more up to the point that I can explain them in my own words, apply them in my projects, and put up a tutorial about design patterns to see if I have really understood them. Now that's more specific. Being a software developer, we already know that there are LOTS of design patterns out there. Do we really need to know all of them? In my line of work, mobile applications developer for Android Appications, I want to focus my field on business and consumer apps and do not go to games development. Design patterns used for business apps are most often different from the design patterns used for games development. So I break up "Design Patterns" to more specific design patterns: I have determined that Facade Pattern, Factory Pattern, Composite Pattern, Command Pattern.
Study Reactive programming - Right now I just want to be able to understand reactive programming, create a simple app on my process of learning it. But it's not yet necessary for me to apply reactive programming on my next professional project. I have determined to myself that I am giving design patterns knowledge higher priority over reactive programming knowledge for now. So I can say that my goal is to study reactive programming, apply it on a simple small pet project on the process of learning it to see how it's implemented.
Build a library and publish it on github as open source - Right now I don't have a specific library that I want to build. But I am positive that building a library and publishing it as open source on github will be an invaluable experience for me in becoming a better software developer because of the skills I will gain in developing a library and the feedbacks I will get by open sourcing it. So one of the action items that might go here is determine what library to build.
Publish a technical blog regularly - The lack of specifics in this goal is apparent. What topics am I targeting? Obviously these technical blogs will have to do with programming so that it's aligned with my dream of becoming a software developer. But what topics? Or at least I should identify the categories for the topics. Being a software developer, I know that coding encompasses a vast area of knowledge in terms of software development. I can focus on topics/categories relating to accessing and optimizing database and business objects on my applications. I can focus on the security part of my applications. Maybe the architecture I will use. And also, how regular am I targeting to blog? I am thinking blogging twice a week (Wednesday and Saturday) for 3 months for now. And determine after 3 months if I will continue with 2 blogs a week or level it up with 3 or more blogs a week.
Start a side project - The first question here is, what kind of side project? We have to align this side project with becoming a better software developer. Something challenging enough. How long am I planning to allocate for this side project? 3 months? What skills am I expecting to get from this side project. I want to be able to apply the design patterns that I will learn to this side project. So obviously, starting a side project goal comes after learning the design patterns. I am thinking of creating an ecommerce mobile app that will encompass database, security, user profiles, that comes with animated UI transitions and interactions for an engaging ecommerce mobile app.
Apply for work from home projects (either full time or part time) - Here I have to determine specifically if I want to have a full time or part time work from home gig. Because right now my dream is to become a better software developer and I have determined that I have lots of things to enhance first in my software development skills I have decided to go part time work from home first. I strongly the money will come after me when I have achieved my becoming a better software developer dream automatically.
Now that we have made our list more specific we have also naturally came to the ordering of these items.
1.a), 1.b), and 1.c) can be done simultaneously with my time.
You also need to put a deadline or milestones in your goals
Study design patterns more - 3 months
Publish a technical blog regularly - after 1 month, review my efforts and see if I have achieved my target frequency of blogging.
Start a side project - 3 months
Apply for work from home projects (part time) - start focusing on this after 3 months
Build a library and publish it on github as open source - everyday allot 15 minutes of my time in determining what library I want to build.
Study Reactive programming - study this after 3 months
Now we can have a list of goals like below:
Being specific enough in your goals prevent you from wandering off when distractions arrive.
No comments:
Post a Comment