<?xml version="1.0" encoding="UTF-8"?><rss version="0.92">
<channel>
	<title>Perplexed Labs</title>
	<link>http://blog.perplexedlabs.com</link>
	<description>web development war stories from the frontlines to the backend</description>
	<lastBuildDate>Mon, 16 May 2011 14:19:38 +0000</lastBuildDate>
	<docs>http://backend.userland.com/rss092</docs>
	<language>en</language>
	<!-- generator="WordPress/3.1.2" -->

	<item>
		<title>Experiences Developing My First iOS / iPhone App &#8211; OnCall for Nagios</title>
		<description><![CDATA[I've long since wanted to participate in the explosion of popularity that is the iOS App Store. I toyed with demonstration-purpose applications, learning the foundational aspects of developing on this new platform and the intricacies of Objective-C, but never really had a compelling idea to follow through to completion. Due to the nature of my [...]


Related posts:<ol><li><a href='http://blog.perplexedlabs.com/2009/07/29/django-1-1-released/' rel='bookmark' title='Permanent Link: Django 1.1 Released'>Django 1.1 Released</a></li>
<li><a href='http://blog.perplexedlabs.com/2009/06/30/php-5-3-0-released-and-firefox-3-5/' rel='bookmark' title='Permanent Link: PHP 5.3.0 Released and Firefox 3.5'>PHP 5.3.0 Released and Firefox 3.5</a></li>
</ol>]]></description>
		<link>http://blog.perplexedlabs.com/2011/05/16/experiences-developing-my-first-ios-iphone-app-oncall-for-nagios/</link>
			</item>
	<item>
		<title>Async DNS Resolution in Tornado&#8217;s AsyncHttpClient (curl multi, c-ares)</title>
		<description><![CDATA[I learned some rather important facts about cURL's multi interface (which makes it possible to perform asynchronous HTTP requests and what Python's Tornado framework uses under the hood in it's AsyncHttpClient helper). I was investigating some intermittent issues in an application at work - transient DNS issues were causing the application to become unresponsive. This [...]


Related posts:<ol><li><a href='http://blog.perplexedlabs.com/2010/07/01/pythons-tornado-has-swept-me-off-my-feet/' rel='bookmark' title='Permanent Link: Python&#8217;s Tornado has swept me off my feet'>Python&#8217;s Tornado has swept me off my feet</a></li>
<li><a href='http://blog.perplexedlabs.com/2010/07/24/tornado-1-0-released/' rel='bookmark' title='Permanent Link: Tornado 1.0 Released'>Tornado 1.0 Released</a></li>
<li><a href='http://blog.perplexedlabs.com/2010/02/08/deployment-using-capistrano-and-webistrano-via-rails-and-phusion-passenger/' rel='bookmark' title='Permanent Link: Deployment Using Capistrano / Webistrano via Rails / Phusion Passenger'>Deployment Using Capistrano / Webistrano via Rails / Phusion Passenger</a></li>
</ol>]]></description>
		<link>http://blog.perplexedlabs.com/2010/11/01/asynchronous-dns-resolution-in-tornados-asynchttpclient-curl-multi-c-ares/</link>
			</item>
	<item>
		<title>Migrating from a legacy authentication scheme to Authlogic</title>
		<description><![CDATA[I've been working on a project where I inherited a database with over 9,000 users.  The passwords are stored as an MD5 hash, with no salt.  For obvious reasons, I wanted to transition the old authentication scheme and architecture over to authlogic.  This post by Ben Johnson pointed me in the right direction. The problem [...]


No related posts.]]></description>
		<link>http://blog.perplexedlabs.com/2010/10/22/migrating-from-a-legacy-authentication-scheme-to-authlogic/</link>
			</item>
	<item>
		<title>Convert HTML to PDF in PHP (libwkhtmltox extension)</title>
		<description><![CDATA[A common problem when developing a web application is having producing a high-quality PDF out of an existing layout/view/template. Perhaps for a reporting engine, an invoice, a receipt, or any number of other situations. Often this involves using somewhat cryptic output primitives and creating the PDF by hand. Wouldn't it be nice if there were [...]


Related posts:<ol><li><a href='http://blog.perplexedlabs.com/2010/09/09/python-libwkhtmltox-module-wrapping-a-c-library-using-cython/' rel='bookmark' title='Permanent Link: Python libwkhtmltox module &#8211; wrapping a C library using Cython &#8211; convert HTML to PDF'>Python libwkhtmltox module &#8211; wrapping a C library using Cython &#8211; convert HTML to PDF</a></li>
<li><a href='http://blog.perplexedlabs.com/2008/02/04/php-array-to-string/' rel='bookmark' title='Permanent Link: PHP Array to String'>PHP Array to String</a></li>
<li><a href='http://blog.perplexedlabs.com/2008/12/17/php-parallel-web-scraper/' rel='bookmark' title='Permanent Link: PHP Parallel Web Scraper'>PHP Parallel Web Scraper</a></li>
</ol>]]></description>
		<link>http://blog.perplexedlabs.com/2010/09/15/convert-html-to-pdf-in-php-libwkhtmltox-extension/</link>
			</item>
	<item>
		<title>Python libwkhtmltox module &#8211; wrapping a C library using Cython &#8211; convert HTML to PDF</title>
		<description><![CDATA[First of all, big shout out to antialize for creating wkhtmltopdf (github repo). Also, this project is being hosted on GitHub @ http://github.com/mreiferson/py-wkhtmltox. wkhtmltox What is wkhtmltox you ask? It's a utility built on Nokia's Qt framework for converting HTML (including images, CSS, and Javascript) to a PDF or image. When Qt introduced it's webkit [...]


Related posts:<ol><li><a href='http://blog.perplexedlabs.com/2010/09/15/convert-html-to-pdf-in-php-libwkhtmltox-extension/' rel='bookmark' title='Permanent Link: Convert HTML to PDF in PHP (libwkhtmltox extension)'>Convert HTML to PDF in PHP (libwkhtmltox extension)</a></li>
<li><a href='http://blog.perplexedlabs.com/2010/03/04/python-data-sharing-in-the-multiprocessing-module/' rel='bookmark' title='Permanent Link: Python data sharing in the multiprocessing module'>Python data sharing in the multiprocessing module</a></li>
<li><a href='http://blog.perplexedlabs.com/2009/04/22/django-url-parameter-passing-and-python-strings/' rel='bookmark' title='Permanent Link: Django URL Parameter Passing and Python Strings'>Django URL Parameter Passing and Python Strings</a></li>
</ol>]]></description>
		<link>http://blog.perplexedlabs.com/2010/09/09/python-libwkhtmltox-module-wrapping-a-c-library-using-cython/</link>
			</item>
	<item>
		<title>Improved deploy:cleanup for capistrano</title>
		<description><![CDATA[We ran into a problem today where capistrano wasn't correctly cleaning up old releases on a 15-minute multi-host deploy. It seems like the default deploy:cleanup task wasn't written with multiple hosts in mind. Essentially what it does is list the contents of your releases_path for the first host in the list of hosts and assumes [...]


Related posts:<ol><li><a href='http://blog.perplexedlabs.com/2010/02/08/deployment-using-capistrano-and-webistrano-via-rails-and-phusion-passenger/' rel='bookmark' title='Permanent Link: Deployment Using Capistrano / Webistrano via Rails / Phusion Passenger'>Deployment Using Capistrano / Webistrano via Rails / Phusion Passenger</a></li>
<li><a href='http://blog.perplexedlabs.com/2009/06/01/be-language-agnostic-solve-the-problem/' rel='bookmark' title='Permanent Link: Be Language Agnostic &#8211; Solve the Problem!'>Be Language Agnostic &#8211; Solve the Problem!</a></li>
<li><a href='http://blog.perplexedlabs.com/2009/11/30/8-books-to-get-a-developer-for-the-holidays/' rel='bookmark' title='Permanent Link: 8 Books To Get A Developer For The Holidays'>8 Books To Get A Developer For The Holidays</a></li>
</ol>]]></description>
		<link>http://blog.perplexedlabs.com/2010/09/08/improved-deploycleanup-for-capistrano/</link>
			</item>
	<item>
		<title>Tornado 1.0 Released</title>
		<description><![CDATA[Just a quick note that the Tornado team announced the release of version 1.0 on July 22nd. Here's the changelog. Looks like some nice new features - I'm looking forward to upgrading. Related posts:PHP 5.3.0 Released and Firefox 3.5 jQuery 1.4.2 Released Django 1.1 Released


Related posts:<ol><li><a href='http://blog.perplexedlabs.com/2009/06/30/php-5-3-0-released-and-firefox-3-5/' rel='bookmark' title='Permanent Link: PHP 5.3.0 Released and Firefox 3.5'>PHP 5.3.0 Released and Firefox 3.5</a></li>
<li><a href='http://blog.perplexedlabs.com/2010/02/20/jquery-1-4-2-released/' rel='bookmark' title='Permanent Link: jQuery 1.4.2 Released'>jQuery 1.4.2 Released</a></li>
<li><a href='http://blog.perplexedlabs.com/2009/07/29/django-1-1-released/' rel='bookmark' title='Permanent Link: Django 1.1 Released'>Django 1.1 Released</a></li>
</ol>]]></description>
		<link>http://blog.perplexedlabs.com/2010/07/24/tornado-1-0-released/</link>
			</item>
	<item>
		<title>Python&#8217;s Tornado has swept me off my feet</title>
		<description><![CDATA[I've been working with Python's Tornado for about 2 months now and I love it. Tornado is a non-blocking web server written in Python. It's structure is similar to web.py so users of that popular Python web framework will feel right at home. This is a structure that lends itself really well to developing RESTful [...]


Related posts:<ol><li><a href='http://blog.perplexedlabs.com/2010/03/04/python-data-sharing-in-the-multiprocessing-module/' rel='bookmark' title='Permanent Link: Python data sharing in the multiprocessing module'>Python data sharing in the multiprocessing module</a></li>
<li><a href='http://blog.perplexedlabs.com/2010/07/24/tornado-1-0-released/' rel='bookmark' title='Permanent Link: Tornado 1.0 Released'>Tornado 1.0 Released</a></li>
<li><a href='http://blog.perplexedlabs.com/2010/11/01/asynchronous-dns-resolution-in-tornados-asynchttpclient-curl-multi-c-ares/' rel='bookmark' title='Permanent Link: Async DNS Resolution in Tornado&#8217;s AsyncHttpClient (curl multi, c-ares)'>Async DNS Resolution in Tornado&#8217;s AsyncHttpClient (curl multi, c-ares)</a></li>
</ol>]]></description>
		<link>http://blog.perplexedlabs.com/2010/07/01/pythons-tornado-has-swept-me-off-my-feet/</link>
			</item>
	<item>
		<title>google-define and last-fm plugins released</title>
		<description><![CDATA[Over the last few days I released my first open-source plugins on GitHub. google-define - Extracted from a side project I worked on, it's basically a wrapper class for parsing definitions from Google (define:perplexed). last-fm - This plugin was inspired by a previous gist, which itself was taken from an app I wrote to aggregate [...]


No related posts.]]></description>
		<link>http://blog.perplexedlabs.com/2010/05/06/google-define-and-last-fm-plugins-released/</link>
			</item>
	<item>
		<title>FormStack API Call Over SSL With Ruby</title>
		<description><![CDATA[I recently had to use the FormStack API in the context of a Rails app. You need to make these calls over SSL, and API returns either XML or JSON. I chose JSON because it's much easier to work with in my opinion and I hate XML. Below is a simple example. Check out the [...]


Related posts:<ol><li><a href='http://blog.perplexedlabs.com/2009/01/13/installing-ruby-enterprise-edition-with-phusion-passenger/' rel='bookmark' title='Permanent Link: Installing Ruby Enterprise Edition with Phusion Passenger'>Installing Ruby Enterprise Edition with Phusion Passenger</a></li>
<li><a href='http://blog.perplexedlabs.com/2008/02/26/flickr-rss-and-ruby/' rel='bookmark' title='Permanent Link: Flickr, RSS, and Ruby'>Flickr, RSS, and Ruby</a></li>
<li><a href='http://blog.perplexedlabs.com/2008/02/04/building-a-rails-capable-slice-from-scratch/' rel='bookmark' title='Permanent Link: Ruby On Rails and SliceHost Part 1: Initial Setup'>Ruby On Rails and SliceHost Part 1: Initial Setup</a></li>
</ol>]]></description>
		<link>http://blog.perplexedlabs.com/2010/04/28/formstack-api-call-over-ssl-with-ruby/</link>
			</item>
</channel>
</rss>

