Ted Patrick - Flash Platform @ Adobe Systems


Note: This is the personal blog of Ted Patrick. The opinions and statements voiced here are my own.



Development TODO Lists

DIGG IT!     24 Comments Published Thursday, June 11, 2009 at 9:49 AM .

Over the past few years I have found that keeping an updated prioritized TODO list for app development is really essential. The TODO list habit started out of the need for me to stay focused but evolved into prioritizing what I was working on ranked by risk. Software development is essentially a game of risk management as any part of an application can quickly become very complex and suck the life out of your development schedule. We have all been there, the aspect you think will take the least time time ends up taking the longest for some odd reason. The TODO list helps me stay focused on the high risk elements early and forces me into a fail early, fail often model of development. I really like getting the hard problems out of the way first and slowly working towards an ever more stable release with constant lower risk refinement.



Here is how I manage my TODO list:

1. Write a list of all TODO items in the application each must have a defined completion point ( what is complete here? ).
2. Rank these by risk ( How hard are these items? How long will they take? Have you done this before? )
3. Work top to bottom on the list
4. Keep this TODO in version control within the build

The practice has really helped me built lots of different software projects and has made "What should I be working on?" much easier to answer at any point during development. It also is super handy for long term projects where you WILL forget what you were working on and what needs to be completed. I do know some developers that do this inline in the software application but I really like having a separate document for printability. Wasting a peice of paper on a priority list of TODO's is very high value in my book.



So take some time and write out a TODO list for the application you are working on. It really clears your head and allows you to focus on what is important in your app.

Cheers,

Ted :)

