Friday, April 27, 2007

A Cook Should Never Bake

Well, this cook, anyway. I'm a pretty decent cook (ask Hubbs) and for the most part, my dishes come out palatable, tasty, and not over/under-done. I can do most types of entrees, salads, and even the occasional appetizer, and can follow a recipe, or even improvise one, without creating disastrous, inedible fare.

However, my cooking skills (and my reading skills) do not transfer so well to baking. You see, tonight I tried what was promised to be a fool-proof banana bread recipe. Apparently, it isn't fool proof when the fool is me. The healthy whole-wheat banana bread recipe called for 3/4 cup of brown sugar, which I brilliantly replaced with brown sugar Splenda. The instructions on the Splenda package suggested using half of what the recipe normally calls for in brown sugar. Half of 3/4 cup is essentially 3/8 cup, or 94 mL. Don't ask me why I suddenly developed a major case of dyslexia or lost all my number sense, but somehow I parsed the recipe to say that it needed 1/4 cup of brown sugar. This brain fart of mine led me to calculate that I needed a mere 30 mL (1/8 cup) of brown sugar Splenda, which I proceeded to add to the rest of the ingredients. I shortchanged my banana bread by 2/3 of the required amount of sugar!!

Yes, folks, never let this cook bake. I don't know how I manage to fumble up these baked goods, but somehow I always succeed in doing so. The worst part was that Hubbs had convinced me to make 2 loaves instead of just the 1 that I had planned, so now we have 2 loaves of less-than-sweet whole wheat banana bread. The only saving grace is that, in my baking ineptness, I also failed to use the unsalted butter. As such, my failed loaves of banana bread taste not unlike buttered pieces of banana bread, which for some is even more desirable than a sweet banana bread.

Lesson learned. The next time I bake, I think I'm going to need supervision. And a lot of help.

Wednesday, April 25, 2007

Helen Needs, and Helen Wants

Thanks to my friend (a new dad!) JBerg, I was inspired to look up "Helen needs" on Google. I did the same with the phrase "Helen wants." Here are some of the cooky (abridged, in some cases) results I found:

Helen needs your immediate attention.

Helen needs to write more.

Helen needs to change her life and quickly.

Helen needs to find some soldiers that were in the 4th Infantry Division, 1/11 C Company, at Fort Carson, CO from 1979-1980.

Helen needs your money.

Helen needs to reverse back into a parking space so the motor has to rotate in the opposite direction.

Helen needs a mojito!

Helen needs to make sure none of her beloved penguins are gay.

Helen needs a cat free environment.

Helen needs the new owner at325 Crestwood Terrace to shut up a minute.

Helen needs to learn to let go and delegate.

Helen wants to ban this.

Helen wants to go on a cruise with nice people

Helen wants to know what he's got in mind.

Helen Wants to Hear From You

Helen wants to cook a potato for lunch.

Helen wants to expose everything.

Helen wants to share her storytelling ability in such a way that it brings to life the stories for the listener and touches their hearts

Helen wants him to ditch the remote.

Helen wants to know how she’s going to die.

Helen wants to get her own way and to marry for love.

Helen wants some time alone.

Crazy, eh? You can try it with your name and a verb of your choice and see what comes up. Just remember to use the parentheses to make sure you find that exact phrase on Google. Oh, and have fun. I know I did!

Monday, April 23, 2007

80 Years Young - What to Get My Grandpa

Following my sister's wedding next month, my maternal grandpa (Gong Gong) is celebrating his 80th birthday with a huge banquet, complete with a "walk down Memory Lane" slide show and 80 attendees requiring the sectioning off of a Chinese restaurant. For this occasion, my mother has instructed me that I need to buy him a gift, since I am an adult now, and married.

I was a little insulted, admittedly, because I had already planned to get him a gift because I love him, not because I am an adult and therefore obliged to do so under orders from my mother. I am also well aware of both my married status and my age, neither of which required my mother to restate the obvious.

