Playing with the new gadgets that were released with the latest Zune web-site update. One thing I really like is that if you click an album or artist it'll show the tracks and if the Zune Marketplace has them available you can preview the music. It's a pretty cool way to see what others are listening to and get a quick sample, all without needing to have the Zune software installed. Here's the big version of mine:
I've been dabbling in the Ruby on Rails world for awhile and I've always been drawn to the very clean separation of the Model-View-Controller framework, something Rails pretty much nailed in their implementation. I've done a few small Rails sites here and there, played with it enough to be dangerous but I didn't use it enough in my daily life to really get it under my belt. At the same time I was doing a lot of ASP.NET work and felt like I was constantly fighting the WebForms architecture to get it to produce proper stateless standards-compliant web applications that were based around the concept of request/response. I'd disable ViewState, override Inits(), hack into the page lifecycle and ignore server controls so I had real control the HTML output and get back my CSS id selectors. In a very bad way WebForms reminded me of VB6 and all the hacks I had to do during my stint with that language.
The most frustrating point came when the CSS Adapters were released and touted as some kind of panacea to those that cared about web standards when in reality they are more akin to giving a woman with a horrible breast job a big baggy sweater with a picture of a nice rack on the front. Sure, it may be a pretty picture but the scar tissue and ugly layers are still there.
I think I got some of my faith back after I started reading Rob Conery's blog because in him I found a Rails enthusiast who still enjoyed the many good aspects of ASP.NET and C#. Instead of just jumping ship he was bringing some of the better elements, and more importantly concepts, over to the .NET side with the SubSonic project. Then he somehow got mixed up with some other crazy people like Phil Haack, Scott Guthrie and Scott Hanselman and now we have the ASP.NET 3.5 Extensions Preview which contains a juicy little nugget otherwise known as ASP.NET MVC.
After wading through the bits, doing a few sample projects and generally taking their version of MVC for a walk-about I can say I'm once again excited about .NET. Sure there are some rough spots and some areas that are a bit too "chewy" (you know a line of code that's a 100 characters long and includes at least three generics and two type casts? yeah, that's chewy) and design decisions that some people are taking umbrage over but all in all it feels useful, feels clean and feels like real programming.
In an odd way I have the same feeling I had back in the day when I switched from Visual Basic to Delphi (which I still think is the best tool for creating native Win32 applications), like I once again have control.
While looking for some mellow music for a late night coding session that wouldn't disturb my wife I remembered an album I used to listen to quite a bit, 'Far Away Trains Passing By' by Ulrich Schnauss, and wondered if he had something new out for me to enjoy. Seems he's been busy since I first picked up that album in 2001 with at least four other releases so after listening to some samples I figured I'd pick up an album or two.
I started first with Zune Marketplace which has become a viable option ever since they started offering DRM-free MP3s. While they have all his albums none of them are in MP3 format which crosses it off my list. Not to be daunted I hit up Amazon's MP3 downloads but no dice there either, I can order the CD but I want satisfaction now. Last on my list is eMusic, usually a great location for smaller or indie labels but I only found a scattering of his songs on compilations. I thought about checking iTunes to see if it was available as a "Plus" track, meaning DRM-free, but you can't browse their catalog online and I really can't be bothered to install iTunes just to see if it may or may not be there. I even toyed with using BitTorrent for some nefarious illegal song grabbing but honestly that's entirely too much fussing just for a few songs.
After all of this searching and disappointment I realized I'll probably never buy another Ulrich Schnauss album, not out of some petulant pouting or idealistic, chest-beating stance against the horrors of DRM but because I had an impulse and now it's gone. Anyone that knows me knows that I'm slightly impulsive while at the same time I lose interest quickly so in a few days time it's doubtful I'll even remember Mr. Schnauss and instead I'll be buying some DRM-free tracks that caught my ear on eMusic or something tasty I see come through Zune Marketplace.
I'm not just not buying (neat) Ulrich Schnauss either, The new Dropkick Murphys album 'The Meanest of Times' hasn't gotten any rotation from me and they're one of my top 10 favorite bands. There is just too much good music out there and my tastes are too varied for me to obsess over a single album. These days if I can't get it DRM-free it's doubtful I'll ever buy it or listen to it.
A little note to Ulrich Schnauss's label Domino USA, you really need to look at licensing your music as DRM-free, whether it's on eMusic, Amazon, Zune Marketplace or even iTunes. You could have had some of my hard-earned dosh, instead I'm just cueing up some 'Thievery Corporation' and calling it good.
Ever have an artist not show up where you expected in the Zune software? Ever swear it's correctly labeled 'Red Hot Chili Peppers' yet it's showing up under 'Unknown Artist' instead? How about this one, you can find it in the software but under the Zune it's in the wrong place? The culprit here is the Zune software's really weird use the artist and album artist metadata bundled inside the file. I consider this a huge and highly annoying bug.
A lot of tracks out there only have the 'Artist' field filled out while a second, less-used field 'Album Artist', sometimes called 'Band', is empty. The Zune, instead of defaulting to the artist when it has an empty album artist, puts all those tracks under the dreaded 'Unknown Artist' section.
I just had this comment on an older blog post showing just how frustrating this can be, Shad said...
I am having a hell of a time getting CDs that I recorded in my commercial recording studio to show up as anything other than Unknown Artist. I finally got the folders that I have labeled (by right clicking and renaming them) to show up in the software but when I sync to my PC and update the Zune, they do not show up as "Unknown Artist" in the Zune. I cannot find them at all on the Zune. Any ideas?
I answered him in the comments but thought I'd repeat the steps I use to fix this issue here:
- Download and install mp3tag or any other tag editing program. I just like this one because it's straight forward, free, and small in size.
- After you install it run the software.
- On the menu go to Tools, then Options.
- Select the 'Tag Panel' node on the left.
- Click the 'Add Field' icon on the right, looks like a rectangle with a star.
- Under 'Field' select BAND.
- Under 'Name' type 'Album Artist' or 'Band'. Doesn't matter, it's for your eyes only.
- OK out of everything.
- Drag & drop the files or folder of files you want to edit into the main white area of the app.
- You'll notice on the left side you can edit all the metadata about your tracks. Make sure to edit both 'Artist' and 'Album Artist' to be the same thing.
- Save.
- Sometimes the Zune software will pick up on your new information, sometimes you have to kick it a little by renaming the file.
- Everything should be rocking now!
Another great thing about mp3tag is that it can rename your files using your metadata, can add cover art or look it up from Amazon and guess at what the metadata should be based on filename. It supports pretty much every single audio format I've thrown at it as well that supports metadata. The renaming is nice because the Zune software lacks the ability to customize how your files are named.
Any questions drop them in the comments.
Black Friday, the perennial classic day of Christmas shopping and crowd control, is almost upon us which means I'll be battening down the hatches, pulling up a warm mug of spiked egg-nog and doing the bulk of my holiday shopping online.
Amazon.com is usually my go-to retailer for everything purchased online but this year I'm going to do something slightly different, instead of first going to Amazon I'm going to start at giveness.com, which in turn gets me right back over to Amazon with a bit of giving along the way. Huh?
The short version is that if you're going to be doing any online shopping this season make giveness.com your first stop. You pick a non-profit you want to help out and then search one of the many supported stores, including Amazon, eBay, iTunes, Apple Store, Buy.com, eToys, NewEgg. Once you find something you want you are redirected to the retailer's site and do your normal Amazon (or whatever store you picked) thing, at the normal discounted price, the normal store shipping, safety and security. Only difference is that now you've made a little extra money for a constantly under-funded and overworked organization and hopefully warmed your heart.
The long version is that at it's core giveness.com is a way to donate to charities and other non-profits (NPO's to those that like to sound in the know) without much more effort than indulging in the wonderful past-time known as shopping. They achieve this by a very clever use of the various affiliate programs that online retailers offer, such as Amazon, eBay and many more. Most affiliate programs offer a commission for every purchase that you send their way and often increase the commission based on how much money you helped them generate. Most individuals or NPO's can't generate enough traffic to push their commission percentage past the base rate and so don't usually see much return and that's where Giveness.com steps in.
Giveness.com acts as a single affiliate helping to pool all the purchases, so while a lone NPO may only have a couple of purchases a month Giveness takes the purchases of all the NPO's signed up and those determine what the commission rate is, helping to push it past the usual meager base rate which in turns means a much bigger commission for the NPO than they could usually get on their own.
Oh, besides just being an amazing way to shop and help out Giveness is also a social network, with support for blogs, messages, comments, sharing videos, RSS feeds and recommending and reviewing fav products. They have a very cool widget for sharing your recommended products and also sponsoring your chosen NPO. All wrapped up in a clean web 2.0 UI.
I'm not the only one that thinks Giveness is a great idea either. Amazon has featured them as a success story, so has The Wall Street Journal (back then they were known as Givezilla) as well as others.
The catch here of course is that the system only works if people use it and if people actually buy stuff. So... go buy some stuff! Christmas is the perfect season to both avoid the nightmare of malls while doing some giving along the way. Great thing about Giveness is that it doesn't actually cost you anything to give plus you still get all the same great deals, discounts, shipping, rates and selection your normally do.
Awhile back I wrote a wee little Delphi application to mimic WinAmp's Global Hotkeys in the Zune software, call ZuneKeys. With the new Zune software out I had to update ZuneKeys to work with it so if you're one of the three people that actually like global hotkeys go ahead and grab the new version from the above links.
For nerds that care I had to change the window class I was searching for from "WMPlayerAppZune" to "UIX Render Window". Long Zheng over on istartedsomething has some more interesting bits about this whole "UIX" business.
Being both an early Zune adopter as well has having been critical of some of the v1 features it's only fair I weight in on the v2 firmware and software and see how it compares.
Firmware / Device UI
The new interface on the device is clean, stylish and functional and after a little readjustment it's definitely an improvement on what was already a great experience. The navigation sounds are a little different, the menu style has been brought in-line with the rest of the brand, podcasting has it's own little home and there are little improvements to navigation and song management that make the entire device experience simple and fun to use.
The best new features are wireless sync, which can either be triggered manually or automatically if it's docked, and the ability to resume songs which is important not only for long podcasts but audiobooks as well.
Being able to sync as soon as I come in the door means I'll have the latest podcasts even if I'm just stopping by home quickly before heading out again. It also prevents me from getting sucked into my computer which happens all too often when I'm just going to "quickly" sync before taking a bike ride and before I know it I've wasted an hour fiddling on my computer and my bike ride gets pushed to the side.
I hadn't even attempted to listen to an audiobook on my Zune for the last few months because of the v1's spotty support of paused tracks. Nothing takes the joy out of an audiobook like having to spend 5 minutes hunting for where you last left off and thankfully the v2 firmware gives us the ability to resume tracks from where you left off.
So, adopting the new rating system I heart the new Zune firmware.
Software
The new software takes a less is more approach, stripping away features in an effort to bring the library browsing and music playing experience into sharper focus and for the most part it has worked smashingly. In terms of style and experience the software blows away iTunes, Windows Media Player or really any other media application. Usually media applications look like nothing more than overblown database browsers and the "creative" is lost in the whole experience.
This has come at the cost of standard media library features though, such as auto playlists, the classic 5 star rating system, ID3 editing and customized views of your music. This will probably create the biggest schism amongst users as it can be jarring for the power user that uses all of these features but for the average consumer I doubt they'll even notice the features are gone.
What's been interesting about the loss of these features is an awareness of how I did or didn't use them. For example, a song's genre has been greatly de-emphasized, not even appearing in the main 'browse' view, and at first this seemed like a glaring lack but it was also a relief. I've agonized over how to classify certain bands, are they punk, swing, folk, rock, metal? Usually I'll either dump them in a generic 'rock' category or change the genre three or four times over a month and still not be happy. I end up with either a few huge genres or a ton of small specialized ones thus defeating the genres use.
Another "less is more" example is the new rating system of Unrated/Heart/Broken Heart. With the old 5-star system I found I'd change my rating system over the years, at one time 2 stars meant "I had to be in the right mood" but then it became "this song sucks" at which point I had to ask myself why I was keeping the track. Same with five star songs; songs that were 5-stars one week turned into 4 or even 3 as I got to know the song or 3 star tracks turned into 4 or 5 as an album grew on me. Ironically with all this song rating I never actually used the ratings themselves, except they looked pretty in the software.
Visualizations are for the most part gone, though there is a very cool "wall of album art" mode as well as a very subtle "bleeding" effect on the bottom of the main playing area that is very cool. I've never been into visualizations so the loss of them doesn't even show up on my radar but I'm sure some people will miss them.
This doesn't mean "less is more" has worked for everything though. The loss of a solid mechanism to find missing album metadata or edit the ID3 tags is a big bummer and I discovered just how much I was using the auto playlist feature to manage my syncing. Compared to WinAmp, Windows Media Player or iTunes the v2 Zune software is going to feel downright naked in terms of ways to view your library and customization but what is there is done very well.
So far I've been pleasantly surprised with the v2 features and feel like there is finally a solid base for the Zune team to build on now that they truly own the experience. I do miss some features and I really hope they add in new ones faster than just yearly or bi-yearly updates but for the most part I find it much improved over the old skinned WMP.
Ever since I reinstalled my home PC with Vista a few months back I've been trying a little experiment of running it without Microsoft Office. I've heard some great things about Google Docs and since I almost never actually use Word or Excel, seeing as most of my life is spent inside of either Delphi, Visual Studio or E, I figured I'd save myself the price of an upgrade to Office 2007.
For the most part it's been fine, not great, not earth-shattering but workable and I've never had reason to complain until this weekend when my wife innocently asked me to print some quiz questions for a baby shower she was hosting. No problem, jump into Google Docs and type the questions and since my wife had put so much effort into making everything look polished I figured I'd do the same with the quiz.
The first head of Cerberus rears it's ugly mug with a slobber covered dog tag saying "Fonts". There are literally thousands of amazing fonts, created by true craftsmen, all designed to convey a certain feel to the printed word and I have access to none of them. Typographers out there, you must hate Google Docs with a passion. I always knew this was an issue in the back of my mind but running into it when you need it most goes beyond annoying.
Second issue that smacked me around was the the amazing suck of printing. Print preview is a true joke in Google Docs, it gives you no sense of how your text will look on the printed page thus making it impossible for me to see if my ten questions were nicely centered in the middle of the page. When I finally did print I laughed at how professional documents look when the bottom of the page has a url splashed across it. That is sarcasm for those that don't know. What I get from the whole printing aspect of Google Docs is that you shouldn't. If you ever need to actually print something, which those crazy space monkeys at Google must never do, then Google Docs is definitely not for you.
The third issue with Google Docs actually came tonight when a client sent me an Excel document that I needed to deal with and I clicked on the handy link inside of GMail that says, "Open as a Google Spreadsheet", only to be greeted with nothing. By nothing I mean a blank white pristine white sucking rectangle of space, that when I squint and read between the lines says, "Don't Use Google Docs". I tried it in IE7, I tried it in Firefox, I tried clearing my cache, I logged out and back in. Nothing. I need to deal with this document now, not when Google decides to fix the issue.
All of this combined means I'll probably pony up the cash to get Office 2007 but more importantly I'm now just a little more informed about Google Docs and it's limitations and uses. I did manage to live without Word or Excel for quite a few months with never running into any issues but if you don't use something often you probably won't hit many roadblocks. In Google Docs current state it's great as a temporary fix but like any temporary solution it will fail at some point and probably when you need it the most. Of course if you don't care about typography, layout, printing or reliability then Google Docs is great.
Recently my wife has been struggling with a web developer and he epitomizes a type that you find in specialized areas; someone that looks down upon and punishes those that aren't also in the field.
A classic example of this is the music critic. They'll lambaste whatever popular music comes down the pipe while heaping accolades upon bands that you can barely understand, lauding praise upon the intricate chord progressions or the unique way the guitarist bent the notes on the third change, hailing it as the album of the year and declaring the lack of it's appreciation as more proof of our general decline into mediocrity.
In software development this manifests itself as web sites that look horrible in Internet Explorer and have a snide comment along the lines of "Get a Real Browser, download FireFox now to see how this page really looks" or ugly e-mails with a top link saying, "If you're using GMail/Outlook/Insert Hated E-Mail Program Here then click here to see a better version or use a real e-mail program." Another even more juvenile form is when someone requests help in an online forum and some jackass responds with, "Well, if you had this OS/browser/computer/car/keyboard/mouse/console/Internet connection then you wouldn't have this problem." Oh let me tell you how useful that is.
The other way this manifests is when a developer gets more focused on a technology rather than the customer's experience. For example I love and develop CSS/XHTML-based web sites but if you're transitioning from old HTML 4.01 then your new XHTML strict site had better look as good if not better than the previous version otherwise it just appears like a step backwards to the customer.
Whenever you make a technology change, whether it's changing to or from a platform such as PHP, ASP.NET or Rails or it's adopting new standards you need to first ask, "How is this going to benefit my customers? Are they going to lose any functionality? Are they going to gain anything that makes the inevitable transition headaches worth it... for them?" Another important question is, "How does this affect the majority of my customers?". Too often I see new features being added to support the few but in order to implement them the many are punished or worse the entire customer base is inconvenienced because the developer got a wild hair and swore some new bit of kit would make everything so much easier, yet somehow it really doesn't.
I love shiny new things but it's important to not let all that shiny get in the way of the actual product.
I'm being lazy and just posting a link because I think this feature is that cool:
SubSonic: Migrate Me
If you've used Rails you'll know why this is so cool and if you haven't then think "A really cool way to version your database schema and all it's changes and it's default data." The Rails kids shouldn't have all the fun. Read the article, Rob Conery will explain it much better than I ever could.
Plus, he's been known to use phrases like "The Tits" when describing software features and you just don't see quality writing like that just anywhere.