<?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>Mike Harty</title>
	<atom:link href="http://www.mikeharty.com/?feed=rss2" rel="self" type="application/rss+xml" />
	<link>http://www.mikeharty.com</link>
	<description>Tips, tricks, and ideas from the mind of a web developer.</description>
	<lastBuildDate>Sun, 04 Apr 2010 06:05:00 +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>Random useful data sets for developers</title>
		<link>http://www.mikeharty.com/?p=15</link>
		<comments>http://www.mikeharty.com/?p=15#comments</comments>
		<pubDate>Wed, 24 Feb 2010 19:54:14 +0000</pubDate>
		<dc:creator>Mike</dc:creator>
				<category><![CDATA[Development]]></category>
		<category><![CDATA[abbreviations]]></category>
		<category><![CDATA[city]]></category>
		<category><![CDATA[convenience]]></category>
		<category><![CDATA[csv]]></category>
		<category><![CDATA[database]]></category>
		<category><![CDATA[dst]]></category>
		<category><![CDATA[latitude]]></category>
		<category><![CDATA[list]]></category>
		<category><![CDATA[longitude]]></category>
		<category><![CDATA[plain]]></category>
		<category><![CDATA[programmer]]></category>
		<category><![CDATA[sql]]></category>
		<category><![CDATA[state]]></category>
		<category><![CDATA[table]]></category>
		<category><![CDATA[text]]></category>
		<category><![CDATA[timezone]]></category>
		<category><![CDATA[unformatted]]></category>
		<category><![CDATA[zip code]]></category>
		<category><![CDATA[zipcode]]></category>

		<guid isPermaLink="false">http://www.mikeharty.com/?p=15</guid>
		<description><![CDATA[It took close to 20 minutes of searching this morning for me to find a plain-text list of state names &#38; abbreviations without any formatting or columns. I&#8217;m posting these here for my own reference and  my hope is others will find their way here. I&#8217;d like to pass on the feeling of relief that [...]]]></description>
			<content:encoded><![CDATA[<p>It took close to 20 minutes of searching this morning for me to find a plain-text list of state names &amp; abbreviations without any formatting or columns. I&#8217;m posting these here for my own reference and  my hope is others will find their way here. I&#8217;d like to pass on the feeling of relief that I experience when I find that someone out there has made the effort.</p>

<div class='easySpoilerWrapper'>

<table class='easySpoilerTable' border='0' style='text-align:center;' align='center' bgcolor='FFFFFF'>

<tr><th class='easySpoilerTitleA'  style='text-align:left;vertical-align:middle;font-size:120%'>Country List</th>
<th class='easySpoilerTitleB'  style='text-align:right;vertical-align:middle;font-size:100%'><INPUT type='button' id='spoilerDiv68a78001_action' class='easySpoilerButton' value="Show" onclick='wpSpoilerToggle("spoilerDiv68a78001",true,"Show","Hide");' align='right'></th>
</tr>

<tr><td class='easySpoilerRow' colspan='2'><div><div id=spoilerDiv68a78001 class='easySpoilerSpoils' style='display:none; white-space:wrap; vertical-align:middle;'>
</p>
<div class="codesnip-container" >Afghanistan<br />
Albania<br />
Algeria<br />
American Samoa<br />
Andorra<br />
Angola<br />
Anguilla<br />
Antarctica<br />
Antigua and Barbuda<br />
Argentina<br />
Armenia<br />
Arctic Ocean<br />
Aruba<br />
Ashmore and Cartier Islands<br />
Atlantic Ocean<br />
Australia<br />
Austria<br />
Azerbaijan<br />
Bahamas<br />
Bahrain<br />
Baker Island<br />
Bangladesh<br />
Barbados<br />
Bassas da India<br />
Belarus<br />
Belgium<br />
Belize<br />
Benin<br />
Bermuda<br />
Bhutan<br />
Bolivia<br />
Bosnia and Herzegovina<br />
Botswana<br />
Bouvet Island<br />
Brazil<br />
British Virgin Islands<br />
Brunei<br />
Bulgaria<br />
Burkina Faso<br />
Burundi<br />
Cambodia<br />
Cameroon<br />
Canada<br />
Cape Verde<br />
Cayman Islands<br />
Central African Republic<br />
Chad<br />
Chile<br />
China<br />
Christmas Island<br />
Clipperton Island<br />
Cocos Islands<br />
Colombia<br />
Comoros<br />
Cook Islands<br />
Coral Sea Islands<br />
Costa Rica<br />
Cote d&#8217;Ivoire<br />
Croatia<br />
Cuba<br />
Cyprus<br />
Czech Republic<br />
Denmark<br />
Democratic Republic of the Congo<br />
Djibouti<br />
Dominica<br />
Dominican Republic<br />
East Timor<br />
Ecuador<br />
Egypt<br />
El Salvador<br />
Equatorial Guinea<br />
Eritrea<br />
Estonia<br />
Ethiopia<br />
Europa Island<br />
Falkland Islands (Islas Malvinas)<br />
Faroe Islands<br />
Fiji<br />
Finland<br />
France<br />
French Guiana<br />
French Polynesia<br />
French Southern and Antarctic Lands<br />
Gabon<br />
Gambia<br />
Gaza Strip<br />
Georgia<br />
Germany<br />
Ghana<br />
Gibraltar<br />
Glorioso Islands<br />
Greece<br />
Greenland<br />
Grenada<br />
Guadeloupe<br />
Guam<br />
Guatemala<br />
Guernsey<br />
Guinea<br />
Guinea-Bissau<br />
Guyana<br />
Haiti<br />
Heard Island and McDonald Islands<br />
Honduras<br />
Hong Kong<br />
Howland Island<br />
Hungary<br />
Iceland<br />
India<br />
Indian Ocean<br />
Indonesia<br />
Iran<br />
Iraq<br />
Ireland<br />
Isle of Man<br />
Israel<br />
Italy<br />
Jamaica<br />
Jan Mayen<br />
Japan<br />
Jarvis Island<br />
Jersey<br />
Johnston Atoll<br />
Jordan<br />
Juan de Nova Island<br />
Kazakhstan<br />
Kenya<br />
Kingman Reef<br />
Kiribati<br />
Kerguelen Archipelago<br />
Kosovo<br />
Kuwait<br />
Kyrgyzstan<br />
Laos<br />
Latvia<br />
Lebanon<br />
Lesotho<br />
Liberia<br />
Libya<br />
Liechtenstein<br />
Lithuania<br />
Luxembourg<br />
Macau<br />
Macedonia<br />
Madagascar<br />
Malawi<br />
Malaysia<br />
Maldives<br />
Mali<br />
Malta<br />
Marshall Islands<br />
Martinique<br />
Mauritania<br />
Mauritius<br />
Mayotte<br />
Mexico<br />
Micronesia<br />
Midway Islands<br />
Moldova<br />
Monaco<br />
Mongolia<br />
Montenegro<br />
Montserrat<br />
Morocco<br />
Mozambique<br />
Myanmar<br />
Namibia<br />
Nauru<br />
Navassa Island<br />
Nepal<br />
Netherlands<br />
Netherlands Antilles<br />
New Caledonia<br />
New Zealand<br />
Nicaragua<br />
Niger<br />
Nigeria<br />
Niue<br />
Norfolk Island<br />
North Korea<br />
North Sea<br />
Northern Mariana Islands<br />
Norway<br />
Oman<br />
Pacific Ocean<br />
Pakistan<br />
Palau<br />
Palmyra Atoll<br />
Panama<br />
Papua New Guinea<br />
Paracel Islands<br />
Paraguay<br />
Peru<br />
Philippines<br />
Pitcairn Islands<br />
Poland<br />
Portugal<br />
Puerto Rico<br />
Qatar<br />
Reunion<br />
Republic of the Congo<br />
Romania<br />
Russia<br />
Rwanda<br />
Saint Helena<br />
Saint Kitts and Nevis<br />
Saint Lucia<br />
Saint Pierre and Miquelon<br />
Saint Vincent and the Grenadines<br />
Samoa<br />
San Marino<br />
Sao Tome and Principe<br />
Saudi Arabia<br />
Senegal<br />
Serbia<br />
Seychelles<br />
Sierra Leone<br />
Singapore<br />
Slovakia<br />
Slovenia<br />
Solomon Islands<br />
Somalia<br />
South Africa<br />
South Georgia and the South Sandwich Islands<br />
South Korea<br />
Spain<br />
Spratly Islands<br />
Sri Lanka<br />
Sudan<br />
Suriname<br />
Svalbard<br />
Swaziland<br />
Sweden<br />
Switzerland<br />
Syria<br />
Taiwan<br />
Tajikistan<br />
Tanzania<br />
Thailand<br />
Togo<br />
Tokelau<br />
Tonga<br />
Trinidad and Tobago<br />
Tromelin Island<br />
Tunisia<br />
Turkey<br />
Turkmenistan<br />
Turks and Caicos Islands<br />
Tuvalu<br />
Uganda<br />
Ukraine<br />
United Arab Emirates<br />
United Kingdom<br />
USA<br />
Uruguay<br />
Uzbekistan<br />
Vanuatu<br />
Venezuela<br />
Viet Nam<br />
Virgin Islands<br />
Wake Island<br />
Wallis and Futuna<br />
West Bank<br />
Western Sahara<br />
Yemen<br />
Yugoslavia<br />
Zambia<br />
Zimbabwe</div>
<p>
</div></div></td></tr>
</table>
<div class='easySpoilerConclude'><table class='easySpoilerTable' border='0' style='text-align:center;' frame='box' align='center' bgcolor='FFFFFF'><tr><th class='easySpoilerEnd' style='width:100%'></th><td class='easySpoilerEnd' style='white-space:nowrap;' colspan='2'></td></tr><tr><td class='easySpoilerEnd' colspan='2'></td></tr></table></div>
</div>


<div class='easySpoilerWrapper'>

<table class='easySpoilerTable' border='0' style='text-align:center;' align='center' bgcolor='FFFFFF'>

<tr><th class='easySpoilerTitleA'  style='text-align:left;vertical-align:middle;font-size:120%'>State Abbreviation List</th>
<th class='easySpoilerTitleB'  style='text-align:right;vertical-align:middle;font-size:100%'><INPUT type='button' id='spoilerDiv7ab58002_action' class='easySpoilerButton' value="Show" onclick='wpSpoilerToggle("spoilerDiv7ab58002",true,"Show","Hide");' align='right'></th>
</tr>

<tr><td class='easySpoilerRow' colspan='2'><div><div id=spoilerDiv7ab58002 class='easySpoilerSpoils' style='display:none; white-space:wrap; vertical-align:middle;'>
</p>
<div class="codesnip-container" >AL<br />
AK<br />
AZ<br />
AR<br />
CA<br />
CO<br />
CT<br />
DE<br />
FL<br />
GA<br />
HI<br />
ID<br />
IL<br />
IN<br />
IA<br />
KS<br />
KY<br />
LA<br />
ME<br />
MD<br />
MA<br />
MI<br />
MN<br />
MS<br />
MO<br />
MT<br />
NE<br />
NV<br />
NH<br />
NJ<br />
NM<br />
NY<br />
NC<br />
ND<br />
OH<br />
OK<br />
OR<br />
PA<br />
RI<br />
SC<br />
SD<br />
TN<br />
TX<br />
UT<br />
VT<br />
VA<br />
WA<br />
WV<br />
WI<br />
WY</div>
<p>
</div></div></td></tr>
</table>
<div class='easySpoilerConclude'><table class='easySpoilerTable' border='0' style='text-align:center;' frame='box' align='center' bgcolor='FFFFFF'><tr><th class='easySpoilerEnd' style='width:100%'></th><td class='easySpoilerEnd' style='white-space:nowrap;' colspan='2'></td></tr><tr><td class='easySpoilerEnd' colspan='2'></td></tr></table></div>
</div>
 
<div class='easySpoilerWrapper'>

<table class='easySpoilerTable' border='0' style='text-align:center;' align='center' bgcolor='FFFFFF'>

<tr><th class='easySpoilerTitleA'  style='text-align:left;vertical-align:middle;font-size:120%'>State Name List</th>
<th class='easySpoilerTitleB'  style='text-align:right;vertical-align:middle;font-size:100%'><INPUT type='button' id='spoilerDiv4dc18003_action' class='easySpoilerButton' value="Show" onclick='wpSpoilerToggle("spoilerDiv4dc18003",true,"Show","Hide");' align='right'></th>
</tr>

<tr><td class='easySpoilerRow' colspan='2'><div><div id=spoilerDiv4dc18003 class='easySpoilerSpoils' style='display:none; white-space:wrap; vertical-align:middle;'>
</p>
<div class="codesnip-container" >Alabama<br />
Alaska<br />
American Samoa<br />
Arizona<br />
Arkansas<br />
California<br />
Colorado<br />
Connecticut<br />
Delaware<br />
District of Columbia<br />
Florida<br />
Georgia<br />
Guam<br />
Hawaii<br />
Idaho<br />
Illinois<br />
Indiana<br />
Iowa<br />
Kansas<br />
Kentucky<br />
Louisiana<br />
Maine<br />
Maryland<br />
Massachusetts<br />
Michigan<br />
Minnesota<br />
Mississippi<br />
Missouri<br />
Montana<br />
Nebraska<br />
Nevada<br />
New Hampshire<br />
New Jersey<br />
New Mexico<br />
New York<br />
North Carolina<br />
North Dakota<br />
Northern Marianas Islands<br />
Ohio<br />
Oklahoma<br />
Oregon<br />
Pennsylvania<br />
Puerto Rico<br />
Rhode Island<br />
South Carolina<br />
South Dakota<br />
Tennessee<br />
Texas<br />
Utah<br />
Vermont<br />
Virginia<br />
Virgin Islands<br />
Washington<br />
West Virginia<br />
Wisconsin<br />
Wyoming</div>
<p>
</div></div></td></tr>
</table>
<div class='easySpoilerConclude'><table class='easySpoilerTable' border='0' style='text-align:center;' frame='box' align='center' bgcolor='FFFFFF'><tr><th class='easySpoilerEnd' style='width:100%'></th><td class='easySpoilerEnd' style='white-space:nowrap;' colspan='2'></td></tr><tr><td class='easySpoilerEnd' colspan='2'></td></tr></table></div>
</div>

<p>While I&#8217;m on the subject, another data set which has proven to be difficult to track down, but has been immensely useful to me on a number of occasions: a ZIP Code table which includes the fields: <strong>Zip, City, State, Latitude, Longitude, Timezone, </strong>and <strong>DST</strong>.</p>
<p>I&#8217;ve used this data to calculate distances, draw maps, handle timezone conversions, generate local search listings, and in many other functional and convenient applications. I have this table in two formats, it&#8217;s original: CSV, and my preference: SQL. If you&#8217;re using an SQL database, importing this should be painless.</p>

<div class='easySpoilerWrapper'>

<table class='easySpoilerTable' border='0' style='text-align:center;' align='center' bgcolor='FFFFFF'>

<tr><th class='easySpoilerTitleA'  style='text-align:left;vertical-align:middle;font-size:120%'>ZIP Code Table</th>
<th class='easySpoilerTitleB'  style='text-align:right;vertical-align:middle;font-size:100%'><INPUT type='button' id='spoilerDiv2bcb8004_action' class='easySpoilerButton' value="Show" onclick='wpSpoilerToggle("spoilerDiv2bcb8004",true,"Show","Hide");' align='right'></th>
</tr>

<tr><td class='easySpoilerRow' colspan='2'><div><div id=spoilerDiv2bcb8004 class='easySpoilerSpoils' style='display:none; white-space:wrap; vertical-align:middle;'>
</p>
<div class="codesnip-container" ><strong><a href="http://www.mikeharty.com/misc/zipinfo.csv.zip">Download CSV</a></strong></p>
<h4><span style="color: #888888;"><strong><a href="http://www.mikeharty.com/misc/zipinfo.sql.zip">Download SQL</a></strong></span></h4>
<p><span style="color: #916e6e;">(Disclaimer: I offer no guarantee regarding the accuracy, reliability, or usability of this data. If you require a high level of any of those features I recommend researching commercially maintained data.)</span></div>
<p>
</div></div></td></tr>
</table>
<div class='easySpoilerConclude'><table class='easySpoilerTable' border='0' style='text-align:center;' frame='box' align='center' bgcolor='FFFFFF'><tr><th class='easySpoilerEnd' style='width:100%'></th><td class='easySpoilerEnd' style='white-space:nowrap;' colspan='2'></td></tr><tr><td class='easySpoilerEnd' colspan='2'></td></tr></table></div>
</div>

<p>Edit: Added country list.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.mikeharty.com/?feed=rss2&amp;p=15</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Drupal 301 Redirects</title>
		<link>http://www.mikeharty.com/?p=9</link>
		<comments>http://www.mikeharty.com/?p=9#comments</comments>
		<pubDate>Thu, 11 Feb 2010 01:27:19 +0000</pubDate>
		<dc:creator>Mike</dc:creator>
				<category><![CDATA[Drupal]]></category>
		<category><![CDATA[htaccess]]></category>
		<category><![CDATA[tips]]></category>

		<guid isPermaLink="false">http://www.mikeharty.com/?p=9</guid>
		<description><![CDATA[Because of Drupal&#8217;s URL query structure, standard 301 redirects in your .htaccess file will not work. Here is a simple solution for this problem.
The following should be placed on the next line after &#8220;# RewriteBase /&#8221; and before
&#8220;# Rewrite URLs of the form &#8216;x&#8217; to the form &#8216;index.php?q=x&#8217;.&#8221;
RewriteRule ^old/file.htm$ http://www.yoursite.com/new/file.htm [R=301,L]
For URLs with spaces in [...]]]></description>
			<content:encoded><![CDATA[<p>Because of Drupal&#8217;s URL query structure, standard 301 redirects in your .htaccess file will not work. Here is a simple solution for this problem.</p>
<p>The following should be placed on the next line after &#8220;# RewriteBase /&#8221; and before</p>
<p>&#8220;# Rewrite URLs of the form &#8216;x&#8217; to the form &#8216;index.php?q=x&#8217;.&#8221;</p>
<div class="codesnip-container" >RewriteRule ^old/file.htm$ http://www.yoursite.com/new/file.htm [R=301,L]</div>
<p>For URLs with spaces in them, simply wrap the URL in quote tags, like so:</p>
<div class="codesnip-container" >RewriteRule ^old/file.htm$ &#8220;http://www.yoursite.com/new file.htm&#8221; [R=301,L]</div>
<p>You must use the full URL for your site for these redirects, not just the relative path.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.mikeharty.com/?feed=rss2&amp;p=9</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Hello world!</title>
		<link>http://www.mikeharty.com/?p=1</link>
		<comments>http://www.mikeharty.com/?p=1#comments</comments>
		<pubDate>Mon, 08 Feb 2010 19:27:26 +0000</pubDate>
		<dc:creator>Mike</dc:creator>
				<category><![CDATA[Development]]></category>

		<guid isPermaLink="false">http://www.mikeharty.com/?p=1</guid>
		<description><![CDATA[Testing out the code highlighter.

function hello&#40;$who = &#34;world&#34;&#41;&#123;
&#160; &#160; print &#34;Hello &#34; . $who . &#34;!&#34;;
&#125;

]]></description>
			<content:encoded><![CDATA[<p>Testing out the code highlighter.</p>
<div class="codesnip-container" >
<div class="php codesnip" style="font-family:monospace;"><span class="kw2">function</span> hello<span class="br0">&#40;</span><span class="re0">$who</span> <span class="sy0">=</span> <span class="st0">&quot;world&quot;</span><span class="br0">&#41;</span><span class="br0">&#123;</span><br />
&nbsp; &nbsp; <span class="kw1">print</span> <span class="st0">&quot;Hello &quot;</span> <span class="sy0">.</span> <span class="re0">$who</span> <span class="sy0">.</span> <span class="st0">&quot;!&quot;</span><span class="sy0">;</span><br />
<span class="br0">&#125;</span></div>
</div>
]]></content:encoded>
			<wfw:commentRss>http://www.mikeharty.com/?feed=rss2&amp;p=1</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
	</channel>
</rss>
