<?xml version='1.0' encoding='UTF-8'?><?xml-stylesheet href="http://www.blogger.com/styles/atom.css" type="text/css"?><feed xmlns='http://www.w3.org/2005/Atom' xmlns:openSearch='http://a9.com/-/spec/opensearchrss/1.0/' xmlns:georss='http://www.georss.org/georss' xmlns:gd='http://schemas.google.com/g/2005' xmlns:thr='http://purl.org/syndication/thread/1.0'><id>tag:blogger.com,1999:blog-1619643649667162121</id><updated>2011-07-07T13:37:24.705-07:00</updated><category term='FiveFingers'/><category term='langley'/><category term='jQuery'/><category term='programming'/><category term='random'/><category term='sqlite'/><category term='intraining'/><category term='open source'/><category term='BSD'/><category term='kde'/><category term='GPL'/><category term='green'/><category term='running'/><category term='svg'/><category term='licensing'/><category term='family'/><category term='arland'/><category term='mono'/><category term='JavaScript'/><category term='blogging'/><category term='work'/><category term='pyro'/><category term='barefoot'/><category term='rant'/><category term='google'/><category term='kmail'/><title type='text'>I Dream in Colour</title><subtitle type='html'>Rantings of a highly opinionated code monkey turned father.</subtitle><link rel='http://schemas.google.com/g/2005#feed' type='application/atom+xml' href='http://rmgraham.blogspot.com/feeds/posts/default'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/1619643649667162121/posts/default?max-results=100'/><link rel='alternate' type='text/html' href='http://rmgraham.blogspot.com/'/><link rel='hub' href='http://pubsubhubbub.appspot.com/'/><author><name>Ryan Graham</name><uri>http://www.blogger.com/profile/18319610639577200961</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://4.bp.blogspot.com/_YuOGEjyujI8/S177_ryZEII/AAAAAAAAApY/GG5AvzcN7HI/S220/DSC_0001.jpg'/></author><generator version='7.00' uri='http://www.blogger.com'>Blogger</generator><openSearch:totalResults>32</openSearch:totalResults><openSearch:startIndex>1</openSearch:startIndex><openSearch:itemsPerPage>100</openSearch:itemsPerPage><entry><id>tag:blogger.com,1999:blog-1619643649667162121.post-6967267337819324661</id><published>2010-03-19T05:57:00.000-07:00</published><updated>2010-03-19T06:19:31.655-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='barefoot'/><category scheme='http://www.blogger.com/atom/ns#' term='running'/><title type='text'>Week 6, Run 3</title><content type='html'>Last night's run was a &lt;a href="http://runkeeper.com/pub/act/bK5cIMSlRJcvDEgEFdD9"&gt;barefoot 6.2km&lt;/a&gt;, and... educational.&lt;br /&gt;&lt;br /&gt;The biggest lesson I learned was in preparation. My distance for this run was going to be a new peak for me for this year. As a result, I had to expand my route. I'd drawn up on a map what looked like a good route, and proceeded to follow it.&lt;br /&gt;&lt;br /&gt;My feet weren't ready for what I threw at them. It wasn't the distance, it was the terrain that doesn't show up on Goole Maps. Several blocks of new construction means a mix of nice new sidewalks, and nice new sidewalks covered in debris. Then there's the older houses which have sidewalks made rough by years of erosion. And then there were sections where the just was no sidewalk where I expected it! My only choice was to share the gravel littered street with vehicles. Not fun.&lt;br /&gt;&lt;br /&gt;Because of my feet, I ended up cutting some of my intervals short. It was supposed to be 3 minutes running, 1 minute walking, 10 times. A few of my runs were 2 minutes and a few of my walks were 2 minutes. But some of my runs were 4, and I did about 13 intervals in total. So I think I made up for the 2 or three cheat intervals.&lt;br /&gt;&lt;br /&gt;As this is my 5th run using RunKeeper, I can now start seeing patterns in my results. It looks like my first and second intervals are by far my fastest. During these intervals I actually reach my goal speed of 10km/h. Based on my notes, it seems the longer I maintain that pace during the run, the more likely I am to refer to it as "brutal". In other words, I'm not quite at the point where I could sustain that pace comfortably. It's hard to be building up distance while also trying to increase my speed. Things will get better. I'll be making sure I pack my VFFs when I'm uncertain about the terrain. My goal of finishing the Sun Run in an hour is higher priority than finishing it barefoot. Besides, FiveFingers get enough funny looks and comments already.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/1619643649667162121-6967267337819324661?l=rmgraham.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='related' href='http://runkeeper.com/pub/act/bK5cIMSlRJcvDEgEFdD9' title='Week 6, Run 3'/><link rel='replies' type='application/atom+xml' href='http://rmgraham.blogspot.com/feeds/6967267337819324661/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=1619643649667162121&amp;postID=6967267337819324661' title='1 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/1619643649667162121/posts/default/6967267337819324661'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/1619643649667162121/posts/default/6967267337819324661'/><link rel='alternate' type='text/html' href='http://rmgraham.blogspot.com/2010/03/week-6-run-3.html' title='Week 6, Run 3'/><author><name>Ryan Graham</name><uri>http://www.blogger.com/profile/18319610639577200961</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://4.bp.blogspot.com/_YuOGEjyujI8/S177_ryZEII/AAAAAAAAApY/GG5AvzcN7HI/S220/DSC_0001.jpg'/></author><thr:total>1</thr:total></entry><entry><id>tag:blogger.com,1999:blog-1619643649667162121.post-5425894256400008935</id><published>2010-03-17T06:04:00.000-07:00</published><updated>2010-03-17T06:18:35.615-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='FiveFingers'/><category scheme='http://www.blogger.com/atom/ns#' term='intraining'/><category scheme='http://www.blogger.com/atom/ns#' term='running'/><title type='text'>Week 6, Run 2</title><content type='html'>&lt;a href="http://bit.ly/bAqKqJ"&gt;Last night's run&lt;/a&gt; was decent. It was raining a bit, so my GPS results are a little wonky. The increased humidity also made it hard to keep cool.&lt;br /&gt;&lt;br /&gt;It had been raining most of the day, so everything was quite wet. Wet feet are soft feet, and soft feed get chewed up by street running, so I decided to run in my black/orange KSOs which I haven't worn much. They're a bit thinner on the sole than the Trek, which was good, but I also noticed they were a little heavier. I'll probably continue to run in them when it's too wet for barefoot.&lt;br /&gt;&lt;br /&gt;This run was basically the same as my last solo run, minus one interval. My pace was every so slightly faster, based on how far up the hill I got before my last interval was over. I actually felt so good at that point, and was so far from the house, that I threw in a few minutes more running. It was good. I'm getting a good idea of what kind of pace I'd need to meet my 60 minute goal time for the Sun Run. At this point I'm not able to sustain that speed for long enough. Maybe on a flat route, and after I've warmed up, I could keep it for a few kilometers, but certainly not 10. But hey, I'm only at the half way point, so I've got lots of time to build on that distance!&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/1619643649667162121-5425894256400008935?l=rmgraham.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='related' href='http://bit.ly/bAqKqJ' title='Week 6, Run 2'/><link rel='replies' type='application/atom+xml' href='http://rmgraham.blogspot.com/feeds/5425894256400008935/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=1619643649667162121&amp;postID=5425894256400008935' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/1619643649667162121/posts/default/5425894256400008935'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/1619643649667162121/posts/default/5425894256400008935'/><link rel='alternate' type='text/html' href='http://rmgraham.blogspot.com/2010/03/week-6-run-2.html' title='Week 6, Run 2'/><author><name>Ryan Graham</name><uri>http://www.blogger.com/profile/18319610639577200961</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://4.bp.blogspot.com/_YuOGEjyujI8/S177_ryZEII/AAAAAAAAApY/GG5AvzcN7HI/S220/DSC_0001.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-1619643649667162121.post-7457240001790424333</id><published>2010-03-12T21:10:00.000-08:00</published><updated>2010-03-12T21:33:27.189-08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='barefoot'/><category scheme='http://www.blogger.com/atom/ns#' term='running'/><title type='text'>Second Barefoot Run</title><content type='html'>Just ran my second barefoot run of the season. Finally a good run, and it was 8 intervals of 3 minutes run, 1 minute walk. So one interval short of my run last Sunday that was so rough for me. I'm seriously considering showing up for the next group run without shoes because my feet are handling the distance so well. I've got 7 weeks to go my feet are already good for at least 4 of the 10km of the Sun Run.&lt;br /&gt;&lt;br /&gt;You can get all the details from my &lt;a HREF="http://runkeeper.com/user/rmgraham/activities"&gt;RunKeeper activity log&lt;/a&gt;.&lt;br /&gt;&lt;br /&gt;Oh, and it was another nice night run at 5C/41F. That is officially my most comfortable temperature for running. Not looking forward to running in the 30s.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/1619643649667162121-7457240001790424333?l=rmgraham.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://rmgraham.blogspot.com/feeds/7457240001790424333/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=1619643649667162121&amp;postID=7457240001790424333' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/1619643649667162121/posts/default/7457240001790424333'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/1619643649667162121/posts/default/7457240001790424333'/><link rel='alternate' type='text/html' href='http://rmgraham.blogspot.com/2010/03/second-barefoot-run.html' title='Second Barefoot Run'/><author><name>Ryan Graham</name><uri>http://www.blogger.com/profile/18319610639577200961</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://4.bp.blogspot.com/_YuOGEjyujI8/S177_ryZEII/AAAAAAAAApY/GG5AvzcN7HI/S220/DSC_0001.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-1619643649667162121.post-6834254391601342831</id><published>2010-03-11T23:55:00.000-08:00</published><updated>2010-03-11T23:55:00.160-08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='barefoot'/><category scheme='http://www.blogger.com/atom/ns#' term='running'/><title type='text'>Learning to Run</title><content type='html'>For anyone interested in the program I'm following for training for the Sun Run, you can get the &lt;a href="http://www.vancouversun.com/pdf/SportMedLearnToRun10KProgram.pdf"&gt;LearnToRun10k PDF&lt;/a&gt;.&lt;br /&gt;&lt;br /&gt;It's a great 13 week program to take you from non-runner to being able to complete a 10k. I can't compare it to any other programs because it is the only one I've ever done, but it worked for me last year.&lt;br /&gt;&lt;br /&gt;I'm following the same program this year since I didn't run nearly as much after the Sun Run as I'd have liked. I'm also doing it in Vibram FiveFingers this year, so that's a good reason to use a gradual build up program.&lt;br /&gt;&lt;br /&gt;I highly recommend this type of training program for anyone interested in getting into running. It may be hard at times, but by the time you're half-way through the program you'll feel like a runner. And by that I mean you'll start to crave your run.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/1619643649667162121-6834254391601342831?l=rmgraham.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='related' href='http://www.sunrun.com/' title='Learning to Run'/><link rel='replies' type='application/atom+xml' href='http://rmgraham.blogspot.com/feeds/6834254391601342831/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=1619643649667162121&amp;postID=6834254391601342831' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/1619643649667162121/posts/default/6834254391601342831'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/1619643649667162121/posts/default/6834254391601342831'/><link rel='alternate' type='text/html' href='http://rmgraham.blogspot.com/2010/03/learning-to-run.html' title='Learning to Run'/><author><name>Ryan Graham</name><uri>http://www.blogger.com/profile/18319610639577200961</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://4.bp.blogspot.com/_YuOGEjyujI8/S177_ryZEII/AAAAAAAAApY/GG5AvzcN7HI/S220/DSC_0001.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-1619643649667162121.post-1166836711098047803</id><published>2010-03-10T20:45:00.000-08:00</published><updated>2010-03-10T21:13:49.522-08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='FiveFingers'/><category scheme='http://www.blogger.com/atom/ns#' term='barefoot'/><category scheme='http://www.blogger.com/atom/ns#' term='running'/><title type='text'>First Barefoot Run of 2010</title><content type='html'>It's funny how restarting something you've done before can be new ground...&lt;br /&gt;&lt;br /&gt;I transitioned to running and walking barefoot and in Vibram FiveFingers last summer and am familiar with that process. Getting back into it, however, is new to me.&lt;br /&gt;&lt;br /&gt;I just got back from run 2 of week 5. My goal is to do my mid-week runs on Tuesday and Thursday night, but that hasn't been working as well for me as I'd like. Oh well, better a day late that skipped.&lt;br /&gt;&lt;br /&gt;According to the Weather Network, it's 5C/41F outside. Perfect for me. It was a 5 minute warm up walk followed by 8 intervals of 2 minutes run, 1 minute walk, and then finished off with a 5 minute cool down walk before stretching. I carried my pair of black Treks in my hands expecting to slip them on after an interval or two when my feet started hurting or get too cold. I ended up carrying them the entire time!&lt;br /&gt;&lt;br /&gt;It was another brutal run for me, effort wise. I felt sluggish and tired for almost the entire time. The hills are particularly hard on me this year. Either I'm pushing myself harder this year, or I've fallen further than I thought from my peak. In either case, this is the tough period. I'm looking forward to it getting easy again like it was near the end of last year. I'm also looking forward to doing it at a faster pace than last year.&lt;br /&gt;&lt;br /&gt;In addition to easing back into running in general, I guess the only other thing I need to watch for is how much skin I'm wearing off. Now it's time for a shower and thorough foot scrubbing before crawling into bed for the night. Hope my feet are still happy when I wake up.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/1619643649667162121-1166836711098047803?l=rmgraham.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://rmgraham.blogspot.com/feeds/1166836711098047803/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=1619643649667162121&amp;postID=1166836711098047803' title='1 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/1619643649667162121/posts/default/1166836711098047803'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/1619643649667162121/posts/default/1166836711098047803'/><link rel='alternate' type='text/html' href='http://rmgraham.blogspot.com/2010/03/first-barefoot-run-of-2010.html' title='First Barefoot Run of 2010'/><author><name>Ryan Graham</name><uri>http://www.blogger.com/profile/18319610639577200961</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://4.bp.blogspot.com/_YuOGEjyujI8/S177_ryZEII/AAAAAAAAApY/GG5AvzcN7HI/S220/DSC_0001.jpg'/></author><thr:total>1</thr:total></entry><entry><id>tag:blogger.com,1999:blog-1619643649667162121.post-6502583615775522033</id><published>2010-03-09T23:55:00.001-08:00</published><updated>2010-03-09T23:55:00.372-08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='FiveFingers'/><category scheme='http://www.blogger.com/atom/ns#' term='barefoot'/><category scheme='http://www.blogger.com/atom/ns#' term='running'/><title type='text'>First Barefooting of 2010</title><content type='html'>Nothing big, just a quick trip down the block to put a letter in the mail. The ground and air were the perfect temperature for me. Overcast, 7C (45F).&lt;br /&gt;&lt;br /&gt;The biggest surprise to me was how natural it felt after wearing shoes (well, FiveFingers) for the last 5 or 6 months. I expected it to feel like the first time, with my feet overly sensitive and my gait feeling awkward. Seems my feet didn't go back to sleep like after the first twenty-something years of wearing shoes and there was no sensitivity problems. As for my gait, I'm giving the credit to Vibram for the design of their FiveFingers line of "shoes".&lt;br /&gt;&lt;br /&gt;I'd been dreading the re-conditioning I'd have to do in order to add barefoot running to my Sun Run training, but not so much now. Things are looking up in barefoot land.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/1619643649667162121-6502583615775522033?l=rmgraham.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://rmgraham.blogspot.com/feeds/6502583615775522033/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=1619643649667162121&amp;postID=6502583615775522033' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/1619643649667162121/posts/default/6502583615775522033'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/1619643649667162121/posts/default/6502583615775522033'/><link rel='alternate' type='text/html' href='http://rmgraham.blogspot.com/2010/03/first-barefooting-of-2010.html' title='First Barefooting of 2010'/><author><name>Ryan Graham</name><uri>http://www.blogger.com/profile/18319610639577200961</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://4.bp.blogspot.com/_YuOGEjyujI8/S177_ryZEII/AAAAAAAAApY/GG5AvzcN7HI/S220/DSC_0001.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-1619643649667162121.post-1934046962505580522</id><published>2010-03-08T23:55:00.000-08:00</published><updated>2010-03-08T23:55:00.086-08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='barefoot'/><category scheme='http://www.blogger.com/atom/ns#' term='running'/><title type='text'>Not Quite Barefoot</title><content type='html'>My group run on Sunday was brutal, but it shouldn't have been.&lt;br /&gt;&lt;br /&gt;We started by walking up a not so short hill and then proceeded to run 9 intervals of 3 minutes running, 1 minute walking. This should not have been so hard. In fact, it normally wouldn't have been. But we had special guests. The UBC race-walk team. We had them come with us last year, and it had the same effect.&lt;br /&gt;&lt;br /&gt;It seems being in the presence of people who &lt;span style="font-weight:bold;"&gt;walk&lt;/span&gt; 20km in less than 90 minutes makes some people run faster. Did I mention these are world class athletes? Ya, as in half of the top 5 fastest men and women in Canada. People who hold &lt;span style="font-style:italic;"&gt;current&lt;/span&gt; national and continental records for race walking... But I digress.&lt;br /&gt;&lt;br /&gt;What made this run so brutal was actually the pace at which we walked up that first hill. I'm prone to shin splints. I had a problem with them during last year's training, but my switch to VFF/barefoot running after the Sun Run made them a thing of the past. But walking with any speed over any distance has always triggered them for me (and probably always will). And it did, with a vengeance.&lt;br /&gt;&lt;br /&gt;So I started my first run interval up hill, with shin splints, and at a pace that wasn't maintainable. The result? I was limping by the 5th interval and ended up walking through the 6th running interval. During this time I went from the front of the group of 70+ runners to the back. My cardio was not the problem, it was the pain, which lead to total mental failure. I knew it was a mental limitation, and that's the only reason I was able to force myself to run the last 3 intervals.&lt;br /&gt;&lt;br /&gt;Our route was shorter than the intervals so we ended up running our last interval on the track and then cooling down by walking around the track. It was at this point I decided my Treks were too warm and took them off. I felt almost immediate relief! I was truly shocked. I didn't even know my feet were being constrained by my FiveFingers and had actually tightened up. My feet immediately spread out over the cold track and released all their tension. It felt so good, in fact, that I actually ran a short bit even though I was supposed to be doing a cool down walk.&lt;br /&gt;&lt;br /&gt;I already knew from experience that VFFs were not the same as going barefoot, but I'm going to have to seriously reconsider where on the curve they actually are. I think I'll start by incorporating some barefoot warm up at the start of or before my run.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/1619643649667162121-1934046962505580522?l=rmgraham.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://rmgraham.blogspot.com/feeds/1934046962505580522/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=1619643649667162121&amp;postID=1934046962505580522' title='2 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/1619643649667162121/posts/default/1934046962505580522'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/1619643649667162121/posts/default/1934046962505580522'/><link rel='alternate' type='text/html' href='http://rmgraham.blogspot.com/2010/03/not-quite-barefoot.html' title='Not Quite Barefoot'/><author><name>Ryan Graham</name><uri>http://www.blogger.com/profile/18319610639577200961</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://4.bp.blogspot.com/_YuOGEjyujI8/S177_ryZEII/AAAAAAAAApY/GG5AvzcN7HI/S220/DSC_0001.jpg'/></author><thr:total>2</thr:total></entry><entry><id>tag:blogger.com,1999:blog-1619643649667162121.post-1681435164421457173</id><published>2010-03-07T23:55:00.000-08:00</published><updated>2010-03-07T23:55:00.396-08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='JavaScript'/><category scheme='http://www.blogger.com/atom/ns#' term='work'/><category scheme='http://www.blogger.com/atom/ns#' term='programming'/><category scheme='http://www.blogger.com/atom/ns#' term='jQuery'/><title type='text'>jQuery Plugins</title><content type='html'>It may not look like it from my other blog entries, but I really am a programmer.&lt;br /&gt;&lt;br /&gt;Lately I've been working a lot with CouchDB as both a database and an application server. As part of getting up to speed, I've jumped into JavaScript. Somewhere along the way I found jQuery and ended up writing a plugin.&lt;br /&gt;&lt;br /&gt;Since I'm such a perfectionist and because I'd armed myself with some knowledge of &lt;a href="http://oreilly.com/catalog/9780596517748"&gt;JavaScript's good parts&lt;/a&gt;, I wasn't 100% satisfied with the way some jQuery plugins were written.&lt;br /&gt;&lt;br /&gt;Below is my take on a jQuery plugin template. You can see it in action in my &lt;a href="http://jsbin.com/ecisa/18/js"&gt;autoExpandingList plugin&lt;/a&gt; (&lt;a href="http://jsbin.com/ecisa/18"&gt;demo&lt;/a&gt;). I'll probably put it on GitHub eventually, but for now it's on jsbin (great tool, by the way).&lt;br /&gt;&lt;br /&gt;&lt;pre&gt;&lt;br /&gt;/**&lt;br /&gt; * jQuery.PLUGINNAME&lt;br /&gt; *&lt;br /&gt; * @author YOUR NAME&lt;br /&gt; *&lt;br /&gt; * NOTES/DESCRIPTION&lt;br /&gt; * &lt;br /&gt; */&lt;br /&gt;"use strict";&lt;br /&gt;(function ($) {&lt;br /&gt;&lt;br /&gt;    $.fn.pluginName = $.fn.pluginName || (function () {&lt;br /&gt;&lt;br /&gt;        var defaults = {&lt;br /&gt;            //Default configuration&lt;br /&gt;        };&lt;br /&gt;&lt;br /&gt;        // Utility functions that you use inside your plugin that&lt;br /&gt;        // don't rely on per-invocation closures should go here.&lt;br /&gt;        // This is also a good place to keep track of any global&lt;br /&gt;        // state information that your individual plugin instances&lt;br /&gt;        // may want to make use of.&lt;br /&gt;        // This is your plugin function, what people will call&lt;br /&gt;        // with $("li").pluginName(...);&lt;br /&gt;        return function (settings) {&lt;br /&gt;&lt;br /&gt;            // Settings are cached per selector/invocation,&lt;br /&gt;            // not per affected element. This is a bit of a memory optimization.&lt;br /&gt;            // If you need/want your settings to be per element,&lt;br /&gt;            // just move this line to inside the each() below.&lt;br /&gt;            settings = $.extend({}, defaults, settings);&lt;br /&gt;&lt;br /&gt;            this.each(function () {&lt;br /&gt;                //Cache 'this' because it may change with scope,&lt;br /&gt;                // depending on what you do below.&lt;br /&gt;                var that = this;&lt;br /&gt;&lt;br /&gt;                /* Insert your special sauce here.&lt;br /&gt;                 * Perform your operations on 'this' or 'that'&lt;br /&gt;                 *and it will affect each element in the selector.&lt;br /&gt;                 */&lt;br /&gt;            });&lt;br /&gt;&lt;br /&gt;            // This is important in jQuery land.&lt;br /&gt;            // It allows chaining. Even if you don't make use of chaining,&lt;br /&gt;            // people using your plugin may.&lt;br /&gt;            return this;&lt;br /&gt;        };&lt;br /&gt;    }());&lt;br /&gt;}(jQuery)); //Pass in the jQuery object by name in case $ is used&lt;br /&gt;&lt;/pre&gt;&lt;br /&gt;&lt;br /&gt;Some other things that I found to make things better were &lt;a href="http://jslint.com/"&gt;JSLint&lt;/a&gt; (which the above template passes) and &lt;a href="http://jsbeautifier.org/"&gt;js-beautify&lt;/a&gt; (which was used to format the above).&lt;br /&gt;&lt;br /&gt;js-beautify had a small bug where it would make things ugly if you were using an empty object literal (&lt;code&gt;$.extend({}, defaults, settings)'&lt;/code&gt;), but a one-liner  patch was all it took to clear that up and I've already submitted it and had it applied, so it's ready for you to use!&lt;br /&gt;&lt;br /&gt;I've also been teaching myself Python, so maybe I'll have some posts on that in the future as well. And maybe some thoughts on CouchDB.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/1619643649667162121-1681435164421457173?l=rmgraham.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='related' href='http://jsbin.com/ecisa/18' title='jQuery Plugins'/><link rel='replies' type='application/atom+xml' href='http://rmgraham.blogspot.com/feeds/1681435164421457173/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=1619643649667162121&amp;postID=1681435164421457173' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/1619643649667162121/posts/default/1681435164421457173'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/1619643649667162121/posts/default/1681435164421457173'/><link rel='alternate' type='text/html' href='http://rmgraham.blogspot.com/2010/03/jquery-plugins.html' title='jQuery Plugins'/><author><name>Ryan Graham</name><uri>http://www.blogger.com/profile/18319610639577200961</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://4.bp.blogspot.com/_YuOGEjyujI8/S177_ryZEII/AAAAAAAAApY/GG5AvzcN7HI/S220/DSC_0001.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-1619643649667162121.post-4863595739126064665</id><published>2010-03-06T23:55:00.000-08:00</published><updated>2010-03-06T23:55:00.574-08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='barefoot'/><category scheme='http://www.blogger.com/atom/ns#' term='running'/><title type='text'>Barefoot Followup</title><content type='html'>So it's been a little while since I talked about my barefoot adventures. I've come to a few conclusions.&lt;br /&gt;&lt;br /&gt;Being barefoot is awesome, but having to carry shoes around for when public transit officials tell me I can't ride the train barefoot is a pain in the [expletive].&lt;br /&gt;&lt;br /&gt;Vibram FiveFingers are very comfortable as an all-day, everywhere shoe and attract far more positive attention and next to no negative attention.&lt;br /&gt;&lt;br /&gt;As you can imagine, FiveFingers are what I've been wearing lately. I managed to go a solid few months barefoot and my feet were getting quite tough. There were very few surfaces that I found uncomfortable, and none that I walked on regularly.&lt;br /&gt;&lt;br /&gt;For my Sun Run training I've been running in my new FiveFinger Treks. I find the sole to be a little thick for my liking, but I love the leather they used for the rest of the shoe. I took a long break from running barefoot and pseudo-barefoot because it didn't feel right. I did some more research while I took my break and found I'd ignored one really important point.&lt;br /&gt;&lt;br /&gt;Relax. Seriously, let your legs from the knee down go almost limp. Don't try to position your foot so you land on your forefoot. That was my mistake. If your knees are bent enough, your foot will land forefoot first. Let your feet relax too. If they are tense, you'll hurt yourself.&lt;br /&gt;&lt;br /&gt;In other barefoot related news, I've finally converted my wife! Partially, at least. She's now wearing her own pair of FiveFinger KSOs and enjoying them. I've been watching closely to make sure she doesn't repeat any of my mistakes, like starting off too aggressively or running wrong.&lt;br /&gt;&lt;br /&gt;Since I'm not keeping my Sun Run training a surprise this year, I'm going to try to post regularly about my progress. Stay tuned..&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/1619643649667162121-4863595739126064665?l=rmgraham.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='related' href='http://rmgraham.blogspot.com/2009/07/barefoot-experiment-lessons-learned.html' title='Barefoot Followup'/><link rel='replies' type='application/atom+xml' href='http://rmgraham.blogspot.com/feeds/4863595739126064665/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=1619643649667162121&amp;postID=4863595739126064665' title='3 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/1619643649667162121/posts/default/4863595739126064665'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/1619643649667162121/posts/default/4863595739126064665'/><link rel='alternate' type='text/html' href='http://rmgraham.blogspot.com/2010/03/barefoot-followup.html' title='Barefoot Followup'/><author><name>Ryan Graham</name><uri>http://www.blogger.com/profile/18319610639577200961</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://4.bp.blogspot.com/_YuOGEjyujI8/S177_ryZEII/AAAAAAAAApY/GG5AvzcN7HI/S220/DSC_0001.jpg'/></author><thr:total>3</thr:total></entry><entry><id>tag:blogger.com,1999:blog-1619643649667162121.post-4238682450741178437</id><published>2010-03-06T11:29:00.001-08:00</published><updated>2010-03-06T11:47:11.248-08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='work'/><category scheme='http://www.blogger.com/atom/ns#' term='family'/><category scheme='http://www.blogger.com/atom/ns#' term='running'/><title type='text'>Great Week</title><content type='html'>I've had a few things going on lately and this last week seems to have ended on a high note.&lt;br /&gt;&lt;br /&gt;My project at work paid large dividends over Thursday and Friday. I was able to get a couple week's work done in only two days thanks to my design decisions early on in the project. I love it when a plan comes together.&lt;br /&gt;&lt;br /&gt;In fitness land, I finally got in both of my midweek runs for my Sun Run training. This was week 4. I'm still disappointed that things kept getting in the way, but I'm very happy that I was able to fit them in this week. I'm already at that point in the training where I'm finding it difficult to hold myself back and not over do it.  I'm hoping to expand my route next week to up the distance to 2.8km/1.7mi from 2.2km/1.4mi. It's a small increase, but it should be. I'll expand it the week after that again I think.&lt;br /&gt;&lt;br /&gt;And then there's this other project that I've been working on. Let's call it Project With A View. The most recent meeting I had about it was a blast and was a great way to cap off the week.&lt;br /&gt;&lt;br /&gt;Actually, that's not quite how I capped off the week. We found a babysitter for Arland and I went out for dinner with my wife. Sorry, Project With a View, the wife wins.&lt;br /&gt;&lt;br /&gt;I'll see if I can write up a couple other entries to follow up on some things in the near future. Tie  up some loose threads from previous entries.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/1619643649667162121-4238682450741178437?l=rmgraham.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://rmgraham.blogspot.com/feeds/4238682450741178437/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=1619643649667162121&amp;postID=4238682450741178437' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/1619643649667162121/posts/default/4238682450741178437'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/1619643649667162121/posts/default/4238682450741178437'/><link rel='alternate' type='text/html' href='http://rmgraham.blogspot.com/2010/03/great-week.html' title='Great Week'/><author><name>Ryan Graham</name><uri>http://www.blogger.com/profile/18319610639577200961</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://4.bp.blogspot.com/_YuOGEjyujI8/S177_ryZEII/AAAAAAAAApY/GG5AvzcN7HI/S220/DSC_0001.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-1619643649667162121.post-8703193297410097004</id><published>2009-07-01T00:01:00.000-07:00</published><updated>2009-07-01T00:01:07.731-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='barefoot'/><title type='text'>Barefoot Experiment: Lessons Learned, Questions Asked</title><content type='html'>Continuing on, as promised, with my thoughts on life without shoes: What are some of the problems with going barefoot? What kinds of things have you had to work around that you didn't expect?&lt;br /&gt;&lt;br /&gt;Obviously, there are some problems with going barefoot. If there weren't, I like to think most people wouldn't wear shoes. It turns out that shoes are deeply ingrained in our society. (Wow, really?) I'm speaking of what is generally referred to as the Western World, here, as that's where I was born and where I continue to live.&lt;br /&gt;&lt;br /&gt;What kinds of daily activities are different for barefooters? Well, visiting people is different. You know the ritual. You come in the door, scan for a pile of shoes and promptly add yours to the pile in an effort to keep the carpets clean. But what if you can't take your "shoes" off? The most popular and clever solution I've heard is baby wipes. You can wipe your feet off at the door and enter without leaving black foot prints all over the place. Brilliant! In my own home, I'm lucky enough to have exterior water faucets at every entrance. I now wash my feet whenever I come in the house and whenever I leave the house. Especially on my way out to visit someone. My feet get hardly any dirt time when they go from a clean puddle to the car to a clean driveway. It also helps to have a few extra layers of skin on the soles of my feet, so I can scrub them off on the sidewalk and door mat before going in.&lt;br /&gt;&lt;br /&gt;Other fun observations: Not all floor tiles are the same temperature. Exposed aggregate driveways are rougher than crushed gravel. Lotion that claims to soften feet actually softens your feet (whoops!).&lt;br /&gt;&lt;br /&gt;I'll sign off with a question I've started asking people in response to them claiming bare feet were dirty...&lt;br /&gt;&lt;br /&gt;When's the last time you washed your shoes?&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/1619643649667162121-8703193297410097004?l=rmgraham.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://rmgraham.blogspot.com/feeds/8703193297410097004/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=1619643649667162121&amp;postID=8703193297410097004' title='2 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/1619643649667162121/posts/default/8703193297410097004'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/1619643649667162121/posts/default/8703193297410097004'/><link rel='alternate' type='text/html' href='http://rmgraham.blogspot.com/2009/07/barefoot-experiment-lessons-learned.html' title='Barefoot Experiment: Lessons Learned, Questions Asked'/><author><name>Ryan Graham</name><uri>http://www.blogger.com/profile/18319610639577200961</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://4.bp.blogspot.com/_YuOGEjyujI8/S177_ryZEII/AAAAAAAAApY/GG5AvzcN7HI/S220/DSC_0001.jpg'/></author><thr:total>2</thr:total></entry><entry><id>tag:blogger.com,1999:blog-1619643649667162121.post-53675433594502943</id><published>2009-06-30T01:17:00.000-07:00</published><updated>2009-06-30T01:17:01.663-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='barefoot'/><title type='text'>Barefoot Experiment: Why?</title><content type='html'>In my last post I referred to &lt;a href="http://rmgraham.blogspot.com/2009/06/my-latest-experiment-living-barefoot.html"&gt;going barefoot as an experiment&lt;/a&gt;, but I didn't put a lot of effort into explaining what I meant by it.&lt;br /&gt;&lt;br /&gt;I am, generally speaking, a minimalist. I do crazy things like never wear a jacket unless it is below freezing. To me, the effort of carrying around a jacket all day and keeping track of where it is is a pain in the butt and something I'd rather not do. So instead, I condition myself to go without. Similar, I don't like being weighed down by heaving shirts and warm pants that will inevitably be too warm to wear indoors, where I spend most of my time. So I condition myself to be able to wear shorts and tshirts most of the year. No, I don't live in Florida. Yes, it does snow here in the winter. I am one of those few people who know what kind of traction sandals get on ice and in snow (actually quite decent).&lt;br /&gt;&lt;br /&gt;Imagine my glee when I discovered that some people put shoes in the same category as I put jackets. Part of my minimalist nature is questioning things that others see as normal. If I only need a jacket if I'm cold, is there some other way I can manage the problem of being cold? If the human foot when millions of years without shoes, are they really needed? If the human foot is as well adapted to walking and running as the evidence seems to indicate, what would happen if I kicked off my shoes for a while?&lt;br /&gt;&lt;br /&gt;The common question other barefooters and I often get is "Why go barefoot?" To me, this question is the first sign of a misunderstanding. The question, as far as I'm concerned, really ought to be "Why wear shoes?"&lt;br /&gt;&lt;br /&gt;In my quest for answers, I determined that I actually had no reasons of my own. I hate when that happens. The main reason I wore shoes was because I always had and so had everyone else I knew. That's a pretty lame excuse, right up there with "because!"&lt;br /&gt;&lt;br /&gt;Why else wear shoes? Safety is a pretty common one, and also hard to ignore. The modern world has a lot of hazards for bare feet. Glass, nails, discarded needles, dog crap, etc. Well that's a bummer, I already found plenty of reasons to wear shoes. Time to adjust the question. If shoes are needed, what part of the shoe's function is really needed? A quick look over my list reveals: a sole. That's not much of a shoe. Once you bind that to your food with something you've got some form of sandal. Interesting. Is that the best we can do? Sandals are kind of thick soled and numbing, though, so maybe there's something better. Leather moccasins? That'd do the trick. Surely the human race has discovered or invented something better than that though. Oh look, an Italian company did, years ago. Vibram FiveFingers are a modern solution to my problem. A thin rubberized sole with just enough covering to keep the sole on. And the sole is so minimal it does absolutely nothing but protect your feed from little sharp things and scuffing. Sweet, problem solved. As a bonus, they're also light, which goes perfectly with my shorts and t-shirt habits.&lt;br /&gt;&lt;br /&gt;Part of wearing such minimalist shoes is watching where you are stepping and adjusting your stride based on the excellent bio-feedback from your soles. I made a couple interesting observations during my first month of wearing my Vibram FiveFingers KSOs. First, my feet were losing their sensitivity. I could no longer feel the small details that at first were almost overwhelming. In hind sight, that should've been expected. The second observation was the breakthrough, however.&lt;br /&gt;&lt;br /&gt;I saw hardly ANY of the barefoot hazards I was afraid of! I saw some broken glass at a bus stop, and.. actually, that's it. In a whole month, I saw one single hazard, and it was trivially avoidable. Well now... this might change some things. Some of my assumptions were wrong! Time to re-evaluate my decisions on footwear.&lt;br /&gt;&lt;br /&gt;Taking into account what I'd observed myself and what others' had described of their experiences, I decided to take the plunge.&lt;br /&gt;&lt;br /&gt;The result: I haven't found enough reasons yet to put my shoes back on. At least not full-time. I do wear shoes, of sorts, for certain occasions and locations. Since I'm such a minimalist and pragmatist, I follow &lt;a href="http://barefootcanada.blogspot.com/2009/06/backup-footwear-option.html"&gt;Barefoot Moe's advice on backup footwear&lt;/a&gt; and I now carry a pair of $2 flip flops in the lower pockets of my shorts. In my case, I use these backup shoes for places that ask me to wear shoes and in public washrooms. Surprisingly few restaurants actually ask patrons to wear shoes. Equally surprising was that local &lt;a href="http://www.translink.ca/"&gt;public transit&lt;/a&gt; seems to require shoes (even though they don't post it anywhere but claim to). I went through a rebellious phase before realizing it was just too much effort. Especially since the point was to put less effort into my footwear.&lt;br /&gt;&lt;br /&gt;What's next? It's an ongoing experiment. As new data is collected, I am regularly re-assessing the situation. I even have my next set of questions and challenges lined up! What about winter? If freezing is my threshold for wearing a jacket, what is my threshold for wearing shoes? And if I do need shoes, what is the minimum required shoe to address ONLY the temperature problem?&lt;br /&gt;&lt;br /&gt;Next time I'll ramble on about some of the things I've learned and questions I thought I'd never ask.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/1619643649667162121-53675433594502943?l=rmgraham.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://rmgraham.blogspot.com/feeds/53675433594502943/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=1619643649667162121&amp;postID=53675433594502943' title='6 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/1619643649667162121/posts/default/53675433594502943'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/1619643649667162121/posts/default/53675433594502943'/><link rel='alternate' type='text/html' href='http://rmgraham.blogspot.com/2009/06/barefoot-experiment-why.html' title='Barefoot Experiment: Why?'/><author><name>Ryan Graham</name><uri>http://www.blogger.com/profile/18319610639577200961</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://4.bp.blogspot.com/_YuOGEjyujI8/S177_ryZEII/AAAAAAAAApY/GG5AvzcN7HI/S220/DSC_0001.jpg'/></author><thr:total>6</thr:total></entry><entry><id>tag:blogger.com,1999:blog-1619643649667162121.post-1269671366250369682</id><published>2009-06-28T09:27:00.000-07:00</published><updated>2009-06-29T01:16:55.402-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='barefoot'/><title type='text'>My Latest Experiment: Living Barefoot</title><content type='html'>A couple months ago I read an &lt;a href="http://www.dailymail.co.uk/home/moslive/article-1170253/The-painful-truth-trainers-Are-expensive-running-shoes-waste-money.html"&gt;article&lt;/a&gt; about the lack of science behind the modern running shoe. A lucky find in my random surfing. I sent it around and my friends and I talked about it for a bit and mused about what the ideal shoe would be like. Well it didn't take long to discover that several companies were already working on the ultimate minimalist shoe.&lt;br /&gt;&lt;br /&gt;In short order I'd found a local retailer for Vibram FiveFingers and had a shiny new pair of KSOs to run around in. It didn't take long to wonder if I could wear the shoes full-time and with that curiosity came more surfing and searching. I was amazed at the number of people around the world who had sworn off shoes entirely, never mind the whole minimalist shoe concept. I was intrigued, to say the least.&lt;br /&gt;&lt;br /&gt;I never did like shoes, and it was as if I'd suddenly been told I was right all along. Ya ya, don't believe everything you read, I know... but that begs the question of why do we wear shoes in the first place? I've always been one to question the status quo, so I did. As of this writing, I haven't worn shoes (flip flops, actually) for more than a few steps inside restaurants and public bathrooms in the last month. And that was after a full month of wearing my KSOs full-time.&lt;br /&gt;&lt;br /&gt;My feet have changed shape, and I have started developing muscles below the knees the average person has no use for. When I say my feet have changes shape, I'm serious. After wearing KSOs for a few weeks, my Airwalks and New Balance runners started feeling very different. Tight across the toes and forefoot. Almost too tight to put on and certainly too tight to wear for any extended periods. At this point, I can honestly say that I don't even know if my "normal" shoes even fit me anymore!&lt;br /&gt;&lt;br /&gt;Where was I? Oh ya... searching the intarwebs..&lt;br /&gt;&lt;br /&gt;While in search of local barefooters (running, hiking, whatever!) to meet and learn from, I stumbled upon Al's meetup.com profile, which had a link in it to the &lt;a href="http://www.livingbarefoot.info/"&gt;Living Barefoot&lt;/a&gt; website. There I found forums and a small collective of barefooters from around the world. It's only a few months old, but it sure seems to be picking up in popularity. Oh, and how awesome is this, they are putting together &lt;a href="http://www.livingbarefoot.info/the-living-barefoot-show-podcast/"&gt;The Living Barefoot Show&lt;/a&gt;. If the teaser is any indication, it promises to be a killer show.&lt;br /&gt;&lt;br /&gt;After finding several excellent websites about the ins and outs of going barefoot, I was eager to find something in print. I soon learned that, at that time, such a book was mere weeks away from publishing. &lt;a href="http://books.google.ca/books?id=9cEEuHpfWuQC"&gt;Born To Run&lt;/a&gt; is one of the best books I've read, on any topic. Granted, I don't read a lot of non-programming books, but it's still true. It's an excellent account of the author's journey into the world of ultra-running, minimalist footwear, and the idea that humans are actually natural born distance runners. As it turns out, that first article I read that got me started on this path was actually one of the chapters in this book.&lt;br /&gt;&lt;br /&gt;So, if any of the two or three people following this blog have any secret desires to liberate their feet or even just meet some cool people, stop by the &lt;a href="http://www.livingbarefoot.info/BarefootCommunity/"&gt;Living Barefoot Forums&lt;/a&gt;. I post as "Ryan".&lt;br /&gt;&lt;br /&gt;If you're looking for great blogs by people on the forums, &lt;a href="http://barefootcanada.blogspot.com/"&gt;Barefoot Moe&lt;/a&gt;, &lt;a href="http://toegirltina.blogspot.com/"&gt;Tina&lt;/a&gt;, and &lt;a href="http://barefootmichael.blogspot.com/"&gt;Barefoot Michael&lt;/a&gt; are all very active on the boards.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/1619643649667162121-1269671366250369682?l=rmgraham.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='related' href='http://www.livingbarefoot.info/' title='My Latest Experiment: Living Barefoot'/><link rel='replies' type='application/atom+xml' href='http://rmgraham.blogspot.com/feeds/1269671366250369682/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=1619643649667162121&amp;postID=1269671366250369682' title='2 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/1619643649667162121/posts/default/1269671366250369682'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/1619643649667162121/posts/default/1269671366250369682'/><link rel='alternate' type='text/html' href='http://rmgraham.blogspot.com/2009/06/my-latest-experiment-living-barefoot.html' title='My Latest Experiment: Living Barefoot'/><author><name>Ryan Graham</name><uri>http://www.blogger.com/profile/18319610639577200961</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://4.bp.blogspot.com/_YuOGEjyujI8/S177_ryZEII/AAAAAAAAApY/GG5AvzcN7HI/S220/DSC_0001.jpg'/></author><thr:total>2</thr:total></entry><entry><id>tag:blogger.com,1999:blog-1619643649667162121.post-850389679601372037</id><published>2009-06-18T06:22:00.000-07:00</published><updated>2009-06-18T06:40:07.214-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='random'/><category scheme='http://www.blogger.com/atom/ns#' term='blogging'/><title type='text'>Time For A Change</title><content type='html'>I've been getting the itch to write again, so I'm starting to jot down notes and ideas for future posts. My first thoughts about the process are what topics and what is my purpose for writing. I think I'll approach it as an experiment, and that ought to cover both questions.&lt;br /&gt;&lt;br /&gt;This won't be a proper experiment following any sort of establish method, but more of an open ended self-study. I've got several completely unrelated interests which are different enough that they really ought to be separate blogs. I'm not interested in spreading myself far enough to have multiple blogs, especially when I can't write enough to write for this one regularly. So... the answer to the first part is that I will write about any topic that comes to mind.&lt;br /&gt;&lt;br /&gt;The purpose will be two-fold: to scratch my writing itch and to see what my interests really are. After a year or so, or a few dozen posts (sounds daunting already), I'll review what I've written and see how well my topics line up with what I think are my actual interests. I suspect I'll be making heavy use of tagging, or labels as blogger likes to call them. I'm pretty anal about categorizing things consistently, so you'll probably be able to filter out the noise by subscribing to specific labels if that's your thing.&lt;br /&gt;&lt;br /&gt;So, to those that have found my little blog through barefooting, worry not, I've got plans for that topic. For those that have found this blog through programming/Linux, I've got plans there too. For anyone else, you're either a family member or a stalker. In both cases, I'm sure there will be enough personal news to make the blog worth following.&lt;br /&gt;&lt;br /&gt;And I'll try to keep the meta-blogging to a minimum, I promise. I wanted to make an exception this time more as a commitment to myself.&lt;br /&gt;&lt;br /&gt;So until next time, keep your feet bare!&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/1619643649667162121-850389679601372037?l=rmgraham.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://rmgraham.blogspot.com/feeds/850389679601372037/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=1619643649667162121&amp;postID=850389679601372037' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/1619643649667162121/posts/default/850389679601372037'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/1619643649667162121/posts/default/850389679601372037'/><link rel='alternate' type='text/html' href='http://rmgraham.blogspot.com/2009/06/time-for-change.html' title='Time For A Change'/><author><name>Ryan Graham</name><uri>http://www.blogger.com/profile/18319610639577200961</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://4.bp.blogspot.com/_YuOGEjyujI8/S177_ryZEII/AAAAAAAAApY/GG5AvzcN7HI/S220/DSC_0001.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-1619643649667162121.post-442938661377127626</id><published>2009-03-05T12:05:00.000-08:00</published><updated>2009-03-05T12:31:08.743-08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='family'/><category scheme='http://www.blogger.com/atom/ns#' term='blogging'/><title type='text'>Talkin' 'bout My Generation</title><content type='html'>Wow, I had no idea I was part of a generation who's parents have blogs. I just found out this afternoon that my mom has a blog under the name of her business, &lt;a href="http://bitsnthreads.blogspot.com/"&gt;Bits 'N Pieces&lt;/a&gt;. Crazy.&lt;br /&gt;&lt;br /&gt;I like the randomness of her first post. She's using it as a companion to her online stores, which she seems to have a lot more of now than I remember her having...&lt;br /&gt;&lt;br /&gt;There's knitted and crocheted stuff at her &lt;a href="http://bitsnyarns.etsy.com/"&gt;Bits 'N Yarns&lt;/a&gt; store at Etsy, her awesome quilting stuff at her &lt;a href="http://bitsnthreads.etsy.com/"&gt;Bits 'N Threads&lt;/a&gt; store (also at Etsy), and then a &lt;a href="http://icraft.ca/bits_n_pieces"&gt;Bits 'N Pieces&lt;/a&gt; store over at iCraft.ca. All this will keeping her corner of &lt;a href="http://www.creativecompany.ca/"&gt;Creative Company&lt;/a&gt; full for locals and tourists in Merritt, BC.&lt;br /&gt;&lt;br /&gt;So you see, there is very little reason why you don't already own something made by her.&lt;br /&gt;&lt;br /&gt;Wonder how long before my dad has one...&lt;br /&gt;&lt;br /&gt;Edit: Damn, she's even on &lt;a href="http://twitter.com/Bitsnthreads"&gt;Twitter&lt;/a&gt;.. I'm not even on Twitter!&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/1619643649667162121-442938661377127626?l=rmgraham.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='related' href='http://bitsnthreads.blogspot.com/' title='Talkin&apos; &apos;bout My Generation'/><link rel='replies' type='application/atom+xml' href='http://rmgraham.blogspot.com/feeds/442938661377127626/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=1619643649667162121&amp;postID=442938661377127626' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/1619643649667162121/posts/default/442938661377127626'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/1619643649667162121/posts/default/442938661377127626'/><link rel='alternate' type='text/html' href='http://rmgraham.blogspot.com/2009/03/talkin-bout-my-generation.html' title='Talkin&apos; &apos;bout My Generation'/><author><name>Ryan Graham</name><uri>http://www.blogger.com/profile/18319610639577200961</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://4.bp.blogspot.com/_YuOGEjyujI8/S177_ryZEII/AAAAAAAAApY/GG5AvzcN7HI/S220/DSC_0001.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-1619643649667162121.post-5770523176559662379</id><published>2008-09-04T09:29:00.000-07:00</published><updated>2008-09-04T09:39:13.433-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='work'/><title type='text'>Job Change</title><content type='html'>...but not changing company. I'm still at &lt;a href="http://www.fortinet.com/"&gt;Fortinet&lt;/a&gt;.&lt;br /&gt;&lt;br /&gt;Now that I've finally figured out how to describe my job to non-technical people, I go and change teams. I'm moving from development (on the main product) to configuration management (covering all products).&lt;br /&gt;&lt;br /&gt;Guess I better start working on how to explain that one to people. CM is such a niche, most IT people don't even seem to understand it. Hell, I probably don't even understand it entirely myself! Then there's the dirty looks I get from some developers. The kind I gave to developers moving to QA (yes, such strange people exist). Maybe it's the office, or maybe it's CM in general, but it's not seen as prestigious as being a hard-core C monkey. Maybe it's a mistake, maybe I'll move back to development after a year. Who knows.&lt;br /&gt;&lt;br /&gt;Should be some moderately interesting times. Hopefully not in a bad way. With some luck, I'll have more energy for coding at the end of the day though. And that can't be a bad thing.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/1619643649667162121-5770523176559662379?l=rmgraham.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://rmgraham.blogspot.com/feeds/5770523176559662379/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=1619643649667162121&amp;postID=5770523176559662379' title='5 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/1619643649667162121/posts/default/5770523176559662379'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/1619643649667162121/posts/default/5770523176559662379'/><link rel='alternate' type='text/html' href='http://rmgraham.blogspot.com/2008/09/job-change.html' title='Job Change'/><author><name>Ryan Graham</name><uri>http://www.blogger.com/profile/18319610639577200961</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://4.bp.blogspot.com/_YuOGEjyujI8/S177_ryZEII/AAAAAAAAApY/GG5AvzcN7HI/S220/DSC_0001.jpg'/></author><thr:total>5</thr:total></entry><entry><id>tag:blogger.com,1999:blog-1619643649667162121.post-8202745652294852910</id><published>2008-05-22T16:00:00.000-07:00</published><updated>2008-05-22T18:09:53.323-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='random'/><title type='text'>Breaking things</title><content type='html'>Found this draft while writing my previous entry.&lt;br /&gt;&lt;br /&gt;My style of poetic wit. May it inspire you in stressful times.&lt;br /&gt;&lt;br /&gt;&lt;blockquote&gt;&lt;br /&gt;When you find yourself juggling too many things,&lt;br /&gt;take the easy way out...&lt;br /&gt;&lt;br /&gt;Drop a few on the ground and laugh at them&lt;br /&gt;after all, laughing is good for the soul..&lt;br /&gt;..but be careful, broken glass is bad for the sole&lt;br /&gt;&lt;br /&gt;To avoid hurting your feet, maybe you're better off&lt;br /&gt;jumping on your furniture while you laugh at what you've dropped&lt;br /&gt;surely no one will hold you to your commitments then&lt;br /&gt;...and the ones holding you while you're committed won't expect much of you either!&lt;br /&gt;&lt;/blockquote&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/1619643649667162121-8202745652294852910?l=rmgraham.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://rmgraham.blogspot.com/feeds/8202745652294852910/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=1619643649667162121&amp;postID=8202745652294852910' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/1619643649667162121/posts/default/8202745652294852910'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/1619643649667162121/posts/default/8202745652294852910'/><link rel='alternate' type='text/html' href='http://rmgraham.blogspot.com/2008/01/breaking-things.html' title='Breaking things'/><author><name>Ryan Graham</name><uri>http://www.blogger.com/profile/18319610639577200961</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://4.bp.blogspot.com/_YuOGEjyujI8/S177_ryZEII/AAAAAAAAApY/GG5AvzcN7HI/S220/DSC_0001.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-1619643649667162121.post-894145974628575703</id><published>2008-05-22T08:31:00.001-07:00</published><updated>2008-05-22T08:37:44.979-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='random'/><category scheme='http://www.blogger.com/atom/ns#' term='blogging'/><category scheme='http://www.blogger.com/atom/ns#' term='google'/><title type='text'>New Habit</title><content type='html'>It seems I've picked up a new habit thanks to the Notes feature in &lt;a href="http://www.google.com/reader"&gt;Google Reader&lt;/a&gt;. Instead of taking the time to write a thoughtful response to an article I read, I just add a sentence or two of commentary to the &lt;a href="http://www.google.com/reader/shared/13006952649602989832"&gt;items I share&lt;/a&gt;.&lt;br /&gt;&lt;br /&gt;In other news.. &lt;a href="http://sites.google.com/site/sites/"&gt;Google Sites&lt;/a&gt; is now open for general use. I've been waiting for this, and it's really exciting for some reason, but for the life of me, I can't remember what the fsck I wanted to do with it! Oh well, at least I won't have to wait when the inspiration comes again.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/1619643649667162121-894145974628575703?l=rmgraham.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='related' href='https://www.google.com/reader/shared/13006952649602989832' title='New Habit'/><link rel='replies' type='application/atom+xml' href='http://rmgraham.blogspot.com/feeds/894145974628575703/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=1619643649667162121&amp;postID=894145974628575703' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/1619643649667162121/posts/default/894145974628575703'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/1619643649667162121/posts/default/894145974628575703'/><link rel='alternate' type='text/html' href='http://rmgraham.blogspot.com/2008/05/new-habit.html' title='New Habit'/><author><name>Ryan Graham</name><uri>http://www.blogger.com/profile/18319610639577200961</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://4.bp.blogspot.com/_YuOGEjyujI8/S177_ryZEII/AAAAAAAAApY/GG5AvzcN7HI/S220/DSC_0001.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-1619643649667162121.post-7798658563185914567</id><published>2008-03-16T17:07:00.000-07:00</published><updated>2008-03-16T17:21:18.625-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='rant'/><category scheme='http://www.blogger.com/atom/ns#' term='kde'/><title type='text'>KDE4 to the Rescue!</title><content type='html'>I my last rant I complained about &lt;a href="http://rmgraham.blogspot.com/2008/03/why-ii.html"&gt;stupid right-click behaviour&lt;/a&gt;. I updated my KDE4 install to the latest 4.0.2, so it was time to give it a spin for a day again. Well, &lt;span style="font-style:italic;"&gt;lo and behold&lt;/span&gt;, KDE4 does not have this messed up behaviour.&lt;br /&gt;&lt;br /&gt;I've been using KDE4 for a while, on and off. Unlike, apparently, a lot of other people, I've followed KDE4 development since it was first announced. I didn't have the unrealistic expectation of a finished product. Because of this, I've been ecstatic with it, and 4.0.2 is a good example of progress. I can't wait until 4.1.0 comes out, when KDE-PIM will join the team. I recently upgraded my 3.5.x install to 3.5.8, which includes a branch merge of some really nice "enterprise" features and polish. Very nice, I can't wait.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/1619643649667162121-7798658563185914567?l=rmgraham.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='related' href='http://rmgraham.blogspot.com/2008/03/why-ii.html' title='KDE4 to the Rescue!'/><link rel='replies' type='application/atom+xml' href='http://rmgraham.blogspot.com/feeds/7798658563185914567/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=1619643649667162121&amp;postID=7798658563185914567' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/1619643649667162121/posts/default/7798658563185914567'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/1619643649667162121/posts/default/7798658563185914567'/><link rel='alternate' type='text/html' href='http://rmgraham.blogspot.com/2008/03/kde4-to-rescue.html' title='KDE4 to the Rescue!'/><author><name>Ryan Graham</name><uri>http://www.blogger.com/profile/18319610639577200961</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://4.bp.blogspot.com/_YuOGEjyujI8/S177_ryZEII/AAAAAAAAApY/GG5AvzcN7HI/S220/DSC_0001.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-1619643649667162121.post-9147470752614502497</id><published>2008-03-11T07:45:00.001-07:00</published><updated>2008-11-12T18:00:33.536-08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='rant'/><category scheme='http://www.blogger.com/atom/ns#' term='kde'/><title type='text'>Why? II</title><content type='html'>This one has been a major source of irritation lately, as I keep accidentally closing programs because of it...&lt;br /&gt;&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://4.bp.blogspot.com/_YuOGEjyujI8/R9abNQ_KoSI/AAAAAAAAACY/pjlqFFTdVgU/s1600-h/right_click.png"&gt;&lt;img style="display:block; margin:0px auto 10px; text-align:center;cursor:pointer; cursor:hand;" src="http://4.bp.blogspot.com/_YuOGEjyujI8/R9abNQ_KoSI/AAAAAAAAACY/pjlqFFTdVgU/s320/right_click.png" border="0" alt=""id="BLOGGER_PHOTO_ID_5176495473909473570" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;If I right-click on any of these systray items, a context menu pops up. This is a wonderful feature and I use it extensively. The problem comes in when I release the right mouse button. That's right, unlike any other right-click menu, which persists after letting go of the button, these menus disappear. But wait, it gets worse! When you let go of a button, it activates whatever menu item happens to be selected at the time. You know what menu item seems to be at the bottom most of the time? Exit.&lt;br /&gt;&lt;br /&gt;Not only is this inconsistent, the inconsistency isn't even consistent! (say that 5 times fast, I dare you). Of all the apps running in that screenshot, one of them isn't a native KDE app. Guess which one doesn't suffer from this problem? Skype. Skype actually behaves sanely.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/1619643649667162121-9147470752614502497?l=rmgraham.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://rmgraham.blogspot.com/feeds/9147470752614502497/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=1619643649667162121&amp;postID=9147470752614502497' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/1619643649667162121/posts/default/9147470752614502497'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/1619643649667162121/posts/default/9147470752614502497'/><link rel='alternate' type='text/html' href='http://rmgraham.blogspot.com/2008/03/why-ii.html' title='Why? II'/><author><name>Ryan Graham</name><uri>http://www.blogger.com/profile/18319610639577200961</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://4.bp.blogspot.com/_YuOGEjyujI8/S177_ryZEII/AAAAAAAAApY/GG5AvzcN7HI/S220/DSC_0001.jpg'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://4.bp.blogspot.com/_YuOGEjyujI8/R9abNQ_KoSI/AAAAAAAAACY/pjlqFFTdVgU/s72-c/right_click.png' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-1619643649667162121.post-5347668638689579564</id><published>2008-03-06T11:31:00.001-08:00</published><updated>2008-11-12T18:00:33.730-08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='rant'/><category scheme='http://www.blogger.com/atom/ns#' term='kmail'/><category scheme='http://www.blogger.com/atom/ns#' term='kde'/><title type='text'>Why?</title><content type='html'>Dear Intarwebs,&lt;br /&gt;&lt;br /&gt;Why is the "delete folder" so close to the "empty trash"?&lt;br /&gt;&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://1.bp.blogspot.com/_YuOGEjyujI8/R9BGugfotgI/AAAAAAAAACQ/_dmwTWdGf3Q/s1600-h/delete_empty.png"&gt;&lt;img style="display:block; margin:0px auto 10px; text-align:center;cursor:pointer; cursor:hand;" src="http://1.bp.blogspot.com/_YuOGEjyujI8/R9BGugfotgI/AAAAAAAAACQ/_dmwTWdGf3Q/s320/delete_empty.png" border="0" alt=""id="BLOGGER_PHOTO_ID_5174713736659252738" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;When I right click on the trash folder, 99.99% of the time, it's to empty it. What are all these other options for, and why are they in that order?&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight:bold;"&gt;TODO:&lt;/span&gt; submit feature-request/bug-report and/or a patch...&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/1619643649667162121-5347668638689579564?l=rmgraham.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://rmgraham.blogspot.com/feeds/5347668638689579564/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=1619643649667162121&amp;postID=5347668638689579564' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/1619643649667162121/posts/default/5347668638689579564'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/1619643649667162121/posts/default/5347668638689579564'/><link rel='alternate' type='text/html' href='http://rmgraham.blogspot.com/2008/03/why.html' title='Why?'/><author><name>Ryan Graham</name><uri>http://www.blogger.com/profile/18319610639577200961</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://4.bp.blogspot.com/_YuOGEjyujI8/S177_ryZEII/AAAAAAAAApY/GG5AvzcN7HI/S220/DSC_0001.jpg'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://1.bp.blogspot.com/_YuOGEjyujI8/R9BGugfotgI/AAAAAAAAACQ/_dmwTWdGf3Q/s72-c/delete_empty.png' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-1619643649667162121.post-4149802033389109024</id><published>2008-01-17T08:11:00.001-08:00</published><updated>2008-11-12T18:00:34.911-08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='random'/><category scheme='http://www.blogger.com/atom/ns#' term='arland'/><title type='text'>Emerging from darkness, I dream in colour</title><content type='html'>No, it's not a clever reference to anything, just a phrase that popped in to my head. My first conscious thought when I awoke to my bus arriving at its last stop on the way to work this morning. So really, it's a genuine random thought.&lt;br /&gt;&lt;br /&gt;But I've studied Freud, at least in passing, so lets pretend it wasn't "just a cigar".&lt;br /&gt;&lt;br /&gt;&lt;span style="font-style:italic;font-weight:bold;"&gt;Emerging from darkness&lt;/span&gt;&lt;br /&gt;In light of the fact that I'm finally going home this weekend, &lt;span style="font-style:italic;"&gt;Emerging from darkness&lt;/span&gt; could be a manifestation of my relief.&lt;br /&gt;&lt;br /&gt;You see, after my &lt;a href="http://rmgraham.blogspot.com/2007/10/my-turn.html"&gt;last post&lt;/a&gt;, which was made the day after my &lt;a href="http://arland.rsgraham.net/"&gt;son&lt;/a&gt; was born, life was good... for about 24 hours. And then things got ugly.. emergency room ugly. And now, 3 months later, I'm &lt;span style="font-style:italic;"&gt;finally&lt;/span&gt; returning home.&lt;br /&gt;&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://3.bp.blogspot.com/_YuOGEjyujI8/R4-ifqv_u2I/AAAAAAAAABc/QrSj-ZO5_YY/s1600-h/3+days.jpeg"&gt;&lt;img style="float:right; margin:0 10px 10px 0;cursor:pointer; cursor:hand;" src="http://3.bp.blogspot.com/_YuOGEjyujI8/R4-ifqv_u2I/AAAAAAAAABc/QrSj-ZO5_YY/s320/3+days.jpeg" border="0" alt=""id="BLOGGER_PHOTO_ID_5156518763297749858" /&gt;&lt;/a&gt;&lt;span style="font-weight:bold;"&gt;Nurses&lt;/span&gt;&lt;br /&gt;Where I live, an in-home follow-up is done by local home-care nurses after a baby is born, it's a great service really. In our case, I believe it is why my son is alive today. You see, the nurse noticed unusual twitching, which my wife and I did not, as new parents, think was unusual. Apparently it was the rhythm of the twitch that concerned her. She suggested we go to the emergency room as soon as we could to have it looked at. We were on the road within about 30 seconds, panic already setting in. I don't even remember what time that was, but I think it was early afternoon, around 14:00 by the time we got to the hospital.&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight:bold;"&gt;ER&lt;/span&gt;&lt;br /&gt;After some initial screening by the ER doctor, a pediatrician was called in. OK, so it's not a trivial problem, slightly concerning. Moved from triage to ER proper, tests, tests, and more tests. Then a  C/T scan, slightly more worrying. Then we're told a transport with a team of specialists are on their way from BCCH (&lt;a href="http://www.bcchildrens.ca/"&gt;BC Chldren's Hospital&lt;/a&gt;). Hold on a sec, I think I skipped some details.. the key factor here was low blood sugar, and I mean ridiculously low. Way too low for a normal baby to have at 48 hours of age, even if it hadn't eaten that entire time. Somewhat troubling. OK, so we give him sugar and go home, right? I wish. Apparently it was low enough for long enough to cause some major problems. His blood had thickened to a near syrup state and there are a lot of other known complications. The C/T scan confirmed one of the worst of them, brain damage. I was "OK" up to that point, I think. Then some other stuff happened, but the emotions of the time seem to have caused a lot of details to be blocked from my memory. I do know that I drove us to the hospital, but that I wouldn't see my car again for quite a while after that. We were admitted to BCCH at about midnight, on the eve of Friday, October 26th, and my son was approaching his 4th day in this world. By this time he's receiving several medications by IV, which was originally used for a dextrose drip (sugar water).&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight:bold;"&gt;Specialists&lt;/span&gt;&lt;br /&gt;Lots and lots of specialists. I don't remember all of their names, but I know that there were more doctors in more fields than I'd ever seen. The immediately re-did the scan of his brain, since he wasn't sedated the first time and had moved around. Confirmed that it wasn't a blood clot in his brain, but cerebral edema. That is, swelling of the brain. We're told our baby's life is in danger and a counselor is brought in. That was the worst night of my life.&lt;br /&gt;&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://1.bp.blogspot.com/_YuOGEjyujI8/R4-ivKv_u3I/AAAAAAAAABk/4_Zy3PF2vyM/s1600-h/ventilator.jpeg"&gt;&lt;img style="float:left; margin:0 10px 10px 0;cursor:pointer; cursor:hand;" src="http://1.bp.blogspot.com/_YuOGEjyujI8/R4-ivKv_u3I/AAAAAAAAABk/4_Zy3PF2vyM/s320/ventilator.jpeg" border="0" alt=""id="BLOGGER_PHOTO_ID_5156519029585722226" /&gt;&lt;/a&gt;&lt;span style="font-weight:bold;"&gt;Machines&lt;/span&gt;&lt;br /&gt;As in life support.  Ventilator, feeding tube, monitors for more things than I knew could be measured. At one point before going to the hospital that specializes in children, Arland had a full set of adult size cardio/respiratory monitors hooked up to him. If you want to know what that looked like, watch the Matrix and fast forward to the part where they show a baby hooked up.&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight:bold;"&gt;Get some sleep&lt;/span&gt;&lt;br /&gt;The next day we got to meet "the team". They go over everything they know (way too much detail to dump here). They tell us Arland is going to live. My son is going to live. Then something about disabilities and complications and blah blah blah.. my son is going to live. I remember being aware of the looks of confusion on the faces of the doctors. I suspect they aren't used to tears of joy as a response to being told that your child is going to have learning disabilities and have "special needs". Looking back, I suspect they either didn't know we were told he might die, or my wife and I are exceptional in that we discussed the possibility of a special needs child long before conceiving. Arland is now stable, the doctors know enough to know that he's not going to die. The worst night of my life is over. My son is going to live.&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight:bold;"&gt;ICU&lt;/span&gt;&lt;br /&gt;Intensive care, where each patient has a nurse stationed at their bed, 24/7. ICU is a depressing place. I'm sorry to say that during our stay there, a young teenage boy who was in a coma was unplugged. The ICU is not a happy place, but we were happy he was there and not the morgue. Arland is on a steady dextrose drip and 3 different anti-convulsives (for preventing seizures), but he's finally getting some breast milk, fed through a tube that goes in to his nose and down his throat. I think we were in ICU for 1 or 2 weeks. I' not sure. Time passes differently when you don't sleep at night.&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight:bold;"&gt;Vacation time&lt;/span&gt;&lt;br /&gt;By this point I've used up all my vacation time and sick time at work. And since I'm paying $45/night for accommodations at this point (so I can stay with my wife and son), I have to go back. It turns out, commuting from the hospital isn't very different from my normal commute. It's going the opposite direction, but it's still a short walk, a bus, then a short ride on the train. Just under an hour each way, instead of just over an hour each way like from home. I adapt.&lt;br /&gt;&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://1.bp.blogspot.com/_YuOGEjyujI8/R4-i7Kv_u4I/AAAAAAAAABs/FUzIt67gaOA/s1600-h/burping.jpeg"&gt;&lt;img style="float:right; margin:0 10px 10px 0;cursor:pointer; cursor:hand;" src="http://1.bp.blogspot.com/_YuOGEjyujI8/R4-i7Kv_u4I/AAAAAAAAABs/FUzIt67gaOA/s320/burping.jpeg" border="0" alt=""id="BLOGGER_PHOTO_ID_5156519235744152450" /&gt;&lt;/a&gt;&lt;span style="font-weight:bold;"&gt;TCU&lt;/span&gt;&lt;br /&gt;Transitional care, a bit of a half-way point for long term hospital stays. There are 2-3 patients per nurse here, and the mood is much happier. These are patients who are either on their way home or on their way to one of the "normal" hospital rooms in one of the wards. In our case, it was a stop over while we waited for a bed to open up in the Neuroscience ward. By this point, Arland is down to monitors, blow-by oxygen (no breathing machine), and oral meds and vitamins, along with his mother's milk. He's still got the tube for all his feeding/meds, but he's not half machine any more.&lt;br /&gt;&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://2.bp.blogspot.com/_YuOGEjyujI8/R4-jIav_u5I/AAAAAAAAAB0/fLsGBMf6SAg/s1600-h/tv.jpeg"&gt;&lt;img style="float:left; margin:0 10px 10px 0;cursor:pointer; cursor:hand;" src="http://2.bp.blogspot.com/_YuOGEjyujI8/R4-jIav_u5I/AAAAAAAAAB0/fLsGBMf6SAg/s320/tv.jpeg" border="0" alt=""id="BLOGGER_PHOTO_ID_5156519463377419154" /&gt;&lt;/a&gt;&lt;span style="font-weight:bold;"&gt;Goodbye BCCH, hello relatives&lt;/span&gt;&lt;br /&gt;We finish off the duration of our stay at the hospital in the neuroscience ward. Arrangements are made for a nurse to visit once a week to change the injection device in his leg and several months worth of blood tests and pediatrician appointments are booked. We're referred to various "programs" for children with "difficulties" and we move in with a relative so that we aren't alone if something comes up. We start to get back to "normal". Well, as normal as a new born can be at least. Other than not being able to let him go more than 3 hours without feeding (yes, I mean 24/7), and having to give him injections and oral meds every 12 hours, life is kind of normal.. ish.&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight:bold;"&gt;More normal&lt;/span&gt;&lt;br /&gt;Arland improves dramatically now that we're out of the hospital. Arland continues his pattern of ripping things out of his face.. oh right, forgot to mention, he pulled out his own breathing tube.. that is, he was the one that took himself off the respirator. And ripped out his feeding tube several times too, while in the hospital. Well that continued at "home" as we've grown to call it. Of course, instead of pushing a button and having a nurse rush in, we have to take him to the ER to get a new tube put in. Once was funny. Twice made us think this might be an ongoing problem. Three times.. the bloody thing was only put back in 12 hours ago! Four times!?! We'd already discussed with the doctor how long it needed to be in, and decided not to replace it.&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight:bold;"&gt;Rapid recovery&lt;/span&gt;&lt;br /&gt;As they say, babies change very quickly. Arland's improvement went in to high gear once he finally succeeded in ridding himself of tubes. Checkups and tests all come back normal. The fact that nobody has been able to figure out &lt;span style="font-style:italic;"&gt;why&lt;/span&gt; all this happened sits and festers in the back of my mind to this day, but I prefer to focus on how well he's doing now.&lt;br /&gt;&lt;br /&gt;&lt;span style="font-style:italic;font-weight:bold;"&gt;I dream in colour&lt;/span&gt;&lt;br /&gt;This was actually the revelation I had earlier this morning, when my alarm woke me up. I'd just had a vivid dream sequence where I remembered brilliant colours. It had something to do with contact lenses and taking them out letting me see colours for clearly. But I suspect it reflects on how happy I am to be a father. Arland is doing brilliantly now, by the way. He recently had his first check up with the visual impairment people and they tell us that his vision appears to be normal and that he may not qualify for the program.. oh darn, he's too normal for them. Appointments with the pediatrician confirm he's growing and developing normally. In fact, the only thing that isn't normal about him seems to be his strength, which is apparently slightly &lt;span style="font-style:italic;"&gt;above&lt;/span&gt; average. Well that's not so bad, right? Well, maybe if you don't have hair for him to pull :-P&lt;br /&gt;&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://4.bp.blogspot.com/_YuOGEjyujI8/R4-k76v_u7I/AAAAAAAAACE/ZlmkkE_SxrI/s1600-h/smiling.jpeg"&gt;&lt;img style="display:block; margin:0px auto 10px; text-align:center;cursor:pointer; cursor:hand;" src="http://4.bp.blogspot.com/_YuOGEjyujI8/R4-k76v_u7I/AAAAAAAAACE/ZlmkkE_SxrI/s320/smiling.jpeg" border="0" alt=""id="BLOGGER_PHOTO_ID_5156521447652309938" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;All in all, Arland is doing very well and with any luck, he'll be down to only one medication soon. Things should get more and more "normal" now, whatever that means.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/1619643649667162121-4149802033389109024?l=rmgraham.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://rmgraham.blogspot.com/feeds/4149802033389109024/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=1619643649667162121&amp;postID=4149802033389109024' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/1619643649667162121/posts/default/4149802033389109024'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/1619643649667162121/posts/default/4149802033389109024'/><link rel='alternate' type='text/html' href='http://rmgraham.blogspot.com/2008/01/emerging-from-darkness-i-dream-in.html' title='Emerging from darkness, I dream in colour'/><author><name>Ryan Graham</name><uri>http://www.blogger.com/profile/18319610639577200961</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://4.bp.blogspot.com/_YuOGEjyujI8/S177_ryZEII/AAAAAAAAApY/GG5AvzcN7HI/S220/DSC_0001.jpg'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://3.bp.blogspot.com/_YuOGEjyujI8/R4-ifqv_u2I/AAAAAAAAABc/QrSj-ZO5_YY/s72-c/3+days.jpeg' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-1619643649667162121.post-3364769221121026870</id><published>2007-10-24T21:00:00.000-07:00</published><updated>2007-10-24T21:02:21.046-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='arland'/><title type='text'>My Turn</title><content type='html'>A fairly universally accepted excuse for not blogging.. even though it is too recent to count. I now have a son. Queue the crying and forget the sleeping... GAME ON!!&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/1619643649667162121-3364769221121026870?l=rmgraham.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='related' href='http://arland.rsgraham.net/' title='My Turn'/><link rel='replies' type='application/atom+xml' href='http://rmgraham.blogspot.com/feeds/3364769221121026870/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=1619643649667162121&amp;postID=3364769221121026870' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/1619643649667162121/posts/default/3364769221121026870'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/1619643649667162121/posts/default/3364769221121026870'/><link rel='alternate' type='text/html' href='http://rmgraham.blogspot.com/2007/10/my-turn.html' title='My Turn'/><author><name>Ryan Graham</name><uri>http://www.blogger.com/profile/18319610639577200961</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://4.bp.blogspot.com/_YuOGEjyujI8/S177_ryZEII/AAAAAAAAApY/GG5AvzcN7HI/S220/DSC_0001.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-1619643649667162121.post-3294656856154261872</id><published>2007-09-01T12:26:00.000-07:00</published><updated>2007-09-01T14:47:58.978-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='licensing'/><category scheme='http://www.blogger.com/atom/ns#' term='GPL'/><category scheme='http://www.blogger.com/atom/ns#' term='BSD'/><title type='text'>the little mole hill that could</title><content type='html'>I honestly thought this was over.. clearly I blinked.&lt;br /&gt;&lt;br /&gt;To be fair, I stopped following it and then ignored most of the people who I disagreed with. To borrow a phrase from Linus Torvalds, "people who disagree with me are stupid and ugly." (I just recently watched his &lt;a href="http://www.youtube.com/watch?v=4XpnKHJAok8"&gt;Google talk on Git&lt;/a&gt;)&lt;br /&gt;&lt;br /&gt;I tried to be balanced and non-bias in my &lt;a href="http://rmgraham.blogspot.com/2007/08/dual-licensed-mole-mountain.html"&gt;previous post&lt;/a&gt;, but I think I'll allow myself to weigh in with my opinion this time.&lt;br /&gt;&lt;br /&gt;Theo started round two with a &lt;a href="http://marc.info/?l=openbsd-misc&amp;m=118861134304239&amp;w=2"&gt;new thread&lt;/a&gt; on openbsd-misc. The bell was then echoed by &lt;a href="http://kerneltrap.org/OpenBSD/Stealing_Versus_Sharing_Code"&gt;kerneltrap.org&lt;/a&gt; and &lt;a href="http://undeadly.org/cgi?action=article&amp;sid=20070901041657"&gt;undeadly.org&lt;/a&gt;, which is where I saw it (with over 100 feeds, a local lug mailing list, and a couple others, I don't have time for openbsd-misc or lkml in the raw).&lt;br /&gt;&lt;br /&gt;For the record, I completely agree with everything in Theo's post. Or at least, I agree with my interpretation of everything he said. I add that because of the large number of people who seem to disagree with things they think he implied. I saw no conflicting statements in his post, others did.&lt;br /&gt;&lt;br /&gt;The real crux of the matter, as Theo pointed out, is the legal implications that are part of this "debate". These licenses are legal artifacts representing ideals. A copyright holder owns their work; it is their choice of how to distribute it. The license is that choice, put in pseudo-legalese.&lt;br /&gt;&lt;br /&gt;I find law largely useless without looking at the intentions behind it. If we ignore the intent of the law and focus on the letter of the law... well that's like lawyers vs. judges. Lawyers try to use the letter of the law to their client's advantage, to make sure they get every right afforded to them by the law. Judges, on the other hand, have to decide whether or not the lawyer is applying the law in a way that is consistent with its intent.&lt;br /&gt;&lt;br /&gt;When someone uses a BSD license for this, they are saying that you can use it as long as they get credit in the code and their license and disclaimer remain with their copyright notice. The GPL is very similar in this regard, just adding some further details about reciprocity, but I see them as largely the same.&lt;br /&gt;&lt;br /&gt;They both have the same spirit of intent behind them: this code is free for everyone to use, please take it and make it better, faster, stronger, and if you can just contribute, that'd be great (sweet, Daft Punk reference and Office Space quote in the same sentence).&lt;br /&gt;&lt;br /&gt;If I write a piece of open source software, my &lt;span style="font-style:italic;"&gt;intent&lt;/span&gt; will be the same whether it is a BSD style or GPL style license grant. What I want is for anybody to be able to use my creation and help make it better. If I use a BSD license, I'm giving the licensee the chance to contribute back out of the goodness of their heart. If I use a GPL license, I'm making that social obligation a legal obligation (although the enforceability of the GPL is still widely debated).&lt;br /&gt;&lt;br /&gt;I did a nice analysis of the different meanings of "dual-licensed" in my last entry. Well, I thought it was good, at least.&lt;br /&gt;&lt;br /&gt;Anyway, my point is: removing license headers is wrong when the license says it must be included, unless all the involved copyright holders agree, &lt;span style="font-weight:bold;"&gt;OR&lt;/span&gt; if the licenses explicitly allow this (requiring the copyright holders to have agreed previously).&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/1619643649667162121-3294656856154261872?l=rmgraham.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='related' href='http://undeadly.org/cgi?action=article&amp;sid=20070901041657' title='the little mole hill that could'/><link rel='replies' type='application/atom+xml' href='http://rmgraham.blogspot.com/feeds/3294656856154261872/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=1619643649667162121&amp;postID=3294656856154261872' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/1619643649667162121/posts/default/3294656856154261872'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/1619643649667162121/posts/default/3294656856154261872'/><link rel='alternate' type='text/html' href='http://rmgraham.blogspot.com/2007/09/little-mole-hill-that-could.html' title='the little mole hill that could'/><author><name>Ryan Graham</name><uri>http://www.blogger.com/profile/18319610639577200961</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://4.bp.blogspot.com/_YuOGEjyujI8/S177_ryZEII/AAAAAAAAApY/GG5AvzcN7HI/S220/DSC_0001.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-1619643649667162121.post-6018091452757283478</id><published>2007-08-29T07:46:00.000-07:00</published><updated>2007-08-29T08:56:11.736-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='open source'/><category scheme='http://www.blogger.com/atom/ns#' term='licensing'/><category scheme='http://www.blogger.com/atom/ns#' term='GPL'/><category scheme='http://www.blogger.com/atom/ns#' term='BSD'/><title type='text'>dual-licensed mole mountain</title><content type='html'>As is popping up in &lt;a href="http://kerneltrap.org/Linux/Relicensing_Code"&gt;various&lt;/a&gt; &lt;a href="http://undeadly.org/cgi?action=article&amp;sid=20070829001634"&gt;places&lt;/a&gt; &lt;a href="http://www.osnews.com/story.php/18528/Linux-Developers-Steal-OpenBSD-Code-for-Wireless-Driver"&gt;in&lt;/a&gt; &lt;a href="http://linux.slashdot.org/article.pl?sid=07/08/29/0241234"&gt;my&lt;/a&gt; blog roll..&lt;br /&gt;&lt;br /&gt;Someone &lt;a href="http://lkml.org/lkml/2007/8/28/157"&gt;proposed&lt;/a&gt; a &lt;a href="http://lkml.org/lkml/diff/2007/8/28/157/1"&gt;patch&lt;/a&gt; on LKML that removes some BSD license headers and replaces them with GPLv2 headers. I've previously &lt;a href="http://rmgraham.blogspot.com/2007/06/thats-what-i-call-freedom.html"&gt;hinted&lt;/a&gt; at my licensing preferences, but they don't even come into play here, oddly enough.&lt;br /&gt;&lt;br /&gt;I'll start with what I believe to be the logic of the people in favour of the patch. In code that is "dual-licensed" GPL/BSD, you must satisfy both licenses. Since the GPL is by far the most restrictive, the BSD license becomes moot and the code is essentially only licensed under the GPL because it's requirements are stronger. So removing the BSD license headers is basically like removing dead code.&lt;br /&gt;&lt;br /&gt;The main opposition for this seems to be a bunch of BSD fan boys (as in a subset of BSD users) - and by that I mean they're the ones that are yelling loudest. This is probably how and why it spread so far, which is unfortunate.&lt;br /&gt;&lt;br /&gt;From what I can see, there are some actual issues behind this though.&lt;br /&gt;&lt;br /&gt;First of all, the word "relicensing" is really a bit of a misnomer in this context. Unless another individual is granted the right, through licensing, then only the original author can release their work under an alternative license. All of these licenses have one thing in common: they grant limited rights to the user of the code. Some think the BSD license is unrestricted, but the fact that you &lt;span style="font-weight:bold;"&gt;must&lt;/span&gt; include the copyright notice is actually a restriction. And contrary to some opinions, it doesn't give you the right to relicense the code.&lt;br /&gt;&lt;br /&gt;Secondly, "dual-license" has different meanings in different contexts.&lt;br /&gt;&lt;br /&gt;On the one hand, you have &lt;a href="http://trolltech.com/company/about/businessmodel"&gt;Qt&lt;/a&gt; and &lt;a href="http://www.mysql.com/company/legal/licensing/faq.html"&gt;MySQL&lt;/a&gt;. Both projects are "dual-licensed" as proprietary code and under the GPL. In this case, "dual-licnesed" means that the original copyright holder (&lt;a href="http://trolltech.com/"&gt;Trolltech&lt;/a&gt; and &lt;a href="http://www.mysql.com/"&gt;MySQL AB&lt;/a&gt;, respectively) offer their product under two distinct distribution models. You can use their product under the terms of the GPL, requiring all of your work be "infected" by that license, &lt;span style="font-weight:bold;"&gt;OR&lt;/span&gt; you can pay them a licensing fee so that you can use their product under the terms of their commercial licence, allowing you to do whatever you want with your source code without restriction.&lt;br /&gt;&lt;br /&gt;On the other hand, you have code that was originally released under a BSD license by the author. This code is then extended by someone else. This second developer happens to like the GPL, so they tack the GPL on to the header, to cover their modifications. This code is now "dual-licensed" because it is covered by two different licenses. To use the code as it stands, you must satisfy the GPL &lt;span style="font-weight:bold;"&gt;AND&lt;/span&gt; the BSD licensing requirements, leading to my suspected logic described above. What really happens here is that the code becomes useless to a broad set of people because it is hard to separate the differently licensed code. You can't come along and relicense the whole thing as GPL without the permission of the original author who released under a BSD license.&lt;br /&gt;&lt;br /&gt;And then on the third hand (yes, we're dealing with mutants), there is code that is explicitly "dual-licensed", where the file header has wording to the effect of "this code may be redistributed under the terms of the GPL &lt;span style="font-weight:bold;"&gt;OR&lt;/span&gt; the BSD license". This is the form of dual-licensing that actually works as people expect. You take the code, you modify it, and you release the derived work under your pick of the two licenses (or continue the dual-license trend), and everyone is happy. The copyright holder has granted you the right to do this.&lt;br /&gt;&lt;br /&gt;In the end, the real problem is that the code in question is actually in &lt;a href="http://marc.info/?l=openbsd-misc&amp;m=118836617815218&amp;w=2"&gt;two parts&lt;/a&gt;. One part falls solely under a BSD license, which can't be relicensed except by the author. Modifying this part in the Linux kernel and added a GPL header results in the second form above. The second part of that driver, however, falls under the 3rd variety (explicitly dual-licensed), and can therefore actually be relicensed as proposed.&lt;br /&gt;&lt;br /&gt;In the end, what should have happened was something along the lines of:&lt;br /&gt;&lt;blockquote&gt;"here's a patch to make some dual-licensed code GPLv2 only"&lt;br /&gt;"hey, only some of that code is dual-licensed"&lt;br /&gt;"oh? hey, you're right. my bad. fixed."&lt;br /&gt;"cool. wanna grab a beer?"&lt;/blockquote&gt;&lt;br /&gt;&lt;br /&gt;Instead we got:&lt;br /&gt;&lt;blockquote&gt;"here's a patch to make some dual-licensed code GPLv2 only"&lt;br /&gt;"hey, that's not allowed! I'm telling!"&lt;br /&gt;"oh? hey, you're right. my bad. fixed."&lt;br /&gt;"too late, I've already told everyone on the internet and they're gonna come beat you up"&lt;/blockquote&gt;&lt;br /&gt;&lt;br /&gt;It even hit &lt;a href="http://digg.com/linux_unix/Lnux_Driver_Violated_BSD_License"&gt;digg&lt;/a&gt;, so now we have a real party!&lt;br /&gt;&lt;br /&gt;Assuming my post doesn't fuel the "debate", this should be over soon. As far as I'm concerned, the only result that matters is that it motivated me to write about it.&lt;br /&gt;&lt;br /&gt;So go now and have non-discussions about this with your peers.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/1619643649667162121-6018091452757283478?l=rmgraham.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='related' href='http://kerneltrap.org/Linux/Relicensing_Code' title='dual-licensed mole mountain'/><link rel='replies' type='application/atom+xml' href='http://rmgraham.blogspot.com/feeds/6018091452757283478/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=1619643649667162121&amp;postID=6018091452757283478' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/1619643649667162121/posts/default/6018091452757283478'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/1619643649667162121/posts/default/6018091452757283478'/><link rel='alternate' type='text/html' href='http://rmgraham.blogspot.com/2007/08/dual-licensed-mole-mountain.html' title='dual-licensed mole mountain'/><author><name>Ryan Graham</name><uri>http://www.blogger.com/profile/18319610639577200961</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://4.bp.blogspot.com/_YuOGEjyujI8/S177_ryZEII/AAAAAAAAApY/GG5AvzcN7HI/S220/DSC_0001.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-1619643649667162121.post-5235938902549087425</id><published>2007-07-19T09:20:00.000-07:00</published><updated>2007-07-19T09:51:30.789-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='pyro'/><category scheme='http://www.blogger.com/atom/ns#' term='google'/><title type='text'>Google, meet Pyro. Pyro, meet Google.</title><content type='html'>So, there's a new kid in town, &lt;a href="http://pyrodesktop.org/Main_Page"&gt;Pyro&lt;/a&gt;.&lt;br /&gt;&lt;br /&gt;New kid in the just born sense, new kid in the "hey, cool skateboard" sense, and new kid in the "looking for friends" sense. I'm sure there are more, but you get the idea.&lt;br /&gt;&lt;br /&gt;Have you ever stumbled upon an idea that really catches you off-guard? A few (almost 5 actually) years ago I took a look at XUL and thought "damn, this is gonna change a lot things if it catches on." The ideas fade. Year or two later, OEOne (now &lt;a href="http://www.axentra.com/"&gt;Axentra&lt;/a&gt;) pops up and I think "finally, it's happening!" The ideas fade away again. Fast forward to a couple days ago when I stumble upon &lt;a href="http://squeedlyspooch.com/blog/archives/002095.html"&gt;this blog entry&lt;/a&gt; in my daily feed cultivation.&lt;br /&gt;&lt;br /&gt;"Cool!"&lt;br /&gt;&lt;br /&gt;"Oooh, google apps on the desktop..."&lt;br /&gt;&lt;br /&gt;"Third time's a charm, right?"&lt;br /&gt;&lt;br /&gt;I've been processing the overwhelming cool for over 24 hours now, and I keep coming back to my disturbing addiction to all things Google. I'm really going to make a go at this. I've already started spamming (Google Mail) the mailing list (Google Groups) and I was already subscribed (Google Reader) to the blogs of the key people behind the magic. I really hope this is project gets the traction required to carry it over to a long-term project. There are so many potential benefits, I can't begin to describe them.. maybe I'll dedicate a future post entirely to the broad implications of various projects..&lt;br /&gt;&lt;br /&gt;Gah! I can't stop thinking about this.. it's going to be a long day at work today. Must... make.. productive use... of excess.. mental energy.. (I'm suddenly reminded of &lt;a href="http://en.wikipedia.org/wiki/Think_and_Grow_Rich"&gt;Think and Grow Rich&lt;/a&gt;)&lt;br /&gt;&lt;br /&gt;Mental note: respond to maddog's open request for cool projects in latest Linux Journal.&lt;br /&gt;Mental note: the Internet is not a person, and if it is, why am I typing my internal monologue to it?&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/1619643649667162121-5235938902549087425?l=rmgraham.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='related' href='http://pyrodesktop.org/Main_Page' title='Google, meet Pyro. Pyro, meet Google.'/><link rel='replies' type='application/atom+xml' href='http://rmgraham.blogspot.com/feeds/5235938902549087425/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=1619643649667162121&amp;postID=5235938902549087425' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/1619643649667162121/posts/default/5235938902549087425'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/1619643649667162121/posts/default/5235938902549087425'/><link rel='alternate' type='text/html' href='http://rmgraham.blogspot.com/2007/07/google-meet-pyro-pyro-meet-google.html' title='Google, meet Pyro. Pyro, meet Google.'/><author><name>Ryan Graham</name><uri>http://www.blogger.com/profile/18319610639577200961</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://4.bp.blogspot.com/_YuOGEjyujI8/S177_ryZEII/AAAAAAAAApY/GG5AvzcN7HI/S220/DSC_0001.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-1619643649667162121.post-8504825746779995513</id><published>2007-06-22T15:19:00.000-07:00</published><updated>2007-06-22T16:23:23.683-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='open source'/><category scheme='http://www.blogger.com/atom/ns#' term='kde'/><title type='text'>Have you cake and run windows too!</title><content type='html'>Some people are for porting Linux apps to Windows, some people are against. Pretty straight forward, right? Well I can't tell anymore. Take a look at &lt;a href="http://amarok.kde.org/blog/archives/429-Amarok-2-on-windows-A-rant.html"&gt;Nikolaj's "rant"&lt;/a&gt;, and then take a look at &lt;a href="http://aseigo.blogspot.com/2007/06/hoping-and-wishing.html"&gt;Aaron's rebuttal&lt;/a&gt;. I think they're both right, and I don't think that's a conflict. For anyone not following along, Nikolaj thinks porting Amarok to windows is good because of X and Aaron thinks he should be more concerned with Y.&lt;br /&gt;&lt;br /&gt;I'm a Linux geek, and proud of it, but for some reason, I'm posting this from windows. Granted, I've got putty and an X server running, so I've actually got access to all of my linux/KDE stuff on my other workstation. I'll also ignore the part about me really wanting to use OpenBSD instead, but not having the guts to go all the way. There are a couple things I need windows for here at work, and they're non-negotiable and like a pizza special, there are no substitutions allowed (believe me, I tried). Damn I love pizza.. with mushrooms, and ham, and green peppers.. oh and the cheese all over the place.. wait, where was I?&lt;br /&gt;&lt;br /&gt;Right, so what I'm trying to say here is that I want to be able to run KDE natively on windows because I can't run it natively in Linux, and X forwarding (especially across platforms) isn't perfect. This is a very practical reason to port Linux only apps to windows. Of course, Aaron is somewhat sidestepping (or maybe de-emphasizing is a better word?) the practicallity issue by taking the higher road and bringing ethics into the picture.&lt;br /&gt;&lt;br /&gt;Finally, a chance to use one of my favourite movie quotes... &lt;blockquote&gt;"Yeah, but your scientists were so preoccupied with whether or not they could, they didn't stop to think if they should."&lt;/blockquote&gt; I think that makes Aaron's point pretty well (and if I'm lucky, he'll confirm or deny that..).&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight:bold;"&gt;Should people port Linux apps to windows to make my personal life better?&lt;/span&gt; Sure, why not? (hey, isn't that both Nikolaj's point, and Aaron's question?)&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight:bold;"&gt;Should they do so at the cost of the whole open source movement?&lt;/span&gt; Ok, that's a bit dramatic, but it makes the point I think.&lt;br /&gt;&lt;br /&gt;There sure seems to be more at stake here than just the apps. My question is this: are Linux and other free(dom) platforms really at risk as a result of this? Worst case, it stays the way it is - which some elitists would love. Well, I guess it could be worse than that, but the elitists would still love it. Of course, without money on the line, all we'll ever have is anecdotal evidence for or against that opinion. (And of course, with money on the line, we get skewed results.. damn)&lt;br /&gt;&lt;br /&gt;To put it plainly, I don't think having all of KDE available to windows users will hurt Linux or any other free(dom) OS.&lt;br /&gt;&lt;br /&gt;Personally, I prefer a vision of a future where the OS is a commodity, and what people really care about are the apps, or even better, the functionality of the apps. Give people the freedom to choose their OS with no strings attached (unless you're counting financial cost, in the case of windows). THAT is a noble cause, in my mind.&lt;br /&gt;&lt;br /&gt;To put this in terms of popular licenses (disclaimer: I'm not trying to imply their license preferences).. Nikolaj puts forth a practical commercial license, and then Aaron rebuts with the GPL.. and now I raise them both, with BSD. As I've hinted at in a &lt;a href="http://rmgraham.blogspot.com/2007/06/thats-what-i-call-freedom.html"&gt;previous post&lt;/a&gt;, I tend to favour imperfect total freedom over perfect partial freedom. Especially in this case, where we're talking about either &lt;span style="font-style:italic;"&gt;doing&lt;/span&gt; something, or debating at length why &lt;span style="font-style:italic;"&gt;not to do&lt;/span&gt; something (while everyone sits around looking funny). I say just do it. If nothing else, it'll make for a &lt;a href="http://www.imdb.com/title/tt0107290/"&gt;great movie&lt;/a&gt; one day ;-)&lt;br /&gt;&lt;br /&gt;And finally, to directly respond to Aaron's challenge to Nikolaj, "...provide some sort of game plan for how it won't." How about somebody good at planning come up with this plan, while someone good at programming comes up with a port. First one to finish wins.&lt;br /&gt;&lt;br /&gt;If this is all too heady and philosophical for you (and because I have no other logical reason to point out this link), I suggest you do as Steve Yegge suggests, and go &lt;a href="http://steve-yegge.blogspot.com/2007/06/rich-programmer-food.html"&gt;write your own compiler&lt;/a&gt;. According to him, it should take you a life time to finish. And in his usual style, it'll take you a while too read too. Sounds like a perfect distraction from "big questions" like these. ;-)&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/1619643649667162121-8504825746779995513?l=rmgraham.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='related' href='http://aseigo.blogspot.com/2007/06/hoping-and-wishing.html' title='Have you cake and run windows too!'/><link rel='replies' type='application/atom+xml' href='http://rmgraham.blogspot.com/feeds/8504825746779995513/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=1619643649667162121&amp;postID=8504825746779995513' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/1619643649667162121/posts/default/8504825746779995513'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/1619643649667162121/posts/default/8504825746779995513'/><link rel='alternate' type='text/html' href='http://rmgraham.blogspot.com/2007/06/have-you-cake-and-run-windows-too.html' title='Have you cake and run windows too!'/><author><name>Ryan Graham</name><uri>http://www.blogger.com/profile/18319610639577200961</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://4.bp.blogspot.com/_YuOGEjyujI8/S177_ryZEII/AAAAAAAAApY/GG5AvzcN7HI/S220/DSC_0001.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-1619643649667162121.post-6812051486011918196</id><published>2007-06-21T12:42:00.000-07:00</published><updated>2007-06-21T13:15:31.473-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='open source'/><category scheme='http://www.blogger.com/atom/ns#' term='licensing'/><category scheme='http://www.blogger.com/atom/ns#' term='sqlite'/><title type='text'>That's what I call freedom</title><content type='html'>&lt;a href="http://www.sqlite.org/"&gt;SQLite&lt;/a&gt;. I've known about it for a while, but never really looked into it or at it in any detail.&lt;br /&gt;&lt;br /&gt;It's small, efficient, widely used, comes with gobs of automated tests, written in C.. a true thing of beauty. Oh, and apparently it's been &lt;a href="http://www.sqlite.org/copyright.html"&gt;public domain&lt;/a&gt; &lt;a href="http://technology.guardian.co.uk/weekly/story/0,,2107239,00.html"&gt;all this while&lt;/a&gt;, and I just didn't notice.&lt;br /&gt;&lt;br /&gt;Very refreshing, especially in light of recent licensing "debates" between &lt;a href="http://kerneltrap.org/node/8382"&gt;FSF members, Linus&lt;/a&gt;, and even &lt;a href="http://kerneltrap.org/node/8387"&gt;Theo&lt;/a&gt;. From an idealistic point of view, I think I like the idea of public domain the most. From a more pragmatic point of view (as in something I'd use for my own code), I prefer the BSD style licenses. If I managed to make something so cool I just had to share it, I'd want to have my name all over it, as a matter of pride. Of course, the trick with licensing is you can only move to increasingly restrictive licenses unless you have permission from all of the contributors. And even then, it's really more of a fork.. anyway, not important.&lt;br /&gt;&lt;br /&gt;I'll have to remember to make an effort to include SQLite in my projects.&lt;br /&gt;&lt;br /&gt;Possible future topics in the same vain of praise for coolness: Open{BSD, SSH, BGP, CVS, etc.}, suckless.org, KDE, Qt, and many others I can't think of off the top of my head.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/1619643649667162121-6812051486011918196?l=rmgraham.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='related' href='http://technology.guardian.co.uk/weekly/story/0,,2107239,00.html' title='That&apos;s what I call freedom'/><link rel='replies' type='application/atom+xml' href='http://rmgraham.blogspot.com/feeds/6812051486011918196/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=1619643649667162121&amp;postID=6812051486011918196' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/1619643649667162121/posts/default/6812051486011918196'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/1619643649667162121/posts/default/6812051486011918196'/><link rel='alternate' type='text/html' href='http://rmgraham.blogspot.com/2007/06/thats-what-i-call-freedom.html' title='That&apos;s what I call freedom'/><author><name>Ryan Graham</name><uri>http://www.blogger.com/profile/18319610639577200961</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://4.bp.blogspot.com/_YuOGEjyujI8/S177_ryZEII/AAAAAAAAApY/GG5AvzcN7HI/S220/DSC_0001.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-1619643649667162121.post-2829051225052122420</id><published>2007-06-21T09:00:00.000-07:00</published><updated>2007-06-21T09:36:32.159-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='mono'/><title type='text'>Mono is great</title><content type='html'>I've never used anything .NET or Mono related, at least not as a developer. I'm not even sure how it all works, other than "similar to Java in some ways".&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight:bold;"&gt;HOWEVER&lt;/span&gt;, I am a big fan of the &lt;a href="http://www.mono-project.com"&gt;Mono project&lt;/a&gt;. I have no idea why, but I am. Well, that's not entirely true, I suspect it has something to do with the spiffy looking apps that have come out of it, and the general air of cool that surrounds the people involved.&lt;br /&gt;&lt;br /&gt;Which brings me to my inspiration for this post: &lt;a href="http://tirania.org/blog/archive/2007/Jun-21.html"&gt;Implementing Silverlight in 21 Days&lt;/a&gt;. How cool is that? Obviously they don't have a complete implementation yet, but &lt;a href="http://www.mono-project.com/Moonlight"&gt;Moonlight&lt;/a&gt; is in great shape for such a short time being alive. My favourite part is how the whole hackathon effort thing was in response to a request that Miguel give a presentation on it at ReMix 07. If the people attending that show are half as impressed as me, I'm sure I'll see it pop up on more than a few of my 90+ feed subscriptions.&lt;br /&gt;&lt;br /&gt;As an aside, &lt;a href="http://tirania.org/blog"&gt;Miguel&lt;/a&gt; is one of the many people with a blog that eventually inspired me enough to start writing my own. So thanks for inspiring me, a total stranger.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/1619643649667162121-2829051225052122420?l=rmgraham.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='related' href='http://tirania.org/blog/archive/2007/Jun-21.html' title='Mono is great'/><link rel='replies' type='application/atom+xml' href='http://rmgraham.blogspot.com/feeds/2829051225052122420/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=1619643649667162121&amp;postID=2829051225052122420' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/1619643649667162121/posts/default/2829051225052122420'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/1619643649667162121/posts/default/2829051225052122420'/><link rel='alternate' type='text/html' href='http://rmgraham.blogspot.com/2007/06/mono-is-great.html' title='Mono is great'/><author><name>Ryan Graham</name><uri>http://www.blogger.com/profile/18319610639577200961</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://4.bp.blogspot.com/_YuOGEjyujI8/S177_ryZEII/AAAAAAAAApY/GG5AvzcN7HI/S220/DSC_0001.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-1619643649667162121.post-1295236456947472968</id><published>2007-06-20T09:17:00.000-07:00</published><updated>2007-06-21T09:32:47.310-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='langley'/><category scheme='http://www.blogger.com/atom/ns#' term='google'/><category scheme='http://www.blogger.com/atom/ns#' term='green'/><title type='text'>It pays to be green</title><content type='html'>And by that, I mean &lt;a href="http://googleblog.blogspot.com/2007/06/carbon-neutrality-by-end-of-2007.html"&gt;Google pays to be green&lt;/a&gt;. I'm not sure how I feel about &lt;a href="http://www.google.com/corporate/green/energy/footprint1.html#offsets"&gt;carbon offsets&lt;/a&gt;. On the one hand, they're basically buying environment-friendliness, but on the other hand, this is a great way of looking at environment related spending. It's an interesting mix of investing and philanthropy.&lt;br /&gt;&lt;br /&gt;In other green news, one of my neighbours was just &lt;a href="http://www.tol.bc.ca/index.php?option=com_content&amp;task=view&amp;id=1612&amp;Itemid=596"&gt;recognized for being green&lt;/a&gt;. This is also where I live, but the building in question happens to be a block away, on my street - I can actually see it from my window. While it's nice to see this kind of thing happening so close to home, the facts seem a bit skewed, especially the bus stop bit. I was there when they started pouring the foundation for that building, so I'm pretty confident in my observation that the "new bus stop" is 100m from an existing one, and the "relocated bus stop" was moved about 50m, essentially moved to the other side of an intersection (the wrong side even, by local convention).&lt;br /&gt;&lt;br /&gt;All in all, these are good news, even though I can certainly see the spin going into both of them. I'd still like to work for (or be the next) Google one day, and I'm proud to live where I live.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/1619643649667162121-1295236456947472968?l=rmgraham.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='related' href='http://googleblog.blogspot.com/2007/06/carbon-neutrality-by-end-of-2007.html' title='It pays to be green'/><link rel='replies' type='application/atom+xml' href='http://rmgraham.blogspot.com/feeds/1295236456947472968/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=1619643649667162121&amp;postID=1295236456947472968' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/1619643649667162121/posts/default/1295236456947472968'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/1619643649667162121/posts/default/1295236456947472968'/><link rel='alternate' type='text/html' href='http://rmgraham.blogspot.com/2007/06/it-pays-to-be-green.html' title='It pays to be green'/><author><name>Ryan Graham</name><uri>http://www.blogger.com/profile/18319610639577200961</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://4.bp.blogspot.com/_YuOGEjyujI8/S177_ryZEII/AAAAAAAAApY/GG5AvzcN7HI/S220/DSC_0001.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-1619643649667162121.post-6052092926931064068</id><published>2007-06-19T09:51:00.000-07:00</published><updated>2007-06-21T09:33:10.613-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='svg'/><title type='text'>SVG everywhere</title><content type='html'>&lt;a href="http://nicubunu.blogspot.com/2007/06/authoring-svg-websites-with-inkscape.html"&gt;This&lt;/a&gt; is a cool idea. I've been a big fan of SVG since it's beginnings, so it's nice to see it widely supported enough that this kind of experimentation can be done. I was pleasantly surprised when I stumbled upon the site and it "just worked" in my browser (latest Firefox, on XP).&lt;br /&gt;&lt;br /&gt;What he's done here is create a &lt;a href="http://svg.nicubunu.ro"&gt;small 3 page site entirely in SVG&lt;/a&gt; (as in not HTML or xhtml), using &lt;a href="http://www.inkscape.org"&gt;Inkscape&lt;/a&gt;. The idea is to see how search engine bots react to it. Ideally, they'll show up properly in searches, thus checking one more thing of the check-list of things required for SVG to be useful for web pages.&lt;br /&gt;&lt;br /&gt;In case it helps the project any (ya, like this blog will ever get spidered..), here's a couple links following how I believe the google bots work..&lt;br /&gt;&lt;br /&gt;The "Home" page should pop up with &lt;a href="http://svg.nicubunu.ro/index.svg"&gt;lmtbk4mh&lt;/a&gt;, the "Stuf" page should show up with &lt;a href="http://svg.nicubunu.ro/stuff.svg"&gt;slabiciunea lui Nicu forever&lt;/a&gt;, and finally, the "About" page should show up with both &lt;a href="http://svg.nicubunu.ro/about.svg"&gt;slabiciunea lui Nicu forever&lt;/a&gt; and &lt;a href="http://svg.nicubunu.ro/about.svg"&gt;lmtbk4mh&lt;/a&gt;.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/1619643649667162121-6052092926931064068?l=rmgraham.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='related' href='http://nicubunu.blogspot.com/2007/06/authoring-svg-websites-with-inkscape.html' title='SVG everywhere'/><link rel='replies' type='application/atom+xml' href='http://rmgraham.blogspot.com/feeds/6052092926931064068/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=1619643649667162121&amp;postID=6052092926931064068' title='5 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/1619643649667162121/posts/default/6052092926931064068'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/1619643649667162121/posts/default/6052092926931064068'/><link rel='alternate' type='text/html' href='http://rmgraham.blogspot.com/2007/06/svg-everywhere.html' title='SVG everywhere'/><author><name>Ryan Graham</name><uri>http://www.blogger.com/profile/18319610639577200961</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://4.bp.blogspot.com/_YuOGEjyujI8/S177_ryZEII/AAAAAAAAApY/GG5AvzcN7HI/S220/DSC_0001.jpg'/></author><thr:total>5</thr:total></entry><entry><id>tag:blogger.com,1999:blog-1619643649667162121.post-748284068476236127</id><published>2007-03-31T15:03:00.000-07:00</published><updated>2007-03-31T15:09:54.740-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='blogging'/><title type='text'>How hard could it be?</title><content type='html'>I read a number of blogs on a regular basis (more than daily, thanks to &lt;a href="http://www.google.com/reader/"&gt;Google Reader&lt;/a&gt;), and they all seem to be able to come up with &lt;span style="font-style: italic;"&gt;something&lt;/span&gt; to say on a semi-regular basis. How hard could it be?&lt;br /&gt;&lt;br /&gt;So, with as little fanfare as possible, I present to you the blog of a highly opinionated code monkey.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/1619643649667162121-748284068476236127?l=rmgraham.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://rmgraham.blogspot.com/feeds/748284068476236127/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=1619643649667162121&amp;postID=748284068476236127' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/1619643649667162121/posts/default/748284068476236127'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/1619643649667162121/posts/default/748284068476236127'/><link rel='alternate' type='text/html' href='http://rmgraham.blogspot.com/2007/03/how-hard-could-it-be.html' title='How hard could it be?'/><author><name>Ryan Graham</name><uri>http://www.blogger.com/profile/18319610639577200961</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://4.bp.blogspot.com/_YuOGEjyujI8/S177_ryZEII/AAAAAAAAApY/GG5AvzcN7HI/S220/DSC_0001.jpg'/></author><thr:total>0</thr:total></entry></feed>
