COP – Community of Practice 

Recently in the company I work for, we have set up a COP. Basically a small group of employees meet up on a weekly basis to discuss a topic of choice, which can vary from project management and software development to comparisons between different tools and frameworks.

Why?

The main reason as to why I do this is quite an egoistic reason:

So that I learn and become better.

Even though the company provides us with training, usually training is specific to the type of work we do on a day to day basis. We felt the need to discuss other topics which do not necessary add value to our day-to-day work. We felt that knowing about different areas, we don’t usually work with, helps us become better developers.

How?

The idea is to create an open, informal environment where developers with the same interest can meet up to widen their knowledge on different topics that they are interested in. From the start the idea was that these sessions had to have minimal preparation time. Since these sessions are open they are not really owned by anyone and everything is decided in a democratic manner.

What?

The concept of Knowledge Sharing Sessions is quite easy, there are 3 main roles during the session:

  1. Owner – the selected person chosen to guide the discussion.
  2. Google-er – presents any material prepared by the owner, and makes on the spot Google searches to find any unknowns.
  3. Audience – the rest of us who are encouraged to participate in the discussion.

The session usually starts with the presentation of any material the owner might have found online or prepared. During the presentation anyone can interrupt and challenge the owner. In the cases when the owner is not too sure what the answer the google-er steps in to help find the answer online.

The session then typically ends by some closing comments, were everyone gets a chance to let the rest know what they thought of the session. We also select a topic, owner and google-er for the next session.

Why it worked?

There are a few things that I think made this a success. First of all we tried to get as many stakeholders involved as possible. From the start this didn’t have to have an owner, and in fact this was owned by several people along the way.

The next thing we did is that we started small and grew slowly. The first meeting wasn’t the best one but since we were a small group of friends no one really cared. We then put up some posters around the work place which got some other people interested. Eventually we posted on the work intranet and even more people got to know about it.

So far this has been a great success and the topics are increasing in complexity by the week. One of my beliefs is that ideas are free and should be shared. In teaching others we teach ourselves and together we achieve more. I encourage other employees in different companies to do the same.

Timesheets

I spend around 10 minutes a day entering my timesheets and you can’t but wonder if this time could be spent any better. Based on what I have described in my previous post about MVP and the way business value relates to time and money, we can calculate how much time we should be spending on this. The value gained in timesheets is mostly data which can in turn can be used to:

  • Help determine if the project is still on target to reach its deadlines and make sure it’s delivered within budget.
  • If you are on a time and material basis, your timesheets will probably be used for billing.
  • If you are working on a product, timesheets help to determine the expenses involved to create the solution.
  • Compare how efficient developers are on their daily tasks.
  • Check how much time is spent to support the application in various parts of the product life cycle.
  • Be able to do better predictions and estimates when you do similar tasks.

From the above I hope you agree that timesheets are a vital source of information for a company and in some cases are as important as the work you do. The main question is, how detailed should they be, or to put it differently how much time should be spent on this? I think the answer depends on the quality of the data you require. The following are a few questions that people responsible for configuring timesheets should be answering:

  • Do you need to do a timesheet item per module?
  • Do you need a timesheet item per feature?
  • Do you need to enter a comment with a timesheet entry?
  • Do you need to record timesheets to the minute? (Or if you approximate to the nearest 15 minutes it’s enough?)
  • Do you need to know the exact time during the day that the task was done (e.g. from 10am – 11am were sent doing xyz) or is the total hours per day enough (e.g. 1 hr was spent doing task xyz)?

Assuming the process of entering timesheets is manual, the more “yes” you answered to the above questions the more time-consuming the process will be. Arguably, this also means that it will be harder for employees to record precise data.

“I make it a point to be accurate with my timesheet, said no employee ever.”

I would like to conclude by sharing some tips that I use when entering timesheets:

  • First of all I try to be as descriptive as possible and avoid words like “bug fixing”.
  • On the other hand I do my best to keep the description as concise as possible.
  • I always enter my timesheets directly in the program. I feel it’s a waste of time to write them down somewhere (notepad, paper etc…) then copy them over.
  • Enter time sheets daily or twice daily if possible. I tend to forget what I was doing 2 hours ago, let alone what I did the previous day or week. I personally prefer to enter my timesheets just after lunch break and before I leave the office.
  • I take advantage of idle time, for example waiting for the guy who I had a meeting with to show up, to enter my timesheets.
  • When I’m not too sure what I spent my time on, I check source control check-ins, emails sent, calendar appointments, team task list and my personal task list.
  • I use email subjects and check-in comments as a description in the timesheet comment field.

If you didn’t learn anything from this post I hope that at least I managed to convince you that the time spent entering timesheets is well spent and crucial data for the company’s survival.