Tuesday, April 21, 2015

Learning from the Enterprise




While writing the article “Agile at Home”, which put forward the idea of using Agile methodology in our family life, I realized that there was in fact much more to the corporate system that we could borrow and customize to enhance our personal productivity. This article is an attempt to explore some ideas in this direction.


Quarterly planning

We often make plans, small as well as grand plans, which fade into oblivion due to the lack of proper planning. Either we set too stringent deadlines that are practically impossible to meet, or on the other extreme, we do not set any time constraints at all, thus ensuring we never get the task done.
I feel that a quarter of the year (3-month period) is the perfect time-slice: It gives some breathing space to complete or at least make a good progress on any activity; and at the same time, it is short enough to bring some urgency in the execution.

Corporate Policies

Every organization has a set of policies in place. They are carefully documented, and shared with all the employees. Every new joiner is made aware of what constitutes ‘right’ and ‘wrong’ as per the enterprise.
Of course, every family has their own set of values and rules; the only difference is that almost always they are of bespoken kind. I am not suggesting that every family should write down their code of ethics; but it would definitely help everyone to share a common set of philosophy. This could be conveyed via discussions at dinner table or in any other way that makes sense.

Emergency Procedures

This, in my opinion, is one of the most important points.
What to do in case something goes wrong: Whether to act on impulse, or to follow some guidance?
I strongly feel that every family member should be educated on what things can possibly can wrong, and what should be the proper response.
Of course, nature and destiny can strike us in ways we can never imagine. But it never hurts to be prepared for the known, and let our mind free to take on the unknown.

Know Thy Numbers

All organizations, big, small and medium-sized, focus on numbers: the bottom line, the top line, the margins, the revenues. At home, I feel, we could just as possibly pay some attention to numbers, albeit of a slightly different nature. More often than not, the family members at best have a fuzzy idea of finances, and it would help if – at least – the earning members clearly know where they stand in terms of income and expenditure.
Apart from money, there is another type of numbers that matter to us, or, should matter. The BMI, the creatinine level, HDL, LDL... And so on. These numbers become more and more important with senior folks in the family and it is imperative that we not only keep a good track of their status.

Annual budget

This is a bit tricky. All corporates (and governments, of course) have an annual budget. All the expected income and expected expenses are laid out and tallied. Some provision is also made for unexpected spending. This sets the financial tone for the whole year and acts as a guidance for low or high spending in any area.
I haven’t tried this yet; but with some discipline and careful planning, I see no reason why every household can’t have an annual budget of their own. This could be an inclusive-affair, with all the senior members of the family pitching in and working together to create an annual budget that meets everyone’s requirements.


There’s much more to learn from the enterprise, of course. Each of these points should have their own blog-posts; but I hope this at least got you started thinking. 

Monday, September 15, 2014

[Presentation] The ONLY 3 productivity tools you will ever need

About 4 years ago, I has posted a blog about the 3 productivity tools you will ever need.
It is heartening to see that this belief has stood steadfast and true over the years; even after four years, these three tools continue to make the biggest impact on my productivity.


I have now converted the blog article in a Microsoft PowerPoint presentation. It is available for viewing and download on SlideShare. 

Monday, August 11, 2014

Agile @ Home

Participating in various Agile-related activities in our office inspired me to think about implementing Agile approach in a rather unrelated field: our family.
The Agile philosophy contains some best practices, which, if adapted and customized slightly, can help us manage our personal lives in a more structured and productive manner.

Here is a write-up which outlines this approach.
Also available on SlideShare as a Microsoft PowerPoint presentation:
http://www.slideshare.net/gautamsoman/agile-at-home

Introduction

Agile is an incremental, iterative methodology used widely in software industry. Agile @ Home is a proposed approach to bring in the best practices of this methodology into our daily lives. The objective is not to make our family life a formal, mechanical process, but to bring in a structured approach to get things done without causing undue stress.

Stakeholders

Product Owner (PO)

In Agile @ Office, Product Owner creates the product backlog.
In Agile @ Home, Product Owners are primarily responsible for guidance and monitoring. They should ideally be the senior-most member of the family. They can also be someone from outside the immediate family; but someone whom the family trusts and respects; and looks up to for advice.They should help Scrum Master to resolve conflicts.

Scrum Master (SM)

Ideally a enior member of the family. Role can be rotated among two equally senior-members (husband /wife) after every few sprints. They would be responsible for tracking progress of all tasks.

