<?xml version="1.0" encoding="UTF-8"?>
<?xml-stylesheet type="text/xsl" media="screen" href="/~d/styles/rss2full.xsl"?><?xml-stylesheet type="text/css" media="screen" href="http://feeds.feedburner.com/~d/styles/itemcontent.css"?><rss xmlns:atom="http://www.w3.org/2005/Atom" xmlns:openSearch="http://a9.com/-/spec/opensearch/1.1/" xmlns:georss="http://www.georss.org/georss" xmlns:gd="http://schemas.google.com/g/2005" xmlns:thr="http://purl.org/syndication/thread/1.0" xmlns:feedburner="http://rssnamespace.org/feedburner/ext/1.0" version="2.0"><channel><atom:id>tag:blogger.com,1999:blog-3744739760335943672</atom:id><lastBuildDate>Fri, 17 Feb 2012 03:33:11 +0000</lastBuildDate><category>facebook</category><category>computer science</category><category>plans</category><category>math</category><category>resolutions</category><category>podcast</category><category>news</category><category>security</category><category>programming</category><category>aquarium</category><category>random</category><category>goals</category><category>privacy</category><category>musing</category><category>projects</category><category>complexity</category><category>wombats</category><category>HPR</category><category>high performance computing</category><category>goldfish</category><category>fishcam</category><category>twitter</category><category>coding</category><category>internet</category><category>video</category><category>Hacker Public Radio</category><category>code</category><category>social media</category><category>paranoia</category><category>musings</category><category>conferences</category><title>Squaring Circles</title><description>&lt;b&gt;A personal blog about security, programming, locks, and more&lt;/b&gt;
&lt;br&gt;
&lt;br&gt;
&lt;b&gt;&lt;a href="http://squaringcircles.blogspot.com/"&gt;Home&lt;/a&gt; | &lt;a href="http://squaringcircles.blogspot.com/p/projects.html"&gt;Projects&lt;/a&gt; | &lt;a href="http://squaringcircles.blogspot.com/p/code.html"&gt;Code&lt;/a&gt; | &lt;a href="http://squaringcircles.blogspot.com/p/about.html"&gt;About&lt;/a&gt; | &lt;a href="http://squaringcircles.blogspot.com/p/fishcam.html"&gt;My Aquarium&lt;/a&gt;&lt;/b&gt;</description><link>http://squaringcircles.blogspot.com/</link><managingEditor>noreply@blogger.com (sp0rus)</managingEditor><generator>Blogger</generator><openSearch:totalResults>35</openSearch:totalResults><openSearch:startIndex>1</openSearch:startIndex><openSearch:itemsPerPage>25</openSearch:itemsPerPage><atom10:link xmlns:atom10="http://www.w3.org/2005/Atom" rel="self" type="application/rss+xml" href="http://feeds.feedburner.com/SquaringCircles" /><feedburner:info uri="squaringcircles" /><atom10:link xmlns:atom10="http://www.w3.org/2005/Atom" rel="hub" href="http://pubsubhubbub.appspot.com/" /><item><guid isPermaLink="false">tag:blogger.com,1999:blog-3744739760335943672.post-5981271621720208574</guid><pubDate>Fri, 10 Feb 2012 15:25:00 +0000</pubDate><atom:updated>2012-02-10T09:25:15.165-06:00</atom:updated><title>New Video Series: Adventures in Lockpicking</title><description>I have been wanting to do something with my lockpicking knowledge for a while. &amp;nbsp;At first I thought, "How about I make a blog specifically about lockpicking?" &amp;nbsp;Then I realized that I don't want to do that right now. &amp;nbsp;I'm keeping the idea on the table, but I decided what I would rather do is create a video series.&lt;br /&gt;
&lt;div&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div&gt;
I'm calling the series "Adventures in Lockpicking," partly because it was the first thing that came to my mind, and because it didn't look like anyone was using the name. &amp;nbsp;This first episode is pretty rough, but it's a start. In this episode I briefly go over the insecurity of the common MasterLock No3.&lt;/div&gt;
&lt;div&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div align="center"&gt;
&lt;iframe allowfullscreen="" frameborder="0" height="315" src="http://www.youtube.com/embed/1OlVGUv3sns" width="560"&gt;&lt;/iframe&gt;
&lt;/div&gt;
&lt;div&gt;
&lt;br /&gt;
&lt;br /&gt;
If the embedded viewer isn't showing up for you (for instance, if you're on certain mobile devices), here's&amp;nbsp;&lt;a href="http://www.youtube.com/watch?v=1OlVGUv3sns"&gt;"Adventures in Lockpicking: Episode 1"&lt;/a&gt;&lt;br /&gt;
&lt;br /&gt;
Be sure to subscribe to &lt;a href="http://www.youtube.com/user/MatrimCauthon001"&gt;my YouTube channel&lt;/a&gt; to catch the next episodes as they come out, and also &lt;a href="http://feeds.feedburner.com/SquaringCircles"&gt;subscribe to this blog&lt;/a&gt; in your RSS reader for other updates.&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/3744739760335943672-5981271621720208574?l=squaringcircles.blogspot.com' alt='' /&gt;&lt;/div&gt;
&lt;p&gt;&lt;a href="http://feedads.g.doubleclick.net/~a/_dQddIqU97P5fUjXgvJOaSxLbqg/0/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/_dQddIqU97P5fUjXgvJOaSxLbqg/0/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;br/&gt;
&lt;a href="http://feedads.g.doubleclick.net/~a/_dQddIqU97P5fUjXgvJOaSxLbqg/1/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/_dQddIqU97P5fUjXgvJOaSxLbqg/1/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;/p&gt;&lt;div class="feedflare"&gt;
&lt;a href="http://feeds.feedburner.com/~ff/SquaringCircles?a=IZEFRi6mO88:_ANCrd1ayY8:yIl2AUoC8zA"&gt;&lt;img src="http://feeds.feedburner.com/~ff/SquaringCircles?d=yIl2AUoC8zA" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/SquaringCircles?a=IZEFRi6mO88:_ANCrd1ayY8:V_sGLiPBpWU"&gt;&lt;img src="http://feeds.feedburner.com/~ff/SquaringCircles?i=IZEFRi6mO88:_ANCrd1ayY8:V_sGLiPBpWU" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/SquaringCircles?a=IZEFRi6mO88:_ANCrd1ayY8:gIN9vFwOqvQ"&gt;&lt;img src="http://feeds.feedburner.com/~ff/SquaringCircles?i=IZEFRi6mO88:_ANCrd1ayY8:gIN9vFwOqvQ" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/SquaringCircles?a=IZEFRi6mO88:_ANCrd1ayY8:7Q72WNTAKBA"&gt;&lt;img src="http://feeds.feedburner.com/~ff/SquaringCircles?d=7Q72WNTAKBA" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/SquaringCircles?a=IZEFRi6mO88:_ANCrd1ayY8:qj6IDK7rITs"&gt;&lt;img src="http://feeds.feedburner.com/~ff/SquaringCircles?d=qj6IDK7rITs" border="0"&gt;&lt;/img&gt;&lt;/a&gt;
&lt;/div&gt;&lt;img src="http://feeds.feedburner.com/~r/SquaringCircles/~4/IZEFRi6mO88" height="1" width="1"/&gt;</description><link>http://feedproxy.google.com/~r/SquaringCircles/~3/IZEFRi6mO88/new-video-series-adventures-in.html</link><author>noreply@blogger.com (sp0rus)</author><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="http://img.youtube.com/vi/1OlVGUv3sns/default.jpg" height="72" width="72" /><thr:total>0</thr:total><feedburner:origLink>http://squaringcircles.blogspot.com/2012/02/new-video-series-adventures-in.html</feedburner:origLink></item><item><guid isPermaLink="false">tag:blogger.com,1999:blog-3744739760335943672.post-2665913818644166412</guid><pubDate>Thu, 02 Feb 2012 14:18:00 +0000</pubDate><atom:updated>2012-02-02T08:18:36.074-06:00</atom:updated><title>New Layout and Whatnot</title><description>If you've been here before, you have probably noticed the drastic change in the look of the site, without me having to mention it. If you haven't, I changed to a new theme and updated the sidebar with some new links and such.  Nothing too major (the template change just took a couple button clicks), but this blog was in desperate need of some updates, and I figured a new layout would help the whole blog feel refreshed.
&lt;p&gt;
These changes came about because one of my resolutions this year is to post at least once a month.  I've been wanting to change some things here for a while, and decided that this resolution would include finally getting around to those updates I've been wanting.
&lt;p&gt;
Why am I wanting to post more often?  I haven't done much writing over the past year, and I've always enjoyed writing.  Goals like this always help me in getting back into hobbies.
&lt;p&gt;
Next step: get around to updating those pages linked at the top of the blog...&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/3744739760335943672-2665913818644166412?l=squaringcircles.blogspot.com' alt='' /&gt;&lt;/div&gt;
&lt;p&gt;&lt;a href="http://feedads.g.doubleclick.net/~a/L3qt2O0-dDXGwkQ6afMMQQEN0vM/0/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/L3qt2O0-dDXGwkQ6afMMQQEN0vM/0/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;br/&gt;
&lt;a href="http://feedads.g.doubleclick.net/~a/L3qt2O0-dDXGwkQ6afMMQQEN0vM/1/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/L3qt2O0-dDXGwkQ6afMMQQEN0vM/1/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;/p&gt;&lt;div class="feedflare"&gt;
&lt;a href="http://feeds.feedburner.com/~ff/SquaringCircles?a=e2lzMEMj_sU:ChwX3nkXSt4:yIl2AUoC8zA"&gt;&lt;img src="http://feeds.feedburner.com/~ff/SquaringCircles?d=yIl2AUoC8zA" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/SquaringCircles?a=e2lzMEMj_sU:ChwX3nkXSt4:V_sGLiPBpWU"&gt;&lt;img src="http://feeds.feedburner.com/~ff/SquaringCircles?i=e2lzMEMj_sU:ChwX3nkXSt4:V_sGLiPBpWU" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/SquaringCircles?a=e2lzMEMj_sU:ChwX3nkXSt4:gIN9vFwOqvQ"&gt;&lt;img src="http://feeds.feedburner.com/~ff/SquaringCircles?i=e2lzMEMj_sU:ChwX3nkXSt4:gIN9vFwOqvQ" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/SquaringCircles?a=e2lzMEMj_sU:ChwX3nkXSt4:7Q72WNTAKBA"&gt;&lt;img src="http://feeds.feedburner.com/~ff/SquaringCircles?d=7Q72WNTAKBA" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/SquaringCircles?a=e2lzMEMj_sU:ChwX3nkXSt4:qj6IDK7rITs"&gt;&lt;img src="http://feeds.feedburner.com/~ff/SquaringCircles?d=qj6IDK7rITs" border="0"&gt;&lt;/img&gt;&lt;/a&gt;
&lt;/div&gt;&lt;img src="http://feeds.feedburner.com/~r/SquaringCircles/~4/e2lzMEMj_sU" height="1" width="1"/&gt;</description><link>http://feedproxy.google.com/~r/SquaringCircles/~3/e2lzMEMj_sU/new-layout-and-whatnot.html</link><author>noreply@blogger.com (sp0rus)</author><thr:total>0</thr:total><feedburner:origLink>http://squaringcircles.blogspot.com/2012/02/new-layout-and-whatnot.html</feedburner:origLink></item><item><guid isPermaLink="false">tag:blogger.com,1999:blog-3744739760335943672.post-3942644394020486767</guid><pubDate>Fri, 27 Jan 2012 05:08:00 +0000</pubDate><atom:updated>2012-01-26T23:08:21.091-06:00</atom:updated><title>Freelance Work</title><description>I've never really been motivated to do any freelance technical work.  Granted, it has always been in the back of my mind that I could earn a little extra money by setting up or fixing people's computers, but the liability issues just didn't seem worth it.  I didn't want other people blaming me for things that weren't my fault.  It's safer at work, where they provide some protection.
&lt;p&gt;
Today, this changed.  Today marks the first time I've been paid to provide tech support outside of work.  
&lt;p&gt;
You know what, it went really well.  I might have to start doing this more often.
&lt;p&gt;
Sometimes you just have to bite the bullet and give things a try.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/3744739760335943672-3942644394020486767?l=squaringcircles.blogspot.com' alt='' /&gt;&lt;/div&gt;
&lt;p&gt;&lt;a href="http://feedads.g.doubleclick.net/~a/EekY58ZtXuGdGPB50Xi_rY1BB4k/0/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/EekY58ZtXuGdGPB50Xi_rY1BB4k/0/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;br/&gt;
&lt;a href="http://feedads.g.doubleclick.net/~a/EekY58ZtXuGdGPB50Xi_rY1BB4k/1/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/EekY58ZtXuGdGPB50Xi_rY1BB4k/1/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;/p&gt;&lt;div class="feedflare"&gt;
&lt;a href="http://feeds.feedburner.com/~ff/SquaringCircles?a=j3W3RzTlJ8k:Dp-jWD7XD60:yIl2AUoC8zA"&gt;&lt;img src="http://feeds.feedburner.com/~ff/SquaringCircles?d=yIl2AUoC8zA" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/SquaringCircles?a=j3W3RzTlJ8k:Dp-jWD7XD60:V_sGLiPBpWU"&gt;&lt;img src="http://feeds.feedburner.com/~ff/SquaringCircles?i=j3W3RzTlJ8k:Dp-jWD7XD60:V_sGLiPBpWU" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/SquaringCircles?a=j3W3RzTlJ8k:Dp-jWD7XD60:gIN9vFwOqvQ"&gt;&lt;img src="http://feeds.feedburner.com/~ff/SquaringCircles?i=j3W3RzTlJ8k:Dp-jWD7XD60:gIN9vFwOqvQ" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/SquaringCircles?a=j3W3RzTlJ8k:Dp-jWD7XD60:7Q72WNTAKBA"&gt;&lt;img src="http://feeds.feedburner.com/~ff/SquaringCircles?d=7Q72WNTAKBA" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/SquaringCircles?a=j3W3RzTlJ8k:Dp-jWD7XD60:qj6IDK7rITs"&gt;&lt;img src="http://feeds.feedburner.com/~ff/SquaringCircles?d=qj6IDK7rITs" border="0"&gt;&lt;/img&gt;&lt;/a&gt;
&lt;/div&gt;&lt;img src="http://feeds.feedburner.com/~r/SquaringCircles/~4/j3W3RzTlJ8k" height="1" width="1"/&gt;</description><link>http://feedproxy.google.com/~r/SquaringCircles/~3/j3W3RzTlJ8k/freelance-work.html</link><author>noreply@blogger.com (sp0rus)</author><thr:total>0</thr:total><feedburner:origLink>http://squaringcircles.blogspot.com/2012/01/freelance-work.html</feedburner:origLink></item><item><guid isPermaLink="false">tag:blogger.com,1999:blog-3744739760335943672.post-2000727592648351140</guid><pubDate>Mon, 09 Jan 2012 02:24:00 +0000</pubDate><atom:updated>2012-01-08T20:24:04.101-06:00</atom:updated><title>2011 In Review</title><description>It's been over a year since I last posted something on this blog, and I've decided it is time to bring it back.  Starting that off, I thought I would review what I've been up to the past year, and what this coming year has in store.
&lt;p&gt;
I went to four conferences this year.  First, I went to &lt;a href="http://www.outerz0ne.org"&gt;Outerz0ne&lt;/a&gt; with my friend James Church.  We applied to speak, but our talk wasn't accepted.  The talk was intended to be on a project we had started over a year ago,  called "Project Jamie."  You can find the code for Project Jamie on &lt;a href="https://github.com/sp0rus/Project-Jamie"&gt;my github&lt;/a&gt;.
&lt;p&gt;
We brought five computers to Atlanta with us to set up a demonstration, and we ended up presenting to small groups in our hotel room.  This worked out great, as everyone gave us some much needed feedback.  Big thanks to &lt;a href="https://256.makerslocal.org/"&gt;Maker's Local 256&lt;/a&gt; for all the help.
&lt;p&gt;
Right after Outerz0ne (really, just a week later), we headed north to Indianapolis for &lt;a href="http://www.indianalinux.org"&gt;Indiana Linux Fest&lt;/a&gt;.  This time we were on the schedule to speak, and we decided to leave the equipment behind instead of lugging multiple computers all the way to the conference.  I had a blast at ILF, and it was the perfect experience for my first time presenting at a tech conference.  It was great seeing some of my &lt;a href="http://www.nomicon.info"&gt;Infonomicon&lt;/a&gt; buddies again, and meeting some new ones. We even made Church a member while we were there.
&lt;p&gt;
In the fall I went to the first ever &lt;a href="http://www.derbycon.com/"&gt;Derbycon&lt;/a&gt;.  Not only did I attend the conference, but I helped my buddy (and fellow Infonomicon member), dosman, run the lockpick village.  I had never picked a lock before Derbycon, but after a weekend of picking locks and learning as much as I could about the hobby, I was hooked.  Derbycon was probably my favorite conference experience yet, and I've been looking forward to this year's conference ever since the last one ended.
&lt;p&gt;
After Derbycon, I went to Phreaknic in Nashville.  Phreaknic was my first conference to ever go to, and it is always a blast going back.  So many people that I don't see the rest of the year are there, and there are always interesting things that I've never seen before popping up.  This year, someone had a homemade nuclear fusion reactor at the conference.  Seeing projects like that always get the creative juices flowing and inspire me to try to start new projects.
&lt;p&gt;
Conferences weren't the only things I did this year.  I also started working at a new job, finally something tech related.  I'm working as a helpdesk consultant, and for the most part, I've enjoyed it.  I picked up new hobbies, like the aforementioned lockpicking, and I've enjoyed learning as much about the hobby as posssible.
&lt;p&gt;
I was also made the vice president of the Ole Miss Gun Safety Club, as well as being active in the ACM chapter on campus.  In all, 2011 was a great year, and I'm looking forward to what 2012 brings (besides the end of the world as the Mayans know it).&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/3744739760335943672-2000727592648351140?l=squaringcircles.blogspot.com' alt='' /&gt;&lt;/div&gt;
&lt;p&gt;&lt;a href="http://feedads.g.doubleclick.net/~a/zwL9hivL1U7ZEC3eHzmpXY9tAUA/0/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/zwL9hivL1U7ZEC3eHzmpXY9tAUA/0/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;br/&gt;
&lt;a href="http://feedads.g.doubleclick.net/~a/zwL9hivL1U7ZEC3eHzmpXY9tAUA/1/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/zwL9hivL1U7ZEC3eHzmpXY9tAUA/1/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;/p&gt;&lt;div class="feedflare"&gt;
&lt;a href="http://feeds.feedburner.com/~ff/SquaringCircles?a=bYQsLIT96ao:aYhtP-q3hNg:yIl2AUoC8zA"&gt;&lt;img src="http://feeds.feedburner.com/~ff/SquaringCircles?d=yIl2AUoC8zA" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/SquaringCircles?a=bYQsLIT96ao:aYhtP-q3hNg:V_sGLiPBpWU"&gt;&lt;img src="http://feeds.feedburner.com/~ff/SquaringCircles?i=bYQsLIT96ao:aYhtP-q3hNg:V_sGLiPBpWU" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/SquaringCircles?a=bYQsLIT96ao:aYhtP-q3hNg:gIN9vFwOqvQ"&gt;&lt;img src="http://feeds.feedburner.com/~ff/SquaringCircles?i=bYQsLIT96ao:aYhtP-q3hNg:gIN9vFwOqvQ" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/SquaringCircles?a=bYQsLIT96ao:aYhtP-q3hNg:7Q72WNTAKBA"&gt;&lt;img src="http://feeds.feedburner.com/~ff/SquaringCircles?d=7Q72WNTAKBA" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/SquaringCircles?a=bYQsLIT96ao:aYhtP-q3hNg:qj6IDK7rITs"&gt;&lt;img src="http://feeds.feedburner.com/~ff/SquaringCircles?d=qj6IDK7rITs" border="0"&gt;&lt;/img&gt;&lt;/a&gt;
&lt;/div&gt;&lt;img src="http://feeds.feedburner.com/~r/SquaringCircles/~4/bYQsLIT96ao" height="1" width="1"/&gt;</description><link>http://feedproxy.google.com/~r/SquaringCircles/~3/bYQsLIT96ao/2011-in-review.html</link><author>noreply@blogger.com (sp0rus)</author><thr:total>0</thr:total><feedburner:origLink>http://squaringcircles.blogspot.com/2012/01/2011-in-review.html</feedburner:origLink></item><item><guid isPermaLink="false">tag:blogger.com,1999:blog-3744739760335943672.post-6465205541940421605</guid><pubDate>Fri, 19 Nov 2010 00:17:00 +0000</pubDate><atom:updated>2011-05-09T15:13:54.197-05:00</atom:updated><category domain="http://www.blogger.com/atom/ns#">Hacker Public Radio</category><category domain="http://www.blogger.com/atom/ns#">podcast</category><category domain="http://www.blogger.com/atom/ns#">HPR</category><title>Podcasting</title><description>&lt;p class"instapaper_body"&gt;I've begun podcasting! &amp;nbsp;You can find my shows over at &lt;a href="http://hackerpublicradio.org/"&gt;Hacker Public Radio&lt;/a&gt;, or, more specifically, you can find them at &lt;a href="http://hackerpublicradio.org/correspondents.php?hostid=133"&gt;my correspondent profile page&lt;/a&gt;.&lt;br /&gt;
&lt;br /&gt;
&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://3.bp.blogspot.com/_2KcR8AcMZvI/TOXBBBB29gI/AAAAAAAAACE/2EXuGYLUuo0/s1600/hpr_feed_small.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" src="http://3.bp.blogspot.com/_2KcR8AcMZvI/TOXBBBB29gI/AAAAAAAAACE/2EXuGYLUuo0/s1600/hpr_feed_small.png" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;br /&gt;
What is Hacker Public Radio?&lt;br /&gt;
&lt;br /&gt;
&lt;blockquote&gt;Hacker Public Radio (HPR) is an Internet Radio show (podcast) that releases shows every weekday Monday through Friday. HPR has a long lineage going back to Radio FreeK America, Binary Revolution Radio &amp;amp; Infonomicon, and it is a direct continuation of Twatech radio. Please listen to StankDawg's "Introduction to HPR" for more information.&lt;br /&gt;
&lt;br /&gt;
What differentiates HPR from other podcasts is that the shows are produced by the community - fellow listeners like you!. There is no restrictions on how long the show can be, nor on the topic you can cover as long as they "are of interest to hackers".&lt;/blockquote&gt;&lt;div style="text-align: right;"&gt;- from the &lt;a href="http://hackerpublicradio.org/about.php"&gt;Hacker Public Radio "About" Page&lt;/a&gt;&lt;/div&gt;&lt;br /&gt;
&lt;div style="text-align: left;"&gt;&lt;br /&gt;
&lt;p&gt;Also, please note that Hacker Public Radio needs more contributors! &amp;nbsp;If you have anything (anything!) that you'd like to record a show on that you think the hacking community would be interested in, please consider recording a show, as we are desperately in need of more shows. &amp;nbsp;It's a great way to get your feet wet with podcasting, and benefits a great project. &amp;nbsp;You can find more information on the &lt;a href="http://hackerpublicradio.org/contribute.php"&gt;"Contribute" page&lt;/a&gt;.&lt;/p&gt;&lt;br /&gt;
Let me know if you do contribute something!&lt;br /&gt;
&lt;/div&gt;&lt;/p&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/3744739760335943672-6465205541940421605?l=squaringcircles.blogspot.com' alt='' /&gt;&lt;/div&gt;
&lt;p&gt;&lt;a href="http://feedads.g.doubleclick.net/~a/9TQGTiIrmSJu7gqtBdJXS2AM9bo/0/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/9TQGTiIrmSJu7gqtBdJXS2AM9bo/0/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;br/&gt;
&lt;a href="http://feedads.g.doubleclick.net/~a/9TQGTiIrmSJu7gqtBdJXS2AM9bo/1/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/9TQGTiIrmSJu7gqtBdJXS2AM9bo/1/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;/p&gt;&lt;div class="feedflare"&gt;
&lt;a href="http://feeds.feedburner.com/~ff/SquaringCircles?a=MymZ99bUXzE:hPRp50PgyEM:yIl2AUoC8zA"&gt;&lt;img src="http://feeds.feedburner.com/~ff/SquaringCircles?d=yIl2AUoC8zA" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/SquaringCircles?a=MymZ99bUXzE:hPRp50PgyEM:V_sGLiPBpWU"&gt;&lt;img src="http://feeds.feedburner.com/~ff/SquaringCircles?i=MymZ99bUXzE:hPRp50PgyEM:V_sGLiPBpWU" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/SquaringCircles?a=MymZ99bUXzE:hPRp50PgyEM:gIN9vFwOqvQ"&gt;&lt;img src="http://feeds.feedburner.com/~ff/SquaringCircles?i=MymZ99bUXzE:hPRp50PgyEM:gIN9vFwOqvQ" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/SquaringCircles?a=MymZ99bUXzE:hPRp50PgyEM:7Q72WNTAKBA"&gt;&lt;img src="http://feeds.feedburner.com/~ff/SquaringCircles?d=7Q72WNTAKBA" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/SquaringCircles?a=MymZ99bUXzE:hPRp50PgyEM:qj6IDK7rITs"&gt;&lt;img src="http://feeds.feedburner.com/~ff/SquaringCircles?d=qj6IDK7rITs" border="0"&gt;&lt;/img&gt;&lt;/a&gt;
&lt;/div&gt;&lt;img src="http://feeds.feedburner.com/~r/SquaringCircles/~4/MymZ99bUXzE" height="1" width="1"/&gt;</description><link>http://feedproxy.google.com/~r/SquaringCircles/~3/MymZ99bUXzE/podcasting.html</link><author>noreply@blogger.com (sp0rus)</author><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="http://3.bp.blogspot.com/_2KcR8AcMZvI/TOXBBBB29gI/AAAAAAAAACE/2EXuGYLUuo0/s72-c/hpr_feed_small.png" height="72" width="72" /><thr:total>0</thr:total><feedburner:origLink>http://squaringcircles.blogspot.com/2010/11/podcasting.html</feedburner:origLink></item><item><guid isPermaLink="false">tag:blogger.com,1999:blog-3744739760335943672.post-6249542206749935802</guid><pubDate>Thu, 18 Nov 2010 23:51:00 +0000</pubDate><atom:updated>2010-11-18T17:51:40.073-06:00</atom:updated><category domain="http://www.blogger.com/atom/ns#">goldfish</category><category domain="http://www.blogger.com/atom/ns#">fishcam</category><category domain="http://www.blogger.com/atom/ns#">aquarium</category><title>Aquarium/Fishcam Update</title><description>I realize the &lt;a href="http://squaringcircles.blogspot.com/p/fishcam.html"&gt;fishcam&lt;/a&gt; has been down for quite some time. &amp;nbsp;I apologize for this, and have some explaining to do.&lt;br /&gt;
&lt;br /&gt;
About a month ago I was getting read to turn the fishcam back on, but Albert started acting sick, and I didn't want video of a suffering fish broadcasting to the internet all day. &amp;nbsp;I figured I'd turn the cam back on after he got better.&lt;br /&gt;
&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://farm5.static.flickr.com/4150/4964222769_b5c5513569.jpg" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" height="213" src="http://farm5.static.flickr.com/4150/4964222769_b5c5513569.jpg" width="320" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;br /&gt;
He appeared to be suffering from mouth fungus, but I'm not entirely sure, as he never had more than one white tuft at a time. &amp;nbsp;His biggest symptom was lethargy, and lack of appetite. &amp;nbsp;During this time, Matcha seemed to be having no problems.&lt;br /&gt;
&lt;br /&gt;
Albert started to get better, until one night the symptoms came back. &amp;nbsp;On the morning of the 12th, Albert died. &amp;nbsp;I cleaned the tank, medicated once more, to try to keep Matcha from getting sick, and hoped for the best.&lt;br /&gt;
&lt;br /&gt;
&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://farm5.static.flickr.com/4106/4964219847_bcdc5f3b78.jpg" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" height="213" src="http://farm5.static.flickr.com/4106/4964219847_bcdc5f3b78.jpg" width="320" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;br /&gt;
&lt;/div&gt;&lt;div class="separator" style="clear: both; text-align: left;"&gt;After this, Matcha seemed to lose his appetite as well, and quickly got sick, with symptoms much worse than Albert's, and a faster onset. &amp;nbsp;Yesterday he too died.&lt;/div&gt;&lt;div class="separator" style="clear: both; text-align: left;"&gt;&lt;br /&gt;
&lt;/div&gt;&lt;div class="separator" style="clear: both; text-align: left;"&gt;Looking back on it, I know there were some things I should have done a little better, like medicating earlier, but there's no use in that sort of thinking. &amp;nbsp;For now, I have no fish. This will be the case until the spring, when I will try again, hoping for the best.&lt;/div&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://farm5.static.flickr.com/4151/4964218549_b3bbec4d66.jpg" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" height="213" src="http://farm5.static.flickr.com/4151/4964218549_b3bbec4d66.jpg" width="320" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;div class="separator" style="clear: both; text-align: left;"&gt;&lt;br /&gt;
&lt;/div&gt;&lt;div class="separator" style="clear: both; text-align: left;"&gt;Until then, needless to say, the fishcam will continue to be down. &amp;nbsp;An announcement will be made when it is back up.&amp;nbsp;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/3744739760335943672-6249542206749935802?l=squaringcircles.blogspot.com' alt='' /&gt;&lt;/div&gt;
&lt;p&gt;&lt;a href="http://feedads.g.doubleclick.net/~a/QwAo-X2D6d8LTyZQXleTkMdcgmI/0/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/QwAo-X2D6d8LTyZQXleTkMdcgmI/0/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;br/&gt;
&lt;a href="http://feedads.g.doubleclick.net/~a/QwAo-X2D6d8LTyZQXleTkMdcgmI/1/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/QwAo-X2D6d8LTyZQXleTkMdcgmI/1/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;/p&gt;&lt;div class="feedflare"&gt;
&lt;a href="http://feeds.feedburner.com/~ff/SquaringCircles?a=9bCw8YdL308:0mY4vxPg1e0:yIl2AUoC8zA"&gt;&lt;img src="http://feeds.feedburner.com/~ff/SquaringCircles?d=yIl2AUoC8zA" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/SquaringCircles?a=9bCw8YdL308:0mY4vxPg1e0:V_sGLiPBpWU"&gt;&lt;img src="http://feeds.feedburner.com/~ff/SquaringCircles?i=9bCw8YdL308:0mY4vxPg1e0:V_sGLiPBpWU" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/SquaringCircles?a=9bCw8YdL308:0mY4vxPg1e0:gIN9vFwOqvQ"&gt;&lt;img src="http://feeds.feedburner.com/~ff/SquaringCircles?i=9bCw8YdL308:0mY4vxPg1e0:gIN9vFwOqvQ" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/SquaringCircles?a=9bCw8YdL308:0mY4vxPg1e0:7Q72WNTAKBA"&gt;&lt;img src="http://feeds.feedburner.com/~ff/SquaringCircles?d=7Q72WNTAKBA" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/SquaringCircles?a=9bCw8YdL308:0mY4vxPg1e0:qj6IDK7rITs"&gt;&lt;img src="http://feeds.feedburner.com/~ff/SquaringCircles?d=qj6IDK7rITs" border="0"&gt;&lt;/img&gt;&lt;/a&gt;
&lt;/div&gt;&lt;img src="http://feeds.feedburner.com/~r/SquaringCircles/~4/9bCw8YdL308" height="1" width="1"/&gt;</description><link>http://feedproxy.google.com/~r/SquaringCircles/~3/9bCw8YdL308/aquariumfishcam-update.html</link><author>noreply@blogger.com (sp0rus)</author><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="http://farm5.static.flickr.com/4150/4964222769_b5c5513569_t.jpg" height="72" width="72" /><thr:total>0</thr:total><feedburner:origLink>http://squaringcircles.blogspot.com/2010/11/aquariumfishcam-update.html</feedburner:origLink></item><item><guid isPermaLink="false">tag:blogger.com,1999:blog-3744739760335943672.post-6074943919205790502</guid><pubDate>Wed, 27 Oct 2010 02:28:00 +0000</pubDate><atom:updated>2010-10-26T21:28:48.256-05:00</atom:updated><category domain="http://www.blogger.com/atom/ns#">news</category><title>Hackers for Charity</title><description>After seeing &lt;a href="http://www.hackersforcharity.org/long-journey/worst-day/"&gt;&lt;span class="Apple-style-span" style="color: black;"&gt;the latest post on the Hacker's for Charity site&lt;/span&gt;&lt;/a&gt;, I decided I should write a quick post for my readers that don't know about this awesome organization so they too could lend their thoughts and prayers to Johnny Long and his family as they're currently going through some very rough times, both as a family and as an organization.&lt;br /&gt;
&lt;br /&gt;
&lt;a href="http://www.hackersforcharity.org/"&gt;From the site:&lt;/a&gt;&lt;br /&gt;
&lt;br /&gt;
&lt;blockquote&gt;What is HFC?&lt;br /&gt;
&lt;div&gt;&lt;span class="UIStory_Message"&gt;&lt;span class="text_exposed_show" style="display: inline;"&gt;&lt;br /&gt;
Picking on charities is just plain rude. Thankfully, that’'s not what we’'re about. We'’re about proving that hackers have amazing skills that can transform charitable organizations. We'’re about stepping into the gap to feed and educate the world’'s most vulnerable citizens. We are virtual, geographically diverse and different. We are Hackers for Charity.&lt;br /&gt;
So what do we do?&lt;br /&gt;
&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;
&lt;ul&gt;&lt;li&gt;&lt;span class="UIStory_Message"&gt;&lt;span class="text_exposed_show" style="display: inline;"&gt;We feed children through our &amp;nbsp;"food for work" program.&lt;/span&gt;&lt;/span&gt;&lt;/li&gt;
&lt;span class="UIStory_Message"&gt;&lt;span class="text_exposed_show" style="display: inline;"&gt;
&lt;li&gt;We build computer labs to help students learn skills and land jobs that are key to disrupting poverty's vicious cycle.&amp;nbsp;&lt;/li&gt;
&lt;li&gt;We provide technical assistance to charities that can not afford IT services.&lt;/li&gt;
&lt;li&gt;We provide job experience and references to our volunteers.&lt;/li&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/ul&gt;&lt;span class="UIStory_Message"&gt;&lt;span class="text_exposed_show" style="display: inline;"&gt;Our largest project is headed by Johnny Long in East Africa. In June 2009, he and his family relocated to Uganda to focus on HFC full-time. Read more about their journey here or fund their volunteer work here.&amp;nbsp;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/blockquote&gt;&lt;br /&gt;
Any help that could be sent their way would be much appreciated by all involved in the project.  It really is a wonderful thing they're doing, and they have great t-shirts as well.&lt;br /&gt;
&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://www.hackersforcharity.org/store/" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" src="http://hackersforcharity.org/wp-content/uploads/2009/04/mockup-front-235x300.jpg" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/3744739760335943672-6074943919205790502?l=squaringcircles.blogspot.com' alt='' /&gt;&lt;/div&gt;
&lt;p&gt;&lt;a href="http://feedads.g.doubleclick.net/~a/Kc0dNwaPE2JVcdXmyF_HcVlGbZI/0/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/Kc0dNwaPE2JVcdXmyF_HcVlGbZI/0/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;br/&gt;
&lt;a href="http://feedads.g.doubleclick.net/~a/Kc0dNwaPE2JVcdXmyF_HcVlGbZI/1/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/Kc0dNwaPE2JVcdXmyF_HcVlGbZI/1/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;/p&gt;&lt;div class="feedflare"&gt;
&lt;a href="http://feeds.feedburner.com/~ff/SquaringCircles?a=egLDZ0K1HEk:lpUfQLjsgCk:yIl2AUoC8zA"&gt;&lt;img src="http://feeds.feedburner.com/~ff/SquaringCircles?d=yIl2AUoC8zA" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/SquaringCircles?a=egLDZ0K1HEk:lpUfQLjsgCk:V_sGLiPBpWU"&gt;&lt;img src="http://feeds.feedburner.com/~ff/SquaringCircles?i=egLDZ0K1HEk:lpUfQLjsgCk:V_sGLiPBpWU" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/SquaringCircles?a=egLDZ0K1HEk:lpUfQLjsgCk:gIN9vFwOqvQ"&gt;&lt;img src="http://feeds.feedburner.com/~ff/SquaringCircles?i=egLDZ0K1HEk:lpUfQLjsgCk:gIN9vFwOqvQ" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/SquaringCircles?a=egLDZ0K1HEk:lpUfQLjsgCk:7Q72WNTAKBA"&gt;&lt;img src="http://feeds.feedburner.com/~ff/SquaringCircles?d=7Q72WNTAKBA" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/SquaringCircles?a=egLDZ0K1HEk:lpUfQLjsgCk:qj6IDK7rITs"&gt;&lt;img src="http://feeds.feedburner.com/~ff/SquaringCircles?d=qj6IDK7rITs" border="0"&gt;&lt;/img&gt;&lt;/a&gt;
&lt;/div&gt;&lt;img src="http://feeds.feedburner.com/~r/SquaringCircles/~4/egLDZ0K1HEk" height="1" width="1"/&gt;</description><link>http://feedproxy.google.com/~r/SquaringCircles/~3/egLDZ0K1HEk/hackers-for-charity.html</link><author>noreply@blogger.com (sp0rus)</author><thr:total>0</thr:total><feedburner:origLink>http://squaringcircles.blogspot.com/2010/10/hackers-for-charity.html</feedburner:origLink></item><item><guid isPermaLink="false">tag:blogger.com,1999:blog-3744739760335943672.post-711332662000539530</guid><pubDate>Wed, 13 Oct 2010 19:21:00 +0000</pubDate><atom:updated>2010-10-13T14:21:04.296-05:00</atom:updated><category domain="http://www.blogger.com/atom/ns#">news</category><category domain="http://www.blogger.com/atom/ns#">conferences</category><title>Phreaknic 14</title><description>I'll be spending this weekend in Nashville at Phreaknic 14.  I went to Phreaknic last year, and loved the experience.  That was not only my first time at Phreaknic, but my first time at a hacker con.&lt;br /&gt;
&lt;br /&gt;
Phreaknic is a "conference for the curious mind" as this year's flyer says.  The conference features speakers from all over who talk on everything from roasting coffee beans to building a home nuclear reactor to penetration testing and many other interesting things.&lt;br /&gt;
&lt;br /&gt;
If anyone is going to be in the Nashville area this weekend, you should stop by and check out the conference.&lt;br /&gt;
&lt;br /&gt;
From the website:&lt;br /&gt;
&lt;blockquote&gt;PhreakNIC is an annual convention held in Nashville, TN. Originally started as a "hacker convention," it has since grown to include all things of interest to the technology minded individual, such as sci-fi/fantasy, gaming, anime and other areas of tech culture. PhreakNIC is organized by the&amp;nbsp;&lt;a href="http://www.nashville2600.org/" style="outline-color: initial; outline-style: none; outline-width: initial;"&gt;&lt;span class="Apple-style-span" style="color: black;"&gt;Nashville 2600 Organization&lt;/span&gt;&lt;/a&gt;&amp;nbsp;and the&amp;nbsp;&lt;a href="http://nlug.org/" style="outline-color: initial; outline-style: none; outline-width: initial;"&gt;&lt;span class="Apple-style-span" style="color: black;"&gt;Nashville Linux Users Group&lt;/span&gt;&lt;/a&gt;. There are technical presentations, cultural exhibits and panels, as well as plenty of socializing.&amp;nbsp;&lt;/blockquote&gt;&lt;br /&gt;
You can find out more about Phreaknic at the &lt;a href="http://www.phreaknic.info/pn14/"&gt;conference website&lt;/a&gt;.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/3744739760335943672-711332662000539530?l=squaringcircles.blogspot.com' alt='' /&gt;&lt;/div&gt;
&lt;p&gt;&lt;a href="http://feedads.g.doubleclick.net/~a/GTJhSQk9s8Og-lovVtc5sW0EXC4/0/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/GTJhSQk9s8Og-lovVtc5sW0EXC4/0/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;br/&gt;
&lt;a href="http://feedads.g.doubleclick.net/~a/GTJhSQk9s8Og-lovVtc5sW0EXC4/1/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/GTJhSQk9s8Og-lovVtc5sW0EXC4/1/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;/p&gt;&lt;div class="feedflare"&gt;
&lt;a href="http://feeds.feedburner.com/~ff/SquaringCircles?a=PWCdy5qFfAk:DqlOLJLDl1c:yIl2AUoC8zA"&gt;&lt;img src="http://feeds.feedburner.com/~ff/SquaringCircles?d=yIl2AUoC8zA" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/SquaringCircles?a=PWCdy5qFfAk:DqlOLJLDl1c:V_sGLiPBpWU"&gt;&lt;img src="http://feeds.feedburner.com/~ff/SquaringCircles?i=PWCdy5qFfAk:DqlOLJLDl1c:V_sGLiPBpWU" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/SquaringCircles?a=PWCdy5qFfAk:DqlOLJLDl1c:gIN9vFwOqvQ"&gt;&lt;img src="http://feeds.feedburner.com/~ff/SquaringCircles?i=PWCdy5qFfAk:DqlOLJLDl1c:gIN9vFwOqvQ" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/SquaringCircles?a=PWCdy5qFfAk:DqlOLJLDl1c:7Q72WNTAKBA"&gt;&lt;img src="http://feeds.feedburner.com/~ff/SquaringCircles?d=7Q72WNTAKBA" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/SquaringCircles?a=PWCdy5qFfAk:DqlOLJLDl1c:qj6IDK7rITs"&gt;&lt;img src="http://feeds.feedburner.com/~ff/SquaringCircles?d=qj6IDK7rITs" border="0"&gt;&lt;/img&gt;&lt;/a&gt;
&lt;/div&gt;&lt;img src="http://feeds.feedburner.com/~r/SquaringCircles/~4/PWCdy5qFfAk" height="1" width="1"/&gt;</description><link>http://feedproxy.google.com/~r/SquaringCircles/~3/PWCdy5qFfAk/phreaknic-14.html</link><author>noreply@blogger.com (sp0rus)</author><thr:total>0</thr:total><feedburner:origLink>http://squaringcircles.blogspot.com/2010/10/phreaknic-14.html</feedburner:origLink></item><item><guid isPermaLink="false">tag:blogger.com,1999:blog-3744739760335943672.post-3362826517514956341</guid><pubDate>Fri, 01 Oct 2010 03:51:00 +0000</pubDate><atom:updated>2010-09-30T22:51:25.128-05:00</atom:updated><category domain="http://www.blogger.com/atom/ns#">news</category><category domain="http://www.blogger.com/atom/ns#">programming</category><category domain="http://www.blogger.com/atom/ns#">coding</category><title>Programming Competition</title><description>Monday night I participated in my first ever programming competition. &amp;nbsp;It was an interesting experience which I thoroughly enjoyed. &amp;nbsp;The competition was held in the Computer Science department, and was open to all students of the University.&lt;br /&gt;
&lt;br /&gt;
The goal of the competition was to find people to go on to the regional competition, which will be either at Murray State University or at Louisiana State University (really want to say something here, but I'll refrain...). &amp;nbsp;The reason for the two locations is that it would depend on what date the team decides to go.&lt;br /&gt;
&lt;br /&gt;
In the competition we were given four problems to solve, and we were told we could access the official documentation for Java, C, and C++ (the three permitted languages), as well as make use of any printed materials we brought with us. &amp;nbsp;Out of the four problems, I was only able to solve one during the competition. &amp;nbsp;Towards the end I sort of stopped trying, since I knew I wouldn't get the others done in time, so I had a little fun with them and tried different things out.&lt;br /&gt;
&lt;br /&gt;
Out of the eight people who competed, I came in sixth, which was fourth out of the people who are eligible to go on to regional. &amp;nbsp;Since a team consists of three people, this leaves me as the first alternate, and I've been told by the coach (who is one of my teachers and a friend), &lt;a href="http://thejameschurch.com/"&gt;James Church&lt;/a&gt;, that I'd go with the team to the competition whether or not I competed myself. &amp;nbsp;I'm all for this.&lt;br /&gt;
&lt;br /&gt;
Considering this was my first time doing a competition, I'm happy with my one correct answer, and with just not coming in last. &amp;nbsp;One thing I learned during the course of the competition, and while looking at Church's solutions afterwards, is that I need to learn a lot more about the classes Java provides for me, as there were a few I didn't know about that would have allowed me to solve another problem or two very easily compared to how I was trying to do things.&lt;br /&gt;
&lt;br /&gt;
This competition is another event that has inspired me to learn more about programming and to improve what I know by practicing. &amp;nbsp;In my free time,&amp;nbsp;I plan on attempting more problem solving exercises like those given in the competition. &lt;br /&gt;
&lt;br /&gt;
&lt;a href="http://www.codinghorror.com/blog/"&gt;Jeff Atwood&lt;/a&gt; (&lt;a href="http://twitter.com/codinghorror"&gt;@CodingHorror&lt;/a&gt;&amp;nbsp;on twitter) retweeted something this morning that was right along these lines. &amp;nbsp;The post was from &lt;a href="http://twitter.com/emmerinc"&gt;@enmerinc&lt;/a&gt;&amp;nbsp;and said "How to become a better developer: 1) Go to #StackOverflow 2) Pick a question outside of your comfort zone 3) Open your IDE and solve it"&lt;br /&gt;
&lt;br /&gt;
I really liked that idea, and plan on doing that from here on out. &amp;nbsp;I don't know that I'll even average one problem a week, but even so, I'll learn something.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/3744739760335943672-3362826517514956341?l=squaringcircles.blogspot.com' alt='' /&gt;&lt;/div&gt;
&lt;p&gt;&lt;a href="http://feedads.g.doubleclick.net/~a/9U0AgcUqB8Uh_5GFHGyS0yhzvKI/0/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/9U0AgcUqB8Uh_5GFHGyS0yhzvKI/0/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;br/&gt;
&lt;a href="http://feedads.g.doubleclick.net/~a/9U0AgcUqB8Uh_5GFHGyS0yhzvKI/1/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/9U0AgcUqB8Uh_5GFHGyS0yhzvKI/1/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;/p&gt;&lt;div class="feedflare"&gt;
&lt;a href="http://feeds.feedburner.com/~ff/SquaringCircles?a=c1FGJX4L22k:8et7CFGGB2g:yIl2AUoC8zA"&gt;&lt;img src="http://feeds.feedburner.com/~ff/SquaringCircles?d=yIl2AUoC8zA" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/SquaringCircles?a=c1FGJX4L22k:8et7CFGGB2g:V_sGLiPBpWU"&gt;&lt;img src="http://feeds.feedburner.com/~ff/SquaringCircles?i=c1FGJX4L22k:8et7CFGGB2g:V_sGLiPBpWU" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/SquaringCircles?a=c1FGJX4L22k:8et7CFGGB2g:gIN9vFwOqvQ"&gt;&lt;img src="http://feeds.feedburner.com/~ff/SquaringCircles?i=c1FGJX4L22k:8et7CFGGB2g:gIN9vFwOqvQ" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/SquaringCircles?a=c1FGJX4L22k:8et7CFGGB2g:7Q72WNTAKBA"&gt;&lt;img src="http://feeds.feedburner.com/~ff/SquaringCircles?d=7Q72WNTAKBA" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/SquaringCircles?a=c1FGJX4L22k:8et7CFGGB2g:qj6IDK7rITs"&gt;&lt;img src="http://feeds.feedburner.com/~ff/SquaringCircles?d=qj6IDK7rITs" border="0"&gt;&lt;/img&gt;&lt;/a&gt;
&lt;/div&gt;&lt;img src="http://feeds.feedburner.com/~r/SquaringCircles/~4/c1FGJX4L22k" height="1" width="1"/&gt;</description><link>http://feedproxy.google.com/~r/SquaringCircles/~3/c1FGJX4L22k/programming-competition.html</link><author>noreply@blogger.com (sp0rus)</author><thr:total>0</thr:total><feedburner:origLink>http://squaringcircles.blogspot.com/2010/09/programming-competition.html</feedburner:origLink></item><item><guid isPermaLink="false">tag:blogger.com,1999:blog-3744739760335943672.post-6078390953626680469</guid><pubDate>Thu, 30 Sep 2010 04:07:00 +0000</pubDate><atom:updated>2010-09-29T23:07:51.489-05:00</atom:updated><category domain="http://www.blogger.com/atom/ns#">high performance computing</category><category domain="http://www.blogger.com/atom/ns#">computer science</category><title>A Desktop Version of a Classic Supercomputer?!?!?!</title><description>Normally I'd relegate posts &amp;nbsp;consisting of ranting about something I found on the internet to &lt;a href="http://sp0rus.tumblr.com/"&gt;my tumblr account&lt;/a&gt;, but this was too good to post on a blog that no one reads.&lt;br /&gt;
&lt;br /&gt;
*cough*NotThatThisIsMuchBetter*cough*&lt;br /&gt;
&lt;br /&gt;
Excuse me... Anyways, while reading through posts in Google Reader, I saw what may be my favorite thing featured on &lt;a href="http://hackaday.com/"&gt;Hack A Day&lt;/a&gt; to date. &amp;nbsp;Since this is coming via Hack A Day, many of you probably saw it already, but for those that haven't I present&lt;br /&gt;
&lt;br /&gt;
A TINY CRAY-1:&lt;br /&gt;
&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://3.bp.blogspot.com/_2KcR8AcMZvI/TKQL47l-4DI/AAAAAAAAACA/-s9La8l-Lws/s1600/tiny-cray1-on-fpga-e1285606690511.jpg" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" src="http://3.bp.blogspot.com/_2KcR8AcMZvI/TKQL47l-4DI/AAAAAAAAACA/-s9La8l-Lws/s1600/tiny-cray1-on-fpga-e1285606690511.jpg" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;br /&gt;
&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;/div&gt;&lt;br /&gt;
That's right, &lt;a href="http://chrisfenton.com/"&gt;Chris Fenton&lt;/a&gt; has created what amounts to a desktop-sized version of this classic supercomputing marvel. &amp;nbsp;It's 1/10 the size of the original, and sports an impressive 33MHz processor (the original only had 80MHz, so no scoffing!). &amp;nbsp;It's not the most useful of devices, but out of all the things I've ever said "I'd love to have one of those on my desk so people would ask what it is," this is probably the coolest.&lt;br /&gt;
&lt;br /&gt;
It will be a while before I undertake this project, if I ever do, but it would definitely be worth it in my opinion. I mean, who hasn't wanted their own personal Cray? I know when I first heard about Cray supercomputers I immediately went to find out how much they cost so I could plan on buying one when I grew up and became rich (still waiting for this).&lt;br /&gt;
&lt;br /&gt;
You can find more pictures, specs, and code (yes, code!) over at &lt;a href="http://chrisfenton.com/homebrew-cray-1a/"&gt;Chris Fenton's site&lt;/a&gt;. &amp;nbsp;Also, you can check out the &lt;a href="http://hackaday.com/2010/09/29/tiny-cray-1-courtesy-of-an-fpga/"&gt;Hack A Day article&lt;/a&gt;&amp;nbsp;for some discussion in the comments.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/3744739760335943672-6078390953626680469?l=squaringcircles.blogspot.com' alt='' /&gt;&lt;/div&gt;
&lt;p&gt;&lt;a href="http://feedads.g.doubleclick.net/~a/FUgisd9xw77mB5-PTBNfum0e4EE/0/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/FUgisd9xw77mB5-PTBNfum0e4EE/0/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;br/&gt;
&lt;a href="http://feedads.g.doubleclick.net/~a/FUgisd9xw77mB5-PTBNfum0e4EE/1/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/FUgisd9xw77mB5-PTBNfum0e4EE/1/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;/p&gt;&lt;div class="feedflare"&gt;
&lt;a href="http://feeds.feedburner.com/~ff/SquaringCircles?a=JUCGy-YqdDo:sZ_btfg1I1E:yIl2AUoC8zA"&gt;&lt;img src="http://feeds.feedburner.com/~ff/SquaringCircles?d=yIl2AUoC8zA" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/SquaringCircles?a=JUCGy-YqdDo:sZ_btfg1I1E:V_sGLiPBpWU"&gt;&lt;img src="http://feeds.feedburner.com/~ff/SquaringCircles?i=JUCGy-YqdDo:sZ_btfg1I1E:V_sGLiPBpWU" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/SquaringCircles?a=JUCGy-YqdDo:sZ_btfg1I1E:gIN9vFwOqvQ"&gt;&lt;img src="http://feeds.feedburner.com/~ff/SquaringCircles?i=JUCGy-YqdDo:sZ_btfg1I1E:gIN9vFwOqvQ" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/SquaringCircles?a=JUCGy-YqdDo:sZ_btfg1I1E:7Q72WNTAKBA"&gt;&lt;img src="http://feeds.feedburner.com/~ff/SquaringCircles?d=7Q72WNTAKBA" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/SquaringCircles?a=JUCGy-YqdDo:sZ_btfg1I1E:qj6IDK7rITs"&gt;&lt;img src="http://feeds.feedburner.com/~ff/SquaringCircles?d=qj6IDK7rITs" border="0"&gt;&lt;/img&gt;&lt;/a&gt;
&lt;/div&gt;&lt;img src="http://feeds.feedburner.com/~r/SquaringCircles/~4/JUCGy-YqdDo" height="1" width="1"/&gt;</description><link>http://feedproxy.google.com/~r/SquaringCircles/~3/JUCGy-YqdDo/desktop-version-of-classic.html</link><author>noreply@blogger.com (sp0rus)</author><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="http://3.bp.blogspot.com/_2KcR8AcMZvI/TKQL47l-4DI/AAAAAAAAACA/-s9La8l-Lws/s72-c/tiny-cray1-on-fpga-e1285606690511.jpg" height="72" width="72" /><thr:total>0</thr:total><feedburner:origLink>http://squaringcircles.blogspot.com/2010/09/desktop-version-of-classic.html</feedburner:origLink></item><item><guid isPermaLink="false">tag:blogger.com,1999:blog-3744739760335943672.post-5720050946302360891</guid><pubDate>Fri, 24 Sep 2010 02:05:00 +0000</pubDate><atom:updated>2010-09-23T21:41:30.353-05:00</atom:updated><category domain="http://www.blogger.com/atom/ns#">random</category><category domain="http://www.blogger.com/atom/ns#">news</category><category domain="http://www.blogger.com/atom/ns#">wombats</category><title>Random Stuff</title><description>I've been meaning to write a blog post for the past few days, keep people interested, but it's been a busy week.&lt;br /&gt;
&lt;br /&gt;
So, I told myself, "Self, today is the day, you're writing a blog post."&lt;br /&gt;
&lt;br /&gt;
It's been a long day though, and I've got nothing. So, here's my favorite picture of a wombat:&lt;br /&gt;
&lt;br /&gt;
&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://scienceblogs.com/zooillogix/Wombat%20II.jpg" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" height="400" src="http://scienceblogs.com/zooillogix/Wombat%20II.jpg" width="300" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;br /&gt;
&lt;/div&gt;&lt;div class="separator" style="clear: both; text-align: left;"&gt;Feel free to share your favorite pictures of wombats in the comments.&lt;/div&gt;&lt;div class="separator" style="clear: both; text-align: left;"&gt;&lt;br /&gt;
&lt;/div&gt;&lt;div class="separator" style="clear: both; text-align: left;"&gt;P.S. I have a [real] post for tomorrow.&lt;/div&gt;&lt;div class="separator" style="clear: both; text-align: left;"&gt;&lt;br /&gt;
&lt;/div&gt;&lt;div class="separator" style="clear: both; text-align: left;"&gt;P.P.S. It's Miranda's birthday, so &lt;a href="http://www.twitter.com/ILikeAlfredo"&gt;drop her a tweet&lt;/a&gt; and check out what she has going on over at &lt;a href="http://foryourwits.wordpress.com/"&gt;Tidbits For Your Wits&lt;/a&gt; and &lt;a href="http://vgamespace.wordpress.com/"&gt;Gamespace&lt;/a&gt;.&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/3744739760335943672-5720050946302360891?l=squaringcircles.blogspot.com' alt='' /&gt;&lt;/div&gt;
&lt;p&gt;&lt;a href="http://feedads.g.doubleclick.net/~a/vSC-hRp195ZNCaMnsW4Fd1oQ20s/0/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/vSC-hRp195ZNCaMnsW4Fd1oQ20s/0/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;br/&gt;
&lt;a href="http://feedads.g.doubleclick.net/~a/vSC-hRp195ZNCaMnsW4Fd1oQ20s/1/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/vSC-hRp195ZNCaMnsW4Fd1oQ20s/1/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;/p&gt;&lt;div class="feedflare"&gt;
&lt;a href="http://feeds.feedburner.com/~ff/SquaringCircles?a=sE4fIISH6G0:_Hf01SWtP1E:yIl2AUoC8zA"&gt;&lt;img src="http://feeds.feedburner.com/~ff/SquaringCircles?d=yIl2AUoC8zA" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/SquaringCircles?a=sE4fIISH6G0:_Hf01SWtP1E:V_sGLiPBpWU"&gt;&lt;img src="http://feeds.feedburner.com/~ff/SquaringCircles?i=sE4fIISH6G0:_Hf01SWtP1E:V_sGLiPBpWU" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/SquaringCircles?a=sE4fIISH6G0:_Hf01SWtP1E:gIN9vFwOqvQ"&gt;&lt;img src="http://feeds.feedburner.com/~ff/SquaringCircles?i=sE4fIISH6G0:_Hf01SWtP1E:gIN9vFwOqvQ" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/SquaringCircles?a=sE4fIISH6G0:_Hf01SWtP1E:7Q72WNTAKBA"&gt;&lt;img src="http://feeds.feedburner.com/~ff/SquaringCircles?d=7Q72WNTAKBA" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/SquaringCircles?a=sE4fIISH6G0:_Hf01SWtP1E:qj6IDK7rITs"&gt;&lt;img src="http://feeds.feedburner.com/~ff/SquaringCircles?d=qj6IDK7rITs" border="0"&gt;&lt;/img&gt;&lt;/a&gt;
&lt;/div&gt;&lt;img src="http://feeds.feedburner.com/~r/SquaringCircles/~4/sE4fIISH6G0" height="1" width="1"/&gt;</description><link>http://feedproxy.google.com/~r/SquaringCircles/~3/sE4fIISH6G0/random-stuff.html</link><author>noreply@blogger.com (sp0rus)</author><thr:total>1</thr:total><feedburner:origLink>http://squaringcircles.blogspot.com/2010/09/random-stuff.html</feedburner:origLink></item><item><guid isPermaLink="false">tag:blogger.com,1999:blog-3744739760335943672.post-3647336510183507769</guid><pubDate>Fri, 17 Sep 2010 04:33:00 +0000</pubDate><atom:updated>2011-04-19T19:47:05.800-05:00</atom:updated><category domain="http://www.blogger.com/atom/ns#">complexity</category><category domain="http://www.blogger.com/atom/ns#">code</category><category domain="http://www.blogger.com/atom/ns#">security</category><category domain="http://www.blogger.com/atom/ns#">math</category><title>Password Length and Complexity</title><description>I subscribe to quite a few mailing lists, for various topics and reasons. &amp;nbsp;One in particular that catches my attention more often than others is the &lt;a href="http://www.securityfocus.com/archive/105/description"&gt;Security Basics&lt;/a&gt; list. &amp;nbsp;This is one of several &lt;a href="http://www.securityfocus.com/"&gt;Security Focus&lt;/a&gt; lists that I subscribe to. &amp;nbsp;If you're looking for some lists, this is a good place to start.&lt;br /&gt;
&lt;br /&gt;
One topic in particular that caught my eye today was a question titled simply: "Length vs Complexity." &amp;nbsp;Being a fan of looking at the complexity of things, I decided to see what this was all about.&lt;br /&gt;
&lt;blockquote&gt;&lt;br /&gt;
Users hear constantly that they should add complexity to their passwords, but from the math of it doesn't length beat complexity (assuming they don't just choose a long word)?  This is not to suggest they should not use special characters, but simply that something like Security.Basics.List would provide better security than D*3ft!7z.  Is that correct?&lt;/blockquote&gt;&lt;br /&gt;
Responses ranged from people asserting that increasing the length was better than increasing the keyspace (number of possible characters) to other people saying just the opposite.&lt;br /&gt;
&lt;br /&gt;
The main criticism towards longer passwords that were easy to remember (multiple words, instead of random characters) was that it is still subject to dictionary attacks. &amp;nbsp;Granted, it is more difficult to pull off a dictionary attack when it isn't just one word, as you do have to try more possibilities, or possibly have some foreknowledge of the type of password used. &amp;nbsp;People saying this approach was not better were leaning towards saying that a true brute force approach would most likely not be the first thing tried.&lt;br /&gt;
&lt;br /&gt;
Conversely, people saying that the "D*3ft!7z" example was weaker used the argument that it had fewer bits than a longer password with the same keyspace.&lt;br /&gt;
&lt;br /&gt;
I fall in line with the first group. &amp;nbsp;The problem with using bit strength as your metric for password security is that saying a password has a certain amount of bit entropy means you're assuming that each character was randomly generated&amp;nbsp;separate&amp;nbsp;from the other characters. &amp;nbsp;Without making this assumption, you cannot say that a longer password always has more bits of entropy than a shorter one. &amp;nbsp;This is what entropy means.&lt;br /&gt;
&lt;br /&gt;
A few months ago, I wrote a short script in Java to easily do the math on password bit strength. &amp;nbsp;The aforementioned problem is&amp;nbsp;quickly&amp;nbsp;evident when you run the program:&lt;br /&gt;
&lt;br /&gt;
&lt;script src="https://gist.github.com/930089.js"&gt; &lt;/script&gt;&lt;br /&gt;
The program could be made more complex. Tests could be added checking to see if all possible types of characters for the given keyspace (numbers and letters; numbers, letters, and special characters; etc.) are actually used. &amp;nbsp;In most cases, this would give a more true value of entropy in the end. &amp;nbsp;Notice I said "in most cases," as this still would not completely solve the problem.&lt;br /&gt;
&lt;br /&gt;
For example, say we have two passwords, "AAAA" and "AFIS" used by two members of Example.com. &amp;nbsp;Example.com only allows users to use capital letters in their passwords, disallowing numbers and special characters. &amp;nbsp;Now, a dictionary attack on these passwords may return no results, but when brute forcing the passwords, it is plainly evident that AAAA is going to be found much faster than AFIS.&lt;br /&gt;
&lt;br /&gt;
Both passwords technically have the same amount of bits, and both passwords technically used all the character types available, but because AFIS was generated randomly, it has more entropy than AAAA.&lt;br /&gt;
&lt;br /&gt;
Testing for randomness is quite a bit more difficult, and I'm not entirely sure you can completely say something is truly random. &amp;nbsp;Though, by doing the best we can, we will, without a doubt, have much stronger passwords.&lt;br /&gt;
&lt;br /&gt;
Nowadays, with the use of GPU's for password cracking, Rainbow Tables, massive botnets, and other forms of computation available to those who would seek to crack people's passwords, it is nearly impossible to say a password really is "secure." &amp;nbsp;All we can hope is that it is "secure enough." &amp;nbsp;The password system is inherently broken, but it will be a long time coming, if it ever does, before we see another system completely replace it that does not suffer from it's own shortcomings.&lt;br /&gt;
&lt;br /&gt;
You can find the thread from the mailing list &lt;a href="http://www.securityfocus.com/archive/105/513780/30/0/threaded"&gt;here&lt;/a&gt;.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/3744739760335943672-3647336510183507769?l=squaringcircles.blogspot.com' alt='' /&gt;&lt;/div&gt;
&lt;p&gt;&lt;a href="http://feedads.g.doubleclick.net/~a/9vARCgASQ4w0F3M3wo40ciGnLII/0/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/9vARCgASQ4w0F3M3wo40ciGnLII/0/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;br/&gt;
&lt;a href="http://feedads.g.doubleclick.net/~a/9vARCgASQ4w0F3M3wo40ciGnLII/1/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/9vARCgASQ4w0F3M3wo40ciGnLII/1/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;/p&gt;&lt;div class="feedflare"&gt;
&lt;a href="http://feeds.feedburner.com/~ff/SquaringCircles?a=ZNWZ4M-vt_U:4Q9nO07zYcU:yIl2AUoC8zA"&gt;&lt;img src="http://feeds.feedburner.com/~ff/SquaringCircles?d=yIl2AUoC8zA" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/SquaringCircles?a=ZNWZ4M-vt_U:4Q9nO07zYcU:V_sGLiPBpWU"&gt;&lt;img src="http://feeds.feedburner.com/~ff/SquaringCircles?i=ZNWZ4M-vt_U:4Q9nO07zYcU:V_sGLiPBpWU" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/SquaringCircles?a=ZNWZ4M-vt_U:4Q9nO07zYcU:gIN9vFwOqvQ"&gt;&lt;img src="http://feeds.feedburner.com/~ff/SquaringCircles?i=ZNWZ4M-vt_U:4Q9nO07zYcU:gIN9vFwOqvQ" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/SquaringCircles?a=ZNWZ4M-vt_U:4Q9nO07zYcU:7Q72WNTAKBA"&gt;&lt;img src="http://feeds.feedburner.com/~ff/SquaringCircles?d=7Q72WNTAKBA" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/SquaringCircles?a=ZNWZ4M-vt_U:4Q9nO07zYcU:qj6IDK7rITs"&gt;&lt;img src="http://feeds.feedburner.com/~ff/SquaringCircles?d=qj6IDK7rITs" border="0"&gt;&lt;/img&gt;&lt;/a&gt;
&lt;/div&gt;&lt;img src="http://feeds.feedburner.com/~r/SquaringCircles/~4/ZNWZ4M-vt_U" height="1" width="1"/&gt;</description><link>http://feedproxy.google.com/~r/SquaringCircles/~3/ZNWZ4M-vt_U/password-length-and-complexity.html</link><author>noreply@blogger.com (sp0rus)</author><thr:total>0</thr:total><feedburner:origLink>http://squaringcircles.blogspot.com/2010/09/password-length-and-complexity.html</feedburner:origLink></item><item><guid isPermaLink="false">tag:blogger.com,1999:blog-3744739760335943672.post-3263105222054227101</guid><pubDate>Thu, 16 Sep 2010 13:00:00 +0000</pubDate><atom:updated>2010-09-16T08:00:01.888-05:00</atom:updated><category domain="http://www.blogger.com/atom/ns#">news</category><title>ShoeCon Reminder</title><description>This Saturday, the 18th, is the date of ShoeCon 2010, in Atlanta. &amp;nbsp;I'd love to make it, but will not be able to due to having family in town. If any of you will be in the Atlanta area, you really should try to go. &amp;nbsp;The event is a conference being held to celebrate the life of Matthew Shoemaker, a friend to many in the InfoSec community. &amp;nbsp; &amp;nbsp;Any proceeds from the conference go in a fund to help care for Matthew's children. &amp;nbsp;Please keep his family in your thoughts and prayers. &lt;br /&gt;
&lt;br /&gt;
More on ShoeCon over at &lt;a href="http://shoecon.org/"&gt;ShoeCon.org&lt;/a&gt;.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/3744739760335943672-3263105222054227101?l=squaringcircles.blogspot.com' alt='' /&gt;&lt;/div&gt;
&lt;p&gt;&lt;a href="http://feedads.g.doubleclick.net/~a/xpYSp7mq4LkK1yiHL9psuuVn_lE/0/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/xpYSp7mq4LkK1yiHL9psuuVn_lE/0/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;br/&gt;
&lt;a href="http://feedads.g.doubleclick.net/~a/xpYSp7mq4LkK1yiHL9psuuVn_lE/1/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/xpYSp7mq4LkK1yiHL9psuuVn_lE/1/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;/p&gt;&lt;div class="feedflare"&gt;
&lt;a href="http://feeds.feedburner.com/~ff/SquaringCircles?a=uZE7j014iaU:VfFT8FJ0y5s:yIl2AUoC8zA"&gt;&lt;img src="http://feeds.feedburner.com/~ff/SquaringCircles?d=yIl2AUoC8zA" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/SquaringCircles?a=uZE7j014iaU:VfFT8FJ0y5s:V_sGLiPBpWU"&gt;&lt;img src="http://feeds.feedburner.com/~ff/SquaringCircles?i=uZE7j014iaU:VfFT8FJ0y5s:V_sGLiPBpWU" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/SquaringCircles?a=uZE7j014iaU:VfFT8FJ0y5s:gIN9vFwOqvQ"&gt;&lt;img src="http://feeds.feedburner.com/~ff/SquaringCircles?i=uZE7j014iaU:VfFT8FJ0y5s:gIN9vFwOqvQ" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/SquaringCircles?a=uZE7j014iaU:VfFT8FJ0y5s:7Q72WNTAKBA"&gt;&lt;img src="http://feeds.feedburner.com/~ff/SquaringCircles?d=7Q72WNTAKBA" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/SquaringCircles?a=uZE7j014iaU:VfFT8FJ0y5s:qj6IDK7rITs"&gt;&lt;img src="http://feeds.feedburner.com/~ff/SquaringCircles?d=qj6IDK7rITs" border="0"&gt;&lt;/img&gt;&lt;/a&gt;
&lt;/div&gt;&lt;img src="http://feeds.feedburner.com/~r/SquaringCircles/~4/uZE7j014iaU" height="1" width="1"/&gt;</description><link>http://feedproxy.google.com/~r/SquaringCircles/~3/uZE7j014iaU/shoecon-reminder.html</link><author>noreply@blogger.com (sp0rus)</author><feedburner:origLink>http://squaringcircles.blogspot.com/2010/09/shoecon-reminder.html</feedburner:origLink></item><item><guid isPermaLink="false">tag:blogger.com,1999:blog-3744739760335943672.post-6718135535451094376</guid><pubDate>Wed, 15 Sep 2010 14:42:00 +0000</pubDate><atom:updated>2010-09-15T14:38:40.878-05:00</atom:updated><category domain="http://www.blogger.com/atom/ns#">random</category><category domain="http://www.blogger.com/atom/ns#">social media</category><category domain="http://www.blogger.com/atom/ns#">musings</category><category domain="http://www.blogger.com/atom/ns#">facebook</category><category domain="http://www.blogger.com/atom/ns#">twitter</category><title>Day Off From Social Media</title><description>One thing I've heard many times the past couple of years is that people are much more connected than they have ever been before. &amp;nbsp;We have cell phones, text messaging, e-mail, instant messaging, Twitter, Facebook, etc. &amp;nbsp;The list of ways we're constantly connected to other people is nearly endless, and new services pop up all the time to make this connectivity even easier. &amp;nbsp;Having a smart phone means you are rarely without the internet at your fingertips, meaning you have access to all this connectivity more often than just a few years ago, when smartphones were rarities. &amp;nbsp;With these services, it is amazing how much communication a person can manage in a day!&lt;br /&gt;
&lt;br /&gt;
I can't find a link right now, but I remember seeing a study showing that the number of people we can actively keep in our mental social circle is fairly small, less than 200 if I remember correctly. &amp;nbsp;The study showed that the use of Facebook and other social sites these days has actually lead to an increase in this number. &amp;nbsp;This is amazing, as with around 600 people connected to me on Facebook, and another 200 or so on Twitter, as well as elsewhere, it would be nearly impossible to keep track of this many people without these services. &amp;nbsp;Granted, not all of those people are very active, and I don't keep track of all of them to much extent, but the fact that I could if I chose to is dumbfounding.&lt;br /&gt;
&lt;br /&gt;
Something else I hear said these days is that people may be suffering from what can be called "information overload" due to all of this connectivity. &amp;nbsp;I can understand this, as there are plenty of days where I feel I just can't keep up with everything that is going on around me and in my online social circle. &amp;nbsp;The amount of information is staggering, especially on Twitter, where I attempt to read everything posted by those I'm following.&lt;br /&gt;
&lt;br /&gt;
Lately I've begun playing &lt;a href="http://www.empireavenue.com/"&gt;Empire Avenue&lt;/a&gt;, which has been both a blessing and a curse. &amp;nbsp;It has connected me to so many more people that I otherwise probably would not have found, increasing readership of this personal blog, as well as gaining quite a few new followers for me on Twitter. &amp;nbsp;I've even signed up for Flickr as a result of joining the site, so now I'm becoming active in a small photography community. &amp;nbsp;All of that is very good, and I enjoy it. &amp;nbsp;The problem is that due to all of this social growth, the amount of information and contact I&amp;nbsp;receive&amp;nbsp;every day has gone up dramatically, and those days I feel I can't keep up with everyone have happened more often.&lt;br /&gt;
&lt;br /&gt;
Yesterday, I decided I was going to just take the day off. &amp;nbsp;I don't have a job, other than being a full time student, so social media feels like a part-time job to me sometimes. &amp;nbsp;I felt that I needed a day off. &amp;nbsp;A few people contacted me when I didn't post my usual round of "good mornings" around the web, asking if I had actually gotten out of bed, but for the most part, I didn't have very many people contact me.&lt;br /&gt;
&lt;br /&gt;
The peace and quiet of the day was refreshing. &amp;nbsp;The last time I spent any length taking a break from the internet was when I spent a week in Costa Rica on a mission trip. &amp;nbsp;Having been online for a good chunk of my life, leaving the internet is an interesting feeling for me, as the day feels as if it slows down when I'm disconnected. &amp;nbsp;I spent a good deal of time yesterday reading and writing, things I haven't been doing as much over the past few months. &amp;nbsp;Time was spent sitting and thinking, something I don't remember doing in quite some time.&lt;br /&gt;
&lt;br /&gt;
In all, I enjoyed my day off, and plan on having more in the future. &amp;nbsp;If it's been a while since the last time you "disconnected," then I suggest you give it a try. &amp;nbsp;Who knows, you might find that you like it.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/3744739760335943672-6718135535451094376?l=squaringcircles.blogspot.com' alt='' /&gt;&lt;/div&gt;
&lt;p&gt;&lt;a href="http://feedads.g.doubleclick.net/~a/Ej6_FBLB3UVjiJbxEeP7jjGlAqE/0/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/Ej6_FBLB3UVjiJbxEeP7jjGlAqE/0/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;br/&gt;
&lt;a href="http://feedads.g.doubleclick.net/~a/Ej6_FBLB3UVjiJbxEeP7jjGlAqE/1/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/Ej6_FBLB3UVjiJbxEeP7jjGlAqE/1/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;/p&gt;&lt;div class="feedflare"&gt;
&lt;a href="http://feeds.feedburner.com/~ff/SquaringCircles?a=lRxoYJCFtI4:3w6oAeAmIP4:yIl2AUoC8zA"&gt;&lt;img src="http://feeds.feedburner.com/~ff/SquaringCircles?d=yIl2AUoC8zA" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/SquaringCircles?a=lRxoYJCFtI4:3w6oAeAmIP4:V_sGLiPBpWU"&gt;&lt;img src="http://feeds.feedburner.com/~ff/SquaringCircles?i=lRxoYJCFtI4:3w6oAeAmIP4:V_sGLiPBpWU" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/SquaringCircles?a=lRxoYJCFtI4:3w6oAeAmIP4:gIN9vFwOqvQ"&gt;&lt;img src="http://feeds.feedburner.com/~ff/SquaringCircles?i=lRxoYJCFtI4:3w6oAeAmIP4:gIN9vFwOqvQ" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/SquaringCircles?a=lRxoYJCFtI4:3w6oAeAmIP4:7Q72WNTAKBA"&gt;&lt;img src="http://feeds.feedburner.com/~ff/SquaringCircles?d=7Q72WNTAKBA" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/SquaringCircles?a=lRxoYJCFtI4:3w6oAeAmIP4:qj6IDK7rITs"&gt;&lt;img src="http://feeds.feedburner.com/~ff/SquaringCircles?d=qj6IDK7rITs" border="0"&gt;&lt;/img&gt;&lt;/a&gt;
&lt;/div&gt;&lt;img src="http://feeds.feedburner.com/~r/SquaringCircles/~4/lRxoYJCFtI4" height="1" width="1"/&gt;</description><link>http://feedproxy.google.com/~r/SquaringCircles/~3/lRxoYJCFtI4/day-off-from-social-media.html</link><author>noreply@blogger.com (sp0rus)</author><thr:total>0</thr:total><feedburner:origLink>http://squaringcircles.blogspot.com/2010/09/day-off-from-social-media.html</feedburner:origLink></item><item><guid isPermaLink="false">tag:blogger.com,1999:blog-3744739760335943672.post-5817404869904951549</guid><pubDate>Mon, 06 Sep 2010 04:10:00 +0000</pubDate><atom:updated>2011-04-19T19:51:40.442-05:00</atom:updated><category domain="http://www.blogger.com/atom/ns#">complexity</category><category domain="http://www.blogger.com/atom/ns#">code</category><category domain="http://www.blogger.com/atom/ns#">programming</category><category domain="http://www.blogger.com/atom/ns#">computer science</category><category domain="http://www.blogger.com/atom/ns#">math</category><category domain="http://www.blogger.com/atom/ns#">coding</category><title>Code Complexity Classes II: Revisited</title><description>Here's that C code I've been promising:&lt;br /&gt;
&lt;br /&gt;
&lt;script src="https://gist.github.com/930102.js"&gt; &lt;/script&gt;&lt;br /&gt;
&lt;span class="Apple-style-span" style="font-size: small;"&gt;Compiled in 64-bit Ubuntu 10.4.&lt;/span&gt;&lt;br /&gt;
&lt;br /&gt;
When you run the code, just as in Java, you can see the difference in time between the "row by row" and "column by column" implementations:&lt;br /&gt;
&lt;br /&gt;
&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://s792.photobucket.com/albums/yy208/sp0rus/?action=view&amp;amp;current=arraycomplexityc1.png" style="margin-left: 1em; margin-right: 1em;" target="_blank"&gt;&lt;img alt="Photobucket" border="0" height="104" src="http://i792.photobucket.com/albums/yy208/sp0rus/arraycomplexityc1.png" width="400" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;br /&gt;
The row by row implementation ran in 2.64 seconds according to the timer built into the program, with the column by column example running in 3.67 seconds. &lt;br /&gt;
&lt;br /&gt;
This is in a VM, so comparisons to the Java example done before should not be made, as those examples were tested in the host OS. &amp;nbsp;As always with things like this, the time is subject to your unique system and what is running at the time of execution.&lt;br /&gt;
&lt;br /&gt;
What is important though, is to notice the difference in time between the two implementations, it is still there, and it is a noticeable amount, even with this relatively small amount of data.&lt;br /&gt;
&lt;br /&gt;
Just for curiosity's sake, I decided to see how turning optimization flags on would affect the execution time:&lt;br /&gt;
&lt;br /&gt;
&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://i792.photobucket.com/albums/yy208/sp0rus/arraycomplexityc2.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" height="246" src="http://i792.photobucket.com/albums/yy208/sp0rus/arraycomplexityc2.png" width="400" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;br /&gt;
With first level optimization, our row by row time dropped considerably to 2.32 seconds, and our column by column implementation time went up to 3.88 seconds, further increasing the gap.&lt;br /&gt;
&lt;br /&gt;
With second level optimization, row by row dropped again to 2.27, and column by column further increased to 3.95.  As you can see, this time the change was negligible.&lt;br /&gt;
&lt;br /&gt;
&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://s792.photobucket.com/albums/yy208/sp0rus/?action=view&amp;amp;current=arraycomplexityc3.png" style="margin-left: 1em; margin-right: 1em;" target="_blank"&gt;&lt;img alt="Photobucket" border="0" height="105" src="http://i792.photobucket.com/albums/yy208/sp0rus/arraycomplexityc3.png" width="400" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;br /&gt;
&lt;br /&gt;
With third level optimization, we saw a decrease about half that of first level optimization in the time for row by row copying to 2.16.  This optimization also decreased the column by column time to below that of first level optimization, but higher than that of no optimization, putting it at 3.81 seconds.&lt;br /&gt;
&lt;br /&gt;
I'm not going to go into what exactly these optimization flags do, as that's a topic for another post, and I'm not even sure what all is done myself at this point.  I'm extremely new to C, so if you see anything incorrect in this post, feel free to point out my mistakes, and I'll be happy to correct them and give credit where credit is due.&lt;br /&gt;
&lt;br /&gt;
Speaking of where credit is due, I must give some to my Assembly Language teacher, Dr. Chen, for providing the basic version of this code (I only added the timer and made some minor tweaks to suit my cosmetic style) and for providing the inspiration for these posts on complexity classes and how they stack up in the real world. &amp;nbsp;Perhaps in the future I'll revisit this topic more in depth, for now though, I am done with it.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/3744739760335943672-5817404869904951549?l=squaringcircles.blogspot.com' alt='' /&gt;&lt;/div&gt;
&lt;p&gt;&lt;a href="http://feedads.g.doubleclick.net/~a/1Gc4WJyJJUzEgcOez0CXHFSnLwc/0/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/1Gc4WJyJJUzEgcOez0CXHFSnLwc/0/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;br/&gt;
&lt;a href="http://feedads.g.doubleclick.net/~a/1Gc4WJyJJUzEgcOez0CXHFSnLwc/1/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/1Gc4WJyJJUzEgcOez0CXHFSnLwc/1/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;/p&gt;&lt;div class="feedflare"&gt;
&lt;a href="http://feeds.feedburner.com/~ff/SquaringCircles?a=zKl7soA6kI8:73fwDAUz_Zs:yIl2AUoC8zA"&gt;&lt;img src="http://feeds.feedburner.com/~ff/SquaringCircles?d=yIl2AUoC8zA" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/SquaringCircles?a=zKl7soA6kI8:73fwDAUz_Zs:V_sGLiPBpWU"&gt;&lt;img src="http://feeds.feedburner.com/~ff/SquaringCircles?i=zKl7soA6kI8:73fwDAUz_Zs:V_sGLiPBpWU" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/SquaringCircles?a=zKl7soA6kI8:73fwDAUz_Zs:gIN9vFwOqvQ"&gt;&lt;img src="http://feeds.feedburner.com/~ff/SquaringCircles?i=zKl7soA6kI8:73fwDAUz_Zs:gIN9vFwOqvQ" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/SquaringCircles?a=zKl7soA6kI8:73fwDAUz_Zs:7Q72WNTAKBA"&gt;&lt;img src="http://feeds.feedburner.com/~ff/SquaringCircles?d=7Q72WNTAKBA" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/SquaringCircles?a=zKl7soA6kI8:73fwDAUz_Zs:qj6IDK7rITs"&gt;&lt;img src="http://feeds.feedburner.com/~ff/SquaringCircles?d=qj6IDK7rITs" border="0"&gt;&lt;/img&gt;&lt;/a&gt;
&lt;/div&gt;&lt;img src="http://feeds.feedburner.com/~r/SquaringCircles/~4/zKl7soA6kI8" height="1" width="1"/&gt;</description><link>http://feedproxy.google.com/~r/SquaringCircles/~3/zKl7soA6kI8/code-complexity-classes-ii-revisited.html</link><author>noreply@blogger.com (sp0rus)</author><thr:total>0</thr:total><feedburner:origLink>http://squaringcircles.blogspot.com/2010/09/code-complexity-classes-ii-revisited.html</feedburner:origLink></item><item><guid isPermaLink="false">tag:blogger.com,1999:blog-3744739760335943672.post-6858931022996762143</guid><pubDate>Sat, 28 Aug 2010 04:23:00 +0000</pubDate><atom:updated>2011-04-19T19:54:34.818-05:00</atom:updated><category domain="http://www.blogger.com/atom/ns#">complexity</category><category domain="http://www.blogger.com/atom/ns#">code</category><category domain="http://www.blogger.com/atom/ns#">programming</category><category domain="http://www.blogger.com/atom/ns#">computer science</category><category domain="http://www.blogger.com/atom/ns#">math</category><category domain="http://www.blogger.com/atom/ns#">coding</category><title>The Java Heap</title><description>&lt;i&gt;Note: Today's post is somewhat of a continuation of yesterday's. Just in case you didn't read yesterday's post, or would like to review, you can find it &lt;/i&gt;&lt;a href="http://squaringcircles.blogspot.com/2010/08/code-complexity-classes-math-vs-reality.html"&gt;&lt;i&gt;here&lt;/i&gt;&lt;/a&gt;&lt;i&gt;.&lt;/i&gt;&lt;br /&gt;
&lt;div&gt;&lt;br /&gt;
&lt;/div&gt;&lt;div&gt;While writing the code for yesterday's blog post, I ran into a runtime error that I hadn't personally run into before, though it is by no means an uncommon error. &amp;nbsp;The only reason I haven't run into it before is because I haven't before written programs in Java that had significant memory requirements.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;
&lt;/div&gt;&lt;div&gt;Let's look at a section of code from yesterday:&lt;/div&gt;&lt;div&gt;&lt;pre class="java" name="code"&gt;static int size = 2048;
 
 static int A[][] = new int[size][size];
 static int B[][] = new int[size][size];
