<?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>Funmurphys: the Blog</title>
	<atom:link href="http://www.funmurphys.com/blog/?feed=rss2" rel="self" type="application/rss+xml" />
	<link>http://www.funmurphys.com/blog</link>
	<description>The Triumph of Hope over Experience</description>
	<lastBuildDate>Tue, 31 Aug 2010 18:47:51 +0000</lastBuildDate>
	<generator>http://wordpress.org/?v=2.9.2</generator>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
			<item>
		<title>Crossing the Red Sea with Moses and Open Access</title>
		<link>http://www.funmurphys.com/blog/?p=949</link>
		<comments>http://www.funmurphys.com/blog/?p=949#comments</comments>
		<pubDate>Tue, 31 Aug 2010 18:47:51 +0000</pubDate>
		<dc:creator>Carl Drews</dc:creator>
				<category><![CDATA[Carl]]></category>
		<category><![CDATA[Faith]]></category>
		<category><![CDATA[History]]></category>
		<category><![CDATA[Science]]></category>
		<category><![CDATA[Exodus]]></category>
		<category><![CDATA[Moses]]></category>
		<category><![CDATA[Red Sea]]></category>
		<category><![CDATA[storm surge]]></category>
		<category><![CDATA[wind setdown]]></category>
		<category><![CDATA[yam suf]]></category>

		<guid isPermaLink="false">http://www.funmurphys.com/blog/?p=949</guid>
		<description><![CDATA[Recently published scientific article analyzes the biblical parting of the Red Sea, as described in Exodus 14.]]></description>
			<content:encoded><![CDATA[<p>Yesterday the scientific journal <a href="http://www.plosone.org/">PLoS ONE</a> published my article &#8220;Dynamics of Wind Setdown at Suez and the Eastern Nile Delta&#8221;. This publication represents a portion of my <a href="http://gradworks.umi.com/14/68/1468999.html">Master&#8217;s</a> <a href="http://libraries.colorado.edu/record=b6033088~S9">thesis</a>, which was <a href="http://www.funmurphys.com/blog/?p=475">announced here</a> last year. We now present this research in a peer-reviewed journal. Here is the paper&#8217;s Abstract:</p>
<blockquote><p>
Wind setdown is the drop in water level caused by wind stress acting on the surface of a body of water for an extended period of time. As the wind blows, water recedes from the upwind shore and exposes terrain that was formerly underwater. Previous researchers have suggested wind setdown as a possible hydrodynamic explanation for Moses crossing the Red Sea, as described in Exodus 14.
</p></blockquote>
<p>Since the paper is about dynamics instead of biblical history, the contents focus on fluid mechanics instead of on Moses and the Hebrew refugees. But for those readers who are interested in <a href="http://www.touregypt.net/featurestories/egyptexodus.htm">the Exodus</a>, Point B in Figure 8 is Pi-hahiroth. The famous crossing is from Point B across to Tell Kedua. My Tanis hypothesis suggests <strong>where</strong> and <strong>how</strong> Moses crossed the <em>yam suf</em>. <strong>When</strong> remains a thorny issue. As with any new hypothesis, scholars from many disciplines will have to consider the proposal from all angles (history, linguistics, military science, archaeology, meteorology, refugee movement, sociology, oceanography, etc.).</p>
<h4>What Open Access means for me</h4>
<p>PLoS ONE is an <a href="http://en.wikipedia.org/wiki/Open_access_journal">Open Access</a> journal, meaning in a general sense that access to the publications is not restricted. You don&#8217;t have to pay a download fee or a subscription fee to download and read the articles. It&#8217;s free Free <strong>FREE!</strong> For what Open Access means for the world of science at large, Google for the term and do some reading. Go ahead and peruse some of the debates. I&#8217;ll describe here what it means for me.</p>
<p>It means that my co-author and I paid a publication fee to cover the cost of reviewing and preparing the document for on-line publication. Some journals (Open Access or not) are free to publish in, and others require certain page charges. PLoS ONE follows the &#8220;author pays&#8221; model.</p>
<p>The &#8220;Dynamics of Wind Setdown&#8221; <a href="http://dx.plos.org/10.1371/journal.pone.0012481">article</a> is of general interest. I want oceanographers to read it, I want journalists to read it, I want high school students to read it. I want teachers, gardeners, Norwegians, mechanics, historians, kids, pastors, marketing directors, software engineers, physicists, Australians, poor people, airline pilots, retired people, shepherds, and checkout clerks to read it. I want <strong>you</strong> to read about the parting of the Red Sea. Skip right to Figure 8 if you want! I don&#8217;t want any barriers to readership. I want the paper&#8217;s exposure to be as wide as possible. And I can achieve that goal by opening up access.</p>
<p>Peer-reviewed articles are read by scholars, who cite previous research when they publish a subsequent study. The <strong>citation count</strong> is a measure of the <strong>impact</strong> of a paper &#8211; the importance that a paper has on its field. Open Access papers are supposed to have higher citation counts, so this publishing model will presumably be better for my career.</p>
<h4>What Open Access means for you</h4>
<p>Open Access means that you can make use of the material that we published. The content at PLoS ONE is licensed under a <a href="http://creativecommons.org/licenses/by/2.5/">Creative Commons Attribution License</a>. This means that you can use the article in ways described by the license, so long as you properly cite the authors and the journal. The idea behind the CCA license is that scholars&#8217; work should be used and extended, with due credit given to the original publication. You don&#8217;t have to get our written permission. Please refer to the <a href="http://creativecommons.org/">Creative Commons  web site</a> for further information.</p>
<p>Open Access means that you <strong>don&#8217;t</strong> have to pay $30 or even $15 to <a href="http://www.plosone.org/article/info%3Adoi%2F10.1371%2Fjournal.pone.0012481">download the paper</a> and read it. Your institution or library doesn&#8217;t have to pay thousands of dollar$ in subscription fees to <a href="http://dx.plos.org/10.1371/journal.pone.0012481">get the document</a>. You just have to <a href="http://www.plosone.org/article/info%3Adoi%2F10.1371%2Fjournal.pone.0012481">click</a>. That&#8217;s right, you simply have to <a href="http://dx.plos.org/10.1371/journal.pone.0012481">click on this link</a>. What are you waiting for? <a href="http://www.plosone.org/article/info%3Adoi%2F10.1371%2Fjournal.pone.0012481">Click!</a> <a href="http://dx.plos.org/10.1371/journal.pone.0012481">Download<a> <a href="http://www.plosone.org/article/info%3Adoi%2F10.1371%2Fjournal.pone.0012481">and</a> <a href="http://dx.plos.org/10.1371/journal.pone.0012481">read</a> <a href="http://www.plosone.org/article/info%3Adoi%2F10.1371%2Fjournal.pone.0012481">it</a> <strong>now!</strong></p>
]]></content:encoded>
			<wfw:commentRss>http://www.funmurphys.com/blog/?feed=rss2&amp;p=949</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Starting My Weight Loss Regimen (Again)</title>
		<link>http://www.funmurphys.com/blog/?p=900</link>
		<comments>http://www.funmurphys.com/blog/?p=900#comments</comments>
		<pubDate>Tue, 22 Jun 2010 08:24:48 +0000</pubDate>
		<dc:creator>Sean Murphy</dc:creator>
				<category><![CDATA[Uncategorized]]></category>

		<guid isPermaLink="false">http://www.funmurphys.com/blog/?p=900</guid>
		<description><![CDATA[I have gone back on a low carb diet which I have found to be an effective way for me to lose weight (although I have to be careful, sometimes I think I have lost some weight and I turn around quickly to find it following along behind me).
I read Gary Taubes &#8220;What It It&#8217;s [...]]]></description>
			<content:encoded><![CDATA[<p>I have gone back on a low carb diet which I have found to be an effective way for me to lose weight (although I have to be careful, sometimes I think I have lost some weight and I turn around quickly to find it following along behind me).</p>
<p>I read Gary Taubes &#8220;<a href="http://www.nytimes.com/2002/07/07/magazine/what-if-it-s-all-been-a-big-fat-lie.html">What It It&#8217;s all Been a Big Fat Lie</a>&#8221; in the New York Times in 2002 and it completely changed my perspective on dieting.  He came out with &#8220;<a href="http://www.amazon.com/gp/product/1400033462">Good Calories, Bad Calories</a>&#8221; in 2008, and I recently re-read it to help me recommit to a low carb regimen. On page 454 he offers what he calls his &#8220;inescapable conclusions&#8221; based on fifteen years of research:</p>
<blockquote>
<ol>
<li>Dietary fat, whether saturated or not, is not a cause of obesity,  heart disease or any other chronic disease of civilization.</li>
<li>The problem is the carbohydrates in the diet, their effect on  insulin secretion, and thus the hormonal regulation of homeostasis—the  entire harmonic ensemble of the human body. The more easily digestible  and refined the carbohydrates, the greater the effect on your health,  weight and well-being.</li>
<li>Sugars—sucrose and high-fructose corn syrup specifically—are  particularly harmful, probably because the combination of fructose and  glucose simultaneously elevates insulin levels while overloading the  liver with carbohydrates.</li>
<li>Through their direct effect on insulin and blood sugar, refined  carbohydrates, starches and sugars are the dietary cause of coronary  heart disease and diabetes. They are most likely dietary causes of  cancer, Alzheimer’s disease, and the other chronic diseases of  civilization.</li>
<li>Obesity is a disorder of excess fat accumulation, not overeating,  and not sedentary behavior.</li>
<li>Consuming excess calories does not <em>cause</em> us to grow fatter,  any more than it causes a child to grow taller. Expending more energy  than we consume does not lead to long-term weight loss; it leads to  hunger.</li>
<li>Fattening and obesity are caused by an imbalance—a disequilibrium—in  the hormonal regulation of adipose tissue and fat metabolism. Fat  synthesis and storage exceed the mobilization of fat from the adipose  tissue and its subsequent oxidation. We become leaner when the hormonal  regulation of fat tissue reverses this balance.</li>
<li>Insulin is the primary regulator of fat storage. When insulin levels  are elevated—either chronically or after a meal—we accumulate fat in  our fat tissue. When insulin levels fall, we release fat from our fat  tissue and use it for fuel.</li>
<li>By stimulating insulin secretion, carbohydrates make us fat and  ultimately cause obesity. The fewer carbohydrates we consume, the leaner  we will be.</li>
<li>By driving fat accumulation, carbohydrates also increase hunger and  decrease the amount of energy we expend in metabolism and physical  activity.</li>
</ol>
</blockquote>
]]></content:encoded>
			<wfw:commentRss>http://www.funmurphys.com/blog/?feed=rss2&amp;p=900</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Practical Advice From Keith Hennessy</title>
		<link>http://www.funmurphys.com/blog/?p=897</link>
		<comments>http://www.funmurphys.com/blog/?p=897#comments</comments>
		<pubDate>Thu, 17 Jun 2010 23:56:27 +0000</pubDate>
		<dc:creator>Sean Murphy</dc:creator>
				<category><![CDATA[Uncategorized]]></category>

		<guid isPermaLink="false">http://www.funmurphys.com/blog/?p=897</guid>
		<description><![CDATA[Keith Hennessy had a great blog post on &#8220;Oil Spill Crisis as Opportunity&#8221; where he makes the following suggestion for new legislation:
Imagine that the President proposes new  legislation targeted at the problem of engineering safety in deepwater  drilling.  Imagine his legislation contains five provisions:

Require that all deepwater wells have a relief well in [...]]]></description>
			<content:encoded><![CDATA[<p>Keith Hennessy had a great blog post on &#8220;<a href="http://keithhennessey.com/2010/06/16/war-on-fossil-fuels/">Oil Spill Crisis as Opportunity</a>&#8221; where he makes the following suggestion for new legislation:</p>
<blockquote><p>Imagine that the President proposes new  legislation targeted at the problem of engineering safety in deepwater  drilling.  Imagine his legislation contains five provisions:</p>
<ol>
<li>Require that all deepwater wells have a relief well in place before  production begins.</li>
<li>Mandate requirements for double piping and a list of other industry  engineering best practices.  The prior best practice for engineering  safety becomes the legally mandated minimum.</li>
<li>Mandate that each deepwater drilling operation be insured for at  least $20 B of environmental damage before production can begin.   Insurers will therefore require further engineering stringency to  protect themselves.</li>
<li>Raise the legal liability cap for any drilling platform to $50 B,  just to be safe.</li>
<li>All new wells must meet all of the above requirements, and all  existing wells must cease production until they meet them.  (The details  here might need some work.)</li>
</ol>
</blockquote>
<p>He makes this suggestion after offering the following analysis of current energy consumption usage patterns and the limits of battery technology:</p>
<blockquote><p>If you are focused on carbon emissions, then oil, coal, and natural  gas naturally group together as “fossil fuels” and are the combined  source of the problem.  If you are focused on energy, then oil is one  issue (transportation), and coal and natural gas are another (electric  power).</p>
<p>We use almost no oil to produce power in the U.S., and electricity  powers only a tiny fraction of our transportation, despite recent  increases in hybrid and natural gas vehicles.  Yes, they’re growing at a  rapid rate.  But the overlap between oil as one type of energy source  vs. coal and natural gas as another is vanishingly small.</p>
<p>Someday when battery technologies improve, the fuel and power worlds  will blend in the U.S., and there will be strong and direct economic  relationships between the production of electric power and the use of  oil.  Until that day, from an  energy perspective, “fossil fuels” conflates oil with coal and  natural gas in a way that is at best confusing and at worst misleading.   Substituting biofuels for oil or making vehicles more fuel efficient  has almost no effect on the amount of coal or natural gas we use.   “Produc[ing] wind turbines,” “installing energy-efficient windows, and  small businesses making solar panels” are quantitatively irrelevant to  our use and production of oil.  All the windmills and solar panels you  could imagine will not reduce our dependence on oil as a transportation  fuel.</p></blockquote>
<p>He has a great chart and more details, go read the whole post.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.funmurphys.com/blog/?feed=rss2&amp;p=897</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Colorado Joins the Pac-10</title>
		<link>http://www.funmurphys.com/blog/?p=890</link>
		<comments>http://www.funmurphys.com/blog/?p=890#comments</comments>
		<pubDate>Tue, 15 Jun 2010 19:29:33 +0000</pubDate>
		<dc:creator>Carl Drews</dc:creator>
				<category><![CDATA[Carl]]></category>
		<category><![CDATA[Current Events]]></category>
		<category><![CDATA[Fun]]></category>
		<category><![CDATA[Sports]]></category>
		<category><![CDATA[Vacation]]></category>
		<category><![CDATA[Boulder]]></category>
		<category><![CDATA[college]]></category>
		<category><![CDATA[Colorado Photos]]></category>
		<category><![CDATA[football]]></category>
		<category><![CDATA[Pac-10]]></category>
		<category><![CDATA[Stanford University]]></category>
		<category><![CDATA[University of Colorado]]></category>

		<guid isPermaLink="false">http://www.funmurphys.com/blog/?p=890</guid>
		<description><![CDATA[In sports news, we learn that the University of Colorado at Boulder has joined the Pacific-10 Conference. I have a Bachelor of Science degree in Electrical Engineering from Stanford University, and a Master of Science degree in Atmospheric and Oceanic Sciences from the University of Colorado. This means that my two alma maters will now [...]]]></description>
			<content:encoded><![CDATA[<p>In sports news, we learn that the <a href="http://www.colorado.edu/">University of Colorado at Boulder</a> has <a href="http://www.dailycamera.com/ci_15268160">joined</a> the <a href="http://www.pac-10.org/">Pacific-10 Conference</a>. I have a Bachelor of Science degree in Electrical Engineering from <a href="http://www.stanford.edu/">Stanford University</a>, and a <a href="http://gradworks.umi.com/14/68/1468999.html">Master of Science</a> degree in Atmospheric and Oceanic Sciences from the University of Colorado. This means that my two <i>alma maters</i> will now be playing each other on a regular basis. Yay! This is cool!</p>
<p>This is a good move for Colorado. The Pac-10 is a great conference! In college football, the Pac-10 has a lot of great west coast teams, with exciting offenses and tough defensive squads. UC-Berkeley was always a great game, UCLA is tough to get by, Washington usually has lots of talent, and the Arizona fans in Sun Devil Stadium made for a deafening contest whenever Stanford played there. USC was always tough (sometime <strong>too</strong> tough), but Stanford football has earned some wins and ties against Southern California. The other athletic programs provide worthy competition, too &#8211; baseball, basketball, water polo, tennis, and so on. It will also be good for CU to join the stellar academics of the Pac-10 schools (Stanford, Berkeley, University of Washington, UCLA, etc.).</p>
<p>For Colorado sports fans, the Pac-10 schools are wonderful places to visit. Oregon is the most beautiful state in the country when the sun&#8217;s out. Seattle is a kick! Southern California is a fun place to spend a few extra days visiting Disneyland or going surfing. When in the Bay Area during fall, head to San Francisco and on to the wine country! San Francisco is the first big city I ever enjoyed.</p>
<p>During my senior year at Stanford, before I had ever visited Boulder, I remember a guy from the Stanford radio station telling me what an amazing place Boulder is when he traveled here for a rare Stanford-CU football game. So I came. I&#8217;m still here.</p>
<p>I don&#8217;t even know who I should root for! Undergraduate ties to the school&#8217;s athletic program are usually stronger, but I have been steeped in local football enthusiasm for decades now. I&#8217;ll go to the first Boulder game and just let the competitive juices flow where they will.</p>
<p>To all those Pac-10 students, fans, and alumni I have this to say: <strong>Come out and see us!</strong> <a href="http://ci.boulder.co.us/">Boulder</a> is a great place to visit in the fall. Spend a few extra days in the <a href="http://www.estesnet.com/">mountains</a>, hang out on the <a href="http://www.boulderdowntown.com/">Pearl Street Mall</a>, drive over the <a href="http://www.rmnp.com/RMNP-areas-trailridge.html">Trail Ridge Road</a> before the snow flies, <a href="http://www.coloradoski.com/">go skiing</a> after the snow flies, have a meal at the <a href="http://www.boulderteahouse.com/">Dushanbe Tea House</a> and ask some local to tell you the <strong>real</strong> history of the place, or bag a <a href="http://www.hikingincolorado.org/gray.html">Fourteener</a>!</p>
<p>We&#8217;ll give you a good football game and send you on home, tired but happy.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.funmurphys.com/blog/?feed=rss2&amp;p=890</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>Leaf Boats and Sediment Traps</title>
		<link>http://www.funmurphys.com/blog/?p=882</link>
		<comments>http://www.funmurphys.com/blog/?p=882#comments</comments>
		<pubDate>Fri, 28 May 2010 19:23:49 +0000</pubDate>
		<dc:creator>Carl Drews</dc:creator>
				<category><![CDATA[Carl]]></category>
		<category><![CDATA[Education]]></category>
		<category><![CDATA[Family]]></category>
		<category><![CDATA[Fun]]></category>
		<category><![CDATA[Science]]></category>
		<category><![CDATA[dam]]></category>
		<category><![CDATA[fluid mechanics]]></category>
		<category><![CDATA[kids]]></category>
		<category><![CDATA[neighborhood]]></category>
		<category><![CDATA[Nile]]></category>
		<category><![CDATA[river]]></category>
		<category><![CDATA[sediment trap]]></category>

		<guid isPermaLink="false">http://www.funmurphys.com/blog/?p=882</guid>
		<description><![CDATA[Last week we had a big thunderstorm pass over the house during the evening, and my two boys (ages 10 and 6) put on their raincoats and went out into the front yard to see what was going on. They love to send leaf boats down the edge of the street when it rains. When [...]]]></description>
			<content:encoded><![CDATA[<p>Last week we had a big thunderstorm pass over the house during the evening, and my two boys (ages 10 and 6) put on their raincoats and went out into the front yard to see what was going on. They love to send leaf boats down the edge of the street when it rains. When I came out to check on them, they had piled up some landscaping gravel in the gutter to make a dam, causing a large puddle of murky rainwater to collect in the street near our driveway. The two of them were really excited about their civil engineering: &#8220;Look, Dad! We made a dam! But our lake keeps rising and flowing around the dam, so we need more gravel!&#8221; I grinned. This arms race continued until their dam started to leak through the gravel, kind of like the turbines at the bottom of Glen Canyon Dam. &#8220;What? You guys aren&#8217;t generating electricity?&#8221;</p>
<p>They noticed that the water coming into their little lake was murky with silt, while the water seeping out through the gravel was clear and clean. &#8220;Yep, you guys have built a <strong><a href="http://en.wikipedia.org/wiki/Sediment_basin">sediment trap</a></strong>&#8220;, I explained. &#8220;The fast-flowing river water carries dirt with it, but in the calm lake water the dirt drops out to the bottom. That&#8217;s why it&#8217;s called a sediment trap, because the river sediment can&#8217;t get past the lake.&#8221; &#8220;Wow! We built a <strong>sediment trap!</strong>&#8221; they exulted. &#8220;Sediment trapping is a big problem for silty rivers like the <a href="http://en.wikipedia.org/wiki/Colorado_River">Colorado</a> and the <a href="http://en.wikipedia.org/wiki/Nile_River">Nile</a>&#8220;, I elaborated. &#8220;The <a href="http://en.wikipedia.org/wiki/Glen_Canyon_Dam">Glen Canyon Dam</a> and the <a href="http://en.wikipedia.org/wiki/Aswan_High_Dam">Aswan High Dam</a> trap the river silt and prevent it from flowing downstream. That&#8217;s why the <a href="http://en.wikipedia.org/wiki/Grand_Canyon">Grand Canyon</a> and the <a href="http://en.wikipedia.org/wiki/Nile_delta">Nile Delta</a> are losing their sand.&#8221; [Yes, sometimes I talk in <a href="http://en.wikipedia.org/wiki/Html">html</a>.] The boys were thrilled to hear the world-wide implications of their little experiment.</p>
<p>After the rain we put the gravel back around the mailbox and washed our hands. And I thought to myself, <strong>What a great neighborhood / country / life I have!</strong> My kids can play safely in the yard, forget their video games, get dirty, have fun, and learn about fluid mechanics all at the same time!</p>
]]></content:encoded>
			<wfw:commentRss>http://www.funmurphys.com/blog/?feed=rss2&amp;p=882</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Code Review and the King James Bible</title>
		<link>http://www.funmurphys.com/blog/?p=796</link>
		<comments>http://www.funmurphys.com/blog/?p=796#comments</comments>
		<pubDate>Mon, 29 Mar 2010 01:59:20 +0000</pubDate>
		<dc:creator>Carl Drews</dc:creator>
				<category><![CDATA[Books]]></category>
		<category><![CDATA[Carl]]></category>
		<category><![CDATA[Culture]]></category>
		<category><![CDATA[Faith]]></category>
		<category><![CDATA[History]]></category>
		<category><![CDATA[Technology]]></category>
		<category><![CDATA[Bible]]></category>
		<category><![CDATA[C++]]></category>
		<category><![CDATA[code review]]></category>
		<category><![CDATA[Java]]></category>
		<category><![CDATA[King James Bible]]></category>
		<category><![CDATA[peer review]]></category>
		<category><![CDATA[software]]></category>
		<category><![CDATA[software engineering]]></category>

		<guid isPermaLink="false">http://www.funmurphys.com/blog/?p=796</guid>
		<description><![CDATA[I am a big fan of code review!  Whether the software is written in Java, C++, Python, or (shudder!) Fortran, code review serves a number of important purposes in an organization that develops software.  When I worked at Smarttalk.com we used a system of code review designed to produce high-quality code quickly.  [...]]]></description>
			<content:encoded><![CDATA[<p>I am a <strong>big</strong> fan of code review!  Whether the software is written in Java, C++, Python, or (shudder!) Fortran, code review serves a number of important purposes in an organization that develops software.  When I worked at <a href="http://www.smarttalk.com/">Smarttalk.com</a> we used a system of code review designed to produce high-quality code quickly.  Here were the steps:</p>
<ol>
<li>When a developer thinks he/she is done with a single code module (one source code file), that developer calls for a code review.  The broadcast e-mail and meeting invitation must go out no less than 48 hours before the scheduled review, so the other developers have at least 48 hours to look over the code before the meeting.  You can schedule a code review for 3:00 pm on Thursday as long as you click on the Send button by 2:59 pm on Tuesday (and there were a few of those).
<li>The software developer can invite anyone they want to the review, but at least one participant must be at the Senior level.  Go ahead and invite your friends! There was some worry about people only inviting people who would be favorable to them, but we quickly learned this principle: <strong>Friends don&#8217;t let friends write bad software.</strong>  You are more likely to accept constructive criticism from your friends than from people you don&#8217;t get along with.
<li>A quorum is three people: the developer and two other software engineers, one of whom must be at the Senior level.  The code review works better with about 4-5 people.
<li>The code file to review must be less than 1,000 lines long.  Generally the other developers retrieve the code from the repository.
<li>The meeting will not last longer than 1 hour.  If the code review runs overtime, the participants adjourn and re-schedule.
<li><strong>The goal of the code review is to improve the code</strong>.  All our jobs depend on producing and marketing high-quality software, and it is in everyone&#8217;s best interest for the code in the repository to work well and be easily maintained.
<li>Everyone is nervous at first about their work being reviewed, and for this reason there is a Moderator.  The moderator makes sure everyone stays on track, watches out for criticism that is not helpful, and ensures that the experience is professionally positive for the developer.  The moderator has the power to kick someone out of the meeting if they are being arrogant or derogatory.  I never saw that happen, though &#8211; usually it is enough to remind someone that <strong>the goal of the code review is to improve the code</strong>.
<li>Everyone at the review sits around a table with a listing in front of them.  The listing is printed with line numbers for easy reference.  The developer begins with a brief explanation of the purpose of the code.
<li>The developer leads everyone else through the code, page by page, or subroutine by subroutine.  Everything is fair game for improvement.  The reviewers speak up in they have comments on a certain section.  If not, the review moves on.
<li>It is great for less experienced programmers to attend!  They can learn a lot from someone else&#8217;s code.  Often they make very worthwhile contributions by requesting more extensive comments for some algorithm that is not clear.  Sometimes you get people who just watch out for uniform spacing or lines longer than 80 characters.  Those people contribute something positive to the process.
<li>Everyone looks for adherence to the coding standards.
<li>Sometimes design flaws are caught in a code review.  The script has to sanitize input for web security.  The code has to handle Unicode characters.  Sometime a subroutine is just too long!
<li>Reviewers can suggest tests that might produce a failure, if they suspect a bug.  The developer makes a note of those and will verify later that the software operates correctly, or fixes the bug if it does not.
<li>If extensive changes are requested, then another code review will be scheduled when the first round of changes are complete.  This is rare.  Even if there are lots of comments, usually the revisions take only a few days to complete.
<li>After the review: When the developer completes the requested changes to the software, he/she adds a note to the header comments of the file saying that the code was reviewed on that particular date by the following people (full names).  Then the developer may check in the code, and move on to another file.
</ol>
<p>The developer under review gets completed feedback in 49 hours.  I&#8217;m sure our loyal Funmurphys readers can add to this process and improve it.  Tweak it for your organization.  Remember that the primary purpose of code review is <strong>to improve the code</strong>.  A secondary purpose is to provide on-the-job training for the more junior programmers.  From time to time people will see a clever way of doing something, or suggest one, and notice code overlap that can be eliminated.</p>
<p>Those should be reasons enough for any professional software developer to conduct code reviews. But suppose <strong>you</strong> are out there thinking, &#8220;I&#8217;m a good engineer!  I&#8217;ve written code for years, it&#8217;s well tested, and there are only a few minor bugs in my work.  I&#8217;m good!  I don&#8217;t need code review.  It&#8217;s just a waste of my time.&#8221;  Yeah, you&#8217;re kind of arrogant, but you have a right to be.</p>
<p>Here&#8217;s why <strong>you</strong> should request and schedule code reviews on your own code.  Because someday, when you least expect it, someone else will come along and have to maintain or extend your code.  And yeah, they won&#8217;t be as smart as you.  They won&#8217;t understand your brilliance.  They won&#8217;t take the time to read through your code and figure out how it&#8217;s carefully designed to work.  What they will do is go to your boss and say the following: &#8220;This code that YourName wrote is dog poop! (but they won&#8217;t say &#8216;poop&#8217;)!  I can&#8217;t follow it at all.  This code has to be completely re-written!&#8221;</p>
<p>Then your boss will be faced with a dilemma.  She knows you are a good software engineer and you write good code.  She has not heard any problems with your code until now.  But the new person is so insistent that your code is dog poop, that it has to be thrown out and re-written from scratch, and the new person uses lots of CAPITAL LETTERS and exclamation marks and derogatory language in his e-mail complaint.  I have seen this happen. What should your boss do?</p>
<p>Your boss has to evaluate the complaint.  Your boss has to examine the code you wrote with a fine-toothed comb, checking if you are correct or if the new guy has some validity to what he says.  Your boss has to call a technical review at which your detractor will be the star witness. You can&#8217;t defend yourself very well since you have moved on to another part of the project. You&#8217;re under suspicion.  <strong>Unless . . .</strong></p>
<p>Unless there is a short section in the header saying the following: <strong>This code was reviewed on March 28, 2010 by the following people: Ashley Adams, Bob Biltmore, Charlie Chang, and Debbie Dumas.</strong>  When your boss finds that comment in the code, her course of action is simple: &#8220;Sorry, Mr. New Guy, but this code was reviewed by the software development team and found to be acceptable.  You can suggest some improvements, but we are <strong>not</strong> throwing it out and re-writing the whole thing from scratch.  If you cannot understand some else&#8217;s code, we will send you back into circulation and hire someone who can.&#8221;</p>
<p>Yes, code reviews can be held to Cover Your Anatomy.  It&#8217;s not a great reason to do them.  If the good reasons above are not sufficient to urge you to do code reviews, perhaps this bad one will.  Enough said.</p>
<p>Now let&#8217;s turn back the clock 400 years to post-Elizabethan England, during the reign of King James I.  He decided to produce a new translation of the Bible, the Authorized Version that would bear his name. Alister McGrath has written a great book about this period, which you should stop reading this blog to go out and buy, then come back here.  The book is &#8220;In the Beginning: The Story of the King James Bible and How it Changed a Nation, a Language, and a Culture&#8221; (2001).  The translators worked in teams.  On page 187 we read this account of the actual translation process:</p>
<blockquote><p>
The translation in King James&#8217; time took an excellent way.  That part of the Bible was given to him who was most excellent in such a tongue (as the Apocrypha to Andrew Downes), and then they met together, and one read the translation, the rest holding in their hands some Bible, either of the learned tongues, or French, Spanish, Italian, etc.  If they found any fault, they spoke up; if not, he read on.
</p></blockquote>
<p>When I read this excerpt I laughed out loud.  <strong>These guys are doing a code review!</strong>  They used the same process 400 years ago to produce a good translation of the Bible that we use in modern times to produce good software!  They all sat around a table and checked up on each other&#8217;s work.  When the King James translators found a discrepancy, they worked together to resolve the problem  That&#8217;s just what we do, too!  I am sure that nobody at Smarttalk or any other software company set out to emulate the King James Bible scholars.  But we have hit on the same process to produce a high-quality product.</p>
<p>This does not mean that the King James Bible is a perfect translation; the McGrath book documents a few errors that were corrected later.  Another example is Hebrews 11:3 in the King James Version, which reads as follows: &#8220;Through faith we understand that the <strong>worlds</strong> were framed by the word of God, so that things which are seen were not made of things which do appear.&#8221;  But the Greek word used for &#8216;worlds&#8217; there is <em>Aion</em> (Strong&#8217;s Concordance G165), and should be translated into English as &#8216;eons&#8217; or &#8216;ages&#8217;.  God&#8217;s word of command caused huge spans of <strong>time</strong> to come to pass, as well as physical worlds.  The KJV is not perfect.  Nevertheless, if people are still using my code 400 years from now, my descendants should be very proud!</p>
<p>Maybe someday I will compare and contrast the process of code review with the peer review conducted by scientific journals.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.funmurphys.com/blog/?feed=rss2&amp;p=796</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>Today&#8217;s Quote:  On Cheap Political Devices</title>
		<link>http://www.funmurphys.com/blog/?p=709</link>
		<comments>http://www.funmurphys.com/blog/?p=709#comments</comments>
		<pubDate>Sat, 20 Feb 2010 15:08:44 +0000</pubDate>
		<dc:creator>Kevin Murphy</dc:creator>
				<category><![CDATA[Quotes]]></category>
		<category><![CDATA[motives]]></category>
		<category><![CDATA[schumpeter]]></category>

		<guid isPermaLink="false">http://www.funmurphys.com/blog/?p=709</guid>
		<description><![CDATA[Remember:  occasionally, it may be an interesting question to ask why a man says what he says; but whatever the answer, it does not tell us anything about whether what he says is true or false.  We take no stock in the cheap political device of political warfare &#8212; unfortunately too common also  among economists [...]]]></description>
			<content:encoded><![CDATA[<blockquote><p>Remember:  occasionally, it may be an interesting question to ask <em>why</em> a man says what he says; but whatever the answer, it does not tell us anything about whether what he says is true or false.  We take no stock in the cheap political device of political warfare &#8212; unfortunately too common also  among economists &#8212; of arguing about a proposition by attacking or extolling the motives of the man who sponsors it or the interest for or against which the proposition seems to tell.</p>
<p>&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;  Joseph Schumpeter in a History of Economic Analysis (Its cheapness must be why it&#8217;s used so much)</p></blockquote>
]]></content:encoded>
			<wfw:commentRss>http://www.funmurphys.com/blog/?feed=rss2&amp;p=709</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>A different kind of TV show</title>
		<link>http://www.funmurphys.com/blog/?p=683</link>
		<comments>http://www.funmurphys.com/blog/?p=683#comments</comments>
		<pubDate>Sun, 07 Feb 2010 04:35:18 +0000</pubDate>
		<dc:creator>Kevin Murphy</dc:creator>
				<category><![CDATA[TV]]></category>
		<category><![CDATA[DVR]]></category>
		<category><![CDATA[Superbowl]]></category>

		<guid isPermaLink="false">http://www.funmurphys.com/blog/?p=683</guid>
		<description><![CDATA[My TV watching can neatly be divided into pre-DVR and post-DVR.  I&#8217;m not sure I watch anything on TV live anymore.  I have my shows set to record, and I watch them at my convenience.  Needless to say, I&#8217;m not alone in this, and I might even have been the last person to go this [...]]]></description>
			<content:encoded><![CDATA[<p>My TV watching can neatly be divided into pre-DVR and post-DVR.  I&#8217;m not sure I watch anything on TV live anymore.  I have my shows set to record, and I watch them at my convenience.  Needless to say, I&#8217;m not alone in this, and I might even have been the last person to go this route.</p>
<p>So now I watch the action and fast forward thru the commercials.  Tomorrow, all will be different &#8211; I will watch the Superbowl live and I&#8217;ll be tempted to ignore the action and watch the commercials.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.funmurphys.com/blog/?feed=rss2&amp;p=683</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Middle School Field Trip &#8211; by Airplane?</title>
		<link>http://www.funmurphys.com/blog/?p=680</link>
		<comments>http://www.funmurphys.com/blog/?p=680#comments</comments>
		<pubDate>Tue, 26 Jan 2010 03:16:35 +0000</pubDate>
		<dc:creator>Carl Drews</dc:creator>
				<category><![CDATA[Carl]]></category>
		<category><![CDATA[Culture]]></category>
		<category><![CDATA[Education]]></category>
		<category><![CDATA[Family]]></category>
		<category><![CDATA[History]]></category>
		<category><![CDATA[Vacation]]></category>

		<guid isPermaLink="false">http://www.funmurphys.com/blog/?p=680</guid>
		<description><![CDATA[Even Dads have to grow up.
My daughter in Middle School is taking a field trip to Washington, DC over Spring Break.  They will tour our nation&#8217;s capital with American Christian Tours, a tour company that emphasizes our Christian heritage throughout history.  She earned part of the money for the tour, and I am [...]]]></description>
			<content:encoded><![CDATA[<p>Even Dads have to grow up.</p>
<p>My daughter in Middle School is taking a field trip to Washington, DC over Spring Break.  They will tour our nation&#8217;s capital with <a href="http://www.acts-tours.com/">American Christian Tours</a>, a tour company that emphasizes our Christian heritage throughout history.  She earned part of the money for the tour, and I am making her study up on the places she will visit.  When she gets to Gettysburg Battlefield she will know who Pickett was, why and who he was charging, and what happened on that fateful day.  When she tours the World War II memorial she will know who were the major powers and leaders on each side of the conflict.  When she enters the American History Museum she will tell her friends to look for the half-naked statue of George Washington.</p>
<p>All this is normal.</p>
<p>The strange part for me is that she and the rest of the kids are boarding an <strong>airplane</strong> to fly to Washington, DC.  <strong>An airplane!</strong>  We live in Colorado, so Washington DC is too far to drive over the one-week break.  It makes sense to fly.  But an airplane??!!!  For a Middle School field trip? Sheesh, next thing you know these kids will be taking a field trip to the International Space Station!</p>
<p>I grew up in New Jersey, and my class took field trips by bus to Philadelphia and New York City to see the sights.  The historical sites were within easy reach.  On the Circle Line ferry around Manhattan Island some elementary school kids from the city challenged us to fight: &#8220;Get your gang together.  We&#8217;ll meet you in the boys&#8217; room!&#8221;  Remarkably, we were mature enough to laugh, politely decline, and ask them where they were from?  They were fun kids once we got past the macho thing.</p>
<p><strong>An airplane!</strong></p>
<p>Perhaps Sean call tell us if airline travel has dropped in cost relative to the Consumer Price Index since the 1970s?  In any case, this Dad has to let go and realize that times have changed and let my precious daughter fly to Washington DC for a wonderful and educational adventure with friends I know and teachers I trust to take good care of her.  It should be a good trip!  She&#8217;ll bring her cell phone with her. Oh yeah, you bet she will!</p>
]]></content:encoded>
			<wfw:commentRss>http://www.funmurphys.com/blog/?feed=rss2&amp;p=680</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Remembering Y2K</title>
		<link>http://www.funmurphys.com/blog/?p=602</link>
		<comments>http://www.funmurphys.com/blog/?p=602#comments</comments>
		<pubDate>Thu, 31 Dec 2009 19:21:36 +0000</pubDate>
		<dc:creator>Carl Drews</dc:creator>
				<category><![CDATA[Carl]]></category>
		<category><![CDATA[Culture]]></category>
		<category><![CDATA[History]]></category>
		<category><![CDATA[Technology]]></category>

		<guid isPermaLink="false">http://www.funmurphys.com/blog/?p=602</guid>
		<description><![CDATA[Happy New Year&#8217;s Eve!
Happy Last Day of December!
Happy Last Day of 2009!
Happy Last Day of the 2000s decade!
Ten years ago today I was working from home, since I was an independent software developer back then.  This was The Day that the dreaded Y2K bug was supposed to hit.  The End Of Civilization As [...]]]></description>
			<content:encoded><![CDATA[<p>Happy New Year&#8217;s Eve!<br />
Happy Last Day of December!<br />
Happy Last Day of 2009!<br />
Happy Last Day of the 2000s decade!</p>
<p>Ten years ago today I was working from home, since I was an independent software developer back then.  This was The Day that the dreaded Y2K bug was supposed to hit.  The End Of Civilization As We Know It, or just TEOCAWKI for short.  Remember?</p>
<p>A number of social commentators were predicting that the <a href="http://en.wikipedia.org/wiki/Y2K_bug">Y2K computer bug</a> would cause large-scale failures in our computer-based infrastructure, including some Christian conservatives like Michael Hyatt and Chuck Missler.  Ed Yourdon predicted that computer systems administrators would head to the hills <i>en masse</i> because they realized that the problem was huge and couldn&#8217;t be fixed.  My local hardware store carried large electrical generators with signs saying: <strong>&#8220;Don&#8217;t even think of returning this on January 5 if Y2K turns out to be a bust!  We&#8217;re onto you.&#8221;</strong>  There were tales of survivalists cashing out their retirement accounts, buying a ranch in the mountains, stockpiling guns and ammo, taking their wives and children up to the compound after Christmas, and keeping a loaded gunsight out for looters when the millennium sun peeked over the horizon.  Even modern cars weren&#8217;t supposed to work.  Remember all that?</p>
<p>As a software engineer, I issued my own prediction in March 1999: <strong>Y2K will be no worse than a hurricane.  Power and basic utilities will be restored within 48 hours.  You&#8217;ll be able to go back to work in a week.</strong>  My prediction seemed pretty mild at the time.</p>
<p>I had a plan, too.  I stockpiled about one week&#8217;s worth of food, water, and firewood for the &#8220;hurricane&#8221;, taking care to be sure that anything I bought could be used later for camping trips if Y2K fizzled out.  Partly it made good sense to be prepared, partly I was fascinated by the social aspects of worried people getting ready for TEOCAWKI, and partly I wanted to reassure those around me.  I still have some extra jugs of drinking water and a few packs of candles and lighters left over.  All the Ramen noodles and beef jerky are long gone.</p>
<p>During the summer and early fall I received lots of letters from my bank, my insurance company, my utilities, my retirement company, my post office, all declaring that they had been certified as &#8220;Y2K Compliant&#8221;.  Then in November I got a letter from the supplier of my diskette mailers, saying that they were certified as Y2K Compliant and that the supply of diskette mailers would be uninterrupted by the dawn of the new millennium.  I just stared at the letter.  <strong>Diskette mailers.</strong>  It&#8217;s come to this, probably the most trivial and non-essential item that I purchase.  That&#8217;s when it hit me that Y2K was gonna be a big bust.  The alarmists were wrong.  Everything&#8217;s going to be all right.</p>
<p>New Year&#8217;s Eve fell on a Friday that year, leaving an entire weekend for the computer people to fix whatever problems they found.  Ed Yourdon was wrong &#8211; the computer system administrators (my friends and colleagues) behaved like the responsible professionals they are, working all that weekend to run tests, re-boot machines, and examine diagnostics for signs of any technical Y2K problems.  The weather in Colorado was unusually warm.</p>
<p>I filled up all the bathtubs in my house with drinking water.  I remember thinking, &#8220;Why should I do this?  It&#8217;s just a waste of water.  Nothing bad is going to happen.&#8221;  But filling up the bathtubs was Part Of The Plan, so I did it anyway.  That evening I discovered that the drains in my tubs didn&#8217;t seal very well, and I had lost about half my supply already.  The best-laid plans . . .</p>
<p>Since I was working from home, I could keep an eye on the TV.  Midnight and the Millennium Dawn were sweeping around the globe.  The celebrations were wonderful to watch!  In Australia they had trapeze dancers swinging from ropes affixed to the top of the Sydney Opera House.  Japan had marvelous dancers and costumed performers.  China had spectacular fireworks!  Then came Thailand, India, and celebrations in Africa.  A few minor problems were reported, like weather maps that displayed the year 19100 and some video rental fees not calculated correctly.  But everything was coming out fine, even in Italy who had not done much to prepare.  I just relaxed, let all the technical concerns slip away, and watched in wonder as the happy festivals spread around the globe with the coming sunshine.  Wow!</p>
<p>Praise God!  Happy New Year!</p>
]]></content:encoded>
			<wfw:commentRss>http://www.funmurphys.com/blog/?feed=rss2&amp;p=602</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
	</channel>
</rss>