Scrum Team (ST)

All members of the family unit (except infants!). The Scrum Team members should be coached by Scrum Master on Agile processes. This can be done during Sprint 0 (zero).
Preferably not more than 7 members should be under one Scrum Master. ‘Pair working’ concept can be used: two folks working on a big task.

Agile Ceremonies

Product Backlog

Just as in Agile at Office, this is the most important step. All the stakeholders (PO, SM and ST) sit together and brainstorm about everything that family wants to achieve, in the short-, medium- as well as long term.
This should be done periodically, at least once a year. Creating a solid, comprehesinve Product Backlog sets expectations clear, brings everyone on same page.

Sprint Planning & Sprint Deliverables

During Product Backlog, all stakeholders decide on time-boxed unit for a sprint. Recommended time-box is minimum one month and maximum three months. At start of every sprint, all stakeholders agree to select a chunk of product backlog.
Each family member:

  • Picks up the tasks at granular level. 
  • Commits himself/herself to the selected task.
  • Specifies exactly what they will deliver at the end of the sprint

Daily Scrum Meetings

DSMs are a crucial part of Agile @ Office.
For Agile @ Home, they can be held either at breakfast or dinner, when SM and ST are available. In case, it is not possible for SM and all ST to meet at a common time, SM must interact with each family member and keep track of progress.

Burndown Charts

Stakeholders can decide on a mechanism to track the progress.
Some approaches to track progress:


  • Verbal updates
  • Note pad/Diary
  • Sticky notes on refridgerator
  • Kanban boards 
  • Excel sheets… 

Sprint Deliverables

Agile @ Office focuses on ‘working software’ at end of each sprint.
Agile @ Home focuses on significant, measurable progress on each task. It can be:

  • A tangible, physical product 
  • A recommendation for a specific product/item
  • A ‘SMART’ plan for a long-term activity

Sprint Retrospective

All family members share their updates, preferably at a common meeting. Completed activities are discussed and agreed upon as DONE. Unfinished items are moved to the next sprint backlog.
Sprint Retrospective should preferably be clubbed together with next Sprint Planning.

Example Scenario

Stakeholders: 


  • Grandparents: Product Owner(s)
  • Wife: Scrum Master 
  • Husband, daughter and son:  Scrum Team 

SM and ST visit PO for product backlog:

  • Husband wants to plan a North India trip in December
  • Wife wants to start a jewellery shop
  • Daughter wants to go abroad for higher studies after her Masters degree
  • Son wants the long-promised gaming console

The stakeholders decide on the sprint duration: 2 months

Each team member picks up tasks at granular level:

  • Husband will identify holiday destinations and overall budget required
  • Wife to analyse feasibility of jewellery shop in the locality
  • Daughter to identify admission requirements and college names
  • Son to compare Sony PS3, Nintendo and Xbox and come up with final recommendation

All the stakeholders decide on priorities

  • Since admission dates are close by, daughter’s admission is top priority.
  • Wife’s shop is a potential source of future income, hence next on list. 
  • The gaming console was promised long ago, hence is included. 
  • Last is the vacation plan. 

Over the period of sprint, the SM and ST have discussions over dinner.

After 2 months (sprint exit), all stakeholders meet.

  • Daughter is ready with short-listed college names and admission details. The discussion is done and she will start with admission process in next sprint. 
  • Wife informs that her analysis indicates that jewellery shop is not feasible due to presence of big brands in local vicinity. Hence idea is dropped. But there is much scope for a boutique. This will be analysed further. 
  • Son specifies Xbox and provides reasons (many gaming titles, etc.)
  • Husband informs that finances are not sufficient to meet all above requirements and the vacation; hence the vacation plan is moved to general backlog with a provision for an abroad trip to visit the daughter.

Sprint planning is done for the next sprint… and the cycle repeats.



Monday, March 31, 2014

Be that Someone

I came across this blog post on one of the MSDN blogs that I sometimes read, and thought of sharing with you...


On one of the mailing lists in the Windows project, somebody spotted some behavior that seemed pretty bad and filed a bug on it. The project was winding down, with fewer and fewer bugs being accepted by the release management team each day, so it was not entirely surprising that this particular bug was also rejected. News of this smackdown threw the mailing list into an fit of apoplexy.
 Don't they realize how bad this bug is? Somebody should reactivate this bug.
 Yeah, this is really serious. I don't think they understood the scope of the problem. Somebody should mark the bug for reconsideration.
 Definitely. Someone should reactivate the bug and reassert the issue.
