<?xml version="1.0" encoding="UTF-8"?>
<?xml-stylesheet type="text/xsl" media="screen" href="/~d/styles/rss2full.xsl"?><?xml-stylesheet type="text/css" media="screen" href="http://feeds.feedburner.com/~d/styles/itemcontent.css"?><!-- generator="WordPress/2.9.2" --><rss xmlns:feedburner="http://rssnamespace.org/feedburner/ext/1.0" version="0.92">
<channel>
	<title>Shey's Rebellion</title>
	<link>http://www.sheysrebellion.net/blog</link>
	<description>I sleep with pillows on my head.</description>
	<lastBuildDate>Mon, 23 Aug 2010 03:26:20 +0000</lastBuildDate>
	<docs>http://backend.userland.com/rss092</docs>
	<language>en</language>
	
	<atom10:link xmlns:atom10="http://www.w3.org/2005/Atom" rel="self" type="application/xml" href="http://feeds.feedburner.com/sheysrebellion" /><feedburner:info uri="sheysrebellion" /><atom10:link xmlns:atom10="http://www.w3.org/2005/Atom" rel="hub" href="http://pubsubhubbub.appspot.com/" /><item>
		<title>Consuming AMQP messages with Python and Sparkplug</title>
		<description>Consuming AMQP/RabbitMQ messages in Python is simple if you use Sparkplug.  I read &amp;#8220;Building RabbitMQ apps using Python&amp;#8220;, and there&amp;#8217;s just too much code in the monitor method and the separation of concerns aren&amp;#8217;t very clear. 
With Sparkplug, you create a configuration file, then define Consumer class to handle each message.  As messages [...]&lt;img src="http://feeds.feedburner.com/~r/sheysrebellion/~4/2TqZd5r0w7g" height="1" width="1"/&gt;</description>
		<link>http://feedproxy.google.com/~r/sheysrebellion/~3/2TqZd5r0w7g/</link>
			<feedburner:origLink>http://www.sheysrebellion.net/blog/2010/08/22/consuming-amqp-messages-with-python-and-sparkplug/</feedburner:origLink></item>
	<item>
		<title>Simple, Expressive Builders in Python</title>
		<description>Jesse has written a great blog post on using test builders to improve the expressiveness of unit tests. He has convinced me that builders are useful and that they provide an easy way to construct objects that are in a valid state. Testing can be hard; I find defining a method for each of the [...]&lt;img src="http://feeds.feedburner.com/~r/sheysrebellion/~4/7dJOEFXWQD0" height="1" width="1"/&gt;</description>
		<link>http://feedproxy.google.com/~r/sheysrebellion/~3/7dJOEFXWQD0/</link>
			<feedburner:origLink>http://www.sheysrebellion.net/blog/2010/08/09/simple-expressive-builders-in-python/</feedburner:origLink></item>
	<item>
		<title>Dependency Injection</title>
		<description>My previous discussion on Inversion of Control raised some questions so I want to take a step back and discuss Dependency Injection.  Dependency Injection is a pattern where software components (classes, methods or functions) are given their dependencies as parameters and these software components do not instantiate their dependencies directly.
Dependency Injection is an important [...]&lt;img src="http://feeds.feedburner.com/~r/sheysrebellion/~4/NuzKbL0jqg4" height="1" width="1"/&gt;</description>
		<link>http://feedproxy.google.com/~r/sheysrebellion/~3/NuzKbL0jqg4/</link>
			<feedburner:origLink>http://www.sheysrebellion.net/blog/2010/01/18/dependency-injection/</feedburner:origLink></item>
	<item>
		<title>Moneytracking API, Ruby, Mash and HTTParty</title>
		<description>Moneytrackin is a cool online accounting application that lets you track expenses and income, unlike other accounting applications it lets you add tags to each transactions. I love it!&amp;#160; Tagging transactions makes it easier to track exactly where my money is going; not only can I see how much money I’ve spent on junk food [...]&lt;img src="http://feeds.feedburner.com/~r/sheysrebellion/~4/gjH8AebGpNE" height="1" width="1"/&gt;</description>
		<link>http://feedproxy.google.com/~r/sheysrebellion/~3/gjH8AebGpNE/</link>
			<feedburner:origLink>http://www.sheysrebellion.net/blog/2009/10/11/moneytracking-api-ruby-mash-and-httparty/</feedburner:origLink></item>
	<item>
		<title>Install sqlite3 for RoR on Windows Vista</title>
		<description>SQLite is a great little embeddable database engine but the installation of the Ruby library is not obvious or straightforward on Windows XP or Vista.  To install SQLite for Ruby 1.8, perform the following steps:

