Entries Tagged 'GTD' ↓

A better way to focus

Recently I was in a programming class learning about web services. About 2 days into the class I thought to myself that I was really absorbing a lot of knowledge. I wasn’t surprised by the instructor’s questions and I asked what I thought were good questions. I then realized that the whole time I was in the class I was really focused.

As in more focused than I would have been if I had been at work. Only two days had gone by, but I felt like I had accomplished a lot. I wondered why this was the case. I was excited about the class, but there was something else going on. Then I realized what it was.

There was no internet access at our desks. We were prevented from checking our email or surfing the web while the class was going on. During our regular breaks we could go out and get on one of the internet terminals, but at our desks, it was all buisness.

I’ve heard that to increase your productivity you should turn off your email notifier (i.e. the little popup window). I think tomorrow at work I’m going to turn off my internet access (i.e. not leave Outlook and Firefox running) and see what it does for me.

I have a suspicion I’ll find I can get more done if I’m not spending time running around on the web.

Tips for indie devlopers

The other day I came across an article that had some really great advice about developing “indie” software. I think these tips are great and can apply to any situation in life, not just in programming.

You should read the article yourself, its a quick read. (note that its on the right side of the page under the Google ads.) Here’s the major points:

  • Don’t waste time
  • Don’t be evil
  • Don’t be naive
  • Don’t be a follower
  • Good advice, and I think these are also the secrets to being sucessful.

    Multitasking - Just say no

    My definition of multitasking:

    The ability to perform many tasks poorly at the same time.

    Everyone wants us to multitask. We want to multitask in order to get more things done. However, since you are not concentrating on any single thing, you wind up not doing as good of a job as you wanted to on not just one, but several tasks.

    This happened to me this weekend. It was a swift kick to the morale and as a result I wound up not doing anything productive. That’s a bad cycle to get stuck in.

    Small related and grouped tasks lead to finished tasks. And finished tasks means you got something done, which means you took care of business.

    Thank you anonymous donor!

    Someone left a present for me in the Tip Jar! Thank you so very much who every you are! (The Amazon sites doesn’t show me who it was, just a transaction number.) I’m really excited, this is such a big boost for my morale. I mean simply getting the Password Maker widget done and out the door was a big thing, but now that someone has liked it enough to donate to the cause, that has kicked me into orbit. I was feeling pretty motivated before, so watch out now, I’m gonna be coding up a storm this weekend!

    And as a side note, my next widget is almost done and I’m hoping to have it published this weekend. Keep checking back here for the latest news!

    Why small tasks are good

    The other day I talked about breaking big things down into smaller tasks (see here for the details). One thing I forgot to mention that I was reminded of last night is that when you have a series of small tasks, typically you can knock them out in a shorter amount of time.

    Last night I had about 10 or 15 minutes of free time , so I looked at my list and saw that I had noted that I wanted to debug some code. I had written down specifically what I thought was wrong and what needed to be looked at. Luckily, I had left my coding stuff up and running the other day so I was able to dive right in and get a lot of grunt work done right away.

    I didn’t solve the problem, but I was able to utilize the limited amount of time I had to get meaningful and productive work done. That’s the power of having a “to-do” list.

    Productive Programming

    When you get into the zone while coding, it is truly amazing the volume of work that you can get done. And at the same time it is amazing how quickly you can loose that head of steam by having to stop and look something up. The longer you spend searching the internet for the details about some library or a technique, the more likely you are to get distracted from your coding.

    Google is great for searching. But I’ve found that it can also lead you down other paths that keep you from getting back to work. My suggestion is that the next time you find yourself needing to look something programming related up, instead try searching a more developer oriented site like Microsoft’s MSDN or Apple’s Developer Connection.

    These sites are goldmines of information. I’ve been finding lately that if I go to Apple’s site first and look up my question there I get a better answer faster than I do if I go into the wilds of the internet. Back in the day when I worked on Microsoft stuff I found the same thing with the MSDN, it always had the answer. (And as an aside, if you are a Microsoft developer I highly recommend getting a subscription to the MSDN. Its expensive but if you or your office can afford it, you’ll find it to be a near bottomless source of examples, products, help, and ideas.)

    By finding the answer faster I find that I’m able to stay on track and focused on the coding. That leads to more code/better code which leads to happiness all around. :)

    A Call for Readers to Unite in Generosity

    Hey, go check this out. A Call for ProBlogger Readers to Unite in Generosity: Blog Tips - ProBlogger There’s a lady out there who’s got cancer and is having a bad week. Go visit her and her husband’s sites and give them some click-thru traffic.

    Programming and Productivity

    Lately I’ve been feeling really productive when I’ve been coding. I’ve been thinking about why this is, and I’ve reached the conclusion its because of certain practices I’ve been slowly adopting over the last few months.

    About two months ago I started reading David Allen’s "Getting Things Done". In the book, Allen presents a total plan for taking back your life (by being more productive and less stressed). One of the points he makes is that he found it is best for his clients to completely adopt his strategy at once. While his approach is great, adopting all of it for all aspects of my life seemed like a huge undertaking. And if there is one thing I have learned, tackling something huge in one step is a surefire way to fail. It is better to break it up into smaller elements and work on those.

    Now this is just my two cents worth. From reading other sites, it seems like the GTD system works differently for everyone. I thought I would present my methods that have lead me to feel more productive while coding. Your mileage may vary.

    • Write it down

    I have found that writing things down on paper (specifically a small notebook) has help me tremendously. The notebook is small enough that I can take it pretty much everywhere and capture the important things quickly. By vitrue of writing something down, you are having to think about what you are writing about. I have found this helps me to better define my projects (like making the features set)

    • Make a small list

    In the notebook I try to keep my todo lists limited to 2 at most 3 topics. Basically I pick the 2 or 3 most important issues I’m thinking about and then make my todo list out of the tasks necessary to handle those issues.

    • Small tasks, big results

    By taking each issue and breaking it into a series of small tasks, I’m able to clearly see what needs to get done. That is priceless. Sometimes when you try to approach a problem at too high of a level, you miss out on the small details. Also, when you are dealing with smaller quantities completing each one feels like a major step forward. And in a way it is, your progress is now more measurable ("I got 5 things done today!" instead of "I’m still working on it…").

    • Follow through on the tasks

    Its important to finish what you start. But if for some reason you aren’t able to finish a task on your todo list (you ran into a bug you couldn’t figure out, you need a reference manual from the bookstore, etc.), it is important to make sure the task is migrated to a new todo list. Don’t leave it behind!

    Tags: Programming, Productivity, GTD

    Getting things done

    Its a great feeling when you accomplish something. Its even better when its a project you started, worked hard on, and then finished. Ever since I finished and posted my PasswordMaker widget I’ve been bursting with energy ready to take on the next programming task.

    Which got me thinking, I’ve been trying to utilize the “Getting Things Done” methodology for the last few months in an attempt to get more control over what’s going on. Overall its working, but I haven’t had any big break throughs until I finished this widget. I’ve got momentum now, and I’m going to try and steer it in the direction of making another widget this afternoon. Hopefully I’ll be done quicker and have it posted soon…

    Tags: , ,

    A good quote

    I can’t believe I’m going to admit this, but I watched the Will Smith movie “Hitch” the other night and Mr. Smith said something that I thought was really memorable.

    Begin each day as if it were on purpose.

    That is a good nugget of wisdom. I’m putting that in this blog to serve as inspiration, with a solid thought like that, you can get a lot of things done.
    Tags: wisdom