Matthew Lang avatar

Matthew Lang

Family guy and web developer

How I Use Projects in Todoist

Inspired by Mike Vardy's series on using Todoist, I thought I would share how I use Todoist and the benefits I get from using it. In this post we're going to look at the projects feature of Todoist.

Todoist's projects are a fairly standard feature. It's a place where you can bring together related tasks. However that's where the similarity to projects ends. Where you might be expecting a start date and an end date for the project, there aren't fields for this in Todoist. A project is just the name and the colour that you've chosen to assign to it.

Keeping this simple means that projects can be used in different ways. I try not to think of them as projects and instead think of them as lists. Lists can expire, be completed or be allowed to run on forever. The idea of a list triggers a more flexible collection of tasks than a project, which is why I always think of projects in Todoist as lists. I have a number of projects that behave more like lists then projects:

  • Reading - All books that I plan on reading in the future. Fiction, programming and career and some others as well.
  • Writing - A list of writing ideas for my website. It starts with scheduled ideas planned for the near future and graudally moves down to ideas that I might one day use.
    Home - I have a list for everything related to family life. Golf coaching, birthday parties, shool activies, days out. They all go here.
  • Sharpen The Saw - Recently I started capturing things I didn't know about the tools I was using. Everyday I pick one of these off and find out more about it. It's a quick way of learning more about the tools I'm using.

Todoist has a feature where you can indent projects under one another. I try to avoid doing this. In the past I did indent a number of projects but quickly I ended up with three level deep projects and it made getting a top down view of my list more difficult to read. I try to use the indentation of projects as a last resort and even then it's only a temporary measure until I can find a better place for a group of tasks.

I use Nicholas Bate's idea of a personal compass as a basic grouping for tasks. Six compass points that represent six aspects of my life. It's a fairly easy way to ensure that you can group things sensibly and that you're not allowing one part of your life to have an adverse affect on the others. Using this I give each compass point a colour. When a project is created it is assigned the colour of the compass it closely relates too. This makes tracking my progress on different compass points easy to do since I can only ever see six colours of my compass points in the productivity trend window of Todoist.

That's it for how I use projects in Todoist. Nothing should surprise anyone here as most people must use similar ideas. Projects in Todoists are simple but flexible and can be used to group your tasks accordingly. Next week I'll discuss labels in Todoists and their use.

Update - You might want to read my thoughts on deciding if a project is in fact a context.

Three Months With Linode

My blog has been hosted with Heroku for sometime. My requirements for my blog were not complicated. It's a simple static site that is generated locally on my computer and then pushed to the server. My performance needs aren't complicated as well but one thing that irked me on Heroku was the extra cost in going from one dyno to two dynos. A dyno is a computing unit they use to allow applications to scale from their free single dyno to hundreds should you require them. At just over $35US per month for two dynos, I felt that I just wasn't getting value for money. Heroku does do a lot of the lifting for you when it comes to deploying and hosting but how much of it is necessary for what is a simple static site? After hearing good things about Linode I decided to make plans to move my blog away from Heroku.

At first I was slightly daunted by the fact that I would be setting up the server myself. I've never been a fan of system administration. If there's easier ways of setting things up I'll always opt for them but if i was going to move my blog I had to give the sysadmin part of it a chance. I spent a day setting up the server with Ubuntu 14.04 LTS and getting all the necessary dependencies installed. Thanks to some similar steps for a previous version of Ubuntu I was able to get the site up and running by the end of the day.

My blog runs on the Linode 2048 plan which is $20US per month. This isn't the cheapest plan available but it does give me a fair size of memory for my site. I am able to downgrade the server to the new Linode 1024 plan, but I'm happy with my plan for the moment. The server is probably capable of hosting a few more other sites if needed but I don't see that being necessary anytime soon although it is good to have the option there.

To this day I haven't had to do much to the server. I've setup notifications when certain thresholds are reached in terms of size and there's backups of the server taken on a daily basis. You know, just in case. It just runs. And that's the beauty of services like Linode. Yes you could argue that Heroku just runs as well but the setup I have with Linode is just as simple as it was with Heroku. I still keep my blog in a Git repository on BitBucket just as a backup but all that's needs to be done to update my site is run a Rake task. It probably could be simpler if I installed Dropbox on the server and let it continually update each hour through synchronisation, but I prefer to have a little bit of control when it comes to publishing, so the Rake task suits me fine.

After three months I couldn't be happier with Linode's service. Having a hosting solution that just works, requires little maintenance and is relatively cheap are all good benefits. I might even start hosting some Rails applications on them soon!

