Before I get into my topic of the night, I wanted to bring your attention to another post I wrote for Perlquiz.com tonight - it’s a slightly technical post explaining how to do a OR'ed LIKE search using DBIx::Class. Actually I don’t think it’s my best work, but I wanted to get things going over there and it’s a technical post I think can help a few people out.
Anyway, if you get a chance, please check it out, subscribe to the blog and get involved with some questions and/or feedback. I want to try and get the community flowing over there, so anything you can do to help is of course greatly appreciated.
So getting down to my point of the night…today I was inspired (OK actually I was aggravated) by a question posted to the NextNY list. The question had to do with something that was clearly a massive dream…and the reason that it ‘inspired’ me is that as of late I’ve been talking to a lot of people about their ideas and projects. And the common theme seems to be people looking to tackle some REALLY ambitious things…which is of course great, but it’s also a little crazy in most cases.
It’s not that ideas are bad, or that the people aren’t talented. It’s just that given the starting point, and the starting resources, it’s often unrealistic to be shooting for the stars your first time out of the gate. Sure it can happen, and once in a million (or less) it does happen…but your odds are much better if you scale back your idea, at least to start, and get more focus.
Anyway, here’s a version of what I shared with the list…
1. Dream big. Most people have this down pat so no need for a detailed explanation.
2. Create a map defining big goals. For example, a team with the goal to win the Superbowl next year will start with general goals like Earn home field advantage, win our division, win all home games, etc.
3. Your first 'big goal’ should really be your initial goal. That is the thing you actually have a reasonable chance at achieving given your current knowledge, resources, and talent. It’s good to know your larger plan, and to keep working towards that goal, but it’s pointless to sweat the things probably won’t be a factor by the time you get to a stage to address them (the world changes too fast, and it’s going to take everything you’ve got just to get to goal one so focus there). Going back to the football example, you could say the primary goal is to win your division and so you focus everything on getting that first goal (with only a small eye towards the bigger picture goals).
4. Working backwards, create a map defining medium goals between your starting point and your first goal. So again with the football thing, you take a hard look at your division and you start breaking down just what you’ll need to do to beat the other teams in your division (ie. what schemes you can use, what personnel you’ll need to acquire, what coaches, what support staff, what plays you’ll put into place, etc.).
5. You repeat steps 3 and 4 until you have a very actionable set of goals and measurements…and a road map on just what specific things you need to know/learn/do to get to your first big goal.
Once you’ve done all those steps, you can finally start the fun stuff (actually trying to accomplish something and stick to your plan)…and that’s when you will benefit most from getting advice and help from others (ie. you’ll have very specific questions as they relate to very specific things you are attempting to do).
As an aside, once you’ve got a more fine tuned focus on whatever project you are interested in, you’ll become a much more valuable and useful member of the communities you participate in…and people will start to turn to you as THE expert, thereby helping you build on your reputation (making it all that more likely that you’ll be able to pull off your bigger dreams and goals down the road).
All this being said, I’m just a programmer (who hasn’t done much myself really) hacking away at a some random ideas…so take everything I say with a grain of salt. It’s meant to help, and hopefully set you on a successful (and rapid) track, not to deter or depress you.
Best of luck!
This post has received 50 loves.
Kevin has a day job as CTO of Veritonic and is spending nights & weekends hacking on Share Game Tape. You can also check out some of his open source code on GitHub or connect with him on Twitter @falicon or via email at kevin at falicon.com.
If you have comments, thoughts, or want to respond to something you see here I would encourage you to respond via a post on your own blog (and then let me know about the link via one of the routes mentioned above).