Browsing the upcoming Record Store Day 2014 UK releases

It’s that time of the year again. In a few weeks, I’ll be queuing in front of my favorite music store on an early Saturday morning. Why? Because Record Store Day is coming!

While the list of upcoming releases is available on the official RSD website, I thought a quick hack would help me to more efficiently find what I’d like to put on my turntable this year without having to browse each page separately. So if, like me, you want to filter releases (by keyword, type, artist, label, …) and pick and print your selection, go to http://rsd.mdg.io!

Record Store Day browser

It uses BeautifulSoup for scraping, a drop of CoffeeScript and a pinch of AngularJS + Bootstrap for the UI.

NB: I’m looking for someone who can get some US releases. Drop me a tweet if you’re interested, I’m happy to exchange with UK ones, or buying – face-value only.

Streaming the Pink Floyd: where are all the potheads?

While catalogues now tend to be similar between streaming platforms, besides a few notable exceptions, it’s interesting to note how top-tracks can differ between services.

If you’re listening to the Pink Floyd on Spotify, Rdio or YouTube, top-tracks tend to be from their “mainstream” area, especially The Wall and Dark Side of the Moon.

Pink Floyd top-tracks on Spotify

Pink Floyd top-tracks on Spotify

Yet, top-tracks on Deezer are much more interesting, including live tracks from the Kralingen festival in 1970.

Pink Floyd top-tracks on Deezer

Pink Floyd top-tracks on Deezer

It might be due to their availability on Deezer before the full catalogue (hence getting more plays), or because potheads prefer Deezer to Spotify, but I thought it was a fun fact to note. Anyway, enjoy the following performance below, or check the festival album on Deezer!

And, of course, you can listen to them on seevl as well, with top-tracks gathered from iTunes.

Screen Shot 2014-02-10 at 15.16.39

MIDEM Music Hack Day 2014 – seevl hipster

Last week-end, the music industry meet in Cannes for MIDEM. And, as for the past 4 years, the music-tech community gathered for a special Music Hack Day, sponsored by Deezer and Spotify developer platforms and organised by Martyn Davies.

I’ve been lucky to participate for the third time in this week-end full of music, tech and energy, and built an obviously not-so-serious hack: seevl hipster

Do you want to impress your friend who’s into electro-folk, or that other one who only listens to avant-garde metal? Now you can! By logging-in to seevl hipster, you can eventually find obscure artists that match your friend tastes, and show-off on their Facebook wall.

Image

This hack uses the Facebook API to identify your friends’ likes, that are sent to our (so far internal) seevl API, in order to match their top-genres (similarly to what you get when creating a seevl account), then using the API again to suggest musicians, linking to their seevl page for a full listening experience. It’s built using my now-favorite combo: AngularJS + Flask.

You can read more about the 18 hacks built during the week-end, and see how LEAP motion might solve your Justin Bieber addiction (a MHD without a Bieber hack is not really a MHD), how to DJ with Spotify, or how to recycle your old MIDI keyboard, among others.

 

The Semantic Web in action at seevl.fm

This blog has been quiet for months, as I essentially focused on seevl.fm and our brand new release, even though I still found time to attend a few music-tech hack-a-thons, including the MIDEM MusicHackDay one at the moment [1].

Yet, now that JSON-LD (the best thing in the Semantic Web sphere for years) is a W3C recommendation, than Google’s Knowledge Graph becomes even more central in Google’s search, and that Facebook acknowledges the Knowledge Economy in its strategy, here are a some tech posts on seevl’s blog you may want to check:

That’s what I call the Semantic Web in action. And if you want to see it live, check our brand new seevl.fm, and its newly-released auto-playlist feature!

Auto-mixtapes on seevl.fm

Auto-mixtapes on seevl.fm

[1]  If you haven’t seen it yet, check our venue-discovery demo done with Oscar from Gracenote!

Listen to previews of any artist over the phone

It’s summer, time for a short break (well, if you’re a start-up founder, you know there’s no such thing as a real break), so I decided to hack on something different than our upcoming seevl.fm release (sign-up here for the beta!) to change my mind.

Reviving part of our previous valentun.es hack from MHD NY 2011, here’s Send A Preview.

 

