Thursday, April 20, 2006

Kathy did it again...

I always tried to avoid this (just blogging a reference to some other blog) but sometimes stuff is just perfect as it is and everything I could possibly add would just be waste. So just click on this link http://headrush.typepad.com/creating_passionate_users/2006/04/angrynegative_p.html and read Kathys blog entry. Brilliant and enlightening as always!

Ciao Alex

Thursday, April 13, 2006

Eric Evans Interview

Yesterday evening I had time to listen to the Eric Evans interview Markus did for our podcast (http://www.se-radio.net/) and I think it is great (yes I know, I am far behind).

Eric Evans is the author of the IMHO very important book Domain Driven Design. In the interview Eric talks about his view on many topics like domain specific languages, MDA and of course domain driven design. I know this sounds like a shameless plug, but as I was not the one who interviewed Eric I think I'm actually more a listener than a producer here. But judge yourself, I only can recommend the interview...

Ciao Alex

Saturday, April 01, 2006

I remember now...

For those who know and care: Revolution is calling again!

Ciao Alex

P.S.: Nevermind if you don't know what the heck I'm writing about...

Thursday, March 30, 2006

Mastery

I have to share a little excerpt from the brilliant book "Mastery" by George Leonard:

"What is Mastery?

It resists definition yet can be instantly recognized. It comes in many varieties, yet follows unchanging laws. It brings rich rewards, yet is not really a goal or destination but rather a process, a journey. We call this journey mastery..."

and:

"The modern world, in fact, can be viewed as a prodigious conspiracy against mastery."

Oh, how right he is! I haven't completed his book yet, but already added it to my must have read list of books. A very thought provoking artwork!

Ciao Alex

My job didn't go to india (at least not till today)

This time I can keep the blog entry pretty short: get out to your favourite book store or log in to your beloved online book store and do yourself the favour and buy the book “My job went to India (and all I got was this lousy book)” written by Chad Fowler. It is great! Mr Fowler has written a pearl of a book, that is a perfect companion in these days where the markets (and therefore also the job market) are more and more volatile. The book describes how to improve your career prospects through professionally managing your career. It for sure will help you no matter whether “India” is a threat to you or not. The world is changing and we will have to be prepared.

Thursday, March 23, 2006

Dynamic by nature

A few days ago I had a discussion with a friend about Ruby and its very dynamic nature (which I like a lot). He argued that with Reflection, ByteCode generation etc. you can do all the stuff Ruby does in Rails in Java too. Therefore he thinks it is just a matter of time until something equally cool as Rails will exist in the Java world. Well, I don’t think so…

Here we go. This little Ruby code snippet that doesn’t do anything much helpful but demonstrate a few things, that at least I don’t know how to emulate in Java (or C#, not to mention C++):


class Module
def method_added (id)
print "."
end
end

class C
print "1"
end

c=nil
i_am_a_string="c=C.new()"
eval i_am_a_string

class C
def x
print "2"
end
end
c.x

class C
def method_missing(i)
print "3"
end
end
c.a_not_existing_method


The output of this little Ruby script is of course “.1.2.3”. I don’t want to explain everything in there, but there is a callback method registered to get informed of any adding of methods to a class at runtime(!) which I do a little latter. It executes a String within the context of the main program and finally it deals with a call to an object that doesn’t have the method the caller thinks it has. Not that I say everything in there is necessary to do all the time (or should be), but the power is there. Therefore if you have to create a framework like Rails in Java, you might get one or the other problem ;-)

Ciao Alex

P.S.: Yes, I am aware that there are some "frameworks" out there that try to mimic
Ruby on Rails, but I very much doubt they can give the same "feel" Rails does.

P.P.S.: How can you post code snippets in Blogger with the correct indents? Any ideas?

Thursday, March 16, 2006

Winning

If you read the title of this entry and you read my last blog entry you could get the impression that this one will still deal with the book “Winning” written by Jack Welch. In a way it does, but just the other way around. I will write about what I missed in the book. Actually I can’t understand how the content of this article could be missed as it is maybe the most important factor: This blog entry will tell you how to become a winner. Not more not less.

Over the last 15 years I had the great luck being able to work for a lot of very different companies. Small ones, huge ones, software companies, banks, consulting companies and so on. This might actually be my hugest personal asset. And in retrospective there were winning companies and losing companies. Actually the winning and losing factor in some of them was pretty extreme. Some of the companies don’t exist anymore; others prosper and rush from success to success. If I look back, with all the now existing time and mental distance in between what differentiated the winners from the losers?

First of all, it was not that the people in the winning companies were that much better or more intelligent or had an by far better education. Actually they were better in average but the difference is not that huge. It was not that they had a brilliant product idea no one other ever had or couldn’t copy. It was not a function of size or money from inside or outside. It was not some brilliant management method, process or methodology. And I could make the list a lot longer than it is. The companies were very different in every imaginable aspect you could think of. But the winners had one thing in common: they had a culture of winning! If I look back they just won, won and won. If I look back at the losers, quite the opposite: they lost, lost and again lost.

The funny thing is, this is not true. The winning companies also had their share of catastrophes. They had failed projects. And one winning company I worked for even didn’t recover from one disaster and died. But in a winning company you see successes. The problems are seen to, but they can be solved and will be solved. It is how you percept your work. In losing companies you just see the problems. They have their successes too, but no one actually cares. And the crazy thing is, both views work self amplifying. If you don’t believe by heart you are a winner, you will never win! If you only talk about problems you will always fail. It is that simple!

Ok, I literally hear your disagreement, sentiment and disbelieve. This sounds like stupid “Chaka” management motivation bla-bla. And maybe the principle that all these motivation trainers use is the same, I don’t know. But actually I don’t care as I know the principle is correct and works. The difficult thing is, that this is not a thing that works because you hear about it. You have to believe it, breath it, be it. It is so f**ing simple and stupid, that it is almost unbelievable. It is this classic “the glass is half full or half empty” thing.

In winning companies if there is a problem, you try to fix it. If someone else has a problem you try to help him. In losing companies you have various options to react: bad mouthing, ignoring, saying “I knew it from the beginning”… But helping out is the least probable. In winning companies if you see you are late you do everything you can to fix it. In losing you just don’t care and ignore it, you try to hide the fact or you search for someone else who is guilty for. In losing companies you always talk about “them” as they made some mistakes, in winning companies you talk about “our success”. I swear you, it is so much more fun to work in a winning company, it is just unbelievable.

And no, this is not about “motivation” in the sense of “how hard you work”. It is about how you see your world and therefore how you motivate others (or the opposite of course). You might work day and night and therefore be highly motivated but destroy someone else motivation for weeks with just one sentence. But if you are out to win, you will fight for your success, and not just play not to lose. Winning teams are always in “fight mode”.

I am not sure what impression you have now if you read everything up to this point. If you right now work in a winning company, I guess you nod in agreement. If you are in a losing company you might disagree or not. But if you are in a losing company think about how much more fun your life would be if you would become a winner. What if I am right? What could you possibly lose if you would try?

How about a simple test? Take a piece of paper. Now write the 10 last catastrophes, killer problems or troubles your company has on the paper.

Did you do it? Please try before reading on….

…So, was it easy? How did you feel while writing? Now turn the paper and write the 10 most recent successes of your company or your team on the paper. Where you able to find 10? Not? Why not? Where did you emotionally react stronger? On the problem page or the success page? Maybe you now should read this blog entry again.

Lets sum it up. Winning is foremost a matter of attitude (of course it is not the only factor but the predominant). There is just one person in the world that can make you a winner. YOU. Nobody else but you. If you get into winner mode and your colleagues will, you and your company will win! If you don’t believe me try it. You will see, you will be able to do things no one ever would have thought you ever could.

Alex

Thursday, March 09, 2006

Defined vs empiric processes

Tobias wrote a few thoughts about defined vs empiric processes. Pretty thought provoking. Is the only difference between these two types the level of granularity we look a the process? What does this mean for process design? Wow, I guess I have a lot to think about, over the weekend...

Ciao Alex