<?xml version="1.0" encoding="utf-8"?>
<rss version="2.0" xml:base="http://planet-soc.com" xmlns:dc="http://purl.org/dc/elements/1.1/">
<channel>
 <title>Blog entries from Thousand Parsec SoC students and mentors</title>
 <link>http://planet-soc.com/organization/Thousand+Parsec/universe</link>
 <description>Organization universe blog entries</description>
 <language>en</language>
<item>
 <title>Ruby Oneliner: Benchmarking a string concordance</title>
 <link>http://planet-soc.com/node/4425</link>
 <description>&lt;p&gt;Just the other week in one of my university Comp. Sci. classes I was asked to use a supplied Linked List to create a Concordance from standard input (in C I might add). The problem wasn&amp;#8217;t necessarily hard, in fact, it was simple enough some friends and I realized it was a great Ruby one-liner candidate; Sure enough this was the result after no more than a minute of jabbering:&lt;/p&gt;

&lt;p&gt;&lt;pre class=&quot;ruby&quot;&gt;
hash = Hash.new(0); str.split.each { |m| hash[m] += 1}
&lt;/pre&gt;&lt;p&gt;Well thats all fine and dandy&amp;#8230; A plain old Ruby one-liner. My friend Stef, however, suggested this close alternative:&lt;/p&gt;
&lt;pre class=&quot;ruby&quot;&gt;
hash = Hash.new(0); str.scan(/\w+/m) { |m| hash[m] += 1}
&lt;/pre&gt;&lt;p&gt;Whats different? Well Stef&amp;#8217;s code uses a &lt;a title=&quot;Regular expression - Wikipedia, the free encyclopedia&quot; href=&quot;http://en.wikipedia.org/wiki/Regular_expression&quot;&gt;regex&lt;/a&gt; scan of a &amp;#8220;m&amp;#8221;ultiline string, then adds 1 to each match in the hash. His regex takes series of 1 or more &amp;#8220;\w&amp;#8221;ord characters to be a match. Whereas my code uses Ruby&amp;#8217;s built-in &amp;#8220;split&amp;#8221; method to split on whitespace, then iterate over the resultant array.&lt;br /&gt;
This is how split works:&lt;/p&gt;
&lt;pre class=&quot;ruby&quot;&gt;
str = &amp;quot;My name is Ryan.&amp;quot;
str.split #=&amp;gt; [&amp;quot;My&amp;quot;,&amp;quot;name&amp;quot;,&amp;quot;is&amp;quot;,&amp;quot;Ryan.&amp;quot;]
&lt;/pre&gt;&lt;p&gt;For simple strings, like &amp;#8220;My name is Ryan.&amp;#8221;, Stef&amp;#8217;s regex scan works almost identically. For this example we will ignore the fact that &amp;#8220;\w&amp;#8221; won&amp;#8217;t match things like &amp;#8216;-&amp;#8217;, its not really that important at the moment.&lt;br /&gt;
As any good Computer Scientists our divergence of methods lead to a great argument&amp;#8230; Which one was better? From my point of view, &amp;#8220;split.each&amp;#8221; is much more readable, clearly (without a regex) splits on whitespace, and is nearly as terse as the regex equivalent. From Stef&amp;#8217;s point of view he A) didn&amp;#8217;t have to use &amp;#8220;each&amp;#8221; and B) had more control over the split. We agreed to disagree, clearly each works best in different situations. Split is best for a simple split, but Scan is far more versatile.&lt;br /&gt;
Having put semantics aside we began wrestling over which one would be faster. We threw together this &amp;#8220;Benchmark&amp;#8221; script:&lt;/p&gt;
&lt;pre class=&quot;ruby&quot;&gt;
require &amp;#039;benchmark&amp;#039;&lt;/p&gt;

&lt;p&gt;str = &amp;quot;1 2 3 4-5 6 7 8-9&amp;quot;
Benchmark.bm do |bm|
bm.report(&amp;quot;split: &amp;quot;) {10000.times do hash = Hash.new(0); str.split.each { |m| hash[m] += 1}; end  }
bm.report(&amp;quot;scan: (\w+) &amp;quot;) { 10000.times do hash = Hash.new(0); str.scan(/\w+/m) { |m| hash[m] = 1} end  }
bm.report(&amp;quot;scan: (\w+(-\w+)?) &amp;quot;) { 10000.times do hash = Hash.new(0); str.scan(/(\w+(-\w+)?)/m) { |m| hash[m] += 1} end  }
end
&lt;/pre&gt;&lt;p&gt;Here&amp;#8217;s the result of those benchmarks on various Ruby versions:&lt;/p&gt;
&lt;pre class=&quot;ruby&quot;&gt;&lt;/p&gt;

&lt;h2&gt;Native environment tests - 1.8.7&lt;/h2&gt;

