Search This Blog

Tuesday, November 16, 2010

The Dark side of Dependency Injection

I have been thinking about dependency injection from time to time. I have long suspect that the issue of couplings being adressed by DI framework must have given rise to some problems elsewhere. There is no free lunch. Remember whack-a-mole syndrome?. Like a nuclear reactor with almost indefinite energy production and  yet generate those radioactive waste as the consequence of operating one. The following article "This dependency injection madness must end!" highlight problems created by  using DI framework. Notable quote from above article:
First, understanding which dependency is actually used (and why!) can require a lot of brain power: It will require you to consider all possible configurations when you look at a dependency and it will not work well with the normal code navigation functionality of your IDE. Second, the configuration will tend to deteriorate: When you no longer use a dependency, will you check whether you can remove it, or will you just leave it there to be safe?

Wednesday, November 3, 2010

America need more Edwin H Lands..

My wife and I were taking our kids to the Museum of Science, Boston(MOS) since they were out of school for a day since their school being used for yesterday's November 2, 2010 mid-term election.
By chance, I came across poster board this relating to Edwin Herbert Land, one of the early pioneer in photography at the MOS..
Above link says, "In the matter of U.S. patents granted, Land (with over 500 to his credit) stands second only to Thomas Edison."

I can't help but notice this quote attributed to him:
"An essential aspect of creativity is not being afraid to fail.."

Wednesday, October 27, 2010

That "Lambda Calculus" thingy again, please!

I came across this presentaion on InfoQ last week and tried to listen to the speaker talking about Functional-Languages-101
No doubt, the speaker is qualified, but after 5mins, she starts to mentioning the term "lambda-calculus" thingy. The presentation starts to smell "academic".
The speaker forgot that her presentation slide has a "101" to it.
Therefore, her presentation joined a long list of  unsuccessful FP proponents and evangelists who failed to convince the masses of the power of FP. Sorry. Nice try.
Someone commented on the presentation sums up my thoughts nicely, which I quoted verbatim:
"Without diving into the discussion of imperative and Functional Programming (FP), my biggest concern about FP is not that we as a programmer don’t understand what a FP is all about; but how to write reusable and readable code.

All the experts feeding us the idea how beautiful FP is, never mentioned a single word about code reusability and readability. OO paradigm has been a success not because it was technically superior than Functional paradigm and vice versa, but because you can see the whole software as a blue print just looking at the API, and it is so easy to maintain and read someone else code.

I don’t claim to be an expert of programming paradigms especially FP, but say it for surety that no FP expert can convince you that reading and maintain the FP code is the easiest thing to do.
"

Tuesday, October 26, 2010

Agile from Hell

Today, I came cross this InfoQ posting on Agile by Karthik Dinakar.

Agile Development: Overcoming a Short-term Focus In Implementing Best Practices

After watching it, I would termed this as "Agile From Hell".
The sad thing is that the Engineering Manager has 12+ years experience from CalTech and the Product Manager  has a business degree with SCRUM certification.

One can't help but thinking whose eyes these two dudes are trying to pull wool over, considering that they don't even implement the very basics of Agile!!. Shame on them.
The saddest part was admitted by the speaker, " They still retain control over the design..". Power struggle?
Having done SCRUM before, I really sympathized with the poor chap.

Wednesday, October 6, 2010

Warning: Cloud KoolAid

I came across this presentation by Chris Read in QCon The-Cloud-Silver-Bullet: Which Caliber Is Right For me? It's worth watching this presentation to avoid drinking the cloud koolaid or cloud bubble burst.

Wednesday, January 27, 2010

May the Best Attitudes wins...

I came across this quote in a forum. Someone posted this question about the choice of hiring someone who has...

1) Excellent skillset, poor Attitude 

2) Excellent Attitude, average skillset.
Who would be your choice and why ?? 

Who would you hire and why?. I think the best answer is posted by someone with a quote from Charles Swindoll:


The longer I live, the more I realize the impact of attitude on life. Attitude, to me, is more important than facts. It is more important than the past, the education, the money, than circumstances, than failure, than successes, than what other people think or say or do. It is more important than appearance, giftedness or skill. It will make or break a company... a church... a home. The remarkable thing is we have a choice everyday regarding the attitude we will embrace for that day. We cannot change our past... we cannot change the fact that people will act in a certain way. We cannot change the inevitable. The only thing we can do is play on the one string we have, and that is our attitude. I am convinced that life is 10% what happens to me and 90% of how I react to it. And so it is with you... we are in charge of our Attitudes.”

-Charles R. Swindoll

Tuesday, January 19, 2010

Myth of the Genius Developer

I came across this posting "Myth of the Genius Programmer" today.
This is a very well presented Google IO video presentation.
I strong encourage  you or your development team  to take time to watch this video.
Also, a good video to watch if you are hiring developers.
If your team has the following traits:

 1. Resistant to code review...
 2. Tribal knowledge that few knows...
 3. Existence of "hero" developers("elitism")....
 4. Reluctant to help each other...
 5. Has low project productivity....
 6. No visibility...
 7. Skill rots over time...
etc.
Recognize yourself or your team with these traits?
Then its time to change or get out.

Quote from above video:
"There is a pervasive elitism at work in the programming community. Add anonymity to the mix, and everyone is suddenly  elite."