Click on the image below to see my submission for the “Mobile” IronViz contest – it should work on both mobile, tablet and desktop.
I’ll be honest, I didn’t start this Viz until Friday night before the contest ended on Sunday. My wife was out Friday and Saturday evenings and so I knew I had a few hours…however with little time I didn’t want to waste my time producing a visualisation on something trivial. Instead I wanted to produce a visualisation on something useful, an “app”, something I’d use.
For a long time now I’ve wished I could find something that would save me the job of hunting down decent movies on Netflix. I have a Netflix Subscription but sometimes hidden gems can be hard to root out. I have a good track record of finding good movies though it.takes me a long time to hunt through reviews online as I look through Netflix. It’s become a running joke I’ll spend longer picking a movie than actually watching it.
If only there was an app or website that would give me both combined…..
Friday Night is Data Night
So with my idea in mind Friday night I spent trying to get data…after some googling there weren’t many easy options and so I found myself installing Python to try a Python script to scrape Netflix but hours went by without luck (all while watching Butch Cassidy and the Sundance Kid on Netflix). The lesson: don’t try and learn python in an hour.
Head in hands and running out of ideas I google some more and found www.cinesift.com – it was purpose built to do what I needed and had all the data I needed in its search (wish I’d found this site ages ago!) but how to get at the data?
Brute force searching seemed the best option so I ran a search for Netflix UK movies and then scrolled down and down and down to populate the dynamic page…then Ctrl+A, Ctrl+C and Ctrl+V gave:
Ouch….I also took the HTML source for use later. Time for sleep….
Saturday Night Feels Alright
Now the previous night had proved a mixed bag, so I turned to my trusty companion Alteryx to solve my data woes:
What does this spaghetti do? Well it takes the pretty horrible format txt file and turns into into rows and columns of proper data. The trick was to assign a row ID to each row and restart at the “Play Trailer” section marking a new movie. Then I simply needed to crosstab and rename the data. It also pulls out the Movie images from the html source uisng Regex and finds their URL. It combines the two and then splits out multiple genres and casts / directors into separate fields (in the end this last step wasn’t needed but I thought I might do, without it the Alteryx module is massively simplified removing the whole last row).
Then it was to Tableau…I decided to design for mobile first and quickly over a couple of hours designed a few initial drafts of pages then, as it was getting late I posted them to my colleagues for comment.
Next morning, while I was getting the kids ready to head out, the comments started coming back:
I love that I have access to such a great and diverse range of opinions and talent from my peers at The Information Lab. As you can see I got loads of useful feedback – if you want to make a visualisation better just share it as much as possible, ideally on a collaboration tool with image commenting so people can highlight their comments with the corresponding piece of the image.
Sunday Night Polish
Tonight, Sunday, was all about acting on the feedback and building the Desktop and Tablet views. I designed a background theme of the visualisation (using a very quick piece of photoshop work with the Netflix logo) which I incorporated into Desktop – the black left panel but I soon realised that there were some limitations with the Device Designer in Tableau in this initial 10.0 version.
Firstly changing the background of Filters and Parameters alters them for ALL devices. Ouch. That meant ones overlaid on black looked odd on mobile when overlaid on white. Normally a quick solution would be to add a Container and colour it black but in device mode you can’t format object…grrr I was getting frustrated due to my lack of knowledge of this new feature and it’s limitations.
It was hard work fitting the phone layout to different sized phones. Lack of real estate means having to compromise on design vs functionality. All aspects of the visualisation, Text, Filters, Logos need justifying in terms of space. I loved the challenge that working on mobile provided and I hope it makes people entering the competition focus on simple (KISS) visualisations.
I ended up working on the smallest device and then checking it resized okay onto larger screens. As you can see below the differences are quite big depending on the phone.
In the end I decided the best approach was to switch my designs to Floating to overcome this limitation…while not ideal it did allow me to work round most of the problems. However images needed some tweaking as they expand / contract using Fit Width / Fit All.
Anyway..I got it done so I’m happy…and before midnight too. All in all I remain pleased with what was just around 12 hours work!