dj edna project

You are currently browsing articles tagged dj edna project.

What’s In A Name?

One of the most common questions I get about this project is “How do you pronounce djedna?  And, what the heck does it mean?”  When someone asks me this I usually smile and say, “Well, it depends.”

I refer the software project itself as DJ Edna.  As in, Disc Jockey Edna.  When referring to the organization (djedna.org) or the company (djedna.com) I usually pronounce it as a single word: djedna (pronounced “jed-na”).

Neither of these are “official,” it’s just how I’ve been referring to them.  Everyone else is entitled to their own whim.

As for the meaning of “djedna,” you can probably guess that it has multiple interpretations as well.

  1. A djed is a pillar-like ancient Egyptian symbol representing stability.  It has been interpreted as the backbone of the Egyptian god of life, death, and fertility, Osiris.  With this interpretation, djedna is the backbone of a musician’s on-line presence.

    Egyptian Djed

    Egyptian Djed

  2. Django (named after jazz guitarist Django Reinhardt) is the pythonic web framework DJ Enda is written with and I felt it appropriate to choose a name for the project that started with “dj”.

    Django Reinhardt

  3. A “DJ” or Disc Jockey is a person who selects and plays recorded music for an audience.  Edna is a female name that has fallen out of favor with parents in recent years and thus brings to mind a matronly image.  Putting the two together you get a grandmother wearing studio headphones, constantly pushing warm cookies and hot tracks on the masses.

    Edna Mode - Not Exactly The Edna I Had In Mind

    Edna Mode - Not Exactly The Edna I Had In Mind

  4. It’s an increasingly rare, six-letter domain name that I was able to snag .org, .com, and .net for.

So, there it is.  The pronunciation and meaning of djedna.  Clear as mud?

Tags: ,

I’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’ve had for as long as there have been MP3s — to create my own jukebox to securely access my entire music collection from any browser in the world. It wasn’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, djedna.catalog. Thus, my work on djedna.catalog2 began.

Here is a tag cloud that I created from the djedna.catalog2.models file using the very cool website, wordle:

djedna.catalog2.models tagcloud

Yes, that’s from the actual source code and yes, I’m a big geek. So, what do all these occurrences of “self” and “path” and “relative” get us? Here’s a list of new features that catalog2 will bring to the table when completed:

  • 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.
  • Django Sites support to allow record labels to administer many individual artist sites from a single interface.
  • The ability to add arbitrary “digital assets” like images, PDFs, or any other file to downloads. Downloads in the previous version would only contain the tracks.
  • Support for WAV files in addition to MP3 including the ability to attach multiple versions to a Track.
  • Amazon S3 support for storing and serving media.
  • Full separation of functionality from presentation in order to make DJ Edna a fully plugable Django application.
  • Brand new default interface/design (or “theme”) called Marlowe.

That list of improvements is just off the top of my head. There’s a lot of little improvements going into this re-write that I’m sure I’m overlooking.

That’s the good news. There’s a boatload of new, highly requested features

The bad news is it’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 djedna.com umbrella — you know who you are). This shouldn’t come as a surprise to anyone with development experience. Coding always takes longer than you think — even when you think it’ll take longer than you think. Yes, that’s recursion and yes, I’m a big geek.

Although I’ve completed most of the low level coding for the re-write (with some exceptions), I’ve been avoiding starting on Marlowe, the new default “theme”. That’s because HTML/CSS design is not my strong suit. If it’s your cup of tea and you’d be interested in helping out (Django experience/knowledge is not required), send an e-mail to thomas@djedna.org.

Back to the code…

Tags: ,

I gave a somewhat rambling presentation about the DJ Edna project and developing with Django at MinneBar last Saturday. It went off mostly without a hitch, including the to-be-expected demonstration error. I had neglected to test the sign-up functionality on my laptop before the demo and, of course, that’s what everyone wanted to see. Instead, they saw a Django error/debug page (which, in and of itself, is kinda cool to look at — it’s one of Django’s nice-to-have out-of-the-box features).

“Can’t assign requested address”

Had I actually tested registration on the laptop (as opposed to only on my main development machine) I’d have discovered that it was not configured to send outgoing e-mail, such as when you sign-up for a new account. Doh! And the error message “Can’t assign requested address” threw me too. Luckily, it was the end of the session so I was able to graciously get out of it, but for those of you that were there, that’s what the error was.

That’s it for my postmortem comments. Back to the code for me. If you were at MinneBar and happened to see me present, feel free to leave a comment or ask any follow-up questions on this post.

Also remember that you can follow DJ Edna progress on the project timeline or check out the roadmap of where the project is headed.

Tags: ,

It was released last night. I go on at 11:00 in room 324. See you Saturday.

Tags: ,

I took some time away from coding this morning to work on the DJ Edna Project Trac. I configured it to use Askimet spam filtering so I could re-enable anonymous ticket creation after a flood of “spam tickets” forced me to turn it off a week ago.

Since I was in a Trac mood, I went ahead and began to set up project milestones and some tickets to outline what needs to be done to reach them.

If you’re waiting for the code to hit a stable point, you might want to subscribe to the active ticket RSS feed to know when we hit our first major release, “Nessman”. Of course, chances are that when that happens, there will be an excited post here on the blog too.

If you just want to try things out, there’s no need to wait for Nessman. In fact, the installation instructions have been greatly simplified so feel free to dive in, the water is warm. And if you do happen to hit any snags along the way, you can always ask questions on the DJ Edna Users Group or submit a ticket.

Tags:

« Older entries