<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	>

<channel>
	<title>My Piece of the Inter(.)net &#187; Technology</title>
	<atom:link href="http://mypieceoftheinter.net/tag/technology/feed" rel="self" type="application/rss+xml" />
	<link>http://mypieceoftheinter.net</link>
	<description>A place for my geekish ramblings or whatever I find interesting.</description>
	<lastBuildDate>Mon, 16 Jan 2012 16:35:03 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.0.3</generator>
		<item>
		<title>Code is Poetry</title>
		<link>http://mypieceoftheinter.net/archives/1661</link>
		<comments>http://mypieceoftheinter.net/archives/1661#comments</comments>
		<pubDate>Fri, 19 Jun 2009 02:01:59 +0000</pubDate>
		<dc:creator>David McGrath</dc:creator>
				<category><![CDATA[General]]></category>
		<category><![CDATA[Personal]]></category>
		<category><![CDATA[C#]]></category>
		<category><![CDATA[Code is Poetry]]></category>
		<category><![CDATA[Eye-Fi]]></category>
		<category><![CDATA[Flickr]]></category>
		<category><![CDATA[Human-Computer Interaction]]></category>
		<category><![CDATA[Technology]]></category>
		<category><![CDATA[Thoughts]]></category>

		<guid isPermaLink="false">http://mypieceoftheinter.net/archives/1661</guid>
		<description><![CDATA[I recently ordered a new mug from zazzle.com.  “Code is poetry,” it says on one side, with my favorite programming language, C♯, on the other.  Code really is poetry, and now let me relate a memory that I thought of on my drive home from work today.  (Sorry in advance.  This post doesn’t have very [...]]]></description>
			<content:encoded><![CDATA[<p>I recently ordered a new mug from <a href="http://www.zazzle.com/">zazzle.com</a>.  “<a href="http://wordpress.org/">Code is poetry</a>,” it says on one side, with my favorite programming language, <a href="http://en.wikipedia.org/wiki/C_Sharp_(programming_language)">C♯</a>, on the other.  Code really is poetry, and now let me relate a memory that I thought of on my drive home from work today.  (Sorry in advance.  This post doesn’t have very much focus.)<br />
<a href="http://mypieceoftheinter.net/wp-content/uploads/2009/06/code-is-poetry-mug.jpg"><img style="display: inline" title="code_is_poetry_mug" src="http://mypieceoftheinter.net/wp-content/uploads/2009/06/code-is-poetry-mug-thumb.jpg" alt="code_is_poetry_mug" width="240" height="180" /></a> <a href="http://mypieceoftheinter.net/wp-content/uploads/2009/06/c-mug.jpg"><img style="display: inline" title="C#_mug" src="http://mypieceoftheinter.net/wp-content/uploads/2009/06/c-mug-thumb.jpg" alt="C#_mug" width="240" height="180" /></a></p>
<p><span id="more-1661"></span></p>
<p>When I was little, I was fascinated by what I now know are the break lights that are in the rear window of most cars.  When it was nighttime and we came to a stoplight, I noticed how even though I couldn’t see that the stoplight itself was red, there was a correlation between the stoplight being red and the red light in the rear window of the car in front of us.  I wondered by what mechanism the car in front of us knew that the light was red, and thought that it was very useful for cars to relay that information to the cars behind them.</p>
<p>I know now that the key element in making that happen was the driver tapping on the breaks, and in fact the light didn’t signify anything directly about any stop light, just that the driver had his foot on the break pedal.  Even so, I have always been interested in what makes technology tick, and (even more) how to design something that has some kind of interactivity or pseudo intelligence.  To me, code is a form of magic—now hear me out!</p>
<p>When I write a program, I pull the words out of nowhere.  I can take an idea, describe how a program should behave, and it will simply happen.  I said that this was like magic, but now let me step back a bit.  To me code lets me perform a kind of magic that applies to the virtual world rather than the physical, with a bit of crossover via different kinds of <a href="http://en.wikipedia.org/wiki/Human%E2%80%93computer_interaction">human-computer interaction</a>.  The kind of magic that code can accomplish applies to <em>information</em> rather than physical objects.  For example, the idea of someone seeing something and capturing that moment to be displayed on a picture frame in his grandparents’ house is whimsical at least—without any explanation anyway.  However, with a digital camera, an <a href="http://en.wikipedia.org/wiki/Eyefi">Eye-Fi</a> wireless SD card, and an appropriate digital picture frame, one could take a picture, the Eye-Fi could find an open wifi hotspot, connect to <a href="http://flickr.com">Flickr</a>, and upload the picture for the digital picture frame to download and display.</p>
<p>Did you just yawn there?  Most people would, but that’s kind of the point.  Technology can accomplish amazing things—the sky is <em>hardly</em> the limit.  When dreaming up an idea, it isn’t always important to have it seem realistic at first.  Furthermore, <a href="http://en.wikipedia.org/wiki/Project_Natal">no matter how cool the demo</a>, the actual magic will come down to bits and bytes… but that’s great!  To me, in creating software, the biggest barriers are knowledge, skill, and time.  With those three things one person could create a software product that works better than a similar product by a big company.  Two identical pieces of hardware could be made vastly different with different software.  Firmware updates for portable devices are a good example of this, as are videos games for any given console.  On a console, every development team has the same canvas to work with, and it is amazing to see the wildly varied experiences that different games can create.</p>
<p>I’ve always been facinated by this stuff, and always will be.  That’s great for me, though, because it’s an inexpensive hobby and a well-paying profession.  Ah, I think I’ll write a bit of code right now. <img src='http://mypieceoftheinter.net/wp-includes/images/smilies/icon_smile.gif' alt=':-)' class='wp-smiley' /> </p>
]]></content:encoded>
			<wfw:commentRss>http://mypieceoftheinter.net/archives/1661/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Amazing Concept Video of Future Technology, &#8220;Future Vision Montage&#8221;</title>
		<link>http://mypieceoftheinter.net/archives/1479</link>
		<comments>http://mypieceoftheinter.net/archives/1479#comments</comments>
		<pubDate>Tue, 03 Mar 2009 05:32:50 +0000</pubDate>
		<dc:creator>David McGrath</dc:creator>
				<category><![CDATA[Videos]]></category>
		<category><![CDATA[Augmented Reality]]></category>
		<category><![CDATA[Future]]></category>
		<category><![CDATA[Microsoft]]></category>
		<category><![CDATA[Research]]></category>
		<category><![CDATA[Technology]]></category>

		<guid isPermaLink="false">http://mypieceoftheinter.net/archives/1479</guid>
		<description><![CDATA[Think what you want about Microsoft, but if you don’t know Microsoft Research, you don’t have the whole picture.&#160; I just found this concept video, titled “Future Vision Montage” on Gizmodo.&#160; I think I might have recognized more of the theoretical technologies than the casual onlooker since I’ve seen other Microsoft Research projects, but basically [...]]]></description>
			<content:encoded><![CDATA[<p>Think what you want about Microsoft, but if you don’t know Microsoft Research, you don’t have the whole picture.&#160; I just found this concept video, titled “Future Vision Montage” on <a href="http://video.msn.com/video.aspx?vid=a517b260-bb6b-48b9-87ac-8e2743a28ec5">Gizmodo</a>.&#160; I think I might have recognized more of the theoretical technologies than the casual onlooker since I’ve seen other Microsoft Research projects, but basically this video has technology do everything possible to maintain the appearance of magic.&#160; This is generally called “augmented reality” and is an unbelievably cool field of research.</p>
<p>Here’s the <a href="http://video.msn.com/video.aspx?vid=a517b260-bb6b-48b9-87ac-8e2743a28ec5">Soapbox</a> video:    <br /> 
<div style="padding-bottom: 0px; margin: 0px; padding-left: 0px; padding-right: 0px; display: inline; float: none; padding-top: 0px" id="scid:5737277B-5D6D-4f48-ABFC-DD9C333F4C5D:55395463-a426-4fed-9290-f8ec1a10ebc6" class="wlWriterEditableSmartContent">
<div><embed src="http://images.video.msn.com/flash/soapbox1_1.swf" quality="high" width="432" height="364" wmode="transparent" type="application/x-shockwave-flash" pluginspage="http://macromedia.com/go/getflashplayer" flashvars="c=v&#038;v=a517b260-bb6b-48b9-87ac-8e2743a28ec5&#038;from=writer&#038;mkt=en-US"></embed></div>
</div>
]]></content:encoded>
			<wfw:commentRss>http://mypieceoftheinter.net/archives/1479/feed</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>Maze-Solving Robot</title>
		<link>http://mypieceoftheinter.net/archives/380</link>
		<comments>http://mypieceoftheinter.net/archives/380#comments</comments>
		<pubDate>Fri, 14 Mar 2008 02:05:18 +0000</pubDate>
		<dc:creator>David McGrath</dc:creator>
				<category><![CDATA[Demos]]></category>
		<category><![CDATA[Projects]]></category>
		<category><![CDATA[Tutorials]]></category>
		<category><![CDATA[Videos]]></category>
		<category><![CDATA[Botball]]></category>
		<category><![CDATA[Coding]]></category>
		<category><![CDATA[Computers]]></category>
		<category><![CDATA[Robotics]]></category>
		<category><![CDATA[Technology]]></category>

		<guid isPermaLink="false">http://mypieceoftheinter.net/archives/380</guid>
		<description><![CDATA[Botball is an annual robotics competition.  I am part of the Botball club at my high school, and I thought I would share a little project that I just finished. My goal was to have a generic robot with a camera on it that all of the club members could write code for.  First the [...]]]></description>
			<content:encoded><![CDATA[<p>Botball is an annual robotics competition.  I am part of the Botball club at my high school, and I thought I would share a little project that I just finished.</p>
<p>My goal was to have a generic robot with a camera on it that all of the club members could write code for.  First the task was to make the robot bounce around in an arena marked off with red tape, then the goal was to make the robot follow a line (curvy, with sharp edges, with dead ends, whatever), then it was to make the robot solve a maze.  It was a lot of fun, and a great learning experience.</p>
<p>One look at the robot shows that I definitely care about software way more than hardware.<br />
<a href="http://mypieceoftheinter.net/wp-content/uploads/2008/03/side-view.jpg"><img width="640" src="http://mypieceoftheinter.net/wp-content/uploads/2008/03/side-view-thumb.jpg" alt="Side View" height="480" /></a><br />
<a href="http://mypieceoftheinter.net/wp-content/uploads/2008/03/front-view.jpg"><img width="640" src="http://mypieceoftheinter.net/wp-content/uploads/2008/03/front-view-thumb.jpg" alt="front view" height="480" /></a> </p>
<p>It may not look like much, but surely you know that personality is more important than appearance, and besides this little guy has spunk.  If I were to continue this project, though, the next step would be to make him less fat.</p>
<p>Here&#8217;s the maze.  In theory the robot can solve any maze of this style.  (Yes, the end of the maze is a mouse pad. <img src='http://mypieceoftheinter.net/wp-includes/images/smilies/icon_razz.gif' alt=':-P' class='wp-smiley' /> )<br />
<a href="http://mypieceoftheinter.net/wp-content/uploads/2008/03/maze-picture.jpg"><img width="640" src="http://mypieceoftheinter.net/wp-content/uploads/2008/03/maze-picture-thumb.jpg" alt="Maze Picture" height="480" /></a></p>
<p>Here is the robot solving the maze.  Keep in mind that the robot can be placed in any part of the maze with the end anywhere else in the maze.<br />
<script type="text/javascript" src="http://flash.revver.com/player/1.0/player.js?mediaId:741923;affiliateId:119657;backColor:#020E82;frontColor:#FFFFFF;gradColor:#436EE6;width:480;height:392;shareUrl:revver;"></script></p>
<p>I found by experimentation that the longest time it can take the robot to solve this maze, given any start and any end, is 1 minute and 54 seconds.</p>
<p>If there&#8217;s one bit of advice that I think new Botball members need to know, it&#8217;s to be patient.  The first version of my maze-solving code was really just code that made the robot follow lines.  A later version would only solve a maze if it never encountered a dead end, and there&#8217;s always the version of the code that makes the robot flail about sporadically.  So be patient, and don&#8217;t try to tackle the whole project at once.  Get little pieces to work, and use that to build off of.  I in no way assert to be the authority on robotics, but I have learned a thing or two. <img src='http://mypieceoftheinter.net/wp-includes/images/smilies/icon_smile.gif' alt=':-)' class='wp-smiley' /> </p>
<p>Oh, also precise names.  Don&#8217;t go calling methods &#8220;dog&#8221; or &#8220;cat&#8221;.</p>
<p><a href="http://download.somewhatgeeky.com/?downloadID=Maze-Solving_Robot_Code_(Botball)">Download the code here.</a></p>
<p>Here I made a video explaining in general terms how the robot stays on track when following a wall:<br />
<script type="text/javascript" src="http://flash.revver.com/player/1.0/player.js?mediaId:741697;affiliateId:119657;backColor:#020E82;frontColor:#FFFFFF;gradColor:#436EE6;width:480;height:392;shareUrl:revver;"></script></p>
<p>So you may want the code to mess around with, and if you do then you&#8217;re in luck!  Not only is there a link to download the code at the bottom of this post, but I also recorded two videos of me explaining it, or attempting to anyway. <img src='http://mypieceoftheinter.net/wp-includes/images/smilies/icon_razz.gif' alt=':-P' class='wp-smiley' />   Warning: It may be a little boring!</p>
<p>In this video I explain the defines, whose values you can change to make the robot behave differently:<br />
<script type="text/javascript" src="http://flash.revver.com/player/1.0/player.js?mediaId:741803;affiliateId:119657;backColor:#020E82;frontColor:#FFFFFF;gradColor:#436EE6;width:480;height:392;shareUrl:revver;"></script></p>
<p>In this video I explain how the rest of the code works:<br />
<script type="text/javascript" src="http://flash.revver.com/player/1.0/player.js?mediaId:741821;affiliateId:119657;backColor:#020E82;frontColor:#FFFFFF;gradColor:#436EE6;width:480;height:392;shareUrl:revver;"></script></p>
<p>(Note:  I found an error in the deadEndInSight method.  I fixed it incorrectly on video, but it should be right in the download below.)</p>
]]></content:encoded>
			<wfw:commentRss>http://mypieceoftheinter.net/archives/380/feed</wfw:commentRss>
		<slash:comments>4</slash:comments>
		</item>
	</channel>
</rss>