&lt;h1&gt;Creating one hash and clear it: (hash.clear instead of hash = Hash.new(0))&lt;/h1&gt;

&lt;h1&gt;user     system      total        real&lt;/h1&gt;

&lt;h1&gt;split:            0.490000   0.150000   0.640000 (  0.656165)&lt;/h1&gt;

&lt;h1&gt;scan: (\w+)       0.800000   0.180000   0.980000 (  1.003529)&lt;/h1&gt;

&lt;h1&gt;scan: (w+(-w+)?)  1.390000   0.340000   1.730000 (  1.745792)&lt;/h1&gt;

&lt;h1&gt;Creating a new hash every time:&lt;/h1&gt;

&lt;h1&gt;user     system      total        real&lt;/h1&gt;

&lt;h1&gt;split:            0.470000   0.140000   0.610000 (  0.643760)&lt;/h1&gt;

&lt;h1&gt;scan: (\w+)       0.800000   0.180000   0.980000 (  0.989383)&lt;/h1&gt;

&lt;h1&gt;scan: (w+(-w+)?)  1.170000   0.260000   1.430000 (  1.457280)&lt;/h1&gt;

&lt;h2&gt;Variety tests by Stef Penner&lt;/h2&gt;

&lt;h1&gt;mbp:rubinius stefan$ ruby -v&lt;/h1&gt;

&lt;h1&gt;-&amp;gt; ruby 1.8.7 (2008-06-20 patchlevel 22) [i686-darwin9.3.0]&lt;/h1&gt;

&lt;h1&gt;mbp:rubinius stefan$ macruby -v&lt;/h1&gt;

&lt;h1&gt;-&amp;gt; MacRuby version 0.3 (ruby 1.9.0 2008-06-03) [universal-darwin9.0]&lt;/h1&gt;

&lt;h1&gt;mbp:rubinius stefan$ jruby -v&lt;/h1&gt;

&lt;h1&gt;-&amp;gt; ruby 1.8.6 (2008-06-22 rev 6555) [i386-jruby1.1.1]&lt;/h1&gt;

&lt;h1&gt;mbp:rubinius stefan$ rbx -v&lt;/h1&gt;

&lt;h1&gt;-&amp;gt; rubinius 0.9.0 (ruby 1.8.6 compatible) (8038487c4) (10/19/2008) [i686-apple-darwin9.5.0]&lt;/h1&gt;

&lt;h2&gt;Variety tests by Stef Penner&lt;/h2&gt;

&lt;h1&gt;$ rubinous regx.rb&lt;/h1&gt;

&lt;h1&gt;user     system      total        real&lt;/h1&gt;

&lt;h1&gt;split:           1.422384   0.000000   1.422384 (  1.422366)&lt;/h1&gt;

&lt;h1&gt;scan: (\w+)      1.458300   0.000000   1.458300 (  1.458299)&lt;/h1&gt;

&lt;h1&gt;scan: (w+(-w+)?) 2.127930   0.000000   2.127930 (  2.127929)&lt;/h1&gt;

&lt;h1&gt;$ ruby regx.rb&lt;/h1&gt;

&lt;h1&gt;user     system      total        real&lt;/h1&gt;

&lt;h1&gt;split:           0.410000   0.140000   0.550000 (  0.559599)&lt;/h1&gt;

&lt;h1&gt;scan: (\w+)      0.670000   0.180000   0.850000 (  0.862585)&lt;/h1&gt;

&lt;h1&gt;scan: (w+(-w+)?) 0.990000   0.270000   1.260000 (  1.268065)&lt;/h1&gt;

&lt;h1&gt;$ ruby1.9 regx.rb&lt;/h1&gt;

&lt;h1&gt;user     system      total        real&lt;/h1&gt;

&lt;h1&gt;split:           0.090000   0.000000   0.090000 (  0.096752)&lt;/h1&gt;

&lt;h1&gt;scan: (\w+)      0.170000   0.000000   0.170000 (  0.164321)&lt;/h1&gt;

&lt;h1&gt;scan: (w+(-w+)?) 0.280000   0.000000   0.280000 (  0.291374)&lt;/h1&gt;

&lt;h1&gt;$ macruby regx.rb&lt;/h1&gt;

&lt;h1&gt;user     system      total        real&lt;/h1&gt;

&lt;h1&gt;split:           0.440000   0.030000   0.470000 (  0.490660)&lt;/h1&gt;

&lt;h1&gt;scan: (\w+)      4.310000   0.050000   4.360000 (  4.449849)&lt;/h1&gt;

&lt;h1&gt;scan: (w+(-w+)?) 4.380000   0.040000   4.420000 (  4.503897)&lt;/h1&gt;

&lt;h1&gt;$ jruby regx.rb&lt;/h1&gt;

&lt;h1&gt;user     system      total        real&lt;/h1&gt;