download sqlitedll-3_6_18.zip,
copy the two files that are part of the archive to your Ruby bin directory;
run &amp;#8220;gem install &amp;#8211;version 1.2.3 sqlite3-ruby&amp;#8221; [...]&lt;img src="http://feeds.feedburner.com/~r/sheysrebellion/~4/KiP3o6wirdw" height="1" width="1"/&gt;</description>
		<link>http://feedproxy.google.com/~r/sheysrebellion/~3/KiP3o6wirdw/</link>
			<feedburner:origLink>http://www.sheysrebellion.net/blog/2009/09/19/install-sqlite3-for-ror-on-windows-vista/</feedburner:origLink></item>
	<item>
		<title>Inversion of Control in Python</title>
		<description>Coming from a .NET background and having applied SOLID principles to software development, I was surprised by the lack of inversion of control containers for Python.
The few discussions I read online implied that Python doesn’t need an IoC framework because it is a dynamically typed language.  Dynamically typed languages eliminate the need to use interfaces, [...]&lt;img src="http://feeds.feedburner.com/~r/sheysrebellion/~4/vw7FwBpUa5A" height="1" width="1"/&gt;</description>
		<link>http://feedproxy.google.com/~r/sheysrebellion/~3/vw7FwBpUa5A/</link>
			<feedburner:origLink>http://www.sheysrebellion.net/blog/2009/08/24/inversion-of-control-in-python/</feedburner:origLink></item>
	<item>
		<title>Change point analysis in Python</title>
		<description>With most of the paperwork done I&amp;#8217;ve started to make use of my free time in Toronto.  In an effort to improve my Python programming I implemented a cummulative sum estimation based change point detection algorithm in Pyton based on an article by Dr. Wayne A. Taylor.  The changepoint project is available on Google code&amp;#8211; [...]&lt;img src="http://feeds.feedburner.com/~r/sheysrebellion/~4/1D7GckVKQwc" height="1" width="1"/&gt;</description>
		<link>http://feedproxy.google.com/~r/sheysrebellion/~3/1D7GckVKQwc/</link>
			<feedburner:origLink>http://www.sheysrebellion.net/blog/2009/08/19/change-point-analysis-in-python/</feedburner:origLink></item>
	<item>
		<title>Not so random personal update</title>
		<description>I&amp;#8217;m moving to Canada!  By the time this post is published, I should be 40,000 ft. in the air, relaxing, reflecting upon a dream come true.  Blogging and tweeting will be light as I get settled in my new home in Canada.
AgilePakistan.org needs a new lead, if anyone in Karachi wants to take over AgilePakistan.org [...]&lt;img src="http://feeds.feedburner.com/~r/sheysrebellion/~4/j748z6Zuz9w" height="1" width="1"/&gt;</description>
		<link>http://feedproxy.google.com/~r/sheysrebellion/~3/j748z6Zuz9w/</link>
			<feedburner:origLink>http://www.sheysrebellion.net/blog/2009/07/23/not-so-random-personal-update/</feedburner:origLink></item>
	<item>
		<title>Erlang Exercise: Implementing Talk with Distributed Erlang</title>
		<description>Here’s my solution for the Talk with Distributed Erlang exercise.
You can run the program by calling the start function, but first you must generate a cookie and start two named Erlang nodes using the following commands:

echo -n &amp;#8220;dh32d8yhd8&amp;#8243; &amp;#62; erlang.cookie
erl -name Node1 -cookie
erl -name Node2 -cookie&lt;img src="http://feeds.feedburner.com/~r/sheysrebellion/~4/1k9uI5foVjo" height="1" width="1"/&gt;</description>
		<link>http://feedproxy.google.com/~r/sheysrebellion/~3/1k9uI5foVjo/</link>
			<feedburner:origLink>http://www.sheysrebellion.net/blog/2009/07/02/erlang-exercise-implementing-talk-with-distributed-erlang/</feedburner:origLink></item>
	<item>
		<title>AMQP Kool-Aid Part 1.5: RabbitMQ Benchmark</title>
		<description>Introduction
As stock markets open, order management systems are flooded with new orders and it&amp;#8217;s crucial that an OMS not miss prices or drop orders during this period.  The purpose of this initial benchmark is to simulate a flood of orders hitting the queue.
Benchmark
The benchmarking script sets up 10 queues, 10 producers and 10 consumers, each [...]&lt;img src="http://feeds.feedburner.com/~r/sheysrebellion/~4/uDCZMtElfCA" height="1" width="1"/&gt;</description>
		<link>http://feedproxy.google.com/~r/sheysrebellion/~3/uDCZMtElfCA/</link>
			<feedburner:origLink>http://www.sheysrebellion.net/blog/2009/06/24/amqp-kool-aid-part-15-rabbitmq-benchmark/</feedburner:origLink></item>
</channel>
</rss>
