The IT Workplace: Doing it Basil Style

Scrum Cycle

It is healthy and prudent practice to record what one would consider a workplace “incident”—there is a Blog still dedicated to such health and prudence, called “The Black Factor.” Of course there is a “real world” of people who are proud to not “whine” and “complain”—and I would argue that these people are not very healthy over the long term (but they should have more many than me, earned well, to cover their healthcare costs—assuming that people are still stupid enough to call it “healthcare” in the American future).

So I mentioned earlier that I’m getting used to the scrum agile way. In one sprint a young, relatively inexperienced developer, Basil (let’s call him “Basil”—after Basil Fawlty of Fawlty Towers), was put in charge of a story. He assigned me to the task of adding functionality to DataGrid cells that requires the use of DataGridColumnTemplate elements. First of all, he (or no other developer on the team) knew what DataGridColumnTemplate elements are—this is the first red flag for me. Let’s freeze the frame right here: I am taking the team into the unknown. I am an outsider—the newest developer on the team and I have not “earned the trust” of the team. So we had to take a meeting to “explore” why we need these DataGridColumnTemplate things. I was willing to accept this level non-trust and explained my position—my decision was apparently accepted (but it is important to know that my position is a reaction to Basil’s need to use a DataGrid—so my action here should be seen as accommodation instead of the beginning of a “problem” resulting in the “incident.”

Basil decided to use the DataGrid in the first place. His primary concern is defending why he decided to use this control (which not a part of WPF proper) instead of having enough experience to explicitly reduce to the absurd anyone who would dare question him. I would rather go through this explicit learning experience instead of hearing punk-ass fragments of defense here and there.

My use of the DataGridColumnTemplate was weighed down by the need to support an “unknown” number of columns (over 70). This means that data-binding the composite controls cannot be done declaratively in XAML. The binding (and the generating of the grid columns has to take place imperatively in code). This imperative way is what I jokingly called again and again ‘Basil style.’ This also means that I had to write code right on top of Basil’s code (which is poor Team-Foundation-Server planning by the way). So Basil knows that I have read his code—the Basil style.

You see, folks, Basil is a “cheerful” fellow. He jokes a lot. He expresses concern a lot. He even offered to walk me out of the building when we were working late one night. He often compulsively asks the same question (like “How’s it going?”) every ten minutes—seemingly not recalling the previous answer. Basil is 20-something years old, has a girlfriend and likes coffee. Suddenly, his cheer went away this morning when he heard my ‘Basil style’ joke, again. The most cheerful guy on the team is suddenly, visibly annoyed by this kidding. It is important to understand that I did not intend to piss him off—but since he went there I went with him there. What a real-world, church-going homeowner would have done is apologize to Basil right then and there to diffuse the situation and re-secure access to that paycheck by reducing risk.

Once I pissed Basil off, he revealed the following:

Here are my points:

Comments

Victor, 2010-01-02 20:32:07

I encourage you really think about what you blog about as members of your team, such as me, might read them and can cause tension at the workplace. Also, I encourage you to follow my "Dumb-Ass" advice because I know what I am talking about and I am trying to help you not get shit-canned; if you are stuck you need to make that clear so that people on your team and management don't think you are incompetent and that is exactly what is going on. Further, you mentioned that there are two team members that have little to no WPF experience. I, on the other hand, have extensive WPF experience and much more than yourself. If you are willing to work with me and the team we all can learn from each other. These types of blogs will hinder that type of symbiotic relationship. Victor

rasx(), 2010-01-03 22:20:44

Victor, I will continue to write these Blog posts as long as I can afford to pay the bill---and the type of hosting company can stay open. Based on your assessment of my incompetence (which is, ironically, incompetent), I should not be able to pay this bill for very long... It's very expensive ...all very expensive---but sometimes worth it.

Victor, 2010-01-04 15:25:31

Read my post, I did not say you were incompetent.

rasx(), 2010-01-04 21:05:34

...only time will tell what is "exactly what is going on"... by the way, Victor, your managerial advice in no affects your awesome WPF/Expression Blend skills!

rasx()