&lt;h1&gt;split:           0.456000   0.000000   0.456000 (  0.456000)&lt;/h1&gt;

&lt;h1&gt;scan: (\w+)      0.261000   0.000000   0.261000 (  0.260000)&lt;/h1&gt;

&lt;h1&gt;scan: (w+(-w+)?) 0.369000   0.000000   0.369000 (  0.369000)&lt;/h1&gt;

&lt;h1&gt;$jruby 1.1.3 regx.rb&lt;/h1&gt;

&lt;h1&gt;user     system      total        real&lt;/h1&gt;

&lt;h1&gt;split:           0.235000   0.000000   0.235000 ( 0.234993)&lt;/h1&gt;

&lt;h1&gt;scan: (\w+)      0.228000   0.000000   0.228000 ( 0.228318)&lt;/h1&gt;

&lt;h1&gt;scan: (w+(-w+)?) 0.329000   0.000000   0.329000 ( 0.328884)&lt;/h1&gt;

&lt;p&gt;&lt;/pre&gt;&lt;p&gt;Its rather interesting to see how each version of ruby compares, yes &lt;a title=&quot;Home&quot; href=&quot;http://rubini.us/&quot;&gt;Rubinius&lt;/a&gt; is slower, but WOW, Ruby 1.9.1 takes only 16% the time 1.8.7 takes!&lt;/p&gt;&lt;/p&gt;
</description>
 <comments>http://planet-soc.com/node/4425#comments</comments>
 <category domain="http://planet-soc.com/taxonomy/term/181">Planet SoC</category>
 <category domain="http://planet-soc.com/taxonomy/term/160">Thousand Parsec</category>
 <pubDate>Thu, 06 Nov 2008 07:12:36 +0100</pubDate>
 <dc:creator>jphr</dc:creator>
 <guid isPermaLink="false">4425 at http://planet-soc.com</guid>
</item>
<item>
 <title>repurposing the blog</title>
 <link>http://planet-soc.com/node/4016</link>
 <description>&lt;p&gt;Well as GSoC has come to an end and my interests have moved on. I will be repurposing the blog as a more code/personal-centric blog (it is, THE, hammer of code). If your GSoC RSS keeps nagging you with my annoying posts give me a shout telling me where I&amp;#8217;m getting to you from; I&amp;#8217;ll remove myself from that feed aggregator.&lt;br /&gt;
As for me, I&amp;#8217;ve come upon a new stage of my &amp;#8220;developership&amp;#8221; – I&amp;#8217;ve been learning &lt;a href=&quot;http://www.ruby-lang.org/&quot; title=&quot;Ruby Programming Language&quot;&gt;Ruby&lt;/a&gt;, &lt;a href=&quot;http://www.rubyonrails.org/&quot; title=&quot;Ruby on Rails&quot;&gt;Rails&lt;/a&gt;, CSS, HTML, and a bit of Javascript. (in addition to all the languages I&amp;#8217;ve been learning in school: FP, C, Lisp and Prolog at present). As much as I didn&amp;#8217;t expect I&amp;#8217;ve been exhilarated by web development these last few weeks. I&amp;#8217;ve been spending more and more time with my two good friends Burke and Stef over at &lt;a href=&quot;http://www.53cr.com/&quot;&gt;Chromium 53&lt;/a&gt;; both of whom attend the University of Manitoba with me. They&amp;#8217;ve been doing big things, and it has gotten me excited. I&amp;#8217;m currently playing catch up with Ruby and Rails in hopes of working with those two fine gentlemen (and the way things are going they will need a few helping hands &lt;img src=&quot;http://www.hammerofcode.com/wp-includes/images/smilies/icon_wink.gif&quot; alt=&quot;;)&quot; class=&quot;wp-smiley&quot; /&gt; ).&lt;br /&gt;
Stay tuned as I may start posting little snips and pieces of code I write or find interesting.&lt;/p&gt;
</description>
 <comments>http://planet-soc.com/node/4016#comments</comments>
 <category domain="http://planet-soc.com/taxonomy/term/181">Planet SoC</category>
 <category domain="http://planet-soc.com/taxonomy/term/160">Thousand Parsec</category>
 <pubDate>Thu, 09 Oct 2008 03:21:52 +0200</pubDate>
 <dc:creator>jphr</dc:creator>
 <guid isPermaLink="false">4016 at http://planet-soc.com</guid>
</item>
<item>
 <title>TP Single Player Release</title>
 <link>http://planet-soc.com/node/3975</link>
 <description>&lt;p&gt;We&amp;#8217;re planning to release a version of the &lt;a href=&quot;http://www.thousandparsec.net/tp&quot;&gt;Thousand Parsec&lt;/a&gt; tpclient-pywx client soon with the new &lt;a href=&quot;http://thousandparsec.net/wiki/Single_Player&quot;&gt;single player&lt;/a&gt; wizard. Support for single player mode is also coming in tpserver-cpp and (hopefully) a couple of the AI clients. The target date for the first candidate is October 19.&lt;/p&gt;

