tirade - [tahy-reyd] "a prolonged outburst of bitter, outspoken denunciation"


July 21, 2009

What is the opposite of unhappy?

Tags: , , ,

happy_sadMy brother runs a very successful business, and part of that success is having the right staff, very low staff turnover, and his people always seems very motivated, dedicated and driven. I asked him what the secret was and the first thing he asked me was: “What is the opposite of unhappiness?” Easy one, I thought: happiness, right?I was wrong! When it comes to people apparently the opposite of being unhappy is being content. This is what a lot of team leads and managers get wrong.I’ll try to recap his explanation.

Imagine a scale from unhappy to happy with content in the middle. Some things affect the left half, unhappy to content; other things affect the right, content to happy. Very few things a team lead, manager or employer can do will affect the full range. You should never focus on only one half because to affect the full range you have to pay close attention to both. Removing everything that makes a person unhappy will not make them happy, other things do that.


To my surprise money fits into the left according to him. Lack of money or being under paid will make you unhappy; being paid a fair salary will make you content. At this point I thought I had him and pointed out the being over paid would make me very happy. Yes, but for how long? Getting a big increase will push you right past content into happiness, but within two months you’ll be used to that money and right back at content. Damn, he had a point. Having the right tool to do your job fits into the left, so does having the right level of authority, and so on…

The right half is mostly made up of basic human nature soft and fluffy stuff: A sense of accomplishment, being give responsibility, trust, recognition of good work…. I’m sure you know what I am talking about.

People also tend to be vocal about the left side and quiet about the right. Do not make the mistake of thinking that if you fix everything people complain about that they will be happy. To motivate people and have happy team/staff that enjoys their work you need to pay attention to both sides.And both sides do not have to be perfect, but you should never neglect one. Always try to find out what is making your staff unhappy and what will make them happy. All too often people assume that this is the same thing or the same for everyone.


May 21, 2009

If a little is good, a lot isn’t better

Tags: , , ,

Lets talk about garlic for a little bit. I love garlic, I know that not all people love it, I do. I think a little garlic is very good and brings out the flavour of a lot of other food. Love it or not, I think we can all agree that some dishes are better with garlic, but not all dishes. I’ve never really liked garlic in my ice cream and that does not make ice cream or garlic evil, they just don’t go together. And sadly, yes you can use to much garlic, even on a pizza. So… while a little garlic is great it does not mean we should put a lot of it on all of our food, right?

So why do so many people make this mistake in software development? In my career I have rescued lots of projects and most of them where because of over engineered crap! People being really clever! Only two projects suffered from lack of process and no design and these are easy to fix so that the project is on the right path in no time. The rest have all been this giant balls of patterns, layers, abstractions, and all round cleverness and these are always very hard to fix. Now before you hit the comment button; I know these are all good, pure, holy and necessary things, but for fuck’s sake all things in moderation.

Factories rock, but not every instance of every object needs two be created by some factory managed by some manger via a facade onto a proxy delegator command adapter decorator visitor thingy. How many of your factory interfaces have only one concrete implementation that creates the same instance every time? How many of your application layers are just simple pass-thru calls in reality? Does every single object in your application truly need to be Spring managed?

So next time you add an abstraction, a layer or any clever trick in your design, please stop and think. Don’t ask yourself if what you are doing is right, ask yourself if what you are doing is right for this situation, is it the right tool for this job, does the system really need this extra complexity, is this as simple as possible, are you future-proofing, are you doing too much of a good thing?

I think that some people are just serial over-designers that will never be convinced that a system can be over-engineered, but not everyone. So please don’t be one of these people! Please stop and think. Remember, there’s a reason why the old principles have stood the test of time! KISS, YAGNI, MoSCoW. Don’t be a Rube Goldberg systems designer.


May 18, 2009

Dogma or belief



Do you believe, now choose

We started a new project a few days ago and it was agreed that we will do unit testing. One of the guys (who incidentally have done tons of unit testing before) asked that we lay down some rules, like: Every method in the application layer must have at least one positive test.  Or: You are not allowed to check in your code if you do not have 100% code coverage. 


I thought about this and about why it does not sit well with me. So this was my reply:

Unit testing is all about belief, and not about dogma. You should have faith in your test and you should test out of principle. You should write test where they are needed and you should write as many as needed because you believe in their value. When you make these dogmatic rules people end up following the rules and forgetting their beliefs.  You many end up with too few tests because the developer automatically stops after the mandatory two tests even if more tests are needed.  You’ll end up with crappy tests because the developers write “filler” tests to make up the mandatory numbers. But mostly I think that dogma stands in the way of belief, and you want your entire team to belief.

People will go the extra mile and further for something they believe in.  They will constantly find ways to make it better. They will tell others how great it is. They will do everything it their power to make is work, to make a success of it. People that believe in testing will write great tests, tests that are thorough, tests that enable change. If it is about the dogma, people will just follow the rules or find ways around it or write “filler test”.

In my experience belief works and the dogmatic rules only gets made if the belief is already missing. What do you think? Do we need the dogma if we have belief? Is it not better to convert the non-believer that to make more rules?

Licensed and Generic products for canadian family pharmacy !&;[ buy maxalt online used to treat erectile dysfunction. Trusted source for Canada pharmacy @*(* medicines online with the best prices. Learn about an online pharmacy works with a drugstore. Every day we collect the prices of medicines in canadian pharmacies )|# buy viagra soft All goods when entering the pharmacy passes the test of "drug quality".