1 x 52 Week 4: Jambx, Twitter for Song Lyrics
This week, I built jambx (“jambox”): Twitter for song lyrics. I often have songs stuck in my head and would like to share the lyrics, but I don’t want to spam my Facebook/Twitter/Gplus friends. I’ve also seen others post lyrics everywhere, since the dawn of the ‘net – from Xanga pages, to AIM profiles, to Facebook, Twitter, and personal profiles. Time for a dedicated lyric livefeed.
Since it’s a Twitter clone, I figured there had to be tons of open-source implementations out there – and there were. If one was decent, I was happy to use a framework rather than building this from scratch, for the sake of getting the project up and running quickly.
So, I ended up building this on the Jisko framework, after trying both Floopo and Status.net (formerly Laconica).
I tried Floopo first. Floopo wasn’t cool becuase it wasn’t actually completely open source – they wanted me to spend $40 to remove an advertisement. Bah. So after installing it and playing around with it a bit, I installed Status.net, probably the most famous Twitter clone (which Indenti.ca runs off of).
Status.net might be well-supported – it has a big community with plugins and themes and stuff – but I didn’t like that much, either. The “themes” aren’t designed to allow you to change the layout at all, just the css and images. So, to actually change any of the real layout stuff (much less more embedded code), you have to go pretty deep in the source to edit. Not only is that difficult to do not knowing the code (and it’s not well-documented), the the software is difficult to upgrade, too. Bah.
Finally, I found Jisko. It’s not supported anymore – hasn’t been since 2010 – but the structure is WAY better suited to customization. Done and done. The theme Jisko comes with needs a lot of cleaning up, but otherwise, it works pretty well.
So, I made a cleaned-up Jisko theme, and using new Twitter Bootstrap project for a nice, quick, pretty UI. Hooray!
This project was really good, for a few reasons. For one, it was an experiment in starting from an open-source project, rather than starting from scratch. Andy, who’s a total programming god, is a super-purist when it comes to this.. so I think I tend to try to write things from scratch too often. After spending several hours on the first two frameworks, I was feeling like I probably should have just written this from the ground up. Then, sticking with it panned out – Jisko seems worth it. Start to finish, I spent probably 10 hours on this project – it would have been a lot more if I’d done it all from scratch. And, the project actually has a lot more built-in functionality that I’m not even using here, that could be used later.
If Jisko is good, the second reason this project was really good is that Jisko is bad.
The theme code is okay, but not impressive. Between inline styling (yuck!), really bad DRY issues (yuckie!), bad tabbing and inconsistent coding practices, I ended up cleaning things up a LOT as I went along. I found something pretty similar with Floopo, and even Status.net. Weirdly enough, that was actually a good thing – it showed me that I am a good enough coder to start contributing to open-source projects, maybe even selling projects.
Finally, I got to play around with the new Twitter styling that came out, that was cool.
So now I’ll promote jambx in a few places, and see if people enjoy it. I think it’s something I’d actually use – what do you think, would you use it? Head on over to Jambx and check it out! If you have ideas and such, I love feedback! <3
Hehe, thanks for pointing that out.
I’ve added some links now! And another one here for good measure: http://jambx.com
Just observed.. in the entire blog post, you forgot to add link to jambx
Send some link juice to your site
Thanks!
Hey… Good to see that you’re making waves. Keep up the good work!
Hey Lucky, thanks for stopping by! Maybe one of the 52 projects needs to be a music video sharing site.
I’m checking out your 65 lessons now
Just came into the blog via HN.. Interesting project you have here. Regarding Jambx, I can pass – just coz I don’t share lyrics a lot. Most of the times, I share Videos of Songs!! If something like that comes up, then cool