James Shelley has an important insight into the importance of journaling:

Writing a journal feels juvenile. That is the beauty of it. Even as you write the words, you cringe in anticipation of how an older, wiser version of yourself will probably ridicule you later. You can almost hear the self-criticism, faintly echoing in from the future. That’s why the thoughts seem childish as soon as you transcribe them into alphabetic forms.

Journaling Feels Juvenile by Jame Shelley

Confession: I've never used IRC

It's one of the first big technologies to emerge from the early days of the Internet, it's still a preferred form of chatting online for many people and yet I've never used it. I'm taking about Internet Relay Chat or IRC for short. I wouldn't expect many people to have used it with the abundance of free chat apps that are now available for mobile devices, but what I think is unusual about me is that I've been using the Internet for over 20 years, well before the age of mobile devices and apps and to this day I've never used IRC.

The first time I heard about IRC was during a tutorial class at univeristy. We were supposed to be learning about using multimedia to put together an interactive article but with the teaching assistant only able to focus on one quarter of the room at a time, many students were in fact using the time to chat with friends on IRC. When one of my class mates showed me what it was I was intrigued but it quickly slipped my mind and for a few years I never looked at it again.

In the early years of my career I then discovered that many of the programming languages and topics I was interested in at the time had matching channels where like minded developers could meet to help each other out. Even then though I didn't see the point in using it. What might have been a major road block for me was that I wasn't an active computer user outside of work. Work was work and it started at 9am and finished at 5pm. Since then I'm glad to say that my attitude to my career has changed and I've taken it a bit more seriously and invested in reading and learning programming languages in my spare time. Still to this day though I've not used IRC.

A few years ago when the Ruby on Rails framework was in its early years, there might have been an active channel or two for developers to chat about the framework and help each other out but social networks are gradually replacing old technologies like IRC. It won't be long before just the die hards are left using IRC. I've no doubt that it is a good way of communicating online, I just think that people that know about IRC look for something a bit more shiny in terms of a user interface while many new users to the Internet immediately turn to social networks rathen than the protocols that existed in the early days of the Internet.

Even though I've never used IRC, I think it's a shame that a key technology such as IRC is overlooked and frequently never considered as an option when looking for places to chat with like minded people. IRC numbers might be dwindling but I am going to download an IRC client and open up a few channels to see what all the fuss is about. With just one dedicated social network under my belt, I think I can afford sometime exploring other ways of chatting online. Besides, I might actually get to like it. I know I usually hold off when it comes to adopting new technologies and apps but I think 20 years is too long a time to wait to see if something takes off. IRC is still here so why not give it a try?

Chad Fowler's book, The Passionate Programmer has a chapter entitled 'Mind Reader'. In it Chad talks about a colleague who was always turning in work ahead of it being asked for.

That's where Rao's magic trick came in. He didn't talk much in those conversations, but he was anything but disengaged. He was listening carefully. And, giving away his secret as no magician would, he later told me the trick was that he was only doing the things that I had already said I wanted. I had just said them in ways that were subtle enough that even I didn't realize I had said them.

I think we both agree on the fact this is no trick. It's better than that. It's someone listening intently, capturing ideas and suggestions no matter how small they are.

Based on experience this is a task in itself. I've been in many a meeting where suggestions have been banded about, but never followed up. Then months later when the team did get some time to implement these ideas, they were almost forgotten and so needed another meeting just to remind everyone about them. Despite this happening several times, there was little motivation from the team to record each of these ideas, let alone try these ideas out on their own.

The other day I refactored a bit of code that was duplicated across the code base a number of times. It was one of those little jobs that had been mentioned in the past by the client but never written down on the board as something we would like to have. As I was already working on changes in a nearby section of the code, I decided to refactor out the duplication. It took me just over a half hour to do. Happy that it was working correctly, I pushed my changes up for testing and moved onto the next card. The client might not spot it right away, but it's there. A small improvement to the code that just took me an extra half hour to do. A duplication removed that means that any changes to those parts of the code can now be done in one place rather than four.

My problem isn't that I don't listen, it's that I don't capture enough during those meetings and what I don't capture I end up forgetting. I don't record the small things in favour of the big picture and while many might see that as a good thing, the small things give us small wins that contribute to the bigger picture.

From now on I'm going to make a point of capturing more details during my meetings with the clients and keep a list of minor changes that have been recognized but not formally requested. As long as these changes are small, tested and don't impact the code base in a negative way then I say it's fair game to be implemented.

