JAZZS3QUENCE

design, technology, music, gaming, geekery

jazzs3quence
29 June 2006

ampache — reason number 512 why php rocks my world

i found a web-based server application by accident when i googled to try to figure out if it was possible to broadcast on LAUNCHcast, which is the SHOUTcast-like protocol that Yahoo uses. i don’t think it is, but in the search results i found a blog in which ampache was mentioned as being the next revolution of music sharing. so, of course i had to find out what it was.

here’s the skinny:
say you have a lot of mp3s, or, any mp3s at all, really — check
and say you have a server — check
say you have a server with a MySQL database and PHP installed — check, check
say you like to share music, or just want to listen to your mp3s at work — check

well ampache does that.

ok, what if you don’t have a server, and you just have a windows xp box, but you want to listen to your mp3s at work. well, assuming you have a dedicated internet connection, preferrably high speed, you can do it as well, and there’s a tutorial on setting up your xp box as a server to run the ampache site.

ok, so what’s it like? well, you have all your mp3s, in my case that’s something like 13,000+. i say, my mp3s are located in this directory on my hard drive. ampache runs a script and catalogs the entire mp3 archive and stores the information it gets from the id3 tags on those mp3s in the database. here’s where you run into one of the flaws in ampache. it *only* reads id3v2 tags and that’s the only way the songs are cataloged. if all your mp3s weren’t tagged but were formatted like .mp3, it will come up in ampache as Unknown (Orphaned) – Unknown (Orphaned) from the Unknown (Orphaned) album. in the readme that comes with the package it’s got links to windows-based and linux-based id3 mass tagger applications, which is handy. even with that it’s still a bit obnoxious. i went through everything and tagged it all with id3v1 tags and still had problems — i didn’t realize it only used the v2 tags. as it stands now, my Unknown (Orphaned) album has 250 or so tracks, which is a far cry from over a thousand which it was on Monday. Resources like <a href="http://www.gracenote.com" rel="external" title="Open link in new window" class="sblog_external">gracenote</a>, <a href="http://www.freedb.org" rel="external" title="Open link in new window" class="sblog_external">freedb</a>, and <a href="http://www.discogs.com" rel="external" title="Open link in new window" class="sblog_external">discogs</a> come in handy if you want to tag the tracks you have individually, not from an album, accurately.</p> <p>once everything is installed, cataloged and more or less accurately tagged, you can brows by artist, album, or genre. you can add an entire album to a playlist or individual tracks or you can create a playlist that pulls only from a specific genre. once your playlist is assembled you say play, and it opens a playlist in any number of commonly used formats for your media player to play. another pet peeve of mine is that i use itunes for this (because, for some reason, it’s the only media player i can get to connect to the playlists i make on the site from work). when i open my playlist in itunes, it just adds all the tracks to my library. i have to drag the playlist file into a new, empty playlist in itunes to get it to add those tracks in the order i did in ampache. on the flipside, if i decide to add tracks to what i’m currently listening to, say i just realized i wanted to listen to nick cave, i can create a new playlist with just nick cave and then drag that into my list.</p> <p>as an administrator you can create accounts. you can’t access the mp3 library without an account. this can be good or bad depending on your perspective. you can also enable or disable actual file downloads and uploads. you can edit the tags within ampache but if you ever update the catalog after that, it will reset to the id3 tag. so if you, like i did, spend several hours condensing nick cave, nick cave and the badseeds and nick cave & the badseeds to just nick cave & the badseeds, and combining bjork without an umlaut with bjork with the umlaut, all that gets lost after the catalog update. best to fix your tags and then update last is what i found.</p> <p>after you’ve gotten all that stuff done, get yourself a developer key from amazon.com. this is easy to do, they’re free. once you’ve got the key, ampache pulls album art from amazon’s database. you can manually enter the url for albumart as well for individual albums, but if you have 2000 albums, it’s cool that ampache will do that for you, or find it for you with a little help tweaking the search parameters.</p> <p>i like ampache because now if i download an album or something via bit torrent, i can actually listen to it when i get it, rather than just adding it to the SHOUTcast station and eventually one of the tracks plays, and then the only way i could actually listen to that album is if i burn it to a cd and put it in the car. now i can download stuff and then go to work and (assuming everything was tagged correctly and i run an Add request) listen to what i just downloaded. that part is pretty awesome.</p> <p>so if you want an ampache account, let me know and i can make you one. here’s the current snapshot of the library:</p> <p>Albums 1713<br />Artists 1403<br />Songs 13327<br />Catalog Size 68.12 GB<br />Catalog Time 40 days, 11 hours</p> <iframe src="http://www.facebook.com/plugins/like.php?href=http%3A%2F%2Fwww.jazzsequence.com%2Fgeek-of-technology%2Fampache-reason-number-512-why-php-rocks-my-world%2F&layout=standard&show_faces=no&width=&action=like&font=lucida grande&colorscheme=dark" scrolling="no" frameborder="0" allowTransparency="true" style="border:none; overflow:hidden; width:px; height:25px"></iframe> <p>related posts:<ul><li style="list-style-type: none; margin-left: -20px;">><a href='http://www.jazzsequence.com/geek-of-technology/amarok-rocks-my-world-cedega-not-so-much/' rel='bookmark' title='Permanent Link: amarok rocks my world. cedega, not so much.'>amarok rocks my world. cedega, not so much.</a></li> <li style="list-style-type: none; margin-left: -20px;">><a href='http://www.jazzsequence.com/department-of-good-parenting/another-reason-the-dmv-is-the-ninth-circle-of-hell/' rel='bookmark' title='Permanent Link: another reason the dmv is the ninth circle of hell'>another reason the dmv is the ninth circle of hell</a></li> <li style="list-style-type: none; margin-left: -20px;">><a href='http://www.jazzsequence.com/department-of-political-correctness/palin-rap-amy-poehler-rocks/' rel='bookmark' title='Permanent Link: Palin Rap: Amy Poehler rocks'>Palin Rap: Amy Poehler rocks</a></li> </ul></p> </div> <div class="postmeta">filed under <a href="http://www.jazzsequence.com/category/geek-of-technology/" title="View all posts in geek of technology" rel="category tag">geek of technology</a>, <a href="http://www.jazzsequence.com/category/ministry-of-music/" title="View all posts in ministry of music" rel="category tag">ministry of music</a><br /> </div> <div class="clear"></div> <p class="linktous"> <span class="diggs"><a href="javascript:var notes='';if(window.getSelection)notes=window.getSelection();else if(document.getSelection)notes=document.getSelection();else if(document.selection)notes=document.selection.createRange().text;if(notes.length>350)notes=notes.substring(0,349);location.href='http://digg.com/submit?phase=3&url='+encodeURIComponent(location.href)+'&title='+encodeURIComponent(document.title)+'&bodytext='+encodeURIComponent(notes)" target="_blank">Digg</a> |</span><span class="deliciouss"><a href="javascript:(function(){location.href='http://delicious.com/save?url='+encodeURIComponent(window.location.href)+'&title='+encodeURIComponent(document.title)+'&v=5&jump=yes'})()" target="_blank">del.icio.us</a> |</span><span class="facebooks"><a href="javascript:var d=document,f='http://www.facebook.com/share',l=d.location,e=encodeURIComponent,p='.php?src=bm&v=4&i=1239647138&u='+e(l.href)+'&t='+e(d.title);1;try{if (!/^(.*\.)?facebook\.[^.]*$/.test(l.host))throw(0);share_internal_bookmarklet(p)}catch(z) {a=function() {if (!window.open(f+'r'+p,'sharer','toolbar=0,status=0,resizable=1,width=626,height=436'))l.href=f+p};if (/Firefox/.test(navigator.userAgent))setTimeout(a,0);else{a()}}void(0)" target="_blank">Facebook</a> |</span><span class="twitters"><script src="http://platform.twitter.com/widgets.js" type="text/javascript"></script><a href="http://twitter.com/share?via=jazzs3quence&related=ArcanePalette&text=ampache — reason number 512 why php rocks my world" target="_blank" class="aptureNoEnhance">Twitter</a> |</span><span class="stumble"><a href="http://www.stumbleupon.com/submit?url=http://www.jazzsequence.com/geek-of-technology/ampache-reason-number-512-why-php-rocks-my-world/&title=ampache — reason number 512 why php rocks my world" target="_blank">StumbleUpon</a> |</span><span class="rss"><a href="http://feeds.feedburner.com/Jazzs3quence" target="_blank">Subscribe</a></span> </p> <div id="comments"> <div id='idc-container'></div> <div id="idc-noscript"> <!-- You can start editing here. --> <!-- If comments are open, but there are no comments. --> <div id="respond"> <h3>Leave a Reply</h3> <div id="cancel-comment-reply"> <small><a rel="nofollow" id="cancel-comment-reply-link" href="/geek-of-technology/ampache-reason-number-512-why-php-rocks-my-world/#respond" style="display:none;">Click here to cancel reply.</a></small> </div> <form action="http://www.jazzsequence.com/wp-comments-post.php" method="post" id="commentform"> <p><input type="text" name="author" id="author" value="" size="22" tabindex="1" aria-required='true' /> <label for="author"><small>Name (required)</small></label></p> <p><input type="text" name="email" id="email" value="" size="22" tabindex="2" aria-required='true' /> <label for="email"><small>Mail (will not be published) (required)</small></label></p> <p><input type="text" name="url" id="url" value="" size="22" tabindex="3" /> <label for="url"><small>Website</small></label></p> <!--<p><small><strong>XHTML:</strong> You can use these tags: <code><a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <strike> <strong> </code></small></p>--> <p><textarea name="comment" id="comment" cols="58" rows="10" tabindex="4"></textarea></p> <p><input name="submit" type="submit" id="submit" tabindex="5" value="Submit Comment" /> <input type='hidden' name='comment_post_ID' value='48' id='comment_post_ID' /> <input type='hidden' name='comment_parent' id='comment_parent' value='0' /> </p> </form> </div> </div> <script type="text/javascript"> /* <![CDATA[ */ var idc_xd_receiver = '/wp-content/plugins/intensedebate/xd_receiver.htm'; function IDC_revert() { document.getElementById('idc-loading-comments').style.display='none'; if ( !document.getElementById('IDCommentsHead') ) { document.getElementById('idc-noscript').style.display='block'; document.getElementById('idc-comment-wrap-js').parentNode.removeChild(document.getElementById('idc-comment-wrap-js')); } else { document.getElementById('idc-noscript').style.display='none'; } } idc_ns = document.getElementById('idc-noscript'); idc_ns.style.display='none'; idc_ld = document.createElement('div'); idc_ld.id = 'idc-loading-comments'; idc_ld.style.verticalAlign='middle'; idc_ld.innerHTML = "<img src='http://www.jazzsequence.com/wp-content/plugins/intensedebate/loading.gif' alt='Loading' border='0' align='absmiddle' /> Loading IntenseDebate Comments..."; idc_ns.parentNode.insertBefore(idc_ld, idc_ns); setTimeout( IDC_revert, 10000 ); /* ]]> */ </script> <script type="text/javascript"> /* <![CDATA[ */ var s = document.createElement("script"); s.type = "text/javascript"; s.id = 'idc-comment-wrap-js'; s.src = "http://intensedebate.com/js/wordpressTemplateCommentWrapper2.php?acct=15eb14d5da51687420f7ec9641fed86f&postid=48&title=ampache+--+reason+number+512+why+php+rocks+my+world&url=http%3A%2F%2Fwww.jazzsequence.com%2Fgeek-of-technology%2Fampache-reason-number-512-why-php-rocks-my-world%2F&posttime=2006-06-29+23%3A12%3A19&postauthor=jazzs3quence&guid=http%3A%2F%2Fjazzsequence.com%2Fblog%2F%3Fp%3D48"; document.getElementsByTagName("head")[0].appendChild(s); /* ]]> */ </script> </div> </div> </div> <!-- closes content --> <div class="sidebar"> <!--BEGIN SUBPAGE MENU--> <!--this was ruthlessly stolen from Darren Hoyt's Mimbo theme--> <!--http://www.darrenhoyt.com/2007/08/05/wordpress-magazine-theme-released/--> <!--END SUBPAGE MENU--> <ul> <li id="text-316050475" class="widget widget_text"> <div class="textwidget"><div class="aligncenter"> <a href='http://museumthemes.com?ref=jazzs3quence-63'> <img src='http://museumthemes.com/media/museum-234x120.jpg' alt='Arcane Palette Museum Themes' title='Check out Arcane Palette Museum Themes' /> </a></div></div> </li><li id="yarpp_widget-3" class="widget widget_yarpp_widget"><h2 class="widgettitle">Possibly Related</h2> <ol><li><a href="http://www.jazzsequence.com/geek-of-technology/amarok-rocks-my-world-cedega-not-so-much/" rel="bookmark">amarok rocks my world. cedega, not so much.</a></li><li><a href="http://www.jazzsequence.com/department-of-good-parenting/another-reason-the-dmv-is-the-ninth-circle-of-hell/" rel="bookmark">another reason the dmv is the ninth circle of hell</a></li><li><a href="http://www.jazzsequence.com/department-of-political-correctness/palin-rap-amy-poehler-rocks/" rel="bookmark">Palin Rap: Amy Poehler rocks</a></li></ol></li> <li id="recent-posts-3" class="widget widget_recent_entries"> <h2 class="widgettitle">Recent Posts</h2> <ul> <li><a href="http://upstartbloggerexposed.wordpress.com/2010/09/02/back-to-his-old-tricks/" title="Back to his old tricks">Back to his old tricks</a></li> <li><a href="http://www.arcanepalette.com/wallpapers/free-calendar-wallpaper-meditation/" title="Free Calendar Wallpaper: Meditation">Free Calendar Wallpaper: Meditation</a></li> <li><a href="http://feedproxy.google.com/~r/jazzsequence-kidsblog/~3/ihYh5URNQvY/" title="First day of Kindergarten">First day of Kindergarten</a></li> <li><a href="http://feedproxy.google.com/~r/jazzsequence-kidsblog/~3/j-7m6aB-hQo/" title="School pics">School pics</a></li> <li><a href="http://feedproxy.google.com/~r/museumthemes/~3/-9hkFS-rqfE/" title="How to upgrade your Museum Theme to the most current version after you’ve made changes to the files">How to upgrade your Museum Theme to the most current version after you’ve made changes to the files</a></li> </ul> </li><li id="tag_cloud-5" class="widget widget_tag_cloud"><h2 class="widgettitle">Tags</h2><div><a href='http://www.jazzsequence.com/tag/apple/' class='tag-link-22' title='9 topics' style='font-size: 9.9444444444444pt;'>apple</a> <a href='http://www.jazzsequence.com/tag/ashley-morgan/' class='tag-link-400' title='13 topics' style='font-size: 12.861111111111pt;'>ashley morgan</a> <a href='http://www.jazzsequence.com/tag/blogging/' class='tag-link-228' title='11 topics' style='font-size: 11.5pt;'>blogging</a> <a href='http://www.jazzsequence.com/tag/computer-woes/' class='tag-link-40' title='10 topics' style='font-size: 10.722222222222pt;'>computer woes</a> <a href='http://www.jazzsequence.com/tag/creative-commons/' class='tag-link-207' title='9 topics' style='font-size: 9.9444444444444pt;'>creative commons</a> <a href='http://www.jazzsequence.com/tag/design/' class='tag-link-431' title='9 topics' style='font-size: 9.9444444444444pt;'>design</a> <a href='http://www.jazzsequence.com/tag/dj/' class='tag-link-281' title='7 topics' style='font-size: 8pt;'>dj</a> <a href='http://www.jazzsequence.com/tag/download/' class='tag-link-50' title='13 topics' style='font-size: 12.861111111111pt;'>download</a> <a href='http://www.jazzsequence.com/tag/facebook/' class='tag-link-362' title='13 topics' style='font-size: 12.861111111111pt;'>facebook</a> <a href='http://www.jazzsequence.com/tag/firefox/' class='tag-link-58' title='7 topics' style='font-size: 8pt;'>firefox</a> <a href='http://www.jazzsequence.com/tag/followers/' class='tag-link-411' title='7 topics' style='font-size: 8pt;'>followers</a> <a href='http://www.jazzsequence.com/tag/free/' class='tag-link-481' title='9 topics' style='font-size: 9.9444444444444pt;'>free</a> <a href='http://www.jazzsequence.com/tag/gavin/' class='tag-link-11' title='9 topics' style='font-size: 9.9444444444444pt;'>gavin</a> <a href='http://www.jazzsequence.com/tag/genesis-rocket/' class='tag-link-538' title='11 topics' style='font-size: 11.5pt;'>genesis rocket</a> <a href='http://www.jazzsequence.com/tag/google/' class='tag-link-65' title='20 topics' style='font-size: 16.166666666667pt;'>google</a> <a href='http://www.jazzsequence.com/tag/grunge/' class='tag-link-68' title='8 topics' style='font-size: 8.9722222222222pt;'>grunge</a> <a href='http://www.jazzsequence.com/tag/gwozdziec/' class='tag-link-225' title='9 topics' style='font-size: 9.9444444444444pt;'>gwozdziec</a> <a href='http://www.jazzsequence.com/tag/hack/' class='tag-link-637' title='8 topics' style='font-size: 8.9722222222222pt;'>hack</a> <a href='http://www.jazzsequence.com/tag/hulu/' class='tag-link-266' title='7 topics' style='font-size: 8pt;'>hulu</a> <a href='http://www.jazzsequence.com/tag/mac/' class='tag-link-88' title='7 topics' style='font-size: 8pt;'>mac</a> <a href='http://www.jazzsequence.com/tag/mashable/' class='tag-link-746' title='8 topics' style='font-size: 8.9722222222222pt;'>mashable</a> <a href='http://www.jazzsequence.com/tag/microsoft/' class='tag-link-91' title='16 topics' style='font-size: 14.416666666667pt;'>Microsoft</a> <a href='http://www.jazzsequence.com/tag/mixtape/' class='tag-link-270' title='8 topics' style='font-size: 8.9722222222222pt;'>mixtape</a> <a href='http://www.jazzsequence.com/tag/mp3/' class='tag-link-343' title='17 topics' style='font-size: 15pt;'>mp3</a> <a href='http://www.jazzsequence.com/tag/music-piracy/' class='tag-link-589' title='9 topics' style='font-size: 9.9444444444444pt;'>music piracy</a> <a href='http://www.jazzsequence.com/tag/obama/' class='tag-link-101' title='9 topics' style='font-size: 9.9444444444444pt;'>obama</a> <a href='http://www.jazzsequence.com/tag/open-source/' class='tag-link-104' title='8 topics' style='font-size: 8.9722222222222pt;'>open source</a> <a href='http://www.jazzsequence.com/tag/pictures/' class='tag-link-108' title='9 topics' style='font-size: 9.9444444444444pt;'>pictures</a> <a href='http://www.jazzsequence.com/tag/politics/' class='tag-link-110' title='12 topics' style='font-size: 12.083333333333pt;'>politics</a> <a href='http://www.jazzsequence.com/tag/real-news/' class='tag-link-115' title='20 topics' style='font-size: 16.166666666667pt;'>real news</a> <a href='http://www.jazzsequence.com/tag/scams/' class='tag-link-419' title='7 topics' style='font-size: 8pt;'>scams</a> <a href='http://www.jazzsequence.com/tag/side-project/' class='tag-link-200' title='8 topics' style='font-size: 8.9722222222222pt;'>side project</a> <a href='http://www.jazzsequence.com/tag/social-networking/' class='tag-link-126' title='25 topics' style='font-size: 17.916666666667pt;'>social networking</a> <a href='http://www.jazzsequence.com/tag/teh-s3quence/' class='tag-link-273' title='11 topics' style='font-size: 11.5pt;'>teh s3quence</a> <a href='http://www.jazzsequence.com/tag/thinktank/' class='tag-link-134' title='9 topics' style='font-size: 9.9444444444444pt;'>thinktank</a> <a href='http://www.jazzsequence.com/tag/twitter/' class='tag-link-136' title='41 topics' style='font-size: 22pt;'>twitter</a> <a href='http://www.jazzsequence.com/tag/twitter-rocket/' class='tag-link-407' title='20 topics' style='font-size: 16.166666666667pt;'>twitter rocket</a> <a href='http://www.jazzsequence.com/tag/twitter-schoolbus/' class='tag-link-408' title='7 topics' style='font-size: 8pt;'>twitter schoolbus</a> <a href='http://www.jazzsequence.com/tag/upstart-blogger/' class='tag-link-227' title='17 topics' style='font-size: 15pt;'>upstart blogger</a> <a href='http://www.jazzsequence.com/tag/video/' class='tag-link-222' title='29 topics' style='font-size: 19.277777777778pt;'>video</a> <a href='http://www.jazzsequence.com/tag/viral-video/' class='tag-link-241' title='18 topics' style='font-size: 15.388888888889pt;'>viral video</a> <a href='http://www.jazzsequence.com/tag/web-design/' class='tag-link-144' title='13 topics' style='font-size: 12.861111111111pt;'>web design</a> <a href='http://www.jazzsequence.com/tag/windows/' class='tag-link-149' title='10 topics' style='font-size: 10.722222222222pt;'>windows</a> <a href='http://www.jazzsequence.com/tag/wordpress/' class='tag-link-152' title='30 topics' style='font-size: 19.472222222222pt;'>wordpress</a> <a href='http://www.jazzsequence.com/tag/youtube/' class='tag-link-237' title='14 topics' style='font-size: 13.444444444444pt;'>youtube</a></div> </li></ul> </div></div> <!-- closes middle --> <script type="text/javascript"> /* <![CDATA[ */ var s = document.createElement("script"); s.type = "text/javascript"; s.src = "http://intensedebate.com/js/wordpressTemplateLinkWrapper2.php?acct=15eb14d5da51687420f7ec9641fed86f"; document.getElementsByTagName("head")[0].appendChild(s); /* ]]> */ </script> <script type='text/javascript' id='aptureScript' src='http://www.apture.com/js/apture.js?siteToken=UhOfelz' charset='utf-8'></script><!-- Clicky Web Analytics - http://getclicky.com, WordPress Plugin by Yoast - http://yoast.com --> <script type='text/javascript'> function clicky_gc( name ) { var ca = document.cookie.split(';'); for( var i in ca ) { if( ca[i].indexOf( name+'=' ) != -1 ) return decodeURIComponent( ca[i].split('=')[1] ); } return ''; } var clicky_custom_session = { username: clicky_gc( 'comment_author_535aa89cc62a26a8fbcf3334538ff08a' ) }; </script> <script type="text/javascript"> var clicky = { log: function(){ return; }, goal: function(){ return; }}; var clicky_site_id = 180973; (function() { var s = document.createElement('script'); s.type = 'text/javascript'; s.async = true; s.src = ( document.location.protocol == 'https:' ? 'https://static.getclicky.com' : 'http://static.getclicky.com' ) + '/js'; ( document.getElementsByTagName('head')[0] || document.getElementsByTagName('body')[0] ).appendChild( s ); })(); </script> <noscript><p><img alt="Clicky" width="1" height="1" src="http://in.getclicky.com/180973ns.gif" /></p></noscript> <!-- End Clicky Tracking --> <!--stats_footer_test--><script src="http://stats.wordpress.com/e-201035.js" type="text/javascript"></script> <script type="text/javascript"> st_go({blog:'6009852',v:'ext',post:'48'}); var load_cmc = function(){linktracker_init(6009852,48,2);}; if ( typeof addLoadEvent != 'undefined' ) addLoadEvent(load_cmc); else load_cmc(); </script> </div><!-- closes .container --> </div> <div class="footer"> <div class="leftfooterbox"> <div class="subscribe"><h2><a href="http://feeds.feedburner.com/Jazzs3quence" target="_blank">Subscribe by RSS</a></h2></div> <ul> <li id="recent-posts-2" class="widget widget_recent_entries"> <h2 class="widgettitle">Recent Posts</h2> <ul> <li><a href="http://upstartbloggerexposed.wordpress.com/2010/09/02/back-to-his-old-tricks/" title="Back to his old tricks">Back to his old tricks</a></li> <li><a href="http://www.arcanepalette.com/wallpapers/free-calendar-wallpaper-meditation/" title="Free Calendar Wallpaper: Meditation">Free Calendar Wallpaper: Meditation</a></li> <li><a href="http://feedproxy.google.com/~r/jazzsequence-kidsblog/~3/ihYh5URNQvY/" title="First day of Kindergarten">First day of Kindergarten</a></li> <li><a href="http://feedproxy.google.com/~r/jazzsequence-kidsblog/~3/j-7m6aB-hQo/" title="School pics">School pics</a></li> <li><a href="http://feedproxy.google.com/~r/museumthemes/~3/-9hkFS-rqfE/" title="How to upgrade your Museum Theme to the most current version after you’ve made changes to the files">How to upgrade your Museum Theme to the most current version after you’ve made changes to the files</a></li> </ul> </li> </ul> </div> <div class="middlefooterbox"> <h2><a href="http://twitter.com/jazzs3quence" target="_blank">Twitter</a></h2> <div id="twitter_div"> <ul id="twitter_update_list"></ul> </div> </div> <div class="rightfooterbox"> <h2>what i'm doing right now</h2> <div id="profilactic"> <!-- Lifestream--> <ul> <li><a class="twitter" href="http://twitter.com/jazzs3quence/statuses/22833958349"> @allisonr Back to his old tricks: http://t.co/SM6HcIN (sent this to yr other twitter account originally by mistake)</a></li> <li><a class="lastfm" href="http://twitter.com/jazzs3quence/statuses/22833765567"> just looked at Ping. dude, seriously Apple? 3 words: Facebook, Twitter, Last.fm. There is no discussion here.</a></li> </ul><br /><br /></div> <!-- Dynamic Styleshhet for WP-Profilactic --> <style type="text/css"> <!-- Favicons for all your services --> a.default { background: 000000 url(http://www.jazzsequence.com/wp-content/plugins/profilactic/images/rss.png) no-repeat 10px 50% !important; } a.twitter { background: 000000 url(http://www.jazzsequence.com/wp-content/plugins/profilactic/images/twitter.png) no-repeat 5px top !important; } a.lastfm { background: 000000 url(http://www.jazzsequence.com/wp-content/plugins/profilactic/images/lastfm.png) no-repeat 5px top !important; }/* Lifestream Style Info Below */ </style> </div> </div> <p class="credit">ZOMBIE SUPERSTAR (i.e. this theme) is a <a href="http://wordpress.org" target="_blank">wordpress</a> theme that was designed by <a href="http://www.jazzsequence.com/about/">me</a> and coded (mostly) by hand <br /><a href="http://www.arcanepalette.com" target="_blank" title="Arcane Palette Creative Design } artistic website design">website design by arcane palette</a> | <a href="http://www.dreamhost.com/r.cgi?690751/green.cgi?jazzsequence.com" target="_blank">green webhosting by dreamhost</a></p> </body> <script type="text/javascript" src="http://twitter.com/javascripts/blogger.js"></script> <script type="text/javascript" src="http://twitter.com/statuses/user_timeline/jazzs3quence.json?callback=twitterCallback2&count=1"></script> </html>