&lt;/pre&gt;&lt;/div&gt;&lt;div&gt;&lt;div style="text-align: center;"&gt;&lt;span class="Apple-style-span" style="font-size: small;"&gt;&lt;i&gt;Find the complete code &lt;a href="https://gist.github.com/930106"&gt;here&lt;/a&gt;&lt;/i&gt;&lt;/span&gt;&lt;/div&gt;&lt;div style="text-align: left;"&gt;&lt;span class="Apple-style-span" style="font-size: small;"&gt;&lt;br /&gt;
&lt;/span&gt;&lt;/div&gt;&lt;div style="text-align: left;"&gt;This section is creating and instantiating the int variable "size" then allocating memory for two two-dimensional arrays that contain size&lt;sup&gt;2&lt;/sup&gt; elements. &amp;nbsp;Let's try adding another 1024 to the size variable and see what happens.&lt;br /&gt;
&lt;br /&gt;
&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://i792.photobucket.com/albums/yy208/sp0rus/arraycomplexityjava2.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" height="91" src="http://i792.photobucket.com/albums/yy208/sp0rus/arraycomplexityjava2.png" width="400" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;div style="text-align: center;"&gt;&lt;span class="Apple-style-span" style="font-size: small;"&gt;Click for full size&lt;/span&gt;&lt;/div&gt;&lt;div style="text-align: left;"&gt;&lt;span class="Apple-style-span" style="font-size: small;"&gt;&lt;br /&gt;
&lt;/span&gt;&lt;/div&gt;&lt;div style="text-align: left;"&gt;Now that's interesting. &amp;nbsp;The part we're interested in is:&lt;/div&gt;&lt;div style="text-align: left;"&gt;&lt;div style="text-align: center;"&gt;&lt;span class="Apple-style-span" style="color: red;"&gt;java.lang.OutOfMemoryError: Java heap space at ArrayExample.&lt;clinit&gt;&lt;arrayexample.java:5&gt;&lt;/arrayexample.java:5&gt;&lt;/clinit&gt;&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;div style="text-align: left;"&gt;&lt;span class="Apple-style-span" style="color: red;"&gt;&lt;br /&gt;
&lt;/span&gt;&lt;/div&gt;&lt;div style="text-align: left;"&gt;Apparently when allocating memory for the second array, we run into a problem, as there is not enough memory. &amp;nbsp;At first glance, this seems strange, as I have 8 gigabytes of ram in this machine, and even though Java can't use all of that because I'm running 32-bit Java, I did not think it would be a problem as the maximum memory still should not have come anywhere near this.&lt;/div&gt;&lt;div style="text-align: left;"&gt;&lt;br /&gt;
&lt;/div&gt;&lt;div style="text-align: left;"&gt;I suppose the question now is how much memory did the example attempt to use? &amp;nbsp;Just looking at the size of the arrays, and not taking into account overhead, the arrays come out to just over 73mb of space. &amp;nbsp;Considering 32-bit allows for ~4gb of space, this still seems odd that we ran into a problem. &amp;nbsp;In order to explain this, we have to focus on another word in the error message:&lt;/div&gt;&lt;div style="text-align: left;"&gt;&lt;br /&gt;
&lt;/div&gt;&lt;div style="text-align: center;"&gt;&lt;span class="Apple-style-span" style="color: red;"&gt;java.lang.OutOfMemoryError: Java &lt;b&gt;&lt;span class="Apple-style-span" style="color: blue;"&gt;heap&lt;/span&gt;&lt;/b&gt; space at ArrayExample.&lt;clinit&gt;&lt;arrayexample.java:5&gt;&lt;/arrayexample.java:5&gt;&lt;/clinit&gt;&lt;/span&gt;&lt;/div&gt;&lt;div style="text-align: left;"&gt;&lt;span class="Apple-style-span" style="color: red;"&gt;&lt;br /&gt;
&lt;/span&gt;&lt;/div&gt;&lt;div style="text-align: left;"&gt;&lt;b&gt;What is the "heap space"?&lt;/b&gt;&lt;/div&gt;&lt;div style="text-align: left;"&gt;&lt;br /&gt;
&lt;/div&gt;&lt;div style="text-align: left;"&gt;According to &lt;a href="http://www.javaworld.com/javaworld/jw-08-1996/jw-08-gc.html"&gt;JavaWorld&lt;/a&gt;:&lt;/div&gt;&lt;blockquote&gt;The JVM's heap stores all objects created by an executing Java program.&lt;/blockquote&gt;&lt;br /&gt;
&lt;/div&gt;&lt;/div&gt;&lt;b&gt;What is the size of the heap?&lt;/b&gt;&lt;br /&gt;
&lt;br /&gt;
By default, the size of the heap in Java 1.6 is 64mb. &lt;br /&gt;
&lt;br /&gt;
Now we can see that we were, in fact, trying to use more memory than we had available. &amp;nbsp;I have a problem with this though. I want to use more memory than 64mb. &amp;nbsp;Why? &amp;nbsp;Honestly, because I can.&lt;br /&gt;
&lt;br /&gt;
&lt;b&gt;Is this even possible, or are we stuck with this limit?&lt;/b&gt;&lt;br /&gt;
&lt;br /&gt;
Luckily for us, Java allows for us to bypass this limit at runtime. By executing the &lt;span class="Apple-style-span" style="color: red;"&gt;java&lt;/span&gt; command with the argument&amp;nbsp;&lt;span class="Apple-style-span" style="color: red;"&gt;-Xmx&lt;/span&gt;&amp;nbsp;and choosing a new maximum heap size, we can set a larger heap size for the program's use.&lt;br /&gt;
&lt;br /&gt;
&lt;i&gt;Example:&lt;/i&gt;&lt;br /&gt;
&lt;br /&gt;
&amp;nbsp;&amp;nbsp; &amp;nbsp; &lt;span class="Apple-style-span" style="color: red;"&gt;java -Xmx128m ArrayExample&lt;/span&gt;&lt;br /&gt;
&lt;span class="Apple-style-span" style="color: red;"&gt;&lt;br /&gt;
&lt;/span&gt;&lt;br /&gt;
The number in the example is our desired maximum heap size. &amp;nbsp;The "m" after the number designates that we mean megabytes, you can also use "g" for gigabytes, etc.&lt;br /&gt;
&lt;br /&gt;
Let's try it, using the same program as before:&lt;br /&gt;
&lt;br /&gt;
&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://i792.photobucket.com/albums/yy208/sp0rus/arraycomplexityjava3.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" height="92" src="http://i792.photobucket.com/albums/yy208/sp0rus/arraycomplexityjava3.png" width="400" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;span class="Apple-style-span" style="font-size: small;"&gt;Click for full size&lt;/span&gt;&lt;/div&gt;&lt;div class="separator" style="clear: both; text-align: left;"&gt;&lt;br /&gt;
&lt;/div&gt;&lt;div class="separator" style="clear: both; text-align: left;"&gt;Ah, now it runs correctly, and we can run our test from yesterday with even larger numbers, allowing us to see the difference between the two array copying implementations more clearly. &amp;nbsp;You can go even larger than I did here.&lt;/div&gt;&lt;div class="separator" style="clear: both; text-align: left;"&gt;&lt;br /&gt;
&lt;/div&gt;&lt;div class="" style="clear: both; text-align: left;"&gt;Just as an example, here's a run with arrays containing 10240&lt;sup&gt;2&lt;/sup&gt;&amp;nbsp;&amp;nbsp;(5x as many as yesterday's) elements:&lt;/div&gt;&lt;div class="separator" style="clear: both; text-align: left;"&gt;&lt;br /&gt;
&lt;/div&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://i792.photobucket.com/albums/yy208/sp0rus/arraycomplexityjava4.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" height="92" src="http://i792.photobucket.com/albums/yy208/sp0rus/arraycomplexityjava4.png" width="400" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;span class="Apple-style-span" style="font-size: small;"&gt;Click for full size&lt;/span&gt;&lt;/div&gt;&lt;div class="separator" style="clear: both; text-align: left;"&gt;&lt;br /&gt;
&lt;/div&gt;&lt;div class="separator" style="clear: both; text-align: left;"&gt;Now we're getting somewhere.&lt;/div&gt;&lt;div class="separator" style="clear: both; text-align: left;"&gt;&lt;br /&gt;
&lt;/div&gt;&lt;div class="separator" style="clear: both; text-align: left;"&gt;Another problem you may run into is trying to allocate more memory than you have physically in your machine, or just more than allowed. &amp;nbsp;Trying to set the maximum heap to 4g gives an error that it is an invalid maximum heap size. &amp;nbsp;Yet another error you may run into is the JVM not being able to find enough contiguous memory. &amp;nbsp;The heap only allows you to use memory that is in one big block, so just because you have two gigabytes unused on your machine doesn't mean you'll be able to use it (trust me, I tried).&lt;/div&gt;&lt;div class="separator" style="clear: both; text-align: left;"&gt;&lt;br /&gt;
&lt;/div&gt;&lt;div class="separator" style="clear: both; text-align: left;"&gt;Have some fun with it, see what you can do. &amp;nbsp;I'd love to hear what the maximum size people can get to work on their machines is.&lt;/div&gt;&lt;div class="separator" style="clear: both; text-align: left;"&gt;&lt;br /&gt;
&lt;/div&gt;&lt;div class="separator" style="clear: both; text-align: left;"&gt;C code still to come, and I'll try to have some other examples besides just this array copying scenario.&lt;/div&gt;&lt;div class="separator" style="clear: both; text-align: left;"&gt;&lt;br /&gt;
&lt;/div&gt;&lt;div class="separator" style="clear: both; text-align: left;"&gt;Here's some links to more information on the heap and other options:&lt;/div&gt;&lt;div class="separator" style="clear: both; text-align: left;"&gt;&lt;a href="http://blog.paulgu.com/2008/07/19/6-common-errors-in-setting-java-heap-size/"&gt;6 Common Errors in Setting Java Heap Size&lt;/a&gt;&lt;/div&gt;&lt;div class="separator" style="clear: both; text-align: left;"&gt;&lt;a href="http://stackoverflow.com/questions/229886/size-of-a-byte-in-memory-java"&gt;Code source for finding size of ints on your machine to calculate space needed&lt;/a&gt;&lt;/div&gt;&lt;div class="separator" style="clear: both; text-align: left;"&gt;&lt;a href="http://www.javaworld.com/javaworld/jw-08-1996/jw-08-gc.html"&gt;Java's garbage-collected heap&lt;/a&gt;&lt;/div&gt;&lt;div class="separator" style="clear: both; text-align: left;"&gt;&lt;a href="http://publib.boulder.ibm.com/infocenter/wasinfo/v6r0/index.jsp?topic=/com.ibm.websphere.express.doc/info/exp/ae/rprf_javamemory.html"&gt;Java memory tuning tips&lt;/a&gt;&lt;/div&gt;&lt;div class="separator" style="clear: both; text-align: left;"&gt;&lt;br /&gt;
&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/3744739760335943672-6858931022996762143?l=squaringcircles.blogspot.com' alt='' /&gt;&lt;/div&gt;
&lt;p&gt;&lt;a href="http://feedads.g.doubleclick.net/~a/187D3dAE9McjpPmqfsMxHGIl7Rk/0/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/187D3dAE9McjpPmqfsMxHGIl7Rk/0/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;br/&gt;
&lt;a href="http://feedads.g.doubleclick.net/~a/187D3dAE9McjpPmqfsMxHGIl7Rk/1/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/187D3dAE9McjpPmqfsMxHGIl7Rk/1/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;/p&gt;&lt;div class="feedflare"&gt;
&lt;a href="http://feeds.feedburner.com/~ff/SquaringCircles?a=IYLYBfSy7rk:4HusK28SrmM:yIl2AUoC8zA"&gt;&lt;img src="http://feeds.feedburner.com/~ff/SquaringCircles?d=yIl2AUoC8zA" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/SquaringCircles?a=IYLYBfSy7rk:4HusK28SrmM:V_sGLiPBpWU"&gt;&lt;img src="http://feeds.feedburner.com/~ff/SquaringCircles?i=IYLYBfSy7rk:4HusK28SrmM:V_sGLiPBpWU" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/SquaringCircles?a=IYLYBfSy7rk:4HusK28SrmM:gIN9vFwOqvQ"&gt;&lt;img src="http://feeds.feedburner.com/~ff/SquaringCircles?i=IYLYBfSy7rk:4HusK28SrmM:gIN9vFwOqvQ" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/SquaringCircles?a=IYLYBfSy7rk:4HusK28SrmM:7Q72WNTAKBA"&gt;&lt;img src="http://feeds.feedburner.com/~ff/SquaringCircles?d=7Q72WNTAKBA" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/SquaringCircles?a=IYLYBfSy7rk:4HusK28SrmM:qj6IDK7rITs"&gt;&lt;img src="http://feeds.feedburner.com/~ff/SquaringCircles?d=qj6IDK7rITs" border="0"&gt;&lt;/img&gt;&lt;/a&gt;
&lt;/div&gt;&lt;img src="http://feeds.feedburner.com/~r/SquaringCircles/~4/IYLYBfSy7rk" height="1" width="1"/&gt;</description><link>http://feedproxy.google.com/~r/SquaringCircles/~3/IYLYBfSy7rk/java-heap.html</link><author>noreply@blogger.com (sp0rus)</author><thr:total>0</thr:total><feedburner:origLink>http://squaringcircles.blogspot.com/2010/08/java-heap.html</feedburner:origLink></item><item><guid isPermaLink="false">tag:blogger.com,1999:blog-3744739760335943672.post-7875316746558862382</guid><pubDate>Fri, 27 Aug 2010 04:03:00 +0000</pubDate><atom:updated>2011-04-19T19:56:39.545-05:00</atom:updated><category domain="http://www.blogger.com/atom/ns#">complexity</category><category domain="http://www.blogger.com/atom/ns#">programming</category><category domain="http://www.blogger.com/atom/ns#">computer science</category><category domain="http://www.blogger.com/atom/ns#">math</category><title>Code Complexity Classes: Math vs. Reality</title><description>Had an enjoyable first day of my computer science classes yesterday. &amp;nbsp;In my Computer Organization and Assembly Language class, the teacher went over some examples of different C code, then we'd look at the Assembly for the code to see what was really going on. &amp;nbsp;One example he showed used large arrays.&lt;br /&gt;
&lt;br /&gt;
In the example, the scenario he gave was that students are given a large array, and they need to write code to copy the array to another array. &amp;nbsp;In this scenario, two students have very similar implementations, but with one key difference.&lt;br /&gt;
&lt;br /&gt;
&lt;i&gt;Note: I redid the code in Java so I could add a few tweaks, C and other languages to come later.&lt;/i&gt;&lt;br /&gt;
&lt;br /&gt;
Code for the first student:&lt;br /&gt;
&lt;pre class="java" name="code"&gt;static void copyij(){
  for( int i = 0; i &amp;lt; size; i++){
   for( int j = 0; j &amp;lt; size; j++){
    B[i][j] = A[i][j];
   }
  }
 }
