Skip to main content


Showing posts from 2013

Deals You Can't Miss

1 Year Subscription

Talk Kata - Repeating Conference Talks

In the hard business of engaging the audience.. There are many kind of katas in the software world that I've been trying and practicing over the last 4 and odd years. Towards the end of last year, 2012,  I've started applying the concept of Katas in Public Speaking domain and I call it "Talk Katas". Talk Kata is all about sharing your thoughts by way of talks to different set of groups, again and again and learn the art of public speaking in the process. It is with deliberate practise of public speaking can one hone the art of communication. Attendees enjoying the talk "When Agile becomes Fragile" is a topic I've been talking about in all of the recent conferences. It only gets better and better with every talk based on personal conversations, feedback etc. I've with the attendees after my talk. Come year 2014, I'll again be talking about this in PMI Chennai edition as part of their invited talk series. For the curious minds,

Recursive chmod settings based on file or directory

I recently had to do this and below are the commands that I ran to get things done. $ find ./my-folder -type d -exec chmod 755 {} \; $ find ./my-folder -type f -exec chmod 644 {} \; where the pattern is: $ find [search-path] -type [d | f] -exec chmod [access-rights] {} \; Explanation: -type d => files of type directory -type f => file of type "file", a non-directory {} => replaces every file path found at the find command \; => is to escape the semi-colon. And semi-colon is required to denote the end of command.  If not escaped, the shell interprets it instead of find command. 755 => make a file readable/executable by everyone and writable by the owner only. 644 => make a file readable by anyone and writable by the owner only. And as I was doing this, I tried reading a discussion in stack-overflow on this and found an even simpler command: $ chmod -R a+rX ./my-folder where the pattern is: $ chmod -R a+rX [directory-name] Expla

Work around to file protocol in browsers

There are times when you're dabbling with Front-end technology like EmberJS, AngularJS, etc. You'd wish to load the just crafted web-pages of yours in a browser to see the work in progress state. What do you do? First attempt is to load the page in the browser with the hardcoded local-disk location. It would be something like file://usr/kartz/frontend_apps/fake_app/test.html This attempt might most likely fail in many modern browsers, especially if you have included any local javascript, css and similar assets. Are you here and wondering why? This is due to browser security constraints. The work around to this is to serve this/these kind of files from web server so that the protocol becomes http. But you don't want to get into the overhead of starting/managing a web server for this. You don't want to copy your file into the web-server  or work in the web-server's app directory. You want your project source in your own chosen location and wish for some l

Book Review - Domain Driven Design

A must read book for every developer aspiring to build great products I strongly recommend reading this book, if you're an enthusiastic software craftsman. Read -> Code -> Practise -> Understand -> Appreciate -> Apply -> Evangelise! Think not, get your copy from Amazon now.

Stand-up: Party Meter

Party meter has many other names to it like Ice-cream meter, Sandwich meter, Snacks meter etc. It is a dashboard that displays the team members names in the first-column. And the number of times each member has defaulted or has broken the ground rules for stand-up, is logged as bars against their name in the second-column. This defaulting count is logged for a specific duration of time (say, a sprint or two), or for a specific total count of defaulting bars (say, 10,20,25, etc). Once the specific time duration or total count is reached, the team celebrates with a party - call it a team outing or get-together for snacks/ice-creams/beer/whatever. The resulting expenses is shared by the defaulters in proportion to the number of bars against their name. This is yet another gaming technique of bringing in discipline or order in the team. A sample of how the ground rules for Party-Meter looks like can be read below: Not being punctual to stand-up, invites a bar. Absenting on

Stand-up: Consensual Update-Template

   It is indeed an arduous task to listen to every team member giving status update in their own style or format. Practically, it is known that the attention span of an individual to listen is very less. Getting the most out of it is indeed important. For this reason, it would be a good practice for every team member to adopt a status update template that all agrees to. Now for different status update template/format, its pros and cons, can be read in inimitably lucid style at Martin Fowler's Bliki post .    In continuation to this topic, I wish to put forth my favorite template below: Yesterday I was pairing with ___________, playing the story ______________, in which we completed the tasks ____________. We intend to work on __________ today. We had a blocker issue which I'd discuss in the developer huddle, after the stand-up. In essence the above template answers the following three questions: What did we as pair accomplish yesterday? What we intend to work on

Stand-up: License to speak

It is a sight for the onlookers when more than one person speaks at a time or when a team engages in endless discussions. Outsiders (non-team members) would start labeling such teams with tags like "indisciplined", "very political", etc. Sure enough, it is not the subjected team's desire to end up in such a state and even worse that such state becomes more or less a routine thing during stand-up. In my experience and observation, it takes a lot of courage, discipline and mentoring to have one conversation at a time in a meeting. In order to restore this discipline of "one conversation at a time", play the license to speak game. Yes, you read it right, I called it GAME. It is more a fun to gamify the thing called DISCIPLINE. So what is this game all about? Well, this game is all about the eligibility of a person to speak in a meeting. One who holds the 'declared token', has the license to speak and after his/her turn, the token is passed to

How I started to enjoy the ceremonial daily stand-up?

NOTE: If you're to land in this post directly, without having read the post,  Why I hate the ceremonial daily stand-up? , please do read it before reading further. Its worth your time. This post details the golden advices that helped me and my team enjoy the ceremonial daily stand-up. Try it, and so should you. Always do stand-up meetings in open space even if the team is distributed. If it hurts your distributed team meetings badly and for genuine reasons, then you may think of considering to have stand-ups in a conference room. It is always a good practice for the stand-up meeting to happen near the physical card-wall. Stick to the stand-up time after having decided it on team consensus. For no reason can the stand-up time be shifted temporarily - it kicks in laxity. The speaker in the stand-up meeting should have the license to speak . Every team member should adopt the consensual update template . Introduce the party meter for the fun and energy it can magically brin

Why I hate the ceremonial daily stand-up?

Ceremonial : a system of ceremonies, rites, or formalities prescribed for or observed on any particular occasion; a rite. Ceremonies, in my humble observation, are mostly followed blindly and hence poorly - such is the order of the day. Whom do we blame for it? I would blame both the institution of practice for not thinking of methods to aid understanding the purpose of the ritual and the materialistic folks who take the easy route of not experimenting/practicising the ritual with an open mind and find/seek reasoning. This pattern is observed in the work places too. People take the convenient route to idleness, and devil's workshop. No matter what methodology of practice is prescribed, people always have the tendency to find fault rather than value in it; Agile is no exception to it. Take the case of every-day stand-ups, I have seen it becoming dysfunctional in teams, sooner or later. In this post, I'm intending to jotting down my observations that I made over the years, o