&lt;p&gt;I&amp;#8217;ve significantly updated the &lt;a href=&quot;http://www.mavrinac.com/index.cgi?page=tp&quot;&gt;Gentoo overlay&lt;/a&gt; for Thousand Parsec recently, stabilizing most of the release ebuilds and adding ebuilds that grab the latest Git versions. Among other things, this means you can grab the as-yet unreleased tpserver-cpp and tpadmin-cpp combo implementing the new &lt;a href=&quot;http://thousandparsec.net/wiki/Tpserver-cpp/Admin&quot;&gt;administration protocol&lt;/a&gt;!&lt;/p&gt;
</description>
 <comments>http://planet-soc.com/node/3975#comments</comments>
 <category domain="http://planet-soc.com/taxonomy/term/181">Planet SoC</category>
 <category domain="http://planet-soc.com/taxonomy/term/160">Thousand Parsec</category>
 <pubDate>Mon, 06 Oct 2008 21:03:56 +0200</pubDate>
 <dc:creator>ezod</dc:creator>
 <guid isPermaLink="false">3975 at http://planet-soc.com</guid>
</item>
<item>
 <title>There And Back Again</title>
 <link>http://planet-soc.com/node/3763</link>
 <description>&lt;p&gt;After about a month&amp;#8217;s break (vacation to BC, followed by a week buried in books, followed by &lt;a href=&quot;http://www.icdsc.org&quot;&gt;ICDSC&lt;/a&gt;), I&amp;#8217;m back to both school and Thousand Parsec development.&lt;/p&gt;

&lt;p&gt;For the former, attending ICDSC couldn&amp;#8217;t have come at a better time. I&amp;#8217;m just in the process of starting new research, and some of the topics presented there have given me some good perspective on what&amp;#8217;s important currently. Several researchers (like &lt;a href=&quot;http://graphics.stanford.edu/~heathkh/smpt/&quot;&gt;this guy&lt;/a&gt;) employed stereo camera nodes for various applications, lending some credence to my advocacy for them, and also providing some validation for my &lt;a href=&quot;http://www.mavrinac.com/research/files/papers/mavrinac_masc_thesis.pdf&quot;&gt;M.A.Sc. thesis&lt;/a&gt; and &lt;a href=&quot;http://www.mavrinac.com/research/files/papers/icdsc08dssccalib.pdf&quot;&gt;paper&lt;/a&gt; on calibration. A number of groups presented research employing vision graphs and agent-based stuff, both of which are on our menu currently. Finally, there was some interesting talk on the last day about middleware for DSC networks which piqued my interest.&lt;/p&gt;

&lt;p&gt;For the latter, my config-branch (remote administration) changes have been merged in tpserver-cpp and family. I&amp;#8217;m now going to improve the implementation of the single player back-end functionality in libtpclient-py. A major concern is the compatibility of the bash scripts and motivation for the component developers to actually create them, so I&amp;#8217;m going to try to change it to some versatile Python process management code, and have the custom execution stuff live in the description XML file. Hopefully in the process I&amp;#8217;ll be able to further centralize the work so that writing the extra XML is reasonably easy while still being able to handle a variety of possibilities. I&amp;#8217;ll also spend some time beefing up the inline documentation throughout the client library.&lt;/p&gt;
</description>
 <comments>http://planet-soc.com/node/3763#comments</comments>
 <category domain="http://planet-soc.com/taxonomy/term/181">Planet SoC</category>
 <category domain="http://planet-soc.com/taxonomy/term/160">Thousand Parsec</category>
 <pubDate>Mon, 15 Sep 2008 04:48:51 +0200</pubDate>
 <dc:creator>ezod</dc:creator>
 <guid isPermaLink="false">3763 at http://planet-soc.com</guid>
</item>
<item>
 <title>Moving</title>
 <link>http://planet-soc.com/node/3732</link>
 <description>&lt;p&gt;I&amp;#8217;ll be moving to a new host over the next few hours. If you happen to hit up the site before then be warned; I&amp;#8217;ll be back soon, but I can&amp;#8217;t guarantee things will be up and running right away.&lt;/p&gt;
</description>
 <comments>http://planet-soc.com/node/3732#comments</comments>
 <category domain="http://planet-soc.com/taxonomy/term/181">Planet SoC</category>
 <category domain="http://planet-soc.com/taxonomy/term/160">Thousand Parsec</category>
 <pubDate>Thu, 11 Sep 2008 02:23:00 +0200</pubDate>
 <dc:creator>jphr</dc:creator>
 <guid isPermaLink="false">3732 at http://planet-soc.com</guid>
