<?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>Luke Maurits &#187; prettytable</title>
	<atom:link href="http://luke.maurits.id.au/blog/tag/prettytable/feed/" rel="self" type="application/rss+xml" />
	<link>http://luke.maurits.id.au</link>
	<description>Assorted geekery</description>
	<lastBuildDate>Sun, 06 Mar 2011 06:52:47 +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>The unexpected success of PrettyTable</title>
		<link>http://luke.maurits.id.au/blog/2009/05/the-unexpected-success-of-prettytable/</link>
		<comments>http://luke.maurits.id.au/blog/2009/05/the-unexpected-success-of-prettytable/#comments</comments>
		<pubDate>Sat, 30 May 2009 19:26:58 +0000</pubDate>
		<dc:creator>Luke Maurits</dc:creator>
				<category><![CDATA[Uncategorized]]></category>
		<category><![CDATA[google code]]></category>
		<category><![CDATA[prettytable]]></category>
		<category><![CDATA[pypi]]></category>
		<category><![CDATA[software]]></category>

		<guid isPermaLink="false">http://luke.maurits.id.au/blog/2009/05/the-unexpected-success-of-prettytable/</guid>
		<description><![CDATA[I&#8217;ve been a bit lazy lately with regards to keeping this blog up to date on matters relating to my free software.
PrettyTable, which I released back in February (as blogged here) has been an unexpected smash hit.  Not so long after I released it, I thought that since, unlike a lot of my other [...]]]></description>
			<content:encoded><![CDATA[<p>I&#8217;ve been a bit lazy lately with regards to keeping this blog up to date on matters relating to my free software.</p>
<p>PrettyTable, which I released back in February (as blogged <a href="http://luke.maurits.id.au/blog/2009/02/prettytable-0-1-released/">here</a>) has been an unexpected smash hit.  Not so long after I released it, I thought that since, unlike a lot of my other projects it was of quite general interest and also fairly complete / robust, I&#8217;d try something different and put it up on <a href="http://pypi.python.org">PyPI</a>, the official Python package index and the nearest thing Python has to an equivalent of Perl&#8217;s venerable CPAN.  I figured this would help the project get a little bit of exposure, but I never expected what happened next!</p>
<p>It wasn&#8217;t even a week before I got an email from someone letting me know how much he liked the project.  A little later he wrote <a href="http://dancingpenguinsoflight.com/2009/04/printing-tabular-data-attractively-in-python/">a blog entry on it</a>.  Motivated by this I released an updated second version, which quickly received a bug report from someone who had been using 0.1 &#8220;often&#8221;!  This user kindly tested a fix for this bug which became 0.2.1.  More and more people started emailing me to report problems or suggest problems and eventually even contributing code!  Everything that is <em>supposed</em> to happen in the &#8220;magic pixie dust&#8221; view of open source software was happening and I was amazed, since nothing else I&#8217;ve ever written has received so much as a single &#8220;thank you&#8221; email.  By the time 0.5 was almost readily I was sending regular emails to an impromptu mailing list of 5 or so consistently interested and helpful people announcing changes and asking for feedback.  It was starting to become clear that PrettyTable might grow a larger community than I could easily manage by myself with nothing more than a self-hosted webpage and a manually administered mailing list, and on the advice of one of 5 &#8220;friends of PrettyTable&#8221; I set up a <a href="http://code.google.com/p/prettytable">project</a> at <a href="http://code.google.com">Google code</a>.  Google code is very similar in spirit to the older and better known <a href="http://www.soureceforge.net">Sourceforge project</a>, providing free facilities like file hosting, documentation wikis, mailing lists and version management repositories to free software projects.</p>
<p>The move to Google code, for reasons that still elude me, really thinned out my burgeoning little community.  Only two people from the &#8220;friends of PrettyTable&#8221; mailing list subscribed to any of the new official mailing lists (although other people I&#8217;d had no previous contact with have joined them so there&#8217;s not been much of a net loss).  This was a surprise since things had been going so swimmingly previously.  The project is by no means in danger of collapsing &#8211; in fact, someone from the <a href="http://www.debian.org">Debian project</a>, which distributes one of the oldest and most respected GNU/Linux distributions, recently contacted me to let me know he was submitting PrettyTable to Debian&#8217;s famously large package repositories, which I expect will bring in a ton of interest.  I just wish I knew what was so off-putting about the move from a visibly amateur project with hand-manged mailing lists to somewhere with a fairly slick web interface for reporting bugs and other communications.  Possibly there exists a misconception that using Google code requires a gmail account or something.</p>
<p>At any rate, I&#8217;ve really enjoyed PrettyTable&#8217;s rapid growth and the project feels like it is moving in a good direction.  I plan to release 0.6 fairly soon, which will be a backward-compatibility breaking release in which the basic API is finalised, in a state which I feel is as clean and Pythonic as it can be.  There are a few more features that need to be implemented but I imagine it will be a month or two at most before I have something I am happy to call 1.0, which I am cautiously optimistic will become a somewhat well known and regularly used library.</p>
<p>One question I&#8217;d like to have answered is how much of PrettyTable&#8217;s unprecedented success is due to me putting it on PyPI and how much of it is due to it simply being better or more interesting than other things I&#8217;ve written.  I put <a href="/software/httpeek/">HTTPeek</a> on PyPI shortly after PrettyTable to try to investigate this, and so far I haven&#8217;t heard anything about it from anyone.  This is probably not enough evidence to make a decision, though, it might be that HTTPeek simply sucks (it turns out a good chunk of its functionality can also be provided by Firefox extensions, so perhaps that&#8217;s why it gets no love).  I&#8217;ll probably start releasing more stuff on PyPI in future to get a better feel for this.  I have quite a few projects under way or at least in my head at the moment, including a web browser with a Tk interface (I&#8217;ve already written this to a pretty complete degree, but I did it in Python 3, to get a feel for the changes, but probably need to backport it to 2.6 before releasing it because the lack of good libraries like <a href="http://www.crummy.com/software/BeautifulSoup/">BeautifulSoup</a> and the <a href="http://www.pythonware.com/products/pil/">Python Imaging Library</a> on 3.0 is holding me back too much) and a few tools related to the sadly under-appreciated <a href="http://www.foaf-project.org/">FOAF project</a>.</p>
]]></content:encoded>
			<wfw:commentRss>http://luke.maurits.id.au/blog/2009/05/the-unexpected-success-of-prettytable/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>PrettyTable 0.1 released</title>
		<link>http://luke.maurits.id.au/blog/2009/02/prettytable-0-1-released/</link>
		<comments>http://luke.maurits.id.au/blog/2009/02/prettytable-0-1-released/#comments</comments>
		<pubDate>Tue, 24 Feb 2009 21:47:52 +0000</pubDate>
		<dc:creator>Luke Maurits</dc:creator>
				<category><![CDATA[Uncategorized]]></category>
		<category><![CDATA[prettytable]]></category>
		<category><![CDATA[software]]></category>

		<guid isPermaLink="false">http://luke.maurits.id.au/blog/2009/02/prettytable-0-1-released/</guid>
		<description><![CDATA[Today I released a simple Python library that I wrote during a 3 hour train ride from Newcastle to Sydney last weekend (more on what I was doing there in a later enry!), which I&#8217;ve decided to call PrettyTable.  It contains a single class of that name whose job is to make it easy [...]]]></description>
			<content:encoded><![CDATA[<p>Today I released a simple Python library that I wrote during a 3 hour train ride from <a href="http://en.wikipedia.org/wiki/Newcastle,_New_South_Wales">Newcastle</a> to Sydney last weekend (more on what I was doing there in a later enry!), which I&#8217;ve decided to call <a href="/software/prettytable/">PrettyTable</a>.  It contains a single class of that name whose job is to make it easy to print nice-looking ASCII tables like this:</p>
<pre><code>+-----------+------+------------+-----------------+
| City name | Area | Population | Annual Rainfall |
+-----------+------+------------+-----------------+
| Adelaide  | 1295 |  1158259   |      600.5      |
| Brisbane  | 5905 |  1857594   |      1146.4     |
| Darwin    | 112  |   120900   |      1714.7     |
| Hobart    | 1357 |   205556   |      619.5      |
| Sydney    | 2058 |  4336374   |      1214.8     |
| Melbourne | 1566 |  3806092   |      646.9      |
| Perth     | 5386 |  1554769   |      869.4      |
+-----------+------+------------+-----------------+</code></pre>
<p>Some of you may recognise the style of table from the PostgreSQL shell <tt>psql</tt>, which was the inspiration for PrettyTable.</p>
<p>It&#8217;s quite a simple little piece of code (you can read about the various options at the page linked to above, and you can even see the <a href="/software/prettytable/prettytable_api.html">Pydoc API</a> &#8211; this is actually the first time I&#8217;ve used Pydoc on my own software!) but it&#8217;s also the kind of thing that I suspect will actually find use in a wide range of future projects, both of my own and hopefully of others.</p>
]]></content:encoded>
			<wfw:commentRss>http://luke.maurits.id.au/blog/2009/02/prettytable-0-1-released/feed/</wfw:commentRss>
		<slash:comments>2</slash:comments>
		</item>
	</channel>
</rss>

