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

Teams

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.

unhappy-happy

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 right, so does having the right level of authority, and so on…

The left 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 right side and quiet about the left. 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.

Design

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.

Development

May 18, 2009

Dogma or belief

Tags:

 

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?

  • basket case avril lavigne download mp3
  • apostila tjmg 2010 download
  • annamayya keerthanalu download songs
  • agnieszka chyliAska wybaczam ci download
  • b2st album download zip
  • brains ladies obsession download mp3
  • carnivore 2 pc download
  • casos da vida tvi download gratis
  • analys32.xll download for excel 2007
  • buon viaggio charlie brown download
  • bridget jones download legendado rmvb
  • black ops taco profile download
  • aprendendo a viver download
  • bitza razboi in doi download zippy
  • boomer men game download
  • ase me na s'agapo mp3 download
  • archexteriors vol 6 download
  • chat 322 games download
  • avengers x sanction 2 cbr download
  • adrian minune doua ziare download
  • biggie ready to die download zip
  • boney m sunny 1976 free download
  • cd mc guime 2011 download
  • 313 mp3 download eminem
  • broken heart song mp3 download
  • base de dados cep download
  • bondhu bhabo ki album download
  • cach download truc tiep tren safari
  • chor police games download
  • cannabis breeders bible sighn download
  • beame benz bentley download
  • air sync lg download
  • album musicali download gratis
  • 11th hour video game download
  • chupke se movie download
  • cassie official girl download free
  • abrazame muy fuerte entrada download
  • cartella download firmware itunes 10
  • aishiteru ze baby mp3 download
  • bapa yang kekal free download
  • caso 39 download rmvb legendado
  • breach 2 game download
  • asus p5gc mx controlador ethernet download
  • burlesque bound to you download
  • bhajan ram siya ram download
  • chanchal hanuman chalisa download
  • a r rahman download tamil songs
  • a doua oara download mp3
  • circuitos electricos schaum download
  • call of juarez cartel download
  • chandler semiotics for beginners download
  • bin tere reprise ringtone download
  • allods download eu client
  • canon mx320 driver download free
  • abcd games download full version
  • applicazioni download samsung s5230
  • chon mountains of creation download
  • black paper moon english download
  • carnaval top 100 download
  • ck3 usb drivers v1.3.0 download
  • china mcclain mp3 download
  • banco de dados mysql download 64 bits
  • blip.tv how to download videos
  • biggie smalls poppa download
  • ce ta querendo eu download gratis
  • chameleon wizard could not download file
  • aku tak biasa alda download
  • asus motherboard p4pe driver download
  • armin van buuren communication download
  • access virus powercore vst download
  • adobe reader pro x download free
  • 100 ?????? ????????????? free download mp3
  • besplatna domaca mp3 download
  • barA?o de munchausen download livro
  • antarctica movie 2008 download
  • clarion code calculator download
  • anglictina na cd download
  • chris rea free download music
  • ar rahman hits download tamil
  • bhanwari devi cd download video
  • bracia nad przepaAciA download chomikuj
  • cafe tacuba sino album download
  • blown wide open download
  • arde parazitii download fileshare
  • avery labels 8163 template download
  • capital inicial multishow 2011 download
  • brokencyde never back down download
  • bahut jatate song download
  • 20 20 design 9 free download
  • cluedo download pc game
  • bojan jambroA?iA ruA?a vjetrova download mp3
  • angel doolas trickster mp3 download
  • afroman i refuse download
  • algebra and trigonometry blitzer download
  • andrA rieu box download grA?tis
  • attacking anxiety & depression program download
  • canoscan 8800f scangear download
  • ben l'oncle soul crazy mp3 download
  • beastie boys anthology download
  • 4shared download grenade bruno mars
  • auto download from usenet
  • asus notebook a3000 drivers download
  • bugs bunny super nintendo download
  • cd do angra para download
  • bonde do malandro 2010 download
  • canon pixma mp630 software download
  • ati smbus driver download xp
  • capa de aAo download
  • acrobat x pro extended download
  • cidadA?o kane download legendado
  • advanced download manager pro v2.0.3 apk
  • agnieszka wAodarczyk czas pokaA?e download
  • chup chup khade ho download mp3
  • bruxas de eastwick dublado download
  • brother mfc 7840w driver download xp
  • beete lamhe dj remix download
  • brilhante victoria download 2 temporada dublado
  • canAA?o do terceiro milenio download
  • caprica sub ita download
  • c4d r13 plugins download
  • blink takut download lagu
  • 3 do plural engenheiros download
  • backbreaker free download for mac
  • certmgr.exe download for windows xp
  • cenA?rio de novela download mp3
  • chuong trinh download tren mp3.zing.vn
  • bhaja govindam ms subbulakshmi download mp3
  • autodesk structural detailing 2010 download
  • call of juarez download xbox
  • chicken invader download full version
  • cleopatra stratan la betleem colo n jos download
  • 200 mb pc games free download
  • bye bye blondie download subtitles
  • cars 2 ita download megavideo
  • britney spears infectious download free
  • battlefield game download free pc
  • Licensed and Generic products for canadian family pharmacy !&;[ buy maxalt online used to treat erectile dysfunction.