Tips for Being More Productive

Ever noticed how some people always act busy but get little “real” work done?  There’s a big difference between being busy and being productive.  I won’t claim to be a time management expert, but here are a few things I’ve been doing that have helped me stay focused and increased my overall productivity.

#1: Stop Wasting Time on the Internet

I’ve been trying to take a closer look at what I work on and realized that even though I do get a lot done, I could improve a lot.  One of the biggest distractions I have is the Internet.  Whether it was Internet Explorer or Chrome, I had 7 different tabs load at once so that I could quickly get to different sites.  Some of them were technology or blog sites and others were news sites.  While being able to automatically load that many pages simultaneously is cool, it’s a big mistake from a productivity standpoint.  I’d take a break and start a “quick read” of an article and without realizing it would click a link about something else….and down the non-productive path I went for 15 minutes or more.  About a month ago I stopped worrying about staying on top of all the news out there since it really didn’t change my day to day decisions, family life, friends or much else.  It really just filled my head with useless information in the majority of cases.  To stop getting sucked into the Internet vacuum I created the following homepage:


Every time I pop open the browser I see this message and the reminder works surprisingly well.  Once I saw the message I’d close the browser and try to focus on more productive tasks I needed to get done instead of stalling work on a difficult problem (I realized I had a bad habit of opening the browser to avoid having to think really hard about a problem).  Now I don’t even open the browser much unless I need to research a topic or find some information because I know the message that I’ll see.  That’s not saying I never read a news article or do something fun (I’m not that boring….yet).  However, I have definitely seen a huge decrease in the amount of time I waste on the Internet due to this simple change.  You can download my extremely sophisticated homepage here if interested.

#2: Turn Off Automatic Receipt of Email Messages

I actually read about doing this in the 4-Hour Work Week book by Timothy Ferriss.  When emails come in they’re a huge distraction.  By turning off automatic receipt of emails I have to make a conscious decision to get email so I check it a lot less and can stay focused on a project much longer.  Tim (is it OK if I call him Tim instead of Timothy?) actually recommends checking email at specific times of the day but I’ve cut back enough that it’s not really a distraction now.

#3 Add Daily Goals/Tasks in Outlook

I’ve always heard that you have to write down your long term goals and plan for the next day by writing down what you’ll get done if you want to be successful.  I never followed that advice and think I’ve done pretty well overall but I realized recently that I could do even better by spending just a few minutes each morning listing tasks for the day.  I don’t write much these days (prefer to type) but I have found that by using the Tasks feature in Outlook each morning I’m able to stay focused on what needs to get done versus what can slip.  Instead of having to remember all of the different people I agreed to talk to, code I need to complete, etc. I just throw it all in the tasks.  It’s pretty satisfying to complete a task too since you feel like you’re making progress.  Overall, this little tip helps me feel less overwhelmed throughout the day and stay a bit more relaxed.  It also helps me stay focused on the end goal for the day without getting side-tracked.

#4 Reduce the Amount of Time on Twitter

I enjoy reading about what everyone is up to on Twitter.  I actually think it’s a great networking tool and I can honestly say I’ve learned a lot from other people posting links, tips and how-to articles there.  However, I realized that the software I used was just as distracting as Outlook since I had notifications of new “tweets” turned on.  Now I check the Twitter feeds less frequently which helps maintain focus. 

If you’re on Twitter feel free to follow me at (just don’t waste time doing it). :-) 

#5 Respond to Phone Calls in a Batch

I think I got this idea from the 4-Hour Work Week…can’t remember though.  Regardless, it’s a good tip.

Due to some things going on with work I’ve been on the phone a lot the past few weeks.  A lot of people were calling me and I either answered right away or called them back right away if they left a voice message even if I was right in the middle of something I needed to get done.  Now, I try to call people back in a batch.  I figure if it’s really urgent they’ll either keep calling, I’ll see who’s calling on the caller ID, or they’ll try to email me (even though I manually check email now).  It’s OK to return a call later in the day or even the next day in many cases.  I know because I’ve been doing it the past few weeks.  If I’m expecting a really important call I’ll answer it right away of course…gotta have some flexibility there.  However, by batching my calls together I’m able to shift focus, finish it all up and then move on to my other tasks defined in Outlook.


