Archive for July, 2007

Project Planning

In a previous post I mentioned my frustrations with MS Project and my desire to create a better alternative. That alternative is nearly to the point where I can start using it (it still needs work until I’d share it with others).

But to really make it better than MS Project, it needs to be able to answer common questions I get from producers/managers/clients. Here’s my short list:

  1. When will the project be completed?
  2. What is person X working on now, and working on next?
  3. What tasks are ahead of schedule?
  4. What tasks are behind schedule?
  5. What is the next milestone, what features will it have in it, and when is it going to be ready?

Another one that I haven’t figured out how to answer yet is…

If we add another person, what will that do to the schedule?

Help me out and post other common questions you might get about a project you’re managing (or working on) that scheduling software should be able to help you with.

Here’s a screenshot of the latest version:

Object Handles now availbe from Google Code

I’ve moved the download location of Object Handles to take advantage of the download functionality of Google Code. This should let me manage versions much easier.

http://code.google.com/p/flex-object-handles/downloads/list

The neat thing is, I used an ant script to automatically post files there!

I hate Microsoft Project

5/2008 Update: Software described below available at www.agileagenda.com

One of my primary responsibilities at work is managing software projects. To do this one of the most important tools in my toolbox is Microsoft Project. Unfortunately, I HATE IT HATE IT HATE IT. I have spent untold hours trying to get very simple things to lay out in a project the way I want it to. Then I’ve spent even more hours when tiny parts of plans change.

So why do I use it? Because I’ve found nothing else that’s better. It seems like every single other bit of scheduling software out there is either just a low-cost clone of MS Project or even more complex and bloated.

Here’s the work flow I crave for project management:

1) I enter in the necessary tasks in a project, including dependencies between tasks.
2) I enter in the available resources (people).
3) I assign tasks to people.
4) I assign priorities to tasks that influences the order they should be done.

The software should then crank through it all, tell me what each person should be doing next, and tell me when the entire project is currently estimated to be done.

I should be able to print a report out so when I say “We’re not done for another 4 months” to management, I can point to the pretty GANNT chart to explain why.

This is all great. MS Project does that for me. Here’s where it fails, miserably…

After I make that initial project I should be able to:
- Alter anybody’s availability EASILY AND PAINLESSLY. I never want to see a message about over-booking just because Bob will be out next Thursday.
- Mark any task as complete (including tasks that aren’t “supposed” to be done yet)
- If I mark a task complete, and later find out it’s not really done, I should be able to mark it 1/2 compete without the schedule going BONKERS.
- Easily change the order tasks should be done in.
- Be able to tell, based on what tasks are complete and the new availability, when our new expected end-of-project date is.
- Intelligently manage milestones & builds.

I NEVER EVER EVER want to specify a start or end date for a task. I NEVER EVER EVER want to go through a tedious process to mark a task as already done and moving later tasks up.

So I’m writing my own replacement that handles all the above criteria in a simple, consistent way. It lacks many of the bells & whistles of MS Project, that’s intentional and I call it a feature. Here’s a screenshot of my current working version:


See the grey vertical bar? That’s “today”… yes the software actually understands what “today” is, and understands that if tasks were supposed to already be completed, and they’re not, the project is slipping. See line 14? That task isn’t done but it should have been done days ago. The software knows that, and extended the end-date of the project automatically.

It also understands that if tasks that aren’t scheduled until some later date, and they’re already marked done, the project is ahead of schedule! See task #3? It’s done, but wasn’t scheduled to start until tomorrow. The software knows this, so It automatically moved the start-date of later tasks up like #4.

Since it’s an AIR application, it will work on OSX as well, so I don’t need to get my dell Laptop out to do schedule stuff anymore.

I’m probably one good weekend of work away from having a version that I can use, and two or three weekends away from having a version I could distribute to others.

SwfControls (Graphical Buttons and Popup Menus)

On Saturday I blogged about a new component I was working on and I got a few responses saying it looked really useful. So I threw up a project page and it’s available for download.

I’m calling it “swfControls” for now, but I’m hating the name the more I think of it. Any suggestions? At this point, I’m really considering bundling ALL of my controls together, maybe I should just do that to avoid naming them all.

http://rogue-development.com/swfControls.xml

Right now there’s just a binary SWC for download, I’ll get full source posted soon.

Enjoy!

LogViewer updated

It now correctly displays XML entities (<,>,& etc.)

Download from the usual place:
http://www.rogue-development.com/logViewer.xml

XRay Updated!

John Grden has just released a new version of XRay, the gosh darn bestest Flash debugging tool out there.

The big news for me is it uses my LogViewer component for the log output panel! I hope everyone enjoys it.

Get it: http://osflash.org/xray

John’s announcement:

New LogViewer component replaces Xray’s output - Thanks to Marc Hughes for creating such a killer component and being cool enough to integrate it with Xray!

includes:

*Debug level filtering
*Text filtering / package filtering
*Highlighting
*Search

Latest Xray interface online:
http://www.rockonflash.com/xray/flex/Xray.html

Download the SWF to run locally:
http://www.rockonflash.com/xray/flex/Xray.zip

LogViewer component:
http://rogue-development.com/logViewer.xml

AS3 News for Xray:
Currently, I have a solid beta of the component working. It looks through all display lists and the property inspector seems to be working properly. Some of the other features with highlighting nodes on stage, grid drawing, filters and sound are not working with AS3 yet. I expect that those will all change in a big way so, I’ve just been getting base functionality running. Also, I’m still at a bit of a learning curve with AS3. Debugging visual aspects like we did in AS2 is definitely different, and thats why it’s taking a while to get something out.

The good news is, I’ve written it to work:

1. as a component for CS3 (like the as2 version)
2. with the new constructor: var xray:Xray = new Xray();
3. with flex2 via new constructor

If there’s enough interest in it, I’ll post the beta with docs and let people hammer on it. Need is usually what drives us, so might as well stir up some need :)