July 2006 Archives
I was just recently talking to a friend about an old project that i keep hacking on, never releaseing anything, when he showed some interest. Well, this fired me all up and i’ve been going crazy looking into all kinds of web application tools again. One thing that i have been looking for is a remoting package that runs via Python. While there are several open source implementations with AMFPHP being the most well known, there is only this alpha version for python. Its old, unsupported and just doesn’t look that appealing.
While searching around, i rediscovered flashticle, which i actually already knew about, but had never taken the time to check out. Foolish me!
At first the plug-in for TurboGears was the most interesting thing, but, unfortunatly, TG has undergone some major changes, and the TG plugin is no longer working. All was not lost, i had also noticed a wsgi gateway, and i decided to see if i could figure out how to get it running.
With Python 2.5 including a wsgi server in the standard library, i was able to get the server (wsgiref) from the cheeseshop.
With these in hand, a little experimentation and some time, i was able to get it running with a minimum of fuss. Wicked! Flash remoting using a Python backend!
This was not, however, enough. I was also thinking about other web-related applications which i might want to deploy. Having read a bunch about how wsgi makes it so easy to create your own web-framework, i decided to give it a go - the best way to learn something is to actually try it out.
So far i’ve only included a basic dispatcher (selector), but hooking it in with the already working flash remoting gateway was a no brainer. Here is the current code::
from wsgiref.simple_server import make_server, demo_app
import flashticle.wsgigateway
gate = flashticle.wsgigateway.paste_app({'service HelloWorld':"HelloWorld:HelloWorld"})
from selector import Selector
s = Selector()
s.add('/flashgateway', GET=gate, POST=gate)
httpd = make_server('', 8000, s)
print "Serving HTTP on port 8000..."
httpd.serve_forever()
Anyway, this is pretty cool shit, and i’m pumped about having remoting available in Python. Thank you Bob!
That is all.
Well, i managed a (slow) 30 minute run with no stops today. I think it was 4 times around the park - i’ve got to measure it, so i know how far i’m going.
Also had my second Pilates class yesterday. I have to say, i wish i’d gotten involved with a pilates group right after i’d injured my back, i think i could have avoided a lot of extra pain and discomfort. Just after two class’ i’m becoming much more aware of my body, and my back in particular. I can tell when i’m sitting incorrectly, and feel the muscles complaining. I’m starting to realize what things should feel like, and how much better that is! I’ve become so used to my messed-upness that i didn’t even realize how messed-up i was!
Ciara is also kicking ass and taking names at boot camp, so that’s amazing too. Overall, we are both, finally, getting our act’s together. And it feels pretty good.
Loin Kimbro asks that question and comes up with an interesting answer - “Eudaimonia”.
His arguments hold weight for me, as i’ve always tangled with the issues of moral realitivism, and how to judge “worthyness”. I think virtue is an excellent choice, and it works for me on a number of levels. Not only because of its ties to the old school CRPG Ultima, i swear.
Anyway, i thought he had some interesting things to say, and looking at myself through this kind of lens makes for interesting introspection (which i won’t go into here).
Alx was asking what kind of Cell phone i have, because he was impressed with this picture. Well, i have the Motorola e815 because of all the available info on how to hack it. The picture is good, but i have done a fair amount of retouching to make it so. Sharpening, resizing and tweaking the contrast have all helped to make that image really good. Not all of them look that good!
I’ve been keeping up with the running every other day. Still at 30 minutes, 20 on, 10 off. Today is my first pilates lesson at Mind the Body. I’m looking forward to it, although i’m a bit apprehensive of how i’ll do. The first time i took a pilates class i cramped up something fierce!
And its a rainy day here in Toronto. Glad i did my jog yesterday! And tomorrow looks like it wont be rainy either! Excellent.
Again with the jogging. Was out on Monday and today. Still not going for more then half an hour, but it seems like a lot to me! Started doing one and a half minute jogs, with a minute off.
If nothing else, i’m getting more flexible - my post-jog stretches are getting better! I think today is call the Mind the Body people and setup some pilates lessons.
Why, you might ask, do i even want to replace iTunes on our PC’s? What could possibly drive me to attempt this surprisingly difficult switch? Well, dear reader, let me tell you.
First, i need to tell you a bit about our setup here. I’ve got my main computer in the office upstairs. Then there is the laptop, which Ciara uses, downstairs. Then in the basement is the “server”, which has all the audio files - this is also running the Slimserver software for our Slimp3 player.
Now, i have a few, modest, needs when considering software for play-back of our audio files. It needs to support a variety of formats, say, mp3, Ogg and Flac (iTunes fails here). It needs to sync with an iPod. It needs to be able to transcode from a format that an iPod can’t play to one that it does (eg. a .flac file to a .mp3 file). It would be nice if it noticed when there was new music on the server, rather then doing it manually. I should also mention that i’m not looking for ripping tools - i use Exact Audio Copy for all my ripping needs.
I’ve tried quite a few players that cover most of these requirements. MediaMonkey, Musicmatch, Anapod and Winamp. Here is a quick run-down of how they worked, or didn’t, for me.
MediaMonkey
One thing this app has going for it is great tagging tools. It will get album artwork and other info automatically. It supports most Winamp plugins, which is pretty cool. It does transcoding when syncing with an iPod (or any portable device). It will automatically scan selected folders, looking for new audio files. It supports lots of formats. The biggest draw back, and the reason i didn’t choose it, is its interface. It uses the 2 pane style, like what you’d get from using windows explorer. You have a tree view on the left, and a big window on the right. The downside to this layout is when you want to make a play-list. Lets say you have the right tree open to albums, and the right window is showing the track lists. You then either have to right click and go through 2 sub-menus to add files to your playlist, or scroll the left pane way down to where you playlist’s are. This is where iTunes setup shines, with the 3 panes. This criticism applies for most of the other apps too, as you will see.
MusicMatch
Again, excellent tag and meta-data tools. Its pretty big, and feels a bit bloaty. It doesn’t have support for encoders other then the mp3, mp3 pro and AAC. That was pretty much what killed it for me. It does do transcoding from higher bit-rates to lower, so you can save space on your portable players. There is a iPod plugin available, but you have to download it separately, and its no supported by MusicMatch. The app also feels like there is little support or interaction with the developers - there is no easy way to contact the dev’s - to ask questions or requests for new features. The UI is better for creating playlists then MediaMonkey however, allowing you to have your playlist in a separate window, where you can easily drag-n-drop your files.
Anapod
Again, the biggest strike against this tool is its use of the 2 pane interface for creating playlists. Other then that, it does all the other requirements - lots of formats, transcoding, etc.
Winamp
Lastly the venerable winamp. With the addition of the flac plugin and the mlipod plugin, winamp comes out the winner. And its all free software, which is a nice bonus. It was also the last one i tried, go figure, but i’m pretty happy with it. Yes, there are things in the Media Library window that i’d like to see (browse by genre), its still the best of the bunch. The latest version (5.2) comes with some built-in support for portable devices, but the mlipod plugin allows for transcoding, which the built in one does not yet support. Also, it get it to work, i had to “format” the ipod, before winamp would recognise it - not a big deal with our 4 gig Nano, but if you have a 30 gig version, it might be a pain to have to re-sync all those tunes!
So, there you go. We now have a solution that works with our music server in the basement, allows for multiple audio file formats, detects when new files are added to the library and syncs with our ipod! Now i can get back to work (or start re-ripping all my CDs in flac format using EAC).
