Pages

Thursday, December 17, 2015

What's Your Personal Mission?

Do you have a personal mission? I do. (I'll share it with you in a moment.)

A personal mission is a statement about what change I make in the world, and the work I do to achieve that change. A mission is made up of a clear vision and specific actions that I take to move the world closer to that vision. A mission is daring, more grandiose than I can hope to complete in my lifetime. It is larger than myself and my personal pleasures. It is larger than the people I love. Some people might call it a purpose. A mission is a mix of self-observation (what I am doing) and aspiration (what I hope to do / dream of doing).

A well written mission makes a clear connection between the things I do and how those things help me achieve my vision. Sometimes the work of a mission is solo work. Sometimes it is collaborative work.

A person's profession may or may not be related to their mission. Jobs and careers can function as support for a person's mission, as food and sleep do. Sometimes people are fortunate enough to see their work as a vocation rather than a job or a career. In that case, all their work is mission work.

A specific mission helps me focus my actions in the world. While there are myriad "good actions" I can take at any time, trying to perform many unrelated ones can leave my efforts diluted and ineffective. I can use my mission to gauge whether something I am about to undertake is worth doing. Does my proposed action move the world closer to my vision? Does it support my life in such a way that I have lots of energy to move the world closer to my vision? Does the proposed action drain me and leave me less able to change the world?

So here is my mission: I help create a world full of expressive, successful people through mentoring and demonstrating real openness.

The vision and actions parts are clear and measurable. There is a strong connection between the actions and the results I want. I work toward the vision in my profession as a software coach / developer and in organizations I belong to using all the actions, and out in the world, with my friends, family and people I meet, using some of the actions (obviously, mentoring is only appropriate in certain situations).


Want to create a mission of your own?

  • Consider all of the world's problems.
  • Consider your gifts, skills, passions, interests.
  • Contemplate ways in which some of the latter can begin to improve one of the former.
  • Try this format: I create a world of (or without) ________ by _______ing _________.

Example Missions:
  • I create a world without hunger by inventing innovative means of distributing surplus food.
  • I create a world full of educated children by teaching middle school social studies.
  • I create a world full of religious awareness by writing and performing spiritual songs.
Notice that none of the examples are small enough to complete in one lifetime. Notice that the visions are about the world, not about myself. Notice that the actions are measurable. Did I distribute food? How much? Did I teach again this semester? How many performances did I do this year? And notice that the actions can indeed move the world toward the visions.

Mission anti-example:
  • I create a world of happiness by improving myself.
In the counter-example, the vision is vague, it is unclear how to measure the action, and the action doesn't necessarily move the world toward the vision. 

Shadow Mission:

In addition to having a mission, I also find it useful to have a "shadow mission". Whereas a mission guides me to improve the world, a shadow mission states the kind of world I unintentionally create when I don't to the right actions.

Example Shadow Mission:
  • I single handedly create a world of isolation by berating people and being a bad example. 
It's helpful, sometimes, to check and see if I'm living out some of my shadow mission. Then I can choose to get back to the work of pursuing my vision for the world.


Do you have a personal mission? If you do, I'd like to hear about it. And let me know your thoughts on mission and shadow mission.

Thursday, May 14, 2015

On Fine Cuisine

This post is a bit off-topic from my usual writings.

Today I'm answering the question, posed by Pillar's corporate chef, Chef Traci: "What does Fine Cuisine mean to you?" (Here is a picture of her describing the wonderful food she presented at our recent monthly meeting).

For me, "Fine Cuisine" starts with fantastic ingredients. Chef Traci's trips to the Ann Arbor farmers' market is a great beginning.

Furthermore, Fine Cuisine (especially as it pertains to in-house corporate catering) should have both familiar elements and elements that are new and challenging enough to be inviting, inspiring, and educational. For example, Chef Traci served homey pork tenderloin sandwiches and spicy brussels sprouts and spicy green beans that might not be familiar to everyone, but which were accessible enough for lots of people to try!

Another Fine Cuisine requirement in my book: dishes that accommodate people with "special needs" that don't feel like afterthoughts but instead feel as integral to the menu as the other dishes. Some special dishes should be traditional enough to be recognized and enjoyed while some dishes give non-special-needs people the chance to learn that foods they might not have experienced (like veg/vegan or non-typical grains or vegetables) can be wonderful. Traci excels at this!

Finally, Fine Cuisine should span many parts of a meal: small bites, snacks, salads, entrees, desserts, and interesting alcoholic and non-alcoholic beverages! Besides the variety of interesting craft beers, yesterday's meeting had a variety of sodas and a cucumber and berry-infused water!

Thanks Chef Traci for the question that got me thinking about all these things!


Tuesday, April 28, 2015

I Can't Agree with Advice to Specialize

I follow John Sonmez from simpleprogrammer.com. His latest post "I'm Not Sure I Want to be a Specialist" got me thinking. John says:
"I’m definitely ... going to tell you specialize ... It’s going to be very hard to narrow yourself down so much that you’re pigeonholed into a place where you’re not going to have customers, especially if you’re just looking for a job."
I just don't agree. There are plenty of technologies that developers might have specialized in that just aren't in use anymore - the digital equivalent of buggy-whips.

Certainly some specialists have fantastic success, but aiming for that kind of success feels like aiming for a career in the NBA. If you are one of the few who can, that's great. But it's not the kind of advice I'm going to give out as a mater of course.

Specialization has real risks, for individual developers and for teams. For instance, as I mentioned, if I specialize in a technology that goes out of favor, my employability declines, potentially seriously.  Additionally, teams of specialists can face roadblocks when a particular type of work piles up faster than the team specialist can complete it. Or worse yet, when a team loses a particular specialist, predictable team capacity, a critical value for project owners, can tank until a replacement can be found and ramped-up (see Bus Number).

My employer, a consulting firm, seeks "Generalizing Specialists", developers who:

  • have one or more technical specialties
  • has a strong general knowledge of software development lifecycles
  • has at least a general knowledge of business and a willingness to gain at least a minimally functional knowledge of their client's business domain
  • actively seeks to gain new skills in their specialties and beyond, in technical and non-technical areas
If the team I am on suddenly needs an an extra push in QA, I am comfortable enough with testing that I can temporarily shift my responsibilities.

My advice to developers is: "Specialize in one or two things, stay on top of market trends without following fads, and always be learning, in your specialties, in tech areas you don't specialize in, and in non-technical areas."

Tuesday, April 7, 2015

How JIRA Helped Our Team

A colleague at a different client asked about what out-of-the-box JIRA reports we use and how they benefited our team.

Whatever you think about physical card walls versus electronic tools, the fact remains that some teams use them and JIRA is a common one.

Like many good charts, many conclusions can be drawn from the reports below. I have explained one or two specific benefits that my teams have reaped from them:

Burndown: We used it to track daily movement of cards (or lack of same) at standup and it worked to identify that developers we incurring risk by working on individual cards for several days.

Sprint Report: We used it to look at what work was added/removed from the current sprint, and what cards were finished. It worked because it enabled us to detect that developers were pulling work ahead while there were still incomplete cards in the sprint. This gave us an opportunity to have a conversation about swarming to get cards over the finish line and breaking down silos.

Velocity Chart: We used it to to compare committed/completed of current sprint verses past sprints. It worked because we detected a trend of increasing overcommitment and the team was able to adjust sprint commentments so that PMs had better projections and the team reversed the growing feelings that they were failures.

Version Report: We use it to project when our project will be finished. It worked because the PM learned that the team was not going to deliver all the scope by the needed date. The PM and the business were able to agree on reduced scope and the version report projected a good delivery date.

Wednesday, March 11, 2015

What do you expect from a tech lead?

I've been thinking about the role of Tech Lead. It is one of those titles where I think everyone "knows" what it means but most of us haven't tried to define it.

It goes without saying that a tech lead has to be strong technically, but I think what makes or breaks a tech lead is whether they have strong leadership characteristics. I see those characteristics falling in three categories (Self / Team / Business):

Self
Has an active desire to work with people
Possesses "confident humility"
Can accept a position with less than 100% of time spent working on code (sometimes a lot less)
Knows where the gaps in their knowledge are
Is not concerned with "looking good"
Can delegate work

Team
Can facilitate conflict resolution and team decision making
Wants team and individual members (including self) to grow and learn
Wants team members to succeed and actively works to ensure they receive recognition for it
When necessary, can combine their own experience with the thoughts of a team and render a decision
Understands that people have different learning styles (visual, tactile, auditory, etc)
Shields team from outside influences, so they can get their work done (much as a scrum master does)

Business
Understands the value that IT provides to business
Can speak to technical decisions in a way that addresses business partners' priorities
Understands and accepts that business may only wants to pay for "good enough" solutions, not "best" solutions.

What do you think? Do you agree/disagree with the characteristics I've identified?

Wednesday, January 14, 2015

What are the units for Story Points?

A co-worker and I were discussing estimation on agile software development teams (Yeah, I know - #noestimates. That was off the table here). I asked him what a story point represents. He said "effort", which PMBOK defines as "measurable work units", and pointed me to a post by Michael Cohn:
"...story points are about time—the effort involved in doing something. Because our bosses, clients and customers want to know when something will be done, we need to estimate with something based on effort. Risk, uncertainty and complexity are factors that may influence the effort involved."
My friend went on to write the following formulas:

(SumOfRemainingEpics + SumOfRemainingStories) / Velocity = Forecasted Duration (+/- uncertainty)

and

Forecasted Duration / Team Capacity = hours

I wasn't so sure that this demonstrated that story points are about time, so I re-wrote his formulas adding units (and dropping uncertainty):

SumOfRemainingEpicsAndStories(points) / Velocity(points/week) = Forecasted Duration(weeks) 

and

( (SumOfRemainingEpics(points) + SumOfRemainingStories(points)) / Velocity (points/week) ) x Team Capacity (hours/week) = hours

Management wants estimates of duration which we calculate according to the first equation by dividing points by velocity (Cohn mentions this too). In either formula, points cancel out. What that says to me is that units of story points don't matter. We can estimate in complexity, risk, time, or elephants! The upside of this is that non-timebased units for points prevents management from translating stories directly back and forth between points and hours, which can cause friction between the team and management

Monday, September 29, 2014

Agile Coach Camp Session - Every Tool Sucks

Yesterday, I returned from Agile Coach Camp 2014 in Indianapolis. Here are my recollections from one session:

Every (card wall) Tool Sucks:


Reasons for card wall tools:
  • reporting / analytics
  • distributed / dispersed teams
  • backup / archive
  • regulated industries?

Problems with current tools:
  • hardware costs not low enough for large monitors to show the entire wall
  • when not able to replace physical wall completely, keeping two things in sync is extra work
  • teams often do not keep electronic cards up to date
  • either restrictive workflows or so general-purpose as to make configuration difficult and costly
  • commercial choices are costly
  • continuous improvement of workflow not always easy or quick
  • no participan

What might help:
  • great reduction in price of technologies like large Microsoft Surface monitors
  • QR / barcode recognition, OCR
  • home grown tools? still runs risk of cost/time to improve workflow, process lock-in

Other ideas: