Sunday, September 21, 2008

A big milestone is just the beginning

Well, we hit a big milestone last week. We upgraded our internal Timeless Time & Expense Web installation to version 3.0. This wasn't a 'developer-install', this was a real upgrade installation just like our customers will have to go through. We believe in using our applications just like our customers do. This means a feature complete application down to the installation. (Okay, we're not perfect. The documentation was not included).

As usual, it doesn't take long using the new features where you start to see the next enhancements. I was laying out the work items and assignments for the development of the Windows version today. I was using new 3.0 project management features for this for all of about 10 minutes when I wanted something more. Don't get me wrong, the new features are great and a big improvement but everything can be made better. Most of these will wait until 3.1 or later, but we hope to slip a couple into 3.0.

In any case, it was a significant week. Sometime in the future, we plan to give a limited sneak peek of the new version. Sign up to receive pre-release email notices when it is available.

Labels: , ,

Monday, June 2, 2008

I love automated unit tests

Did I mention that I am a big fan of automated unit tests?

As we develop Timeless Time & Expense 3.0, we are anticipating many things we would like to do. Some of these will not be available on 3.0 release date. Some are not even definate, but we are preparing for them now. One such item is a hosted version of Timeless Time & Expense.

Unfortunately, we put this off a little too long. We really should have done it months ago, but somehow other 3.0 development took priority. The key to a hosted version is running many organizations in the same database. This means adding another key field on nearly 60 tables. Were it only that simple......

Adding a new key field means a change to every foreign key and every data access call. Even that isn't so bad. The real problem is testing it. That is where a suite of automated unit tests help a ton. When developing the original web version, we created automated unit tests for all database and business logic. During the 3.0 development we expanded the tests for all new functionality. So even though we started this a little late in the project, it only took a week and a half to implement and test. Without already established unit test, this would likely have set the project back months.

An additional challenge was making sure the new logic really did only access one organization. After all, when your application only works with one organization at a time, how could your be sure it wasn't crossing the line somewhere? In new development, this wouldn't be such a concern. But when the change is to an established application it is a scary and daunting prospect.

Again, automated unit tests come to the rescue. With unit tests, we can simulate things that would take months to test through the UI. Only the last half week was spent adding the new unit tests. With that small time investment, we can be confident we can deliver a hosted version plus be ready for the next big change.

Labels: , , ,

Thursday, March 13, 2008

"More than a spreadsheet"

I was reading a user review for Timeless Time & Expense on of the major software download sites the other day. It was a short review, not much more than a single line that said "more than just a spreadsheet". It reminded me of the early days of Timeless Time & Expense.

Time tracking at its simplest is a piece of notebook paper using a line for each time entry. Like most time tracking systems this usually degraded to a once a week memory exercise. The next step for most was the use of spreadsheet software. This wasn't much better. Each project entry required a fair amount of typing and the memory exercise remained. With cut and paste it was faster to fill out the timesheet at the expense of accuracy.

Since many software developers we required to track their time it wasn't long before many tried to solve the problem. They typically created a 'better' spreadsheet. Dropdown lists were added to select clients and projects. This reduced the errors by limiting the selections to valid values. It was a litte faster and easier so more likely that time would be entered before the end of the week avoiding the same old memory excercise. But it was still just an automated piece of paper. The more detail you needed, the more time it took to select the correct information. This means it is only efficient for tracking time for billing - not for project management. Effective project management requires more detailed time tracking.

This is where Timeless Time & Expense was born. Detailed time tracking for project management requires a different paradigm - one taken from project management. To effectively manage a project, tasks must be broken down to a level of detail which allows the tasks to be easily estimated and tracked. This naturally results in a tree hierarchy with many levels of parent-child relationships. This is the paradigm Timeless Time & Expense uses. A paradigm that is as easy to use with two levels as it is with twenty (more on that in a future post).

This ease of use for our customers come at a price for the developers. In the limited, spreadsheet approach reporting is simple database queries. With a dynamic project hierarchy, it is much more complicated. Luckily, we have developers who are up to the challenge and are currently working to expand and simplify reporting for Timeless Time & Expense 3.0.

Labels: , , ,

Thursday, March 29, 2007

Here we go again

It has been an interesting year. After many years of small changes to Timeless Time & Expense for Windows, we decided to embark on a major project to add a Web interface for Timeless Time & Expense Enterprise. Outside of minor fixes and the constant marketing of an application, it is complete.

While functionally is basically the same as the desktop version, creating the web version was a new adventure. We take a lot of pride in the usability of our applications, so it was no small accomplishment to provide the same usability in a web application. It was exciting in its own way. Sometimes I sit back, look at it and smile.

However, it is not as exciting as adding really useful new features - new features that simplify and change the way people work. That's what makes us excited about Timeless 3.0. It is too early to talk specifics, so don't try to make me. I can tell you this release will be a mix of user requested enhancements and new features to further define the product in a crowded market. As usual, we have more usability enhancements for both the web and desktop to make both even easier to use.

It is early, but if you are interested in receiving beta information, sign up for the Pre-Release mailing list. We have only begun development of Timeless 3.0, so don't expect to receive anything any time soon.

I will just have to contain my excitement until then.

Labels: ,