</item>
<item>
 <title>A quick update, just to break the silence</title>
 <link>http://planet-soc.com/node/3693</link>
 <description>&lt;p&gt;I&amp;#8217;ve posted a new Windows &lt;a href=&quot;http://www.thousandparsec.net/~jmtan/&quot;&gt;build&lt;/a&gt;, and am currently trying to get the client to work fully with the &lt;a href=&quot;http://groups.google.com/group/python-ogre-developers/browse_thread/thread/919f11aa78615fce?hl=en&quot;&gt;python-ogre deb&lt;/a&gt; on Ubuntu. As expected, getting python-ogre to work on Mac is quite a chore, I&amp;#8217;m almost there, got everything compiled but running the demos gives me a &lt;a href=&quot;http://groups.google.com/group/python-ogre-developers/browse_thread/thread/3ada3eadf587320b?hl=en&quot;&gt;&amp;#8220;wrapper&amp;#8221; error&lt;/a&gt;, and I&amp;#8217;ll probably have to understand how the code generation in python-ogre works to figure it out.&lt;br /&gt;Packaging issues aside, I&amp;#8217;ve made a few updates to the client. The lines in the screen represent &amp;#8220;Wormholes&amp;#8221;, which are basically routes between star systems. Currently, only the &lt;a href=&quot;http://www.thousandparsec.net/wiki/Risk&quot;&gt;Risk&lt;/a&gt; ruleset uses this feature, so lines won&amp;#8217;t display anywhere else, such as on the demo1.thousandparsec.net server which usually runs Minisec.&lt;br /&gt;&lt;img src=&quot;http://2.bp.blogspot.com/_H-JNu2WhCxk/SMAIyPfXtYI/AAAAAAAAAOY/RluRPGreOwk/s400/screenshot.png&quot; border=&quot;0&quot; alt=&quot;&quot; id=&quot;BLOGGER_PHOTO_ID_5242199625503847810&quot; /&gt;&lt;/p&gt;

&lt;p&gt;&lt;img src=&quot;http://2.bp.blogspot.com/_H-JNu2WhCxk/SMAIyVRKX8I/AAAAAAAAAOg/aRczzXuYtsc/s400/screenshot_2.png&quot; border=&quot;0&quot; alt=&quot;&quot; id=&quot;BLOGGER_PHOTO_ID_5242199627054866370&quot; /&gt;I&amp;#8217;ve also tweaked the &amp;#8220;Information&amp;#8221; window to show more useful information such as the planetary resources (I tested it with the &amp;#8220;Armies&amp;#8221; resource in Risk). In general, I&amp;#8217;m trying to locate more crashes by testing the client with different systems and python-ogre builds. OgreAL has been a little problematic, and it&amp;#8217;s one of the things which I am trying to get working with the linux python-ogre deb file.&lt;br /&gt;My main concern about the client is the performance on older hardware. Mithro informed me that even the login screen runs at a crawl on his laptop, which is probably due to the large textures used in the skybox (1024x1024). I guess a solution to this would be to offer a lower-resolution skybox thats selectable from the options menu.&lt;br /&gt;I&amp;#8217;ve started my industrial attachment, so I&amp;#8217;m pretty much limited to weekends. Nevertheless, I&amp;#8217;ll be continuing to update the client, and when &lt;a href=&quot;http://www.thousandparsec.net/wiki/TP04&quot;&gt;tp04&lt;/a&gt; support has been added content management will be a lot more elegant, allowing &amp;#8220;media&amp;#8221; tags which mean no more hardcoded graphics. Another thing I&amp;#8217;m looking forward to is more battlexml support in the servers. On my end, I also hope to include some shaders to give game objects a more realistic look, but there are still many things to work out before I have time for that.&lt;/p&gt;

&lt;p&gt;P.S. If you zoom in on the pictures it kinda looks like those old VGA games.&lt;/p&gt;

&lt;p&gt;&lt;a href=&quot;http://picasaweb.google.com/lh/photo/PwfvaN0lXHu4I1wlExgrXQ?authkey=4OUN4uKKegM&quot;&gt;&lt;img src=&quot;http://lh3.ggpht.com/jmingtan/SMARIvRAfyI/AAAAAAAAAOo/dOu4xp8uGMY/s800/vga.png&quot; /&gt;&lt;/a&gt;From &lt;a href=&quot;http://picasaweb.google.com/jmingtan/DevHobby?authkey=4OUN4uKKegM&quot;&gt;Dev Hobby&lt;/a&gt;&lt;/p&gt;
</description>
 <comments>http://planet-soc.com/node/3693#comments</comments>
 <category domain="http://planet-soc.com/taxonomy/term/160">Thousand Parsec</category>
 <category domain="http://planet-soc.com/taxonomy/term/182">Universe SoC</category>
 <pubDate>Thu, 04 Sep 2008 17:23:00 +0200</pubDate>
 <dc:creator>jmingtan</dc:creator>
 <guid isPermaLink="false">3693 at http://planet-soc.com</guid>
