<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	>

<channel>
	<title>Megatome &#187; leadership</title>
	<atom:link href="http://www.megatome.com/category/leadership/feed/" rel="self" type="application/rss+xml" />
	<link>http://www.megatome.com</link>
	<description>Just another idiot&#039;s ramblings</description>
	<lastBuildDate>Thu, 12 Jan 2012 00:45:46 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.3.1</generator>
<xhtml:meta xmlns:xhtml="http://www.w3.org/1999/xhtml" name="robots" content="noindex" />
		<item>
		<title>Make It A Good Day</title>
		<link>http://www.megatome.com/2009/01/14/make-it-a-good-day/</link>
		<comments>http://www.megatome.com/2009/01/14/make-it-a-good-day/#comments</comments>
		<pubDate>Thu, 15 Jan 2009 04:02:45 +0000</pubDate>
		<dc:creator>iamthechad</dc:creator>
				<category><![CDATA[Development]]></category>
		<category><![CDATA[Health]]></category>
		<category><![CDATA[leadership]]></category>
		<category><![CDATA[Living]]></category>
		<category><![CDATA[Work]]></category>
		<category><![CDATA[anxiety]]></category>
		<category><![CDATA[attitude]]></category>

		<guid isPermaLink="false">http://www.megatome.com/?p=63</guid>
		<description><![CDATA[Don't just wait for a good day to "happen". I've been able to make some attitude changes and make good days.]]></description>
			<content:encoded><![CDATA[<p>Back when I used to work out regularly, there was an older gentleman who was usually changing in the locker room at the same time as me. We would make small talk as people do to be polite. He might have told me his name; I don&#8217;t remember very much about him now.</p>
<p>The one thing that makes this man stand out in my memory is that whenever we parted ways, he would say &#8220;make it a good day&#8221;. I usually said &#8220;you, too&#8221;, or something similarly uninspired.</p>
<p>What he was saying finally struck me one day. He was not telling me to have a good day. He was telling me to make it a good day.</p>
<p>As nice as the sentiment sounded, I didn&#8217;t really see how it applied to me. My job sucked, and it was causing me all kinds of stress &#8211; even to the point of <a href="http://www.megatome.com/2006/09/14/burned-out/">visiting the emergency room</a>. I experienced a lot of anxiety and had a few panic attacks.</p>
<p>I got to the point where I reacted badly to everything that happened at work. I can remember telling my manager more than once that decisions made by upper management were going to cause me to have to take another trip to the hospital. He finally got tired of my complaining and told me that work was not causing me stress; it was my reaction to work that was causing stress. That was not the answer I was looking for, so I added him to my mental list of stressors.</p>
<p>Fast forward a couple of years to a new job. As I&#8217;ve <a href="http://www.megatome.com/2008/12/10/moving-to-agile-inertia/">mentioned before</a>, I&#8217;m now leading a pilot project using an agile process (Scrum). For the first several iterations everything annoyed me. My developers couldn&#8217;t follow simple instructions. They couldn&#8217;t write good code. They had to be constantly prodded to keep them going. Every day had its share of &#8220;what now?&#8221; moments.</p>
<p>For some reason I started thinking about the man at the gym again. This time, it paired perfectly with my old manager&#8217;s advice. Despite my annoyances, work continued to get done and things were working. It wasn&#8217;t the work that was bothering me. It was my reaction to work.</p>
<p>I&#8217;ve been trying to be very mindful of how I&#8217;m reacting to things at work. I still get pulled in a lot of different directions, and I&#8217;m still having trouble getting my team involved in the process. What I&#8217;m not doing is worrying about it. I&#8217;m learning to be more aggressive about my time management. Instead of wondering why my team can&#8217;t grasp simple process concepts, I&#8217;m asking them how I can explain or demonstrate it better.</p>
<p>Don&#8217;t get me wrong. There are a million things I&#8217;d like to change about my environment and my team every day, but instead of waiting for a good day to just &#8220;happen&#8221; to me, I&#8217;m becoming an active participant and &#8220;making it a good day&#8221;.</p>
<p>In the last several weeks, I&#8217;ve noticed that my anxiety level has plummeted, my stomach is not upset every day, and I&#8217;m sleeping better. That&#8217;s good enough for me.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.megatome.com/2009/01/14/make-it-a-good-day/feed/</wfw:commentRss>
		<slash:comments>3</slash:comments>
		</item>
		<item>
		<title>Moving to Agile: Inertia</title>
		<link>http://www.megatome.com/2008/12/10/moving-to-agile-inertia/</link>
		<comments>http://www.megatome.com/2008/12/10/moving-to-agile-inertia/#comments</comments>
		<pubDate>Thu, 11 Dec 2008 03:49:23 +0000</pubDate>
		<dc:creator>iamthechad</dc:creator>
				<category><![CDATA[Development]]></category>
		<category><![CDATA[leadership]]></category>
		<category><![CDATA[Work]]></category>
		<category><![CDATA[agile]]></category>
		<category><![CDATA[coding]]></category>
		<category><![CDATA[inertia]]></category>
		<category><![CDATA[scrum]]></category>

		<guid isPermaLink="false">http://www.megatome.com/?p=48</guid>
		<description><![CDATA[Switching to an Agile process shines the light on a developer who has been successfully hiding his lack of work, but what can I do to change his behavior?]]></description>
			<content:encoded><![CDATA[<p>I&#8217;ve been given the dubious honor of leading a team using Scrum as a &#8220;pilot&#8221; to see how well it works for the company. I&#8217;ve used Scrum before and had a good amount of success, so I feel comfortable with the process.</p>
<p>The single largest variable on any development team is the developers. I&#8217;ve found that moving to an Agile process like Scrum can really expose developers who&#8217;ve been hiding behind &#8220;traditional&#8221; processes.</p>
<p>Therein lies one of the biggest problems I&#8217;ve run into. One of my developers is not what you could by any means call a self starter. He has been able to get along well with the official process, which does not do a good job of tracking what developers are working on. Now that he&#8217;s been thrown into Scrum, it&#8217;s become quite obvious that he really doesn&#8217;t do anything until somebody nags him long enough to get him going.</p>
<p>This is where inertia comes in. This developer is a textbook example of an object staying at rest until the team lead can poke and prod enough to finally get him moving. His previous lead had simply taken it as granted that he would have to spend a certain amount of time micromanaging to get any work out of the developer. I think it&#8217;s a waste of time and energy for me to constantly remind him to pick a task and work it, but that&#8217;s what I&#8217;ve been reduced to doing. This week, for example, it took two days of nagging to get him to perform a ten minute refactor. (I would have done the refactor myself, but I have to trust that my team can do their jobs, too.)</p>
<p>I don&#8217;t know how to engage this guy. I can spend time collecting data and create metrics, but I don&#8217;t think that&#8217;s an effective motivator. What I&#8217;d really like to see is a commitment to the team and to the project that leads into a desire to pull his fair share. I don&#8217;t even know if these are feelings I can engender in this developer.</p>
<p>Motivation is an issue for teams using any kind of development process. Every team member reacts differently to various inputs. Some members like recognition, while others prefer a bonus. Some just want to be left alone so they can do the bare minimum to get by. I&#8217;m hoping this isn&#8217;t the eventual outcome with this developer.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.megatome.com/2008/12/10/moving-to-agile-inertia/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>Is Refactoring Really That Scary?</title>
		<link>http://www.megatome.com/2008/03/27/is-refactoring-really-that-scary/</link>
		<comments>http://www.megatome.com/2008/03/27/is-refactoring-really-that-scary/#comments</comments>
		<pubDate>Fri, 28 Mar 2008 03:45:08 +0000</pubDate>
		<dc:creator>iamthechad</dc:creator>
				<category><![CDATA[Development]]></category>
		<category><![CDATA[leadership]]></category>
		<category><![CDATA[Making]]></category>
		<category><![CDATA[Work]]></category>
		<category><![CDATA[code]]></category>
		<category><![CDATA[coding]]></category>
		<category><![CDATA[refactoring]]></category>
		<category><![CDATA[tdd]]></category>

		<guid isPermaLink="false">http://www.megatome.com/2008/03/27/is-refactoring-really-that-scary/</guid>
		<description><![CDATA[I got admonished at my new job for coding practices that have become second nature to me. Is aggressive refactoring really that scary?]]></description>
			<content:encoded><![CDATA[<div class="floatleft"><a href="http://www.cafepress.com/agilestuff.26911153"><img src="http://images.cafepress.com/product/26911153_240x240_Front_Color-BlackWhite.jpg" alt="Born to Refactor Shirt"/>
<p>(Click to get the shirt)</p>
<p></a></div>
<p>I&#8217;ve been coding with an agile mindset for quite some time now. Some practices have become second nature to me over the years. One of these practices is aggressive code refactoring, coupled with test driven development (TDD).</p>
<p>I&#8217;ve been adding new functionality to our system at my new job, and as usual I&#8217;ve been following my standard techniques. My part of the system involves handling certain requests and responses. I wrote unit and functional tests for the request half of the equation, then began to tackle the response side. As I added (and tested) functionality, I began to notice a large amount of similarity in the code. This in turn led me to create an abstract base class for both request and response, pulling up all of the shared functionality. This resulted in the actual request and response classes being quite small, with just a few method implementations from the base class.</p>
<p>So far, this activity should seem pretty normal to most developers. As I said, it&#8217;s pretty much second nature for me, and I don&#8217;t even remember consciously making the decision to make the abstract class. Imagine my surprise when my team lead admonished me for creating and abstract class, and warned me not to do it again without explicit approval.</p>
<p>Of course I had to ask why we would not refactor code in this manner when the opportunity presented itself. My lead&#8217;s answer involved several parts, none of which have convinced me that refactoring is bad:</p>
<p>
<ol>
<li><strong>The abstract class is not consistent with the rest of the system.</strong> This, to me, seems to be a fault of the system. I&#8217;m not knocking consistency, but at some point you have to realize that you may be building something that&#8217;s consistently bloated/overcomplicated/etc.</li>
<li><strong>The abstract class changes the design.</strong> Huh? Sure, if I go generate a UML diagram of the system, there&#8217;s going to be this abstract class and inheritance there. This is the only place the design is different. Requests and responses are being correctly handled just like the legacy ones in the system.</li>
<li><strong>Too much refactoring is bad, and each case should be thoroughly examined before code is changed.</strong> This is how religious wars start. My lead claims that developers start out on the &#8220;no refactoring&#8221; end of the spectrum, simply because they don&#8217;t know any better. Once they learn about refactoring, they then swing to the &#8220;refactor everything&#8221; end of the spectrum where anything and everything is a potential target. Seasoned, knowledgeable developers fall somewhere in the middle. I got the impression from this speech that my lead considers me to be on the radical end of the spectrum.</li>
</ol>
<p>Why are people like my lead so scared of refactoring? The arguments given really seem more like rationalizations than actual reasons &#8211; they don&#8217;t really stand up to scrutiny. I have a hard time believing, for example, that my lead truly thinks that the system is better because each request and response is a totally separate class, albeit with most of the code copied and pasted from one to the other. If anything, he should know that this approach leads to more problems, no matter how pretty it keeps the class diagrams.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.megatome.com/2008/03/27/is-refactoring-really-that-scary/feed/</wfw:commentRss>
		<slash:comments>2</slash:comments>
		</item>
		<item>
		<title>Some Things To Remember When Running A Small Business</title>
		<link>http://www.megatome.com/2008/02/10/some-things-to-remember-when-running-a-small-business/</link>
		<comments>http://www.megatome.com/2008/02/10/some-things-to-remember-when-running-a-small-business/#comments</comments>
		<pubDate>Mon, 11 Feb 2008 04:49:13 +0000</pubDate>
		<dc:creator>iamthechad</dc:creator>
				<category><![CDATA[Development]]></category>
		<category><![CDATA[leadership]]></category>
		<category><![CDATA[Work]]></category>
		<category><![CDATA[]]></category>
		<category><![CDATA[business]]></category>
		<category><![CDATA[practices]]></category>
		<category><![CDATA[software]]></category>
		<category><![CDATA[teams]]></category>
		<category><![CDATA[tips]]></category>

		<guid isPermaLink="false">http://www.megatome.com/2008/02/10/some-things-to-remember-when-running-a-small-business/</guid>
		<description><![CDATA[Several years ago, I worked for a small software shop. The company had gone through its number of growing pains, but seemed to be well established by the time I joined. Time would prove me wrong, and also give me some things to remember if ever I start my own small business.]]></description>
			<content:encoded><![CDATA[<p>Several years ago, I worked for a small software shop. The company had gone through its number of growing pains, but seemed to be well established by the time I joined. Time would prove me wrong, and also give me some things to remember if ever I start my own small business.</p>
<ol>
<li><strong>Watch your finances.</strong> We attended a conference shortly after I joined. We stayed at expensive hotels and spent several hundreds of dollars a night on dining out an entertainment. The company covered all costs. Overspending can lead to problems&#8230; </li>
<li><strong>Be careful how you cuts costs.</strong> About six months after the conference, it was determined that the company was not making as much money as expected and that cuts would need to be made. In order to avoid laying off anybody, salaries were cut. My salary was decreased by 50%, which imposed quite a hardship. We were promised that the cuts were only temporary, and that as soon as salaries returned to normal, we would be reimbursed for all of the money we lost. Which leads to the next point&#8230; </li>
<li><strong>Don&#8217;t lie to your employees.</strong> Turns out that the whole promise of reimbursement was just a pipe dream. I wasn&#8217;t too surprised by that. What surprised me was that the pay cuts were not equal, as I was told in the initial meeting. I actually took the highest cut &#8211; other employees took a 10-15% cut. I don&#8217;t care what kind of policies you have about keeping salaries secret; people will talk. If everybody is not getting the same treatment, tell them so and why. Of course, this behavior continued right on through the end of my employment&#8230; </li>
<li><strong>If you&#8217;re laying off employees, do it right.</strong> This does not mean telling an employee that he needs to take all of his vacation time, then take unpaid leave until things &quot;turn around&quot;. This goes back to my previous point &#8211; we both knew that there will be no turning around, and that it was a ploy to keep from having to pay me for accrued vacation while screwing me out of employment benefits since I wasn&#8217;t formally laid off. Also, remember that you&#8217;re running a business&#8230; </li>
<li><strong>Don&#8217;t play favorites.</strong> Oddly enough, I was the only one on my team who got pseudo laid off. The other team members were old friends of the CEO and owners. Coincidence? I think not. My team lead had a habit of not showing up until almost noon and leaving to &quot;work from home&quot; around 2 in the afternoon. This usually meant that he checked in whatever code he had when he left, more often than not breaking the build. Whenever he worked from home, he seemed to always have problems that would prevent him from receiving IMs or email. The end result was that the entire team would be stalled until he came in the next day. He had been given many warnings, but he also played golf with the CEO quite frequently, and I think the CEO allowed his personal feelings to get in the way of business decisions.
<p>I&#8217;m not saying &quot;Oh, poor me&quot; here. I had my share of friction with my managers, so I was not surprised to get the axe. (Post coming soon on why managers don&#8217;t like me.) I was surprised that a guy who flat out refused to do work that was assigned to him would get to stay.</p>
</li>
</ol>
<p>I got fed up and told the company to suck it up and lay me off. Luckily, I found a job within a couple of weeks and didn&#8217;t need to file for unemployment. A couple of weeks after I found my new job, the entire company went belly up. Maybe with better management and practices, the company would still be around. Maybe it was doomed from the beginning. Either way, I came away with some hard earned lessons that I won&#8217;t forget any time soon. I may not ever own a company, but many of these points apply just as well to managers and team leads.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.megatome.com/2008/02/10/some-things-to-remember-when-running-a-small-business/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
	</channel>
</rss>

