<?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"
	>

<channel>
	<title>InquiryLabs &#187; Uncategorized</title>
	<atom:link href="http://blog.inquirylabs.com/category/uncategorized/feed/" rel="self" type="application/rss+xml" />
	<link>http://blog.inquirylabs.com</link>
	<description>Politics, Programming and Possibilities</description>
	<pubDate>Thu, 18 Feb 2010 13:44:56 +0000</pubDate>
	<generator>http://wordpress.org/?v=2.6.1</generator>
	<language>en</language>
			<item>
		<title>Nice time zone converter</title>
		<link>http://blog.inquirylabs.com/2010/02/18/nice-time-zone-converter/</link>
		<comments>http://blog.inquirylabs.com/2010/02/18/nice-time-zone-converter/#comments</comments>
		<pubDate>Thu, 18 Feb 2010 13:44:56 +0000</pubDate>
		<dc:creator>Duane Johnson</dc:creator>
		
		<category><![CDATA[Uncategorized]]></category>

		<guid isPermaLink="false">http://blog.inquirylabs.com/2010/02/18/nice-time-zone-converter/</guid>
		<description><![CDATA[Jonathan Berger made a time zone conversion website in a weekend. &#160;It looks and works great:&#160;http://www.thetimezoneconverter.com/
 Posted via email  from Duane&#8217;s Quick Posts 

]]></description>
			<content:encoded><![CDATA[<div class='posterous_autopost'>Jonathan Berger made a time zone conversion website in a weekend. &nbsp;It looks and works great:&nbsp;<a href="http://www.thetimezoneconverter.com/">http://www.thetimezoneconverter.com/</a>
<p style="font-size: 10px;"> <a href="http://posterous.com">Posted via email</a>  from <a href="http://canadaduane.posterous.com/nice-time-zone-converter">Duane&#8217;s Quick Posts</a> </p>
</p></div>
]]></content:encoded>
			<wfw:commentRss>http://blog.inquirylabs.com/2010/02/18/nice-time-zone-converter/feed/</wfw:commentRss>
		</item>
		<item>
		<title>Help Build the Economy: Qualify Yourself for a Career in an Information Technology</title>
		<link>http://blog.inquirylabs.com/2010/02/15/help-build-the-economy-qualify-yourself-for-a-career-in-an-information-technology/</link>
		<comments>http://blog.inquirylabs.com/2010/02/15/help-build-the-economy-qualify-yourself-for-a-career-in-an-information-technology/#comments</comments>
		<pubDate>Mon, 15 Feb 2010 20:16:36 +0000</pubDate>
		<dc:creator>Duane Johnson</dc:creator>
		
		<category><![CDATA[Uncategorized]]></category>

		<guid isPermaLink="false">http://blog.inquirylabs.com/2010/02/15/help-build-the-economy-qualify-yourself-for-a-career-in-an-information-technology/</guid>
		<description><![CDATA[
If you are looking for a job, I want to talk to you. &#160;Right here, on this blog.

In&#160;an article&#160;at The Atlantic, Don Peck makes the statistics-laden observation:



Even if the economy were to immediately begin producing 600,000 jobs a month—more than double the pace of the mid-to-late 1990s, when job growth was strong—it would take roughly [...]]]></description>
			<content:encoded><![CDATA[<div class='posterous_autopost'>
<div>If you are looking for a job, I want to talk to you. &nbsp;Right here, on this blog.</div>
<p />
<div>In&nbsp;<a href="http://www.theatlantic.com/doc/print/201003/jobless-america-future">an article</a>&nbsp;at The Atlantic, Don Peck makes the statistics-laden observation:</div>
<p />
<p />
<blockquote type="cite">
<div>Even if the economy were to immediately begin producing 600,000 jobs a month—more than double the pace of the mid-to-late 1990s, when job growth was strong—it would take roughly two years to dig ourselves out of the hole we’re in.</div>
</blockquote>
<p />
<div>It seems strange to me to consider the economy as a &#8220;thing that produces jobs&#8221;. &nbsp;Curiously, it should be the other way around, shouldn&#8217;t it? &nbsp;As a consequence of having a useful skill, we engage in activities known as &#8220;employment&#8221; that benefit ourselves and others. &nbsp;This collective &#8220;employment&#8221; is what makes up the economy. &nbsp;If the confusion could be dispelled by an aphorism, then I&#8217;d nominate, &#8220;Ask not what job&nbsp;<b>the economy</b>&nbsp;can produce for&nbsp;<b>you</b>, but what job&nbsp;<b>you</b>&nbsp;can produce for&nbsp;<b>the economy</b>.&#8221;</div>
<p />
<div>I feel very lucky to have an income right now, and to be employed at a company that is doing well enough that I don&#8217;t need to worry about job loss in the foreseeable future. &nbsp;I have a privileged view of the world because of this (temporary) stability, and because of my background in computer science. &nbsp;I&#8217;d like to take a moment to write about the future as I see it, given my perspective in technology. &nbsp;I hope that if you are considering career possibilities right now, then reading this will give you some insight into why you should get as much education as possible in order to pursue a career in an information technology field.</div>
<p />
<div>You should become an expert in computer science and apply your skills to the areas of bioinformatics, physics, robotics, or any number of fields that have problems to solve. &nbsp;From my viewpoint, <b>all jobs are becoming information technology jobs</b>&nbsp;and everything else is going to eventually disappear except in developing economies. &nbsp;Consider the following job categories that are on the verge of disappearing or have disappeared altogether:&nbsp;<a href="http://babelfish.yahoo.com/">translation services</a>, middle-men like publishers,&nbsp;<a href="http://www.apple.com/itunes/">music retail stores</a>&nbsp;and&nbsp;<a href="http://www.amazon.com/">book stores</a>,&nbsp;<a href="http://www.blogger.com/">newspaper</a>&nbsp;editors, newspaper&nbsp;<a href="http://craigslist.org/">classifieds</a>, answering services,&nbsp;<a href="http://maps.google.com/">travel maps</a>,&nbsp;<a href="http://pipl.com/">phone directories</a>&nbsp;such as&nbsp;<a href="http://google.com/">yellow pages</a>,&nbsp;<a href="http://www.bookingbuddy.com/">travel agencies</a>, commodity&nbsp;<a href="http://www.washingtonmonthly.com/college_guide/feature/college_for_99_a_month.php">colleges and universities</a>, the&nbsp;<a href="http://singularityhub.com/2010/02/11/no-humans-just-robots-amazing-videos-of-the-modern-factory/">entire industrial sector</a>, etc., etc.</div>
<p />
<div>The truth is that although people invest a great deal of time and effort becoming experts in specific areas, <b>most fields of study include the seeds of their own destruction</b>. &nbsp;They do not teach you how to make yourself obsolete. &nbsp;And by lacking this information, they lock you into a career that will, eventually, become obsolete.</div>
<p />
<div>Computer science, on the other hand, is the study of solving abstract problems. &nbsp;<b>Once a problem has been solved, it is packaged up and reused to solve bigger problems</b>. &nbsp;For example, once computer scientists learned how to compress information in the zip file format, compression become popular all over the place. &nbsp;Hard drive space was saved, and the time it takes to send files over the wire was reduced. &nbsp;But consider this: <b>there were no &#8220;zip file factory workers&#8221; who lost their jobs when zip files were created</b>. &nbsp;That&#8217;s because computer scientists are constantly leveraging their own work to solve harder and harder problems. &nbsp;That&#8217;s why they will never lose their jobs, en masse. &nbsp;They are positioned to become the gatekeepers of all human knowledge&#8211;and not out of some kind of elitism, but out of the nature of their jobs. &nbsp;I want you to be a computer scientist so that you can solve more problems and find more job security than you ever thought possible.</div>
<p />
<div>Medicine used to be a very slowly evolving science. &nbsp;It was more of an art, actually, than a science: discoveries such as penicillin were usually made by accident and progress was very slow. &nbsp;Slow, that is, until the human genome was mapped. &nbsp;Suddenly, medicine entered the realm of computer science and information technology. &nbsp;We could leverage the power of hundreds of thousands of processing units on the problems of disease and short life. &nbsp;Even now, bioinformatics is growing exponentially. &nbsp;The number of human genomes mapped today is in the dozens but will probably be in the hundreds or&nbsp;<a href="http://singularityhub.com/2010/01/26/exclusive-complete-genomics-to-sequence-1-million-genomes-interview-with-ceo/">thousands this year</a>. &nbsp;Computer science in the realm of biology is a career move that will serve you well in the long run, and your contributions will serve the rest of humanity.</div>
<p />
<div>Robot technology is finally starting to deliver on the promises it made in the 1970s. &nbsp;Fewer and fewer of our products are&nbsp;<a href="http://singularityhub.com/2010/02/11/no-humans-just-robots-amazing-videos-of-the-modern-factory/">assembled or sorted</a>&nbsp;by hand. &nbsp;There are robot services available in the home now, such as the&nbsp;<a href="http://www.robotreviews.com/buy/roomba">roomba</a>&nbsp;and the&nbsp;<a href="http://www.neatorobotics.com/">neato</a>. &nbsp;You can bet that there will be robots soon that can clean your walls, and a few years later, wash your clothes (if that will&nbsp;<a href="http://www.physorg.com/news184310039.html">even be necessary</a>), and&nbsp;<a href="http://www.japanprobe.com/2008/12/18/kitchen-robot-washes-dishes/">do your dishes</a>. &nbsp;Once these technologies start working in the home, you can expect that automated processes will start to make more sense in the grocery store and even in the service sector (but better than the&nbsp;<a href="http://www.vending.com/">ones that already serve there</a>). &nbsp;Computer science is behind all of these technologies and roboticists will need to be fluent in computer languages as well as electronics and physics. &nbsp;The beginning of all of these marvels is the internet which is making it possible to communicate between human and machine. &nbsp;If you are looking for a place to start, may I (in a biased way) recommend&nbsp;<a href="http://blog.inquirylabs.com/about/">web development</a>?</div>
<p />
<div>Then again, <b>you don&#8217;t have to quit what you&#8217;re already good at. &nbsp;Enhance it with a degree in computer science.</b> &nbsp;Learn how to make your job obsolete, and you will have the most job security in the world. &nbsp;The economy depends on you (and 6 billion others like you) to learn this skill and teach it to others.</div>
<p style="font-size: 10px;"> <a href="http://posterous.com">Posted via email</a>  from <a href="http://canadaduane.posterous.com/help-build-the-economy-qualify-yourself-for-a">Duane&#8217;s Quick Posts</a> </p>
</p></div>
]]></content:encoded>
			<wfw:commentRss>http://blog.inquirylabs.com/2010/02/15/help-build-the-economy-qualify-yourself-for-a-career-in-an-information-technology/feed/</wfw:commentRss>
		</item>
		<item>
		<title>I&#8217;m liking the duckduckgo search engine</title>
		<link>http://blog.inquirylabs.com/2010/02/08/im-liking-the-duckduckgo-search-engine/</link>
		<comments>http://blog.inquirylabs.com/2010/02/08/im-liking-the-duckduckgo-search-engine/#comments</comments>
		<pubDate>Tue, 09 Feb 2010 01:57:39 +0000</pubDate>
		<dc:creator>Duane Johnson</dc:creator>
		
		<category><![CDATA[Uncategorized]]></category>

		<guid isPermaLink="false">http://blog.inquirylabs.com/2010/02/08/im-liking-the-duckduckgo-search-engine/</guid>
		<description><![CDATA[After hearing about it on&#160;ycombinator, I switched my browser&#8217;s default search engine from Google to&#160;DuckDuckGo&#160;a couple of days ago and I&#8217;ve been quite impressed so far. &#160;I like that it puts the definition of my query front and center, if it&#8217;s available (Wikipedia is usually the source of the definition).

I also think DuckDuckGo has a [...]]]></description>
			<content:encoded><![CDATA[<div class='posterous_autopost'>After hearing about it on&nbsp;<a href="http://news.ycombinator.com/">ycombinator</a>, I switched my browser&#8217;s default search engine from Google to&nbsp;<a href="http://duckduckgo.com/">DuckDuckGo</a>&nbsp;a couple of days ago and I&#8217;ve been quite impressed so far. &nbsp;I like that it puts the definition of my query front and center, if it&#8217;s available (Wikipedia is usually the source of the definition).
<p />
<div>I also think DuckDuckGo has a better disambiguation system than Google&#8217;s results page. &nbsp;For example, I was searching for the price of gold and was lazy so I just typed &#8220;<a href="http://duckduckgo.com/?q=gold">Gold</a>&#8221; in to the DDG search bar. &nbsp;A whole list of interesting meanings for gold came up that I didn&#8217;t realize existed (such as the Gold parser, or the 1934 film called Gold). &nbsp;I didn&#8217;t find the price of gold, so I typed out the full &#8220;<a href="http://duckduckgo.com/?q=price+of+gold">Price of Gold</a>&#8221; and immediately found what I was looking for. &nbsp;The &#8220;right answer&#8221; seems to be the first link more often than not. &nbsp;I&#8217;ll keep experimenting.</div>
<p style="font-size: 10px;"> <a href="http://posterous.com">Posted via email</a>  from <a href="http://canadaduane.posterous.com/im-liking-the-duckduckgo-search-engine">Duane&#8217;s Quick Posts</a> </p>
</p></div>
]]></content:encoded>
			<wfw:commentRss>http://blog.inquirylabs.com/2010/02/08/im-liking-the-duckduckgo-search-engine/feed/</wfw:commentRss>
		</item>
		<item>
		<title>Getting WxRuby to Work on Mac OS X</title>
		<link>http://blog.inquirylabs.com/2010/02/02/getting-wxruby-to-work-on-mac-os-x/</link>
		<comments>http://blog.inquirylabs.com/2010/02/02/getting-wxruby-to-work-on-mac-os-x/#comments</comments>
		<pubDate>Tue, 02 Feb 2010 16:20:31 +0000</pubDate>
		<dc:creator>Duane Johnson</dc:creator>
		
		<category><![CDATA[Uncategorized]]></category>

		<guid isPermaLink="false">http://blog.inquirylabs.com/2010/02/02/getting-wxruby-to-work-on-mac-os-x/</guid>
		<description><![CDATA[I have Ruby 1.9 running on Leopard and recently tried to get WxRuby running. &#160;Unfortunately, it was giving me the following error:



irb -r wx
/opt/local/lib/ruby1.9/gems/1.9.1/gems/wxruby-2.0.1-universal-darwin-9/lib/wxruby2.bundle: [BUG] unknown type 0&#215;22 (0xc given)
ruby 1.9.1p129 (2009-05-12 revision 23412) [i386-darwin9]


It turns out that I had installed using &#8220;sudo gem install wxruby&#8221; when I should have installed with &#8220;sudo gem install [...]]]></description>
			<content:encoded><![CDATA[<div class='posterous_autopost'>I have Ruby 1.9 running on Leopard and recently tried to get WxRuby running. &nbsp;Unfortunately, it was giving me the following error:
<p />
<div>
<div></div>
<blockquote type="cite"><div>irb -r wx</div>
<div>/opt/local/lib/ruby1.9/gems/1.9.1/gems/wxruby-2.0.1-universal-darwin-9/lib/wxruby2.bundle: [BUG] unknown type 0&#215;22 (0xc given)</div>
<div>ruby 1.9.1p129 (2009-05-12 revision 23412) [i386-darwin9]</div>
</blockquote>
<p />
<div>It turns out that I had installed using &#8220;sudo gem install wxruby&#8221; when I should have installed with &#8220;sudo gem install wxruby-ruby19&#8243;. &nbsp;Fixed!</div>
<p /></div>
<p style="font-size: 10px;"> <a href="http://posterous.com">Posted via email</a>  from <a href="http://canadaduane.posterous.com/getting-wxruby-to-work-on-mac-os-x">Duane&#8217;s Quick Posts</a> </p>
</p></div>
]]></content:encoded>
			<wfw:commentRss>http://blog.inquirylabs.com/2010/02/02/getting-wxruby-to-work-on-mac-os-x/feed/</wfw:commentRss>
		</item>
		<item>
		<title>Using Rave : Ruby + Google Wave</title>
		<link>http://blog.inquirylabs.com/2010/01/18/using-rave-ruby-google-wave/</link>
		<comments>http://blog.inquirylabs.com/2010/01/18/using-rave-ruby-google-wave/#comments</comments>
		<pubDate>Mon, 18 Jan 2010 18:11:12 +0000</pubDate>
		<dc:creator>Duane Johnson</dc:creator>
		
		<category><![CDATA[Uncategorized]]></category>

		<guid isPermaLink="false">http://blog.inquirylabs.com/2010/01/18/using-rave-ruby-google-wave/</guid>
		<description><![CDATA[
I&#8217;ve been playing with Google Wave recently and enjoying the challenge of making a robot for the platform. &#160;My challenge is to create a robot that looks for &#8220;Q:&#8221; and &#8220;A:&#8221; markup and submits questions and answers to a flash card service such as&#160;FlashCardDB.com&#160;so that my Inuversity study group can use&#160;spaced repetition&#160;to optimize our study [...]]]></description>
			<content:encoded><![CDATA[<div class='posterous_autopost'>
<div>I&#8217;ve been playing with Google Wave recently and enjoying the challenge of making a robot for the platform. &nbsp;My challenge is to create a robot that looks for &#8220;Q:&#8221; and &#8220;A:&#8221; markup and submits questions and answers to a flash card service such as&nbsp;<a href="http://flashcarddb.com/">FlashCardDB.com</a>&nbsp;so that my Inuversity study group can use&nbsp;<a href="http://www.supermemo.com/articles/theory.htm">spaced repetition</a>&nbsp;to optimize our study sessions.</div>
<p />
<div>Because the Google Wave team first released a Python version of their robot api, I started work on the project from that direction. &nbsp;Unfortunately, Python&#8217;s &#8220;mechanize&#8221; library is not as well developed as I would like to see it. &nbsp;For example, among other difficulties, the ClientForm library that it depends on was unable to parse the login form at flashcarddb.com. &nbsp;In addition, due to the limitation that Python&#8217;s mechanize library does not easily allow me to simulate an XmlHTTPRequest, I finally gave up on that approach. &nbsp;Since&nbsp;Ruby&#8217;s Mechanize library is in much better shape, I thought it might be an option.</div>
<p />
<div>Since I am familiar with Ruby, I searched for possible Ruby/Wave solutions and discovered the 3 main contenders (Rave, Robot Sinatra Template and Wave Robot Ruby Client). &nbsp;I chose Rave because of its &#8220;package&#8221; feel: The author, Jason Rush, has worked to make each step easy from configuration, to development, to deployment. &nbsp;For example, building the Java WAR file is a simple &#8220;jruby -S rave war&#8221; command, and configuration is as simple as filling out a yaml file.</div>
<p />
<div>I followed the directions at Jason&#8217;s&nbsp;<a href="http://jasonrush.com/blog/2009/06/rave-google-wave-robots-in-ruby.html">introductory post</a>&nbsp;about Rave and quickly deployed my first &#8220;bot&#8221; using jruby and the Rack+Rave framework. &nbsp;Unfortunately, I soon realized that version 0.1.1 of Rave which has been released to the world does not support robot versioning! &nbsp;That meant that I could not increment the version number of my software to indicate that I had made changes. &nbsp;The robot was stuck at version 1.0.</div>
<p />
<div>This problem was solved by Jason and other contributors in the latest source code. &nbsp;As of this writing, it&#8217;s not packaged as a gem yet&#8211;so I went to his&nbsp;<a href="http://github.com/diminish7/rave">git repository</a>&nbsp;to get the latest.</div>
<p />
<div>One gotcha: since upgrading from 0.1.1 to 0.1.2, the rackup file (config.ru) has changed. &nbsp;I received this cryptic error which indicates I needed to change the line in config.ru from &#8220;run Remembry::Robot.new(:name =&gt; &#8216;remembry&#8217;)&#8221; to&nbsp;&#8221;run Remembry::Robot.instance&#8221;.</div>
<p />
<div></div>
<blockquote type="cite"><div>javax.servlet.ServletContext log: unable to create shared application instance</div>
<div>org.jruby.rack.RackInitializationException: private method `new&#8217; called for RemembryRave::Robot:Class</div>
<div><span class="Apple-tab-span" style="">	</span>from /base/data/home/apps/remembry/1.339256739153417236/WEB-INF/gems/gems/rack-1.1.0/lib/rack/builder.rb:46:in `initialize&#8217;</div>
</blockquote>
<p />
<div>Also, I tried using an integer number to version my robot, but integers don&#8217;t work (use a string, such as &#8216;12&#8242; instead of 12):</div>
<p />
<div>
<div></div>
<blockquote type="cite"><div>sun.reflect.NativeMethodAccessorImpl invoke0: TypeError: can&#8217;t dup Fixnum</div>
<div>/base/data/home/apps/remembry/1.339257167247162572/WEB-INF/gems/gems/rave-0.1.2-java/lib/models/robot.rb:16:in `version&#8217;</div>
</blockquote>
<p />
<div>In addition, it used to be that the packaged gems were configured in the Warbler::Config block in config/warbler.rb, like this:</div>
</div>
<p />
<div>
<div></div>
<blockquote type="cite"><div>Warbler::Config.new do |config|</div>
<div>&nbsp;&nbsp;config.gems = %w( rave json-jruby rack builder hpricot )</div>
<div>&nbsp;&nbsp;config.includes = %w( robot.rb appengine-web.xml )</div>
<div>end</div>
</blockquote>
<p />
<div>But it appears that the new config.yaml file is the place to put gems and other configuration:</div>
<p /></div>
<div>
<div></div>
<blockquote type="cite"><div>robot:</div>
<div>&nbsp;&nbsp;id: <a href="mailto:remembry@appspot.com">remembry@appspot.com</a></div>
<div>&nbsp;&nbsp;name: Remembry Bot</div>
<div>&nbsp;&nbsp;image_url: <img src="http://posterous.com/getfile/files.posterous.com/canadaduane/uzeAvtiCcrvmxFvErhfmjGvcqouanlmDhfExukGkjymqJIJdICDkacjIfwsH/media_httpremembryapp_GDDJy.png.scaled500.png" width="64" height="64"/> </div>
<div>&nbsp;&nbsp;profile_url: <a href="http://remembry.appspot.com/">http://remembry.appspot.com/</a></div>
<div>&nbsp;&nbsp;version: &#8216;9&#8242;</div>
<div>appcfg:</div>
<div>&nbsp;&nbsp;version: 1</div>
<div>gems:</div>
<div>&nbsp;&nbsp;- hpricot</div>
</blockquote>
<p />
<div>And finally, in order to accomplish my task, I needed to use Ruby&#8217;s Mechanize library but because the latest version of Mechanize depends on Nokogiri which in turn depends on Ruby&#8217;s Foreign Function Interface (FFI), I had to downgrade from Mechanize 0.9.3 to 0.8.5. &nbsp;According to this google forum,&nbsp;<a href="http://groups.google.com/group/appengine-jruby/browse_thread/thread/2135471c0c9348a0?pli=1">FFI will never be supported</a>&nbsp;in App Engine.</div>
<p />
<div>More details on this project to come later!</div>
</div>
<p style="font-size: 10px;"> <a href="http://posterous.com">Posted via email</a>  from <a href="http://canadaduane.posterous.com/using-rave-ruby-google-wave">Duane&#8217;s Quick Posts</a> </p>
</p></div>
]]></content:encoded>
			<wfw:commentRss>http://blog.inquirylabs.com/2010/01/18/using-rave-ruby-google-wave/feed/</wfw:commentRss>
		</item>
		<item>
		<title>Discipline</title>
		<link>http://blog.inquirylabs.com/2010/01/10/discipline/</link>
		<comments>http://blog.inquirylabs.com/2010/01/10/discipline/#comments</comments>
		<pubDate>Mon, 11 Jan 2010 00:38:34 +0000</pubDate>
		<dc:creator>Duane Johnson</dc:creator>
		
		<category><![CDATA[Uncategorized]]></category>

		<guid isPermaLink="false">http://blog.inquirylabs.com/2010/01/10/discipline/</guid>
		<description><![CDATA[
The word &#8220;discipline&#8221; connotes both external discipline (&#8221;That child is misbehaving&#8212;he needs to be disciplined&#8221;) as well as internal discipline (&#8221;He is a disciplined learner.&#8221;). &#160;But I don&#8217;t think these two meanings have any relationship with one another&#8212;children do not improve the executive function of their minds via external discipline. &#160;In fact, I think they [...]]]></description>
			<content:encoded><![CDATA[<div class='posterous_autopost'>
<div>The word &#8220;discipline&#8221; connotes both external discipline (&#8221;That child is misbehaving&#8212;he needs to be disciplined&#8221;) as well as internal discipline (&#8221;He is a disciplined learner.&#8221;). &nbsp;But I don&#8217;t think these two meanings have any relationship with one another&#8212;children do not improve the executive function of their minds via external discipline. &nbsp;In fact, I think they learn in spite of external discipline. &nbsp;From the research I&#8217;ve been&nbsp;<a href="http://speakingoffaith.publicradio.org/programs/2009/learning-doing-being/">listening</a>&nbsp;to, the executive function is a more recent adaptation of the human brain (in evolutionary time) and is therefore one of the weakest and most prone to being disabled during stressful periods. &nbsp;If that&#8217;s the case, then &#8220;disciplining&#8221; a child with external stressors such as a spanking would actually lead to less internal discipline/executive function.</div>
<p />
<div>As Kelty recently said, &#8220;When you go to the principal&#8217;s office, you just want to get through it. &nbsp;No one comes out of that office saying to themselves, &#8216;I am a changed child!&#8217;&#8221;</div>
<p style="font-size: 10px;"> <a href="http://posterous.com">Posted via email</a>  from <a href="http://canadaduane.posterous.com/discipline-31">Duane&#8217;s Quick Posts</a> </p>
</p></div>
]]></content:encoded>
			<wfw:commentRss>http://blog.inquirylabs.com/2010/01/10/discipline/feed/</wfw:commentRss>
		</item>
		<item>
		<title>Forgot to Mention the Cougars Game</title>
		<link>http://blog.inquirylabs.com/2010/01/06/forgot-to-mention-the-cougars-game/</link>
		<comments>http://blog.inquirylabs.com/2010/01/06/forgot-to-mention-the-cougars-game/#comments</comments>
		<pubDate>Thu, 07 Jan 2010 02:33:09 +0000</pubDate>
		<dc:creator>Duane Johnson</dc:creator>
		
		<category><![CDATA[Uncategorized]]></category>

		<guid isPermaLink="false">http://blog.inquirylabs.com/2010/01/06/forgot-to-mention-the-cougars-game/</guid>
		<description><![CDATA[It&#8217;s old news now, but it was so fun to be with my family and see the BYU cougars win last November!

 Posted via email  from Duane&#8217;s Quick Posts 
]]></description>
			<content:encoded><![CDATA[<div>It&#8217;s old news now, but it was so fun to be with my family and see the BYU cougars win last November!</div>
<p><a href='http://posterous.com/getfile/files.posterous.com/canadaduane/pOyArjsZCKNREBVwte5W7y5DyaeNygG6gjSDH3QFYnQoIAU85EJ1hYFoShrI/photo.jpg'><img src="http://posterous.com/getfile/files.posterous.com/canadaduane/WCaN6KSlNZVT4l7Hh0uUAe4HaXuxUBSWOI4MrbXqXgHXYvub7ITYXvWZdRSo/photo.jpg.scaled.500.jpg" width="400" height="300"/></a>
<p style="font-size: 10px;"> <a href="http://posterous.com">Posted via email</a>  from <a href="http://canadaduane.posterous.com/forgot-to-mention-the-cougars-game">Duane&#8217;s Quick Posts</a> </p>
]]></content:encoded>
			<wfw:commentRss>http://blog.inquirylabs.com/2010/01/06/forgot-to-mention-the-cougars-game/feed/</wfw:commentRss>
		</item>
		<item>
		<title>Reframing the &#8220;Placebo Effect&#8221;: It&#8217;s part of the body&#8217;s healing system</title>
		<link>http://blog.inquirylabs.com/2010/01/05/reframing-the-placebo-effect-its-part-of-the-bodys-healing-system/</link>
		<comments>http://blog.inquirylabs.com/2010/01/05/reframing-the-placebo-effect-its-part-of-the-bodys-healing-system/#comments</comments>
		<pubDate>Wed, 06 Jan 2010 03:40:24 +0000</pubDate>
		<dc:creator>Duane Johnson</dc:creator>
		
		<category><![CDATA[Uncategorized]]></category>

		<guid isPermaLink="false">http://blog.inquirylabs.com/2010/01/05/reframing-the-placebo-effect-its-part-of-the-bodys-healing-system/</guid>
		<description><![CDATA[This is a&#160;really neat article&#160;about the transition science is taking right now as it reframes the &#8220;placebo effect&#8221; and its role in health and the search for improvements to the body&#8217;s natural (but limited) healing system:


Benedetti often uses the phrase &#8220;placebo response&#8221; instead of placebo effect. By definition, inert pills have no effect, but under [...]]]></description>
			<content:encoded><![CDATA[<p>This is a&nbsp;<a href="http://www.wired.com/print/medtech/drugs/magazine/17-09/ff_placebo_effect">really neat article</a>&nbsp;about the transition science is taking right now as it reframes the &#8220;placebo effect&#8221; and its role in health and the search for improvements to the body&#8217;s natural (but limited) healing system:
<p />
<div>
<blockquote type="cite">Benedetti often uses the phrase &#8220;placebo response&#8221; instead of placebo effect. By definition, inert pills have no effect, but under the right conditions they can act as a catalyst for what he calls the body&#8217;s &#8220;endogenous health care system.&#8221; Like any other internal network, the placebo response has limits. It can ease the discomfort of chemotherapy, but it won&#8217;t stop the growth of tumors. It also works in reverse to produce the placebo&#8217;s evil twin, the nocebo effect. For example, men taking a commonly prescribed prostate drug who were informed that the medication may cause sexual dysfunction were twice as likely to become impotent.</p></blockquote>
<p></div>
<div>Another tidbit from this article is that certain drugs are &#8220;better than placebo&#8221; when tested in France but not when tested in the USA. &nbsp;Apparently there are social considerations as well as individual effects.</div>
<p />
<div>Also, the following snippet was interesting too&#8211;a 3-way placebo trial was undertaken with no actual drug or treatment at all! &nbsp;Here&#8217;s how it went:</div>
<p />
<div></div>
<blockquote type="cite"><div>In a study last year, Harvard Medical School researcher Ted Kaptchuk devised a clever strategy for testing his volunteers&#8217; response to varying levels of therapeutic ritual. The study focused on irritable bowel syndrome, a painful disorder that costs more than $40 billion a year worldwide to treat. First the volunteers were placed randomly in one of three groups. One group was simply put on a waiting list; researchers know that some patients get better just because they sign up for a trial. Another group received placebo treatment from a clinician who declined to engage in small talk. Volunteers in the third group got the same sham treatment from a clinician who asked them questions about symptoms, outlined the causes of IBS, and displayed optimism about their condition.</div>
<p />
<div>Not surprisingly, the health of those in the third group improved most. In fact, just by participating in the trial, volunteers in this high-interaction group got as much relief as did people taking the two leading prescription drugs for IBS. And the benefits of their bogus treatment persisted for weeks afterward, contrary to the belief—widespread in the pharmaceutical industry—that the placebo response is short-lived.</div>
</blockquote>
<p style="font-size: 10px;"> <a href="http://posterous.com">Posted via email</a>  from <a href="http://canadaduane.posterous.com/reframing-the-placebo-effect-its-part-of-the">Duane&#8217;s Quick Posts</a> </p>
]]></content:encoded>
			<wfw:commentRss>http://blog.inquirylabs.com/2010/01/05/reframing-the-placebo-effect-its-part-of-the-bodys-healing-system/feed/</wfw:commentRss>
		</item>
		<item>
		<title>Love is when the objective of the species overcomes the objective of the specimen</title>
		<link>http://blog.inquirylabs.com/2009/12/20/love-is-when-the-objective-of-the-species-overcomes-the-objective-of-the-specimen/</link>
		<comments>http://blog.inquirylabs.com/2009/12/20/love-is-when-the-objective-of-the-species-overcomes-the-objective-of-the-specimen/#comments</comments>
		<pubDate>Sun, 20 Dec 2009 20:02:27 +0000</pubDate>
		<dc:creator>Duane Johnson</dc:creator>
		
		<category><![CDATA[Uncategorized]]></category>

		<guid isPermaLink="false">http://blog.inquirylabs.com/2009/12/20/love-is-when-the-objective-of-the-species-overcomes-the-objective-of-the-specimen/</guid>
		<description><![CDATA[ Posted via email  from Duane&#8217;s Quick Posts 
]]></description>
			<content:encoded><![CDATA[<p style="font-size: 10px;"> <a href="http://posterous.com">Posted via email</a>  from <a href="http://canadaduane.posterous.com/love-is-when-the-objective-of-the-species-ove">Duane&#8217;s Quick Posts</a> </p>
]]></content:encoded>
			<wfw:commentRss>http://blog.inquirylabs.com/2009/12/20/love-is-when-the-objective-of-the-species-overcomes-the-objective-of-the-specimen/feed/</wfw:commentRss>
		</item>
		<item>
		<title>Why not write log files in JSON format?</title>
		<link>http://blog.inquirylabs.com/2009/12/16/why-not-write-log-files-in-json-format/</link>
		<comments>http://blog.inquirylabs.com/2009/12/16/why-not-write-log-files-in-json-format/#comments</comments>
		<pubDate>Wed, 16 Dec 2009 21:56:23 +0000</pubDate>
		<dc:creator>Duane Johnson</dc:creator>
		
		<category><![CDATA[Uncategorized]]></category>

		<category><![CDATA[bash]]></category>

		<category><![CDATA[json]]></category>

		<category><![CDATA[ruby]]></category>

		<guid isPermaLink="false">http://blog.inquirylabs.com/2009/12/16/why-not-write-log-files-in-json-format/</guid>
		<description><![CDATA[Log files were invented long before the JSON data exchange format existed. &#160;In fact, they bring a sort of crisp 1970s feel whenever I look at them&#8230; text files streaming across a terminal screen. &#160;It&#8217;s almost like the Matrix&#8212;anyone who sees text files streaming across a terminal instantly believes we might be hackers. &#160;But I [...]]]></description>
			<content:encoded><![CDATA[<p>Log files were invented long before the JSON data exchange format existed. &nbsp;In fact, they bring a sort of crisp 1970s feel whenever I look at them&#8230; text files streaming across a terminal screen. &nbsp;It&#8217;s almost like the Matrix&#8212;anyone who sees text files streaming across a terminal instantly believes we might be hackers. &nbsp;But I don&#8217;t think log files are that cool.
<p />
<div>To be honest, I wonder why they are still in line-text format. &nbsp;I realize it&#8217;s good to be able to process log files quickly (grep, sed, perl), but imagine the useful metadata that could be gleaned from log files&#8212;if only they allowed for metadata. &nbsp;Is it time to start producing JSON log files? &nbsp;It might be worth a look. &nbsp;Here&#8217;s why I began moving in this direction.
<p />
<div>I first started noticing a need for something more than a line of text when this sort of thing started showing up in my log files:</div>
<p />
<div>
<div></div>
<blockquote type="cite"><div>I, [2009-12-16T13:24:59.264678 #13623] &nbsp;INFO &#8212; : [app:des.rb, line:26] Encode file: blah -&gt;&nbsp;</div>
</blockquote>
<p />
<div>The area of focus here is the second set of square brackets,&nbsp;[app:des.rb, line:26]. &nbsp;I was essentially starting to &#8220;tag&#8221; my log output so that I could tell where the lines were coming from. &nbsp;Next, I realized some of the log lines that were reporting the results of executing external commands could benefit from metadata. &nbsp;I started tagging my log lines with things like &#8220;shell:true&#8221; with additional metadata such as &#8220;process_id:39212&#8243; and &#8220;status_code:0&#8243; (process return code for &#8220;success&#8221;).</div>
<p />
<div>Finally, I started to wonder, &#8220;Why am I not using JSON for this?&#8221; &nbsp;I couldn&#8217;t think of a good reason except that JSON requires an (opening square brace) [ to begin and a (closing square brace) ] to end. &nbsp;Why not add an open square bracket to the beginning of an empty log file, and let it hang open forever? &nbsp;Here&#8217;s my new&nbsp;<a href="http://gist.github.com/258122">Ruby logging code</a>:</div>
<p />
<script src="http://gist.github.com/258122.js"></script></p>
<div></div>
<blockquote type="cite"><div>log(&#8221;Encoding file&#8221;, :level =&gt; &#8220;info&#8221;) # info is the default and can be omitted</div>
<div>log(&#8221;Unable to encode&#8221;, :level =&gt; &#8220;error&#8221;, :reason =&gt; &#8220;missing command &#8216;des&#8217;&#8221;)</div>
</blockquote>
<p />
<div>The resulting log file looks like this:</div>
<p />
<div>
<div></div>
<blockquote type="cite"><div>[{"level":"info","msg":"Encoding file","time":"2009-12-16 14:15:10 -0600","caller":["\/Users\/duanejohnson\/bin\/test.rb:10:in `&lt;main&gt;'"]},</div>
<div>{&#8221;level&#8221;:&#8221;error&#8221;,&#8221;reason&#8221;:&#8221;missing command &#8216;des&#8217;&#8221;,&#8221;msg&#8221;:&#8221;Unable to encode&#8221;,&#8221;time&#8221;:&#8221;2009-12-16 14:15:10 -0600&#8243;,&#8221;caller&#8221;:["\/Users\/duanejohnson\/bin\/test.rb:11:in `&lt;main&gt;'"]},</div>
</blockquote>
<p />
<div>The hanging comma allows new JSON objects (hashes, essentially) to be appended to the end of the file. &nbsp;A JSON reader then just has to replace the last comma with a closing square brace and it becomes a valid JSON file that can be imported to a database, or searched arbitrarily. &nbsp;It&#8217;s still quite easy to use awk and grep, too, since each &#8220;object&#8221; ends in both a comma *and* a newline.</div>
<p />
<div>Finally, there is a simple way with the common unix tool &#8217;sed&#8217; to replace the final comma with a closing brace, thus making it fairly easy to deal with the hanging comma (thanks to some&nbsp;<a href="http://stackoverflow.com/questions/1917557/how-to-replace-the-last-one-or-two-characters-of-a-file-with-unix-tools">helpful people at stackoverflow</a>&nbsp;for this suggestion):</div>
<p />
<div></div>
<blockquote type="cite"><div>sed &#8216;$ s/,$/]/g&#8217;</div>
</blockquote>
<p />
<div>So, for example, you could fix the hanging comma with the following:</div>
<p />
<div></div>
<blockquote type="cite"><div>cat ruby.hanging.json | sed &#8216;$ s/,$/]/g&#8217; &gt;ruby.log.json</div>
</blockquote>
<p />
<div>I like being able to store more information in my log files this way. &nbsp;It seems to fit my need to zoom in on data subsets and find answers to meaningful questions. &nbsp;Is there anyone else who feels the same way?</div>
<p /></div>
</div>
</div>
<p style="font-size: 10px;"> <a href="http://posterous.com">Posted via email</a>  from <a href="http://canadaduane.posterous.com/why-not-write-log-files-in-json-format">Duane&#8217;s Quick Posts</a> </p>
]]></content:encoded>
			<wfw:commentRss>http://blog.inquirylabs.com/2009/12/16/why-not-write-log-files-in-json-format/feed/</wfw:commentRss>
		</item>
	</channel>
</rss>
