Det fantastiska med öppen källkod

Jag har precis blivit klar med en prototyp på en idé som jag har haft ett tag. Den handlar om att knyta ihop en lista med förslag på filmer att se med metadata (genre, synopsis, betyg) för filmen.

tl;dr tack vare en öppet databas och två projekt med öppen källkod (TheMovieDB, TMDBSimple och Wunderpy) så löste jag ett vardagsproblem!

Bakgrund #

Jag och min partner använder oss av en delad lista i appen Wunderlist där vi skriver in filmtips som vi får från tidningar, twitter, vänner, radio etc. En tid har jag sökt ett projekt att fokusera på för att lära mig mer om att programmera i Python och eftersom det bästa sättet att hitta ett sånt projekt på är att identifiera något som man själv har nytta av, så har jag letat efter automatiserbara aktiviteter i min vardag. I vårt hanterande av just den här filmlistan så dök en idé upp. Det som sker då och då är nämligen att vi, i jakt efter en film att faktiskt titta på, går igenom listan och diskuterar vilken som skulle passa för stunden. För varje film så var vi då tvungna att manuellt gå igenom följande fyra steg (oftast gör vi det här dessutom direkt i telefonen vilket gör det ännu bökigare):

  1. Kopiera filmtiteln
  2. Gå till IMDB
  3. Klistra in filmtiteln
  4. Läs upp betyg, handling och genre för diskussion

Ett ganska tradigt och långsamt sätt helt enkelt!

Lösning #

Lösningen var ju så klart att börja populera filmlistan automatiskt med den informationen som vi ändå sökte upp manuellt.

Jag började söka runt efter lite användbara APIer och hittade den här öppna databasen TheMovieDB och en wrapper till siten i projektet TMDBSimple.

(Jag började faktiskt med att skriva en scraper för RottenTomatoes men upptäckte snart att de av rättighetsskäl inte längre har synopsis på sina filmer vilket gjorde att den idén föll bort. Och ännu lite tidigare så försökte jag mig på att göra en scraper för IMDB, men IMDB hade några komplicerade javascript som jag gärna undvek)

Som API till Wunderpi så hittade jag projektet Wunderpy.

Efter någon veckas kodande på lediga stunder (minns att jag är föräldraledig på heltid!) så var prototypen slutligen klar. Jag hade installerat den på min Raspberry Pi och satt upp den så att den kontinuerligt pollade filmlistan efter nya tips-inlägg. Den fungerade strålande och klarade efter några bugfixar så klarade den av både svenska filmtitlar och när någon av siterna gick ner.

Summering #

Jag har ju så klart vetat om världen med öppen källkod och använder sådan kod i mitt professionella liv hela tiden. Men att så här enkelt kunna brygga ihop två olika tjänster och lösa ett vardagsproblem blev något av en ögonöppnare. Nu vill jag hitta ett öppen källkodsprojekt och bidra jag med!

 
2
Kudos
 
2
Kudos

Now read this

Nytt projekt som matchar alla mina parametrar

Självglädjen, jagstoltheten och egonöjdheten som jag har känt den senate veckan vet inga gränser! Jag har äntligen identifierat ett projekt som matchar alla mina parametrar för vad jag vill göra på fritiden! Det är ett projekt som gör... Continue →