<?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>anilmakhijani.com &#187; planetdev</title>
	<atom:link href="http://anilmakhijani.com/tag/planetdev/feed/" rel="self" type="application/rss+xml" />
	<link>http://anilmakhijani.com</link>
	<description></description>
	<lastBuildDate>Tue, 07 Jul 2009 02:01:38 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.0</generator>
		<item>
		<title>Planet WordPress Plugin Released</title>
		<link>http://anilmakhijani.com/2009/07/07/planet-wordpress-plugin-released/</link>
		<comments>http://anilmakhijani.com/2009/07/07/planet-wordpress-plugin-released/#comments</comments>
		<pubDate>Tue, 07 Jul 2009 02:01:38 +0000</pubDate>
		<dc:creator>Anil</dc:creator>
				<category><![CDATA[Wordpress Development]]></category>
		<category><![CDATA[Planet]]></category>
		<category><![CDATA[planetdev]]></category>
		<category><![CDATA[Streetsblog.NET]]></category>
		<category><![CDATA[Wordpress]]></category>

		<guid isPermaLink="false">http://anilmakhijani.com/?p=279</guid>
		<description><![CDATA[I love the Planet feed aggregator, but I hate managing it via a text configuration file. I created a WordPress plugin that automatically creates a Planet configuration file from the links that are stored in a WordPress database. Every time a link is updated, deleted, or created, a new planet configuration is generated. For more [...]]]></description>
			<content:encoded><![CDATA[<p>I love the <a href="http://planetplanet.org">Planet</a> feed aggregator, but I hate managing it via a text configuration file.  I created a WordPress plugin that automatically creates a Planet configuration file from the links that are stored in a WordPress database.  Every time a link is updated, deleted, or created, a new planet configuration is generated.</p>
<p>For more information on how to install and configure the plugin, visit the <a href="http://anilmakhijani.com/wordpress-dev/planet-wordpress/">plugin&#8217;s homepage</a>.  The source code for the plugin is hosted at <a href="http://wordpress.org/extend/plugins/planet-wordpress/">wordpress.org</a>.</p>
]]></content:encoded>
			<wfw:commentRss>http://anilmakhijani.com/2009/07/07/planet-wordpress-plugin-released/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>DataIO</title>
		<link>http://anilmakhijani.com/2009/04/12/dataio/</link>
		<comments>http://anilmakhijani.com/2009/04/12/dataio/#comments</comments>
		<pubDate>Sun, 12 Apr 2009 19:26:18 +0000</pubDate>
		<dc:creator>Anil</dc:creator>
				<category><![CDATA[DataIO]]></category>
		<category><![CDATA[Google App Engine]]></category>
		<category><![CDATA[lxml]]></category>
		<category><![CDATA[MTA]]></category>
		<category><![CDATA[planetdev]]></category>
		<category><![CDATA[python]]></category>

		<guid isPermaLink="false">http://anilmakhijani.com/?p=244</guid>
		<description><![CDATA[A few weeks ago my employer helped the NY State Senate parse the MTA budget information into a machine searchable format. (The MTA originally published the budget as a PDF.) To parse the PDF I used a utility called pdftohtml to first convert the PDL into an XML document. I then used the python library [...]]]></description>
			<content:encoded><![CDATA[<p>A few weeks ago <a href="http://theopenplanningproject.org">my employer</a> helped the NY State Senate parse the MTA budget information into a machine searchable format.  (The MTA originally published the budget as a PDF.)  To parse the PDF I used a utility called <a href="http://pdftohtml.sourceforge.net/">pdftohtml</a> to first convert the PDL into an XML document.  I then used the python library <a href="http://codespeak.net/lxml/">lxml</a> to convert the document into a set of csv files.  The results of this labor can be seen on <a href="http://data.topplabs.org"> TOPP&#8217;s data site</a>.</p>
<p>Soon after I published this data, however, I was told by a number of people that the data would be more useful if presented in another format.  At first I just started creating a bunch of command line python scripts that would suck in these csv files, and spit them out in different formats.  I quickly realized that I could accumulate these scripts and create a quick and dirty web application.</p>
<p>Over a few train rides I created an application called <a href="http://www.dataio.org">DataIO</a>, and today, I finally got a chance to upload it to Google App Engine.  The application is pretty simple to interact with; instructions are located on its <a href="http://www.dataio.org">front page</a>.</p>
<p><span id="more-244"></span></p>
<p>Currently the application can only transpose data and multiply the data set by a given factor.  I hope to soon add a jsonp api that will make it trivial to convert a given data set into a format that plays nice with <a href="http://code.google.com/apis/chart/">google charts</a> and <a href="http://code.google.com/p/flot/">flot</a>.</p>
<p>The code for this application is hosted at <a href="http://bitbucket.org/anil/dataio/">bitbucket</a>.</p>
<p>Just for fun, here is some data from data.topplabs.org, sent through dataIO.</p>
<p><strong>Operating Revenue (transposed and multiplied by 1000000):</strong></p>
<p>http://www.dataio.org/data/f?transpose=true&#038;multiplication_factor=1000000&#038;multiplication_start_row=1</p>
<p><strong>Total Receipts by Agency (transposed and returned in json):</strong></p>
<p>http://www.dataio.org/data/Bt?format=json&#038;transpose=true</p>
<p><strong>Bridges and Tunnels Summary of Total Budgeted Debt Service (multiplied by 100 and returned in csv):</strong></p>
<p>http://www.dataio.org/data/IM?multiplication_factor=100&#038;multiplication_start_row=1&#038;format=csv</p>
]]></content:encoded>
			<wfw:commentRss>http://anilmakhijani.com/2009/04/12/dataio/feed/</wfw:commentRss>
		<slash:comments>3</slash:comments>
		</item>
		<item>
		<title>Compiling a Flowplayer Plugin on Mac OS X</title>
		<link>http://anilmakhijani.com/2009/01/09/compiling-a-flowplayer-plugin-on-mac-os-x/</link>
		<comments>http://anilmakhijani.com/2009/01/09/compiling-a-flowplayer-plugin-on-mac-os-x/#comments</comments>
		<pubDate>Fri, 09 Jan 2009 20:40:14 +0000</pubDate>
		<dc:creator>Anil</dc:creator>
				<category><![CDATA[Flow Player]]></category>
		<category><![CDATA[flash]]></category>
		<category><![CDATA[FlowPlayer]]></category>
		<category><![CDATA[Mac OS X]]></category>
		<category><![CDATA[planetdev]]></category>
		<category><![CDATA[plugin]]></category>

		<guid isPermaLink="false">http://anilmakhijani.com/?p=186</guid>
		<description><![CDATA[For some reason it took me a while to figure out how to compile a flash plugin for Flowplayer. Here were the steps that I took to finally get it working: Install Ant. Instructions for this can be found here Download Adobe Flex 3 SDK. You can download this here. Unzip the Flex 3 SDK [...]]]></description>
			<content:encoded><![CDATA[<p>For some reason it took me a while to figure out how to compile a flash plugin for Flowplayer.  Here were the steps that I took to finally get it working:<br />
<span id="more-186"></span></p>
<ol>
<li>Install Ant.  Instructions for this can be found  <a href="http://www.asceticmonk.com/blog/?p=388">here</a></li>
<li>Download Adobe Flex 3 SDK.  You can download this <a href="http://www.adobe.com/products/flex/flexdownloads/#sdk">here.</a></li>
<li>Unzip the Flex 3 SDK that you just downloaded.
<pre>
% unzip flex_sdk_3.zip
</pre>
</li>
<li> Download the Flowplayer development kit.  The latest version of the development kit can be found <a href="http://flowplayer.org/plugins/flash/writing.html">here.</a></li>
<li> Unzip the Flowplayer development kit.
<pre>% upzip flowplayer.devkit-3.0.3.zip</pre>
</li>
<li> Edit the plugin-build.properties file in the Flowplayer development kit.  Specifically edit the line that says:</li>
<pre>flex3dir=/Users/api/flex3sdk</pre>
<p>to point to the location to which you unzipped the Flex 3 SDK.  After editing my file looks like this:</p>
<pre>flex3dir=/Users/anil/Desktop/flex_sdk_3</pre>
<li> Navigate to the example plugin that is contained within the Flowplayer development kit.  For me this is located here:
<pre>/Users/anil/Desktop/flowplayer.devkit/example</pre>
</li>
<li> Finally, type:
<pre>% ant</pre>
<p>The output should look like this:</p>
<pre>
Buildfile: build.xml

build:
     [echo] ++ flowplayer.helloworld.swf +++
     [echo]
     [echo] checking if flowplayer.helloworld.swf is uptodate
     [echo] main up-to-date: ${uptodate.main}

prepare:
    [unzip] Expanding: /Users/anil/env/flowplayer.devkit/flowplayer.swc into
    /Users/anil/env/flowplayer.devkit/example/build

check-compile-dirs:

check-compile-dirs2:

compile:
     [exec] Loading configuration file
           /Users/anil/Desktop/flex_sdk_3/frameworks/flex-config.xml
     [exec] /Users/anil/env/flowplayer.devkit/example/build
/flowplayer.helloworld.swf (1304 bytes)
     [copy] Copying 1 file to /Users/anil/env/flowplayer.devkit/example/build

BUILD SUCCESSFUL
Total time: 3 seconds
</pre>
</li>
</ol>
<p>Congratulations! You have compiled a flash plugin for Flowplayer!</p>
]]></content:encoded>
			<wfw:commentRss>http://anilmakhijani.com/2009/01/09/compiling-a-flowplayer-plugin-on-mac-os-x/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>Geo Blogroll Plugin Released</title>
		<link>http://anilmakhijani.com/2009/01/07/geo-blogroll-plugin-released/</link>
		<comments>http://anilmakhijani.com/2009/01/07/geo-blogroll-plugin-released/#comments</comments>
		<pubDate>Wed, 07 Jan 2009 22:18:22 +0000</pubDate>
		<dc:creator>Anil</dc:creator>
				<category><![CDATA[Wordpress Development]]></category>
		<category><![CDATA[planetdev]]></category>
		<category><![CDATA[Plugins]]></category>
		<category><![CDATA[Wordpress]]></category>

		<guid isPermaLink="false">http://anilmakhijani.com/?p=170</guid>
		<description><![CDATA[I had promised to clean up and release some of the plugins that went into creating Streetsblog.net. Here is the first one: Geo Blogroll.]]></description>
			<content:encoded><![CDATA[<p>I had <a href="http://anilmakhijani.com/2008/12/03/streetsblognet-launch/">promised</a> to clean up and release some of the plugins that went into creating <a href="http://streetsblog.net">Streetsblog.net</a>.  Here is the first one: <a href="http://anilmakhijani.com/wordpress-dev/geo-blogroll/">Geo Blogroll</a>.</p>
]]></content:encoded>
			<wfw:commentRss>http://anilmakhijani.com/2009/01/07/geo-blogroll-plugin-released/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>New Years Resolutions</title>
		<link>http://anilmakhijani.com/2009/01/02/new-years-resolutions/</link>
		<comments>http://anilmakhijani.com/2009/01/02/new-years-resolutions/#comments</comments>
		<pubDate>Fri, 02 Jan 2009 16:58:16 +0000</pubDate>
		<dc:creator>Anil</dc:creator>
				<category><![CDATA[Resolutions]]></category>
		<category><![CDATA[lifehacker]]></category>
		<category><![CDATA[new years]]></category>
		<category><![CDATA[open source]]></category>
		<category><![CDATA[planetdev]]></category>
		<category><![CDATA[programming]]></category>
		<category><![CDATA[tdd]]></category>

		<guid isPermaLink="false">http://anilmakhijani.com/?p=145</guid>
		<description><![CDATA[Inspired by a friend I am going to create list of new years resolutions: Learn a functional programming language. Any suggestions on which one to try out first? Make fewer mockups and write more code. Web frameworks these days allow for such quick development that I think I would be more productive if I just [...]]]></description>
			<content:encoded><![CDATA[<p>Inspired by <a href="http://blog.kortina.net/post/67446360/2009-resolutions-for-the-new-year">a friend</a> I am going to create list of new years resolutions:</p>
<ul>
<li><strong>Learn a functional programming language.</strong>  Any suggestions on which one to try out first?</li>
<li><strong>Make fewer mockups and write more code.</strong> Web frameworks these days allow for such quick development that I think I would be more productive if I just skipped the Omnigraffle/Photoshop step.</li>
<li><strong>Learn how to engage in effective Test Driven Development.</strong> I have heard of the benefits, but I have never seen a good tutorial on how to do this effectively.  Maybe I just need to look a bit harder.</li>
<li><strong>Don&#8217;t think about work while I am playing and don&#8217;t think about playing when I am working.</strong> Focus is always good.  I am sure at least <a href="http://twitter.com/bhumiz">one person</a> will be happy with this resolution.</li>
<li><strong>Make a daily to do list with no more than three items.</strong> This was suggested by some <a href="http://lifehacker.com">lifehacker</a> post and it seems like a great idea.
<li><strong>Recycle more at home.</strong>  I recycle consistently at work because we have containers for different type of containers, but since I do not at home, I get lazy more often.</li>
<li><strong>Contribute more back to the open source community.</strong> I have written a bunch of code recently that I haven&#8217;t yet checked in to a public repository.  I have to make contributing back a higher priority.</li>
<ul>
]]></content:encoded>
			<wfw:commentRss>http://anilmakhijani.com/2009/01/02/new-years-resolutions/feed/</wfw:commentRss>
		<slash:comments>10</slash:comments>
		</item>
	</channel>
</rss>