</item>
<item>
 <title>still alive?</title>
 <link>http://planet-soc.com/node/3678</link>
 <description>&lt;p&gt;Well, contrary to how my current weekly post-count must look, I am still alive. Where I last left off I had just finished up the official part of my work on &lt;a href=&quot;http://www.thousandparsec.net/&quot; title=&quot; News&quot;&gt;thousand parsec&lt;/a&gt;. Since then I travelled a few times, to a family member&amp;#8217;s cabin in &lt;a href=&quot;http://www.gimli.ca/&quot; title=&quot;Rural Municipality of Gimli, Manitoba&quot;&gt;Gimli, MB&lt;/a&gt;, and into &lt;a href=&quot;http://www.winnipeg.ca/&quot; title=&quot; Winnipeg.ca (UD)&quot;&gt;Winnipeg&lt;/a&gt; while my wife did some professional development for work. All the while I was gaming to my hearts content; In my time I played &lt;a href=&quot;http://www.us.playstation.com/patapon/&quot; title=&quot;Patapon&quot;&gt;Patapon&lt;/a&gt;, &lt;a href=&quot;http://en.wikipedia.org/wiki/Lumines&quot; title=&quot;Lumines - Wikipedia, the free encyclopedia&quot;&gt;Lumines&lt;/a&gt;, &lt;a href=&quot;http://en.wikipedia.org/wiki/Geometry_Wars&quot; title=&quot;Geometry Wars - Wikipedia, the free encyclopedia&quot;&gt;Geometries Wars 2&lt;/a&gt;, &lt;a href=&quot;http://fable.lionhead.com/&quot; title=&quot;Fable&quot;&gt;Fable&lt;/a&gt; (in anticipation of Fable 2), and am presently playing &lt;a href=&quot;http://www.castlecrashers.com/&quot; title=&quot;Castle Crashers&quot;&gt;Castle Crashers&lt;/a&gt; (which I&amp;#8217;m surprised my sister actually enjoys playing with me). In addition I&amp;#8217;ve begun extended support and polishing off TP-risk, particularly some bug fixes, and planning on a substantial fork to work out what I would call unresolvable issues.&lt;br /&gt;
Today I wrapped up some errands at the &lt;a href=&quot;http://www.umanitoba.ca/&quot; title=&quot;University of Manitoba&quot;&gt;university&lt;/a&gt; before I head back to school on thursday. All I can say is I am very much sick and tired of being nickeled and dimed by univesities and the like treating their students like invalids; I&amp;#8217;m a big &lt;em&gt;*&lt;/em&gt;*ing boy now, I should be able to use a credit card to pay for things, declare majors, not pay almost $120 for each book I purchase, and finally, I should be treated as if I were responsible for my own decisions. AND SCENE&amp;#8230; (I&amp;#8217;ll cut myself short here, it will get pretty incoherent if I continue)&lt;br /&gt;
As for classes I am taking this term; I&amp;#8217;ll be taking:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;&lt;a href=&quot;http://en.wikipedia.org/wiki/Discrete_mathematics&quot; title=&quot;Discrete mathematics - Wikipedia, the free encyclopedia&quot;&gt;Discrete Mathematics&lt;/a&gt; for Computer Science&lt;/li&gt;
&lt;li&gt;Introduction to &lt;a href=&quot;http://en.wikipedia.org/wiki/Scientific_computing&quot; title=&quot;Scientific Computing&quot;&gt;Scientific Computing&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;Introduction to &lt;a href=&quot;http://en.wikipedia.org/wiki/Artificial_intelligence&quot; title=&quot;Artificial intelligence - Wikipedia, the free encyclopedia&quot;&gt;Artificial Intelligence&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;Programming Practices (a course in C taught by my favorite professor &lt;a href=&quot;http://www.zapptek.com/&quot; title=&quot;: The iPod software you need.&quot;&gt;M. Zapp&lt;/a&gt;)&lt;/li&gt;
&lt;li&gt;Programming Language Concepts&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;I&amp;#8217;m not sure how the load of the term will be, but if it isn&amp;#8217;t that much (hopefully my GSoC experience has trained me well) I hope to spend some more time developing myself a decent game engine to start making games on, or perhaps learn &lt;a href=&quot;http://www.ruby-lang.org/&quot; title=&quot;Ruby Programming Language&quot;&gt;Ruby&lt;/a&gt; or &lt;a href=&quot;http://www.python.org/&quot; title=&quot;Python Programming Language -- Official Website&quot;&gt;Python&lt;/a&gt;, as well as trying to make a dime or two on &lt;a href=&quot;http://www.rentacoder.com/RentACoder/DotNet/default.aspx&quot; title=&quot;Rent A Coder&quot;&gt;RentACoder&lt;/a&gt;. It is getting late though, I should be off to bed &lt;img src=&quot;http://www.hammerofcode.com/wp-includes/images/smilies/icon_razz.gif&quot; alt=&quot;:P&quot; class=&quot;wp-smiley&quot; /&gt;&lt;/p&gt;
</description>
 <comments>http://planet-soc.com/node/3678#comments</comments>
 <category domain="http://planet-soc.com/taxonomy/term/181">Planet SoC</category>
 <category domain="http://planet-soc.com/taxonomy/term/160">Thousand Parsec</category>
 <pubDate>Wed, 03 Sep 2008 07:06:18 +0200</pubDate>
 <dc:creator>jphr</dc:creator>
 <guid isPermaLink="false">3678 at http://planet-soc.com</guid>