That said, I am now sitting around trying to think of ideas of kick-ass gifts for an 80-year old Chinese man who basically owns everything he needs already. My same dear mother suggested a belt or a wallet. I told her those were crappy gifts and I wanted something more meaningful and special. But what?

Here are the limitations: the gift must be relatively small and space-saving in physical size, because my Gong Gong has limited space in his luggage and lives out of town, and because he plans to move to an even smaller home than he currently owns, when he moves to the big city in the next year or two. The gift must also not be too expensive, because my mother feels that it should be thoughtful, not pricey. The gift should also be personal and practical, because apparently Gong Gong has no need for frivolous, decorative mementos and already has too many of that type of thing.

I suggested a piece of Chinese art. My mom said this was too big and too redundant since he already owns art. I suggested a little solid gold Chinese figurine (they're popular in Hong Kong). My mom said that this was too expensive, and Gong Gong already got something like it for his 70th or 60th birthday. He has a satellite dish for Chinese TV already, has a DVD player, doesn't know how to use a digital camera (and owns no computer), drives a humble car that isn't "soup-up" worthy, doesn't read English very well, isn't superbly mobile anymore, rarely drinks, rarely travels, and only eats Chinese food.

I am at an utter loss. I have 5.5 weeks to come up with an idea and get it. Any fabulous suggestions?

And please don't say a belt and a wallet.

Monday, April 09, 2007

Everything I Needed To Know About Being a Dev Lead... (Part 3)

... I learned from my Hubbs.

As I wrap up my mini-series on effective dev leadership, I have to say that it was very cathartic for me to put my thoughts to words, and the exercise of detailing this stuff has done much to help remind both Hubbs and I about what it means to be true servant leaders. May it encourage you in what you might be doing right, and remind you of areas in your own life where improvement can take place.


Effective leaders work actively as a part of the team.

The best leaders, so I have noticed, are never hidden away in an office or perpetually at meetings. These leads are right in the thick of the work, contributing alongside their team to the end goal. Sure, there are occasions when as a dev lead, one is forced to attend meetings. However, an effective lead not only knows what the team is working on, but is as much as possible working with them on it.

Hubbs is not the biggest fan of meetings. For him, I know that his preference is to be with his team, showing them ways that they can improve a process or brainstorming together a new way to approach problems. He is always present, always visible to his team, and ensures that if they are doing work, so is he.

I respect that a lot. So many dev leads and managers tend to distance themselves from the code and from the grunt work, and this really deepens the relational chasm between them and the developers working for them. Even cursory banter, team lunches, and the like are poor substitutes for actually being there and writing the code, making decisions about the process, and solving bugs and problems together. I love that Hubbs can always talk to his teammates about a relevant, recent problem with code and not feel like he is “out of the loop” on what is happening with the team. To me, that shows greater leadership than some dude in the office who claims to have an open-door leadership policy but really has no idea what his team is going through.

Effective leaders surrender the spotlight.

A great leader is one who is willing to step back and let his team excel in newer work sometimes. Such a leader not only identifies a great opportunity for growth and innovation, but surrenders the bulk of these opportunities to people on the team who need the challenge and desire the chance to showcase their abilities in new ways. These leads make a decision to do more of the “behind the scenes” stuff so that their team can do more visible tasks, even at the expense of their own interests and needs for challenge.

This is a tremendous area of challenge for Hubbs, because he loves doing current work and he thrives on completing exciting projects. Maintaining existing code or bug-fixing are probably among his least favourite work, and yet time and again I have seen him assign the best and most exciting jobs to his team, leaving for himself the crappy stuff that nobody else would want to touch. Like most effective leaders, Hubbs recognizes the greater value in stepping back and letting his team do the work that will inspire them to grow, and motivate them to do their best. He wisely observes that a team working on old code or maintenance work all the time is one that will ultimately fall apart in spirit, and he accepts that his role as a leader is to provide challenge and motivation and morale, even at the expense of his own desires for new challenges sometimes.

Effective leaders do as they say at all times.

The most essential quality in an effective leader is integrity. If you say you will do it, you must. If you make a promise, you keep it. If you claim to stand for a certain principle, you stand up for it at all times. This is not some great universal secret, but an idea that most are familiar with in theory. However, the practice of consistent living and acting with integrity is not so easily found in many leaders, whose commitments to their team may at times conflict with their commitments to their superiors or to their own interests. Effective leads are wise with their commitments, and keep them when they say they will. They do not allow personal interests or professional pressure to influence their integrity as people, but make every effort to act consistently with what they profess. These types of leaders engender trust from their team.

By contrast, many team leads and managers fail to live up to the standard of integrity. They want to keep their workers happy, so they make empty promises to prevent staff turnover, even when the promises are not supported by those in higher positions of authority. As a result, these “leaders” end up looking like fools or liars, because the promises made are never fulfilled, only pushed back and delayed and postponed indefinitely. A spirit of mistrust then brews among the staff, and make them high risks for resigning.

Does the latter description sound all too familiar? Unfortunately, in the development world it is not uncommon to have managers and leads who, despite their best intentions, fail to act with integrity. You will know them by their high staff turnover and the reputation that is eventually built around their workplaces. You will know them by the mistrust that their team has for them, and by the low morale in their offices. You will know them by their former employees, who will tell their next employers about the undesirable conditions of their previous job and the series of promises that were made and never kept by their leaders.

Hubbs has shown me the power of integrity in the way that he leads. Every person to whom he has made a promise or commitment has seen him come through for them. Every member of his team trusts him implicitly to act in their best interests, period. Why? Because his track record testifies to his consistency, and his loyalty to what he believes and what he says is firmly rooted. Even when situations have been challenging, Hubbs has found innovative ways to fulfill his commitments. His savvy helps him to come up with creative, win-win solutions for all parties involved. This is why Hubbs has a very loyal team, and those who have worked for him in the past continue to speak highly of his integrity. If any should enter the market for a new job, Hubbs is someone who is often sought after as a person to work with and for.

And that, my friends, is what I have learned from Hubbs. He has shown me how to be a great leader in the world of his industry, and he has been a perfect example to me of the greater principles underlying effective leadership and management. Hubbs is by no means perfect, and I am certain there are many other lessons he will need to learn about being the best leader that he can be, but judging from the very faithful group of people he calls friend and colleague, I know that he must be doing something right.

Are you?

Saturday, April 07, 2007

Everything I Needed to Know About Being a Dev Lead... (Part 2)


...I learned from my Hubbs.

In continuing my series on being an effective team lead, I feel that I should explain that many of the things I learned from Hubbs are lessons that he himself has learned over the last few years of work in the industry, as a lead. He is by no means perfect, and has made some bad mistakes of his own, earlier in his career. However, the man that codes and leads other developers today is vastly different from the man who did development work even 4 years ago, and I can confidently speak to his example as being a reflection of a permanent evolution in his own leadership style.


Effective leaders demonstrate respect and restraint in the way that they speak to others.

I do not know of any time and place when derogatory, mean-spirited, or humiliating comments are effective motivators for change or improvement. If anything, these demean the person and destroy their morale. Effective leaders know that to motivate their team and to inspire change, they must demonstrate a consistent respect and restraint in the way that they communicate in any given situation.

When big bad mistakes are made, or responsibilities neglected, a good dev lead knows better than to react immediately and to verbally beat down or embarrass their team into surrender. This accomplishes little more than kick-starting the team’s search for job opportunities elsewhere. Rather, the effective leader chooses not to respond emotionally, but allows themselves time to consider how to address the troubling situation. Then, when they do finally speak with the team, they do so individually, privately, and respectfully, approaching the problem as one that ought to be solved together. The effective team lead then takes ownership and responsibility for the problem, acknowledging that the solution can only be viable if both leader and team are equally invested and involved.

I have seen Hubbs get frustrated on several occasions, both with the processes he has had to deal with, and with mistakes made by people with whom he has worked. However, I have never heard him yell, and I would dare say that nobody who has worked with him has seen him demean his colleagues. This is because Hubbs operates on the principle of respect; not only does he demand that his team conduct themselves respectfully in their interactions with others, but he also holds himself to a higher standard of showing respect to everyone, regardless of circumstance. His words, then, are always chosen with restraint and respect in mind, whether these be uttered words or written ones. I would conclude that this is why his teammates, both past and present, have always expressed their desire to work with him again and again.

Effective leaders give credit where credit is due.

Team leads are not the only people on a team with good ideas or innovative approaches to development. Sometimes, the team will come up with a brilliant suggestion that puts the lead’s original plan to shame. In cases like this, there are two ways that a leader could respond: by taking credit for the team’s success as their own, or by giving credit to the people who came up with the idea in the first place. Though it seems obvious that the better choice would be to give credit where it is due, you’d be surprised to see how few people actually walk the talk that they profess, and how many leads are tempted to single-handedly accept the accolade that is deserved by others.

There have been many times when Hubbs has received credit and compliments for a job well done, and he has immediately corrected the praise-giver and attributed the successes to individuals on his team. To him, these teammates are often the integral players and contributors to the work, and he makes that abundantly clear to anyone who would ask. I have heard him give praises and credit to people on his team even when he has worked as an equal partner with them, 50-50, to complete the task. Rather than receive his share of the praise, he would much rather speak up and let someone else equally, or more deserving, than him receive the lion’s share of the credit. That, to me, speaks volumes to his character and to demonstrating what it truly means to be an effective dev lead – enabling and empowering those for whom you are responsible for leading.

Effective leaders take advantage of every opportunity to put in a good word for their team mates.

How many times does your boss go to bat for you? That is a measure of an effective leader, and Hubbs goes to bat almost every day for his team. I cannot even count the number of times when Hubbs has described to me his plans to speak with certain “powers that be” about the progress and abilities of people on his team. He doesn’t just wait for them to do something great in order to put in a good word on their behalf; instead, he actively looks for strengths and talents which he can highlight to those in more senior positions. And he does this at every possible opportunity.

Hubbs has learned, as have I, that effective leaders are in a unique position to be able to advance or stunt another’s career. As a team lead, one has the ear of people in positions of greater authority than themselves, and the leads are essentially bridges between the developers and the folks at the top of the hierarchy. A selfish, arrogant, or insecure leader would abuse this privilege by speaking ill of their team, particularly the up-and-coming “shining stars” that they view as threats to their own position or authority. Their concern would be to stay the lead, and to not be surpassed by those who work for them. By contrast, the effective leader is shrewd and wise, and would take advantage of this unique position as a means to help bring more visibility to, and further the careers of, the individuals on their team. Their concern would be the professional well-being others, rather than securing their own positions as their first priority.

(…a final installment to come tomorrow)

Friday, April 06, 2007

Everything I Needed to Know About Being a Dev Lead...


… I learned from my Hubbs.

He is by no means a household name like Hanselman or Esposito. He has yet to receive his MVP or his MCSD or a lucrative contract offer from Google. He doesn’t speak around the globe nor author best-selling development bibles.

And yet, he is arguably as good a team lead (if not better) than anyone who would fit one of those categories described above.

What I have learned from Hubbs, I have gleaned from his speech, his actions, and his thoughts. I have observed the way that his peers and his team respond to him, and I have watched him grow and reflect and improve with each day that he is in a position of leadership over others.

And this is what I have learned: to be a successful development team lead means to be effective on three fronts –beliefs, speech, and actions. In each of these areas, an effective lead is consistent and committed to the values that they profess.

I think that for the next few days, I would like to share what I've learned in each of these areas, with you. Thank you for indulging me in this rather thoughtful, more technical journey.


Effective leaders do not assume superiority over their team.

There are many paths that lead one to take on the position of a team lead. Being in such a role, then, does not necessarily correlate to having greater development abilities than those who are not team leads. Hubbs is a great developer, and innovative, and eloquent in his code. He would be foolish, however, to think that he is somehow a better developer than his teammates simply because he is the lead and they are not. His effectiveness comes from having the humility to recognize that he has much to learn as a developer himself, and to be willing to recognize that his abilities may in fact be far inferior to some with whom he works.

Effective leaders do not see their team members as threats to their position, but as measures of their own success in leading.

Though I cannot profess to know what motivates people to see their peers as threats, this is not uncommon at all in the development industry. I have heard, as I am certain many of you have also heard, some ugly tales of developers and project managers who have uttered mean-spirited, passive-aggressive remarks about the developers who have worked with them, or who have made decisions in order to keep certain teammates or subordinates from advancing in their careers. This has undoubtedly led to some very disastrous working relationships, many of which likely ended in burned bridges and hard feelings.

Being a successful team lead, however, requires the very opposite attitude. It requires a spirit of genuine camaraderie and collaboration, and a belief that the success of an individual brings success to all. This has been one of Hubbs’ finest qualities as a person and as a dev lead; he has always celebrated the individual successes of his team members, and has never looked at another’s professional accomplishments as a challenge to his own. I have never heard him speak ill of another developer or even contemplate a decision that might jeopardize the well-being of another developer’s career in order to secure his own role as lead or prevent others from advancing positions. If anything, Hubbs has worked hard to help bring about the advancement of others in their career. To him, their success is hardly a threat but rather, a tribute to their own skills and to his effort in helping every person on his team maximize their potential as developers.

Effective leaders believe that every person on the team has something valuable to offer to the project.

Every developer is uniquely talented and an expert in some area in which they have worked for a long time; this may not be expertise in the newest technology or the most cutting-edge applications, but a valuable skill set nonetheless. The role of the effective team lead is to recognize the inherent value of each of their team members, to discover the individual gifting of each member, and to help everyone work to their strengths and improve in their weaker areas.

Hubbs has long been an advocate of the “underdogs” in the office. Some of his closest friends and most loyal allies in the industry are people who had been written off by others because of their background or their unfamiliarity with newer technologies. What Hubbs has been able to do is to see where the passion lies in each of these developers, and to help them cultivate their interests and skills so that they can become productive, contributing members of the team. Had he written off members of his team due to their perceived inexperience or incompetence, he would not have the circle of colleagues and teammates that he now calls friends.

( be continued tomorrow)


So I joined up with this new social networking thing called Facebook, and now I am quasi-addicted to it.

I will sometimes sit there for many minutes, searching for new/old friends to invite and to add to my friends list. Sometimes I'll spend time trying to load up pictures, and sometimes I'll just surf to see who my friends' friends are.

It is a pathetic past-time, I will admit. So why are so many people joining up on this?

Here are a few theories:

1) We're all a bunch of insecure people who want to develop an impressive, lengthy friends list in order to appear to be more popular than we actually are, or to assuage our fragile egos.

2) We're all a bunch of narcissists who want to show off our very extensive social networks to others.

3) We're all a bunch of voyeurs with a morbid curiosity about what other people we have known, or been acquainted with, are doing now, or how well/poorly our childhood "friends" have aged over the years.

4) We're all a bunch of bored, pathetic people who have nothing more productive to do with our time.

5) We're looking for love, or for friends, or for both.

6) We have friends who are Facebookers and felt obliged/co-erced into "joining" because of their invitations, but will likely never log in again.

I definitely do not fall into categories 2 and 5, so I think I am probably on Facebook for reasons 1, 3, 4, and 6.

Am I missing any other reasons why people join Facebook? If so, do enlighten me. It continues to be a slightly unhealthy past-time for me.