There’s certainly nothing earth shattering listed here.  But, I can tell you that by doing these simple things my productivity has gone up a lot which leaves more time for fun stuff once all the work is done.  If you have some other tips and tricks you follow to stay focused and more productive let me know.  I’m definitely interested in hearing different ideas.  I don’t ever want to be one of those people who look busy but are rarely productive.

comments powered by Disqus


  • Dan,
    Hate to leave a comment for a different article but for some reason "Leave a Comment" is disabled on the

    You state you recommend NOT to use the DataSet to return data directly but rather set the properties in the Customer Object. My question - can you tell me using your sample, how do you return multiple Customers at once? Your sample returns on record but what if you were returning multiple say Customers where Country = USA?



  • Bob,

    No problem on asking the question here. Comments turn off once a post has reached a certain age. As far as your question, I'd return a List or a Customer array (Customer[]) in cases where multiple objects are needed. List is easiest to work with plus you can easily convert it to an array if needed. So, as I walk through the DataReader I'd create a new Customer, fill the properties from the DataReader, add the new Customer object to the List and once the reader loop is completed return the List from the method.

  • I have refused to use Twitter from day one. I don't follow anyone. Reading emails, blogs, articles and discussion forums takes more time than I like, I don't need to add another channel of information. Adding Twitter will tip it to a true information overload.

    I read blogs during breaks instead of dedicating time for it. It all goes to self control and control the time you spend on the web.

    I am more productive when I take more breaks and be AWAY from the desk. It's good for you mentally and physically. You don't want to get any RSI symptoms. I have a recurring reminder every 2 hours (less is better) in Outlook to remind me to take a break.

  • Great tips Dan! I know one of the big things that helped me was uninstalling the bloglines tray application that would popup whenever a blog was updated. :) I think turning off email/twitter/blog popups is one of the best productivity boosters around.

    Thanks again!

  • Hey Dan...

    All great ideas!

    I can't get to twitter from in here, and I find that because I can't, when I'm at home, I don't spend a lot of time on it either. I know there's tons of good links/info that comes across, but lots of people are trading email exchanges for long-running interchanges on Twitter, and I just don't need to read that!

    Keep up the good postings!


  • Tony: Taking breaks is a great idea. I'm really bad at stepping away from the computer for awhile. It definitely helps get a fresh perspective though.

    Bryant: Yeah...the bloglines application would be a time killer for me. Any of that stuff that pops-up can't possibly be good for focus. :-)

    Dave: I'm with you on the people using twitter instead of email. I see that a lot and wonder why they don't just take a second to open up their email client and go that route.

  • Excellent article. I actually talked about similar things on my blog post--HOWTO: Get 4 More Hours Every Day.

  • Dan,

    Sorry to bother you again, but I am new to the whole OO dev movement.  I have been racking my brain trying to figure out how to leverage your pointer of List<Customer>.  I have searched all over the Internet trying to figure this out.  Although I have uncovered some good pointers, I have not been able to easily figure out how to retrieve multiple customers.  Would it be too much to ask if you sent me a version with a Customers List?  I am having troubles figuring out where this should go and how to work this into the Class structure of the Customer that you set up with the N-Tier structure.  I was wondering if you it was at all possible if you could post a revision to your source code or send it to me at [removed]?  All I am looking for is a structure to support multiple Customer objects.



  • Bob,

    No problem. It'd be something like this if you wanted to return multiple Customer objects (wrote this on the fly so it's not the complete code but should get you started):

    public List GetCustomers()
    //Code to open DB and create command would go here
    SqlDataReader reader = cmd.ExecuteDataReader();
    List custs = new List();
    while (reader.Read())
    //For each row create a new Customer object and fill properties
    Customer cust = new Customer();
    //Fill cust properties from DataReader (only showing 2 here but there may be many more)
    cust.ContactName = reader["ContactName"].ToString();
    cust.Country = reader["Country"].ToString();
    //Add cust object into List collection
    //close up reader, connection, etc. here
    //return custs collection from method
    return custs;

  • Dan,

    Thanks so much for pulling this together! Where would this go - in the DAL or someplace else?


  • Dan,

    I finally managed to figure this out. If you want, I can email you a copy of the updated source code to extend your example to include multiple records using a List. I also developed it in VB. Let me know if you want it. You can email me at and I will send it over.



  • Rod,

    I'm with you. Since using the new "homepage" I've cut my browsing down to probably 10 minutes a day (total guess...but it's way less than before).

Comments have been disabled for this content.