&lt;/pre&gt;Code for the second student:&lt;br /&gt;
&lt;pre class="java" name="code"&gt;static void copyji(){
  for( int j = 0; j &amp;lt; size; j++){
   for( int i = 0; i &amp;lt; size; i++){
    B[i][j] = A[i][j];
   }
  }
 }
&lt;/pre&gt;Just in case you missed it, or didn't feel like looking at the code, the difference is in the order they copied the elements of the array.  Both students' code will compile and run without error.  The first student copied all elements row by row, as opposed to the second student who went column by column.&lt;br /&gt;
&lt;br /&gt;
Looking just at the complexity class of each piece of code, we see that both have a complexity of &lt;b&gt;O(n&lt;sup&gt;2&lt;/sup&gt;)&lt;/b&gt;.  Since this is often how we measure the efficiency of code, most people wouldn't look into it any further.  The real world doesn't always work out so perfectly though.  Running both segments of code and logging the time of each copy shows that the second student's code runs significantly slower than the first.&lt;br /&gt;
&lt;br /&gt;
How much slower? Over 10 runs, the first student's code averaged 16ms, whereas the second student's code averaged 71ms.  On my netbook, the difference was even more profound, with the first code being, on average, ~10 times faster than the second.&lt;br /&gt;
&lt;br /&gt;
&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://3.bp.blogspot.com/_2KcR8AcMZvI/THc4PTJ_UAI/AAAAAAAAABo/xxbxT7KhuPQ/s1600/arraycomplexityjava1.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" height="86" src="http://3.bp.blogspot.com/_2KcR8AcMZvI/THc4PTJ_UAI/AAAAAAAAABo/xxbxT7KhuPQ/s400/arraycomplexityjava1.png" width="400" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;br /&gt;
These times are in milliseconds though, and are so small as to be negligible.  Without running benchmarks like this, you wouldn't even notice this in your program.  What happens when your array has 10 times the amount of data as the one used here? Well, wait until tomorrow where we cover the same topic using C code and you can find out.&lt;br /&gt;
&lt;br /&gt;
&lt;i&gt;Edit: forgot to add the complete code so you can run it for yourself. &amp;nbsp;The complete code can be found &lt;a href="https://gist.github.com/930106"&gt;here&lt;/a&gt;. &amp;nbsp;Happy coding!&lt;/i&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/3744739760335943672-7875316746558862382?l=squaringcircles.blogspot.com' alt='' /&gt;&lt;/div&gt;
&lt;p&gt;&lt;a href="http://feedads.g.doubleclick.net/~a/Q7qi12cv3UNYInfDv90H_0ybA-g/0/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/Q7qi12cv3UNYInfDv90H_0ybA-g/0/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;br/&gt;
&lt;a href="http://feedads.g.doubleclick.net/~a/Q7qi12cv3UNYInfDv90H_0ybA-g/1/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/Q7qi12cv3UNYInfDv90H_0ybA-g/1/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;/p&gt;&lt;div class="feedflare"&gt;
&lt;a href="http://feeds.feedburner.com/~ff/SquaringCircles?a=IiifjDwAwaw:XUkSynl-dec:yIl2AUoC8zA"&gt;&lt;img src="http://feeds.feedburner.com/~ff/SquaringCircles?d=yIl2AUoC8zA" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/SquaringCircles?a=IiifjDwAwaw:XUkSynl-dec:V_sGLiPBpWU"&gt;&lt;img src="http://feeds.feedburner.com/~ff/SquaringCircles?i=IiifjDwAwaw:XUkSynl-dec:V_sGLiPBpWU" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/SquaringCircles?a=IiifjDwAwaw:XUkSynl-dec:gIN9vFwOqvQ"&gt;&lt;img src="http://feeds.feedburner.com/~ff/SquaringCircles?i=IiifjDwAwaw:XUkSynl-dec:gIN9vFwOqvQ" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/SquaringCircles?a=IiifjDwAwaw:XUkSynl-dec:7Q72WNTAKBA"&gt;&lt;img src="http://feeds.feedburner.com/~ff/SquaringCircles?d=7Q72WNTAKBA" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/SquaringCircles?a=IiifjDwAwaw:XUkSynl-dec:qj6IDK7rITs"&gt;&lt;img src="http://feeds.feedburner.com/~ff/SquaringCircles?d=qj6IDK7rITs" border="0"&gt;&lt;/img&gt;&lt;/a&gt;
&lt;/div&gt;&lt;img src="http://feeds.feedburner.com/~r/SquaringCircles/~4/IiifjDwAwaw" height="1" width="1"/&gt;</description><link>http://feedproxy.google.com/~r/SquaringCircles/~3/IiifjDwAwaw/code-complexity-classes-math-vs-reality.html</link><author>noreply@blogger.com (sp0rus)</author><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="http://3.bp.blogspot.com/_2KcR8AcMZvI/THc4PTJ_UAI/AAAAAAAAABo/xxbxT7KhuPQ/s72-c/arraycomplexityjava1.png" height="72" width="72" /><thr:total>0</thr:total><feedburner:origLink>http://squaringcircles.blogspot.com/2010/08/code-complexity-classes-math-vs-reality.html</feedburner:origLink></item><item><guid isPermaLink="false">tag:blogger.com,1999:blog-3744739760335943672.post-2378636396987898593</guid><pubDate>Fri, 13 Aug 2010 15:50:00 +0000</pubDate><atom:updated>2010-08-13T10:50:31.940-05:00</atom:updated><category domain="http://www.blogger.com/atom/ns#">news</category><title>In Memory of Matthew Shoemaker</title><description>&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://3.bp.blogspot.com/_2KcR8AcMZvI/TGTvno725II/AAAAAAAAABk/ndQEM3fdqQc/s1600/mattshoemaker.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" height="293" src="http://3.bp.blogspot.com/_2KcR8AcMZvI/TGTvno725II/AAAAAAAAABk/ndQEM3fdqQc/s320/mattshoemaker.png" width="320" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;div style="text-align: center;"&gt;&lt;b&gt;Matthew Shoemaker&lt;/b&gt;&lt;/div&gt;&lt;div style="text-align: center;"&gt;(1973 - 2010)&lt;/div&gt;&lt;div style="text-align: center;"&gt;&lt;br /&gt;
&lt;/div&gt;&lt;div style="text-align: left;"&gt;On Friday, July 30, Matthew Shoemaker passed away. &amp;nbsp;Matthew was a host and co-founder of one of my favorite podcasts, Infosec Daily. &amp;nbsp;Even though I never got the opportunity to meet him in person, I feel that through listening to the podcast each night, I did get to know him, and I will miss hearing his insight into the world of information security.&lt;/div&gt;&lt;div style="text-align: left;"&gt;&lt;br /&gt;
&lt;/div&gt;&lt;div style="text-align: left;"&gt;The ISD podcast has a page set up in memory of Matthew, which you can find &lt;a href="http://www.isdpodcast.com/about/matthew-m-shoemaker-1973-2010/"&gt;here&lt;/a&gt;. &amp;nbsp;The page links as well to a paypal account for donations to the Matthew Shoemaker Memorial Fund, which has been set up to help provide for his two sons. &amp;nbsp;There is also a memorial episode of the podcast (&lt;a href="http://www.isdpodcast.com/episode-185-tribute-to-matt-shoemaker/"&gt;episode 185&lt;/a&gt;), in which many friends of Matthew who had spoken on the podcast in the past gathered to reminisce and pay tribute to their friend.&lt;/div&gt;&lt;div style="text-align: left;"&gt;&lt;br /&gt;
&lt;/div&gt;&lt;div style="text-align: left;"&gt;A conference&amp;nbsp;in his memory&amp;nbsp;is also in the works. Called ShoeCon, it will be held September 18th in Atlanta. &amp;nbsp;Proceeds from the con will go to the Matthew Shoemaker Memorial Fund. More information can be found at the Infosec Daily &lt;a href="http://www.isdpodcast.com/"&gt;website&lt;/a&gt;.&lt;/div&gt;&lt;div style="text-align: left;"&gt;&lt;br /&gt;
&lt;/div&gt;&lt;div style="text-align: left;"&gt;Please keep Matthew's family in your thoughts and prayers.&lt;/div&gt;&lt;div style="text-align: left;"&gt;&lt;span class="Apple-style-span" style="font-family: Times, 'Times New Roman', serif;"&gt;&lt;span class="Apple-style-span" style="line-height: 22px;"&gt;&lt;br /&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/3744739760335943672-2378636396987898593?l=squaringcircles.blogspot.com' alt='' /&gt;&lt;/div&gt;
&lt;p&gt;&lt;a href="http://feedads.g.doubleclick.net/~a/S5DOg_Vpok-syYHy7I8F-awWmfE/0/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/S5DOg_Vpok-syYHy7I8F-awWmfE/0/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;br/&gt;
&lt;a href="http://feedads.g.doubleclick.net/~a/S5DOg_Vpok-syYHy7I8F-awWmfE/1/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/S5DOg_Vpok-syYHy7I8F-awWmfE/1/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;/p&gt;&lt;div class="feedflare"&gt;
&lt;a href="http://feeds.feedburner.com/~ff/SquaringCircles?a=o_HEfFT_Q2c:wkcpqgnjGkA:yIl2AUoC8zA"&gt;&lt;img src="http://feeds.feedburner.com/~ff/SquaringCircles?d=yIl2AUoC8zA" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/SquaringCircles?a=o_HEfFT_Q2c:wkcpqgnjGkA:V_sGLiPBpWU"&gt;&lt;img src="http://feeds.feedburner.com/~ff/SquaringCircles?i=o_HEfFT_Q2c:wkcpqgnjGkA:V_sGLiPBpWU" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/SquaringCircles?a=o_HEfFT_Q2c:wkcpqgnjGkA:gIN9vFwOqvQ"&gt;&lt;img src="http://feeds.feedburner.com/~ff/SquaringCircles?i=o_HEfFT_Q2c:wkcpqgnjGkA:gIN9vFwOqvQ" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/SquaringCircles?a=o_HEfFT_Q2c:wkcpqgnjGkA:7Q72WNTAKBA"&gt;&lt;img src="http://feeds.feedburner.com/~ff/SquaringCircles?d=7Q72WNTAKBA" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/SquaringCircles?a=o_HEfFT_Q2c:wkcpqgnjGkA:qj6IDK7rITs"&gt;&lt;img src="http://feeds.feedburner.com/~ff/SquaringCircles?d=qj6IDK7rITs" border="0"&gt;&lt;/img&gt;&lt;/a&gt;
&lt;/div&gt;&lt;img src="http://feeds.feedburner.com/~r/SquaringCircles/~4/o_HEfFT_Q2c" height="1" width="1"/&gt;</description><link>http://feedproxy.google.com/~r/SquaringCircles/~3/o_HEfFT_Q2c/in-memory-of-matthew-shoemaker.html</link><author>noreply@blogger.com (sp0rus)</author><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="http://3.bp.blogspot.com/_2KcR8AcMZvI/TGTvno725II/AAAAAAAAABk/ndQEM3fdqQc/s72-c/mattshoemaker.png" height="72" width="72" /><feedburner:origLink>http://squaringcircles.blogspot.com/2010/08/in-memory-of-matthew-shoemaker.html</feedburner:origLink></item><item><guid isPermaLink="false">tag:blogger.com,1999:blog-3744739760335943672.post-6781572761622650056</guid><pubDate>Fri, 13 Aug 2010 05:26:00 +0000</pubDate><atom:updated>2010-08-26T23:29:01.198-05:00</atom:updated><category domain="http://www.blogger.com/atom/ns#">random</category><category domain="http://www.blogger.com/atom/ns#">internet</category><title>Google's Data Liberation Front</title><description>&lt;span class="Apple-style-span" style="font-family: Arial; font-size: small;"&gt;&lt;span class="Apple-style-span" style="font-size: 13px;"&gt;With all the news lately about &lt;a href="http://geekshuiliving.com/2010/08/11/google-verizon-plans-net-neutrality/"&gt;Google's apparent deal with Verizon and what it may mean for net neutrality&lt;/a&gt;, it can be hard to remember Google's informal motto of "&lt;a href="http://investor.google.com/corporate/code-of-conduct.html"&gt;Don't Be Evil&lt;/a&gt;," or just hard to believe that it actually means something. &amp;nbsp;There have been &lt;a href="http://en.wikipedia.org/wiki/Don't_be_evil#Controversy"&gt;issues&amp;nbsp;with Google not always following through with this motto&lt;/a&gt;&amp;nbsp;to the satisfaction of many in the past, but that is beside the point. &amp;nbsp;No company is perfect, and I'm not here to defend Google on other issues or to criticize them, all I want to do is praise a team in Google that I see to be doing something good for the internet.&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;
&lt;span class="Apple-style-span" style="font-family: Arial; font-size: small;"&gt;&lt;span class="Apple-style-span" style="font-size: 13px;"&gt;&lt;br /&gt;
&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;
&lt;div&gt;&lt;span class="Apple-style-span" style="font-family: Arial; font-size: 13px;"&gt;In 2007, an internal engineering team at Google named itself "the Data Liberation Front." &amp;nbsp;Their goal is to make&lt;/span&gt;&lt;span class="Apple-style-span" style="font-family: Arial; font-size: 13px;"&gt;&amp;nbsp;it easier for users to retain control of their data. &amp;nbsp;They do this by creating ways for users to easily backup their data from Google services and also to remove it from these services.&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-style-span" style="font-family: Arial; font-size: 13px;"&gt;&lt;br /&gt;
&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-style-span" style="font-family: Arial; font-size: small;"&gt;&lt;span class="Apple-style-span" style="font-size: 13px;"&gt;The argument for users retaining control over their own data is one that has been a rather large issue over the past few years. &amp;nbsp;Groups advocating privacy and internet user rights have complained against Facebook and other companies for their stances on data ownership or users not being able to satisfactorily remove their data from the offending company's servers.&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-style-span" style="font-family: Arial; font-size: small;"&gt;&lt;span class="Apple-style-span" style="font-size: 13px;"&gt;&lt;br /&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-style-span" style="font-family: Arial; font-size: small;"&gt;&lt;span class="Apple-style-span" style="font-size: 13px;"&gt;Even Google has been in the&amp;nbsp;cross-hairs&amp;nbsp;before on the amount personal data they collect from users, store, and use for advertising purposes. The Data Liberation Front is a refreshing change from all of this though, on their homepage, you can find their mission statement easily visible in large red letters:&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-style-span" style="font-family: Arial; font-size: small;"&gt;&lt;span class="Apple-style-span" style="font-size: 13px;"&gt;&lt;br /&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;div style="text-align: center;"&gt;&lt;span class="Apple-style-span" style="font-family: Arial; font-size: small;"&gt;&lt;span class="Apple-style-span" style="font-size: 13px;"&gt;&lt;span class="Apple-style-span" style="color: red; font-family: arial; font-size: large; line-height: 16px;"&gt;Users should be able to control the data they store&amp;nbsp;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;div style="text-align: center;"&gt;&lt;span class="Apple-style-span" style="font-family: Arial; font-size: small;"&gt;&lt;span class="Apple-style-span" style="font-size: 13px;"&gt;&lt;span class="Apple-style-span" style="color: red; font-family: arial; font-size: large; line-height: 16px;"&gt;in any of Google's products. &amp;nbsp;Our team's goal is to&amp;nbsp;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;div style="text-align: center;"&gt;&lt;span class="Apple-style-span" style="font-family: Arial; font-size: small;"&gt;&lt;span class="Apple-style-span" style="font-size: 13px;"&gt;&lt;span class="Apple-style-span" style="color: red; font-family: arial; font-size: large; line-height: 16px;"&gt;make it easier to move data in and out.&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;div style="text-align: center;"&gt;&lt;span class="Apple-style-span" style="font-family: Arial; font-size: small;"&gt;&lt;span class="Apple-style-span" style="font-size: 13px;"&gt;&lt;span class="Apple-style-span" style="color: red; font-family: arial; font-size: large; line-height: 16px;"&gt;&lt;br /&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;div style="text-align: left;"&gt;&lt;span class="Apple-style-span" style="font-family: Arial; font-size: small;"&gt;&lt;span class="Apple-style-span" style="font-size: 13px;"&gt;They admit that they haven't perfected this on all the Google services, but they are working on it. &amp;nbsp;On the site you can also find a &lt;a href="http://www.dataliberation.org/google"&gt;list of products they have already worked on allowing you to liberate your data&lt;/a&gt;. &amp;nbsp;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;div style="text-align: left;"&gt;&lt;span class="Apple-style-span" style="font-family: Arial; font-size: small;"&gt;&lt;span class="Apple-style-span" style="font-size: 13px;"&gt;&lt;br /&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;div style="text-align: left;"&gt;&lt;span class="Apple-style-span" style="font-family: Arial; font-size: small;"&gt;&lt;span class="Apple-style-span" style="font-size: 13px;"&gt;I'm a big fan of what this team is doing, and though I realize they have been around for a few years and this is in no way new news, I wanted to mention them here in order to spread the word.&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;
&lt;span class="Apple-style-span" style="font-family: Arial; font-size: small;"&gt;&lt;span class="Apple-style-span" style="font-size: 13px;"&gt;&lt;br /&gt;
&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;
&lt;span class="Apple-style-span" style="font-family: Arial; font-size: small;"&gt;&lt;span class="Apple-style-span" style="font-size: 13px;"&gt;Also, everyone likes stickers (at least, I know I do, my laptops are covered in them). &amp;nbsp;The Data Liberation project currently has a way you can show your support for them, and that is by proudly displaying &lt;a href="http://dataliberation.blogspot.com/2010/01/stickers-from-data-liberation-farms.html"&gt;Stickers from Data Liberation Farms&lt;/a&gt;&amp;nbsp;(which you can get for free!). &amp;nbsp;I&amp;nbsp;received&amp;nbsp;both of mine in the mail today:&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;
&lt;span class="Apple-style-span" style="font-family: Arial; font-size: small;"&gt;&lt;span class="Apple-style-span" style="font-size: 13px;"&gt;&lt;br /&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;div style="text-align: left;"&gt;&lt;/div&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://i792.photobucket.com/albums/yy208/sp0rus/PIC_0175.jpg" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" height="300" src="http://i792.photobucket.com/albums/yy208/sp0rus/PIC_0175.jpg" width="400" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;br /&gt;
&lt;/div&gt;&lt;div class="separator" style="clear: both; text-align: left;"&gt;As you can see, it also came with a surprise, a small sticker of the Data Liberation Front logo, which I've already put to work on my netbook:&lt;/div&gt;&lt;div class="separator" style="clear: both; text-align: left;"&gt;&lt;br /&gt;
&lt;/div&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://i792.photobucket.com/albums/yy208/sp0rus/PIC_0181.jpg" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" height="300" src="http://i792.photobucket.com/albums/yy208/sp0rus/PIC_0181.jpg" width="400" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;div class="separator" style="clear: both; text-align: left;"&gt;&lt;br /&gt;
&lt;/div&gt;You can find out more information about the Data Liberation Front on their website at&amp;nbsp;&lt;a href="http://www.dataliberation.org/google"&gt;http://www.dataliberation.org/&lt;/a&gt;. &amp;nbsp;Additionally, you can follow along with their mission at the &lt;a href="http://dataliberation.blogspot.com/"&gt;Data Liberation Blog&lt;/a&gt; or on Twitter at &lt;a href="http://twitter.com/dataliberation"&gt;@dataliberation&lt;/a&gt;.&lt;br /&gt;
&lt;div&gt;&lt;br /&gt;
&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-style-span" style="color: #333333; font-family: arial, helvetica, sans-serif; font-size: small;"&gt;&lt;span class="Apple-style-span" style="font-size: 12px;"&gt;&lt;br /&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/3744739760335943672-6781572761622650056?l=squaringcircles.blogspot.com' alt='' /&gt;&lt;/div&gt;
&lt;p&gt;&lt;a href="http://feedads.g.doubleclick.net/~a/JV3L-MRY2_CCZw1ML_cLMDDpS-M/0/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/JV3L-MRY2_CCZw1ML_cLMDDpS-M/0/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;br/&gt;
&lt;a href="http://feedads.g.doubleclick.net/~a/JV3L-MRY2_CCZw1ML_cLMDDpS-M/1/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/JV3L-MRY2_CCZw1ML_cLMDDpS-M/1/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;/p&gt;&lt;div class="feedflare"&gt;
&lt;a href="http://feeds.feedburner.com/~ff/SquaringCircles?a=2yl7GFE-Lp4:XjihDDQSrdM:yIl2AUoC8zA"&gt;&lt;img src="http://feeds.feedburner.com/~ff/SquaringCircles?d=yIl2AUoC8zA" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/SquaringCircles?a=2yl7GFE-Lp4:XjihDDQSrdM:V_sGLiPBpWU"&gt;&lt;img src="http://feeds.feedburner.com/~ff/SquaringCircles?i=2yl7GFE-Lp4:XjihDDQSrdM:V_sGLiPBpWU" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/SquaringCircles?a=2yl7GFE-Lp4:XjihDDQSrdM:gIN9vFwOqvQ"&gt;&lt;img src="http://feeds.feedburner.com/~ff/SquaringCircles?i=2yl7GFE-Lp4:XjihDDQSrdM:gIN9vFwOqvQ" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/SquaringCircles?a=2yl7GFE-Lp4:XjihDDQSrdM:7Q72WNTAKBA"&gt;&lt;img src="http://feeds.feedburner.com/~ff/SquaringCircles?d=7Q72WNTAKBA" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/SquaringCircles?a=2yl7GFE-Lp4:XjihDDQSrdM:qj6IDK7rITs"&gt;&lt;img src="http://feeds.feedburner.com/~ff/SquaringCircles?d=qj6IDK7rITs" border="0"&gt;&lt;/img&gt;&lt;/a&gt;
&lt;/div&gt;&lt;img src="http://feeds.feedburner.com/~r/SquaringCircles/~4/2yl7GFE-Lp4" height="1" width="1"/&gt;</description><link>http://feedproxy.google.com/~r/SquaringCircles/~3/2yl7GFE-Lp4/googles-data-liberation-front.html</link><author>noreply@blogger.com (sp0rus)</author><thr:total>0</thr:total><feedburner:origLink>http://squaringcircles.blogspot.com/2010/08/googles-data-liberation-front.html</feedburner:origLink></item><item><guid isPermaLink="false">tag:blogger.com,1999:blog-3744739760335943672.post-2764953862613815000</guid><pubDate>Tue, 10 Aug 2010 00:14:00 +0000</pubDate><atom:updated>2010-08-09T19:15:41.142-05:00</atom:updated><category domain="http://www.blogger.com/atom/ns#">news</category><category domain="http://www.blogger.com/atom/ns#">computer science</category><category domain="http://www.blogger.com/atom/ns#">math</category><title>Big Development in Computer Science</title><description>Since I claim that this blog has computer science as one of the topics I discuss here, I feel I'd be remiss to not discuss a very recent and interesting development in the computer science world.&lt;br /&gt;
&lt;br /&gt;
The are several problems in computer science that people are trying to solve all the time, many of these problems tie into mathematics or other areas. &amp;nbsp;Wikipedia has a good &lt;a href="http://en.wikipedia.org/wiki/List_of_unsolved_problems_in_computer_science"&gt;list&lt;/a&gt; of currently unsolved problems, with links to descriptions and more information for those interested.&lt;br /&gt;
&lt;br /&gt;
The problem of interest to this blog post is the first such problem mentioned on that page:&amp;nbsp;P = NP?&lt;br /&gt;
&lt;br /&gt;
AOL News has an article that I feel explains the problem much better than the Wikipedia page does for people who are not as fluent in their math as I'd like to be (you can find the complete article &lt;a href="http://www.aolnews.com/surge-desk/article/p-np-wtf-a-short-guide-to-understanding-vinay-deolalikars-mat/19586401"&gt;here&lt;/a&gt;). &amp;nbsp;Quoted from said article:&lt;br /&gt;
&lt;br /&gt;
&lt;blockquote&gt;Roughly, the mathematical problem asks if "questions exist whose answer can be quickly checked, but which require an impossibly long time to solve by any direct procedure," according to the Clay Mathematics Institute.&lt;/blockquote&gt;&lt;br /&gt;
This may not adequately describe the problem to you, but if you're interested in more information on the problem itself, I direct you again to the&amp;nbsp;&lt;a href="http://www.aolnews.com/surge-desk/article/p-np-wtf-a-short-guide-to-understanding-vinay-deolalikars-mat/19586401"&gt;article&lt;/a&gt;&amp;nbsp;and also to the Wikipedia page on&amp;nbsp;&lt;a href="http://en.wikipedia.org/wiki/P_and_NP"&gt;P versus NP&lt;/a&gt;.&lt;br /&gt;
&lt;br /&gt;
My reason for not explaining the problem better here is twofold. &amp;nbsp;First, I do not believe I can explain it better than those sites do. Second, my purpose for writing this is not to explain what the problem is, but to share a bit of news on the problem.&lt;br /&gt;
&lt;br /&gt;
Now that we have that out of the way, on to the news!&lt;br /&gt;
&lt;br /&gt;
On August 6th, e-mails were sent to several researchers from Dr. Vinay Deolalikar. &amp;nbsp;Dr. Deolalikar is the Principle Research Scientist at HP Labs. &amp;nbsp;In this e-mail, he explained to his fellow researchers that he has found a solution to this problem, and also shared with them his findings in a paper.&lt;br /&gt;
&lt;br /&gt;
This paper was leaked onto the web, in pdf form (can be found &lt;a href="http://www.win.tue.nl/~gwoegi/P-versus-NP/Deolalikar.pdf"&gt;here&lt;/a&gt;). &amp;nbsp;The 66 page document has been shared across the internet by now, but is not the end of the story. &amp;nbsp;Today, Dr. Deolalikar released a longer, updated form of the paper (102 pages, &lt;a href="http://www.hpl.hp.com/personal/Vinay_Deolalikar/Papers/pnp_updated.pdf"&gt;here&lt;/a&gt;). &amp;nbsp;He has also stated that the final form of the paper is still under work, and will be released shortly.&lt;br /&gt;
&lt;br /&gt;
This may not sound like such a big deal to some of you, but I assure you, this may be the most important computer science problem currently, and if this answers the problem, it is an amazing piece of research. &amp;nbsp;The P vs. NP problem is one of the &lt;a href="http://www.claymath.org/millennium/"&gt;Millennium Problems&lt;/a&gt;&amp;nbsp;and solving it has a prize of $1,000,000. &amp;nbsp;Yes, one million dollars to whoever solves this problem, or any of the other Millennium Problems, it is that big of a find.&lt;br /&gt;
&lt;br /&gt;
Currently it can be assumed that hundreds, if not thousands, of mathematicians and computer scientists, professional and armchair alike, are poring over the paper looking to see if there are any issues with it and to determine if it is correct. &amp;nbsp;I for one find it way over my head, as I had to pull out a dictionary during the first paragraph of the abstract, but I still find it exciting that a solution may have been found.&lt;br /&gt;
&lt;br /&gt;
&lt;b&gt;&lt;span class="Apple-style-span" style="font-size: x-large;"&gt;Links&lt;/span&gt;&lt;/b&gt;&lt;br /&gt;
&lt;br /&gt;
&lt;a href="http://www.hpl.hp.com/personal/Vinay_Deolalikar/"&gt;HP Labs: Vinay Deolalikar&lt;/a&gt;&lt;br /&gt;
&lt;a href="http://www.aolnews.com/surge-desk/article/p-np-wtf-a-short-guide-to-understanding-vinay-deolalikars-mat/19586401"&gt;AOL News: P=NP=WTF?: A Short Guide to Understanding Vinay Deolalikar's Mathematical Breakthrough&lt;/a&gt;&lt;br /&gt;
&lt;a href="http://gregbaker.ca/blog/2010/08/07/p-n-np/"&gt;Greg and Kat's Blog: P ≠ NP&lt;/a&gt;&lt;br /&gt;
&lt;a href="http://www.win.tue.nl/~gwoegi/P-versus-NP.htm"&gt;The P Versus NP Page&lt;/a&gt;&lt;br /&gt;
&lt;a href="http://en.wikipedia.org/wiki/P_and_NP"&gt;Wikipedia: P and NP&lt;/a&gt;&lt;br /&gt;
&lt;a href="http://www.claymath.org/millennium/"&gt;The Millennium Prize Problems&lt;/a&gt;&lt;br /&gt;
&lt;br /&gt;
&lt;a href="http://www.win.tue.nl/~gwoegi/P-versus-NP/Deolalikar.pdf"&gt;The Early, Leaked Version of the Paper (66 pages)&lt;/a&gt;&lt;br /&gt;
&lt;a href="http://www.hpl.hp.com/personal/Vinay_Deolalikar/Papers/pnp_updated.pdf"&gt;Updated Version of Paper (102 pages)&lt;/a&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/3744739760335943672-2764953862613815000?l=squaringcircles.blogspot.com' alt='' /&gt;&lt;/div&gt;
&lt;p&gt;&lt;a href="http://feedads.g.doubleclick.net/~a/bDQwfI4QaHXduARSVS-u9pJS0uk/0/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/bDQwfI4QaHXduARSVS-u9pJS0uk/0/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;br/&gt;
&lt;a href="http://feedads.g.doubleclick.net/~a/bDQwfI4QaHXduARSVS-u9pJS0uk/1/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/bDQwfI4QaHXduARSVS-u9pJS0uk/1/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;/p&gt;&lt;div class="feedflare"&gt;
&lt;a href="http://feeds.feedburner.com/~ff/SquaringCircles?a=77bcxSszcIM:DMcgR_NoGdo:yIl2AUoC8zA"&gt;&lt;img src="http://feeds.feedburner.com/~ff/SquaringCircles?d=yIl2AUoC8zA" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/SquaringCircles?a=77bcxSszcIM:DMcgR_NoGdo:V_sGLiPBpWU"&gt;&lt;img src="http://feeds.feedburner.com/~ff/SquaringCircles?i=77bcxSszcIM:DMcgR_NoGdo:V_sGLiPBpWU" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/SquaringCircles?a=77bcxSszcIM:DMcgR_NoGdo:gIN9vFwOqvQ"&gt;&lt;img src="http://feeds.feedburner.com/~ff/SquaringCircles?i=77bcxSszcIM:DMcgR_NoGdo:gIN9vFwOqvQ" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/SquaringCircles?a=77bcxSszcIM:DMcgR_NoGdo:7Q72WNTAKBA"&gt;&lt;img src="http://feeds.feedburner.com/~ff/SquaringCircles?d=7Q72WNTAKBA" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/SquaringCircles?a=77bcxSszcIM:DMcgR_NoGdo:qj6IDK7rITs"&gt;&lt;img src="http://feeds.feedburner.com/~ff/SquaringCircles?d=qj6IDK7rITs" border="0"&gt;&lt;/img&gt;&lt;/a&gt;
&lt;/div&gt;&lt;img src="http://feeds.feedburner.com/~r/SquaringCircles/~4/77bcxSszcIM" height="1" width="1"/&gt;</description><link>http://feedproxy.google.com/~r/SquaringCircles/~3/77bcxSszcIM/big-development-in-computer-science-and.html</link><author>noreply@blogger.com (sp0rus)</author><thr:total>0</thr:total><feedburner:origLink>http://squaringcircles.blogspot.com/2010/08/big-development-in-computer-science-and.html</feedburner:origLink></item><item><guid isPermaLink="false">tag:blogger.com,1999:blog-3744739760335943672.post-1260106566149311387</guid><pubDate>Mon, 09 Aug 2010 23:26:00 +0000</pubDate><atom:updated>2010-08-09T18:26:06.529-05:00</atom:updated><category domain="http://www.blogger.com/atom/ns#">news</category><category domain="http://www.blogger.com/atom/ns#">goldfish</category><category domain="http://www.blogger.com/atom/ns#">fishcam</category><category domain="http://www.blogger.com/atom/ns#">aquarium</category><title>Aquarium Update</title><description>&lt;div class="separator" style="clear: both; text-align: left;"&gt;For the past month or so I've been having a small problem in my aquarium. &amp;nbsp;All my plants have been dying. &amp;nbsp;I had about 12 small plants in the aquarium, not I'm down to one healthy plant and one that is on it's way out.&lt;/div&gt;&lt;div class="separator" style="clear: both; text-align: left;"&gt;&lt;br /&gt;
&lt;/div&gt;&lt;div class="separator" style="clear: both; text-align: left;"&gt;I have clay mixed in with the rocks to provide essential minerals to the plants, and I've even bought some liquid plant fertilizer for use in aquariums, nothing seems to be helping. &amp;nbsp;The only thing I can think of is that the water is colder than what the temperature should be for these plants.&lt;/div&gt;&lt;div class="separator" style="clear: both; text-align: left;"&gt;&lt;br /&gt;
&lt;/div&gt;&lt;div class="separator" style="clear: both; text-align: left;"&gt;If that is the case, the only choice I have to save the plants would be to add a heater to the tank. &amp;nbsp;I do have a heater, but with goldfish being cold water fish, this is not ideal. &amp;nbsp;Right now I just plan on buying new plants when I have the time and money to do so, as they weren't completely necessary for my water quality anyways. &amp;nbsp;My aquarium just looks a little bare now without them.&lt;/div&gt;&lt;div class="separator" style="clear: both; text-align: left;"&gt;&lt;br /&gt;
&lt;/div&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://i792.photobucket.com/albums/yy208/sp0rus/goldfish/matcha.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" height="162" src="http://i792.photobucket.com/albums/yy208/sp0rus/goldfish/matcha.png" width="320" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;br /&gt;
&lt;/div&gt;&lt;div class="separator" style="clear: both; text-align: left;"&gt;In other aquarium related news, the &lt;a href="http://squaringcircles.blogspot.com/p/fishcam.html"&gt;fishcam&lt;/a&gt; has been down for quite a while now. &amp;nbsp;The reason for this is that I've been using the laptop that normally just hosts the feed for some other work, requiring it to be away from the aquarium. &amp;nbsp;I should have the camera back up and operational very soon.&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/3744739760335943672-1260106566149311387?l=squaringcircles.blogspot.com' alt='' /&gt;&lt;/div&gt;
&lt;p&gt;&lt;a href="http://feedads.g.doubleclick.net/~a/_uOnJS_4mD_HPQ1ai1cePi1d0b8/0/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/_uOnJS_4mD_HPQ1ai1cePi1d0b8/0/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;br/&gt;
&lt;a href="http://feedads.g.doubleclick.net/~a/_uOnJS_4mD_HPQ1ai1cePi1d0b8/1/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/_uOnJS_4mD_HPQ1ai1cePi1d0b8/1/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;/p&gt;&lt;div class="feedflare"&gt;
&lt;a href="http://feeds.feedburner.com/~ff/SquaringCircles?a=UBnKMZBXnDw:pG62rsgG8gU:yIl2AUoC8zA"&gt;&lt;img src="http://feeds.feedburner.com/~ff/SquaringCircles?d=yIl2AUoC8zA" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/SquaringCircles?a=UBnKMZBXnDw:pG62rsgG8gU:V_sGLiPBpWU"&gt;&lt;img src="http://feeds.feedburner.com/~ff/SquaringCircles?i=UBnKMZBXnDw:pG62rsgG8gU:V_sGLiPBpWU" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/SquaringCircles?a=UBnKMZBXnDw:pG62rsgG8gU:gIN9vFwOqvQ"&gt;&lt;img src="http://feeds.feedburner.com/~ff/SquaringCircles?i=UBnKMZBXnDw:pG62rsgG8gU:gIN9vFwOqvQ" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/SquaringCircles?a=UBnKMZBXnDw:pG62rsgG8gU:7Q72WNTAKBA"&gt;&lt;img src="http://feeds.feedburner.com/~ff/SquaringCircles?d=7Q72WNTAKBA" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/SquaringCircles?a=UBnKMZBXnDw:pG62rsgG8gU:qj6IDK7rITs"&gt;&lt;img src="http://feeds.feedburner.com/~ff/SquaringCircles?d=qj6IDK7rITs" border="0"&gt;&lt;/img&gt;&lt;/a&gt;
&lt;/div&gt;&lt;img src="http://feeds.feedburner.com/~r/SquaringCircles/~4/UBnKMZBXnDw" height="1" width="1"/&gt;</description><link>http://feedproxy.google.com/~r/SquaringCircles/~3/UBnKMZBXnDw/aquarium-update.html</link><author>noreply@blogger.com (sp0rus)</author><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="http://i792.photobucket.com/albums/yy208/sp0rus/goldfish/th_matcha.png" height="72" width="72" /><thr:total>0</thr:total><feedburner:origLink>http://squaringcircles.blogspot.com/2010/08/aquarium-update.html</feedburner:origLink></item><item><guid isPermaLink="false">tag:blogger.com,1999:blog-3744739760335943672.post-6408254357339799511</guid><pubDate>Fri, 06 Aug 2010 23:36:00 +0000</pubDate><atom:updated>2010-08-06T18:36:39.170-05:00</atom:updated><category domain="http://www.blogger.com/atom/ns#">projects</category><category domain="http://www.blogger.com/atom/ns#">high performance computing</category><category domain="http://www.blogger.com/atom/ns#">plans</category><category domain="http://www.blogger.com/atom/ns#">musings</category><category domain="http://www.blogger.com/atom/ns#">coding</category><title>Supercomputing and Some Updates</title><description>&lt;div style="text-align: left;"&gt;Supercomputing, Cluster Computing, and Grid Computing.&amp;nbsp;These are all topics I have been interested in for quite some time, though I've never done any actual work on the topics, just some casual browsing for information and ogling pictures of different setups.&lt;/div&gt;&lt;div style="text-align: left;"&gt;&lt;br /&gt;
&lt;/div&gt;&lt;div style="text-align: left;"&gt;Lately I've had my interest in these topics rekindled, and now I actually have the knowledge and means to play around with all of them. &amp;nbsp;Granted, I don't have the means ($$$) to play in these areas to the extent I would like to, but I can dabble nonetheless.&lt;/div&gt;&lt;div style="text-align: left;"&gt;&lt;br /&gt;
&lt;/div&gt;&lt;div style="text-align: left;"&gt;Over the next few weeks and months I'll be doing some small scale experiments with different High Performance Computing (HPC) models. &amp;nbsp;Expect to see a few write-ups and updates here as I do this.&lt;/div&gt;&lt;div style="text-align: left;"&gt;&lt;br /&gt;
&lt;/div&gt;&lt;div style="text-align: left;"&gt;Now, onto some updates. &amp;nbsp;&lt;/div&gt;&lt;div style="text-align: left;"&gt;&lt;br /&gt;
&lt;/div&gt;&lt;div style="text-align: left;"&gt;I've been taking classes for most of the summer, and when not in class, I've been enjoying my time off. &amp;nbsp;Due to this, I've been extremely busy, and haven't had time to update this blog as much as I wanted to. &amp;nbsp;I don't want to be one of those bloggers who apologizes constantly for not updating, so I'm not going to apologize. &amp;nbsp;If you want me to update more often, bug me about it, otherwise, deal with it.&lt;/div&gt;&lt;div style="text-align: left;"&gt;&lt;br /&gt;
&lt;/div&gt;&lt;div style="text-align: left;"&gt;Another area I've been spending some time playing around in is different programming languages. &amp;nbsp;Back in the day (I love sounding old), I dabbled in PHP in addition to writing HTML and CSS by hand. &amp;nbsp;It's been a couple years, and lots of things have changed in all these areas. &amp;nbsp;These past few weeks I've been doing some basic work in more languages than just Java (what my classes have been on during the past year). &amp;nbsp;I believe I'm falling in love with programming in Scala, so expect me to post some tidbits (you'll see this word again in a minute!) on these different languages as I work my way through learning them.&lt;/div&gt;&lt;div style="text-align: left;"&gt;&lt;br /&gt;
&lt;/div&gt;&lt;div style="text-align: left;"&gt;In other news, my friend, &lt;a href="http://twitter.com/ILikeAlfredo"&gt;Miranda&lt;/a&gt;, over at &lt;a href="http://tidbitsforyourwits.blogspot.com/"&gt;Tidbits for Your Wits&lt;/a&gt; (She changes this name way too often, so if the link breaks, sorry. &amp;nbsp;She's promised not to change it again though.) has moved to an updating everyday system of posting. &amp;nbsp;Not to be left in the dust, I'm going to be moving to a posting at least once a week system, as opposed to my current "post when I feel like it" system of blogging.&lt;/div&gt;&lt;div style="text-align: left;"&gt;&lt;br /&gt;
&lt;/div&gt;&lt;div style="text-align: left;"&gt;I've also added a new section to the sidebar, called "Currently Reading." &amp;nbsp;This new feature is going to show to everyone (you guessed it) what I'm currently reading. &amp;nbsp;I'll try to update it as soon as I move on to a new book (or books), but it is bound to fall behind from time to time. &amp;nbsp;At the end of each book, I'll think about posting a review, if I feel like it.&lt;/div&gt;&lt;div style="text-align: left;"&gt;&lt;br /&gt;
&lt;/div&gt;&lt;div style="text-align: left;"&gt;That's about it, look forward to you all reading my stuff in the near future.&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/3744739760335943672-6408254357339799511?l=squaringcircles.blogspot.com' alt='' /&gt;&lt;/div&gt;
&lt;p&gt;&lt;a href="http://feedads.g.doubleclick.net/~a/S2NS6a8e3u1tUDL-wbvah5pBYvs/0/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/S2NS6a8e3u1tUDL-wbvah5pBYvs/0/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;br/&gt;
&lt;a href="http://feedads.g.doubleclick.net/~a/S2NS6a8e3u1tUDL-wbvah5pBYvs/1/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/S2NS6a8e3u1tUDL-wbvah5pBYvs/1/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;/p&gt;&lt;div class="feedflare"&gt;
&lt;a href="http://feeds.feedburner.com/~ff/SquaringCircles?a=ZnWVavhN-3s:K7bJ9meC9DM:yIl2AUoC8zA"&gt;&lt;img src="http://feeds.feedburner.com/~ff/SquaringCircles?d=yIl2AUoC8zA" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/SquaringCircles?a=ZnWVavhN-3s:K7bJ9meC9DM:V_sGLiPBpWU"&gt;&lt;img src="http://feeds.feedburner.com/~ff/SquaringCircles?i=ZnWVavhN-3s:K7bJ9meC9DM:V_sGLiPBpWU" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/SquaringCircles?a=ZnWVavhN-3s:K7bJ9meC9DM:gIN9vFwOqvQ"&gt;&lt;img src="http://feeds.feedburner.com/~ff/SquaringCircles?i=ZnWVavhN-3s:K7bJ9meC9DM:gIN9vFwOqvQ" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/SquaringCircles?a=ZnWVavhN-3s:K7bJ9meC9DM:7Q72WNTAKBA"&gt;&lt;img src="http://feeds.feedburner.com/~ff/SquaringCircles?d=7Q72WNTAKBA" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/SquaringCircles?a=ZnWVavhN-3s:K7bJ9meC9DM:qj6IDK7rITs"&gt;&lt;img src="http://feeds.feedburner.com/~ff/SquaringCircles?d=qj6IDK7rITs" border="0"&gt;&lt;/img&gt;&lt;/a&gt;
&lt;/div&gt;&lt;img src="http://feeds.feedburner.com/~r/SquaringCircles/~4/ZnWVavhN-3s" height="1" width="1"/&gt;</description><link>http://feedproxy.google.com/~r/SquaringCircles/~3/ZnWVavhN-3s/supercomputing-and-some-updates.html</link><author>noreply@blogger.com (sp0rus)</author><thr:total>0</thr:total><feedburner:origLink>http://squaringcircles.blogspot.com/2010/08/supercomputing-and-some-updates.html</feedburner:origLink></item><item><guid isPermaLink="false">tag:blogger.com,1999:blog-3744739760335943672.post-8956803818098123883</guid><pubDate>Tue, 20 Jul 2010 03:11:00 +0000</pubDate><atom:updated>2010-07-19T22:11:46.676-05:00</atom:updated><category domain="http://www.blogger.com/atom/ns#">random</category><title>Possibly the Most Epic/Crazy/Awesome/Bad Spam Message Ever</title><description>&lt;div style="margin-bottom: 0in;"&gt;Received this e-mail today. &amp;nbsp;As soon as I read it, I knew it had to be shared with everyone. Enjoy :) &lt;/div&gt;&lt;div style="margin-bottom: 0in;"&gt;&lt;br /&gt;
&lt;/div&gt;&lt;div style="margin-bottom: 0in;"&gt;  &lt;/div&gt;&lt;div style="margin-bottom: 0in;"&gt;  &lt;/div&gt;&lt;div style="margin-bottom: 0in;"&gt;By the way, my favorite part is how "Mr. Page" apparently refers to himself.  &lt;/div&gt;&lt;div style="margin-bottom: 0in;"&gt;  &lt;/div&gt;&lt;div style="margin-bottom: 0in;"&gt;&lt;br /&gt;
&lt;/div&gt;&lt;div style="margin-bottom: 0in;"&gt;  &lt;/div&gt;&lt;div style="margin-bottom: 0in;"&gt;  &lt;/div&gt;&lt;div style="margin-bottom: 0in;"&gt;If any spam baiters want the e-mail address, @ reply me on &lt;a href="http://www.twitter.com/jmstitt"&gt;twitter&lt;/a&gt;.&lt;/div&gt;&lt;div style="margin-bottom: 0in;"&gt;&lt;br /&gt;
&lt;/div&gt;&lt;div style="margin-bottom: 0in;"&gt;From: UNITED NATIONS ORGANIZATION&lt;/div&gt;&lt;div style="margin-bottom: 0in;"&gt;Subject: CONGRATULATION !!! CASH GRANT WINNER.&lt;/div&gt;&lt;div style="margin-bottom: 0in;"&gt;&lt;/div&gt;&lt;a name='more'&gt;&lt;/a&gt;&lt;br /&gt;
&lt;br /&gt;
&lt;div style="margin-bottom: 0in;"&gt;(INTERNATIONAL FUNDS TRANSFER / AUDIT UNIT)  &lt;/div&gt;&lt;div style="margin-bottom: 0in;"&gt;UNITED NATIONS  &lt;/div&gt;&lt;div style="margin-bottom: 0in;"&gt;(WORLD BANK ASSISTED PROGRAMME)  &lt;/div&gt;&lt;div style="margin-bottom: 0in;"&gt;DIRECTORATE OF INTERNATIONAL PAYMENT AND TRANSFERS.  &lt;/div&gt;&lt;div style="margin-bottom: 0in;"&gt;UNITED NATIONS OFFICIAL MAIL.  &lt;/div&gt;&lt;div style="margin-bottom: 0in;"&gt;&lt;br /&gt;
&lt;/div&gt;&lt;div style="margin-bottom: 0in;"&gt;ATTN: CASH GRANT WINNER ($5,000.000.00 USD).  &lt;/div&gt;&lt;div style="margin-bottom: 0in;"&gt;  &lt;/div&gt;&lt;div style="margin-bottom: 0in;"&gt;THIS IS TO ACKNOWLEDGE THE RECEIPT OF THE ORDER FROM THE UNITED NATIONS OF NEW YORK UNITED STATES OF AMERICA ,IN RESPECT WITH THE PROVISION ACT OF &lt;b&gt;DECREE 114 OF THE 1999 CONSTITUTION, OF THE UNITED STATES OF AMERICA&lt;/b&gt; .I AM DIRECTED TO INFORM YOU THAT YOUR PAYMENT VERIFICATION AND CONFIRMATION HAS BEEN CONFIRMED VALID. THEREFORE, WE ARE HAPPY TO INFORM YOU THAT ARRANGEMENTS HAVE BEEN CONCLUDED TO EFFECT YOUR PAYMENT AS SOON AS POSSIBLE AND IN OUR BID TO TRANSPARENCY.  &lt;/div&gt;&lt;div style="margin-bottom: 0in;"&gt;  &lt;/div&gt;&lt;div style="margin-bottom: 0in;"&gt;THIS LATEST WIN CONTINUES THE NATION'S AMAZING RUN OF LUCK WITH BIG DOLLAR MILLION WINNERS. THE  WIN COMES A MONTH AFTER NIGEL PAGE AND JUSTINE LAYCOCK WON A RECORD-BREAKING US$56 MILLION IN THE SAME DRAW. &lt;b&gt;MR. PAGE,A SELF CONFESSED "WHITE VAN MAN",CELEBRATED &lt;/b&gt;&lt;span style="font-weight: normal;"&gt;UNITED NATIONS ORGANIZATION BIGGEST LOTTERY&lt;/span&gt;&lt;b&gt; WIN WITH A BACON ROLL. &lt;/b&gt; &lt;/div&gt;&lt;div style="margin-bottom: 0in;"&gt;  &lt;/div&gt;&lt;div style="margin-bottom: 0in;"&gt;THE ONLINE DRAWS WAS CONDUCTED BY A RANDOM SELECTION OF EMAIL ADDRESSES FROM AN EXCLUSIVE LIST OF 2,900,031 E-MAIL ADDRESSES OF INDIVIDUALS AND CORPORATE BODIES PICKED BY AN ADVANCED AUTOMATED RANDOM COMPUTER SEARCH FROM THE INTERNET. HOWEVER,NO TICKETS WERE SOLD BUT ALL EMAIL ADDRESSES WERE ASSIGNED TO DIFFERENT TICKET NUMBERS FOR REPRESENTATION AND PRIVACY.  &lt;/div&gt;&lt;div style="margin-bottom: 0in;"&gt;  &lt;/div&gt;&lt;div style="margin-bottom: 0in;"&gt;THE SELECTION PROCESS WAS CARRIED OUT THROUGH RANDOM SELECTION IN OUR COMPUTERIZED EMAIL SELECTION MACHINE (TOPAZ) FROM A DATABASE OF OVER 25,000,000 EMAIL ADDRESSES DRAWN FROM ALL THE CONTINENTS OF THE WORLD,WHICH DREW LUCKY NUMBERS :18, 37, 8, 16 AND 43 WITH THE LUCKY STAR NUMBERS : 2 AND 6 WHICH CONSEQUENTLY WON US$5,000,000 DOLLARS IN THE "B" CATEGORY.  &lt;/div&gt;&lt;div style="margin-bottom: 0in;"&gt;  &lt;/div&gt;&lt;div style="margin-bottom: 0in;"&gt;IT IS MY PLEASURE TO INFORM YOU THAT YOUR ATM CARD NUMBER; &lt;some number,="" random="" removed=""&gt; HAVE BEEN APPROVED IN YOUR FAVOR. YOUR PERSONAL IDENTIFICATION NUMBER CODE (ATM PIN CODE) WILL BE SENT TO YOUR EMAIL ADDRESS AND YOU CAN AS WELL CHANGE IT IMMEDIATELY AS SOON AS YOU RECEIVE THE ATM CARD.THE ATM CARD VALUE IS US$5,000.000.00 DOLLARS ONLY. YOU ARE ADVISED THAT A MAXIMUM WITHDRAWAL VALUE OF $1,500.00 USD IS PERMITTED ON WITHDRAWAL PER DAY. YOUR ATM CARD IS AN"INTER SWITCH ATM CARD, AND THIS MEANS THAT YOU CAN MAKE WITHDRAWAL IN ANY ATM LOCATION AND ATM CENTER OF YOUR CHOICE ANYWHERE IN THE WORLD. BUT YOUR WITHDRAWAL LIMIT STILL REMAINS $1,500.00 USD, OR IT'S EQUIVALENT IN YOUR LOCAL CURRENCY.  &lt;/some&gt;&lt;/div&gt;&lt;div style="margin-bottom: 0in;"&gt;  &lt;/div&gt;&lt;div style="margin-bottom: 0in;"&gt; TO ENABLE US RELEASE YOUR ATM CARD TO YOU, WE HAVE CONCLUDED DELIVERY ARRANGEMENT WITH GLOBAL SPEED COURIER SERVICES UNITED STATES OF AMERICA ,BECAUSE THEY ARE AFFILIATED TO ONE OF THE LARGEST INSURANCE COMPANIES HERE IN UNITED STATES OF AMERICA ,"NICON INSURANCE CORPORATION. YOUR ATM CARD HAS BEEN INSURED BY THE GLOBAL SPEED COURIER SERVICES UNITED STATES, FROM THE NICON INSURANCE CORPORATION, INCASE OF LOSS OF THEFT. PLEASE UNDERSTAND THAT THESE ARE STANDARD PROCEDURES IN ORDER TO ENSURE TRANSPARENCY.  &lt;/div&gt;&lt;div style="margin-bottom: 0in;"&gt;  &lt;/div&gt;&lt;div style="margin-bottom: 0in;"&gt;PLEASE ENSURE THAT YOU RE-CONFIRM THE FOLLOWINGS FOR PROPER DOCUMENTATION OF WINNING GRANT DOCUMENTS:  &lt;/div&gt;&lt;div style="margin-bottom: 0in;"&gt;  &lt;/div&gt;&lt;ol&gt;&lt;li&gt;&lt;div style="margin-bottom: 0in;"&gt;YOUR FULL NAMES  :&lt;/div&gt;&lt;/li&gt;
&lt;/ol&gt;&lt;ol start="2"&gt;&lt;li&gt;&lt;div style="margin-bottom: 0in;"&gt;YOUR DELIVERY ADDRESS :&lt;/div&gt;&lt;/li&gt;
&lt;/ol&gt;&lt;ol start="3"&gt;&lt;li&gt;&lt;div style="margin-bottom: 0in;"&gt;YOUR DIRECT PHONE/FAX NUMBERS :&lt;/div&gt;&lt;/li&gt;
&lt;/ol&gt;&lt;ol start="4"&gt;&lt;li&gt;&lt;div style="margin-bottom: 0in;"&gt;YOUR AGE/SEX :&lt;/div&gt;&lt;/li&gt;
&lt;/ol&gt;&lt;ol start="5"&gt;&lt;li&gt;&lt;div style="margin-bottom: 0in;"&gt;A COPY OF YOUR ID/INTERNATIONAL  PASSPORT:&lt;/div&gt;&lt;/li&gt;
&lt;/ol&gt;&lt;ol start="6"&gt;&lt;li&gt;&lt;div style="margin-bottom: 0in;"&gt;YOUR OCCUPATION :&lt;/div&gt;&lt;/li&gt;
&lt;li&gt;&lt;div style="margin-bottom: 0in;"&gt;7) YOUR NATIONALITY   &lt;/div&gt;&lt;/li&gt;
&lt;/ol&gt;&lt;div style="margin-bottom: 0in;"&gt;  &lt;/div&gt;&lt;div style="margin-bottom: 0in;"&gt;THE GLOBAL SPEED COURIER SERVICES WILL PROVIDE YOU WITH YOUR "TRACKING NUMBER" WHICH WILL ENABLE YOU KNOW THE EXACT DATE AND TIME OF DELIVERY TO THE ADDRESS YOU WILL BE PROVIDING TO US.   &lt;/div&gt;&lt;div style="margin-bottom: 0in;"&gt;  &lt;/div&gt;&lt;div style="margin-bottom: 0in;"&gt;FOR SECURITY REASONS,YOU ARE ADVICED TO KEEP YOUR WINING DETAILS CONFIDENTIAL UNTIL YOUR CLAIMS IS PROCESSED THROUGH THE RECONFIRMATION OF YOUR PERSONAL INFORMATION AS STATED ABOVE AND YOUR WINNING PRICE IN FORM OF AN ATM CARD THROUGH THE COURIER COMPANY THAT HAS BEEN ASSIGNED TO HAVE IT DELIVERED TO YOUR ADDRESS YOU WILL BE PROVIDING.  &lt;/div&gt;&lt;div style="margin-bottom: 0in;"&gt;THIS IS PART OF THE PRECAUTIONARY MEASURE TO AVOID DOUBLE CLAIMING  &lt;/div&gt;&lt;div style="margin-bottom: 0in;"&gt;AND UNWARRANTED ABUSE OF THIS PROGRAM BY MEMBERS OF THE PUBLIC.  &lt;/div&gt;&lt;div style="margin-bottom: 0in;"&gt;ONCE AGAIN WE SAY A BIG CONGRATULATIONS, TO YOU AS THIS WORLD WILL BE  &lt;/div&gt;&lt;div style="margin-bottom: 0in;"&gt;A BETTER PLACE TO LIVE IN THE NEXT 20 TO 25 YEARS, WITH POVERTY  &lt;/div&gt;&lt;div style="margin-bottom: 0in;"&gt;ERADICATED BY THEN..  &lt;/div&gt;&lt;div style="margin-bottom: 0in;"&gt;&lt;br /&gt;
&lt;/div&gt;&lt;div style="margin-bottom: 0in;"&gt;WE EXPECT YOUR URGENT RESPONSE TO THIS EMAIL TO ENABLE US MONITOR  &lt;/div&gt;&lt;div style="margin-bottom: 0in;"&gt;THIS PAYMENT EFFECTIVELY.  &lt;/div&gt;&lt;div style="margin-bottom: 0in;"&gt;  &lt;/div&gt;&lt;div style="margin-bottom: 0in;"&gt;CONGRATULATIONS!  &lt;/div&gt;&lt;div style="margin-bottom: 0in;"&gt;YOURS IN SERVICE  &lt;/div&gt;&lt;div style="margin-bottom: 0in;"&gt;  &lt;/div&gt;&lt;div style="margin-bottom: 0in;"&gt;MR. BAN KI-MOON,  &lt;/div&gt;&lt;div style="margin-bottom: 0in;"&gt;SECRETARY.  &lt;/div&gt;&lt;div style="margin-bottom: 0in;"&gt;UNITED NATIONS ORGANIZATION,  &lt;/div&gt;&lt;div style="margin-bottom: 0in;"&gt;NEW YORK.  &lt;/div&gt;&lt;div style="margin-bottom: 0in;"&gt;EMAIL:  &lt;removed&gt;&lt;/removed&gt;&lt;/div&gt;&lt;div style="margin-bottom: 0in;"&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/3744739760335943672-8956803818098123883?l=squaringcircles.blogspot.com' alt='' /&gt;&lt;/div&gt;
&lt;p&gt;&lt;a href="http://feedads.g.doubleclick.net/~a/GUT9Mg9VvaFTfLOHNozaKH2Yl8s/0/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/GUT9Mg9VvaFTfLOHNozaKH2Yl8s/0/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;br/&gt;
&lt;a href="http://feedads.g.doubleclick.net/~a/GUT9Mg9VvaFTfLOHNozaKH2Yl8s/1/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/GUT9Mg9VvaFTfLOHNozaKH2Yl8s/1/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;/p&gt;&lt;div class="feedflare"&gt;
&lt;a href="http://feeds.feedburner.com/~ff/SquaringCircles?a=DpLMJseCM9I:xh_f_ELdSMQ:yIl2AUoC8zA"&gt;&lt;img src="http://feeds.feedburner.com/~ff/SquaringCircles?d=yIl2AUoC8zA" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/SquaringCircles?a=DpLMJseCM9I:xh_f_ELdSMQ:V_sGLiPBpWU"&gt;&lt;img src="http://feeds.feedburner.com/~ff/SquaringCircles?i=DpLMJseCM9I:xh_f_ELdSMQ:V_sGLiPBpWU" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/SquaringCircles?a=DpLMJseCM9I:xh_f_ELdSMQ:gIN9vFwOqvQ"&gt;&lt;img src="http://feeds.feedburner.com/~ff/SquaringCircles?i=DpLMJseCM9I:xh_f_ELdSMQ:gIN9vFwOqvQ" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/SquaringCircles?a=DpLMJseCM9I:xh_f_ELdSMQ:7Q72WNTAKBA"&gt;&lt;img src="http://feeds.feedburner.com/~ff/SquaringCircles?d=7Q72WNTAKBA" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/SquaringCircles?a=DpLMJseCM9I:xh_f_ELdSMQ:qj6IDK7rITs"&gt;&lt;img src="http://feeds.feedburner.com/~ff/SquaringCircles?d=qj6IDK7rITs" border="0"&gt;&lt;/img&gt;&lt;/a&gt;
&lt;/div&gt;&lt;img src="http://feeds.feedburner.com/~r/SquaringCircles/~4/DpLMJseCM9I" height="1" width="1"/&gt;</description><link>http://feedproxy.google.com/~r/SquaringCircles/~3/DpLMJseCM9I/possibly-most-epiccrazyawesomebad-spam.html</link><author>noreply@blogger.com (sp0rus)</author><thr:total>1</thr:total><feedburner:origLink>http://squaringcircles.blogspot.com/2010/07/possibly-most-epiccrazyawesomebad-spam.html</feedburner:origLink></item><item><guid isPermaLink="false">tag:blogger.com,1999:blog-3744739760335943672.post-8616599644573041038</guid><pubDate>Mon, 05 Jul 2010 19:12:00 +0000</pubDate><atom:updated>2010-07-05T14:13:31.851-05:00</atom:updated><category domain="http://www.blogger.com/atom/ns#">video</category><title>Fourth of July Fireworks</title><description>Spent yesterday on campus hanging out with friends for the fourth of july. &amp;nbsp;The night ended (as Independance Days tend to) with a fireworks show. &amp;nbsp;I brought my video camera and tripod and caught the whole thing. &amp;nbsp;Even though I was lazy and kept the settings on auto, I think it turned out fairly well.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;object width="480" height="295"&gt;&lt;param name="movie" value="http://www.youtube.com/v/xA_i6i5p-Vs&amp;amp;hl=en_US&amp;amp;fs=1?hd=1"&gt;&lt;/param&gt;&lt;param name="allowFullScreen" value="true"&gt;&lt;/param&gt;&lt;param name="allowscriptaccess" value="always"&gt;&lt;/param&gt;&lt;embed src="http://www.youtube.com/v/xA_i6i5p-Vs&amp;amp;hl=en_US&amp;amp;fs=1?hd=1" type="application/x-shockwave-flash" allowscriptaccess="always" allowfullscreen="true" width="480" height="295"&gt;&lt;/embed&gt;&lt;/object&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/3744739760335943672-8616599644573041038?l=squaringcircles.blogspot.com' alt='' /&gt;&lt;/div&gt;
&lt;p&gt;&lt;a href="http://feedads.g.doubleclick.net/~a/Zw6AlODITZRDDqwJQQPddQ6at2o/0/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/Zw6AlODITZRDDqwJQQPddQ6at2o/0/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;br/&gt;
&lt;a href="http://feedads.g.doubleclick.net/~a/Zw6AlODITZRDDqwJQQPddQ6at2o/1/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/Zw6AlODITZRDDqwJQQPddQ6at2o/1/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;/p&gt;&lt;div class="feedflare"&gt;
&lt;a href="http://feeds.feedburner.com/~ff/SquaringCircles?a=wTEVe8ENQJc:WjRBNkg7GKA:yIl2AUoC8zA"&gt;&lt;img src="http://feeds.feedburner.com/~ff/SquaringCircles?d=yIl2AUoC8zA" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/SquaringCircles?a=wTEVe8ENQJc:WjRBNkg7GKA:V_sGLiPBpWU"&gt;&lt;img src="http://feeds.feedburner.com/~ff/SquaringCircles?i=wTEVe8ENQJc:WjRBNkg7GKA:V_sGLiPBpWU" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/SquaringCircles?a=wTEVe8ENQJc:WjRBNkg7GKA:gIN9vFwOqvQ"&gt;&lt;img src="http://feeds.feedburner.com/~ff/SquaringCircles?i=wTEVe8ENQJc:WjRBNkg7GKA:gIN9vFwOqvQ" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/SquaringCircles?a=wTEVe8ENQJc:WjRBNkg7GKA:7Q72WNTAKBA"&gt;&lt;img src="http://feeds.feedburner.com/~ff/SquaringCircles?d=7Q72WNTAKBA" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/SquaringCircles?a=wTEVe8ENQJc:WjRBNkg7GKA:qj6IDK7rITs"&gt;&lt;img src="http://feeds.feedburner.com/~ff/SquaringCircles?d=qj6IDK7rITs" border="0"&gt;&lt;/img&gt;&lt;/a&gt;
&lt;/div&gt;&lt;img src="http://feeds.feedburner.com/~r/SquaringCircles/~4/wTEVe8ENQJc" height="1" width="1"/&gt;</description><link>http://feedproxy.google.com/~r/SquaringCircles/~3/wTEVe8ENQJc/fourth-of-july-fireworks.html</link><author>noreply@blogger.com (sp0rus)</author><thr:total>0</thr:total><feedburner:origLink>http://squaringcircles.blogspot.com/2010/07/fourth-of-july-fireworks.html</feedburner:origLink></item><item><guid isPermaLink="false">tag:blogger.com,1999:blog-3744739760335943672.post-4711139596057026227</guid><pubDate>Fri, 21 May 2010 13:52:00 +0000</pubDate><atom:updated>2010-05-21T12:27:22.548-05:00</atom:updated><category domain="http://www.blogger.com/atom/ns#">news</category><category domain="http://www.blogger.com/atom/ns#">facebook</category><category domain="http://www.blogger.com/atom/ns#">privacy</category><title>Long Facebook "Page" Names: What Are They?</title><description>Yesterday  I began to notice what appeared to be fan pages with extremely long names that people had "liked" scattered throughout my news feed..  Now, I refrained from clicking the "like" button next to them, but many of my friends did not.  After the jump is an explanation of what exactly these are, and why I believe they could be a problem.&lt;br /&gt;
&lt;a name='more'&gt;&lt;/a&gt;&lt;br /&gt;
&lt;br /&gt;
At first, I, and many others believed these to just be fan or community pages that had just been created with very long names.  This thought bothered me, because it seemed to have first shown up on my news feed yesterday, and I was curious as to why such long page names had never appeared before.  Something about being able to create such a long page name felt like a potential avenue for abuse, and the possibility of crafting one that could cause problems for users (i.e. crafting it to contain you malicious code).  These issues have been found all over the web, where websites do not properly &lt;a href="http://www.google.com/search?sourceid=chrome&amp;amp;ie=UTF-8&amp;amp;q=sanitize+user+input"&gt;sanitize user input&lt;/a&gt; (allowing people to put code in places they shouldn't put code).&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
The issue seemed even worse to me when several people told me that when they clicked on the long names and instead of being sent to a page on the Facebook site, they were sent directly out to the web without warning.  Many told me they had clicked "like" on Facebook, then changed their minds and wanted to "unlike" the page, so they clicked the link and were unable to do so since they were not faced with what they expected.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
So, what exactly is going on here?  Has Facebook allowed people to insert HTML code into their page names?  Is there a new page setting so that it will send you directly to a page's official website?&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
The answer to these questions is no.  What appear to be "fan pages" on our news feeds are not fan pages at all.  After digging into this potential problem, I've found that these things are in fact people clicking Facebook's new "like button for the web" when on outside websites.  When this new feature for content creators was first introduced, many privacy advocates took issue with it from the start, because this allowed for the possibility of Facebook seeing more closely see what their users were doing around the web, and tie it all back to Facebook for advertising or any other purpose.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
So, the problem isn't people crafting special page names to send you to outside websites, it is just not a page on Facebook at all.  The problem remains, however, that these links do not give you the traditional warning message that the link you've clicked will take you to a site not run by Facebook.  I still believe that this can, and will, lead to abuse, as I have not seen any documentation on Facebook policing these links.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
I have no doubt that if people complained to Facebook that a page was sending people to a phishing site or malware they would remove the offending links and blacklist it (no documentation I've found yet on whether sites can be blacklisted from using the "like" button), but it seems that it could run until someone complains, leaving anyone who falls victim before the complaints to suffer the consequences.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Now, on my news feed, the majority of these links led to the GivesMeHope and OMG Facts websites, and the url shown when the links were hovered over clearly showed this, but I know that not everyone will check the url before they click the link, because we all like to assume that we aren't being sent somewhere malicious.  Since it has been shown time and time again that the internet actually does have people with bad intentions on it, I really do see this as a potential vector for abuse, and I believe Facebook should take some measures to help protect their users from this, before it becomes a problem.&lt;br /&gt;
&lt;div&gt;&lt;i&gt;&lt;br /&gt;
&lt;/i&gt;&lt;/div&gt;&lt;div&gt;&lt;i&gt;Update: I have contacted Facebook regarding the potential issues with this "feature."&lt;/i&gt;&lt;br /&gt;
&lt;i&gt;Update 2: Just read XKCD's comic for today, thought it fit pretty nicely. &amp;nbsp;Find it &lt;a href="http://xkcd.com/743/"&gt;here&lt;/a&gt;&lt;/i&gt;&lt;br /&gt;
&lt;i&gt;Update 3: &amp;nbsp;Facebook just got back to my e-mail. &amp;nbsp;Here is their reply:&lt;/i&gt;&lt;br /&gt;
&lt;blockquote&gt;&lt;i&gt;Hi John,&lt;br /&gt;
&lt;br /&gt;
Thanks for your email. We are sorry to hear that you are experiencing  these issues with our site. Unfortunately, we do not offer functionality  or technical support from this email alias. Please refer to our Help  Center for answers to common questions, solutions to technical issues,  and feedback from other Facebook users. You can reach the Help Center (&lt;/i&gt; &lt;a href="http://www.facebook.com/help.php" target="_blank"&gt;&lt;i&gt;http://www.facebook.com/help.&lt;wbr&gt;&lt;/wbr&gt;php&lt;/i&gt;&lt;/a&gt;&lt;i&gt;)  by selecting "Help" at the bottom of any Facebook page.&lt;br /&gt;
&lt;br /&gt;
Thanks for contacting Facebook,&lt;br /&gt;
&lt;br /&gt;
Guy&lt;br /&gt;
User Operations&lt;br /&gt;
Facebook&lt;/i&gt;&lt;/blockquote&gt;&lt;div style="text-align: center;"&gt;&lt;i&gt;Facebook fail&lt;/i&gt;&lt;/div&gt;&lt;br /&gt;
Links:&lt;br /&gt;
&lt;a href="http://developers.facebook.com/docs/reference/plugins/like"&gt;Facebook's Official "Like" Button Documentation&lt;/a&gt;&lt;br /&gt;
&lt;br /&gt;
&lt;a href="http://www.pcworld.com/article/194500/facebooks_like_button_what_we_know_so_far.html"&gt;PCWorld Article "Facebook's 'Like' Button: What We Know So Far"&lt;/a&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/3744739760335943672-4711139596057026227?l=squaringcircles.blogspot.com' alt='' /&gt;&lt;/div&gt;
&lt;p&gt;&lt;a href="http://feedads.g.doubleclick.net/~a/H-lTqUu4jv1Zu3cusRYtSQb9JDk/0/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/H-lTqUu4jv1Zu3cusRYtSQb9JDk/0/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;br/&gt;
&lt;a href="http://feedads.g.doubleclick.net/~a/H-lTqUu4jv1Zu3cusRYtSQb9JDk/1/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/H-lTqUu4jv1Zu3cusRYtSQb9JDk/1/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;/p&gt;&lt;div class="feedflare"&gt;
&lt;a href="http://feeds.feedburner.com/~ff/SquaringCircles?a=fxfCZmuaNzE:NgG0ACueTWU:yIl2AUoC8zA"&gt;&lt;img src="http://feeds.feedburner.com/~ff/SquaringCircles?d=yIl2AUoC8zA" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/SquaringCircles?a=fxfCZmuaNzE:NgG0ACueTWU:V_sGLiPBpWU"&gt;&lt;img src="http://feeds.feedburner.com/~ff/SquaringCircles?i=fxfCZmuaNzE:NgG0ACueTWU:V_sGLiPBpWU" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/SquaringCircles?a=fxfCZmuaNzE:NgG0ACueTWU:gIN9vFwOqvQ"&gt;&lt;img src="http://feeds.feedburner.com/~ff/SquaringCircles?i=fxfCZmuaNzE:NgG0ACueTWU:gIN9vFwOqvQ" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/SquaringCircles?a=fxfCZmuaNzE:NgG0ACueTWU:7Q72WNTAKBA"&gt;&lt;img src="http://feeds.feedburner.com/~ff/SquaringCircles?d=7Q72WNTAKBA" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/SquaringCircles?a=fxfCZmuaNzE:NgG0ACueTWU:qj6IDK7rITs"&gt;&lt;img src="http://feeds.feedburner.com/~ff/SquaringCircles?d=qj6IDK7rITs" border="0"&gt;&lt;/img&gt;&lt;/a&gt;
&lt;/div&gt;&lt;img src="http://feeds.feedburner.com/~r/SquaringCircles/~4/fxfCZmuaNzE" height="1" width="1"/&gt;</description><link>http://feedproxy.google.com/~r/SquaringCircles/~3/fxfCZmuaNzE/long-facebook-page-names-what-are-they.html</link><author>noreply@blogger.com (sp0rus)</author><thr:total>3</thr:total><feedburner:origLink>http://squaringcircles.blogspot.com/2010/05/long-facebook-page-names-what-are-they.html</feedburner:origLink></item></channel></rss>

