<?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>Ranok&#039;s Ramblings &#187; hacking</title>
	<atom:link href="http://www.r4n0k.com/tag/hacking/feed/" rel="self" type="application/rss+xml" />
	<link>http://www.r4n0k.com</link>
	<description>A peek into my life, and the projects I never complete</description>
	<lastBuildDate>Mon, 14 Jun 2010 12:49:43 +0000</lastBuildDate>
	<generator>http://wordpress.org/?v=2.9.1</generator>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
			<item>
		<title>Back in the Groove</title>
		<link>http://www.r4n0k.com/2009/04/07/back-in-the-groove/</link>
		<comments>http://www.r4n0k.com/2009/04/07/back-in-the-groove/#comments</comments>
		<pubDate>Wed, 08 Apr 2009 04:23:12 +0000</pubDate>
		<dc:creator>ranok</dc:creator>
				<category><![CDATA[For Fun]]></category>
		<category><![CDATA[Projects]]></category>
		<category><![CDATA[Technical]]></category>
		<category><![CDATA[erlang]]></category>
		<category><![CDATA[git]]></category>
		<category><![CDATA[github]]></category>
		<category><![CDATA[hacking]]></category>
		<category><![CDATA[osp]]></category>

		<guid isPermaLink="false">http://www.r4n0k.com/?p=176</guid>
		<description><![CDATA[After taking off the afternoon due to a migraine, and napping for a few hours until it passed, I was looking over some old projects, and decided to get motivated to work on my various Erlang hackery projects. I checked out a fresh copy of Open Server Platform on my new computer, and decided to [...]]]></description>
			<content:encoded><![CDATA[<p>After taking off the afternoon due to a migraine, and napping for a few hours until it passed, I was looking over some old projects, and decided to get motivated to work on my various Erlang hackery projects. I checked out a fresh copy of <a href="http://openserverplatform.com/">Open Server Platform</a> on my <a href="http://www.flickr.com/photos/ranok/3309567067/">new</a> <a href="http://www.flickr.com/photos/ranok/3310396142/">computer</a>, and decided to hack on it some more. There are a number of loose ends I&#8217;d like to tie up before the 0.3 release, but, before I could get down to coding, SVN get my so frustrated that I could no longer deal with it and switched to git, creating a <a href="http://github.com/ranok/open-server-platform/tree/master">new repository on Github</a>. I will keep the <a href="http://code.google.com/p/openserverplatform/">Google Code repository</a> the &#8216;defacto&#8217; repository, where the safer code gets committed, but use Github for the more bleeding edge development due to it&#8217;s simplified branching and merging (among other things).</p>
<p>In the new git setup, I have two branches (aside from master, which follows the SVN repository): otp and no-otp. The no-otp version is currently the stable code that runs just fine, but doesn&#8217;t take advantage of Erlang&#8217;s OTP framework. The otp branch is the more cutting edge OTP aware version, which I hope to fully migrate to soon. With full support for OTP, I should be able to use an already existing distribution platform, and more battle tested redundancy.</p>
<p>This evening, I fixed a long standing bug in the example HTTPd where the server would crash when opening large files due to a shortcut I took with first implementing the server. Originally, the server would read the entire file into a string and then send that to the client, as you can probably see, there is a problem when the server tries to read in a 3.9 GB file (my test file). Now, my servlet takes a much more sane approach, read in the file 1 kilobyte at time, sending that to the client before reading more. This new approach works perfectly, though I had to add some messiness for handling CGI/PHP files and different MIME types. I also added support for the HTTP HEAD command.</p>
<p>Peace and chow,</p>
<p>Ranok</p>
]]></content:encoded>
			<wfw:commentRss>http://www.r4n0k.com/2009/04/07/back-in-the-groove/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
	</channel>
</rss>