24 Responses to “Development TODO Lists”

  1. # Blogger Chetan Sachdev

    TODO list is useful. Have you tried Mylyn? It makes development a lot easier.  

  2. # Blogger Ted Patrick

    I tend to use ASCII text in notepad/Textmate. I guess I am stuck at doing things as simple as possible.

    Mylyn looks nice!

    Ted :)  

  3. # Blogger Ted Patrick
  4. # Blogger TJ

    Agreed, Mylyn rocks. I use it in combination with Trac and it has made my workflow much smoother.  

  5. # Anonymous Phil Peron

    Slightly different but along the same lines is the issue tracker you get with services like bitbucket.

    This has been invaluable for times when I revisit something after a long break and wonder what the heck I should start on. It also acts as a great motivator when I see that list getting shorter and shorter.

    It's my development carrot. :)  

  6. # Anonymous Robert M. Hall

    Hey Ted,

    I've been using todo lists, be it on a napkin or simple text document for some time, and totally agree, helps you stay focused, not forget things and prioritize easily.

    I've never gone full blown with the whole GTD approach, but I have been using Things from http://www.culturedcode.com/ on my mac and my iPhone (it syncs super easy, even across multiple installs on separate machines to one iPhone) and it has made things even easier for me. You can make it as simple as you want, or adhere to nearly all the principles of GTD with a few exceptions. It also integrates really nicely with iCal as well.

    I also use a little custom SWF panel in Flash to handle random todo's - had heard of Mylyn, going to take another look at it now. Definitely something to be said about simple text files and handwritten notes, but I am really productive with Things, can't recommend it highly enough, its well worth the cost.  

  7. # Blogger LordAlex Leon

    I use backpack from 37 signals for my To-Do's really like it.

    +LA  

  8. # Anonymous Ian McLean

    Mylyn is nice but its a bit difficult to get running in Flex/Flash Builder. I've also seen issues with builder after Mylyn was installed. Its also dependent on connectors being available for your bugtracking system and it seems only JIRA and Bugzilla have stable connectors. I use Mantis so its a dealbreaker for me.

    Without a connector you can set up a local task list which has some value, but I think there are better To-Do list apps out there. If you're running OSX check out "Things" by CulturedCode. There's even and iPhone app to sync with.  

  9. # Anonymous Ian McLean

    https://tasktop.com should definitely be mentioned here. Its a commercial incantation of Mylyn and has significantly more connectors available.  

  10. # Blogger Josh Tynjala

    Except for the occasional //TODO: comment in my code for something that is nice-to-have in some hypothetical future release, all my TODO lists are hand-written on physical paper. I can't do it in a text file on the computer. I have to have a real notepad of paper next to me to write stuff down and cross it off as I go. For me, it's a lot like how a physical paper book is way better than an ebook on a screen. I'm not really sure why, though.  

  11. # Anonymous Aral Balkan

    I use The Hit List for making dev todo lists; love it! :)

    http://www.potionfactory.com/thehitlist/  

  12. # Blogger Richard Leggett

    Myln, Basecamp, Fogbugz et al are great for teams. If you're an individual but you still want to provide a kind of real time TODO list for yourself and maybe your client, or even allow them to prioritize things, Google Docs/Buzzword are great as they allow real time updates for several users with absolutely no software learning/overhead/install.  

  13. # Blogger paddy

    I have used http://www.actionmethod.com/ I love the little notepads and use them all the time but the yearly subscription has put me off using the app.  

  14. # Blogger paddy

    Another process we've used is to set up a http://sites.google.com/ account for each project and the have a ToDo's List there together with complete project documentation...  

  15. # Blogger Chetan Sachdev

    Very nice list of apps. But I prefer free alternatives. :) I have used many different TODO apps but for development Mylyn Rocks !! you can easily see the task list and manage it. It doesn't lets you loose the context. I like it because its available within eclipse.
    Those who are not into development can use tracks(http://getontracks.org/) it is also based on GTD methodology. And I think platform independent (its a webapp).  

  16. # Blogger Ted Patrick

    ASCII text is still hard to beat.

    Ted :)  

  17. # Blogger Jason

    Absolutely agree, lists help maintain a clear view of your app regardless of where it's at in the development lifecycle.

    I'm still writing things down on a notepad...with pen and paper. Glancing down at my scrawled writing when my mind wonders has a powerful impact on day-to-day development progress.  

  18. # Blogger ariel

    a feature that I used to see in IDEs was automatic generation of TODOs from comments in your code. You would an //@todo and it would be taken into account. That way not only you don't need a separate tool when you're developing but the IDE can take you there at a click. I havent seen it recently though, maybe it fell through?  

  19. # Blogger Jason

    Don't think this has been mentioned yet but the Tasks plugin for Flex Builder is a pretty good way to handle lists right within the IDE - http://www.richinternet.de/blog/index.cfm?entry=911D4B57-0F0D-5A73-AF6F4D4D04099757  

  20. # Anonymous Scrimmers

    Sounds like a twisted form of Agile to me Ted. What is complete = Acceptance criteria?

    Ranking by risk instead of value/effort or story pointing.

    Scrim  

  21. # Blogger adampasz

    One should not underestimate the power of putting "TODO" items in code. You can do a "Find/Search in Files" via your IDE and easily generate a list of all your todo items.

    I'm also a fan of the pen & paper approach. :)  

  22. # Blogger Wesley

    Ted,

    Great post. One of the key advantages of using Mylyn or Tasktop beyond the TODO list capabilities is that it tracks the source code that is relevant for each task based on your interaction with Eclipse. For each task, you can focus the Eclipse UI on only the relevant source code. This helps you code faster by reducing time spent searching and scrolling. When you "activate" a task you worked on before, you instantly see the relevant code. This is also great for handling interruptions and then returning to a previous task.

    With Tasktop, you can print your list if you need to. You can also generate a report of time spent on each task, adjust it as needed, and upload to a JIRA or Bugzilla server. I hope you take a moment to give it a try.

    Wesley Coelho
    Tasktop Technologies  

  23. # Anonymous Tanu

    "http://www.richinternet.de/blog/index.cfm?entry=911D4B57-0F0D-5A73-AF6F4D4D04099757" Is absolutely wonderful!!! Simple, efficient, elegant!  

  24. # Anonymous zardoz

    I have at times used MUSTDO comments in the code when something must be done before releasing to live. TODO comments are often for nice to have's  

Post a Comment

Where to find me:

Ted on Twitter - @__ted__
Ted on Adobe Groups
Ted on LinkedIn
Ted on Facebook
Ted at Adobe

Latest

Lists

Links

Jobs

city, state, zip

Archives