Blog

COP – Community of Practice 

COP – Community of Practice 

Operations
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…
Read More

Right things done right

Uncategorized
We always want to do the right thing right, right? There is only one way to do that, increase the efficiency and effectiveness. First we need to understand the difference between the two, since a lot of people including my past self confuse the two. Even though these work hand in hand one does not imply the other. That is you can have a company which is effective but not efficient. Efficiency is about functioning in the best possible manner with the least waste of time and effort. It usually can be expressed as a percentage of the input and output. Effectiveness has to do with the end product or result. Essentially being effective is about doing the right things, while being efficient is about doing things right.  In the…
Read More
Company Visions

Company Visions

Human Nature
Company visions, mission statements, values… what a load of crap right? Wrong! Up to a few months ago I use to believe that having a vision or a mission statement was plain bullshit. But when you stop to think about it without a vision you are all over the place and not sure in which direction you should be going. A company should be group of people with the same set of common values and beliefs. The reason for this is trust. I like to use an example by Simon Sinek. When you are abroad and meet a person from your birth place, you become immediate friends. There is immediate trust between the two of you. The reason is because you know that the people from the same country share…
Read More

Clean Code

Uncategorized
You I recently read a book by uncle Bob, which is a must read for every developer. It’s called Clean Code and it completely revolutionised the way I think about code. In particular when coding I am now much more careful about meaningful names, numbers of parameters to pass to a function, the number of lines of code per function, use of comments, error handling and tests. Why should code be clean? Before we get to that I think we should start by asking the question what is code? In reality code is just documentation. Yep, that’s all we do, write documentation all day long. More than anything code is the best and most unambiguous specification document of the solution. We have all been in this situation: It’s the start of a…
Read More

The Scientific method for interviews

Human Nature
I have been doing interviews for quite a while now and would like to share with you a method that I like to call the scientific method for technical interviewing. First of all the overall process goes as follows: Observation > Hypotheses > Prediction > Experiment > Conclusion I have to confess that during an interview I am not fast enough to do all the required steps so I do some work before. In any case let us go through the stages one by one. Phase 1: Observation Interviews are a short period of time to assess if the person in front of you could be an asset to the company. The candidate probably feels nervous, which will make the whole process harder for both of us. So the first few…
Read More

4 Values Of Scrum Masters

Scrum
Recently I have attended a seminar which made me think of some important qualities that every scrum master should have. I would like to point out 4 important values that I think are essential characteristics of a scrum master. Why 4? Because 4 is an even number, less than 5 but greater than 3 (sorry JB is speaking). So here is the list: Positive Attitude Being a person who sees a glass half full does have its share of benefits. Even when things go wrong you should still find a way to motivate the team and lead them in the right direction. Having a positive attitude doesn't mean that you are totally satisfied with the way things are going, you should always aim for better, and use positive constructive criticism…
Read More
High Speed Mono Tasking

High Speed Mono Tasking

Human Nature
This should come to no surprise: humans can't multi task. Women can do it better but overall we still suck at this. Furthermore doing things in parallel is much slower than doing things in series. With this in mind we should be focusing on a single task at a time and try to achieve high-speed mono-tasking. Lets take a simple example to proof this theory. Let us assume that you have 2 tasks each of which take 10 mins to complete. If you do one task after the other you will get the following performance: Time Task 1 (time left) Task 2 (time left) 0 min 10 min 10 min 2 min 8 min 10 min 4 min 6 min 10 min 6 min 4 min 10 min 8 min…
Read More

Timesheets

Operations
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…
Read More
Minimal Viable Product

Minimal Viable Product

Estimation
Here is something you don't hear that often: estimation is hard! It’s so hard that people almost never get this right, and probably they shouldn't because after all it’s an estimate: “An approximate calculation or judgement of the value, number, quantity, or extent of something.” I have a suspicion that estimation is hard for most trades not just for software development, because people are generally quite reluctant to give you an estimate. So generally people tend to either: Overestimate and risk losing the job to someone else OR Under estimate and risk working after office hours to catch up This of course is inconvenient for everyone and tends to create a bitter relationship between the two parties. Is there another way? Yes .. avoid estimating. First of all let me…
Read More