<?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/"
	xmlns:itunes="http://www.itunes.com/dtds/podcast-1.0.dtd"
>

<channel>
	<title>Quicksurf Internet Media</title>
	<atom:link href="http://quicksurf.com/?feed=rss2&#038;cat=2" rel="self" type="application/rss+xml" />
	<link>http://quicksurf.com</link>
	<description>Techie, Geeky, and Nerdy</description>
	<lastBuildDate>Mon, 23 Jan 2012 05:59:05 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.1.1</generator>
<!-- podcast_generator="Blubrry PowerPress/1.0.9" mode="advanced" entry="advanced" -->
	<itunes:summary>Techie, Geeky, and Nerdy</itunes:summary>
	<itunes:explicit>clean</itunes:explicit>
	<itunes:image href="http://quicksurf.com/images/the-geekinator-podcast-album-art-600x600.jpg" />
	<copyright>2011 Quicksurf Internet Media Creative Commons Attribution 3.0 United States</copyright>
	<itunes:subtitle>Techie, Geeky, and Nerdy</itunes:subtitle>
	<image>
		<title> &#187; Technology</title>
		<url>http://quicksurf.com/images/the-geekinator-podcast-album-art-600x600.jpg</url>
		<link>http://quicksurf.com/?cat=2</link>
	</image>
	<itunes:category text="Technology">
		<itunes:category text="Tech News" />
		<itunes:category text="Gadgets" />
	</itunes:category>
		<item>
		<title>LNLP #1014 &#124; Google Chrome Web Store, Google TV, Five Best Things In Fedora 13</title>
		<link>http://quicksurf.com/?p=2017</link>
		<comments>http://quicksurf.com/?p=2017#comments</comments>
		<pubDate>Mon, 24 May 2010 06:59:50 +0000</pubDate>
		<dc:creator>Adrian Bacon</dc:creator>
				<category><![CDATA[Broadcast Media]]></category>
		<category><![CDATA[Linux News Log]]></category>
		<category><![CDATA[Podcast]]></category>
		<category><![CDATA[Technology]]></category>
		<category><![CDATA[android]]></category>
		<category><![CDATA[fedora]]></category>
		<category><![CDATA[google]]></category>
		<category><![CDATA[linux]]></category>
		<category><![CDATA[linux foundation]]></category>
		<category><![CDATA[linuxcare]]></category>
		<category><![CDATA[open source]]></category>
		<category><![CDATA[osadl]]></category>

		<guid isPermaLink="false">http://quicksurf.com/?p=2017</guid>
		<description><![CDATA[In This Episode: Google plans to launch Chrome Web Store for applications and games, Google and Android to takeover your TV next, Automation Development Lab Joins Linux Foundation, The five best things coming in Fedora 13 Linux, Linuxcare returns with focus in the cloud.]]></description>
			<content:encoded><![CDATA[<h3>Watch Linux News Log</h3>
<p><embed src="http://blip.tv/play/hZp%2BgeDaagA%2Em4v" type="application/x-shockwave-flash" width="480" height="300" allowscriptaccess="always" allowfullscreen="true"></embed></p>
<p><strong>Download:</strong> <a href="http://media.techpodcasts.com/linuxnewslog/m.avcdn.com/qim/linux-news-log-1014-2010-05-23-ipod.mp4">iPod</a> | <a href="http://media.techpodcasts.com/linuxnewslog/m.avcdn.com/qim/linux-news-log-1014-2010-05-23-hd.mp4">HD (720p 30fps)</a> | <a href="http://media.techpodcasts.com/linuxnewslog/m.avcdn.com/qim/linux-news-log-1013-2010-05-16.mp3">MP3</a> | <a href="http://media.techpodcasts.com/linuxnewslog/m.avcdn.com/qim/linux-news-log-1013-2010-05-16.ogg">OGG</a>
</p>
<p><strong>Sponsor:</strong> Solve technical issues faster with GoToAssist Express. <a href="http://altfarm.mediaplex.com/ad/ck/9710-98961-32087-1"> Try it FREE for 30 days.</a></p>
<h3>Episode Links</h3>
<ul>
<li><a href="http://www.htlounge.net/art/12291/google-plans-to-launch-chrome-web-store-for-applications-and-games.html">Google plans to launch Chrome Web Store for applications and games</a></li>
<li><a href="http://www.mobilemag.com/2010/05/21/google-and-android-to-takeover-your-tv-next/">Google and Android to takeover your TV next</a></li>
<li><a href="http://www.marketwire.com/press-release/Automation-Development-Lab-Joins-Linux-Foundation-1262057.htm">Automation Development Lab Joins Linux Foundation</a></li>
<li><a href="http://www.channelregister.co.uk/2010/05/19/microsoft_salesforce_patent_litigation/">Microsoft launches patent suit at Salesforce cloud</a></li>
<li><a href="http://blogs.computerworld.com/16133/the_five_best_things_coming_in_fedora_13_linux">The five best things coming in Fedora 13 Linux</a></li>
<li><a href="http://blogs.computerworld.com/16119/linuxcare_returns?source=rss_blogs">Linuxcare returns with focus in the cloud</a></li>
</ul>
<h3>Subscribe</h3>
<ul>
<li><a href="http://quicksurf.com/?feed=mp3&amp;cat=141">RSS 2.0 MP3</a></li>
<li><a href="http://quicksurf.com/?feed=ogg&amp;cat=141">RSS 2.0 Ogg Vorbis</a></li>
<li><a href="http://quicksurf.com/?feed=hd-video&amp;cat=141">RSS 2.0 HD MP4 Video (h.264, 30 FPS)</a></li>
<li><a href="http://quicksurf.com/?feed=podcast&amp;cat=141">RSS 2.0 iPod Video</a></li>
<li><a href="http://quicksurf.com/?feed=podcast">RSS 2.0 Quicksurf Internet Media Main Feed (includes everything)</a></li>
</ul>
<h3>Contact</h3>
<ul>
<li><a href="http://linux.quicksurf.com/">Visit us on the Web!</a></li>
<li><a href="http://podcasts.quicksurf.com/">Visit Our Sister Shows</a></li>
<li>Email: linux at quicksurf dot com</li>
<li>Voice Mail Hot Line: 602-466-3134</li>
<li><a href="http://twitter.com/adrian_bacon/">Twitter</a></li>
<li><a href="http://friendfeed.com/adrianbacon/">Friendfeed</a></li>
<li><a href="http://quicksurf.blip.tv/">Blip.tv</a></li>
<li><a href="http://www.youtube.com/quicksurfinternet">YouTube Podcast Channel</a></li>
<li><a href="http://www.youtube.com/adrianbacon">Adrian&#8217;s YouTube Vlog</a></li>
</ul>
<h3>Memberships</h3>
<p><a href="http://www.techpodcasts.com/"><img src="http://quicksurf.com/pictures/techpodcasts/tp_badge_gry.gif" alt="Tech Podcasts... if it's tech, it's here!" border="0"/></a></p>
]]></content:encoded>
			<wfw:commentRss>http://quicksurf.com/?feed=rss2&#038;p=2017</wfw:commentRss>
		<slash:comments>0</slash:comments>