</item>
<item>
 <title>still alive?</title>
 <link>http://planet-soc.com/node/3752</link>
 <description>&lt;p&gt;Well, contrary to how my current weekly post-count must look, I am still alive. Where I last left off I had just finished up the official part of my work on &lt;a href=&quot;http://www.thousandparsec.net/&quot; title=&quot; News&quot;&gt;thousand parsec&lt;/a&gt;. Since then I travelled a few times, to a family member&amp;#8217;s cabin in &lt;a href=&quot;http://www.gimli.ca/&quot; title=&quot;Rural Municipality of Gimli, Manitoba&quot;&gt;Gimli, MB&lt;/a&gt;, and into &lt;a href=&quot;http://www.winnipeg.ca/&quot; title=&quot; Winnipeg.ca (UD)&quot;&gt;Winnipeg&lt;/a&gt; while my wife did some professional development for work. All the while I was gaming to my hearts content; In my time I played &lt;a href=&quot;http://www.us.playstation.com/patapon/&quot; title=&quot;Patapon&quot;&gt;Patapon&lt;/a&gt;, &lt;a href=&quot;http://en.wikipedia.org/wiki/Lumines&quot; title=&quot;Lumines - Wikipedia, the free encyclopedia&quot;&gt;Lumines&lt;/a&gt;, &lt;a href=&quot;http://en.wikipedia.org/wiki/Geometry_Wars&quot; title=&quot;Geometry Wars - Wikipedia, the free encyclopedia&quot;&gt;Geometries Wars 2&lt;/a&gt;, &lt;a href=&quot;http://fable.lionhead.com/&quot; title=&quot;Fable&quot;&gt;Fable&lt;/a&gt; (in anticipation of Fable 2), and am presently playing &lt;a href=&quot;http://www.castlecrashers.com/&quot; title=&quot;Castle Crashers&quot;&gt;Castle Crashers&lt;/a&gt; (which I&amp;#8217;m surprised my sister actually enjoys playing with me). In addition I&amp;#8217;ve begun extended support and polishing off TP-risk, particularly some bug fixes, and planning on a substantial fork to work out what I would call unresolvable issues.&lt;br /&gt;
Today I wrapped up some errands at the &lt;a href=&quot;http://www.umanitoba.ca/&quot; title=&quot;University of Manitoba&quot;&gt;university&lt;/a&gt; before I head back to school on thursday. All I can say is I am very much sick and tired of being nickeled and dimed by univesities and the like treating their students like invalids; I&amp;#8217;m a big &lt;em&gt;*&lt;/em&gt;*ing boy now, I should be able to use a credit card to pay for things, declare majors, not pay almost $120 for each book I purchase, and finally, I should be treated as if I were responsible for my own decisions. AND SCENE&amp;#8230; (I&amp;#8217;ll cut myself short here, it will get pretty incoherent if I continue)&lt;br /&gt;
As for classes I am taking this term; I&amp;#8217;ll be taking:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;&lt;a href=&quot;http://en.wikipedia.org/wiki/Discrete_mathematics&quot; title=&quot;Discrete mathematics - Wikipedia, the free encyclopedia&quot;&gt;Discrete Mathematics&lt;/a&gt; for Computer Science&lt;/li&gt;
&lt;li&gt;Introduction to &lt;a href=&quot;http://en.wikipedia.org/wiki/Scientific_computing&quot; title=&quot;Scientific Computing&quot;&gt;Scientific Computing&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;Introduction to &lt;a href=&quot;http://en.wikipedia.org/wiki/Artificial_intelligence&quot; title=&quot;Artificial intelligence - Wikipedia, the free encyclopedia&quot;&gt;Artificial Intelligence&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;Programming Practices (a course in C taught by my favorite professor &lt;a href=&quot;http://www.zapptek.com/&quot; title=&quot;: The iPod software you need.&quot;&gt;M. Zapp&lt;/a&gt;)&lt;/li&gt;
&lt;li&gt;Programming Language Concepts&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;I&amp;#8217;m not sure how the load of the term will be, but if it isn&amp;#8217;t that much (hopefully my GSoC experience has trained me well) I hope to spend some more time developing myself a decent game engine to start making games on, or perhaps learn &lt;a href=&quot;http://www.ruby-lang.org/&quot; title=&quot;Ruby Programming Language&quot;&gt;Ruby&lt;/a&gt; or &lt;a href=&quot;http://www.python.org/&quot; title=&quot;Python Programming Language -- Official Website&quot;&gt;Python&lt;/a&gt;, as well as trying to make a dime or two on &lt;a href=&quot;http://www.rentacoder.com/RentACoder/DotNet/default.aspx&quot; title=&quot;Rent A Coder&quot;&gt;RentACoder&lt;/a&gt;. It is getting late though, I should be off to bed &lt;img src=&quot;http://www.hammerofcode.com/wp-includes/images/smilies/icon_razz.gif&quot; alt=&quot;:P&quot; class=&quot;wp-smiley&quot; /&gt;&lt;/p&gt;
</description>
 <comments>http://planet-soc.com/node/3752#comments</comments>
 <category domain="http://planet-soc.com/taxonomy/term/181">Planet SoC</category>
 <category domain="http://planet-soc.com/taxonomy/term/160">Thousand Parsec</category>
 <pubDate>Wed, 03 Sep 2008 07:06:18 +0200</pubDate>
 <dc:creator>jphr</dc:creator>
 <guid isPermaLink="false">3752 at http://planet-soc.com</guid>
