<?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>Compound Thinking &#187; Lean IT</title>
	<atom:link href="http://compoundthinking.com/blog/index.php/category/lean-it/feed/" rel="self" type="application/rss+xml" />
	<link>http://compoundthinking.com/blog</link>
	<description>Thinking about programming in new ways</description>
	<lastBuildDate>Mon, 26 Jul 2010 17:28:30 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.0</generator>
		<item>
		<title>People VS Process?</title>
		<link>http://compoundthinking.com/blog/index.php/2010/06/29/people-vs-process/</link>
		<comments>http://compoundthinking.com/blog/index.php/2010/06/29/people-vs-process/#comments</comments>
		<pubDate>Tue, 29 Jun 2010 02:27:27 +0000</pubDate>
		<dc:creator>Mark Ramm</dc:creator>
				<category><![CDATA[Lean]]></category>
		<category><![CDATA[Lean IT]]></category>
		<category><![CDATA[Personal Productivity]]></category>
		<category><![CDATA[Programming]]></category>
		<category><![CDATA[SE Michigan Tech]]></category>

		<guid isPermaLink="false">http://compoundthinking.com/blog/?p=234</guid>
		<description><![CDATA[Lean Manufacturing people go around saying &#8220;it&#8217;s always a process problem.&#8221; Meanwhile Gerry Weinberg, who wrote several books that I love, and gives lots of great advice, including the some of the best advice I&#8217;ve ever read about how to give advice, says &#8220;every problem is a people problem.&#8221; So, which is it? Are bad [...]]]></description>
			<content:encoded><![CDATA[<p>Lean Manufacturing people go around saying &#8220;it&#8217;s always a process problem.&#8221;   </p>
<p>Meanwhile Gerry Weinberg, who wrote several books that I love, and gives lots of great advice, including the some of the best advice I&#8217;ve ever read about <a href="http://www.amazon.com/gp/product/0932633013?ie=UTF8&#038;tag=pragmaticsyst-20&#038;linkCode=as2&#038;camp=1789&#038;creative=390957&#038;creativeASIN=0932633013">how to give advice</a>, says &#8220;every problem is a people problem.&#8221;</p>
<p><strong>So, which is it? </strong>  </p>
<p>Are bad things that happen the result of bad processes, are they the result of things people do? </p>
<p>I&#8217;ve been party to a bit of discussion about this in the last month or two, and in the end it&#8217;s all pretty silly.  </p>
<p>Processes are created by people, implemented by people, and are designed to accomplish the goals of people.  </p>
<p><strong>People run processes!</strong> </p>
<p>So, whenever something is broken, it&#8217;s people who will need to find the problem and fix it.   </p>
<p>People can and do think of ways to improve processes everyday, but I&#8217;ll <a href="http://en.wikipedia.org/wiki/Werner_Herzog_Eats_His_Shoe">eat my shoe</a> if you find a process that thinks of a way to improve people. </p>
<p><strong>But there&#8217;s still a HUGE problem. </strong></p>
<p>Modern companies seem to have a <a href="http://bobsutton.typepad.com/my_weblog/2010/02/blame-failure-and-the-no-asshole-rule.html">persistent failing</a> &#8212; they <a href="http://uscnews.usc.edu/business/people_like_to_play_the_blame_game.html">look for people to blame</a> when something goes wrong &#8212; and <em>ignore</em> the context in which those problems happened.   </p>
<p>When something goes wrong,  fire some people, and replace them with new people who make the same mistakes all over again.   </p>
<p><strong>Sometimes you &#8220;get lucky&#8221;. </strong></p>
<p>The company might get lucky and find a person who&#8217;s able to <a href="http://www.amazon.com/gp/product/0385517254?ie=UTF8&#038;tag=pragmaticsyst-20&#038;linkCode=as2&#038;camp=1789&#038;creative=390957&#038;creativeASIN=0385517254">raise awareness,</a><img src="http://www.assoc-amazon.com/e/ir?t=pragmaticsyst-20&#038;l=as2&#038;o=1&#038;a=0385517254" width="1" height="1" border="0" alt="" style="border:none !important; margin:0px !important;" /> reveal the <a href="http://www.poppendieck.com/papers/LeanThinking.pdf">larger contextual problems</a>, and succeeded in spite of the fact that everything&#8217;s stacked against her.   </p>
<p>More often than not though, the <a href="http://bobsutton.typepad.com/.a/6a00d83451b75569e2013482507561970c-pi">poor new guy</a> doesn&#8217;t see the systematic pressures that caused everything to fall apart, at least not until it&#8217;s too late. </p>
<p><strong>Sometimes replacing what&#8217;s broken isn&#8217;t enough. </strong></p>
<p>Sometimes it&#8217;s the equivalent of a mechanic replacing your car&#8217;s engine several times in a row, because it keeps burning up &#8212; without ever checking to make sure oil is flowing normally, and the cooling system is working.</p>
<p><strong>The easy way out.</strong></p>
<p>It&#8217;s often easier to blame people because they don&#8217;t &#8220;control&#8221; them they way they do the context.  This blame game is as old as the hills, but definitely not as pretty.   </p>
<p><strong>Help people fix processes</strong></p>
<p>The solution is to <em>ask people</em> to look for the systematic pressures, give them the tools to find them, and to empower them to change the way work gets done.   </p>
<p><strong>In the end, people will improve the processes, <em>if they believe they are allowed.</em></strong> </p>
<blockquote><p>Sometimes a design isn’t working because you think you can’t change the one element that needs to be changed.</p></blockquote>
<p>  &#8211;<a href="http://37signals.com/svn/posts/2369-sometimes-a-design-isnt-working-because">Ryan</a> (via <a href="http://37signals.com/svn/">svn</a>)</p>
<p>The same thing is true when you are designing the processes by which work gets done.  </p>
]]></content:encoded>
			<wfw:commentRss>http://compoundthinking.com/blog/index.php/2010/06/29/people-vs-process/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>Premature optimization</title>
		<link>http://compoundthinking.com/blog/index.php/2009/12/17/premature-optimization/</link>
		<comments>http://compoundthinking.com/blog/index.php/2009/12/17/premature-optimization/#comments</comments>
		<pubDate>Thu, 17 Dec 2009 04:43:44 +0000</pubDate>
		<dc:creator>Mark Ramm</dc:creator>
				<category><![CDATA[Lean IT]]></category>
		<category><![CDATA[Programming]]></category>
		<category><![CDATA[Python]]></category>
		<category><![CDATA[Ruby]]></category>
		<category><![CDATA[TurboGears]]></category>
		<category><![CDATA[writing]]></category>

		<guid isPermaLink="false">http://compoundthinking.com/blog/?p=290</guid>
		<description><![CDATA[We all know it&#8217;s bad. But, programming for performance in reasonable ways is good. So, what&#8217;s the difference? Sometimes we think we know that a piece of code is important so we spend some time optimizing it. And in the end it&#8217;s less clear, and less maintainable, and it turns out that our bottlenecks are [...]]]></description>
			<content:encoded><![CDATA[<p>We all know it&#8217;s bad.  But, programming for performance in reasonable ways is good.   So, what&#8217;s the difference?  </p>
<p>Sometimes we think we know that a piece of code is important so we spend some time optimizing it.  And in the end it&#8217;s less clear, and less maintainable, and it turns out that our bottlenecks are all elsewhere. </p>
<p>But, sometimes we do know where bottlenecks are going to be, we&#8217;ve learned from experience, and we know what needs to be done.   </p>
<p>We know that architecture determines performance, and architecture isn&#8217;t easily bolted on at the end of the project.   </p>
<p>So we have a conundrum.   We shouldn&#8217;t optimize yet because we don&#8217;t know where the bottlenecks will be.   We shouldn&#8217;t wait to optimize because we can&#8217;t easily retrofit a good architecture on a complex system. </p>
<p>Some of the conundrum is only apparent &#8212; there&#8217;s a difference between architectural problems that need to be set up front, and the kind of low level micro-optimization that obscures more than it helps.    But, sometimes these conflicts are real &#8212; how do I know if I need a multi-process multi-consumer queue system for PDF generation before we build the system and benchmark it?   If you don&#8217;t need it, that kind of extra architectural complexity just obscures the bit of code that actually solves the problem.  </p>
<p><strong>Solving the problem by going meta</strong></p>
<p>Perhaps the problem really is that we&#8217;re dumb and optimize the wrong things at the wrong time.   The solution to that problem is to get less dumb.   Which means that we ought to spend time  optimizing &#8220;learning&#8221;, both within our project processes, and across projects. </p>
<p>Codifying this learning is what the <a href="http://www.amazon.com/gp/product/0321127420?tag=pragmaticsyst-20">Patterns of Enterprise Application Architecture</a> book was all about.  </p>
<p>And I think it&#8217;s great as far as it goes, and if you haven&#8217;t read it you should <a href="http://www.amazon.com/gp/product/0321127420?tag=pragmaticsyst-20">buy it now</a>. </p>
<p>But there are a lot of patterns that I can identify from my last half dozen projects that aren&#8217;t covered in PoEAA, so it would be great to see a next generation of books and blog posts that cover the modern architectural trade-offs that you have to make, something that covers some of the paterns of the web.</p>
<p>Scalability via in HTTP, etags, caching, and load balancing (the whole RESTful services argument), networked async processing patterns, etc.    Scaling to the public web levels requires a whole different set of architectural principles than scaling to the old &#8220;enterprise&#8221; levels did, and that knowledge seems very much in flux. </p>
<p>It would be great if it also provided some advice for those of us who&#8217;ve moved into what Neil Ford has called the world of the Polyglot Programmer, patterns for coordinating activities across language barriers in a sensible way.   That&#8217;s part of the nature of modern web systems too. </p>
]]></content:encoded>
			<wfw:commentRss>http://compoundthinking.com/blog/index.php/2009/12/17/premature-optimization/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Working at SourceForge</title>
		<link>http://compoundthinking.com/blog/index.php/2009/04/09/working-at-sourceforge/</link>
		<comments>http://compoundthinking.com/blog/index.php/2009/04/09/working-at-sourceforge/#comments</comments>
		<pubDate>Thu, 09 Apr 2009 14:20:53 +0000</pubDate>
		<dc:creator>Mark Ramm</dc:creator>
				<category><![CDATA[Lean IT]]></category>
		<category><![CDATA[Programming]]></category>
		<category><![CDATA[Python]]></category>
		<category><![CDATA[Ruby]]></category>
		<category><![CDATA[Ruby on Rails]]></category>
		<category><![CDATA[TurboGears]]></category>

		<guid isPermaLink="false">http://compoundthinking.com/blog/?p=621</guid>
		<description><![CDATA[I&#8217;ve been at SourceForge for a couple of months now, it&#8217;s been great, the work is surprisingly fun and rewarding. There&#8217;s a local office, and so I actually get to g and hang out with smart people whenever I want. I can still work from home, but having someplace to go in to has been [...]]]></description>
			<content:encoded><![CDATA[<p>I&#8217;ve been at SourceForge for a couple of months now, it&#8217;s been great, the work is surprisingly fun and rewarding.   There&#8217;s a local office, and so I actually get to g and hang out with smart people whenever I want.  I can still work from home, but having someplace to go in to has been a refreshing change. </p>
<p>I haven&#8217;t gotten to know many people outside the engineering team in Dexter, but they are great guys. </p>
<p>There&#8217;s lots of good stuff happening here, support for bazar, mercurial, git, trac, and other options on SourceForge itself, improved feeds, and other API&#8217;s for getting at SF data, etc.   But I&#8217;m only peripherally  aware of all that at the moment because I was hired to work on &#8220;totally new stuff&#8221; which is written in Python. </p>
<p><strong>What I&#8217;m working on</strong></p>
<p>Our first new project is a site called <a href="http://fossfor.us">FossFor.Us</a>, and it was the vision for this site, and the team that is working on this and other new stuff, that sold me on the coming to work for Sourceforge.     It&#8217;s written in Django, and it&#8217;s been my first really large Django project, and while the experience has been pretty positive, there have been a number of things that have renewed my commitment to TurboGears development &#8212; but that&#8217;s a blog post for another day.  </p>
<p>The backstory to the FossFor.Us site is that open source project hosting providers (Sourceforge and it&#8217;s recent competitors) have traditionally been pulled in two very different directions by  two very different sets of users: </p>
<ul>
<li>developers of open source software</li>
<li>and people who just want to<em use software to do stuff</em>.</em></li>
</ul>
<p>And that tension has held us back in the past, we have to serve everybody with the same portal, and it ends up not serving either community as well as it should.   But since developers are the most vocal users, it&#8217;s been the second class of user that&#8217;s been most neglected.</p>
<p><a href="http://fossfor.us"><img src="http://compoundthinking.com/blog/wp-content/uploads/2009/04/foss_blog_image.jpg" alt="foss_blog_image" title="foss_blog_image" width="400" height="229" /></a></p>
<p>These people are just looking to get things done, and don&#8217;t care about the &#8220;project&#8221; part of open source software, they are, at least at first, only interested in the &#8220;product.&#8221;   In many ways the Free and Open Source Software community has not served these people well. </p>
<p><a href="http://fossfor.us">Fossfor.us</a> is in it&#8217;s first incarnation an attempt to create a window on the free software world, that&#8217;s just about finding and using software.   But in a larger sense it&#8217;s an attempt to help us as a community to connect with potential users better. </p>
<p><strong>I think connecting FOSS geeks and users is  actually <em>important</em><br />
</strong></p>
<p>It&#8217;s important because people aren&#8217;t aware that there are free options, and are paying for software they can&#8217;t afford.   There&#8217;s a prototypical user (based on a real person) that we talk about a lot, who&#8217;s a single mom, has an old laptop, and struggles week to week to pay her bills, but who bought Photoshop, because &#8220;that&#8217;s how you edit photos.&#8221;    Her family could have used that money to more productive ends, but because she needed to edit photos, and didn&#8217;t know about the free alternatives all those opportunities are just lost.    </p>
<p>Of course the same thing is true of small business owners, who could use free software to reduce their &#8220;overhead&#8221; costs, and actually spend money on creating things people love.   Free software has the potential to lubricate the wheels of the economy, encourage entrepreneurial activity, and enrich people&#8217;s lives.    </p>
<p>All of this is to say I think <a href="http://fossfor.us">fossfor.us</a> is a way to serve the world by making the product of all the open source developer&#8217;s labor more easily available and more accessible to real people.   And when my mom actually used it to find some software a couple weeks ago, I knew we&#8217;d done something right.</p>
]]></content:encoded>
			<wfw:commentRss>http://compoundthinking.com/blog/index.php/2009/04/09/working-at-sourceforge/feed/</wfw:commentRss>
		<slash:comments>10</slash:comments>
		</item>
		<item>
		<title>What is data?</title>
		<link>http://compoundthinking.com/blog/index.php/2008/05/14/what-is-data/</link>
		<comments>http://compoundthinking.com/blog/index.php/2008/05/14/what-is-data/#comments</comments>
		<pubDate>Wed, 14 May 2008 00:35:54 +0000</pubDate>
		<dc:creator>Mark Ramm</dc:creator>
				<category><![CDATA[IT Management]]></category>
		<category><![CDATA[Lean IT]]></category>
		<category><![CDATA[Philosophy]]></category>
		<category><![CDATA[Programming]]></category>

		<guid isPermaLink="false">http://compoundthinking.com/blog/?p=292</guid>
		<description><![CDATA[Ocean asks on his blog is data an asset? Data is certainly not like many other assets, it doesn&#8217;t depreciate, you can copy it endlessly, and it&#8217;s next to impossible to imagine a commodities market for data. Heck copying the data can either increase it&#8217;s value (think &#8220;The DaVinchi Code&#8221;) or decrease it (think passwords). [...]]]></description>
			<content:encoded><![CDATA[<p>Ocean asks on his blog <a href="http://blogs.concedere.net:8080/blog/discipline/web/?permalink=Is-Data-an-Asset.html">is data an asset</a>?</p>
<p>Data is certainly not like many other assets, it doesn&#8217;t depreciate, you can copy it endlessly, and it&#8217;s next to impossible to imagine a commodities market for data.    Heck copying the data can either increase it&#8217;s value (think &#8220;The DaVinchi Code&#8221;) or decrease it (think passwords).  People don&#8217;t pay for data as much as they pay for human attention.  You can use data to get attention or you can use attention to collate, assimilate, and otherwise transform raw data into useful information, but either way data needs people to understand and interpret it to become valuable.   </p>
<p>So at best: </p>
<p><code>data + human_understanding == value </code></p>
<p>Bruce Schenier takes it one step further, calling data <a href="http://www.schneier.com/blog/archives/2006/03/the_future_of_p.html">the pollution of the the information age</a>.</p>
<p><strong>Data Pollution<br />
</strong><br />
<a href='http://compoundthinking.com/blog/index.php/2008/05/14/what-is-data/smokestack/' rel='attachment wp-att-294' title='Smokestack'><img align='right'  width= 300 src='http://compoundthinking.com/blog/wp-content/uploads/2008/03/istock_000004991624xsmall.jpg' alt='Smokestack' /></a>Data sucks up space, time and human attention.   But more than that, data can be parsed, manipulated, and transformed to fit various agendas.   And in a world where data about all of us is &#8220;owned&#8221; by various large corporations, from Amazon, to Google, to Enron, it&#8217;s not always clear how that data will be used.  Besides which millions of credit card numbers are stolen from various companies who store our data &#8220;in good faith.&#8221;   Data costs money in terms of maintenance, in terms of storage, and in terms of liability.   Heck, I know people who work for companies who have an e-mail retention policy &#8212; which is really more of a mandatory e-mail deletion policy.   </p>
<p><strong>Polluted Data<br />
</strong><br />
And that assumes that all that data is verifiable true, and that&#8217;s definitely not the case.   I sold a car once and the new owner didn&#8217;t take it to the DMV to get it registered before his friend drove it without a license and got it impounded.   And that showed up on my credit report for years.   I have a friend who somehow ended up &#8220;deceased&#8221; even though she&#8217;s still very much alive and well.</p>
<p>All of this is to say that as software developers, IT Mangers, and companies in general need to think a lot more about data, and to invest in some better terms for the various different things we call data.   </p>
<p>We need to differentiate between raw data, information,  and knowledge.   We need to help our customers think about the life cycle of the data they want us to capture.  We need to educate people about the costs and benefits associated with keeping data, and ultimately we need to follow the mantra: </p>
<p><strong>Think before you store</strong></p>
<p>And if you&#8217;re concerned about privacy, and individual liberty, please take a few min and <a href="http://www.schneier.com/blog/archives/2006/03/the_future_of_p.html">read Bruce&#8217;s article.</a> </p>
]]></content:encoded>
			<wfw:commentRss>http://compoundthinking.com/blog/index.php/2008/05/14/what-is-data/feed/</wfw:commentRss>
		<slash:comments>3</slash:comments>
		</item>
		<item>
		<title>The motivational meeting&#8230;</title>
		<link>http://compoundthinking.com/blog/index.php/2008/05/12/the-motivational-meeting/</link>
		<comments>http://compoundthinking.com/blog/index.php/2008/05/12/the-motivational-meeting/#comments</comments>
		<pubDate>Mon, 12 May 2008 23:37:14 +0000</pubDate>
		<dc:creator>Mark Ramm</dc:creator>
				<category><![CDATA[IT Management]]></category>
		<category><![CDATA[Lean IT]]></category>
		<category><![CDATA[Personal Productivity]]></category>

		<guid isPermaLink="false">http://compoundthinking.com/blog/?p=318</guid>
		<description><![CDATA[Last week, I ranted a little bit about motivational meetings. Today I&#8217;ll make the opposite case. Why have motivational meetings? The right way to use motivational meetings is to reaffirm the purposes of the group, and help people to connect the dots between their individual efforts and the collective goals of the group, and to [...]]]></description>
			<content:encoded><![CDATA[<p>Last week, I <a href="http://compoundthinking.com/blog/index.php/2008/05/05/motivate-me-when-im-dead/">ranted a little bit</a> about motivational meetings.   Today I&#8217;ll make the opposite case. </p>
<p><strong>Why have motivational meetings?</strong></p>
<p>The right way to use motivational meetings is to reaffirm the purposes of the group, and help people to connect the dots between their individual efforts and the collective goals of the group, and to connect those goals with their own individual aspirations. </p>
<p>Basically, motivating people is easy: </p>
<ul>
<li>Give them work that is meaningful to them <strong>and</strong> to the organization</li>
<li>Treat them with <strong>respect</strong></li>
</ul>
<p>Treating people with respect includes paying them a fair wage, and not doing any of <a href="http://cio.com/article/print/123406">these things.</a>  </p>
<p>Among other things it also means not letting people who aren&#8217;t contributing to the common goals of the organization hold back the group by not doing their job.</p>
<p>Research has shown that one of the survey questions most highly correlated with motivation and performance is: </p>
<blockquote><p>Does my supervisor, or someone at work, seem to care about me as a person? </p></blockquote>
<p>Which is another way of saying does your boss respect you.   At the same time the single highest correlation for any question was: </p>
<blockquote><p>I get to do what I do best everyday at work.</p></blockquote>
<p>So, it&#8217;s really important to line people&#8217;s intrisic skills and internal long-term motivational drivers with the work you ask them to do.   </p>
<p>If you&#8217;re not doing those two things, motivational meetings are a loss.   If you are doing them you can use a meeting to remind people of how their deeper motivations are connected to what they are doing now. </p>
<p><strong>P.S.</strong>   My info on the top questions and their correlation to performance comes from Gallop research via the very interesting book <a href="http://www.amazon.com/gp/product/0684852861?ie=UTF8&#038;tag=pragmaticsyst-20">First Break All the Rules</a>, which is one of the best, and most evidence based, books on managing for exceptional performance I&#8217;ve read. </p>
]]></content:encoded>
			<wfw:commentRss>http://compoundthinking.com/blog/index.php/2008/05/12/the-motivational-meeting/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>So many revolutions, so little time.</title>
		<link>http://compoundthinking.com/blog/index.php/2008/04/30/so-many-revolutions-so-little-time/</link>
		<comments>http://compoundthinking.com/blog/index.php/2008/04/30/so-many-revolutions-so-little-time/#comments</comments>
		<pubDate>Wed, 30 Apr 2008 16:28:22 +0000</pubDate>
		<dc:creator>Mark Ramm</dc:creator>
				<category><![CDATA[IT Management]]></category>
		<category><![CDATA[Lean IT]]></category>
		<category><![CDATA[Python]]></category>
		<category><![CDATA[Ruby]]></category>
		<category><![CDATA[Ruby on Rails]]></category>
		<category><![CDATA[SE Michigan Tech]]></category>
		<category><![CDATA[TurboGears]]></category>

		<guid isPermaLink="false">http://compoundthinking.com/blog/?p=305</guid>
		<description><![CDATA[Tim Bray is blogging about &#8220;inflection points&#8221; in the uptake of various technologies. Python get&#8217;s a very positive review: Today you’d be nuts not to look seriously at PHP, Python, and Ruby. So, the rise of the so-called scripting languages is one of the inflection points, but it&#8217;s not the only one. He singles out [...]]]></description>
			<content:encoded><![CDATA[<p>Tim Bray is blogging <a href="http://www.tbray.org/ongoing/When/200x/2008/04/24/Inflection">about &#8220;inflection points&#8221;</a> in the uptake of various technologies. </p>
<p>Python get&#8217;s a very positive review: </p>
<blockquote><p>Today you’d be nuts not to look seriously at PHP, Python, and Ruby.</p></blockquote>
<p>So, the rise of the so-called scripting languages is one of the inflection points, but it&#8217;s not the only one.  </p>
<p>He singles out web-framework development as one place where there&#8217;s a lot of stuff happening, and a lot of new &#8220;rails-like&#8221; frameworks are cropping up all the time.   TurboGears will live or die in the context of a much larger web-development revolution, and we need to be prepared to make our way forward in the midst of that. </p>
<p>What comes after rails will not be a rails clone.  It will learn the right lessons from rails, avoid the pitfalls of rails, but it will also need to carve out something new and better than rails.    For RDBMS users, I think the key difference between TG and Rails is the power and flexibility of SQLAlchemy.   We need to &#8220;sell&#8221; this better.</p>
<p>There are a lot of other revolutions coming <a href="http://www.tbray.org/ongoing/When/200x/2008/04/24/Inflection">according to Tim</a>.   And I do think we&#8217;re looking at big changes in terms of everything from programming language choice, to web-development tools, to end-user desktops, and data persistence mechanisms.    We&#8217;re also just beginning to see what the world of high-end javascript and other &#8220;rich&#8221; internet applications is going to do to our view of end-user software.  </p>
<p>He doesn&#8217;t even mention the rise of EC2 and the Google App Engine as sea-changes in the way we buy computational resources, and I think that&#8217;s going to have a huge impact.  </p>
<p>In the end my prediction is that the way we develop applications will change more in the next 5 years than it did in the last 5, and it&#8217;s time to start getting our heads wrapped around these issues, or we&#8217;ll be left behind. </p>
]]></content:encoded>
			<wfw:commentRss>http://compoundthinking.com/blog/index.php/2008/04/30/so-many-revolutions-so-little-time/feed/</wfw:commentRss>
		<slash:comments>4</slash:comments>
		</item>
		<item>
		<title>An Agile Paradox: People over Process (part 1)</title>
		<link>http://compoundthinking.com/blog/index.php/2007/05/29/an-agile-paradox-people-over-process-part-1/</link>
		<comments>http://compoundthinking.com/blog/index.php/2007/05/29/an-agile-paradox-people-over-process-part-1/#comments</comments>
		<pubDate>Tue, 29 May 2007 03:57:10 +0000</pubDate>
		<dc:creator>Mark Ramm</dc:creator>
				<category><![CDATA[IT Management]]></category>
		<category><![CDATA[Lean IT]]></category>
		<category><![CDATA[Programming]]></category>

		<guid isPermaLink="false">http://compoundthinking.com/blog/index.php/2007/05/29/an-agile-paradox-people-over-process-part-1/</guid>
		<description><![CDATA[The agile manifesto says we focus on &#8220;people over processes&#8221;. And I think that&#8217;s the right thing to do, people are ultimately more important than processes. But, at the same time, there&#8217;s a paradox to be thought through here, because focusing your management efforts on people can be counterproductive. If you focus on people it&#8217;s [...]]]></description>
			<content:encoded><![CDATA[<p>The <a href="http://agilemanifesto.org/">agile manifesto</a> says we focus on <strong>&#8220;people over processes&#8221;</strong>.   </p>
<p>And I think that&#8217;s the right thing to do, people are ultimately more important than processes.   But, at the same time, there&#8217;s a paradox to be thought through here, because focusing your management efforts on people can be counterproductive.  <img src='http://compoundthinking.com/blog/wp-content/uploads/2007/05/istock_000002906402xsmall.jpg' align="right" alt='flowchart' />If you focus on people it&#8217;s easy to blame them for failures, to try to change them, and to loose sight of the processes which got you the wrong people, or which made it difficult or impossible for the right people to do the right thing. </p>
<p>In fact much of the benefit of the Lean/Six Sigma camps comes from the notion that you pretty much always get better results if you always assume it&#8217;s a <strong>process problem</strong>, and try to improve the processes.   </p>
<p>The solution to the People over Process paradox is easy enough: </p>
<p>Good managers lead by creating an environment where people are empowered, in other words they lead by focusing on a different <em>kind</em> of processes.  Processes  which put people in charge, and which encourage learning and self-correction.   That might sound hard, but really it&#8217;s not as complicated as you think.  For, example Toyota has thrived by creating a &#8220;metaprocess&#8221; which gives every employee power over the day to day processes of their job.   These meta-processes which make standards of work clear, and make it the team&#8217;s responsibility to relentlessly and ceaselessly continue to improve those standards.   Employees are expected to think, and to act on a regular basis to improve the way things are done.  And they are ultimately &#8220;in control&#8221; of the processes which govern their work.  </p>
<p>If you focus on the right metaprocess, you won&#8217;t get into the kind of &#8220;process problems&#8221; that the agile manifesto was written to combat.   Processes will be owned by the people doing the work, not imposed from above, and they will be adjusted continuously to meet the daily needs of the project.   </p>
<p>Processes must serve people. But at the same time people following good processes &#8212; and even more importantly good process improvement processes &#8212; are more productive than people with no process.  So, removing process isn&#8217;t the answer to &#8220;People over process&#8221; it&#8217;s providing people with control over the processes, and with a well defined way to improve those processes. </p>
]]></content:encoded>
			<wfw:commentRss>http://compoundthinking.com/blog/index.php/2007/05/29/an-agile-paradox-people-over-process-part-1/feed/</wfw:commentRss>
		<slash:comments>2</slash:comments>
		</item>
		<item>
		<title>Bar Camp Ann Arbor?</title>
		<link>http://compoundthinking.com/blog/index.php/2007/04/10/bar-camp-ann-arbor/</link>
		<comments>http://compoundthinking.com/blog/index.php/2007/04/10/bar-camp-ann-arbor/#comments</comments>
		<pubDate>Tue, 10 Apr 2007 04:32:06 +0000</pubDate>
		<dc:creator>Mark Ramm</dc:creator>
				<category><![CDATA[Lean IT]]></category>
		<category><![CDATA[Programming]]></category>
		<category><![CDATA[SE Michigan Tech]]></category>

		<guid isPermaLink="false">http://compoundthinking.com/blog/index.php/2007/04/10/bar-camp-ann-arbor/</guid>
		<description><![CDATA[I&#8217;ve been toying with the idea of putting together a Bar Camp later this summer. I&#8217;ve got a potential venue, and some interested people. But I&#8217;m looking for some feedback, and some people who might be willing to help with some of the organizational details. If you&#8217;re interested, or want to help out, drop me [...]]]></description>
			<content:encoded><![CDATA[<p>I&#8217;ve been toying with the idea of putting together a Bar Camp later this summer.    I&#8217;ve got a potential venue, and some interested people.  But I&#8217;m looking for some feedback, and some people who might be willing to help with some of the organizational details. </p>
<p>If you&#8217;re interested, or want to help out, drop me a comment or e-mail me at mark at compound thinking.com </p>
]]></content:encoded>
			<wfw:commentRss>http://compoundthinking.com/blog/index.php/2007/04/10/bar-camp-ann-arbor/feed/</wfw:commentRss>
		<slash:comments>2</slash:comments>
		</item>
		<item>
		<title>Why MBA &#8220;Stars&#8221; Don&#8217;t Necessarily Make Good Managers</title>
		<link>http://compoundthinking.com/blog/index.php/2006/11/30/why-mba-holders-dont-necessarily-make-good-managers/</link>
		<comments>http://compoundthinking.com/blog/index.php/2006/11/30/why-mba-holders-dont-necessarily-make-good-managers/#comments</comments>
		<pubDate>Thu, 30 Nov 2006 03:46:42 +0000</pubDate>
		<dc:creator>Mark Ramm</dc:creator>
				<category><![CDATA[IT Management]]></category>
		<category><![CDATA[Lean IT]]></category>

		<guid isPermaLink="false">http://compoundthinking.com/blog/index.php/2006/11/30/why-mba-holders-dont-necessarily-make-good-managers/</guid>
		<description><![CDATA[I was reading Bob Sutton&#8217;s blog and I was reminded of another reason why top notch MBA candidates are not always the best team members let alone managers. Unfortunately, the students who get into fancy schools like MIT and Stanford and are evaluated both before and after they arrive largely on their individual performance: BUT [...]]]></description>
			<content:encoded><![CDATA[<p>I was reading <a href="http://bobsutton.typepad.com/my_weblog/2006/11/alison_wongs_am.html">Bob Sutton&#8217;s blog</a> and I was reminded of another reason why top notch MBA candidates are not always the best team members let alone managers.</p>
<blockquote><p>Unfortunately, the students who get into fancy schools like MIT and Stanford and are evaluated both before and after they arrive largely on their individual performance: BUT then life plays a cruel trick on them, forcing them to work in groups, to deal with the messiness and sometimes craziness of human groups &#8212; and their individual brilliance is no longer enough and they have all those damn people, with different needs, opinions, priorities, and skills, and different schedules too, to deal with. </p></blockquote>
<p>If you&#8217;ve been selected and groomed based on one set of standards (individual performance) it&#8217;s hard to accept that those old standards don&#8217;t work any more and your success will be based on a new standard: the ability to work with a group to create, innovate and ultimately produce results <em>as a team. </em></p>
<p>Individual performance is based on a different set of skills, talents, and motivations than group collaboration.  So even if you can make the internal switch to accept the new standards, you aren&#8217;t necessarily going to have the right kind of motivation, the right skills, or the right talents to succeed at collaborative work.</p>
<p>Management isn&#8217;t easy, it&#8217;s hard work that requires really understanding people, their individual strengths and weaknesses, and creatively organizing them to accomplish things as a group that none of them could accomplish on their own.   Unfortunately that&#8217;s just not what they teach in school, so you have to <em>learn it somewhere else</em>. </p>
]]></content:encoded>
			<wfw:commentRss>http://compoundthinking.com/blog/index.php/2006/11/30/why-mba-holders-dont-necessarily-make-good-managers/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>Code Mash</title>
		<link>http://compoundthinking.com/blog/index.php/2006/11/27/code-mash/</link>
		<comments>http://compoundthinking.com/blog/index.php/2006/11/27/code-mash/#comments</comments>
		<pubDate>Mon, 27 Nov 2006 00:10:38 +0000</pubDate>
		<dc:creator>Mark Ramm</dc:creator>
				<category><![CDATA[Lean IT]]></category>
		<category><![CDATA[Programming]]></category>
		<category><![CDATA[Python]]></category>
		<category><![CDATA[Ruby]]></category>
		<category><![CDATA[Ruby on Rails]]></category>
		<category><![CDATA[SE Michigan Tech]]></category>
		<category><![CDATA[TurboGears]]></category>

		<guid isPermaLink="false">http://compoundthinking.com/blog/index.php/2006/11/27/code-mash/</guid>
		<description><![CDATA[Some friends of mine are putting together a non-denominational developers conference called code-mash in Ohio this January. Looks like Python and Ruby are both going to have a good number of talks. I&#8217;ll be talking about SQLAlchemy, which is the best object relational mapper I&#8217;ve ever seen. There&#8217;ll be talks about Test Driven Development in [...]]]></description>
			<content:encoded><![CDATA[<p><a href="http://www.codemash.org"><img id="image174" align = "right" src="http://compoundthinking.com/blog/wp-content/uploads/2006/11/codemash_logo1.jpg" alt="CodeMashLogo" /></a>Some friends of mine are putting together a non-denominational developers conference called <a href="http://www.codemash.org/">code-mash</a> in Ohio this January.   </p>
<p>Looks like Python and Ruby are both going to have a good number of talks.   I&#8217;ll be talking about SQLAlchemy, which is the best object relational mapper I&#8217;ve ever seen.  There&#8217;ll be talks about Test Driven Development in Python, Enterprise Architectural Patterns for Python developers, along with lots of cool talks about Lean Software Development, the side benefits of Test Driven development. </p>
<p>You can still submit a talk proposal before November 30th, and you&#8217;ll get free room and board.  I think it would be great to see somebody talk about Dabo and Desktop application Development in Python, and they seem to be missing any talk about OSX/Cocoa stuff, which I&#8217;m sure is because they haven&#8217;t had any proposals yet. </p>
<p>It would also be nice to see a good cross platform development with Mono talk&#8230; </p>
<p>I&#8217;m really excited by the opportunity to get developers of all kinds together and talk about how to be productive and learn more about the strengths and weaknesses of the various tools/frameworks people are using. </p>
]]></content:encoded>
			<wfw:commentRss>http://compoundthinking.com/blog/index.php/2006/11/27/code-mash/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>What&#8217;s wrong with MBAs?</title>
		<link>http://compoundthinking.com/blog/index.php/2006/11/01/whats-wrong-with-mbas/</link>
		<comments>http://compoundthinking.com/blog/index.php/2006/11/01/whats-wrong-with-mbas/#comments</comments>
		<pubDate>Wed, 01 Nov 2006 04:31:02 +0000</pubDate>
		<dc:creator>Mark Ramm</dc:creator>
				<category><![CDATA[IT Management]]></category>
		<category><![CDATA[Lean IT]]></category>
		<category><![CDATA[Misc]]></category>

		<guid isPermaLink="false">http://compoundthinking.com/blog/index.php/2006/11/01/whats-wrong-with-mbas/</guid>
		<description><![CDATA[I know it&#8217;s popular for programmers to bash Managers, and MBAs. And I don&#8217;t want to jump on the bandwagon &#8211;especially since I&#8217;m also a manager. But I know that the image of the pointy haired boss is pretty thoroughly ingrained in our culture, and popular mythology exists to explain a shared experience. Clearly there [...]]]></description>
			<content:encoded><![CDATA[<p>I know it&#8217;s popular for programmers to bash Managers, and MBAs.   And I don&#8217;t want to jump on the bandwagon &#8211;especially since I&#8217;m also a manager.  </p>
<p>But I know that the image of the pointy haired boss is pretty thoroughly ingrained in our culture, and popular mythology exists to explain a shared experience.</p>
<p>Clearly there are a lot of bad managers with MBA&#8217;s from prestigious institutions out there.  </p>
<p>Henry Mintzberg does more to explain how this happened &#8212;  and what we might be able to do about it &#8212;  than anybody else I&#8217;ve read recently.</p>
<p><a title="View product details at Amazon" href="http://www.amazon.com/gp/redirect.html%3FASIN=1576753514%26tag=pragmaticsyst-20%26lcode=xm2%26cID=2025%26ccmID=165953%26location=/o/ASIN/1576753514%253FSubscriptionId=0EMV44A9A5YT1RVDGZ82"><img align="left" title="Managers Not MBAs: A Hard Look at the Soft Practice of Managing and Management Development" alt="Managers Not MBAs: A Hard Look at the Soft Practice of Managing and Management Development" src="http://images.amazon.com/images/P/1576753514.01._SCMZZZZZZZ_V1120097397_.jpg" /></a>The central argument of Managers not MBAs is that <em>Management</em> as taught by MBA programs is a failure, because they:</p>
<ul>
<li>choose the <em>wrong people</em>,</li>
<li> educate them in the <em>wrong way</em></li>
<li>and produce the <em>wrong results.</em></li>
</ul>
<p>In other words, the selection process <em>and educational format </em>of most MBA programs actively undermines the practice of good management.   MBA&#8217;s are a self-selected group of people who &#8220;want to get ahead in business,&#8221; and the entire program teaches them to compete rather than cooperate.</p>
<p>The result is that graduates of MBA programs have a pretty dismal record at actually starting, expanding, or maintaining stable, productive, businesses.</p>
<p>Mintzberg doesn&#8217;t blame MBA holders &#8212; they were taught strategy, and accounting, and analysis, but never management. </p>
<p>In particular, MBA programs never taught them the meaning of good management, or the skills they would need to actually grow and manage teams of real people.  They aren&#8217;t even pointed in the right direction, the structure of MBA programs reward the kind of people who like to compete. And years of &#8220;case study&#8221; exercises have made them into the kind of people who make snap decisions based on limited data.</p>
<p><strong>MBA graduates generally aren&#8217;t the kind of people dedicated to </strong><strong><em>helping other people </em>achieve greatness.</strong></p>
<p>Instead, they want to achieve greatness on their own &#8212; which can be a worthy goal.  It&#8217;s just a terrible goal for a manager.   Good managers are relentlessly focused on <em>helping the people they work for</em> perform at their best.</p>
<p>I don&#8217;t believe an MBA degree is just a liability.  </p>
<p>The MBA&#8217;s I know have learned useful terminology, analytical skills, and the training they recieved in in economics, accounting, and business law can be a huge help in the right moment.</p>
<p>An MBA can prove to be an net asset to a manager, but only if you unlearn some skills they teach you (snap judgments, and me-first competitiveness) and make it a point to learn the &#8220;soft&#8221; skills that are infinitely more important.</p>
<p>The second half of Mintzberg&#8217;s book is his proposal for creating better educational institutions, which can identify the right candidates, train them with the right skills in the right way, and ultimately produce much better results than current MBA programs.   The broad outline of that plan seems right.  But most managers need something they can use to get better at their jobs right now, without spending a lot of money.</p>
<ul>
<li><strong>Never stop learning from the people on your team  </strong>&#8211; they are on the front lines learning every day, if you&#8217;re not working to learn from them, your loosing potentially critical information.</li>
<li><strong>Always believe that there is more to their job than making money</strong>.  Greatness comes from productive passion, and greed doesn&#8217;t inspire passion or loyalty.</li>
<li><strong>Elevate the people who actually produce value</strong> &#8212; These people actually do the work, and they know infinitely more about the nature of that work than MBA trained managers, so they should be respected, valued, and included (or put in charge) of improvement processes.</li>
</ul>
<p>Good managers care about people, not head-count, and they strive to make their job a meaningful contribution to a shared vision.</p>
<p>Hopefully I&#8217;ll have time to write more about <em>good management</em> tomorrow.</p>
]]></content:encoded>
			<wfw:commentRss>http://compoundthinking.com/blog/index.php/2006/11/01/whats-wrong-with-mbas/feed/</wfw:commentRss>
		<slash:comments>4</slash:comments>
		</item>
		<item>
		<title>So what is vision?</title>
		<link>http://compoundthinking.com/blog/index.php/2006/10/25/so-what-is-vision/</link>
		<comments>http://compoundthinking.com/blog/index.php/2006/10/25/so-what-is-vision/#comments</comments>
		<pubDate>Wed, 25 Oct 2006 14:27:59 +0000</pubDate>
		<dc:creator>Mark Ramm</dc:creator>
				<category><![CDATA[IT Management]]></category>
		<category><![CDATA[Lean IT]]></category>
		<category><![CDATA[Programming]]></category>

		<guid isPermaLink="false">http://compoundthinking.com/blog/index.php/2006/10/25/so-what-is-vision/</guid>
		<description><![CDATA[It&#8217;s a shared look at the future, and it is a future filled with hope and promise. If your future looks bright, make sure your team knows about it. Tell the story of how you achieved all this, thank the people who helped you get there. If on the other hand your company&#8217;s immediate future [...]]]></description>
			<content:encoded><![CDATA[<p>It&#8217;s a shared look at the future, and it is a future filled with hope and promise.</p>
<p>If your future looks bright, make sure your team knows about it. Tell the story of how you achieved all this, thank the people who helped you get there.</p>
<p>If on the other hand your company&#8217;s immediate future is bleak you can still encourage vision, but you have to creatively and courageously tell stories. I&#8217;ve been through this kind of thing at work, and we did come out stronger.</p>
<p>Unfortunately I can&#8217;t tell that story.Â  Fortunately I thought of an even better story to articulate this idea of vision.</p>
<p>In a country where segregation was the law of the land, and racial hate was rampant Martin Luther King Jr, continued to tell the story of a future where people would no longer be judged by the color of their skin.Â  He continued to tell these stories in the face of economic hardship, and in under the the constant threat of assassination, and with the memory of attacks on his family still burned deeply into his memory.Â  It is context thatÂ  Martin Luther King Jr. made one of his most powerful speeches to his battle weary friends and followers:</p>
<blockquote><p>Well, I don&#8217;t know what will happen now. We&#8217;ve got some difficult days ahead.</p>
<p>But it doesn&#8217;t matter with me now. Because I&#8217;ve been to the mountaintop&#8230;</p>
<p>Like anybody, I would like to live a long life. Longevity has its place. But I&#8217;m not concerned about that now. I just want to do God&#8217;s will. And He&#8217;s allowed me to go up to the mountain. And I&#8217;ve looked over. And I&#8217;ve seen the promised land. I may not get there with you. But I want you to know tonight, that we, as a people, will get to the promised land.</p></blockquote>
<p>If you are faced with a Death March style project, the only thing you can do is to hold out a vision for a better future and do everything in your power to make that happen. You can&#8217;t ignore the present, you can&#8217;t ignore the grueling overtime, the unrealistic deadlines, or the managerial mistakes that got you here &#8212; if you do nobody will listen to you, nobody will respect what you have to say.Â  Instead, you have to demonstrate that you have or can come up with a plan to get out of the desert into the promised land.Â Â  Compelling vision begins with the hard truth of today, but holds up an achievable hope for tomorrow.</p>
]]></content:encoded>
			<wfw:commentRss>http://compoundthinking.com/blog/index.php/2006/10/25/so-what-is-vision/feed/</wfw:commentRss>
		<slash:comments>11</slash:comments>
		</item>
		<item>
		<title>Automation: Doing the wrong thing &#8212; faster!</title>
		<link>http://compoundthinking.com/blog/index.php/2006/10/23/automation-doing-the-wrong-thing-faster/</link>
		<comments>http://compoundthinking.com/blog/index.php/2006/10/23/automation-doing-the-wrong-thing-faster/#comments</comments>
		<pubDate>Mon, 23 Oct 2006 11:45:27 +0000</pubDate>
		<dc:creator>Mark Ramm</dc:creator>
				<category><![CDATA[IT Management]]></category>
		<category><![CDATA[Lean IT]]></category>

		<guid isPermaLink="false">http://compoundthinking.com/blog/index.php/2006/10/23/automation-doing-the-wrong-thing-faster/</guid>
		<description><![CDATA[Automation is like optimization, so I would like to invent a corollary to the Horre&#8217;s famous Maxim: Premature automation is also the root of even more evil If you spend time and money to optimize the performance of a particular piece of code, it will often become more complex, more difficult to understand, and more [...]]]></description>
			<content:encoded><![CDATA[<p>Automation is like optimization, so I would like to invent a corollary to the Horre&#8217;s famous Maxim:</p>
<blockquote><p>Premature automation is also the root of <em>even more</em> evil</p></blockquote>
<p>If you spend time and money to optimize the performance of a particular piece of code, it will often become more complex, more difficult to understand, and more costly to change in the future.</p>
<p>The same thing happens when you automate a sales process, or the way you route phone calls.  The process becomes less adaptable to change, sub-processes are invented to route around difficulties with the main automated process, and can get crazy.<br />
Sure, you can get things done more quickly.   But if you&#8217;re customers are routed incorrectly, they don&#8217;t care how quickly they get to talk to the wrong person!</p>
<p>And the danger is not just that you&#8217;ll get it wrong in the first place, but that you won&#8217;t be able to adapt to changes in the environment around you because adaptation would mean throwing out all the work that went into optimizing that process.</p>
<p><strong>Some of this problem is economic.</strong></p>
<p>The cost of automating a process must be repaid quickly for the automation work to be valuable.   The exact ROI time is function of how much change happens in that area of your business.</p>
<p><strong>But some of it is psycho-social.</strong></p>
<p>Even if a particular automation project has already paid for itself, the fact that it exists makes the whole organization more likely to resist change, because you don&#8217;t want to &#8216;throw away&#8217; all the hard work that went into automating the old process.</p>
<p>Not only that, if it&#8217;s not handled well by management, seeing a project you worked on for months last year being &#8220;thrown away&#8221; can be seriously demotivating to the automator.</p>
<p><strong>Premature automation is the root of all kinds of evil.</strong></p>
]]></content:encoded>
			<wfw:commentRss>http://compoundthinking.com/blog/index.php/2006/10/23/automation-doing-the-wrong-thing-faster/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>A New Chapter</title>
		<link>http://compoundthinking.com/blog/index.php/2006/10/16/a-new-chapter/</link>
		<comments>http://compoundthinking.com/blog/index.php/2006/10/16/a-new-chapter/#comments</comments>
		<pubDate>Mon, 16 Oct 2006 13:05:33 +0000</pubDate>
		<dc:creator>Mark Ramm</dc:creator>
				<category><![CDATA[Lean IT]]></category>
		<category><![CDATA[Python]]></category>
		<category><![CDATA[SE Michigan Tech]]></category>
		<category><![CDATA[TurboGears]]></category>

		<guid isPermaLink="false">http://compoundthinking.com/blog/index.php/2006/10/16/a-new-chapter/</guid>
		<description><![CDATA[I&#8217;ve decided that it&#8217;s time to change jobs. I just finished the TurboGears Book, and several Python related articles, and all of that reminded me how much I love Python, Agile Development, and teaching people. Unfortunately, I don&#8217;t get to do any of those things enough in my current job. Don&#8217;t get me wrong Humantech [...]]]></description>
			<content:encoded><![CDATA[<div style="text-align: center"><img alt="New Chapter" id="image149" src="http://compoundthinking.com/blog/wp-content/uploads/2006/10/chapterSmall.jpg" /></div>
<p>I&#8217;ve decided that it&#8217;s time to change jobs.  I just finished the <a href="http://www.amazon.com/gp/redirect.html%3FASIN=0132433885%26tag=pragmaticsyst-20%26lcode=xm2%26cID=2025%26ccmID=165953%26location=/o/ASIN/0132433885%253FSubscriptionId=0EMV44A9A5YT1RVDGZ82">TurboGears Book,</a> and several Python related articles, and all of that reminded me how much I love Python, Agile Development, and teaching people.</p>
<p>Unfortunately, I don&#8217;t get to do any of those things enough in my current job.</p>
<p>Don&#8217;t get me wrong <a href="http://compoundthinking.com/blog/www.humantech.com">Humantech </a>is a great company, that helps prevent a lot of unnecessary pain and injury,  and I get to work with some fantastic people.  So, it pains me to leave, but I don&#8217;t get to focus on doing what I do best.   Instead I am pulled in a million different directions, and I find I spend more time than I&#8217;d like on things like monitoring people&#8217;s cell phone bills.</p>
<p>My main goal in making this change is to find something that lets me enhance my software development skills, or turns me loose in the coaching/training/advocacy side of things &#8212; preferably something that lets me do both.</p>
<p>In particular, I&#8217;d love to work on an XP team that&#8217;s actually walking the walk, and not just talking about how cool Agile is.   I&#8217;ve been a fan of the ideas behind the whole Agile movement, and I&#8217;ve implemented some at Humantech, but it would be great to work with people who&#8217;ve been there, done that.</p>
<p>I also love talking to developers (and managers) about stuff that could improve their lives.  I love training, and I think one-on-one coaching is an amazing opportunity, and would be thrilled to have a chance to do more of that as part of my regular job.</p>
<p>I&#8217;m looking for something in the Michigan area (preferably Ann Arbor) but I&#8217;d definitely telecommute, and travel for the right job.</p>
<p>If you, or somebody you know is looking to hire someone, let me know (Mark.Ramm at gmail dot com), and I&#8217;d be more than happy to talk to you.</p>
]]></content:encoded>
			<wfw:commentRss>http://compoundthinking.com/blog/index.php/2006/10/16/a-new-chapter/feed/</wfw:commentRss>
		<slash:comments>3</slash:comments>
		</item>
		<item>
		<title>TurboGears in Linux Magazine</title>
		<link>http://compoundthinking.com/blog/index.php/2006/09/22/turbogears-in-linux-magazine/</link>
		<comments>http://compoundthinking.com/blog/index.php/2006/09/22/turbogears-in-linux-magazine/#comments</comments>
		<pubDate>Fri, 22 Sep 2006 03:34:11 +0000</pubDate>
		<dc:creator>Mark Ramm</dc:creator>
				<category><![CDATA[IT Management]]></category>
		<category><![CDATA[Lean IT]]></category>
		<category><![CDATA[Python]]></category>
		<category><![CDATA[TurboGears]]></category>

		<guid isPermaLink="false">http://compoundthinking.com/blog/index.php/2006/09/22/turbogears-in-linux-magazine/</guid>
		<description><![CDATA[I&#8217;ve worked with Linux Magazine in the past, and it&#8217;s always a pleasure. But this time it&#8217;s been great, because I got to talk about all the cool stuff in TurboGears 1.0 beta. It&#8217;s only a few pages, so I couldn&#8217;t cover everything that I&#8217;d like to, but it should give people an idea of [...]]]></description>
			<content:encoded><![CDATA[<p>I&#8217;ve worked with <a href="http://linuxmagazine.com/">Linux Magazine</a> in the past, and it&#8217;s always a pleasure.  But this time it&#8217;s been great, because I got to talk about all the cool stuff in TurboGears 1.0 beta.  It&#8217;s only a few pages, so I couldn&#8217;t cover everything that I&#8217;d like to, but it should give people an idea of what they can do with TurboGears, and hopefully introduce a few new people to the project.</p>
<p>In the article I talk a bit about a project I&#8217;ve been thinking about for several weeks, which uses TurboGears to create a ticket tracker based on my ideas of how to use David Allen&#8217;s Getting Things Done system in a group setting.</p>
<p><img align="left" alt="Project-Page-01.jpg" id="image137" title="Project-Page-01.jpg" src="http://compoundthinking.com/blog/wp-content/uploads/2006/09/Project-Page-01.jpg" />It&#8217;s called <a href="http://code.google.com/p/actionflow/">Action Flow,</a> and the idea behind it is to make it easy to capture all of the next actions for all of your projects in a simple system outside of your head.  The difference between this and other similar systems is that it is designed to track actions and projects for individuals and groups in the same free-flowing self-organizing way that Agile Software projects are run.</p>
<p>I personally want to use it to run an IT department, and track all the various tasks and projects we have going.   It&#8217;s not there yet, but as I finish up the final edits on the book I should have more time to work on this project.</p>
<p>I&#8217;m also hoping that it will be a good place for new folks to Open Source and TurboGears to get involved on the ground floor of a project that&#8217;s very welcoming to anybody interested, even if you don&#8217;t have experience.  Learning experiences are generally effective to the extent that they require active participation from everybody involved, so I think this will a great way to learn more about web development and TurboGears.</p>
<p>So, if you&#8217;re new to TurboGears, new to Python, or just want to help, feel free to join the <a href="http://groups.google.com/group/actionflow">mailing list</a> and introduce yourself.   We&#8217;ll be nice, and help you get involved and get learning TurboGears the fastest way possible, by working with other people on a real project!</p>
]]></content:encoded>
			<wfw:commentRss>http://compoundthinking.com/blog/index.php/2006/09/22/turbogears-in-linux-magazine/feed/</wfw:commentRss>
		<slash:comments>5</slash:comments>
		</item>
	</channel>
</rss>