Getting the Most from Feedbin

There's been a lot of talk over the last couple of years that RSS is dead and it certainly didn't look good when Google closed their RSS reading service, Google Reader. Since the news that it was closing though there has been a number of new RSS services that aim to fill the gap. Having tried a couple I evetually choose Feedbin. It looked promising from the start and I'm glad to see that today it has grown into an amazing application and makes managing and reading your RSS feeds easy.

Over the course of the last year or two, Feedbin has added a number of great features to the service. I thought I would round up some of my favourite features that I use daily to manage my RSS feeds.

Time To Unsubscribe?

One of the problems I had with Google Reader was that it was difficult to see when a feed was last updated and how active it was. Overtime people lose interest in keeping their site updated so eventually feeds start to stagnate. It was hard to see this in Google Reader. Unless you were aware of the decline in posts, which is easy if you only follow so many accounts, there wasn't a way to check your feeds to see which were active and in-active.

Feedbin solves this problem on the feeds page of your account. Not only can you search and unsubscribe from feeds, you can also sort them according to when they were last updated and also how active the feed is. This makes it easy to spot the sites that are slowing down in posting and might be worth unsubscribing from.

Showing the feed activity on Feedbin

Take A Shortcut

Google Reader had a great set of keyboard shortcuts. I even created a mind map for the shortcuts to help me memorise them. They were essential in allowing me to quickly scan through all my feeds and mark those that were worth reading later on in the day. You'll be glad to hear then that Feedbin also has a great collection of keyboard shortcuts at your disposal. With these you can navigate around your feeds, search, action articles and even share them to your own connected services such as App.net and Twitter.

If you're not a software developer then you might be more familiar with using the mouse when it comes to navigating your applications. For applications such as Feedbin, I say give the keyboard a try. While you might hit a few stumbling blocks at the start, trying to remember what key does what, keep at it. Using the keyboard is a much faster way of interacting with the computer and the keyboard shortcuts for Feedbin are minimal. There are only 20 sets of shortcuts to remember with most of them being a single key, but even learning just a quarter of these will make such a difference. And the best part, just press '?' on your keyboard while using Feedbin and it will display all the shortcuts you need.

Action!

One of my early gripes with Google Reader was the lack of automation. Some feeds I subscribed too always needed a specific action or used for logging purposes. For these feeds I wanted them starred or marked as read as soon as they came in. In Google Reader this wasn't possible, but it can be in Feedbin.

Feedbin has a section in the setting page called Actions. Here you can define actions that meet one or multiple feeds. The two actions available are starring an article or marking an article as read. There might be more in the future but for now these make automating the management of your feeds a lot easier. Why would you do this though?

Showing the actions for Feedbin

Some feeds are always interesting. I subscribe to the Caesura Letters newsletter through an RSS feed. I star the article every day so that I can find it at lunchtime for further reading. It's one less action to do on a daily basis but it still saves a bit of time.

Save Time, Save That Search

Searching your RSS feeds is a routine thing for me. Maybe I'm looking for a specific set of articles or articles that feature a specific keyword. What happens though when you want to do that search over and over again? Well you save it!

Feedbin has a great feature called saved searches that lets you save the searches you carry out over your feeds. These appear in your sidebar with the search icon beside them so that you can differentiate them from the rest of your feeds. One saved search I have is my 'Recently Mentioned' search.

Showing my saved search from Feedbin

I follow a number of blogs that are part of an relaxed circle of bloggers. We link to each other's posts for other people to see. It's not a traffic building thing, we just link the stuff we find interesting from each other on our blogs. I was getting mentioned a few times when I thought about having a search for this. With my saved search now, I can see when I was last mentioned. You might call it an ego thing, but I prefer to think of it as a validation tool to see what people find interesting. It helps to find out what people link to on my blog and whether I should publish similar content.

Use Your Favourite Reading App

Feedbin also has an API that allows other apps to connect to Feedbin. While Feedbin excels as a great application on the big screen of a desktop, laptop and tablet, I find the mobile interface not that easy to use for scanning feeds. My app of choice for checking my feeds on my iPhone is the wonderful Unread by Jared Sinclair. With simple gestures for quickly scanning and actioning articles, it is by far the best app I have found yet that connects to my Feedbin account.

Feedbin is a great RSS reader and I use it daily, often multiple times a day. The best part of Feedbin though is the automation. The actions and sharing to your favourite services are the best time savers for me. With feeds handled automatically in the background and one key press to share to other services like Instapaper, I can breeze through hundreds of articles on a daily basis.