Just build it and they will come. Except they wonât. And if you, like every other person on the planet, missed the evolution of the time tracking industry, brought about by Sheetty.com, the Weekly Sheetty Scoop is a record of that journey filled with challenges and achievements, problems and solutions, questions and decisions that took place along the way. Week by week.
The goal is to document and share progress, to learn and teach.
I invite you to the crazy world of starting from scratch, bootstrapping a business, and handling UX/UI and marketing⊠as a backend developer.
Expect a new post every Friday.
Whatâs up?â
The time tracking tool we are talking about is online already today (sheetty.com), but lately we worked on a very important feature.
Teamsâ
Time tracking is great, especially if youâre getting paid for those hours. But tracking others' time is even better, especially if youâre getting paid for those hours!
Time tracking industry is growing rapidly. Two main factors are driving this change:
- Legislation (some countries, like Germany, require employers to do it)
- Productivity (workforce is more and more expensive and time wastage grows)
For this reason we introduced Teams. Actually we didnât. Itâs still a work in progress. But the general idea is to allow for creating teams, inviting others, and track their time. Like a small company, or a company of freelancers. You get the point.
The goal is to enable small businesses to gain insight in their time wastage, allocate workforce more efficiently and help translate time to money. All this with detailed and flexible reporting, easy project management, quick overview of current state of affairs and intuitive and modern interface
Itâs easier said than done. We had no idea how to even start. Adding it to the current feature set would wreak havoc (and it does). We had many questions, right from the start. One of them being:
Who owns the data?â
Time tracking for individuals is trivial. You track time, itâs yours and you can change or delete it as you please.
But if Iâm tracking time for someoneâs organisation, can I still change or delete my time entries as I please?
âNoâ, says the man in the Board. âIt belongs to the companyâ. If Iâm a company, and I run some kind of reporting, I must rely on the fact that hours logged by my employees or subcontractors wonât change in the future.
Unless they have to change e.g. due to client requests (âcan you please book those 13 hours from December in January?â).
Should I be able to change those timesheets as I please or rather ask the person who tracked this time?
What if that person is on vacation and I need to update timesheets now or face delays in payment?
Following scenarios were explored:
- Company owns it fully
- Time entries are duplicated for both, the individual and the company (leads to discrepancy)
- Time entries are immutable after exporting a timesheet
- Both own the same data and can modify it at any time (leads to surprises)
At the time of writing, we are implementing the last scenario.
Reason number one being simplicity. The simpler logic, the less code, the easier it is to change in the future. Besides, we just donât know quite yet. And we believe that the correct answer will appear once we all happily use the feature.
Continue entryâ
All you ever do is continue your work from yesterday. If youâre using excel to track your time, you simply copy paste your last entry. If youâre using a time tracking app, well, there are many possibilities:
- Type the same description in
- Copy the description from your last entry
- Click a continue button on your last entry
Thereâs autocomplete to help out with the manual typing. But itâs still unnecessarily complicated. In the List View you are two clicks away from continuing your last entry. Maybe it should be only one? Who knows.
But the widget view - the one I spend most of my time with - has no such button. Again, we had a few ideas in mind:
- Add a âcontinueâ button in the details modal
- A âcontinueâ button directly on the time entry box
- Right click context menu with a âcontinueâ button
First idea is so obvious and easy. But itâs two clicks. I wanted to reduce it to one click.
The âcontinueâ button blending in when the pointer is hovering over the box. Thatâs one click and it works well when you have a mouse. But how to pull this off on an iPad?
I didnât think much about a right-click-context-menu, because I was blessed with a glorious idea: gestures.
And it works on iPad.
We already had the dragging function, which allowed us to move a time entry on the time axis (left and right). But would it work to drag it up and down?
The idea is to use the well-known gesture of your thumb moving up the screen. Like youâre browsing your favourite instagram or twitter feed. The tracker is up top, so dragging your time box up to start it kinda feels intuitive.
And itâs live too, so go check it out sheetty.com
Next upâ
Organisations are managed by a single person. Anyone can have an organisation. This part is fairly easy, although comes with own questions:
- Are clients of my organisation my personal clients too?
- Should I be automatically a member of all teams?
- Can I track time if Iâm not part of any team?
Difficult questions are best answered as late as possible. So we tried to find the simplest answers (not best answers, just simplest) and move on. Sooner or later weâll understand our requirements better.
Team members need to know what teams they are on. They need to know what clients they can track time for. And this is the next challenge.
Conclusionâ
Programming is simple. The hardest part is stitching together requirements from different people (or roles, or stakeholders).
What we learned this week is important and not so obvious: just do it. Donât overthink, settle for less and then iterate. Revisions of your features will help you to improve quickly.
Thank you for reading!
But donât just read. Try it out now. It only takes 1 minute: sheetty.com