Phew! There’s a backup!

Network management is a field I’ve been in for the past few years. In addition to making sure that packets get from point A to point B in the most efficient manner, I’ve also had to deal with network failures and disaster recovery. Essential to the disaster recovery scenario is the concept of backups. We’ve all heard of backing up the files on your computer, and backing up the servers, and storing them off-site, etc. But sometimes people overlook other backups that need to be handled. Namely, network device configuration backups. It really sucks when you realize that the smoking router in the corner has the only copy of the configuration you need to get the network back up…

 

I’ve written a bunch of code in the past to handle backing up a bunch of different types of equipment, and I’ve decided to make it open source. This new project will be hosted at SourceForge, and there is a link to the project page in the links section of this blog.

 

The initial code release will take a little bit to put together, but I’m hoping to have an alpha release within a month or so. It’s all written in object-oriented perl, a language I find fun to code in. I hope someone out there finds this useful. I know I spent quite a bit of time looking for a solution like this, and was sadly disappointed that I did not find one…

 

phpTodo 0.6 Released!

I released version 0.6 of phpTodo last night. There were some minor bugfixes, nothing major though.

 

Added to this release were a few new fields in the database to track creation date, and last modified dates. Future releases may utilize these fields more, but at the moment they’re only being used for the sort stabilizer.. The task modify code was updated to deal with these 2 new fields. Each time a record is created, the create_date field is populated. Every change updates the last_modified field.

Which brings me to another feature I added. I noticed that if you sort by priority, status, or anything other than subject, the entries shifted when you reloaded the page. My initial thought was to just add a behind the scenes secondary sort on id. I changed my mind and decided to give that choice to the user. So, on the preferences screen, the user can choose what field to sort on. This is set to task ID by default.

 

At this point the program is pretty much feature complete. I’m adding in WML support before the 1.0 release, but that’s about it. Besides bugfixes, of course.

 

After the 1.0 release, I have some bigger plans. I read a book by David Allen about todo lists and handling tasks.. Really enlightening stuff. Basically, the idea is to process everything in your inbox (anything you need to do), and determine what the next action is. At that point, you file it away based on when it needs to be done. There’s obviously a lot more to it, and if you’re interested, you can find his book on Amazon.

Based on what I learned, I’m planning on adding a number of features to phpTodo. First, I plan on adding an email module. This will allow the user to email todo items to their list. I’ll be adding some sort of authentication schema to it to ensure the item goes to the correct list. That has yet to be worked out.

I’m also looking at updating the main screen. I’ll break it up a bit to become a dashboard of sorts like the presonalized google homepage. Essentially, there will be an inbox which will consist of un-sorted todo items, an interface to quickly go through those items, the main todo list, and a calendar with appointments.

Since I’m adding a calendar, I want to also add a tickler module that can send reminders via email, sms, IM, etc. The user can choose the method(s) they want to be notified by and the system will alert them when the time comes.

I also want to add group todo lists. In essence, another user that will “share” their list with other users. This will, I believe, add more project management capabilities. Anyone can add a todo list item, and anyone else can take it and work on it. Possibly some sort of notification feature to update all users regarding those items.

 

Overall, I think this project is working out pretty well. I’ve learned a lot about php programming and I’m working on solidifying my coding style. It’s helped me a lot with the coding I’ve been doing for work. I’ve put together a complete database system, dsl tools, and the like. Good stuff that I seem to be getting some decent praise for.. :)

 

You can download the latest version of phpTodo from the phpTodo SourceForge page.

phpTodo 0.5 Released!

Yesterday I released the latest version of my phpTodo project. In a nutshell, phpTodo is a todo list manager with RSS feed capabilities. I find it extremely useful, and I hope other are finding it just as useful…

 

Since this is the first entry I’ve written about phpTodo, let me give a little background information. I have things to do. Yeah, so does everyone else. And like most people, it’s hard to keep everything straight. I had my honey-do list at home, a list of stuff that I wanted to accomplish, projects for work, tasks for different projects at work I was working on, etc.. It was all a mass of confusion..

 

So, I decided to start using the todo list manager in Lotus. Well.. it works.. It’s kinda nice, but it’s slow, and a real pain to see everything in one shot. So, I started looking online for a web based one that I could use at home and work. I found a couple, but nothing that allowed me to categorize and view by category, etc. So, since I had wanted to start a sourceforge project, and I like programming, I decided to write one. And I got to thinking.. How could I ensure that I could see my todo list from anywhere? Well, a webpage is a good start, but web pages aren’t always that great on mobile phones.. I happen to have a blackberry that I carry with me, so I looked around a bit more.. I could get RSS feeds on my blackberry, so how about that?

 

And with that, phpTodo was born.. To date, I’ve had over 400 downloads of the software (that’s all vesion combined) .. The previous version, 0.4, had approximately 170 downloads. Not too bad for a piece of beta software.. :) At least, I’m happy with it.. :)

 

This latest version contains a number of bug fixes both big and small. I’ve also added some code to redirect the user properly when the login times out. Essentially, if the user is doing something and times out, it records the current information, redirects to the login page, and then redirects them back to where they left off after they login. Works pretty well… :)

 

Work continues on the project. I’m at 0.5 now and I’d like to get a 1.0 release out pretty soon. So, for the time being, I’m in a feature freeze. At this point I want to ensure that everything works correctly and iron out any bugs that may be lingering around. Once I get 1.0 out, I’ll look at adding some new features.

 

If you’re interested in checking it out, here’s a link to the sourceforge project site. I plan on setting up a formal project site for it, but I haven’t gotten around to it yet…