<?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"
	>

<channel>
	<title>djedna.org &#187; 2008 &#187; June</title>
	<atom:link href="http://www.djedna.org/blog/2008/06/feed/" rel="self" type="application/rss+xml" />
	<link>http://www.djedna.org/blog</link>
	<description>Software For The Rockstar's Geek Friend</description>
	<pubDate>Thu, 28 Aug 2008 14:36:18 +0000</pubDate>
	<generator>http://wordpress.org/?v=2.6</generator>
	<language>en</language>
	<image>
  <link>http://www.djedna.org/blog</link>
  <url>http://www.djedna.org/blog/favicon.ico</url>
  <title>djedna.org</title>
</image>
		<item>
		<title>An Update In A Tag Cloud</title>
		<link>http://www.djedna.org/blog/2008/06/23/an-update-in-a-tag-cloud/</link>
		<comments>http://www.djedna.org/blog/2008/06/23/an-update-in-a-tag-cloud/#comments</comments>
		<pubDate>Mon, 23 Jun 2008 19:30:57 +0000</pubDate>
		<dc:creator>thomas</dc:creator>
		
		<category><![CDATA[architecture]]></category>

		<category><![CDATA[dj edna project]]></category>

		<guid isPermaLink="false">http://www.djedna.org/blog/2008/06/23/an-update-in-a-tag-cloud/</guid>
		<description><![CDATA[I&#8217;ve been hard at work on an almost complete re-write of the DJ Edna codebase.  The original version of DJ Edna was written mainly as a way to learn Django and to scratch an itch of mine that I&#8217;ve had for as long as there have been MP3s &#8212; to create my own jukebox [...]]]></description>
			<content:encoded><![CDATA[<p>I&#8217;ve been hard at work on an almost complete re-write of the DJ Edna codebase.  The original version of DJ Edna was written mainly as a way to learn Django and to scratch an itch of mine that I&#8217;ve had for as long as there have been MP3s &#8212; to create my <a href="http://djedna.gumption.com/" onclick="javascript:pageTracker._trackPageview('/outbound/article/djedna.gumption.com');">own jukebox</a> to securely access my entire music collection from any browser in the world.  It wasn&#8217;t until I was almost done with that personal project that I hit upon the idea of opening up the code and using it to build digital music distribution sites for artists.  Although I was able to finagle the code to work well for this new use, there were some ugly kluges and late decisions that necessitated a rewrite of the core package, <a href="http://djedna.org/project/browser/trunk/djedna/catalog" ><code>djedna.catalog</code></a>.  Thus, my work on <a href="http://djedna.org/project/browser/trunk/djedna/catalog2" ><code>djedna.catalog2</code></a> began.</p>
<p>Here is a tag cloud that I created from the <a href="http://djedna.org/project/browser/trunk/djedna/catalog2/models.py" ><code>djedna.catalog2.models</code></a> file using the very cool website, <a href="http://wordle.net/" onclick="javascript:pageTracker._trackPageview('/outbound/article/wordle.net');">wordle</a>:</p>
<p><a href='http://www.djedna.org/blog/wp-content/uploads/2008/06/catalog2-tagcloud.png' title='djedna.catalog2.models tagcloud'><img src='http://www.djedna.org/blog/wp-content/uploads/2008/06/catalog2-tagcloud.png' alt='djedna.catalog2.models tagcloud' width="500" /></a></p>
<p>Yes, that&#8217;s from the actual source code and yes, I&#8217;m a big geek.  So, what do all these occurrences of &#8220;self&#8221; and &#8220;path&#8221; and &#8220;relative&#8221; get us?  Here&#8217;s a list of new features that <code>catalog2</code> will bring to the table when completed:</p>
<ul>
<li>Artist interface (to go along with the existing Fan and Admin interfaces) to allow track uploads, simplified meta-information editing, and music e-commerce workflows.</li>
<li><a href="http://www.djangoproject.com/documentation/sites/" onclick="javascript:pageTracker._trackPageview('/outbound/article/www.djangoproject.com');">Django Sites</a> support to allow record labels to administer many individual artist sites from a single interface.</li>
<li>The ability to add arbitrary &#8220;digital assets&#8221; like images, PDFs, or any other file to downloads.  Downloads in the previous version would only contain the tracks.</li>
<li>Support for WAV files in addition to MP3 including the ability to attach multiple versions to a Track.</li>
<li><a href="http://aws.amazon.com/s3" onclick="javascript:pageTracker._trackPageview('/outbound/article/aws.amazon.com');">Amazon S3</a> support for storing and serving media.</li>
<li>Full separation of functionality from presentation in order to make DJ Edna a fully <a href="http://djangoplugables.com/" onclick="javascript:pageTracker._trackPageview('/outbound/article/djangoplugables.com');">plugable Django application</a>.</li>
<li>Brand new default interface/design (or &#8220;theme&#8221;) called <a href="http://en.wikipedia.org/wiki/Jennifer_Marlowe" onclick="javascript:pageTracker._trackPageview('/outbound/article/en.wikipedia.org');">Marlowe</a>.</li>
</ul>
<p>That list of improvements is just off the top of my head.  There&#8217;s a lot of little improvements going into this re-write that I&#8217;m sure I&#8217;m overlooking.</p>
<p>That&#8217;s the good news.  There&#8217;s a boatload of new, highly requested features</p>
<p>The bad news is it&#8217;s taking much longer than I had anticipated (apologies to those that are waiting patiently for me to complete this before starting on their implementations under the <a href="http://www.djedna.com/" onclick="javascript:pageTracker._trackPageview('/outbound/article/www.djedna.com');">djedna.com</a> umbrella &#8212; you know who you are).  This shouldn&#8217;t come as a surprise to anyone with development experience.  Coding always takes longer than you think &#8212; even when you think it&#8217;ll take longer than you think.  Yes, that&#8217;s recursion and yes, I&#8217;m a big geek.</p>
<p>Although I&#8217;ve completed most of the low level coding for the re-write (with some exceptions), I&#8217;ve been avoiding starting on Marlowe, the new default &#8220;theme&#8221;.  That&#8217;s because HTML/CSS design is not my strong suit.  If it&#8217;s your cup of tea and you&#8217;d be interested in helping out (Django experience/knowledge is <em>not</em> required), send an e-mail to <a href="mailto:thomas@djedna.org">thomas@djedna.org</a>.</p>
<p>Back to the code&#8230;</p>
]]></content:encoded>
			<wfw:commentRss>http://www.djedna.org/blog/2008/06/23/an-update-in-a-tag-cloud/feed/</wfw:commentRss>
		</item>
	</channel>
</rss>
