<?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>sirhc.us maxim.us &#187; oscon2008</title>
	<atom:link href="http://sirhc.us/journal/tag/oscon2008/feed/" rel="self" type="application/rss+xml" />
	<link>http://sirhc.us/journal</link>
	<description>the pathological prattle of a primal perl programmer</description>
	<lastBuildDate>Thu, 09 Sep 2010 02:08:30 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.0.1</generator>
		<item>
		<title>OSCON 2008: Wrap Up</title>
		<link>http://sirhc.us/journal/2008/08/03/oscon-2008-wrap-up/</link>
		<comments>http://sirhc.us/journal/2008/08/03/oscon-2008-wrap-up/#comments</comments>
		<pubDate>Mon, 04 Aug 2008 06:37:13 +0000</pubDate>
		<dc:creator>sirhc</dc:creator>
				<category><![CDATA[Conferences]]></category>
		<category><![CDATA[OSCON]]></category>
		<category><![CDATA[oscon08]]></category>
		<category><![CDATA[oscon2008]]></category>

		<guid isPermaLink="false">http://sirhc.us/journal/?p=280</guid>
		<description><![CDATA[My third O&#8217;Reilly Open Source Conference has come and gone. Sure, it ended over a week ago, but this is the first moment I&#8217;ve had a chance to sit down to write this. Last year, I was able to spend &#8230; <a href="http://sirhc.us/journal/2008/08/03/oscon-2008-wrap-up/">Continue reading <span class="meta-nav">&#8594;</span></a>]]></description>
			<content:encoded><![CDATA[<p>My third O&#8217;Reilly Open Source Conference has come and gone.  Sure, it ended over a week ago, but this is the first moment I&#8217;ve had a chance to sit down to write this.  Last year, I was able to spend a few hours with the free wifi at the Portland airport, but this year my flight was scheduled before 7:00 AM, so I was left with little time to write.  As I have the past two years, I had a great time.  It was good to see <a href="http://www.dailyack.com/">Al</a>, <a href="http://www.canspice.org/">Brad</a>, and <a href="http://kevin.scaldeferri.com/blog/">Kevin</a> again.  This year, <a href="http://optimist.geekisp.com/samwise">Sam</a> and Jonathan joined us as well.  While the #oscon IRC channel has surely been vacated by now, I hope see the channel denizens again on Freenode.</p>
<p><a href="http://farm4.static.flickr.com/3068/2702925886_7f2636688c.jpg"><img src="http://farm4.static.flickr.com/3068/2702925886_7f2636688c.jpg" style="float: none;" /></a></p>
<p>About half way through the week I was accused of being a prolific blogger.  Just how prolific, I wondered.  So I went through the list of all of my posts prefixed with &#8220;OSCON 2008,&#8221; including this one.  As it turns out, I wrote a grand total of 17,270 words.  The post for Damian Conway&#8217;s <a href="http://sirhc.us/journal/2008/07/22/oscon-2008-perl-worst-practices/"><i>Perl Worst Practices</i></a> has the dubious distinction of containing the most words, at a scale-tipping 1,209.  Other posts I made during the conference, but not directly related to any sessions totaled 1,608 additional words.  Prolific?  Perhaps.</p>
<p>My primary reason for writing so much about the sessions is for my own reference.  These posts allow me to go back and remind myself of what I did and what I learned.  I just happen to post my notes publicly, because I hope they may be useful or informative for others.  In particular, anyone who couldn&#8217;t join me at OSCON.  Naturally, I was a bit curious to know if anyone was actually reading my articles.  So I checked.</p>
<p><a href="http://sirhc.us/images/blog/oscon2008_site_traffic.png"><img src="http://sirhc.us/images/blog/oscon2008_site_traffic.png" style="float: none;" /></a></p>
<p>I typically receive about four visits per day.  Google&#8217;s Analytics service uses JavaScript to collect data, so I&#8217;m fairly comfortable declaring that my visitors are probably real people using real Web browsers, rather than search engines or even feed readers.  The regularity of visits is curious, though.  I&#8217;ll have to investigate my traffic a bit more closely.  Visits to my site began to rise dramatically on the first day of OSCON, peaking mid-week when the main conference got started.  Hopefully, people are enjoying my writings, because I enjoy doing it.  I&#8217;ve tagged all of my 2008 OSCON posts with the <a href="http://sirhc.us/journal/tag/oscon08/">oscon08</a> tag, which will make it easy to refer to them later.</p>
<p>Thinking back over what I&#8217;ve written, I&#8217;m not completely pleased with the finished product.  I don&#8217;t think attempting to post entries so immediately after each session is the best approach.  In the end, I don&#8217;t believe I&#8217;ve done the topic or the speakers justice.  Next time, I may simply take notes in preparation for a proper article after the fact.  The Tuesday night keynotes, in particular, would have benefited from this treatment.</p>
<p>I&#8217;ve been a fan of <a href="http://en.wikipedia.org/wiki/Damian_Conway">Damian Conway</a> since I first attended one of his talks at a <a href="http://sandiego.pm.org/">San Diego Perl Mongers</a> meeting in late 2005.  Since then, I&#8217;ve been fortunate enough to see him speak at two OSCONs as well as attending his Perl training at my place of employment.  There must be something about Australians, because one of the best presenters at OSCON this year was <a href="http://use.perl.org/~pjf/">Paul Fenwick</a>, also from Down Under.  I highly recommend them both.  Entertaining and educational, a far too uncommon combination.</p>
<p>This year I found that I wasn&#8217;t as excited about OSCON as I have been in the past.  It&#8217;s been more than just this past week, too.  A lot of things that once brought me joy have left me feeling empty.  I didn&#8217;t know why, and assumed that I was simply too busy, trying to juggle too many balls again.  I was wrong, though.</p>
<p>Near the end of the <a href="http://sirhc.us/journal/2008/07/22/oscon-2008-perl-worst-practices/"><i>Perl Worst Practices</i></a> tutorial, Dr. Conway was asked how he became so proficient at what he does.  In response he asked who in the room practiced martial arts.  No one in front of me raised their hand, but I suspect at least one person behind me, in addition to myself, raised their hand.  Disappointed, he cycled through a couple other sports (cycling and tennis, I think) until he received a reasonable response.  The point, of course, was that, like these sports, programming requires passion and should be practiced every day.</p>
<p>That&#8217;s when it hit me.  I don&#8217;t write code every day anymore.  I&#8217;ve been writing code as long as I can remember.  My first <a href="http://en.wikipedia.org/wiki/Hello_world_program">Hello World</a> was written in BASIC at the tender age of four.  Lately, I haven&#8217;t spent any time at all writing code.  I&#8217;ve been waking up early, working long hours, going to bed early, and spending what free time I have left with my pregnant wife.  That has to change.  So now I&#8217;m back to staying up late, doing more work from home, and stealing moments to write code; even if it&#8217;s just a few lines.  I&#8217;m also working on a talk I plan on presenting to my coworkers and would also like to give at <a href="http://www.socallinuxexpo.org/scale7x/">SCALE 7x</a> next year.</p>
<p>Conferences are not always about the tutorials or the sessions.  Sure, they offer plenty of opportunities to learn something new, but that&#8217;s almost a complement to the main event.  It&#8217;s about networking with our peers.  Most importantly, it&#8217;s about revitalization.  My annual pilgrimage to Portland replenishes my spirit.  I return refreshed and full of creative energy.  The trick is maintaining the momentum.</p>
]]></content:encoded>
			<wfw:commentRss>http://sirhc.us/journal/2008/08/03/oscon-2008-wrap-up/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>OSCON 2008: The Expo Floor</title>
		<link>http://sirhc.us/journal/2008/07/26/oscon-2008-the-expo-floor/</link>
		<comments>http://sirhc.us/journal/2008/07/26/oscon-2008-the-expo-floor/#comments</comments>
		<pubDate>Sun, 27 Jul 2008 05:29:45 +0000</pubDate>
		<dc:creator>sirhc</dc:creator>
				<category><![CDATA[Conferences]]></category>
		<category><![CDATA[OSCON]]></category>
		<category><![CDATA[oscon08]]></category>
		<category><![CDATA[oscon2008]]></category>

		<guid isPermaLink="false">http://sirhc.us/journal/?p=225</guid>
		<description><![CDATA[As with previous years, Wednesday and Thursday were highlighted with occasional trips to the expo hall. Not necessarily because we had any real desire to do so, but it was something to do. Exhibitor booths ranged from the large, flashy &#8230; <a href="http://sirhc.us/journal/2008/07/26/oscon-2008-the-expo-floor/">Continue reading <span class="meta-nav">&#8594;</span></a>]]></description>
			<content:encoded><![CDATA[<p>As with previous years, Wednesday and Thursday were highlighted with occasional trips to the expo hall.  Not necessarily because we had any real desire to do so, but it was something to do.  Exhibitor booths ranged from the large, flashy corporate sponsors, competing for prime real estate, to the Open Source projects and organizations, banished to obscurity in the far corners.  I&#8217;ll say this for conference organizers, though; they know how to get people into the expo hall: provide complimentary booze and snacks following the afternoon sessions.  Not that I spoke with any vendors while enjoying these niceties, but I was theoretically in a position to be accosted by the very same companies plying me with alcohol.</p>
<p><a href="http://flickr.com/photos/14933335@N00/2699204654/"><img src="http://farm4.static.flickr.com/3259/2699204654_63757ce564.jpg" /></a></p>
<p>Every conference I&#8217;ve attended&mdash;though that hasn&#8217;t been many&mdash;have used the same gimmick in an attempt to get people to visit vendors.  Each <s>mark</s>attendee is given a &#8220;passport&#8221; with a number of vendors listed.  The goal is to visit each of them and receive a sticker for the effort.  The reward is entry into a contest, the odds of winning being proportional to the number of people who fall for the scam.  I always start out collecting stickers, but quickly realize why I&#8217;ve never gotten as far as entering the contest.  I really hate talking to salespeople.  I&#8217;m not interested in any of the products being pitched and, even if I were, there&#8217;s nothing they can&#8217;t tell me that I can&#8217;t discover for myself on the Web.  At one point, I&#8217;m pretty sure Eric S. Raymond even tried to hand me a flyer&mdash;I&#8217;m unsure if it was about Free Software or <a href="http://www.catb.org/~esr/writings/sextips/intro.html">sex</a>&mdash;but I politely declined and went on my way.</p>
<p>I was pleased to run into Alyson at the Ticketmaster booth.  We met at <a href="http://www.socallinuxexpo.org/scale6x/">SCALE6x</a> in February, where she was again working the Ticketmaster booth, but also assisting us with the Perl Mongers booth.  It was good to catch up with her.  I was sure to tell her how much I admire what she does for the <a href="http://losangeles.pm.org/">Los Angeles Perl Mongers</a> and how I wish we had someone like her in <a href="http://sandiego.pm.org/">San Diego</a>.</p>
<p>Sun actually had a nice booth this year.  They provided a place to relax, snacks, and a wifi network with a hidden ESSID for people fed up with the one provided by the conference.  I didn&#8217;t spend much time there, but I did take advantage of the wifi as I lounged in the O&#8217;Reilly booth.</p>
<p>Amazon was running what I found to be an interesting gimmick in their booth.  &#8220;Ninja&#8221; code.  It was just a bit of self-modifying Perl written out on some poster board.  Tell them what it did and get entered into a raffle.  It was actually a fairly clever way of advertising for talent to hire.  Heck, it got me coming back to the booth a few times, if only to make fun of it.  I did spot some <a href="http://sirhc.us/journal/2008/07/23/ninja-code/">potential improvements</a>.</p>
<p>Intel&#8217;s gimmick this year was actually kind of interesting.  Everyone who visited their booth could receive a sticker with a number on it to wear.  The goal then is to find the person wearing the matching number.  People would post a phone number or Twitter handle on a cork board at the Intel booth for others to find.  I posted my Twitter information but unfortunately my default view only includes friends, not replies.  That, and the ever present <a href="http://en.wikipedia.org/wiki/Twitter#Fail_Whale">fail whale</a> made me miss my partner&#8217;s tweet.  Mere minutes after the raffle on Wednesday, as I was getting ready to throw away my sticker, I hear Jonathan call out to me that he&#8217;s found my partner.  As it turns out, there would be another drawing on Thursday, so we went ahead and entered.  That led to an extremely annoying sales pitch.  He wanted us to tell him about <a href="http://sirhc.us/journal/2008/07/23/oscon-2008-moblinorg/">Moblin</a>.  Just to spite him, I told him about <a href="http://www.qctconnect.com/products/snapdragon.html">Snapdragon</a> instead.  What do I keep telling myself?  Stupid gimmick contests aren&#8217;t worth it.  What I did like about it was the social aspect.  I met someone new, had a pleasant conversation, and he&#8217;s now following me on Twitter.</p>
<p>On Thursday at the O&#8217;Reilly booth, <a href="http://www.canspice.org/">Brad</a> was interviewed on camera by <a href="http://www.wgz.org/chromatic/">chromatic</a>.  I expressed my desire to see it play during a keynote, but that wasn&#8217;t meant to be.  Brad uses Perl to do cool things with <a href="http://www.jach.hawaii.edu/">telescopes</a> and munge astronomical data, which is of interest to the O&#8217;Reilly editors.  He&#8217;s been asked to write an article about it, and I&#8217;m trying to convince him to give a talk at next year&#8217;s Open Source Conference.</p>
<p>[tags]oscon, oscon08, oscon2008[/tags]</p>
]]></content:encoded>
			<wfw:commentRss>http://sirhc.us/journal/2008/07/26/oscon-2008-the-expo-floor/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>OSCON 2008: Perl and Parrot</title>
		<link>http://sirhc.us/journal/2008/07/25/oscon-2008-perl-and-parrot/</link>
		<comments>http://sirhc.us/journal/2008/07/25/oscon-2008-perl-and-parrot/#comments</comments>
		<pubDate>Fri, 25 Jul 2008 18:22:58 +0000</pubDate>
		<dc:creator>sirhc</dc:creator>
				<category><![CDATA[Conferences]]></category>
		<category><![CDATA[myths]]></category>
		<category><![CDATA[OSCON]]></category>
		<category><![CDATA[oscon08]]></category>
		<category><![CDATA[oscon2008]]></category>
		<category><![CDATA[Perl]]></category>
		<category><![CDATA[Tim Bunce]]></category>

		<guid isPermaLink="false">http://sirhc.us/journal/?p=276</guid>
		<description><![CDATA[It&#8217;s the first session on Friday and I&#8217;m in Perl and Parrot: Baseless Myths and Startling Realities with Tim Bunce. As people were filtering in from the break, Tim displayed one of my favorite xkcd comics for us to enjoy. &#8230; <a href="http://sirhc.us/journal/2008/07/25/oscon-2008-perl-and-parrot/">Continue reading <span class="meta-nav">&#8594;</span></a>]]></description>
			<content:encoded><![CDATA[<p>It&#8217;s the first session on Friday and I&#8217;m in <a href="http://en.oreilly.com/oscon2008/public/schedule/detail/3242">Perl and Parrot: Baseless Myths and Startling Realities</a> with Tim Bunce.  As people were filtering in from the break, Tim displayed one of my favorite <a href="http://xkcd.com/224/">xkcd comics</a> for us to enjoy.</p>
<p>There are so many <s>holy wars</s> debates about whether one language is better than another.  Instead, the right question to ask is whether or not the developer&#8217;s skill set is right for the job.  I agree.  When I look for a developer, I&#8217;m more concerned with how they think than in what language they think.</p>
<p>Unfortunately, Tim is preaching to the converted in this talk.  Nearly the entire attendance already uses Perl and don&#8217;t believe the myths.  With that, let&#8217;s conquer them anyway.</p>
<p><b>Perl is Dead</b></p>
<p>No it isn&#8217;t.  It&#8217;s two decades old and still growing strong.  The books aren&#8217;t flying off the presses with great speed because the Perl community already has excellent books.</p>
<p>The trend when searching for &#8220;web development&#8221; jobs shows Perl growing very slowly in relation to other languages, particularly PHP.  However, searching for &#8220;developer&#8221; jobs shows Perl growing very strongly and holding its own extremely well.</p>
<p>As a lurking member of the Perl community and an active member of my <a href="http://sandiego.pm.org/">local Perl Mongers group</a>, it&#8217;s been my experience that Perl programmers tend to be quite happy with their jobs.  Which, unfortunately, has made it very difficult for me to find talent.</p>
<p>In fact, Perl is growing faster than ever.  A simple look at how much work is going into CPAN will show that.  The community is strong and Perl is everywhere.</p>
<p><b>Perl Is Hard to Read / Test / Maintain</b></p>
<p>Only if you&#8217;re doing it wrongly.  We have <a href="http://oreilly.com/catalog/9780596001735/">Perl Best Practices</a>, to use as the default documentation for coding standards, leaving developers with the need to only document when they deviate from the norm.  There&#8217;s <a href="http://search.cpan.org/dist/Perl-Tidy/">Perl::Tidy</a>, to force any Perl code into one&#8217;s own personal style.  <a href="http://search.cpan.org/dist/Perl-Critic/">Perl::Critic</a> for ensuring that code is being well-written and follows best practices.  And there&#8217;s no end to the Test::* modules and the work being done to make testing easy.  There&#8217;s even a <a href="http://search.cpan.org/dist/Devel-Cover/">coverage analysis tool</a>.</p>
<p><b>Perl 6 is Killing Perl 5</b></p>
<p>In fact, Perl 6 saved Perl 5, but one has to be close to the center of the community to see that.  One should notice that Perl 5.8 and 5.10 have both been released in the time that Perl 6 has been in development.</p>
<p>There is a culture of testing around Perl.  So many tests have been written for Perl 6, and the language is being defined by its test suite.  This culture has leaked out to the community.  In fact, I find there now exists a lot of peer pressure in the community to do proper testing.</p>
<p><b>Perl 6 Is Not Perl</b></p>
<p>Yes, and no.  Unfortunately, I was so busy trying to catch up with the last section that I missed most of the points Tim made.  In the end, I feel that this is fine.  If Perl 6 was supposed to be Perl 5, why not just use the perfectly decent, already existing Perl 5?  Which is still being actively developed.</p>
<p><b>Perl 6 Will Never Be Ready</b></p>
<p>It&#8217;s not on a schedule and, if it were on a schedule, it would be crap.  It will be ready when it&#8217;s ready.  Better to do it right than screw it up.  The development model encourages a lot of experimentation, and it&#8217;s difficult to schedule experimentation.</p>
<p><b>There&#8217;s No Perl 6 Code</b></p>
<p>Sure there is.  Thousands of lines of Perl 6 code exist in the test suite that came about from Pugs.  These very same tests are being used in Perl 6 development today in the form of Rakudo, Perl 6 on Parrot.</p>
<p>The important thing to note is that Perl 6 refers to a specification.  It does not refer to a particular implementation.  Any implementation that passes the test suite may call itself Perl 6.</p>
<p>From an authority in the audience (who I don&#8217;t recognize, unfortunately), we have been told that there will be a useable Perl 6 by this Christmas.  A round of applause ensued.</p>
<p>[tags]oscon, oscon08, oscon2008, Perl, Tim Bunce, myths[/tags]</p>
]]></content:encoded>
			<wfw:commentRss>http://sirhc.us/journal/2008/07/25/oscon-2008-perl-and-parrot/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>OSCON 2008: Friday Morning Keynotes</title>
		<link>http://sirhc.us/journal/2008/07/25/oscon-2008-friday-morning-keynotes/</link>
		<comments>http://sirhc.us/journal/2008/07/25/oscon-2008-friday-morning-keynotes/#comments</comments>
		<pubDate>Fri, 25 Jul 2008 17:18:08 +0000</pubDate>
		<dc:creator>sirhc</dc:creator>
				<category><![CDATA[Conferences]]></category>
		<category><![CDATA[OSCON]]></category>
		<category><![CDATA[oscon08]]></category>
		<category><![CDATA[oscon2008]]></category>

		<guid isPermaLink="false">http://sirhc.us/journal/?p=271</guid>
		<description><![CDATA[The Friday morning keynotes opened with a video demonstration of the capabilities of Blender. Apparently, it renders scenes using crappy 80s computer-generated music. It&#8217;s no Wall-E, but it&#8217;s quite pretty. First up this morning Allison introduced Benjamin Mako Hill of &#8230; <a href="http://sirhc.us/journal/2008/07/25/oscon-2008-friday-morning-keynotes/">Continue reading <span class="meta-nav">&#8594;</span></a>]]></description>
			<content:encoded><![CDATA[<p>The Friday morning keynotes opened with a video demonstration of the capabilities of <a href="http://www.blender.org/">Blender</a>.  Apparently, it renders scenes using crappy 80s computer-generated music.  It&#8217;s no <a href="http://en.wikipedia.org/wiki/WALL-E">Wall-E</a>, but it&#8217;s quite pretty.</p>
<p>First up this morning Allison introduced Benjamin Mako Hill of the MIT Center for Future Civic Media.  He will be speaking about <a href="http://en.oreilly.com/oscon2008/public/schedule/detail/4449">Advocating Software Freedom by Revealing Errors</a>.  He seems to be far too highly caffeinated for the room this morning, and is speaking very quickly, and the sound system is too loud, so I don&#8217;t entirely know what&#8217;s going on.</p>
<p>The gist of the talk is that, when errors become visible to the user, it exposes something about the underlying technology.  He&#8217;s provided several obvious examples of ATMs crashing with Windows errors.  He runs the <a href="http://revealingerrors.com/">Revealing Errors Blog</a>, too.</p>
<p>Next up is Dawn Nafus of Intel, speaking about <a href="http://en.oreilly.com/oscon2008/public/schedule/detail/4546">Three Challenges</a>.  Unlike most speakers at OSCON, she is an anthropologist.  There is a notion, particularly in the mobile devices industry, is that adding more and more data is equivalent to adding context.  This is phenomenally untrue.  Data without context is, more often than not, useless.</p>
<p>Her second challenge is the global food crisis in food and water, particularly in the developing world.  We Open Source folks are quite good at decentralizing power, just look at how so many of our projects are organized.  Technology is fast going mobile, and as these devices become cheaper, they are more easily put into the hands of people in the Third World.  There are many applications for this technology, we just need to be creative about how we go about taking advantage of this proliferation in technology.</p>
<p>The third challenge is to strengthen global growth in technology producers, not just consumers.  We must better understand where growth is coming from.</p>
<p>Annoyingly, we have another speaker from Microsoft this year, Sam Ramji.  He&#8217;s, apparently, here to tell us about <a href="http://en.oreilly.com/oscon2008/public/schedule/detail/4779">Open Source Heroes</a>.  He&#8217;s telling us about platform trends, something we already know about.  There&#8217;s some slide about applications moving into Internet moving into Web applications over the time frame 1995 through 2005.</p>
<p>Microsoft sees Open Source growing strong over the next decade, but it&#8217;s hard to take him seriously, given the company&#8217;s history.  While he&#8217;s talking about Microsoft&#8217;s contributions to Open Source projects and the work they&#8217;ve done to improve their ability to work on Windows, I&#8217;m constantly on edge around Microsoft, wondering what they really have planned.  In fact, I may have just answered my own question.  Improving the use on Windows, thus attempting to ensure the continual use of Windows.  They&#8217;re desperate to hold on to the market share they&#8217;ve so deceitfully gained.</p>
<p>This talk can be summed up as, Hey look, we&#8217;re not evil, look at this boringly enumerated list of Open Source stuff we&#8217;ve done.</p>
<p>He&#8217;s announced that Microsoft has become a &#8220;platinum&#8221; sponsor of the Apache Software Foundation.  That doesn&#8217;t sound good to me.  Do people forget the embrace-extend-extinguish history of the company?  Should we really trust them so much?</p>
<p>Next up, refreshingly, is <a href="http://youtube.com/watch?v=9BAJYCKex1M">Tim Bray</a> of Sun Microsystems, speaking to us about <a href="http://en.oreilly.com/oscon2008/public/schedule/detail/4317">Language Inflection Point</a>.  There&#8217;s background music, and he&#8217;s speaking very quickly.  He&#8217;s going over slides demonstrating various ways of measuring the popularity of programming languages.  From search engines to book sales.</p>
<p>He took a survey of the room.  A show of hands for who is using various languages and if we would still use it in an ideal world.  Python and Ruby were the only two languages with a positive delta, more people raised their hands to show that they&#8217;d use it in an ideal world than those who currently use it.</p>
<p>From there, he launched into a discussion of each language and their benefits and drawback as he sees them.  Obviously subjective, but they&#8217;re not entirely bad points.  He never got to Perl, so I&#8217;m a bit disappointed.</p>
<p>Finally, we have Jeremy Ruston of BT Design, who created <a href="http://www.tiddlywiki.com/">TiddlyWiki</a>.  He&#8217;s here to tell us about <a href="http://en.oreilly.com/oscon2008/public/schedule/detail/4780">Learning from Airports</a>.</p>
<p>At airports today, the actual actions of taking off and landing is more a side-show.  There are more shops and things like security lines (and waiting), and the actual arrivals and departures are a very short part of anyone&#8217;s visit.</p>
<p>Airports do serve as an excellent analogy for technology standards.  Single sign-on: passports.  Access tokens: boarding passes. Standard documentation: universal signage.</p>
<p>The keynotes wrapped up with a question and answer session with each of the morning&#8217;s speakers.  The first question, unsurprisingly, was about patents, and what will it take for Microsoft to commit to not using patents against Open Source.  The speaker claims that developers should never have to worry about it, but it was unconvincing.</p>
<p>Unsurprisingly, the majority of the questions were directed to the Microsoft representative.  They ranged from (and I&#8217;m paraphrasing), why Microsoft is evil and patent bashing thinly veiled as questions.  Unfortunately, the presence of the Microsoft <s>shill</s> speaker on stage led to a completely wasted question and answer session.</p>
<p>But now it&#8217;s break time, so I&#8217;m off in search of more coffee.  OSCON starts way too early in the morning.</p>
<p>[tags]oscon, oscon08, oscon2008[/tags]</p>
]]></content:encoded>
			<wfw:commentRss>http://sirhc.us/journal/2008/07/25/oscon-2008-friday-morning-keynotes/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>OSCON 2008, Day 5</title>
		<link>http://sirhc.us/journal/2008/07/25/oscon-2008-day-5/</link>
		<comments>http://sirhc.us/journal/2008/07/25/oscon-2008-day-5/#comments</comments>
		<pubDate>Fri, 25 Jul 2008 15:06:39 +0000</pubDate>
		<dc:creator>sirhc</dc:creator>
				<category><![CDATA[Conferences]]></category>
		<category><![CDATA[OSCON]]></category>
		<category><![CDATA[oscon08]]></category>
		<category><![CDATA[oscon2008]]></category>

		<guid isPermaLink="false">http://sirhc.us/journal/?p=269</guid>
		<description><![CDATA[Friday morning, and I&#8217;m sad the week is over. However, I&#8217;m a bit happy, as well. In shortly over 24 hours, I&#8217;ll be home. I love attending OSCON, but it takes its toll. For example, one of the things that &#8230; <a href="http://sirhc.us/journal/2008/07/25/oscon-2008-day-5/">Continue reading <span class="meta-nav">&#8594;</span></a>]]></description>
			<content:encoded><![CDATA[<p>Friday morning, and I&#8217;m sad the week is over.  However, I&#8217;m a bit happy, as well.  In shortly over 24 hours, I&#8217;ll be home.  I love attending OSCON, but it takes its toll.  For example, one of the things that makes getting to breakfast difficult is all the free beer available to us.  One might ask, Why not just avoid partaking of the local nectars and get a good night&#8217;s sleep instead.  To that I say, Are you crazy?  There&#8217;s beer!  And it&#8217;s free!  As in beer!</p>
<p>SourceForge held a couple of parties for us last night.  One was at the <a href="http://www.jupiterhotel.com/">Jupiter Hotel</a> and the other, branded BeerForge, was at a party venue down the block from the hotel.  Obviously, we attended both&mdash;twice.</p>
<p>Josh and I started out at BeerForge.  After a while we got hungry and found Brad, Alice, and Sam over at the SourceForge awards party.  As things got too crowded, we all went over to BeerForge.  As the venue grew too hot and loud, we ended up back at the SourceForge location, where we could be outside at least.  After that venue closed down, Josh and I went back to my hotel room to polish off a growler&mdash;a half gallon&mdash;of beer I had picked up at Rogue the night before.</p>
<p>I&#8217;m now at breakfast, after a whole four hours of sleep, and extremely thankful for the coffee, fruit, and pastries that have been laid out for us.  The fresh air and the walk to the convention center helped, too.  This week&#8217;s festivities make me almost want to take a pass on the <a href="http://www.oregonbrewfest.com/">Oregon Brewers Festival</a>.  I said, almost.</p>
<p>Fortunately, there are only two sessions today, leaving me with only two decisions to make.  However, after a more careful review of the schedule, the choices seem obvious.</p>
<p>First, Tim Bunce is giving a talk on <a href="http://en.oreilly.com/oscon2008/public/schedule/detail/3242">Perl and Parrot: Baseless Myths and Startling Realities</a>.  I&#8217;m not as enthusiastic about Perl 6 as I once was, but I quite enjoy Tim&#8217;s sessions.  Following Tim, in the same room, is Damian Conway.  He&#8217;ll be presenting&mdash;oh, does it even matter?</p>
<p>I will be faced with a bit of a dilemma tonight.  My flight home is scheduled for 6:40am tomorrow morning.  However, the <a href="http://trimet.org/max/">MAX</a> light rail ends its service at midnight and doesn&#8217;t resume until 4:30am.  Several years ago this may have been acceptable, but not in the airports of today.  So my options are to get a couple hours of sleep followed by calling a town car, or check out of the hotel tonight and make my way to the airport before the MAX service terminates for the night.  Quite honestly, arriving at the airport six and a half hours early is still shorter than some of the layovers I&#8217;ve had.</p>
<p>Well, I&#8217;m going to finish my breakfast and tag some <a href="http://flickr.com/photos/14933335@N00/">photos</a>.  In just under an hour, the final day of keynotes&mdash;and thus of OSCON&mdash;get started.</p>
]]></content:encoded>
			<wfw:commentRss>http://sirhc.us/journal/2008/07/25/oscon-2008-day-5/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>OSCON 2008: State of the Onion</title>
		<link>http://sirhc.us/journal/2008/07/24/oscon-2008-state-of-the-onion/</link>
		<comments>http://sirhc.us/journal/2008/07/24/oscon-2008-state-of-the-onion/#comments</comments>
		<pubDate>Fri, 25 Jul 2008 02:07:55 +0000</pubDate>
		<dc:creator>sirhc</dc:creator>
				<category><![CDATA[Conferences]]></category>
		<category><![CDATA[Larry Wall]]></category>
		<category><![CDATA[OSCON]]></category>
		<category><![CDATA[oscon08]]></category>
		<category><![CDATA[oscon2008]]></category>
		<category><![CDATA[Perl]]></category>
		<category><![CDATA[State of the Onion]]></category>

		<guid isPermaLink="false">http://sirhc.us/journal/?p=264</guid>
		<description><![CDATA[It&#8217;s finally time for the State of the Onion. Larry Wall introduced this year&#8217;s theme, Rules That Are Meant to be Broken. If he had Perl to do all over again, what would he do different? Only two things, nothing, &#8230; <a href="http://sirhc.us/journal/2008/07/24/oscon-2008-state-of-the-onion/">Continue reading <span class="meta-nav">&#8594;</span></a>]]></description>
			<content:encoded><![CDATA[<p>It&#8217;s finally time for the <a href="http://en.oreilly.com/oscon2008/public/schedule/detail/4871">State of the Onion</a>.  Larry Wall introduced this year&#8217;s theme, <i>Rules That Are Meant to be Broken</i>.</p>
<p>If he had Perl to do all over again, what would he do different?  Only two things, nothing, and everything.  Perl 6 is the everything part of the answer.</p>
<p>In Perl 5, one of the problems that creeps up is that regular expressions (regexes) are strings.  The best example of this is variable interpolation in regexes.  In Perl 6, this has been fixed.  They are now their own language.</p>
<p>Like cargo-cult programming, parsing has turned into its own cargo-cult.  Perl 6 breaks the mold when it comes to copying languages (the old lex/yacc loop), and instead uses polymorphism in its sub-language design.</p>
<p>Both regexes, double quoted strings, and single quoted strings are examples of sub-languages in Perl 6.  Each of these sub-languages has its own parsing rules and therefore parsing implementations.  This allows is code reuse.  Parsers can derive behavior from other parsers, but treat the tokens differently as necessary.</p>
<p>Fundamentally, Perl 6 is very simple.  It has no <code>CORE</code>.  It has no built-ins and no operators.  What Perl 6 has given us (will give us?), in effect, is a just in time lexer.  Tokens and their behavior can be defined on the fly, on a per-sub-language basis.</p>
<p>There are quite a few changes to the regularity of regular expressions.  Mostly what this means is that Perl 6 regexes are incompatible with those used in Perl 5, and that Perl-compatible regular expressions (PCRE) aren&#8217;t (or won&#8217;t be).</p>
<p>All languages tend to fall into the One True Syntax trap.  Perl 6 has aimed to break out of that trap.  By giving the user enough power over the syntax (rope) to design the language that suits them (hang themselves).</p>
<p>I didn&#8217;t enjoy the State of the Onion as much as I have in the past.  I suppose that&#8217;s to be expected.  Larry did warn us at the top of the talk that it would be serious and contain only a single joke.  For as great a writer as Larry is, his ability as a public speaker is lacking.  That&#8217;s okay, though.  I&#8217;d rather he not shift focus away from the design and development of Perl.</p>
<p>[tags]oscon, oscon08, oscon2008, Perl, State of the Onion, Larry Wall[/tags]</p>
]]></content:encoded>
			<wfw:commentRss>http://sirhc.us/journal/2008/07/24/oscon-2008-state-of-the-onion/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>OSCON 2008: Perl Lightning Talks</title>
		<link>http://sirhc.us/journal/2008/07/24/oscon-2008-perl-lightning-talks/</link>
		<comments>http://sirhc.us/journal/2008/07/24/oscon-2008-perl-lightning-talks/#comments</comments>
		<pubDate>Fri, 25 Jul 2008 01:03:22 +0000</pubDate>
		<dc:creator>sirhc</dc:creator>
				<category><![CDATA[Conferences]]></category>
		<category><![CDATA[Lightning Talks]]></category>
		<category><![CDATA[OSCON]]></category>
		<category><![CDATA[oscon08]]></category>
		<category><![CDATA[oscon2008]]></category>
		<category><![CDATA[Perl]]></category>

		<guid isPermaLink="false">http://sirhc.us/journal/?p=261</guid>
		<description><![CDATA[It&#8217;s 4:30pm on Thursday and that means it&#8217;s time for the Perl Lightning Talks. The crowd is excitedly gathering, but there are still plenty of seats as I write this. Sorry guys, these are five minute talks. If I start &#8230; <a href="http://sirhc.us/journal/2008/07/24/oscon-2008-perl-lightning-talks/">Continue reading <span class="meta-nav">&#8594;</span></a>]]></description>
			<content:encoded><![CDATA[<p>It&#8217;s 4:30pm on Thursday and that means it&#8217;s time for the <a href="http://en.oreilly.com/oscon2008/public/schedule/detail/2501">Perl Lightning Talks</a>.  The crowd is excitedly gathering, but there are still plenty of seats as I write this.</p>
<p>Sorry guys, these are five minute talks.  If I start summarizing, I&#8217;ll fall way behind.  You&#8217;re lucky I even take the time to write this.</p>
<p>If you really want to know what&#8217;s going on, there&#8217;s a <a href="http://www.justanotherperlhacker.org/lightning/2008oscon.shtml">schedule</a>.</p>
<p>For those of you still reading, here&#8217;s a bit of stream-of-consciousness for you.  Note, if trying to match these up to the schedule, they are in order, but I didn&#8217;t comment on all of them.</p>
<hr />
<p><a href="http://pgfoundry.org/projects/pgtap/">Testing databases with TAP</a> is cool.  You really can test anything with it.</p>
<hr />
<p>Nice to see The Perl Foundation get some slots in Google&#8217;s Summer of Code this year.</p>
<hr />
<p>It&#8217;s interesting to see how much Perl is used to compile USA Today every day.  Without Perl, it would be a very empty paper.  Though I&#8217;m not convinced the content would be much different.</p>
<hr />
<p>Schwern tells us that, in thirty years, time will wrap.</p>
<pre>
$time = 2**31 - 1;
print scalar gmtime $time;

<i>Tue Jan 19 03:14:07 2038</i>

$time = 2**31;
print scalar gmtime $time;

<i>Fri Dec 13 20:45:52 1901</i>
</pre>
<p>Wait, that&#8217;s not good.  But he&#8217;s fixed it.</p>
<hr />
<p>Sweet, <a href="http://code.google.com/p/perl-appengine/">Perl on Google App Engine</a>!</p>
<hr />
<p>Use <a href="http://search.cpan.org/dist/autodie/">autodie</a> instead of <a href="http://perldoc.perl.org/Fatal.html">Fatal</a>.  It&#8217;s better.</p>
<p>Also, <a href="http://use.perl.org/~pjf/">Paul Fenwick</a> is one of the best speakers I&#8217;ve seen in ages.  I hope he becomes an OSCON staple.</p>
<hr />
<p><i>F*ck, the F*cking thing is F*cked</i> had the best slides.</p>
<p><a href="http://ipv6experiment.com/">IPv6Experiment.com</a> (warning: there may be porn).</p>
<p>[tags]oscon, oscon08, oscon2008, Perl, lightning talks[/tags]</p>
]]></content:encoded>
			<wfw:commentRss>http://sirhc.us/journal/2008/07/24/oscon-2008-perl-lightning-talks/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>OSCON 2008: Hacking Wetware for Fun and Profit</title>
		<link>http://sirhc.us/journal/2008/07/24/oscon-2008-hacking-wetware-for-fun-and-profit/</link>
		<comments>http://sirhc.us/journal/2008/07/24/oscon-2008-hacking-wetware-for-fun-and-profit/#comments</comments>
		<pubDate>Thu, 24 Jul 2008 22:09:22 +0000</pubDate>
		<dc:creator>sirhc</dc:creator>
				<category><![CDATA[Conferences]]></category>
		<category><![CDATA[OSCON]]></category>
		<category><![CDATA[oscon08]]></category>
		<category><![CDATA[oscon2008]]></category>
		<category><![CDATA[People]]></category>

		<guid isPermaLink="false">http://sirhc.us/journal/?p=259</guid>
		<description><![CDATA[My second mid-afternoon session is Hacking Wetware for Fun and Profit with Paul Fenwick. Andy Lester introduced Paul, and basically said he was awesome and couldn&#8217;t figure out how it is he&#8217;s never been in this country to speak before. &#8230; <a href="http://sirhc.us/journal/2008/07/24/oscon-2008-hacking-wetware-for-fun-and-profit/">Continue reading <span class="meta-nav">&#8594;</span></a>]]></description>
			<content:encoded><![CDATA[<p>My second mid-afternoon session is <a href="http://en.oreilly.com/oscon2008/public/schedule/detail/3107">Hacking Wetware for Fun and Profit</a> with Paul Fenwick.  Andy Lester introduced Paul, and basically said he was awesome and couldn&#8217;t figure out how it is he&#8217;s never been in this country to speak before.</p>
<p>Paul&#8217;s preferred title for this talk is <i>Human Interfaces for Geeks</i>.  Most geeks think of things like keyboards, mice, and monitors when it comes to interfaces.  But that&#8217;s not what this is about.  Those are human-computer interfaces.  We&#8217;re here to talk about human interfaces.  Things like aural or visual communication.</p>
<p>Geeks can be quite awkward when it comes to interfacing with other people.</p>
<p>There are normal people out there who do make sense to geeks do make a lot of sense to geeks, <a href="http://thesims.ea.com/">Sims</a>.  They have wants, fears, and needs.  These are easy to see, because they have status bars.  Unfortunately, real people don&#8217;t have status bars.</p>
<p>One thing learned from the sims, if you want something done, ask a happy person to do it.  They will be far more willing to do it and will end up being far more helpful.  How do you make people happy?  Coffee and chocolate will go a long way towards making people happy and giving a higher priority to your requests.</p>
<p>Even without this kind of base bribery, we can make people happy.  By matching one of their goals to one of our needs.  Humans, when they&#8217;re instantiated, have a set of default goals, and no one ever changes these.  One of the best goals for this is a feeling of importance.  How can you make someone feel important?  Talk about them.</p>
<p>It&#8217;s easy to talk about someone.  Practice active listening.  Essentially, be an Eliza bot.  Listen to what someone is saying, then repeat it back to them in the form of a question.  If they&#8217;ve been on vacation, ask them about it.  If they&#8217;ve accomplished something, ask them about it.  This makes people very happy.</p>
<p>Another way to make someone happy is to make them feel important in front of their peers.  If someone submits a patch, recognize that in front of the community.  I did this once (because I&#8217;ve only ever received one patch for my one and only <a href="http://search.cpan.org/dist/String-MkPasswd/">CPAN module</a>).  Someone from Australia submitted a patch and I put his name in the Changes file.  I know I feel amazingly good when I&#8217;ve done a good job, so I do my best to point out when people have done a good job.</p>
<p>People, particularly in the United States, tend to look at situations in an adversarial way.  When someone wants something and someone else is standing in their way, he will want to force his way past.  This is rarely an effective method.  Instead, those standing in the way are people, too.  The best method is to take action to make that other person feel good about themselves.  When they are happy and feel good about themselves, they are far more likely to go out of their way to help.</p>
<p>This was a good talk.  Geeks rarely read books aimed at management types.  A lot of these books place a lot emphasis on the concept of win-win and interpersonal communication.  It&#8217;s nice to see a geek taking these lessons and putting them into terms other geeks can understand.  We definitely need more geeks with people skills.</p>
<p>[tags]oscon, oscon08, oscon2008, people[/tags]</p>
]]></content:encoded>
			<wfw:commentRss>http://sirhc.us/journal/2008/07/24/oscon-2008-hacking-wetware-for-fun-and-profit/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>OSCON 2008: Ultimate Perl Code Profiling</title>
		<link>http://sirhc.us/journal/2008/07/24/oscon-2008-ultimate-perl-code-profiling/</link>
		<comments>http://sirhc.us/journal/2008/07/24/oscon-2008-ultimate-perl-code-profiling/#comments</comments>
		<pubDate>Thu, 24 Jul 2008 21:35:14 +0000</pubDate>
		<dc:creator>sirhc</dc:creator>
				<category><![CDATA[Conferences]]></category>
		<category><![CDATA[OSCON]]></category>
		<category><![CDATA[oscon08]]></category>
		<category><![CDATA[oscon2008]]></category>
		<category><![CDATA[Perl]]></category>
		<category><![CDATA[profiling]]></category>
		<category><![CDATA[Programming]]></category>

		<guid isPermaLink="false">http://sirhc.us/journal/?p=256</guid>
		<description><![CDATA[Lunch is over and I&#8217;m here to listen to Tim Bunce talk about Ultimate Perl Code Profiling with Devel::NYTProf. The Devel::DProf module is old and a waste of time and is broken. Stop using it. Take it out and shoot &#8230; <a href="http://sirhc.us/journal/2008/07/24/oscon-2008-ultimate-perl-code-profiling/">Continue reading <span class="meta-nav">&#8594;</span></a>]]></description>
			<content:encoded><![CDATA[<p>Lunch is over and I&#8217;m here to listen to Tim Bunce talk about <a href="http://en.oreilly.com/oscon2008/public/schedule/detail/2960">Ultimate Perl Code Profiling</a> with <a href="http://search.cpan.org/Devel-NYTProf/">Devel::NYTProf</a>.</p>
<p>The <a href="http://serch.cpan.org/Devel-DProf/">Devel::DProf</a> module is old and a waste of time and is broken.  Stop using it.  Take it out and shoot it.</p>
<p>The first obvious distinction between profilers is CPU time versus real time.  CPU time tends to be highly granular, but doesn&#8217;t include I/O, context switching, or other kinds of blocking.  That&#8217;s where real time comes in.  It&#8217;s far more useful in the real world.</p>
<p>Tim, as with many of us, is interested in line-based profiling.  It provides a high level of granularity  The total subroutine time is not always useful, particularly in larger subroutines.</p>
<p>The NYTProf module is exremely fast, discounting the time taken by profiling overhead, making it quite a bit more useful for real world analysis.  It also allows profile times per block, and can be aggregated up to the subroutine level.  It&#8217;s a module with dual profilers: line-based and subroutine-based.</p>
<p>It gets better, every location that calls the subroutine keeps separate track of the subroutine time.  This allows us to determine where the majority of the subroutine calls are coming from.  For control flow statements, the decision expression is not taken into account when profiling the block that is executed.  This is useful if the loop control itself takes time that should be discounted.</p>
<p>And that&#8217;s it for the description.  Now we have half an hour to play with it.</p>
<p>The HTML-based reporting is inspired by <a href="http://search.cpan.org/dist/">Devel::Cover</a>&#8216;s reporting.  Reported for each file are the number of statements executed, the time spent in the source file and the line, block, and subroutine reports.  The subroutine reports include the amount of time spent within the subroutine and the amount of time spent in other called subroutines.  The coloring of each line of the report&mdash;red, orange, yellow, and green&mdash;give a relative measure of deviation from the norm.  Very impressive.</p>
<p>Even more impressive, Devel::NYTProf is capable of reporting exactly what a subroutine reference is called, even when it&#8217;s an anonymous subroutine compiled within an <code>eval</code>.  With a handy link also provided, the called code can be easily inspected.</p>
<p>In summary, Devel::NYTProf is awesome.  Use it.  I know I will.</p>
<p>Tim Bunce is even more impressive than most people think he is.  He is the only presenter I&#8217;ve seen so far who has managed to use IRC while giving his talk.  Well, he didn&#8217;t actually type on IRC, but he had Colloquy running in the background.  This particular IRC client uses Apple&#8217;s Growl feature to display notifications when you are mentioned in a channel.  After he&#8217;s opened up the session to questions, one of those notifications pops up on the projected display:</p>
<blockquote><p>
&lt;sirhc&gt; Adam Kennedy (to Tim Bunce): Why are you so awesome?
</p></blockquote>
<p>It got a laugh, and Tim seemed to take it all in stride, even joking that he was not looking very professional on his screen cast.  Important safety tip for session presenters, don&#8217;t leave your IRC client open.</p>
<p>[tags]oscon, oscon08, oscon2008, Perl, programming, profiling[/tags]</p>
]]></content:encoded>
			<wfw:commentRss>http://sirhc.us/journal/2008/07/24/oscon-2008-ultimate-perl-code-profiling/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>OSCON 2008: Perl for Political Campaigns</title>
		<link>http://sirhc.us/journal/2008/07/24/oscon-2008-perl-for-political-campaigns/</link>
		<comments>http://sirhc.us/journal/2008/07/24/oscon-2008-perl-for-political-campaigns/#comments</comments>
		<pubDate>Thu, 24 Jul 2008 21:12:35 +0000</pubDate>
		<dc:creator>sirhc</dc:creator>
				<category><![CDATA[Conferences]]></category>
		<category><![CDATA[OSCON]]></category>
		<category><![CDATA[oscon08]]></category>
		<category><![CDATA[oscon2008]]></category>
		<category><![CDATA[Perl]]></category>
		<category><![CDATA[politics]]></category>
		<category><![CDATA[visualization]]></category>

		<guid isPermaLink="false">http://sirhc.us/journal/?p=254</guid>
		<description><![CDATA[There was nothing interesting for me scheduled for the second session today, so I ended up in Perl for Political Campaigns, presented by Chris &#8220;Pudge&#8221; Nandor. I&#8217;m not entirely sure why I&#8217;m here, but it likely has something to do &#8230; <a href="http://sirhc.us/journal/2008/07/24/oscon-2008-perl-for-political-campaigns/">Continue reading <span class="meta-nav">&#8594;</span></a>]]></description>
			<content:encoded><![CDATA[<p>There was nothing interesting for me scheduled for the second session today, so I ended up in <a href="http://en.oreilly.com/oscon2008/public/schedule/detail/2655">Perl for Political Campaigns</a>, presented by Chris &#8220;Pudge&#8221; Nandor.  I&#8217;m not entirely sure why I&#8217;m here, but it likely has something to do with Perl in the title and Pudge as the presenter.  I must be in the right place, though.  Both Damian Conway and Adam Kennedy are present.</p>
<p>Pudge is, quite famously, a Republican, so he wants poor people to die, he asserts his right to shoot people who jaywalk, and he hates puppies.  Now that we have that out of the way, this will not be a political talk.  Instead, it will be a talk that just happens to use politics as the problem domain for which Perl was the solution (but isn&#8217;t it always?).  Pudge happens to volunteer for the Republican party in Snohomish county, Washington.  I actually know the area fairly well, as my grandmother happens to live there.</p>
<p>Winning elections is all about knowledge.  And blackmail.  But, mostly knowledge.</p>
<p>This session is essentially about data mining.  There are a number of disparate data sources available with information about voters.  From registration and voting history to contact information and preferences&mdash;can or can they not be contacted.  This data is not always easy to access.  For example, there is something called the Voter Vault, which is a super secret database of voter information controlled by the Republican party (there&#8217;s an NDA involved, so we won&#8217;t see any of it).</p>
<p>Essentially, Voter Vault is a really crummy Web application that only works for IE (hence the crummy part).  That&#8217;s where <a href="http://search.cpan.org/dist/WWW-Mechanize/">WWW::Mechanize</a> comes in.  Using this brilliant module, data on any Web site can be retrieved, even if it requires a certain amount of user interaction to access.  This, along with other sites, like the Washington State Public Disclosure Commission, provide all the raw data Pudge needs.</p>
<p>However, raw data is, by itself, not useful to anyone.  This is the reason behind Pudge&#8217;s efforts.  He uses Perl (and some JavaScript) to collect and aggregate all of this data.  Then, once it&#8217;s all compiled, he can use a bit of Perl glue to use the data in Apple&#8217;s Address Book and Mail applications.  But, more importantly, he can visualize it.</p>
<p>For the visualization, Pudge uses everyone&#8217;s favorite new tool, Google Maps.  Using the Ajax API provided by Google, he can embed a map in his own Web application and, next to it, provide controls to enable and disable different views of the data on the map.  For example, candidate donations by city and how much each candidate received.</p>
<p>It gets better.  With the Google Earth APIs available to Google Maps, KML files can be generated (again, with Perl) to provide even better data visualizations.  For example, precinct boundaries can be imported and colored based on voting history.</p>
<p>Initially, I wasn&#8217;t sure how I&#8217;d feel about this talk, but I ended up enjoying it.  It was an excellent presentation on how to take data and display it to users in a useful manner.</p>
<p>[tags]oscon, oscon08, oscon2008, Perl, politics, visualization[/tags]</p>
]]></content:encoded>
			<wfw:commentRss>http://sirhc.us/journal/2008/07/24/oscon-2008-perl-for-political-campaigns/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>OSCON 2008: Stick a fork() in It</title>
		<link>http://sirhc.us/journal/2008/07/24/oscon-2008-stick-a-fork-in-it/</link>
		<comments>http://sirhc.us/journal/2008/07/24/oscon-2008-stick-a-fork-in-it/#comments</comments>
		<pubDate>Thu, 24 Jul 2008 18:45:32 +0000</pubDate>
		<dc:creator>sirhc</dc:creator>
				<category><![CDATA[Conferences]]></category>
		<category><![CDATA[Perl]]></category>
		<category><![CDATA[OSCON]]></category>
		<category><![CDATA[oscon08]]></category>
		<category><![CDATA[oscon2008]]></category>
		<category><![CDATA[Programming]]></category>

		<guid isPermaLink="false">http://sirhc.us/journal/?p=251</guid>
		<description><![CDATA[First session of the day and I&#8217;m in room F150 (brought to you by Ford). The F wing, bereft of wifi. I&#8217;m here for Stick a fork() in It: Parallel and Distributed Perl with Eric Wilhelm of Scratch Computing. It&#8217;s &#8230; <a href="http://sirhc.us/journal/2008/07/24/oscon-2008-stick-a-fork-in-it/">Continue reading <span class="meta-nav">&#8594;</span></a>]]></description>
			<content:encoded><![CDATA[<p>First session of the day and I&#8217;m in room F150 (brought to you by Ford).  The F wing, bereft of wifi.  I&#8217;m here for <a href="http://en.oreilly.com/oscon2008/public/schedule/detail/2748">Stick a fork() in It: Parallel and Distributed Perl</a> with Eric Wilhelm of <a href="http://scratchcomputing.com/">Scratch Computing</a>.  It&#8217;s great to see how popular Perl still is.  It&#8217;s standing room only in here.</p>
<p>A computer once referred to a human worker who would perform calculations.  This was a fairly easy thing to cluster and &#8220;run&#8221; several computers in parallel.  As time progressed, more and faster work was desired.  Enter the electronic computer, and specifically for this talk, the Cray.  As with anything, the inner workings of the Crays of old can be recreated in Perl.  Just use the Cray module, no problem (if only it existed).</p>
<p>After the history lesson, we move into high level overviews of parallelism and pipelineing, and a note about <a href="http://en.wikipedia.org/wiki/Amdahl%27s_law">Amdahl&#8217;s Law</a>.  This was followed up with an example for detecting prime numbers by partitioning the work.</p>
<p>The slide presentation was over in under 20 minutes.  Instead, we&#8217;re jumping straight into code examples.  Awesome.</p>
<p>Or so I thought.  Unfortunately, he&#8217;s been interrupted by multiple people in the audience, who keep wanting to move off into tangential conversations.  Eric is having difficulty bringing the talk under his own control&mdash;it&#8217;s no longer his talk, but that of the somewhat rude fellow in the front row.  Neither is Eric as eloquent when he switches from a prepared talk to demonstrating and explaining real code.  It&#8217;s become far more difficult to pay attention to this session, and I find myself looking at the clock to see how much time we have until the next session.</p>
<p>For real fun, be sure to check out <a href="http://www.canspice.org/">Brad&#8217;s</a> post on Schwern&#8217;s session about <a href="http://www.canspice.org/2008/07/24/oscon-2008-skimmable-code-by-michael-schwern/">skimmable code</a>.</p>
<p>[tags]oscon, oscon08, oscon2008, Perl, programming[/tags]</p>
]]></content:encoded>
			<wfw:commentRss>http://sirhc.us/journal/2008/07/24/oscon-2008-stick-a-fork-in-it/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>OSCON 2008: Thursday Morning Keynotes</title>
		<link>http://sirhc.us/journal/2008/07/24/oscon-2008-thursday-morning-keynotes/</link>
		<comments>http://sirhc.us/journal/2008/07/24/oscon-2008-thursday-morning-keynotes/#comments</comments>
		<pubDate>Thu, 24 Jul 2008 17:12:54 +0000</pubDate>
		<dc:creator>sirhc</dc:creator>
				<category><![CDATA[Conferences]]></category>
		<category><![CDATA[Perl]]></category>
		<category><![CDATA[OSCON]]></category>
		<category><![CDATA[oscon08]]></category>
		<category><![CDATA[oscon2008]]></category>

		<guid isPermaLink="false">http://sirhc.us/journal/?p=239</guid>
		<description><![CDATA[Thursday morning, the conference is more than half way over. It&#8217;s once again time for some keynotes. They opened with an open content video from REM. I don&#8217;t know why. It wasn&#8217;t very good. Our first speaker this morning is &#8230; <a href="http://sirhc.us/journal/2008/07/24/oscon-2008-thursday-morning-keynotes/">Continue reading <span class="meta-nav">&#8594;</span></a>]]></description>
			<content:encoded><![CDATA[<p>Thursday morning, the conference is more than half way over.  It&#8217;s once again time for some keynotes.  They opened with an open content video from REM.  I don&#8217;t know why.  It wasn&#8217;t very good.</p>
<p>Our first speaker this morning is Keith Bergelt of the Open Invention Network, speaking about <a href="http://en.oreilly.com/oscon2008/public/schedule/detail/4789">Open Invention Network and Its Role in Open Source and Linux</a>.  He&#8217;s speaking about patents and intellectual property in Open Source, the realities of it today and where he sees it going tomorrow.  He&#8217;s big on the buzzwords, and this is not the right audience for it.  In fact, a game of <a href="http://en.wikipedia.org/wiki/Buzzword_bingo">Buzzword Bingo</a> has already broken out in the IRC channel.</p>
<p>In summary, &#8220;Blah blah patent blah blah buzzword blah blah we care blah blah.&#8221;</p>
<p>Oh wait, he droned his way to a point.  One of the things the Open Invention Network does, and I should have known because I&#8217;ve seen this before, is to buy up patents and keep Open Source safe from them.  At least, until their funding dries up and they turn to their patent portfolios to squeeze money out of everyone.</p>
<p>I seem cynical this morning.  Maybe I didn&#8217;t get enough sleep.  Or maybe the first keynote today is boring.  The back-channel conversation on IRC is actually quite entertaining, though.  I need to whip up a quick IRC log file analyzer to correlate IRC traffic to keynote speaker.  Then I can use it as a tool to rate speakers.</p>
<p>The pain is finally over, and the program chair has caught buzzworditis from the last speaker.  Next up is Peter H. Salus to speak to us about <a href="http://en.oreilly.com/oscon2008/public/schedule/detail/4547">Anniversaries</a>.  I&#8217;m told by Nat Torkington that Peter is an Unix historian.  He&#8217;s started off by showing us a picture of the first transistor, which is about 20cm and a bit more than that around.  It&#8217;s amazing to see how far we&#8217;ve come in 60 years&mdash;how many iPhones can fit in the same volume?</p>
<p>Anniversaries, in this case, are major milestones in computer history.  The first electronic computer; the first time-sharing system; the first Unix paper by Ritchie and Thompson; the GNU project.  One of the interesting things to learn is that history repeats itself.  Back in the days of ARPANET, there was an issue involving the exhaustion of address space on the network.  Short-sighted problems like that would never <a href="http://en.wikipedia.org/wiki/IPv4_address_exhaustion">happen today</a>, right?</p>
<p>I enjoyed this keynote speech, but probably because I really enjoy history.</p>
<p>Next up, <a href="http://en.oreilly.com/oscon2008/public/schedule/detail/4918">Supporting the Open Web</a> with David Recordon of Six Apart.  It&#8217;s not just the open nature of the software or the platform that matters, but the openness of the data.  Without open data, the Open Web can&#8217;t work.  Interoperability and open specifications are vital to moving forward with the technology.  The Web must be accessible, not just available on one device or another.</p>
<p>The majority of the talk is dedicated to talking about the various organizations doing work to keep everything free and open, including the Open Source Initiative, Creative Commons, and the Apache Foundation.  There are also quite a few people donating a lot of their time to help.</p>
<p>He&#8217;s announcing the formation of the <a href="http://openwebfoundation.org/">Open Web Foundation</a>.  They don&#8217;t necessarily want to form their own foundation, but they have had little luck finding an existing one to do what they&#8217;ve asked.</p>
<p>The Open Web Foundation will focus on four areas: incubation, licensing, copyright, and community.  Many companies, such as Google and Yahoo have already shown support for this new foundation.</p>
<p>Following David is Danese Cooper of the Open Source Initiative and Intel Corporation to speak about <a href="http://en.oreilly.com/oscon2008/public/schedule/detail/4490">Why Whinging Doesn&#8217;t Work</a>.  A catchy title, and she introduced her talk with a funny video of a choir of Finnish women singing about all of the complaints they have (search YouTube for &#8220;<a href="http://www.youtube.com/results?search_query=complaints+choir&#038;search_type=">complaints choir</a>&#8220;).</p>
<p>She&#8217;s making a very good point.  There are so few women in Open Source.  Geek are often intimidated by women and women are so often objectified.  It&#8217;s true, there is a huge gender imbalance in the geek community.  Of all the geeks I know, I can name very few <a href="http://www.snipe.net/">women</a>.  I&#8217;m having a daughter soon, and you know what, she&#8217;s going to learn to code.</p>
<p>However, the feminist angle is merely a way of personally relating to the main point of her talk.  People complain.  I do it, you do it, the guy sitting next to you does it.  But whinging doesn&#8217;t help.  Mostly, all whinging does is beget more whinging.  That energy used to complain needs to be channeled into something constructive.</p>
<p>For seven years, Danese was the only female member of the Open Source Initiative&#8217;s board.  Now 30% of the board members are female.  Progress.</p>
<p>Finally, Nathan Torkington, former OSCON program chair and recently of He Hononga Software, Limited and his keynote, <a href="http://en.oreilly.com/oscon2008/public/schedule/detail/4721">fork() &#038;&#038; exec(): Spawning the Next Generation of Hackers</a>.  Thank goodness, this talk is <i>not</i> about geeks having sex.</p>
<p>I&#8217;ve been looking forward to this keynote for a couple of reasons.  First, I&#8217;ve missed hearing Nat speak this year.  Second, I&#8217;m expecting my first child in a couple of months.  Not only that, two other members of my local <a href="http://www.kernel-panic.org/">Linux User Group</a> are either recent or expecting fathers.  Suddenly, topics involving children are much more interesting to me.</p>
<p>Nat recently moved his family back to New Zealand.  One of the things he does now is to help teach children about computing.  In his school district, the computing infrastructure was awful&mdash;and used Windows.  So he got a handful of Macs and became the Bastard Operator from Hell for his kids&#8217; school.  Then he started teaching the schoolchildren.  Quickly, he discovered that the teachers needed teaching as well.</p>
<p>One more thing he wanted to do was to teach programming.  He feels it&#8217;s a very important skill.  But it has to be done right.  Avoid the frustration that so many of us experience with computing and programming, but something consistent, easy-to-learn, but still powerful.  Nat&#8217;s introduced <a href="http://scratch.mit.edu/">Scratch</a>.  The kids loved it.</p>
<p>Lessons learned:</p>
<ul>
<li>Lectures suck (you have two minutes to say what you want)</li>
<li>The gender gap is not what you think (girls are smarter and more focused than boys)</li>
<li>Keyboards are a challenge</li>
<li>Not a lot of experience with math</li>
<li>Robots are lame</li>
</ul>
<p>So please, volunteer in schools.  Perhaps remove Windows and bring the joy of Linux to their lives.  Find, or create, good courseware, such as Scratch.  Post it on your blog, so everyone can find it.  Finally, don&#8217;t profit.  Do this for the good of the children, our future generation of geeks.</p>
<p>With that, we&#8217;re off to the expo hall for the break.</p>
<p>[tags]oscon, oscon08, oscon2008[/tags]</p>
]]></content:encoded>
			<wfw:commentRss>http://sirhc.us/journal/2008/07/24/oscon-2008-thursday-morning-keynotes/feed/</wfw:commentRss>
		<slash:comments>3</slash:comments>
		</item>
		<item>
		<title>OSCON 2008, Day 4</title>
		<link>http://sirhc.us/journal/2008/07/24/oscon-2008-day-4/</link>
		<comments>http://sirhc.us/journal/2008/07/24/oscon-2008-day-4/#comments</comments>
		<pubDate>Thu, 24 Jul 2008 15:51:54 +0000</pubDate>
		<dc:creator>sirhc</dc:creator>
				<category><![CDATA[Conferences]]></category>
		<category><![CDATA[OSCON]]></category>
		<category><![CDATA[oscon08]]></category>
		<category><![CDATA[oscon2008]]></category>

		<guid isPermaLink="false">http://sirhc.us/journal/?p=240</guid>
		<description><![CDATA[Thursday morning and day four of OSCON is sunnier than the last two have been. Though it&#8217;s still chilly outside, it&#8217;s comfortable inside the convention center, so far. I&#8217;m once again having breakfast in the expo hall after getting too &#8230; <a href="http://sirhc.us/journal/2008/07/24/oscon-2008-day-4/">Continue reading <span class="meta-nav">&#8594;</span></a>]]></description>
			<content:encoded><![CDATA[<p>Thursday morning and day four of OSCON is sunnier than the last two have been.  Though it&#8217;s still chilly outside, it&#8217;s comfortable inside the convention center, so far.  I&#8217;m once again having breakfast in the expo hall after getting too little sleep.</p>
<p>Sadly, yesterday during the morning keynotes, <a href="http://www.dailyack.com/">Al</a> was called back home abruptly.  Hopefully, he made it back to the UK quickly and safely.</p>
<p>After all the sessions were said and done for the day, we found our way to the expo hall, where beer and appetizers were being served.  Alas, we did not stay long.  We caught wind that Google would be hosting pizza across the river at <a href="http://www.oldtownpizza.com/">Old Town Pizza</a>, an event we never made it to.  It turned out to be a pizza dinner for Summer of Code participants.  We finally ended up at <a href="http://www.rogue.com/">Rogue</a> for dinner, and I finally got myself a <a href="http://en.wikipedia.org/wiki/Beer_bottle#Growler">growler</a> for my collection&mdash;currently being held (safely?) in Brad&#8217;s hotel room refrigerator.</p>
<p>After dinner, we swung by the supposed <a href="http://www.amazon.com/">Amazon</a> party.  Only, there wasn&#8217;t one.  It was only held between 8:00pm and 9:00pm.  Seriously?  This is how Amazon throws a party?</p>
<p>Fortunately, the <a href="http://www.sun.com/">Sun</a> party was a better this year.  First of all, they had no stupid <a href="http://sirhc.us/journal/2007/07/25/oscon-2007-opensolaris-party/">lolspeak</a> flyers.  Second, bottled beer instead of kegs, which is difficult for incompetent bartenders to over-prime and serve nothing but head.  Third, <a href="http://www.youtube.com/watch?v=9BAJYCKex1M">sumo wrestling</a>!  <a href="http://www.canspice.org/">Brad</a> and I also participated; those photos are coming soon, I promise.</p>
<p>However, as I actually enjoy attending the keynote sessions&mdash;scheduled far too early in the morning&mdash;I was back in my hotel just after 11:00pm.  I ran into Dan and his fellow <a href="http://www.tierra.net/">TierraNet</a> colleagues in the hotel bar.  Unfortunately, I had missed last call, but I sat down for a bit anyway.  We had some laughs with Margaret, the bartender.  I tried to get her to slap Tyler, but sadly it never happened.</p>
<p>Today&#8217;s session tracks begin with a dilemma.  Unfortunately, I&#8217;d like to be in three places, simultaneously.</p>
<ul>
<li><a href="http://en.oreilly.com/oscon2008/public/schedule/detail/3011">Skimmable Code: Fast to Read, Safe to Change (Michael Schwern)</a></li>
<li><a href="http://en.oreilly.com/oscon2008/public/schedule/detail/4857">Open Source Microblogging (Evan Prodromou)</a></li>
<li><a href="http://en.oreilly.com/oscon2008/public/schedule/detail/2748">Stick a fork() in It: Parallel and Distributed Perl (Eric Wilhelm)</a></li>
</ul>
<p>Fortunately, Brad wants to go to Michael Schwern&#8217;s talk, so I&#8217;ve agreed to attend Eric Wilhelm&#8217;s talk.  We&#8217;ll write summaries and both be happy.  The microblogging session was just a curiosity for me anyway.</p>
<p>The rest of the day won&#8217;t require quite as much rolling of dice.</p>
<ul>
<li><a href="http://en.oreilly.com/oscon2008/public/schedule/detail/2655">Perl for Political Campaigns (Chris Nandor)</a></li>
<li><a href="http://en.oreilly.com/oscon2008/public/schedule/detail/2960">Ultimate Perl Code Profiling (Tim Bunce)</a></li>
<li><a href="http://en.oreilly.com/oscon2008/public/schedule/detail/3107">Hacking Wetware for Fun and Profit (Paul Fenwick)</a></li>
<li><a href="http://en.oreilly.com/oscon2008/public/schedule/detail/2501">Perl Lightning Talks</a></li>
<li><a href="http://en.oreilly.com/oscon2008/public/schedule/detail/4871">State of the Onion Address</a></li>
</ul>
<p>The only potential conflict is during the second half of the Perl lightning talks, <a href="http://en.oreilly.com/oscon2008/public/schedule/detail/2852">A Tasting Tour of Haskell (Bryan O&#8217;Sullivan)</a>.</p>
<p>Just about time for the morning keynotes, and I&#8217;m looking forward to seeing Nat Torkington speak.  If I can reconnect to the wifi network, I can even post this entry.</p>
]]></content:encoded>
			<wfw:commentRss>http://sirhc.us/journal/2008/07/24/oscon-2008-day-4/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>OSCON 2008: An Illustrated History of Failure</title>
		<link>http://sirhc.us/journal/2008/07/23/oscon-2008-an-illustrated-history-of-failure/</link>
		<comments>http://sirhc.us/journal/2008/07/23/oscon-2008-an-illustrated-history-of-failure/#comments</comments>
		<pubDate>Thu, 24 Jul 2008 00:32:49 +0000</pubDate>
		<dc:creator>sirhc</dc:creator>
				<category><![CDATA[Conferences]]></category>
		<category><![CDATA[Perl]]></category>
		<category><![CDATA[failure]]></category>
		<category><![CDATA[history]]></category>
		<category><![CDATA[OSCON]]></category>
		<category><![CDATA[oscon08]]></category>
		<category><![CDATA[oscon2008]]></category>

		<guid isPermaLink="false">http://sirhc.us/journal/?p=233</guid>
		<description><![CDATA[For my final session of the day, I&#8217;m in D139/140 for An Illustrated History of Failure with Paul Fenwick. I attended Paul&#8217;s Perl security talk yesterday, which was deciding factor in my attendance here. I figure it will have to &#8230; <a href="http://sirhc.us/journal/2008/07/23/oscon-2008-an-illustrated-history-of-failure/">Continue reading <span class="meta-nav">&#8594;</span></a>]]></description>
			<content:encoded><![CDATA[<p>For my final session of the day, I&#8217;m in D139/140 for <a href="http://en.oreilly.com/oscon2008/public/schedule/detail/3072">An Illustrated History of Failure</a> with Paul Fenwick.  I attended Paul&#8217;s <a href="http://sirhc.us/journal/2008/07/21/oscon-2008-perl-security/">Perl security</a> talk yesterday, which was deciding factor in my attendance here.  I figure it will have to be good, I&#8217;m sitting a few seats away from Damian Conway.</p>
<p>Paul has started out by describing the <a href="http://blog.makezine.com/archive/2006/09/worlds_oldest_computer.html">world&#8217;s oldest computer</a> in terms of modern computing.</p>
<p>From there, he&#8217;s providing examples of major computing and engineering failures throughout modern history.  It&#8217;s amazingly entertaining.  I can&#8217;t summarize it.  If you&#8217;re not here, you fail.  I&#8217;m just going to sit back and enjoy it.</p>
<p>[tags]oscon, oscon08, oscon2008, history, failure[/tags]</p>
]]></content:encoded>
			<wfw:commentRss>http://sirhc.us/journal/2008/07/23/oscon-2008-an-illustrated-history-of-failure/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>OSCON 2008: Moblin.org</title>
		<link>http://sirhc.us/journal/2008/07/23/oscon-2008-moblinorg/</link>
		<comments>http://sirhc.us/journal/2008/07/23/oscon-2008-moblinorg/#comments</comments>
		<pubDate>Thu, 24 Jul 2008 00:21:26 +0000</pubDate>
		<dc:creator>sirhc</dc:creator>
				<category><![CDATA[Conferences]]></category>
		<category><![CDATA[Intel]]></category>
		<category><![CDATA[Linux]]></category>
		<category><![CDATA[mobile]]></category>
		<category><![CDATA[Moblin]]></category>
		<category><![CDATA[OSCON]]></category>
		<category><![CDATA[oscon08]]></category>
		<category><![CDATA[oscon2008]]></category>

		<guid isPermaLink="false">http://sirhc.us/journal/?p=231</guid>
		<description><![CDATA[Continuing my afternoon tradition of attending sessions with absurdly long names, I&#8217;m in D136 at Moblin.org: The Community for Linux on Mobile Internet Devices (MID), netbooks, nettops and More&#8230;. It&#8217;s being presented by Dirk Hohndel, who I just overheard agreed &#8230; <a href="http://sirhc.us/journal/2008/07/23/oscon-2008-moblinorg/">Continue reading <span class="meta-nav">&#8594;</span></a>]]></description>
			<content:encoded><![CDATA[<p>Continuing my afternoon tradition of attending sessions with absurdly long names, I&#8217;m in D136 at <a href="http://en.oreilly.com/oscon2008/public/schedule/detail/3037">Moblin.org: The Community for Linux on Mobile Internet Devices (MID), netbooks, nettops and More&hellip;</a>.  It&#8217;s being presented by Dirk Hohndel, who I just overheard agreed at the last minute to substitute for the original author of the presentation.  He&#8217;s nervous, so I hope it goes well.  He is, however, the same person who gave the <a href="http://sirhc.us/journal/2008/07/23/oscon-2008-wednesday-morning-keynotes/">keynote</a> this morning.</p>
<p>I work for a small telecommunications design <a href="http://www.qualcomm.com/">company</a>, so this venture into Linux on mobile platforms holds quite a bit of interest for me.  Granted, I work in a support capacity for the folks who do real work, but knowledge is always a good thing, right?</p>
<p>Intel has chosen a Fedora- and GNOME-based platform for Moblin.  I&#8217;ve contributed a couple of <a href="http://rpmfind.net/linux/rpm2html/search.php?query=frotz">packages</a> to Fedora, which means users of these Intel mobile systems can play <a href="http://en.wikipedia.org/wiki/Zork">Zork</a>.</p>
<p>Dirk wasn&#8217;t able to have any sample devices with him, so he was left to describe what a &#8220;net book&#8221; is.  Fortunately, in a room full of geeks in a mobile computing presentation, several people had ASUS EEE PCs, which he could show off to the audience.  There were also a Nokia N800, N810, and of course several iPhones in the crowd.  Obviously I mobile-savvy audience.</p>
<p>Linux is often touted as the obvious first choice for these mobile devices because of its price.  One of the more important reasons is the ability to strip down Linux so much to fit on these devices, but still be incredibly usable.</p>
<p>This session ended up being exactly what I thought.  It&#8217;s essentially a marketing spiel masquerading as a technical talk.  The slides are far too slick, and the only reason any technical details are being given at all is because of the last-minute speaker substitution.  Our new speaker is a technical guy who has been promoted to a managerial role.  The presentation was apparently designed by a marketing guy with enough technical knowledge to be dangerous.  I hope Brad is having more fun in the <a href="http://www.canspice.org/2008/07/23/oscon-2008-moose-a-postmodern-object-system-for-perl-5-by-stevan-little/">Moose</a> talk.</p>
<p>I&#8217;m really regretting where I&#8217;ve chosen to sit.  Someone in front of me is wearing way too much pungent cologne.  I may be sick.</p>
<p>[tags]oscon, oscon08, oscon2008, Intel, Moblin, mobile, Linux[/tags]</p>
]]></content:encoded>
			<wfw:commentRss>http://sirhc.us/journal/2008/07/23/oscon-2008-moblinorg/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>OSCON 2008: Linux on the Corporate Desktop: We Did It, and You Can Too</title>
		<link>http://sirhc.us/journal/2008/07/23/oscon-2008-linux-on-the-corporate-desktop-we-did-it-and-you-can-too/</link>
		<comments>http://sirhc.us/journal/2008/07/23/oscon-2008-linux-on-the-corporate-desktop-we-did-it-and-you-can-too/#comments</comments>
		<pubDate>Wed, 23 Jul 2008 22:24:10 +0000</pubDate>
		<dc:creator>sirhc</dc:creator>
				<category><![CDATA[Conferences]]></category>
		<category><![CDATA[Linux]]></category>
		<category><![CDATA[OSCON]]></category>
		<category><![CDATA[oscon08]]></category>
		<category><![CDATA[oscon2008]]></category>

		<guid isPermaLink="false">http://sirhc.us/journal/?p=224</guid>
		<description><![CDATA[The second of my mid-afternoon sessions is Linux on the Corporate Desktop: We Did It, and You Can Too with John Goerzen. This session popped out at me because we have a similar initiative at work. The company John works &#8230; <a href="http://sirhc.us/journal/2008/07/23/oscon-2008-linux-on-the-corporate-desktop-we-did-it-and-you-can-too/">Continue reading <span class="meta-nav">&#8594;</span></a>]]></description>
			<content:encoded><![CDATA[<p>The second of my mid-afternoon sessions is <a href="http://en.oreilly.com/oscon2008/public/schedule/detail/2509">Linux on the Corporate Desktop: We Did It, and You Can Too</a> with John Goerzen.  This session popped out at me because we have a similar initiative at work.  The company John works for has about 400 employees, so obviously no where near the scale we&#8217;d be deploying on.  Hopefully, I&#8217;ll learn a few lessons from someone who&#8217;s done it before.</p>
<p>There are a multitude of troubles with using a proprietary operating system, as anyone attending OSCON is familiar.  From cost to forced upgrades to vendor lock-in.  Suddenly, companies are at the mercy of the vendor, and have lost so much of their own self-direction.</p>
<p>Not only has John&#8217;s company benefited from the Open Source community, they&#8217;ve contributed back to the community.  That&#8217;s key, I feel.  I&#8217;d like to see my own company contribute much more than they do.</p>
<p>I&#8217;m not sure who this talk was targeted for.  It wasn&#8217;t really a good sales pitch to business-type people, and it wasn&#8217;t very high level for IT-type people.  I don&#8217;t know what I expected from it, but I don&#8217;t think I got what I wanted out of it.  Most of the challenges they faced, we&#8217;ve already solved.  We&#8217;ve already created a standard image and can already deploy it on standard hardware.  We already have Windows virtual machines for anyone who still needs to run Windows applications.  We already have enough management buy-in for the project, too.</p>
<p>I do, however, like the sound of this &#8220;seamless RDP&#8221; he talked about.  I will need to investigate it further.  Also, it&#8217;s refreshing to hear from someone who has successfully (mostly) removed Windows from their enterprise.</p>
<p>[tags]oscon, oscon08, oscon2008, Linux[/tags]</p>
]]></content:encoded>
			<wfw:commentRss>http://sirhc.us/journal/2008/07/23/oscon-2008-linux-on-the-corporate-desktop-we-did-it-and-you-can-too/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>&#8220;Ninja&#8221; Code</title>
		<link>http://sirhc.us/journal/2008/07/23/ninja-code/</link>
		<comments>http://sirhc.us/journal/2008/07/23/ninja-code/#comments</comments>
		<pubDate>Wed, 23 Jul 2008 22:20:10 +0000</pubDate>
		<dc:creator>sirhc</dc:creator>
				<category><![CDATA[Conferences]]></category>
		<category><![CDATA[Programming]]></category>
		<category><![CDATA[Amazon]]></category>
		<category><![CDATA[OSCON]]></category>
		<category><![CDATA[oscon08]]></category>
		<category><![CDATA[oscon2008]]></category>
		<category><![CDATA[Perl]]></category>

		<guid isPermaLink="false">http://sirhc.us/journal/?p=227</guid>
		<description><![CDATA[The Amazon booth at OSCON 2008 is advertising heavily that they are hiring. They are also holding a raffle. To enter, simple look over some Perl code they have written out on some poster board and tell them what it &#8230; <a href="http://sirhc.us/journal/2008/07/23/ninja-code/">Continue reading <span class="meta-nav">&#8594;</span></a>]]></description>
			<content:encoded><![CDATA[<p>The <a href="http://www.amazon.com/">Amazon</a> booth at OSCON 2008 is advertising heavily that they are hiring.  They are also holding a raffle.  To enter, simple look over some Perl code they have written out on some poster board and tell them what it does.  It looks a little something like this (transcribing from memory):</p>
<pre>
my $code = qq{
    print 1+1 . "\n";
    $code =~ m/(\d+)\+(\d+)/;
    $new = $1 + $2;
    $code =~ s/\d+\+(\d+)/$2+$new/;
};

for ( 1 .. 10 ) {
    eval($code);
}
</pre>
<p>What&#8217;s the first bug?  Yes, it should use <code>q{}</code>, or the variables will interpolate on the initial assignment to <code>$code</code>.  To their credit, they initially used single quotes, but people said it was too hard to read.</p>
<p>I wasn&#8217;t content with just figuring out what the code did and fixing a small bug.  I think it can be written better.</p>
<pre>
eval($code = q{
    print 1+1 . "\n";
    $code =~ s/(\d+)(\+)(\d+)/"$3$2" . ($1 + $3)/e;
    eval $code;
});
</pre>
<p>Much better.  Not only is it more concise, I was able to remove that pesky loop, so I wouldn&#8217;t be bothered by any silly upper bounds.</p>
<p>So what does it do?  Should be obvious.  Head over to the Amazon booth and let them know.</p>
]]></content:encoded>
			<wfw:commentRss>http://sirhc.us/journal/2008/07/23/ninja-code/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>OSCON 2008: Code Reviews for Fun and Profit</title>
		<link>http://sirhc.us/journal/2008/07/23/oscon-2008-code-reviews-for-fun-and-profit/</link>
		<comments>http://sirhc.us/journal/2008/07/23/oscon-2008-code-reviews-for-fun-and-profit/#comments</comments>
		<pubDate>Wed, 23 Jul 2008 21:32:10 +0000</pubDate>
		<dc:creator>sirhc</dc:creator>
				<category><![CDATA[Conferences]]></category>
		<category><![CDATA[OSCON]]></category>
		<category><![CDATA[oscon08]]></category>
		<category><![CDATA[oscon2008]]></category>
		<category><![CDATA[Programming]]></category>

		<guid isPermaLink="false">http://sirhc.us/journal/?p=222</guid>
		<description><![CDATA[Lunch is over and I&#8217;m sitting in Code Reviews for Fun and Profit with Alex Martelli. I really wanted to go to the Perl 6 talk, but I always end up going home disappointed, because I don&#8217;t yet have Perl &#8230; <a href="http://sirhc.us/journal/2008/07/23/oscon-2008-code-reviews-for-fun-and-profit/">Continue reading <span class="meta-nav">&#8594;</span></a>]]></description>
			<content:encoded><![CDATA[<p>Lunch is over and I&#8217;m sitting in <a href="http://en.oreilly.com/oscon2008/public/schedule/detail/2538">Code Reviews for Fun and Profit</a> with Alex Martelli.  I really wanted to go to the Perl 6 talk, but I always end up going home disappointed, because I don&#8217;t yet have Perl 6.  It&#8217;s maddening, so here I am, sitting in something that may be useful.  And we&#8217;re off.</p>
<p>Nearly everyone agrees that code reviews are a good idea, so why aren&#8217;t they done more often?  In fact, this is the very same problem we&#8217;ve had at work.  We&#8217;ve been talking about code reviews for two years, but we&#8217;ve never had one.</p>
<p>There are some barriers to entry to doing code reviews.  If revision control is not in use or automated tests aren&#8217;t being run, tackle those problems first.  Also, the need for a team process is necessary, from ticket tracking to release plans.</p>
<p>Pair programming, that tenet of XP, is a poor substitute for code reviews.  Two people working together will not magically turn one or the other into what is essentially a disinterested third party, who may catch bugs simply because they weren&#8217;t there when it was written.</p>
<p>Test-driven development is also a great way of coding, but not a substitute for reviews.  Often for the same reasons.  Tests are often just more code and the code tested is only when someone thinks to test it.</p>
<p>Even during a code review, a reverence for authority can get in the way of getting things done.  A poor, intimidated programmer may not have the courage to criticize a more senior programmer.  Instead, this can be turned around with something I use a lot myself.  I like to call it, &#8220;playing dumb.&#8221;  Instead of saying, &#8220;this won&#8217;t work,&#8221; ask what will happen for a suspicious case.</p>
<p>Socially, the only way for code reviews to work is universal buy-in.  Everyone is subjected to code reviews by everyone else.  No exceptions.  Make them a habit, a regularly-scheduled meeting.  At work, I&#8217;ve even suggested bi-weekly, or perhaps monthly, catered, lunch time code reviews.  Just to get us into the habit of doing it.</p>
<p>Code review time should not be wasted on things such as code formatting, best practices, or test coverage.  This is stupid.  These are <a href="http://search.cpan.org/dist/Devel-Cover/">objective</a> <a href="http://search.cpan.org/dist/Perl-Tidy/">tasks</a> that can be <a href="http://search.cpan.org/dist/Test-Harness/">automated</a>.</p>
<p>Instead, look for subjective things, which can&#8217;t be automatically found.  Such as code readability, algorithmic clarity, and consistent identifier naming.  Other targets for code reviews are the usual things we here over and over again as development best practices: consistent documentation that follows the internal standard, that kind of thing.</p>
<p>The remainder of the talk is essentially an enumeration of all the things to look for in code reviews.  All of them are, at least to me, common sense.  So I&#8217;m not going to spend any time writing them down.  If you don&#8217;t already know them, well go find some common sense.</p>
<p>One thing that he recommends that I like is code reviews by e-mail.  It&#8217;s an old, well-understood, and (usually) reliable tool.  So why not combine e-mail with a version control system&mdash;particularly one of the newer distributed version control systems&mdash;to perform out-of-band code reviews.  It actually sounds like a good idea to me, and I&#8217;ve done it at work a couple of times with code written by an intern.</p>
<p>What I&#8217;m starting to notice is that many of the later the recommendations for reviewing code are personal opinions of the presenter.  I think the way in which code reviews are performed are highly dependent on what works best for the group reviewing code.  It&#8217;s like so many things, from cameras to backup solutions: the best one is not the shiniest or the one with the most bells and whistles, it&#8217;s the one that&#8217;s actually used.</p>
<p>[tags]oscon, oscon08, oscon2008, programming[/tags]</p>
]]></content:encoded>
			<wfw:commentRss>http://sirhc.us/journal/2008/07/23/oscon-2008-code-reviews-for-fun-and-profit/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>OSCON 2008: Beautiful Concurrency with Erlang</title>
		<link>http://sirhc.us/journal/2008/07/23/oscon-2008-beautiful-concurrency-with-erlang/</link>
		<comments>http://sirhc.us/journal/2008/07/23/oscon-2008-beautiful-concurrency-with-erlang/#comments</comments>
		<pubDate>Wed, 23 Jul 2008 19:12:55 +0000</pubDate>
		<dc:creator>sirhc</dc:creator>
				<category><![CDATA[Conferences]]></category>
		<category><![CDATA[concurrency]]></category>
		<category><![CDATA[Erlang]]></category>
		<category><![CDATA[OSCON]]></category>
		<category><![CDATA[oscon08]]></category>
		<category><![CDATA[oscon2008]]></category>
		<category><![CDATA[Programming]]></category>

		<guid isPermaLink="false">http://sirhc.us/journal/?p=219</guid>
		<description><![CDATA[My second session of the day is Beautiful Concurrency with Erlang. I&#8217;m here for two reasons. First, Erlang looks cool; second, the speaker, Kevin Scaldeferri, is a friend of mine. Erlang is a pure functional language (and thus no side-effects) &#8230; <a href="http://sirhc.us/journal/2008/07/23/oscon-2008-beautiful-concurrency-with-erlang/">Continue reading <span class="meta-nav">&#8594;</span></a>]]></description>
			<content:encoded><![CDATA[<p>My second session of the day is <a href="http://en.oreilly.com/oscon2008/public/schedule/detail/3065">Beautiful Concurrency with Erlang</a>.  I&#8217;m here for two reasons.  First, <a href="http://www.erlang.org/">Erlang</a> looks cool; second, the speaker, Kevin Scaldeferri, is a friend of mine.</p>
<p>Erlang is a pure functional language (and thus no side-effects) with strong dynamic typing and syntax similar to Prolog and ML.  Most notably, it contains concurrency primitives, which is what we&#8217;re here to hear about today.</p>
<p>Erlang concurrency primitives include <code>spawn</code>, to create a process, <code>!</code>, to send a message to a process, and <code>receive</code>, to listen for a message.  These are not system level processes, but other Erlang processes.  It&#8217;s a lot like using <code>fork</code> in imperative languages, but less messy.</p>
<p>Erlang, like many functional languages, can implement quick sort in three lines of code.  I was having a discussion with a friend of mine about this topic yesterday.  It&#8217;s very nice, and demonstrates the power of functional languages to trivially solve an already solved set of problems, but is it any use in the real world?  Maybe.  While I&#8217;ve not seen any non-trivial examples, I&#8217;m reserving judgment.</p>
<p>The first example is a demonstration on how simple it is to parallelize the quick sort algorithm.  It&#8217;s not a worthwhile example, in fact, it&#8217;s a particularly bad idea, but it serves as a reasonable example of the ease of use of the concurrent features in Erlang.  So far, it seems like changing a <code>map</code> call&mdash;something I love from Perl&mdash;to <code>pmap</code>.</p>
<p>The <code>pmap</code> function is not a built in function (BIF), but a library function built on top of the built in concurrency primitives.  The code implementing the function is actually quite simple, and should be available in the slides available at the end of the conference.  Conceptually, it spawns as many processes as necessary and uses them to call the function being mapped.  It then gathers the results, waiting for each process to complete.  It&#8217;s quite similar to code I&#8217;ve written to do scientific processing using <a href="http://en.wikipedia.org/wiki/Message_Passing_Interface">MPI</a>, but I&#8217;ve always thought functionally when coding.</p>
<p>After explaining concurrency, we make the jump to distributed systems.  What&#8217;s everyone&#8217;s favorite distributed system?  <a href="http://twitter.com/">Twitter</a>!  Twitter, while not designed as such, is essentially a messaging system.  Erlang does message passing very well, and almost all programs are designed using this paradigm.  So Kevin took a stab at implementing a Twitter-like system in Erlang, the key ideas of which he will present to us.</p>
<p>The lightweight and convenient process architecture of Erlang lends itself to the problem.  Every user can be represented as a process.  Each process can then send and receive messages.  In effect, the problem&mdash;the messaging part anyway&mdash;is now solved.  But, what about scaling to multiple machines?</p>
<p>It turns out to easy (but you knew it would, right?).  All we need to do is pull in the <code>global</code> module and we can bind our users not only to a process identifier, but combine that with a given machine as well.</p>
<p>However, we still don&#8217;t have a reliable system.  If a process dies, that user is no longer in the system.  So it really is a lot like Twitter.</p>
<p>OTP, the Open Telecom Platform (a legacy name from Erlang&#8217;s history at Ericcson), provides a set of common behaviors and patterns for writing reliable and distributed system.  The programmer simply declares what interface they would like to use, then implement a set of callbacks defined for that behavior.  Reminds me a bit of <a href="http://search.cpan.org/dist/Class-Role/">roles</a> (because I have an unhealthy need to relate everything back to Perl).</p>
<p>As with everything in Erlang, it is almost impossibly easy to set up this reliability.  I still can&#8217;t get over how well the syntax maps to how I actually think about code.</p>
<p>A question was raised about how to go about setting up the necessary cluster of hosts used in Erlang&#8217;s mesh network.  Kevin went into it briefly, but it&#8217;s unfortunately out of scope for this session.</p>
<p>And, with that, it&#8217;s time for lunch.  Thanks, Kevin!</p>
<p>[tags]oscon, oscon08, oscon2008, Erlang, concurrency, programming[/tags]</p>
]]></content:encoded>
			<wfw:commentRss>http://sirhc.us/journal/2008/07/23/oscon-2008-beautiful-concurrency-with-erlang/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>OSCON 2008: Strawberry Perl: Achieving Win32 Platform Equality</title>
		<link>http://sirhc.us/journal/2008/07/23/oscon-2008-strawberry-perl-achieving-win32-platform-equality/</link>
		<comments>http://sirhc.us/journal/2008/07/23/oscon-2008-strawberry-perl-achieving-win32-platform-equality/#comments</comments>
		<pubDate>Wed, 23 Jul 2008 18:27:59 +0000</pubDate>
		<dc:creator>sirhc</dc:creator>
				<category><![CDATA[Conferences]]></category>
		<category><![CDATA[Adam Kennedy]]></category>
		<category><![CDATA[OSCON]]></category>
		<category><![CDATA[oscon08]]></category>
		<category><![CDATA[oscon2008]]></category>
		<category><![CDATA[Perl]]></category>
		<category><![CDATA[Strawberry Perl]]></category>

		<guid isPermaLink="false">http://sirhc.us/journal/?p=217</guid>
		<description><![CDATA[My first session of the day is Strawberry Perl: Achieving Win32 Platform Equality, presented by Adam Kennedy. Originally, I had considered a Parrot talk, but I saw a similar talk at SCALE6x, and I happened upon Adam on IRC this &#8230; <a href="http://sirhc.us/journal/2008/07/23/oscon-2008-strawberry-perl-achieving-win32-platform-equality/">Continue reading <span class="meta-nav">&#8594;</span></a>]]></description>
			<content:encoded><![CDATA[<p>My first session of the day is <a href="http://en.oreilly.com/oscon2008/public/schedule/detail/2769">Strawberry Perl: Achieving Win32 Platform Equality</a>, presented by <a href="http://search.cpan.org/~adamk/">Adam Kennedy</a>.  Originally, I had considered a Parrot talk, but I saw a similar talk at <a href="http://sirhc.us/journal/2008/02/10/scale-6x-programming-parrot/">SCALE6x</a>, and I happened upon Adam on IRC this morning.  I chatted briefly with him about his talk, and he happens to be in communication with a <a href="http://www.antlinux.com/">friend of mine</a>, who is working on <a href="http://code.google.com/p/camelbox/">Camelbox</a>, a Windows build of Perl originally targeted as a way to easily distribute applications written with Gtk front ends (I hope I got the motivation correct).</p>
<p>Recently, Adam has been funded by The Perl Foundation, Perl in Israel, and Stonehenge to use Perl from nothing but his flash drive.  This provides an excellent motivation to get Strawberry Perl working in a highly portable way.</p>
<p>Originally, Perl was awesome and worked everywhere&mdash;except Windows.  That was okay, because Windows didn&#8217;t matter.  No one did any real work on Windows.  Then, around 1995, Windows started to matter.  A brief history of Perl on Windows followed, resulting in what is today <a href="http://www.activestate.com">ActiveState</a>.</p>
<p>Much of what Adam wrote for <a href="http://search.cpan.org/dist/PPI/">PPI</a> does not work in ActivePerl, which makes it a non-starter for him, as he tends to work on Windows.  Anything depending on Scalar::Util or List::MoreUtils modules will not work with the ActivePerl build system.  This led to an embarrassing problem for Adam when he gave a talk three years ago at OSCON.  He couldn&#8217;t give his demo, because PPI would not build in ActivePerl.  In fact, ActiveState&#8217;s package manager has gotten so much worse that almost any module that is at all useful does not exist&mdash;and thus nothing useful can be done on Windows (big surprise).</p>
<p>Moving away from ActiveState, this talk is essentially about Adam trying to get his own laptop to work.  That&#8217;s really all he wants.  It&#8217;s a modest desire.  More importantly, the <a href="http://search.cpan.org/dist/CPAN/">CPAN</a> module has to work.  Without that, what&#8217;s the use of Perl?</p>
<p>So Adam offered a prize: a yard-high stack of cases of any beer desired by the first person who could provide a fully-installable and working (by the above definition of working) version of Perl for Windows.  After six months and no sign of a winner, he changed the prize to &#8220;craploads&#8221; of beer.  In 24 hours, he received two entries.  The winner cheated a lot, but the loser was <a href="http://vanillaperl.com/">Vanilla Perl</a>, which has become a testing ground for experimentation.</p>
<p><a href="http://strawberryperl.com/">Strawberry Perl</a> is the Perl for Windows designed for people who don&#8217;t use Windows.  That is, the people who do all of their work on Unix or Unix-like systems&mdash;Linux, Solaris, and Mac OS X.  The main goal of the project is to make it <i>easy</i>&mdash;it is Perl, after all.</p>
<p>In the future will come Chocolate Perl&mdash;completing the holy trinity of neopolitan flavors&mdash;for people who know Windows, but don&#8217;t know Perl, and thus the Unix-like characteristics of Perl.</p>
<p>The target of Adam&#8217;s financial support is Portable Perl: Perl for flash drives.  Carry it around, install CPAN modules onto, or from, the flash drive.  It&#8217;s network-aware, does the right thing, and juliennes fries.  An excellent standard being developed for portable apps is, in fact, <a href="http://portableapps.com">PortableApps.com</a>, where applications such as Firefox or Putty can be downloaded and installed to those ever-growing flash drives.</p>
<p>Available Thursday at the <a href="http://www.perlfoundation.org/">Perl Foundation</a>&#8216;s booth in the expo hall will be branded flash drives with Portable Perl on them.  At least, I think I heard that correctly.</p>
<p>I really like the work Adam is doing.  He&#8217;s accomplished so much to get Perl everywhere.  That&#8217;s a cause I can get behind.</p>
<blockquote><p>
&#8220;The main problem today is Vista.&#8221;<br />
&mdash; Adam Kennedy
</p></blockquote>
<p>Okay, I took that out of context, but I couldn&#8217;t resist capturing the quote.  What he really means is that changes made to Windows in Vista have made things not work, in particular the access control.  It&#8217;s not an unusual problem when upgrading to new systems, but it is more difficult with proprietary platforms, which Open Source authors have very little access to.</p>
]]></content:encoded>
			<wfw:commentRss>http://sirhc.us/journal/2008/07/23/oscon-2008-strawberry-perl-achieving-win32-platform-equality/feed/</wfw:commentRss>
		<slash:comments>7</slash:comments>
		</item>
		<item>
		<title>OSCON 2008: Wednesday Morning Keynotes</title>
		<link>http://sirhc.us/journal/2008/07/23/oscon-2008-wednesday-morning-keynotes/</link>
		<comments>http://sirhc.us/journal/2008/07/23/oscon-2008-wednesday-morning-keynotes/#comments</comments>
		<pubDate>Wed, 23 Jul 2008 17:09:57 +0000</pubDate>
		<dc:creator>sirhc</dc:creator>
				<category><![CDATA[Conferences]]></category>
		<category><![CDATA[Open Source]]></category>
		<category><![CDATA[Open Web]]></category>
		<category><![CDATA[OSCON]]></category>
		<category><![CDATA[oscon08]]></category>
		<category><![CDATA[oscon2008]]></category>
		<category><![CDATA[privacy]]></category>
		<category><![CDATA[Tim O'Reilly]]></category>

		<guid isPermaLink="false">http://sirhc.us/journal/?p=215</guid>
		<description><![CDATA[Kicking off the official start of OSCON on Wednesday morning is Allison Randal welcoming us to the 10th annual O&#8217;Reilly Open Source Conference. She gave us an overview of what we could expect from this year&#8217;s conference. Mostly, it&#8217;s about &#8230; <a href="http://sirhc.us/journal/2008/07/23/oscon-2008-wednesday-morning-keynotes/">Continue reading <span class="meta-nav">&#8594;</span></a>]]></description>
			<content:encoded><![CDATA[<p>Kicking off the official start of OSCON on Wednesday morning is Allison Randal welcoming us to the 10th annual O&#8217;Reilly Open Source Conference. She gave us an overview of what we could expect from this year&#8217;s conference.  Mostly, it&#8217;s about open systems this year, not just open source program.  She then introduced the program co-chair and the man behind the personal schedule feature on the conference web site, Edd Dumbill.  He started off by getting an idea of how long the audience had been coming to OSCON.  Quite a few people have attended half a dozen or more.  Impressive.  Next, he pimped the <a href="http://en.oreilly.com/oscon2008/public/schedule/detail/4926">OSCON photo contest</a> on Flickr.  He&#8217;s a very big proponent of the social networking aspects of OSCON: Flickr, Twitter, and IRC in particular.</p>
<p>Allison is back to tell us that the morning break will be sponsored by Intel, and lunch is sponsored by Google.  That gives me some hope for a decent lunch, at least.  Don&#8217;t let me down, Google.</p>
<p>Next up, Tim O&#8217;Reilly with an update on <a href="http://en.oreilly.com/oscon2008/public/schedule/detail/4408">Open Source on the O&#8217;Reilly Radar</a>.  He started out with an overview of the history of this conference, in particular the predecessors: the Freeware conference, and the Perl conference.</p>
<p>He offers an important safety tip: keep your history.  Be an e-pack-rat.  Some day you&#8217;ll look back and appreciate that you have it.  It&#8217;s like the photo album on the coffee table.  It&#8217;s the story of us and how we became who we are today.  So keep everything.  Please.  Even if it&#8217;s embarrassing.  Those are always the best memories, the ones that make us laugh.</p>
<p>The big point he&#8217;s here to make today is how big Open Source has come in the last decade.  But, don&#8217;t become complacent.  There are three big challenges and opportunities coming up: cloud computing, the (open) programmable Web, and open mobile.</p>
<p>Cloud computing is on the tip of everyone&#8217;s tongue today.  From Amazon Web Services to Google&#8217;s App Engine.  Individuals and start-ups now have the ability to build applications on top of these wonderful, decentralized, and most importantly cheap platforms.</p>
<p>Web does not mean &#8220;http.&#8221;  It is, in fact, the entire Internet, the &#8220;web&#8221; of systems that communicate and inter-operate.  There are Web applications that provide platform-agnostic solutions, but there is also XMPP, mobile devices, and even non-Web APIs for those very Web applications that are often so impressive.</p>
<blockquote><p>
&#8220;The Web is 72 subsystems in search of an Operating System.&#8221;<br />
&mdash; Tim O&#8217;Reilly
</p></blockquote>
<p>Data is the value-add by so many of the so-called open web companies.  While the APIs are open and the data can be queried, the data itself is owned by the provider, to do with as they please.  We need a truly Open Web Platform.  Apple, as popular as the iPhone is, has created an essentially closed platform.  Google, with Android, understands this.  Without a truly open mobile platform, all of Google&#8217;s market share could potentially disappear overnight.</p>
<p>Back to Allison who introduced our next speaker, Christine Peterson.  She takes the stage to tell us about <a href="http://en.oreilly.com/oscon2008/public/schedule/detail/4406">Open Source Physical Security: Can We Have Both Privacy and Safety?</a></p>
<p>We passed up an opportunity with &#8220;e-voting.&#8221;  The Open Source community should have been able to rise up and solve that problem.  I&#8217;m not sure how or in what way.  I&#8217;ve had many discussions with friends on the subject, and we&#8217;re still not convinced that computers are even a good idea when it comes to voting.</p>
<p>This is the political activism segment of the conference.  That said, she brings up very real concerns.  There are very real reasons to care about detecting weapons or other hazards.  But, the very same technologies, in particular surveillance, that are used to defend against very real dangers can be used&mdash;abused&mdash;to monitor law-abiding citizens.</p>
<p>Terrorism is a &#8220;bottom-up&#8221; problem, which the state is attempting to solve with &#8220;top-down&#8221; solutions.  We need so-called bottom-up solutions.  The solutions that involve the very same openness, security and privacy that the Open Source community is already so concerned about and already so vocal about.</p>
<p>The take home message, if there is one, is that all this public sensing data and the information they gather should be open.  Our elected officials (this is a very US-centric talk) are well-meaning, but do not have the tools or the knowledge or the experience to really understand the need for all of this to be open.</p>
<blockquote><p>
&#8220;No secret software for sensing public data.&#8221;<br />
&mdash; Christine Peterson
</p></blockquote>
<p>Allison came back on stage to introduce our last, but certainly not least, speaker, Dirk Hohndel, Intel&#8217;s Chief Linux and Open Source Technologist.  He&#8217;s here to talk about <a href="http://en.oreilly.com/oscon2008/public/schedule/detail/4719">Moblin, Linux for Next Generation Mobile Internet</a>.  Given that I work for Qualcomm, this is, or at least should be, a very interesting topic for me (I work in support of the engineers, who do the actual work).</p>
<p>Intel is putting their money where their mouth is with Moblin (Mobile Linux, get it?).  There is a new class of computers on the market, which have become affordable for the mass market: ultra portable notebooks, hand-held tablet computers, and &#8220;smart&#8221; phones.  The driving force making these devices so successful is the Internet.  They are connected and our data is accessible from anywhere.</p>
<p>But what about vendor lock-in of the platform and the data.  Intel believes that the platform should be open.  This is where Moblin comes in.  It&#8217;s Intel&#8217;s idea of an open platform and an open software stack, allowing the community to develop applications and create new systems and services.</p>
<p>It&#8217;s excellent preaching to the choir, but I suspect that from a business perspective, it&#8217;s also a way of getting other people to do work for free and really get entrenched in the mobile market.  After all, Intel is not the giant in the mobile space the same way that they are in the server, desktop, or notebook spaces.  In fact, Qualcomm has a very impressive microprocessor, called <a href="http://www.qctconnect.com/products/snapdragon.html">Snapdragon</a>, targeting the mobile market (shameless plug).</p>
<p>Allison is back, once again introducing Tim O&#8217;Reilly, who will be <a href="http://en.oreilly.com/oscon2008/public/schedule/detail/4407">talking to Monty Widenius and Brian Aker</a> about their work with MySQL and the acquisition by Sun Microsystems.  This is a Q&amp;A session, and I always find these difficult to blog.  With any luck, a summary or transcript will be posted to the <a href="http://radar.oreilly.com/">O&#8217;Reilly Radar</a> site.</p>
<p>That brings us to the end of this morning&#8217;s keynotes.  I&#8217;ll drop by the expo hall for a few minutes before my first session.  But first, I really need to find a restroom.</p>
<p>Oh, Brad also wrote a <a href="http://www.canspice.org/2008/07/23/oscon-2008-wednesday-morning-keynotes/">few words</a> about the keynote.</p>
]]></content:encoded>
			<wfw:commentRss>http://sirhc.us/journal/2008/07/23/oscon-2008-wednesday-morning-keynotes/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
	</channel>
</rss>
