Wednesday, September 24, 2008

Investigating Remember the Milk

I'm not a big fan of constantly changing how I keep track of my to-do list. I definitely prefer to keep track of it in a software application instead of paper.

I'm not tied to the web over a desktop application, however, I do keep different lists of what I'm working on at home and work, that makes the web a more acceptable solution for me anymore.

In the past I have done paper, which I was constantly rewriting. I love the look and feel of it, as well as the constant reminder of what I have to do while rewriting the list, however, with a decent size list rewriting it just took too much time. And I like order to my list enough that I could not just keep the list in a more disorganized state with items crossed off. It always felt too cluttered for me.

I've used Swift-To-Do List Lite. I like the interface, ease of changing views, scheduling items, creating repeat items and checking things off as done. I like that it's free. I don't mind that it's a desktop application, I've even blogged about how I liked using it in the past, and I still have it on my computer. However, I long ago hit the limit of 25 tasks. I like it a lot, but not enough to buy it and go over that 25 item limit. As of right now I still use this as my offline solution to quickly track something that I need to do. If I'm not at an Internet connection but have my computer, I will add it here and transfer it to my online list later.

I've been using Toodledo for about a year. There are a lot of things I like here as well. I like that I can make my list public. There is a great Google Gadget for Toodledo, that allows my home page in the browser to show me my tasks as well as the news. I'll save for later the argument about whether or not that's a good idea. One of my favorite features of Toodledo is that it is printable into a booklet. That allows quite a few tasks to be printed and easily carried in my pocket. There are times that I'm away from a computer but have time to do something that's on the list. When I knew these situations would occur I would print out the list. It is rare that I needed to have my list handy when I away from my computer. I still loved the feature. It also integrates with Google Calendar (of which I am a huge fan) and I can export the data into different formats to use wherever I want. I haven't gone through and used all of the additional integrations that exist, but the list is large and it's a very useful to-do list.

For some reason Toodledo has been getting annoying. I'm not sure why, maybe because I haven't been able to make public the list, or make public just a portion of the list. I want more visibility from what's on my list available to my co-workers, but only my work list, and I want my wife to be able to see my home list. And I have a list of things to learn, that I may want to share with specific friends. I don't want to have to have multiple accounts set up to create a list for each thing and then share them. I want to keep track of them all in one place, but share different lists.

Now I'm investigating Remember the Milk. When I started looking at Toodledo previously I had also looked at Remember the Milk. I still have some of the same complaints. The site looks like it was made for kids; maybe it's just the picture of the cow. I like the tabs on the site. The additional information that can be tied to each task as well as a note for tasks. I like that there are a lot of keyboard shortcuts. I don't like that there was no input feature, so I had to copy and paste my to-do items into here. I don't like that there is no export feature, so I cannot easily take my list and switch to a different system. There are less additional features than Toodledo has, but there does appear to be the ability to share publicly individual lists. I am still investigating and will post more if I find that it does support the features that I'm looking for.

Wednesday, September 10, 2008

We suck less is not enough.

There's a great presentation about Agile and it's implementation not being intense enough. This got me thinking about some things.

Why are companies implementing Agile?
What I can gather from reading is that companies implement agile in order to make the developers faster. However, the implementation of agile doesn't make developer's faster, only more focused. Since Unit Tests are used with Agile development it makes sure that changes are written in a way that doesn't break other parts of the application.

However, according to the presentation when used correctly Agile is meant to improve the efficiency of the entire system more than 5 times. That means a lot. To me that says that we aren't getting enough out of Agile. We aren't using it to it's fullest potential. And if we're not, why not? Do we not have the right type of personalities in place to make this happen? Do we not have enough people, maybe we are too small? Do we include too many people in some meetings in order to just get people in the room?

I don't know the answers. I think that at my company our agile process has some places that are heavy. I think we do put too many people in some early design meetings. I wonder if training on agile itself could help improve us. Could I be a better part of the overall process if I understood something differently?

The most important thing I got from the presentation though, is that too many people are looking at agile as a way to suck less. Sucking less is not enough. We must strive to excel. To reach far above and beyond what we had prior to Agile. It's not okay to be good, good is the enemy of great because we can get stuck there.

Monday, September 08, 2008

The beauty of Unit Tests

I love unit tests. I've become a TDD guy and prefer to do my development that way. I've learned to do that on the back end of projects where it's been easier.

What I haven't gotten into yet is Front End Unit Testing. It's something that I've started with. I've started working with Watir and would like to use JSUnit to unit test more JavaScript, however at this point I'm just working with JUnit on the back end.

The beauty of these unit tests though is that they make it easy to ensure that the entire system still works as expected. At work we are upgrading the OS on our database server and we needed to verify that it would not cause any problems. After the test server was set up it took only 10 minutes to test all of the database functionality. There are many other applications that also use this server, most of which were written before we started using unit tests, and those applications will take a lot more time to test. If we had unit tests in place for all of those applications, they could be fully tested in half of a day.

Patches, OS system upgrades, and even new versions of software can all have unexpected effects on software. Automated desktop testing (even of web applications) can be used to test upgrades of desktop software.

Tuesday, September 02, 2008

Annoying power saving mode on computer

I have a simple cheap Dell desktop. I bought it from Walmart. A $500 PC more than serves the needs that I have for my home computing, even with the application development that I do.

One extremely annoying behavior that it has is the LED on the front. When the computer is on, it is a cool, calming blue light. However, to save power, I have the computer go into hibernate mode after 30 minutes. If I'm not using it for that long then I want to save as much power as I can. However, in sleep mode the blue LED become an annoying blink.

The blinking is especially annoying at night while I'm trying to sleep and laying in bed in the dark. Half my room is lit by this blue blinking. Why is it that there's not a more subtle LED in there that uses even less power to be lit, but more dimly when it's sleeping. Why does a sleeping computer have to be more annoying than an awake computer?

In case anyone is wondering, I leave my computer on instead of turning it off at night time, because I will have thoughts or dreams that come to me and I want to capture them quickly. A little jiggle of the mouse and I'm on my way typing. Also I will try to get on the computer before I head out the door for work in the morning. When I can, I only have a few minutes and can't spend them waiting for the computer to boot up. I am very mindful of the energy I use in my house, but I also love the availability of the computer always being on.