As per my last post, I’m just beginning my foray into the C# programming language.
I am writing a work-tracking application; building it one little piece at a time as an incremental development. Better to have a basic tool that works, than a whizz-bang-tool that is fragile… The first step in that development, v0.1.0, is now at a state where I’m okay with sharing it (under the caveats mentioned last time).
When the application first starts up, the bottom 2/3rds of the screen is inaccessible. Once a Work Item is selected the information relating to it is displayed in the lower portion of the screen. (At this stage a Work Item just has a Title, Due Date, Description, Progress and a Status).
A new Work Item can be created by selecting “New Work Item” from the taskbar. The cursor is automatically moved to the task Title area (indicated by the blue border on the left). The new work item is automatically set to be +1 day from the current date, with a preset time. Both date and time are based on a soon-to-be configurable setting. If the date is not what you want, you can change it by selecting the Due Date button and the Change Due Date dialog will appear.
A work item is automatically set to Active with a progress of 0. Once you select the “Create Work Item” button, the Work Item will appear in the top graphical area.
You may have noticed in the top two images the “Save” button is always disabled. That’s because other than creating a new work item all other changes are saved automatically.
One final word about Due Dates. The application keeps track of a history of due date changes, however it gives you a “grace period” when setting the Due Date. If you change a Due Date within x minutes (1 by default), then it doesn’t record it as a due date change.
Issues I’m aware of:
- The button displays the date in US format (mm/dd). (I haven’t worked out how to fix it. It seems to ignore my attempts to use StringFormat).
- I’m not using MVVM, LINQ or Entity Framework (yet).
- The Change Due Date dialog sometimes requires 2-clicks on the apply button. I think it’s a bit sticky due to strawberry jam.
- The database design is simplistic (i.e. incremental)
- I hard-coded new Work Items to be “Active”. Hard coding = bad.
So what’s coming in v0.2.0 ?
(Subject to change; aka my whim).