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

<channel>
	<title>St. John Johnson &#187; Blog</title>
	<atom:link href="http://www.stjohnjohnson.com/category/blog/feed" rel="self" type="application/rss+xml" />
	<link>http://www.stjohnjohnson.com</link>
	<description>This is a place for me to post my ideas, projects, tutorials, and resume for all to see</description>
	<lastBuildDate>Tue, 27 Apr 2010 21:05:39 +0000</lastBuildDate>
	<generator>http://wordpress.org/?v=2.9.2</generator>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
			<item>
		<title>Login over Unsecure Channels</title>
		<link>http://www.stjohnjohnson.com/blog/login-over-unsecure-channels</link>
		<comments>http://www.stjohnjohnson.com/blog/login-over-unsecure-channels#comments</comments>
		<pubDate>Tue, 27 Apr 2010 21:05:39 +0000</pubDate>
		<dc:creator>St. John</dc:creator>
				<category><![CDATA[Blog]]></category>
		<category><![CDATA[Best Practice]]></category>
		<category><![CDATA[MD5]]></category>

		<guid isPermaLink="false">http://www.stjohnjohnson.com/blog/login-over-unsecure-channels</guid>
		<description><![CDATA[Yesterday I talked about securing stored passwords in a database.&#160; That is helpful in preventing an attacker from reversing user&#8217;s password information assuming they got access to your database.&#160; But what good is protecting that information if your users login by passing their username/passwords over plaintext.
Now this whole process is assuming you use email address [...]]]></description>
		<wfw:commentRss>http://www.stjohnjohnson.com/blog/login-over-unsecure-channels/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Storing Passwords in a Database</title>
		<link>http://www.stjohnjohnson.com/blog/storing-passwords-in-database</link>
		<comments>http://www.stjohnjohnson.com/blog/storing-passwords-in-database#comments</comments>
		<pubDate>Mon, 26 Apr 2010 15:48:00 +0000</pubDate>
		<dc:creator>St. John</dc:creator>
				<category><![CDATA[Blog]]></category>
		<category><![CDATA[Best Practice]]></category>
		<category><![CDATA[Database]]></category>
		<category><![CDATA[MD5]]></category>
		<category><![CDATA[MySQL]]></category>

		<guid isPermaLink="false">http://www.stjohnjohnson.com/blog/storing-passwords-in-database</guid>
		<description><![CDATA[The other day, a friend of mine was asking for the best practice regarding stored passwords in a SQL database.&#160; His first idea was a simple hash (SHA1 in his case).&#160; While this is significantly better than plaintext and even MD5, it is still computationally feasible to reverse/guess the values if the server was compromised.&#160; [...]]]></description>
		<wfw:commentRss>http://www.stjohnjohnson.com/blog/storing-passwords-in-database/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Recent Work</title>
		<link>http://www.stjohnjohnson.com/blog/recent-work</link>
		<comments>http://www.stjohnjohnson.com/blog/recent-work#comments</comments>
		<pubDate>Sat, 24 Apr 2010 02:06:56 +0000</pubDate>
		<dc:creator>St. John</dc:creator>
				<category><![CDATA[Blog]]></category>
		<category><![CDATA[PHP]]></category>
		<category><![CDATA[Teaching]]></category>

		<guid isPermaLink="false">http://www.stjohnjohnson.com/blog/recent-work</guid>
		<description><![CDATA[Sorry for the huge gaps between posts.&#160; I&#8217;m trying to find time to prepare and write up posts about my various projects.&#160; The big one, that I hope can benefit lots of people, is my MySQL Advanced Class.&#160; It&#8217;s basically a PHP class that allows static one-line access to MySQL with proper parameter binding and [...]]]></description>
		<wfw:commentRss>http://www.stjohnjohnson.com/blog/recent-work/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Math CAPTCHAs</title>
		<link>http://www.stjohnjohnson.com/blog/math-captchas</link>
		<comments>http://www.stjohnjohnson.com/blog/math-captchas#comments</comments>
		<pubDate>Sun, 11 Apr 2010 18:02:18 +0000</pubDate>
		<dc:creator>St. John</dc:creator>
				<category><![CDATA[Blog]]></category>
		<category><![CDATA[CAPTCHA]]></category>
		<category><![CDATA[PHP]]></category>

		<guid isPermaLink="false">http://www.stjohnjohnson.com/blog/math-captchas</guid>
		<description><![CDATA[A few years ago, when I was sitting at my moving sale, I came up with some crazy variations on the basic word/letter based CAPTCHA for my senior project, SHUGamer.com.&#160; Most of the ideas I had were either impossible to implement or difficult to answer.&#160; I eventually decided to implement a system based on a [...]]]></description>
		<wfw:commentRss>http://www.stjohnjohnson.com/blog/math-captchas/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Facebook Puzzles</title>
		<link>http://www.stjohnjohnson.com/blog/facebook-puzzles</link>
		<comments>http://www.stjohnjohnson.com/blog/facebook-puzzles#comments</comments>
		<pubDate>Fri, 09 Apr 2010 19:45:30 +0000</pubDate>
		<dc:creator>St. John</dc:creator>
				<category><![CDATA[Blog]]></category>
		<category><![CDATA[Facebook]]></category>
		<category><![CDATA[PHP]]></category>

		<guid isPermaLink="false">http://www.stjohnjohnson.com/blog/facebook-puzzles</guid>
		<description><![CDATA[Hey, it&#8217;s been a while since I posted last.&#160; After getting certified, I felt like I needed to push my programming skill further.&#160; That&#8217;s where the Facebook Engineering Puzzles came into play.&#160; I completed the first two training ones last August (&#34;Hoppity Hop!&#34; and &#34;Meep meep!&#34;).&#160; I also worked on the first easy puzzle, &#34;Liar, [...]]]></description>
		<wfw:commentRss>http://www.stjohnjohnson.com/blog/facebook-puzzles/feed</wfw:commentRss>
		<slash:comments>2</slash:comments>
		</item>
		<item>
		<title>PASSED ZEND CERTIFICATION!</title>
		<link>http://www.stjohnjohnson.com/blog/passed-zend-certification</link>
		<comments>http://www.stjohnjohnson.com/blog/passed-zend-certification#comments</comments>
		<pubDate>Wed, 20 Jan 2010 20:58:32 +0000</pubDate>
		<dc:creator>St. John</dc:creator>
				<category><![CDATA[Blog]]></category>
		<category><![CDATA[Zend PHP Certification]]></category>

		<guid isPermaLink="false">http://www.stjohnjohnson.com/?p=448</guid>
		<description><![CDATA[That&#8217;s right.  I finished the 90 minute test in 30 minutes and passed with flying colors!  It was a really hard test, but I got through it!
For anyone who wants to go for it, remember to spend a lot of time studying!!
]]></description>
		<wfw:commentRss>http://www.stjohnjohnson.com/blog/passed-zend-certification/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Welcome to 2010</title>
		<link>http://www.stjohnjohnson.com/blog/welcome-to-2010</link>
		<comments>http://www.stjohnjohnson.com/blog/welcome-to-2010#comments</comments>
		<pubDate>Fri, 01 Jan 2010 20:43:58 +0000</pubDate>
		<dc:creator>St. John</dc:creator>
				<category><![CDATA[Blog]]></category>
		<category><![CDATA[Hitchhiker's Guide to the Galaxy]]></category>

		<guid isPermaLink="false">http://www.stjohnjohnson.com/blog/welcome-to-2010</guid>
		<description><![CDATA[I hope this is going to be a good year.&#160; I&#8217;ve got many ideas and hopefully more time to build them.&#160; But above all, I feel like this year I need to take Douglas Adams&#8217; most important advice to heart:
 Yes, I got this in a fortune cookie, I kid you not.
Happy New Year!
May the [...]]]></description>
		<wfw:commentRss>http://www.stjohnjohnson.com/blog/welcome-to-2010/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>MySQL Schema Diff Generator</title>
		<link>http://www.stjohnjohnson.com/blog/mysql-schema-diff-generator</link>
		<comments>http://www.stjohnjohnson.com/blog/mysql-schema-diff-generator#comments</comments>
		<pubDate>Tue, 22 Dec 2009 20:42:31 +0000</pubDate>
		<dc:creator>St. John</dc:creator>
				<category><![CDATA[Blog]]></category>
		<category><![CDATA[MySQL]]></category>
		<category><![CDATA[PHP]]></category>

		<guid isPermaLink="false">http://www.stjohnjohnson.com/blog/mysql-schema-diff-generator</guid>
		<description><![CDATA[At work, I occasionally need to move database changes from the development server to the live server.&#160; We have about a hundred tables, which makes it difficult to review by hand.&#160; So there is a comparison script that basically runs a `mysqladmin` schema dump on both databases and then diffs the two files.&#160; The result [...]]]></description>
		<wfw:commentRss>http://www.stjohnjohnson.com/blog/mysql-schema-diff-generator/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Disc Golf</title>
		<link>http://www.stjohnjohnson.com/blog/disc-golf</link>
		<comments>http://www.stjohnjohnson.com/blog/disc-golf#comments</comments>
		<pubDate>Fri, 21 Aug 2009 20:05:46 +0000</pubDate>
		<dc:creator>St. John</dc:creator>
				<category><![CDATA[Blog]]></category>
		<category><![CDATA[disc golf]]></category>
		<category><![CDATA[google earth]]></category>

		<guid isPermaLink="false">http://www.stjohnjohnson.com/?p=378</guid>
		<description><![CDATA[I&#8217;ve started playing Disc Golf with my best friends about a month or two ago and I am addicted.  We play at the Fairfield University Course in Fairfield, CT because it&#8217;s close, easy for new players, and loads of fun.
Sadly, their website hasn&#8217;t been updated in some time and it lacks a good map for [...]]]></description>
		<wfw:commentRss>http://www.stjohnjohnson.com/blog/disc-golf/feed</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>Threading in C++</title>
		<link>http://www.stjohnjohnson.com/blog/threading-in-c</link>
		<comments>http://www.stjohnjohnson.com/blog/threading-in-c#comments</comments>
		<pubDate>Wed, 29 Apr 2009 04:31:48 +0000</pubDate>
		<dc:creator>St. John</dc:creator>
				<category><![CDATA[Blog]]></category>
		<category><![CDATA[C#]]></category>
		<category><![CDATA[Threads]]></category>

		<guid isPermaLink="false">http://www.stjohnjohnson.com/?p=307</guid>
		<description><![CDATA[I know, I know.  It has been over a month since my last post.  Sadly, this graduate project of mine has been taking up all of my time.
Of course the time spent has not been a waste.  In fact, it has been far from it. Part of the project involves users participating [...]]]></description>
		<wfw:commentRss>http://www.stjohnjohnson.com/blog/threading-in-c/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
	</channel>
</rss>
