Management Dima Malenko Management Dima Malenko

Why "agile" is better

Software developers like being "agile", whatever this means. They say being "agile" liberates their creativity and lets positive energies of the Universe flow through them to the code to (hopefully) solve customer's problems. They are committed to using all the practices that e.g. XP suggests, but it generally would be better if somebody else writes unit tests. For me definition of "agile" changed forever when I first watched David Anderson's interview "Writing Agile Software" and read his book Agile Management for Software Engineering. All the other books on "agile" topics I've come across focus of how freaking cool it is to use agile to develop software, of course, from the point of view of developers. And you are a, hm-m-m, short-sighted conservator if you want developers to do development with, say, RUP.

"Agile" does not equal to "Say no to BDUF and documents". David in his book explains what is agile and why it is better for clients and their businesses.

Jurgen Apello in his blog provides a review for this book, but focuses mostly on the form, not the meaning. True, the book is not fun and makes you think, but it is gratifying when you finally get the clue. Again, this book is not about the fun you get working on agile project, it is about why agile works in business landscape.

Anyway, if you want to better understand the book, my suggestion is to watch the video first.

Read More
Management Dima Malenko Management Dima Malenko

Startup school '08

Via Presentation Zen I recently found out that videos from Startup school '08 are now available at Omnisio. If you like to hear smart people talking about interesting ideas then you should probably check them out. So far I've watched David Heinemeier Hansson's presentation and Paul Graham's one and I should say I like what I see. Tim Bauer has published his notes from these presentations. You may also find them useful:

And, by the way, I agree with Paul that you should not drop out of college in order to just start making money.

Read More
Analysis, Musings Dima Malenko Analysis, Musings Dima Malenko

Erosion of ideas

I recently subscribed to TechCrunch and so far I noticed 2 things:

  • This blog literally chocks up my RSS aggregator (which happens to be Google Reader) so that I have to modify my reading habits not to miss posts from others feeds. Near dozen posts a day may be not that big number, but it definitely outperforms my other subscriptions.
  • Every once in a while TechCrunch posts really touch my soul and make me stop to think.

One of such posts was What To Do With Failed Startup IP? It was always sad for me to see humans' ideas, aspirations, accomplishments becoming thrash. Be it physical objects or results of intellectual effort.

I do not remember where but once I've read or heard that less than 10% of Earth population contribute to development of mankind civilization and this percentage is decreasing all the time. I think this "total productivity" can be greatly improved if we figure out a way not to let priceless man-hours of mental and other efforts be thrown to trash cans of oblivion and natural erosion.

Read More
Musings Dima Malenko Musings Dima Malenko

Language you speak affects the way you think

Did it ever occur to you why there are so many different languages which people speak? How did they form and why are they so different? And most importantly, how do languages affect our thoughts and thinking process in general? Many years ago I was amazed by the novel Babel-17 by Samuel R. Delany. It really made me think about differences in human languages and their influence on our behavior. If you have not read this novel you definitely should. It tries to answer the question of how strong are the ties between language and thinking and elucidates the hypothesis of very strong interrelation of word and thought.

Why would I write about this? I was reminded of this by post on creative thinking from Presentation Zen. Summarizing psychologist and physician Dr. Edward de Bono's theory of Six Thinking Hats Garr Reynolds says:

People are reluctant to be creative out of fear of making "a mistake." Problem is (at least in the English language) we don't have a good word to describe creative ideas that just don't work...except to call them "mistakes." That is, we do not have a good word for this: "Fully justified venture which for reasons beyond our control did not succeed." If you do not succeed with your creative idea this is called a "mistake." And people generally like to avoid "mistakes." (We need a better word!)

How truthful this is! We are very social beings and we always care about what others say. Not having an adequate way of naming creative misleads(?) we are not able to perceive them correctly and express without unnecessary negative shade. Here we are once again caught in a labyrinth of the form (words, language) and the meaning (thoughts, feelings). But being aware of the problem we've got to find a way out.

There has got to be a way out.

Read More
Musings Dima Malenko Musings Dima Malenko

You will know what I read

As many of you I read many blogs and sometimes I would like to let you know which articles really touched me. Touched me so that I want to share them with you. Posting something like "Hey! Check out this recent post by Robin Robinson" is kind of silly.

I'll use sharing feature of Google Reader to let you know which items I consider worth mentioning. Short guide to how it works:

worthmentioning

Read More
Engineering Dima Malenko Engineering Dima Malenko

Technology adoption curve

Did you know that Microsoft recently added Mobile RFID to BizTalk server?

This event alone does not have an outstanding impact on the industry, but inspires some thoughts. Generally, each technology or product has (or has to have) two stages of realization, two waves of value generation:

  • Vendor invests into product development and realizes its value by selling to customers.
  • Product consumers invest into product deployment and learning and realize its value by generating revenue for themselves.

In general, this means that while they fully undergo their curve consumers are not ready to adopt new technology. Usually, you will not embarrass deployment of new technology until you realized the investment in previous.

This means that there are some natural limitations on how often vendors can release new technologies/platforms/products. If they release too often customers are not ready yet to make new investments and technology adoption will be hindered. If release cycle is too long less revenue will be generated.

Of course, these waves are smoothed over by large number of customers out there in the market, each in different phase of technology deployment; by number of vendors offering competitive products; and by a whole lot of other factors. But still it is important to understand these waves to build a successful marketing and release strategy.

Think of customers' pains and try to relief them not to amplify by asking to deploy new product when he is having hard times returning the investment from previous.

Read More
Musings Dima Malenko Musings Dima Malenko

The books you read, or maturity test

Some time ago I was reminded of an article by a man whom I know personally and am really proud of being aquatinted with. In article "10 software developers' books which shook the world, but are still unknown in Russia" (in Russian) Andrey Terekhov discusses top 10 books from his library which are definitely worth the time you spend reading them. These books are "must read" for those who want to be software engineers instead of mere "programmers".

What is interesting about this list is that not all the books would be "Yes, sure! You've got to read them!" for everybody. While going through the list I understood that, for instance, "Peopleware" will not cause reader's eyebrows to go up. But with following 3 titles:

I would expect that some people say "Hey! I'm a Java/.NET/PHP/Ruby/whatever developer! Why do I care?!" And those are people who fail maturity test.

Mature people (this has nothing to do with age or junior vs. senior developer) look for and appreciate opportunities to widen and deepen their knowledge and understanding of things. They realize that going to next level also means going beyond current horizons. And sure way to do that is study adjacent (and not only) areas of knowledge even if this new information is not immediately applicable to what they are doing now.

So do not miss opportunities to go beyond and know more than you need today to make sure you know enough tomorrow.

Read More
Musings Dima Malenko Musings Dima Malenko

Flow of Time

Time flows like the water through your fingers. Probably, time means to economics more than anything else.

"The supply of time is totally inelastic. No matter how high the demand, the supply will not go up. There is no price for it and no marginal utility curve for it. Moreover, time is totally perishable and cannot be stored. Yesterday's time is gone forever and will never come back. Time is, therefore, always in exceedingly short supply."

Peter F. Druker "Effective executive"

Read More