<enclosure url="http://media.techpodcasts.com/linuxnewslog/m.avcdn.com/qim/linux-news-log-1014-2010-05-23-ipod.mp4" length="109836347" type="video/mp4" />
			<itunes:keywords>android,fedora,google,linux,linux foundation,linuxcare,open source,osadl</itunes:keywords>
		<itunes:subtitle>In This Episode: Google plans to launch Chrome Web Store for applications and games, Google and Android to takeover your TV next, Automation Development Lab Joins Linux Foundation, The five best things coming in Fedora 13 Linux,</itunes:subtitle>
		<itunes:summary>In This Episode: Google plans to launch Chrome Web Store for applications and games, Google and Android to takeover your TV next, Automation Development Lab Joins Linux Foundation, The five best things coming in Fedora 13 Linux, Linuxcare returns with focus in the cloud.</itunes:summary>
		<itunes:author>Adrian Bacon</itunes:author>
		<itunes:explicit>clean</itunes:explicit>
		<itunes:duration>9:32</itunes:duration>
	</item>
		<item>
		<title>LNLP #1013 &#124; Steam for Linux, Chrome for Ubuntu, PS3 Linux</title>
		<link>http://quicksurf.com/?p=1997</link>
		<comments>http://quicksurf.com/?p=1997#comments</comments>
		<pubDate>Sun, 16 May 2010 18:59:46 +0000</pubDate>
		<dc:creator>Adrian Bacon</dc:creator>
				<category><![CDATA[Broadcast Media]]></category>
		<category><![CDATA[Linux News Log]]></category>
		<category><![CDATA[Podcast]]></category>
		<category><![CDATA[Technology]]></category>
		<category><![CDATA[aigo]]></category>
		<category><![CDATA[chrome]]></category>
		<category><![CDATA[firefox]]></category>
		<category><![CDATA[google]]></category>
		<category><![CDATA[linux]]></category>
		<category><![CDATA[maemo]]></category>
		<category><![CDATA[mid]]></category>
		<category><![CDATA[novell]]></category>
		<category><![CDATA[NX7001]]></category>
		<category><![CDATA[open source]]></category>
		<category><![CDATA[ps3]]></category>
		<category><![CDATA[sony]]></category>
		<category><![CDATA[steam]]></category>
		<category><![CDATA[suse]]></category>
		<category><![CDATA[tech]]></category>
		<category><![CDATA[ubuntu]]></category>
		<category><![CDATA[valve]]></category>
		<category><![CDATA[Walkshow]]></category>

		<guid isPermaLink="false">http://quicksurf.com/?p=1997</guid>
		<description><![CDATA[In This Episode: It's Official: Valve Releasing Steam, Source Engine For Linux!, Will Ubuntu Drop Firefox For GoogleÂ Chrome?, Air Force PS3 Supercomputer Screwed By Sony Killing Off Linux Support, Novell preps service pack for SUSE Linux 11, Aigo Introduced Maemo Powered Walkshow NX7001 MID]]></description>
			<content:encoded><![CDATA[<h3>Watch Linux News Log</h3>
<p><embed src="http://blip.tv/play/hZp%2Bgd7eLwA%2Em4v" type="application/x-shockwave-flash" width="480" height="300" allowscriptaccess="always" allowfullscreen="true"></embed></p>
<p><strong>Download:</strong> <a href="http://media.techpodcasts.com/linuxnewslog/m.avcdn.com/qim/linux-news-log-1013-2010-05-16-ipod.mp4">iPod</a> | <a href="http://media.techpodcasts.com/linuxnewslog/m.avcdn.com/qim/linux-news-log-1013-2010-05-16-hd.mp4">HD (720p 30fps)</a> | <a href="http://media.techpodcasts.com/linuxnewslog/m.avcdn.com/qim/linux-news-log-1013-2010-05-16.mp3">MP3</a> | <a href="http://media.techpodcasts.com/linuxnewslog/m.avcdn.com/qim/linux-news-log-1013-2010-05-16.ogg">OGG</a>
</p>
<p><strong>Sponsor:</strong> Solve technical issues faster with GoToAssist Express. <a href="http://altfarm.mediaplex.com/ad/ck/9710-98961-32087-1"> Try it FREE for 30 days.</a></p>
<h3>Episode Links</h3>
<ul>
<li><a href="http://www.phoronix.com/scan.php?page=article&#038;item=valve_steam_announcement&#038;num=1">It&#8217;s Official: Valve Releasing Steam, Source Engine For Linux!</a></li>
<li><a href="http://techcrunch.com/2010/05/14/the-new-browser-wars-will-ubuntu-drop-firefox-for-google-chrome/?utm_source=feedburner&#038;utm_medium=feed&#038;utm_campaign=Feed%3A+Techcrunch+%28TechCrunch%29">Will Ubuntu Drop Firefox For GoogleÂ Chrome?</a></li>
<li><a href="http://www.techdirt.com/articles/20100513/0113129410.shtml">Air Force PS3 Supercomputer Screwed By Sony Killing Off Linux Support</a></li>
<li><a href="http://www.theregister.co.uk/2010/05/13/novell_suse_linux_sp1_preview/">Novell preps service pack for SUSE Linux 11</a></li>
<li><a href="http://techpinger.com/2010/05/aigo-introduced-maemo-powered-walkshow-nx7001-mid/">Aigo Introduced Maemo Powered Walkshow NX7001 MID</a></li>
</ul>
<h3>Subscribe</h3>
<ul>
<li><a href="http://quicksurf.com/?feed=mp3&amp;cat=141">RSS 2.0 MP3</a></li>
<li><a href="http://quicksurf.com/?feed=ogg&amp;cat=141">RSS 2.0 Ogg Vorbis</a></li>
<li><a href="http://quicksurf.com/?feed=hd-video&amp;cat=141">RSS 2.0 HD MP4 Video (h.264, 30 FPS)</a></li>
<li><a href="http://quicksurf.com/?feed=podcast&amp;cat=141">RSS 2.0 iPod Video</a></li>
<li><a href="http://quicksurf.com/?feed=podcast">RSS 2.0 Quicksurf Internet Media Main Feed (includes everything)</a></li>
</ul>
<h3>Contact</h3>
<ul>
<li><a href="http://linux.quicksurf.com/">Visit us on the Web!</a></li>
<li><a href="http://podcasts.quicksurf.com/">Visit Our Sister Shows</a></li>
<li>Email: linux at quicksurf dot com</li>
<li>Voice Mail Hot Line: 602-466-3134</li>
<li><a href="http://twitter.com/adrian_bacon/">Twitter</a></li>
<li><a href="http://friendfeed.com/adrianbacon/">Friendfeed</a></li>
<li><a href="http://quicksurf.blip.tv/">Blip.tv</a></li>
<li><a href="http://www.youtube.com/quicksurfinternet">YouTube Podcast Channel</a></li>
<li><a href="http://www.youtube.com/adrianbacon">Adrian&#8217;s YouTube Vlog</a></li>
</ul>
<h3>Memberships</h3>
<p><a href="http://www.techpodcasts.com/"><img src="http://quicksurf.com/pictures/techpodcasts/tp_badge_gry.gif" alt="Tech Podcasts... if it's tech, it's here!" border="0"/></a></p>
]]></content:encoded>
			<wfw:commentRss>http://quicksurf.com/?feed=rss2&#038;p=1997</wfw:commentRss>
		<slash:comments>0</slash:comments>
<enclosure url="http://media.techpodcasts.com/linuxnewslog/m.avcdn.com/qim/linux-news-log-1013-2010-05-16-ipod.mp4" length="102194968" type="video/mp4" />
			<itunes:keywords>aigo,chrome,firefox,google,linux,maemo,mid,novell,NX7001,open source,ps3,sony</itunes:keywords>
		<itunes:subtitle>In This Episode: It&#039;s Official: Valve Releasing Steam, Source Engine For Linux!, Will Ubuntu Drop Firefox For GoogleÂ Chrome?, Air Force PS3 Supercomputer Screwed By Sony Killing Off Linux Support, Novell preps service pack for SUSE Linux 11,</itunes:subtitle>
		<itunes:summary>In This Episode: It&#039;s Official: Valve Releasing Steam, Source Engine For Linux!, Will Ubuntu Drop Firefox For GoogleÂ Chrome?, Air Force PS3 Supercomputer Screwed By Sony Killing Off Linux Support, Novell preps service pack for SUSE Linux 11, Aigo Introduced Maemo Powered Walkshow NX7001 MID</itunes:summary>
		<itunes:author>Adrian Bacon</itunes:author>
		<itunes:explicit>clean</itunes:explicit>
		<itunes:duration>8:53</itunes:duration>
	</item>
		<item>
		<title>New File Copy Utility</title>
		<link>http://quicksurf.com/?p=1064</link>
		<comments>http://quicksurf.com/?p=1064#comments</comments>
		<pubDate>Fri, 16 May 2008 06:59:34 +0000</pubDate>
		<dc:creator>Adrian Bacon</dc:creator>
				<category><![CDATA[Eclipse]]></category>
		<category><![CDATA[Java]]></category>
		<category><![CDATA[Programming]]></category>
		<category><![CDATA[Technology]]></category>

		<guid isPermaLink="false">http://quicksurf.com/?p=1064</guid>
		<description><![CDATA[I wrote a Java based file copy utility that works kinda like windows xcopy or robocopy, but faster. Check it out.]]></description>
			<content:encoded><![CDATA[<p>I wrote a Java based file copy utility that works kinda like windows xcopy or robocopy, but faster.  <a href="http://quicksurf.com/?page_id=1063">Check it out</a>.</p>
]]></content:encoded>
			<wfw:commentRss>http://quicksurf.com/?feed=rss2&#038;p=1064</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>OS X 10.5.2 &amp; Time Capsule (1 TB)</title>
		<link>http://quicksurf.com/?p=1057</link>
		<comments>http://quicksurf.com/?p=1057#comments</comments>
		<pubDate>Tue, 18 Mar 2008 06:53:54 +0000</pubDate>
		<dc:creator>Adrian Bacon</dc:creator>
				<category><![CDATA[Technology]]></category>

		<guid isPermaLink="false">http://quicksurf.com/?p=1057</guid>
		<description><![CDATA[Ok, so I&#8217;ve gotten my Macbook Pro wiped with a fresh install of 10.5 (and patched up to 10.5.2), and then got the new Time Capsule in place (which replaced my old Linksys 802.11G Wifi router that was getting flakey). I&#8217;ve gotten Time Machine running (which for the most part works as advertised), but I&#8217;ve [...]]]></description>
			<content:encoded><![CDATA[<p>Ok, so I&#8217;ve gotten my Macbook Pro wiped with a fresh install of 10.5 (and patched up to 10.5.2), and then got the new Time Capsule in place (which replaced my old Linksys 802.11G Wifi router that was getting flakey).</p>
<p>I&#8217;ve gotten Time Machine running (which for the most part works as advertised), but I&#8217;ve got a little problem.  When I have a lot of data that changes between Time Machine back-ups and it takes a while for Time Machine to copy every thing over (over the 802.11 draft-n network), I get this little window that pops up.</p>
<p><a href="http://www.flickr.com/photos/geekinator/2342776216/" title="Time Capsule Problem by The Geekinator, on Flickr"><img src="http://farm4.static.flickr.com/3056/2342776216_64316227f1.jpg" width="500" height="323" alt="Time Capsule Problem" /></a></p>
<p>I don&#8217;t get the point of it or even why it&#8217;s even happening.  If the problem was resolved without any action on my part, then why do I keep getting this stupid box pop up?  For a notification, it&#8217;s a really crappy way of letting me know.  If I click on &#8220;Continue&#8221; it takes me to the configuration screens, which I don&#8217;t want because I&#8217;ve already configured it and don&#8217;t want to re-configure it.  Besides, the thermals of the unit shouldn&#8217;t even be something I can control.  It should just work and if it over-heats then tell me in a manner that&#8217;s way more intuitive than that, other-wise don&#8217;t tell me at all unless I ask for it.</p>
<p>Anyway, here&#8217;s how it&#8217;s installed, I don&#8217;t see how it could be overheating, as there&#8217;s nothing on it or around it and it is in a fairly well ventilated area.</p>
<p><a href="http://www.flickr.com/photos/geekinator/2341970461/" title="Time Capsule Installation Location by The Geekinator, on Flickr"><img src="http://farm3.static.flickr.com/2364/2341970461_08c78bca9c_o.jpg" width="480" height="640" alt="Time Capsule Installation Location" /></a></p>
<p>Anybody have any ideas?  As of the last time I checked, I&#8217;m patched up to the latest versions of everything.</p>
]]></content:encoded>
			<wfw:commentRss>http://quicksurf.com/?feed=rss2&#038;p=1057</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>A Greener Apple</title>
		<link>http://quicksurf.com/?p=1687</link>
		<comments>http://quicksurf.com/?p=1687#comments</comments>
		<pubDate>Thu, 03 May 2007 06:59:01 +0000</pubDate>
		<dc:creator>Adrian Bacon</dc:creator>
				<category><![CDATA[Apple News Log]]></category>
		<category><![CDATA[Broadcast Media]]></category>
		<category><![CDATA[Podcast]]></category>
		<category><![CDATA[Technology]]></category>

		<guid isPermaLink="false">http://quicksurf.com/?p=1687</guid>
		<description><![CDATA[Today, Apple&#8217;s CEO, Steve Jobs wrote a nice letter about how despite what was being said in the Press, Apple was quite Environmentally friendly with it&#8217;s products. He breaks it out into clear and concise sections and does quite a good job of walking the average person through what Apple has been doing to be [...]]]></description>
			<content:encoded><![CDATA[<p>Today, Apple&#8217;s CEO, Steve Jobs <a href="http://www.apple.com/hotnews/agreenerapple/">wrote a nice</a> letter about how despite what was being said in the Press, Apple was quite Environmentally friendly with it&#8217;s products.</p>
<p>He breaks it out into clear and concise sections and does quite a good job of walking the average person through what Apple has been doing to be Environmentally Green and what they&#8217;ve planned for the future.</p>
<p>I for one was quite impressed with the depth covered as well as the general open and candid manner in which the issue was discussed.</p>
<p>What I find to be very interesting is that Apple is also looking at their &#8220;Carbon Footprint&#8221; (meaning how much green house gases they produce through the course of simply existing and conducting business, which contributes to Global Warming) and how to reduce that over time.  I look forward to hearing what Apple has to say about what they&#8217;re going to do about their Carbon Emissions when they&#8217;re ready to say it.  Like a growing number of companies out there, it&#8217;s good to see that they are interested in and actively managing what their impact on the environment has been, is currently, and will be in the future.  </p>
<p>It&#8217;s unfortunate that many other companies view that sort of thing as a necessary evil because they are legally required to do so, and only do what they are legally required to do, and exploit as many loop-holes as they can.  That sort of minimalist behavior is extremely counter-productive to the spirit of the regulations set in place and irresponsible at many levels.</p>
<p>I think it would be a great thing to see Apple become a world leader not just in technology and industrial design, but also in green processes and tightly controlling their own impact on the world&#8217;s environment.</p>
<p>I would love to support a company and own products from said company that is an industry leader in Environmentally Safe and Sound practices, not only in their manufacturing processes, but also in recycling their older products that are now obsolete and in their overall &#8220;Carbon Footprint&#8221;.</p>
<p>You can read the whole letter <a href="http://www.apple.com/hotnews/agreenerapple/">here</a>, or download the PDF version <a href="http://images.apple.com/hotnews/agreenerapple/docs/A_Greener_Apple.pdf">here</a>.</p>
<p><strong>Update</strong>: I&#8217;ve been watching a lot of the postings on the net about the letter, and I&#8217;m a little disconcerted to find out that the focus of quite a few people and sites is that Steve confirmed LED backlit displays.  You&#8217;ve got to be kidding&#8230; get your heads out of the geek porn here people!  The purpose and the focus of the letter was to let us know what Apple is doing to be eco-friendly, not to drop snippets about new products for everybody to drool over!  Talk about missing the point.</p>
]]></content:encoded>
			<wfw:commentRss>http://quicksurf.com/?feed=rss2&#038;p=1687</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Introducing JPodcatcher</title>
		<link>http://quicksurf.com/?p=964</link>
		<comments>http://quicksurf.com/?p=964#comments</comments>
		<pubDate>Sun, 26 Nov 2006 03:14:22 +0000</pubDate>
		<dc:creator>Adrian Bacon</dc:creator>
				<category><![CDATA[Eclipse]]></category>
		<category><![CDATA[Java]]></category>
		<category><![CDATA[Programming]]></category>
		<category><![CDATA[Technology]]></category>

		<guid isPermaLink="false">http://quicksurf.com/?p=964</guid>
		<description><![CDATA[In the Yet Another Podcatcher Application category, I introduce JPodcatcher. It&#8217;s a super simple Java podcatcher application designed for cross platform functionality, and a thin and light footprint. I originally wrote it for an internal application to keep the Techpodcasts.com audio stream synchronized with our feeds, but then realized that with a slight name change [...]]]></description>
			<content:encoded><![CDATA[<p>In the Yet Another Podcatcher Application category, I introduce JPodcatcher.  It&#8217;s a super simple Java podcatcher application designed for cross platform functionality, and a thin and light footprint.</p>
<p>I originally wrote it for an internal application to keep the <a href="http://www.techpodcasts.com/">Techpodcasts.com</a> audio stream synchronized with our feeds, but then realized that with a slight name change and some minor tweaking, I could release it as GPL and have a thin and light podcatcher available to the masses that runs on most platforms.  Granted, it&#8217;s not a full blown application, and it doesn&#8217;t synchronize what it downloads with any of your libraries, but it does make sure that you have the latest podcast downloaded to a known folder and file name.</p>
<p>Anyway, it&#8217;s being released as 0.9.23, and I intend to do a 1.0 release at some point after I&#8217;ve had a few people try it out and give me feed back.</p>
<p>You can check it out <a href="http://quicksurf.com/?page_id=963">here</a>.</p>
]]></content:encoded>
			<wfw:commentRss>http://quicksurf.com/?feed=rss2&#038;p=964</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Print a Stack Trace in Java</title>
		<link>http://quicksurf.com/?p=936</link>
		<comments>http://quicksurf.com/?p=936#comments</comments>
		<pubDate>Thu, 24 Aug 2006 18:52:21 +0000</pubDate>
		<dc:creator>Adrian Bacon</dc:creator>
				<category><![CDATA[Java]]></category>
		<category><![CDATA[Programming]]></category>
		<category><![CDATA[Technology]]></category>

		<guid isPermaLink="false">http://quicksurf.com/?p=936</guid>
		<description><![CDATA[Have you ever been in the middle of a method in Java and wanted to print a stack trace just to see what things were doing at that point in time without actually going into debug mode? Well, I needed to do just such a thing, and here&#8217;s how I did it: try { throw [...]]]></description>
			<content:encoded><![CDATA[<p>Have you ever been in the middle of a method in Java and wanted to print a stack trace just to see what things were doing at that point in time without actually going into debug mode?</p>
<p>Well, I needed to do just such a thing, and here&#8217;s how I did it:<br />
<code><br />
try {<br />
	throw new Exception();<br />
}<br />
catch (Exception ex) {<br />
	ex.printStackTrace();<br />
}<br />
</code></p>
<p>It&#8217;s a great way to just look into the innards of running code at a very specific point in time and this code can literally be placed at any point in any method in Java.</p>
<p>Here&#8217;s what a one liner would look like:</p>
<p><code>try{throw new Exception();}catch(Exception ex){ex.printStackTrace();}</code></p>
]]></content:encoded>
			<wfw:commentRss>http://quicksurf.com/?feed=rss2&#038;p=936</wfw:commentRss>
		<slash:comments>2</slash:comments>
		</item>
		<item>
		<title>Getting Keyboard Input From a Java Console Application</title>
		<link>http://quicksurf.com/?p=882</link>
		<comments>http://quicksurf.com/?p=882#comments</comments>
		<pubDate>Sun, 18 Jun 2006 23:12:20 +0000</pubDate>
		<dc:creator>Adrian Bacon</dc:creator>
				<category><![CDATA[Eclipse]]></category>
		<category><![CDATA[Java]]></category>
		<category><![CDATA[Programming]]></category>
		<category><![CDATA[Technology]]></category>

		<guid isPermaLink="false">http://quicksurf.com/?p=882</guid>
		<description><![CDATA[OK, I&#8217;ve been writing Java code at work for about a year now, but I&#8217;ve never had to actually get keyboard input from a Java console application before now. I&#8217;d always just passed what I wanted in on the command line as arguments and handled it, or read it in from a configuration file, or [...]]]></description>
			<content:encoded><![CDATA[<p>OK, I&#8217;ve been writing <a href="http://java.sun.com/">Java</a> code at work for about a year now, but I&#8217;ve never had to actually get keyboard input from a Java console application before now.  I&#8217;d always just passed what I wanted in on the command line as arguments and handled it, or read it in from a configuration file, or gotten the info I&#8217;d needed by reading it from a database in the program.  Until now&#8230;  You see, I&#8217;ve started working on some personal programming stuff at home, and wanted to either get all my programs&#8217; needed info on the command line as arguments, or have my program prompt me for the information.  Doing this meant getting some keyboard input from the user.</p>
<p>I figured I&#8217;d just use <code>System.in.read()</code>, however, it turns out that <code>read()</code> just returns either a single byte, or you have to pass in a byte array for it to use, and it only reads up to the size of the array you passed in, and it isn&#8217;t easily converted into a <code>String</code> without all the added crap of the unused array space in the byte array at the end, and therefore is a half stub-like implementation that you need to build on further in order for it to be easily useful in a programmatic sense of simply reading in what I typed and putting it in a <code>String</code>.</p>
<p>You would think that <a href="http://sun.com/">Sun</a> would make it more intuitive to read in a line of text from the keyboard and put it in a <code>String</code>, but they don&#8217;t.  I actually spent quite some time searching on how to do this until I ran across a solution that makes perfect sense, and works.  Here&#8217;s an example.</p>
<p>You&#8217;ll need to import <code>java.io.*</code> at the head of the class you&#8217;re going to use for this little endeavor.  I use <a href="http://eclipse.org/">Eclipse</a> for all my stuff, and I had this in it&#8217;s own little package.</p>
<pre><code>
public static void main(String[] args) {
	try
	{
		BufferedReader in = new BufferedReader(new InputStreamReader(System.in));
		String input;
		System.out.print("Please Type Something here:");
		input = in.readLine();
		System.out.println();
		System.out.print("What you typed in: " + input);
	}
	catch (Exception ex)
	{
		System.out.print("Ooopsie!  We've had an Exception: " + ex.getMessage());
	}
}
</code></pre>
<p>Essentially, what we&#8217;re doing here, is taking the raw <code>System.in</code> (which only returns a single byte, or a byte array, both of which are totally useless by themselves), buffering them with a BufferedReader object, which gives us a nice handy <code>readLine()</code> method just like what you would get for reading keyboard inputs in most other languages, and it returns a string, which contains what you just typed in.  Very handy.</p>
<p>Now, you could probably code something to do the same thing, and I was about to until I found this little gem of code, and since I&#8217;m a really lazy guy when it comes to coding, and this does exactly what I want, I decided not to code something up to do the same thing.</p>
<p>I&#8217;m sure this is what Sun had in mind when it comes to prompting a user for input on a console java app, however, they don&#8217;t have any examples of code doing so (or even an explanation on how to do it), I found a code snippet on the web from some other guy that was doing something else not related, but he did keyboard input just like what I wanted, so I looked to see how he did it, and did the same thing here.</p>
<p>Java has some real nice things going for it, but also some real bugaboos, just like this one.</p>
<p>And that folks, is how you&#8217;d do some keyboard input from a Java console application.</p>
]]></content:encoded>
			<wfw:commentRss>http://quicksurf.com/?feed=rss2&#038;p=882</wfw:commentRss>
		<slash:comments>3</slash:comments>
		</item>
		<item>
		<title>Display RSS Feeds with Javascript</title>
		<link>http://quicksurf.com/?p=470</link>
		<comments>http://quicksurf.com/?p=470#comments</comments>
		<pubDate>Sun, 12 Sep 2004 00:45:48 +0000</pubDate>
		<dc:creator>Adrian Bacon</dc:creator>
				<category><![CDATA[Programming]]></category>
		<category><![CDATA[Technology]]></category>

		<guid isPermaLink="false">http://blog.quicksurf.com/index.php?p=470</guid>
		<description><![CDATA[I ran across this handy little javascript applet that is fantastic...]]></description>
			<content:encoded><![CDATA[<p>I ran across this handy little javascript applet that is fantastic&#8230;</p>
<p>It essentially displays RSS feeds in html using javascript.  <span id="more-470"></span></p>
<p>Here it is with some extremely minor modifications&#8230;</p>
<p><code><br />
&lt;HTML&gt;<br />
&lt;HEAD&gt;<br />
&lt;script type="text/javascript"&gt;<br />
function GetRSSNews(){</p>
<p>var iMax = 5</p>
<p>var rssDoc = new ActiveXObject("Microsoft.XMLDOM")<br />
rssDoc.async = false<br />
rssDoc.load("http://blog.quicksurf.com/wp-rss2.php")</p>
<p>var headNode = rssDoc.selectNodes("/rss/channel")<br />
var itemNodes = rssDoc.selectNodes("/rss/channel/item")</p>
<p>if(itemNodes.length&lt;iMax){<br />
iMax = itemNodes.length<br />
}</p>
<p>var feedBody = ""</p>
<p>for(i=0;i&lt;iMax;i++){<br />
feedBody = feedBody + "&lt;p&gt;&lt;a href='" + itemNodes.item(i).getElementsByTagName("link").item(0).text + "'&gt;" + itemNodes.item(i).getElementsByTagName("title").item(0).text + "&lt;/a&gt;&lt;/p&gt;"<br />
}</p>
<p>myFeeds.innerHTML = feedBody<br />
myChannel.innerText = headNode.item(0).getElementsByTagName("title").item(0).text<br />
}<br />
&lt;/script&gt;<br />
&lt;/HEAD&gt;<br />
&lt;BODY onload="GetRSSNews()"&gt;<br />
&lt;div id="myChannel"&gt;&lt;/div&gt;<br />
&lt;div id="myFeeds"&gt;&lt;/div&gt;<br />
&lt;/BODY&gt;<br />
&lt;/HTML&gt;<br />
</code></p>
<p>Many thanks to <a href="http://www.howtodothings.com/showarticle.asp?article=732" target="_blank">HowToDoThings.com</a> and <a href="http://www.imernugo.com/" target="_blank">Mr. Wole Ogunremi</a> for this code snippet.</p>
<p>I&#8217;m going to use this as a baseboard and modify it for my site&#8230; I have a few uses for that sort of thing&#8230;</p>
]]></content:encoded>
			<wfw:commentRss>http://quicksurf.com/?feed=rss2&#038;p=470</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Stereo2Mono</title>
		<link>http://quicksurf.com/?p=124</link>
		<comments>http://quicksurf.com/?p=124#comments</comments>
		<pubDate>Thu, 06 May 2004 21:14:32 +0000</pubDate>
		<dc:creator>Adrian Bacon</dc:creator>
				<category><![CDATA[Programming]]></category>
		<category><![CDATA[Technology]]></category>

		<guid isPermaLink="false">http://blog.quicksurf.com/index.php?p=124</guid>
		<description><![CDATA[Well, Well&#8230; There&#8217;s a new stepping of Stereo2Mono up. Version 1.0.2 I did some optimizations to the dithering&#8230; You can get it here]]></description>
			<content:encoded><![CDATA[<p>Well, Well&#8230;</p>
<p>There&#8217;s a new stepping of Stereo2Mono up.  Version 1.0.2  I did some optimizations to the dithering&#8230; </p>
<p>You can get it <a href="http://www.quicksurf.com/stereo2mono.html" target="_blank">here</a></p>
]]></content:encoded>
			<wfw:commentRss>http://quicksurf.com/?feed=rss2&#038;p=124</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Javascript: Base64 Encoder and Decoder</title>
		<link>http://quicksurf.com/?p=78</link>
		<comments>http://quicksurf.com/?p=78#comments</comments>
		<pubDate>Tue, 10 Feb 2004 23:55:47 +0000</pubDate>
		<dc:creator>Adrian Bacon</dc:creator>
				<category><![CDATA[Programming]]></category>
		<category><![CDATA[Technology]]></category>

		<guid isPermaLink="false">http://blog.quicksurf.com/index.php?p=78</guid>
		<description><![CDATA[Well, I had the need to develop some Base64 Encoding/Decoding routines for a project I was working on, and decided to port it over to Javascript so that you can do it in a browser. The end result is as follows (source code). If you&#8217;re not really familiar with Base64, there&#8217;s a howto located here. [...]]]></description>
			<content:encoded><![CDATA[<p>Well, I had the need to develop some Base64 Encoding/Decoding routines for a project I was working on, and decided to port it over to Javascript so that you can do it in a browser.  The end result is as follows (source code).  If you&#8217;re not really familiar with Base64, there&#8217;s a howto located <a href="http://www.aardwulf.com/tutor/base64/howto-1.asp" target="_blank">here</a>.  I based my encoder/decoder off of some of the samples, but because there is only really one way to encode and decode in base64 much of the code out there looks exactly the same.  Anyway, on to the actual code sample</p>
<p><span id="more-78"></span><br />
<font face="Terminal"></p>
<p>&lt;!&#8211;<br />
PROJECT: Javascript Based Base64 Encoding and Decoding Engine</p>
<p>DATE: 02/10/2004</p>
<p>AUTHOR: Adrian Bacon</p>
<p>DESCRIPTION:Encode and decode data to and from the Base64 format<br />
in Javascript. This could be used to convert encrypted<br />
data to text for submitting via http gets or posts or<br />
for sending via email or other text only mediums.</p>
<p>COPYRIGHT: You are free to use this code as you see fit provided<br />
that you send any changes or modifications back to me.<br />
&#8211;&gt;<br />
&lt;!DOCTYPE HTML PUBLIC &quot;-//W3C//DTD HTML 4.0 Transitional//EN&quot;&gt;</p>
<p>&lt;html&gt;<br />
&lt;head&gt;<br />
&lt;title&gt;JavaScript Base64 Encoder/Decoder&lt;/title&gt;</p>
<p>&lt;script type=&quot;text/javascript&quot;&gt;&lt;!&#8211;<br />
//First things first, set up our array that we are going to use.<br />
var keyStr = &quot;ABCDEFGHIJKLMNOPQRSTUVWXYZ&quot; + //all caps<br />
&quot;abcdefghijklmnopqrstuvwxyz&quot; + //all lowercase<br />
&quot;0123456789+/=&quot;; // all numbers plus +/=</p>
<p>//Heres the encode function<br />
function encode64(inp)<br />
{<br />
var out = &quot;&quot;; //This is the output<br />
var chr1, chr2, chr3 = &quot;&quot;; //These are the 3 bytes to be encoded<br />
var enc1, enc2, enc3, enc4 = &quot;&quot;; //These are the 4 encoded bytes<br />
var i = 0; //Position counter</p>
<p>do { //Set up the loop here<br />
chr1 = inp.charCodeAt(i++); //Grab the first byte<br />
chr2 = inp.charCodeAt(i++); //Grab the second byte<br />
chr3 = inp.charCodeAt(i++); //Grab the third byte</p>
<p>//Here is the actual base64 encode part.<br />
//There really is only one way to do it.<br />
enc1 = chr1 &gt;&gt; 2;<br />
enc2 = ((chr1 &amp; 3) &lt;&lt; 4) | (chr2 &gt;&gt; 4);<br />
enc3 = ((chr2 &amp; 15) &lt;&lt; 2) | (chr3 &gt;&gt; 6);<br />
enc4 = chr3 &amp; 63;</p>
<p>if (isNaN(chr2)) {<br />
enc3 = enc4 = 64;<br />
} else if (isNaN(chr3)) {<br />
enc4 = 64;<br />
}</p>
<p>//Lets spit out the 4 encoded bytes<br />
out = out + keyStr.charAt(enc1) + keyStr.charAt(enc2) + keyStr.charAt(enc3) +<br />
keyStr.charAt(enc4);</p>
<p>// OK, now clean out the variables used.<br />
chr1 = chr2 = chr3 = &quot;&quot;;<br />
enc1 = enc2 = enc3 = enc4 = &quot;&quot;;</p>
<p>} while (i &lt; inp.length); //And finish off the loop</p>
<p>//Now return the encoded values.<br />
return out;<br />
}</p>
<p>//Heres the decode function<br />
function decode64(inp)<br />
{<br />
var out = &quot;&quot;; //This is the output<br />
var chr1, chr2, chr3 = &quot;&quot;; //These are the 3 decoded bytes<br />
var enc1, enc2, enc3, enc4 = &quot;&quot;; //These are the 4 bytes to be decoded<br />
var i = 0; //Position counter</p>
<p>// remove all characters that are not A-Z, a-z, 0-9, +, /, or =<br />
var base64test = /[^A-Za-z0-9\+\/\=]/g;</p>
<p>if (base64test.exec(inp)) { //Do some error checking<br />
alert(&quot;There were invalid base64 characters in the input text.\n&quot; +<br />
&quot;Valid base64 characters are A-Z, a-z, 0-9, ?+?, ?/?, and ?=?\n&quot; +<br />
&quot;Expect errors in decoding.&quot;);<br />
}<br />
inp = inp.replace(/[^A-Za-z0-9\+\/\=]/g, &quot;&quot;);</p>
<p>do { //Here&#8217;s the decode loop.</p>
<p>//Grab 4 bytes of encoded content.<br />
enc1 = keyStr.indexOf(inp.charAt(i++));<br />
enc2 = keyStr.indexOf(inp.charAt(i++));<br />
enc3 = keyStr.indexOf(inp.charAt(i++));<br />
enc4 = keyStr.indexOf(inp.charAt(i++));</p>
<p>//Heres the decode part. There&#8217;s really only one way to do it.<br />
chr1 = (enc1 &lt;&lt; 2) | (enc2 &gt;&gt; 4);<br />
chr2 = ((enc2 &amp; 15) &lt;&lt; 4) | (enc3 &gt;&gt; 2);<br />
chr3 = ((enc3 &amp; 3) &lt;&lt; 6) | enc4;</p>
<p>//Start to output decoded content<br />
out = out + String.fromCharCode(chr1);</p>
<p>if (enc3 != 64) {<br />
out = out + String.fromCharCode(chr2);<br />
}<br />
if (enc4 != 64) {<br />
out = out + String.fromCharCode(chr3);<br />
}</p>
<p>//now clean out the variables used<br />
chr1 = chr2 = chr3 = &quot;&quot;;<br />
enc1 = enc2 = enc3 = enc4 = &quot;&quot;;</p>
<p>} while (i &lt; inp.length); //finish off the loop</p>
<p>//Now return the decoded values.<br />
return out;<br />
}</p>
<p>//&#8211;&gt;&lt;/script&gt;<br />
&lt;/head&gt;</p>
<p>&lt;body&gt;<br />
&lt;form name=&quot;Base64&quot;&gt;</p>
<p>Enter what you want encoded or decoded and push the Encode or Decode buttons&lt;br&gt;</p>
<p>&lt;textarea name=&quot;Test&quot; cols=&quot;40&quot; rows=&quot;6&quot;&gt;&lt;/textarea&gt;&lt;br&gt;</p>
<p>&lt;input type=&quot;button&quot; name=&quot;encode&quot; value=&quot;Encode&quot; onClick=&quot;document.Base64.Test.value=encode64(document.Base64.Test.value);&quot;&gt;<br />
&lt;input type=&quot;button&quot; name=&quot;decode&quot; value=&quot;Decode&quot; onClick=&quot;document.Base64.Test.value=decode64(document.Base64.Test.value);&quot;&gt;</p>
<p>&lt;/form&gt;</p>
<p>&lt;/body&gt;<br />
&lt;/html&gt;<br />
&nbsp;</p>
<p></font></p>
<p><a href="http://blog.quicksurf.com/">Home</a></p>
]]></content:encoded>
			<wfw:commentRss>http://quicksurf.com/?feed=rss2&#038;p=78</wfw:commentRss>
		<slash:comments>2</slash:comments>
		</item>
	</channel>
</rss>