After about a half dozen of messages like this, I couldn't take it any longer.
I can't believe I'm reading this.I decided to Be Someone. I reactivated the bug and included a justification.
Don't just stand around saying somebody should do something. Be that someone.



For those who are curious, the name of this wonderful blog is "The Old New Thing" , written by Raymond Chen, a veteran of the Microsoft Windows product team.

Wednesday, September 18, 2013

Using OneNote

Ever since my early college days, I have been a regular user of notepads — those small, spiral-bound things that you can easily carry in your shirt pockets. The notepads were an immense help in tracking the studies and various activities.*
When I started my IT career, I was pleased to see Microsoft Outlook. It has a great Calendar feature and a neat Tasks feature++. For a while, it seemed to me that I wouldn't need anything more.
Yet even after a few months, I was still carrying my notepad around. The reason being that Outlook doesn't have any provision for free-form note-taking. Sure, you can always type out the content and save it as drafts, or mail it to yourself, but it only adds to the clutter.
So again I was back on the road, looking for a better tool. I tried using sticky notes (both the digital and paper kind), Google Docs, Evernote, but none seemed to work. **

On  joining my current project, I was intrigued to see my scrum master, Pradnya, using an application that looked familiar but couldn't quite place it. So I asked her, and she graciously walked me through it. And thus started my journey with perhaps one of my most favourite software tools: Microsoft OneNote. 

OneNote is a digital note-taking tool, and it comes bundled with Microsoft Office suit. In fact, it has been around since Office 2003 ( and hence the notion of my being familiar with it, even though I had never tried it before). It is organized as a typical notepad: you create a notebook, which has multiple pages, and each page contains one or more sections. You can move or merge sections and pages either within the notebook or across other notebooks.
You can do all sorts of things using OneNote: type in notes anywhere at random, capture a screenshot and insert it directly into the page, record audio or video, create free-form sketches or drawings. There is no need to manually save the document, the data is saved automatically as you type.
OneNote has a seamless integration with other Office products: you can email a page directly using Outlook, you can import your Outlook tasks into OneNote, you can directly insert Excel documents or Visio diagrams into OneNote, and so on.
Another powerful feature is the wide range of in-built tags: To-Do, Highlight, Remind me later, Critical, Idea and so on. 
The search feature is quite powerful: it can search across text, images and audio recordings.
OneNote also works as a superb collaboration tool. You can use it as a digital whiteboard and share notes with other users and edit each other's notes (with required access privileges). You can invite people to view/use your notebook, share the notebook with a meeting in progress or share it on Web as a link.
And of course, you can also password-protect your notebooks :)
With SkyDrive, all the notes are automatically saved to the cloud and are available on all the devices you use (for example: office desktop, personal laptop and smartphone). You can download and 'save' the entire notebook (with all its pages and sections) either as a OneNote file or a PDF and email it to other people.
I have been using three versions of OneNote till now: OneNote 2007 on my personal laptop, OneNote 2010 on my office desktop and OneNote 2013 on my phone#. In fact, having OneNote  was one of the prime considerations in choosing Nokia Lumia Windows Phone as my new smartphone.
I would highly recommend this tool to everyone. A quick tip: Add OneNote to your start-up programs list so that it is launched every time the machine boots up.
This blog was completely written in OneNote.
And, I don't carry a notepad anymore.

If you haven't tried OneNote yet, here are a few links to get you started:
And if you're already using OneNote, these MSDN blogs would be of great help.
http://blogs.msdn.com/b/chris_pratley/: a very informative and educative blog by co-founder of OneNote
Mike Tholfsen, Test Manager for OneNote crafted this wonderful poem:


* It is a matter of nostalgic joy to leaf through these pages.
++ It's another matter that I didn't have as many meetings back then. How I yearned for those, and man, how I wish these days to have lesser meetings so that I can get some meaningful work done.
** I am surprised that Evernote — which was quite a rage back then, and is widely popular even now, didn't work for me.
# Just as am about to post this article, my office desktop is already upgraded to Office 2013 ( and hence OneNote 2013) and my personal laptop got the Office 2013 as well via Microsoft HUP. Yay!!