Send A Preview

Send A Preview

SAP is a simple app that let you text an artist name to a dedicated number and get a phone call a few seconds later to let you listen to previews of their top-5 tracks.

It uses the Twilio API (for all SMS and voice interactions), the 7Digital API (for track previews, using their python lib), and Flask (for the HTTP integration and parsing / getting the data), and it runs with Gunicorn and Nginx - while the responsive CSS is provided by Toast. Full source code is on GitHub, under GPL.

The Twilio API is well documented - as well as the Python bindings -, so very easy to implement. For instance, the following lines will create a TwiML to let the user input any one-digit character to play a particular track.

with response.gather(numDigits=1, method="GET", timeout=10, action="/twiml/%s" %(tid)) as gather:
    for i in range(1, len(json['tracks'])+1):
        gather.say("Press %s to play %s." %(i, json['tracks'][str(i)]['title']))

I got confused by the POST-by-default when accessing a TwiML when passing a phone call: since it queries the existing URL of a TwiML, I’d have expected a GET by default, and a POST only in some cases.

But actually, the painful part happen when accessing the track samples. I first used the iTunes API, before figuring out that Twilio can’t play M4A files. I then switched to the Deezer API - that we’re already using at MDG in various apps - to get MP3 samples. Everything worked fine until I deployed on AWS, where the script failed as Deezer is not available in the US,where our EC2 box is located. I finally switched to 7Digital and their US store, so the app now works fine – at least I suppose for most artists!

The app landing page is at http://sap.mdg.io, and you can use it at +1 347-329-3425 (unless you call at a time our Twilio credits are down!). If you enjoy using it and have particular needs for your own music discovery app, contact us!

Twilio, 10 lines of Python, and the TC Hackathon

Last week, I lately realized that TechCrunch was organising its upcoming Disrupt SF Hackathon. I though attending could be fun, especially since it’s been a while since the last Music Hack Day I’ve joined – in Stockholm - where we’ve build Gig-o-graphics (SongKick + Instagram + Deezer).

As the first tickets were booked super quickly, I decided to hack a small script to be the first in line when the new batch was out. While others had the same idea, I still want to share my code to showcase the what you can do with the Twilio API in only a few lines of code.

I put the previous script into a crontab running every 2 minutes. It does 2 things:

  • Check the eventbrite page of the Hackathon and look for the string “not started”. This was the message at that time, but it’s now “sold out”, so can update if you want to run the script yourself for the next batch (if any);
  • Use Twilio to send a SMS as soon as the page doesn’t contain this string anymore. You could also add a flag to send the SMS only once. Or, like me, your phone will buzz every 2 minutes until you stop the cron.

That said, only a few hours after I put the script online, I received a SMS from Twilio. 2 minutes later, the ticket was in my inbox!

SMS alert for TC Hackathon tickets!

SMS alert for TC Hackathon tickets!

That’s it. 10 lines of Python, an API, and I’m ready to hack. Well, almost. I now need to cover the fees to the Hackathon, and I’m looking for any sponsor that want to help! I don’t know yet what I’m going to build, but I can promise it will be amazing and fun. So if you’re an API-driven and hacker-friendly company, let’s talk!

 

A brand new homepage, finally

Wow, it’s been more than a year since I haven’t posted here! In spite of the silence on this blog, lots of things happen – mostly with seevl and MDG with our first client deals. While being busy, I still wrote about tech topics (data, APIs, etc.) on our own seevl’s blog, and answered questions on Quora - a platform that I really enjoy using!

That said, it was time to refresh the blog and my homepage, and I’ve just made the following changes:

  • This blog is still on WordPress, now using the Responsive theme, making it easier to read it on mobile. You may have seen that we’re also using responsive design for seevl, and there’s much more to come in our upcoming new release -sign-up if you haven’t done it yet!
  • The new homepage is based on html5up, using a simple python script to translate a JSON file about myself into an appealing HTML5 / CSS3 page, then deploying it on apassant.net. Source is on github if you want to check it, and next steps are to LD-ify the JSON, and add some RDFa markup!

I aim to blog more regularly here, but in the meantime, follow seevl’s blog!