</item>
<item>
 <title>Weekly Report: August 21-September 2</title>
 <link>http://planet-soc.com/node/3676</link>
 <description>&lt;p&gt;Wow. I&amp;#8217;ve been way too busy this past week. Classes started and the workload managed to pile on way too fast. I still haven&amp;#8217;t even gotten some of my books.  Thankfully, most of Dronesec was already done for the deadline on August 18. I&amp;#8217;ve managed to do a couple of things in the short amounts of free time I had but not nearly as much as I would like. I managed to get tpserver-py on windows to work which I hope to put on a full How-To article on the TP wiki tonight or tomorrow if time permits.&lt;/p&gt;

&lt;p&gt;I used epydoc on tpserver-py and I found that I need to find a more standard format for the docstrings and to fill it out for a lot more documentation. I&amp;#8217;ll be slowly working on that this week as my time permits. I do however think that finding a good standard form for the docstrings would be a good idea to make sure that at least most of the information needed is there.&lt;/p&gt;

&lt;p&gt;Today officially marks the end of GSOC, but I think I&amp;#8217;ll keep writing on this blog once in a while to help keep track of dronesec and what I&amp;#8217;m doing with tpserver-py. I imagine the next couple of months will see a transition into the TP04 protocol which I am very excited about and hope it will be relatively painless :-D&lt;/p&gt;
</description>
 <comments>http://planet-soc.com/node/3676#comments</comments>
 <category domain="http://planet-soc.com/taxonomy/term/181">Planet SoC</category>
 <category domain="http://planet-soc.com/taxonomy/term/160">Thousand Parsec</category>
 <pubDate>Wed, 03 Sep 2008 01:21:00 +0200</pubDate>
 <dc:creator>JLafont</dc:creator>
 <guid isPermaLink="false">3676 at http://planet-soc.com</guid>
</item>
<item>
 <title>Weekly Report August 13 - August 20</title>
 <link>http://planet-soc.com/node/3572</link>
 <description>&lt;p&gt;Its the second to last week and most of the touch ups and documentation are on their way. Unfortunately, classes began this week and it has kept me much busier than I hoped. However, dronesec and tpserver-py are both coming along nicely and windows operability has been achieved!&lt;/p&gt;

&lt;p&gt;This week I:


7a50714cf2217b0d2ea663f6ce0b9af7


&lt;p&gt;The server is now operational on Windows! I haven&amp;#8217;t fully tested it yet but so far the server will start and allow players to join. I already have a &lt;a href=&quot;http://docs.google.com/Doc?id=dg93sdv_37gmck3nhm&quot;&gt;quick installation guide&lt;/a&gt; made for it but I hope to add a more fleshed out and comprehensive guide to the &lt;a href=&quot;http://thousandparsec.net/wiki/Thousand_Parsec_Wiki&quot;&gt;TP wiki.&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;I hope to continue doing more documentation and get tpserver-py ready for a release this week as well as another screencast.&lt;/p&gt;
</description>
 <comments>http://planet-soc.com/node/3572#comments</comments>
 <category domain="http://planet-soc.com/taxonomy/term/181">Planet SoC</category>
 <category domain="http://planet-soc.com/taxonomy/term/160">Thousand Parsec</category>
 <pubDate>Thu, 21 Aug 2008 00:04:00 +0200</pubDate>
 <dc:creator>JLafont</dc:creator>
 <guid isPermaLink="false">3572 at http://planet-soc.com</guid>
</item>
</channel>
</rss>
