Osorterad

Nyhetr.se med uppdaterad front-end

Posted in Osorterad on februari 15th, 2015 by Clas – 1 Comment

Nyhetr.se har fått ett uppdaterat utseende. Jag har tidigare provat utseeende på domänen Nyhetsfilter.se vilket jag skrev om i förra inlägget. Att flytta från Nyhetsfilter.se till Nyhetr.se innebar (förhoppningsvis!?) inte några större problem, då det är bara är front-end som är utbytt. Det handlade mest om att inte råka skriva över några gamla PHP-script.

Syftet med uppdateringen har varit att göra utseende och funktion så pass enkel att det går att använda samma version i mobil som på stor-skärm. Som det är nu så är det bra menyn som anpassas beroende på skärmbredd. Det är några funktioner på sajten som i och med detta har försvunnit. Funktionen för att kunna skapa en ”personlig” RSS-feed med ”viktiga nyheter”, via inloggning med Twitter, är nu borta. Antagligen ingen större förlust. Detta var en funktion som var lite för komplex för att funka bra i mobilen.

Det som triggade uppdateringen var flera mail från Google Webmaster Tools som börjat påminna om att Google tycker att sajten inte funkar så bra för små skärmar, och att de har slutat skicka mobil-sökningar till sajten. Jag hoppas att denna uppdatering ska vara tillräcklig som ”svar” på detta problem.

Resvan/map – analysera dina Moves

Posted in Osorterad on januari 13th, 2014 by Clas – Kommentering avstängd

Mitt tidigare inlägg handlade att donera resespår från ”activity trackern” Moves-app. Jag har programmerat lite mer runt Moves, och skapat Resvan/map där man kan visa sina ”moves” på en Google-karta, och göra en enklare beräkning på hur mycket tid du spenderat i cirklar som kan ritas på kartan.

I figuren nedan ser du mitt resmönster för december 2013. Det är mycket pendling Linköping-Norrköping med tåg med tillhörande promenader (grå för tåget och grön för gång), en tur hem till Katrineholm, en kort cykeltur (turkos) söder om Linköping, och någon ännu kortare löptur (rosa). Mer detaljer syns naturligtvis om jag zoomar in. Genom att rita cirkeln i Norrköping, för att sedan klicka på ”beräkna tid i cirkel” så får jag reda på hur mycket tid jag spenderat på jobbet, typ.




Det är kanske inte så många svenskar som kör Moves, och kanske än färre kör både Moves och Twitter, vilket krävs för att logga in. Därför har sidan blivit den första(?) där jag skrivit texter på engelska. Sedan den fick en länk från Moves ”connected apps”, så är det faktiskt en del som provkört den.

Allt är programmerat i Javascript (delvis jQuery) utom den funktion som sköter inloggning och laddning av data från Moves som är programmerad i PHP. PHP-delen är alltså en sessionshanterare som använder Twitter för att göra en inloggning och göra en autentisering hos Moves-app. Javascript är väl inte mitt favoritspråk, speciellt inte för sidor som kräver inloggning och sessions, eftersom det är lite komplicerat att felsöka, men det går bättre och bättre, ju mer bekant jag blir med Javascript konsol-loggen. Sidan bygger på Twitter Bootstrap och mycket av ”designen” har jag hämtat från det gamla hacket ”Resogram. Resvan/map använder Google Maps API Drawing Manager för att rita och flytta cirklar, vilket är en ny bekantskap för mig. Funkar mycket bra, precis som det mesta annat med Google Maps.

Min plan är att göra hela koden publik med förhoppningen om att någon mer vill skapa nya funktioner, eller i alla fall fundera över vilka funktioner som skulle vara intressanta. Det mesta av koden går att se direkt genom att göra ”visa källa” på webbsidan (jo ja, jag ska snygga till det senare).

Har du en iPhone eller Android-telefon men inte provat Moves-app, så gör det!

Donera dina resdata

Posted in Osorterad on november 23rd, 2013 by Clas – Kommentering avstängd

Jag har tidigare försökt att skapa mobilapp för att samla in resedata. Då har jag byggt egen app, Reslogg.se utan någon vidare lycka. Nu finns det flera ”activity trackers” att ladda ner för iOS och Android, och Moves app är en av den, och som också har ett API.

Baserat på detta har jag skapat Resvan.com där du kan donera dina Moves app-data. Just nu är API:et bara tillgängligt i en beta-version för Android, men för iPhone så har det funnits ett tag.

Resogram.se på East Sweden Hack 2013

Posted in Osorterad on september 18th, 2013 by Clas – Kommentering avstängd

Under den senaste helgen var jag på mitt andra ”hack” någonsin. På det första, Travelhack 2013, så försökte jag bygga en Android app, vilken till slut blev Kultursafari.

Hacket kallades East Sweden Hack 2013 (ESH13) och var på CreActive i Linköping. Vi var ett lag på två personer och vi bestämde vi oss för att inte bygga någon native app, utan bara skapa HTML/Javascript. I och med det så behövde vi inte förbereda så mycket, utan vi kunde börja direkt att utveckla/testa på en befintlig server på plats. Våra förberedelser bestod i princip av en lista med länkar till tillgänglig kod/kodexempel att utgå från. På ESH13 fanns, precis som på Travelhack, krav på att man använde minst ett av de API som kom från en av ”sponsorerna”. På ESH13 var utbudet väldigt smalt, och några av datakällorna var relativt små (och inte värda namnet API, då det i somliga fall verkade vara meningen att man skulle ladda hem hela datasettet till en egen databas och behandla lokalt). Vi valde i alla fall att basera vårt hack på Resrobots API. Resrobot är ett API för tidtabeller för Sveriges kollektivtrafik, är välunderhållet, och finns på Trafiklab.

Tjänsten vi byggde var Resogram. Idén är att via ett webbgränssnitt kunna skapa resplaner som man sedan kan skicka iväg i form av ett Resogram till den som ska göra resan. Resogrammet skickas i form av en länk i ett SMS (med hjälp av 46elks) och dyker då upp som en ”SMS-notification” hos mottagaren. I SMS:et finns en länk till er mobilsida som visar den planerade resan på en karta, tillsammans med en textbeskrivning för hur resan ska göras.




Vi lyckades få ihop all funktionalitet på de 24 timmarna som hacket varade, även om vissa smågrejor inte blev så klara som vi kanske velat, och att det lite blev på välslipat överallt. Det fungerade i alla fall så pass bra att det gick att demonstrera funktionaliteten live.

Vi var två som programmerade, och vi delade upp det så att jag i huvudsak ägnade mig åt webbgränssnittet och Anders programmerade på själva Resogrammet som alltså ska ses i mobilen. Den lokala ”backenden” består endast av en MySQL-tabell vilken vi planerade och satta ihop tillsammans. Det visade sig dock rätt snabbt att mycket kod gick att återanvända från den en till den andra delen, så det blev en helt det copy/paste mellan delarna.

Resogram är, i princip, den första sajt som jag skapar som använder Bootstrap/Javascript/JQuery och gör något lite mer avancerat än att bara läsa in via Ajaxi ett steg. Antagligen finns det ”nyare” ramverk för att bygga denna typ av ”one page app” på, men jag valde att programmera det mesta direkt i Javascript, då det verkade vara det enklaste sättet att hantera Google Maps API. Tjänsten finns att prova på Resogram.se.

ESH13 var väldigt välordnat, likvärdigt med Travelhack men med bättre mat, och jag kan verkligen rekommendera det om det är så att det blir en ny omgång nästa år. Jämfört med Travelhack så var det betydligt mindre (10 lag, c:a 25 personer). Hacket pågick dagtid under två dagar, sammanlagt c:a 24 timmar, men med avbrott för 2-3 föreläsningar för den som ville. Det fanns också möjlighet till 20 minuters ”pitch-träning” med pitch-coach, vilket var superbra. Arbetsplats, mat, godis, internet, och organisation var utmärkt, verkligen! Hacket avslutades med att varje lag presenterade sitt resultat under c:a 5 minuter inför en ”jury” och lite publik.

Så vad tycker jag kan göras bättre?

  • Prisutdelningen var två dagar senare och inför en större publik, vilket var trevligt. Gissningsvis blev det dock lite för omständligt för de som var med men som inte är från regionen att behöva göra ytterligare en resa till ”east sweden”. Det fick till följd att alla som var med på hacket inte var med på prisutdelningen. Tyvärr så presenterades inte alla lagen som var med på hacket med namn/länk inför publiken vid prisutdelningen, vilket jag tyckte kändes lite fattigt.
  • Till skillnad från Travelhack, och andra tidigare hack, så var det få Facebook/Twitter/media-”kändisar” närvarande, vilket gjorde att spridningen av projektresultat (länkar till hacken) verkar uteblivit i princip helt. Lite tråkigt om resultaten inte ”kommer ut” på något sätt. De länkades inte heller från ESH13-hemsidan vilket även det känns lite fattigt.
  • Som på Travelhack så verkar det vara flera av lagen som går därifrån utan att riktigt förstå varför ett givet lag vann. Dels är det svårt att hinna få en inblick i vad andra gjort, dels verkar det väldigt oklart vad det är som ”juryn” vill se (Idé? Lagsammansättning? Teknik? Grafik? Färdig produkt? Nytta? Affär?). Lite synd, men inte någon stor grej. Juryn gav tyvärr ett lite oengagerat intryck under presentationerna, eller också tyckte de bara att det var svårt, då de under den efterföljande ”frågestunden” endast lyckades få fram en ynka fråga till varje projekt, med undantag för den första presentationen. Synd. Att behöva maila in 2 A4-sidor med ”beskrivning” till juryn i samband med presentationerna var inte kul!
  • Hack vinner (nog) på att vara lite större. Att bara locka 25 personer gör det lite för litet. Så nästa gång hoppas jag att det blir minst dubbelt så många.

Men som sagt, dyker det upp ett ESH14 så rekommenderar jag det verkligen!

Uppdatering 2013-09-19: Juryn skickar sina kommentarer på Resogram per mail och de är:

  • Snygg design
  • Enkel funktion
  • Bra idé
  • Proffsigt utförande
  • Sms-tjänsten ger mervärde
  • Fågelvägen visas upp, bör vara resrutten
  • Finns potential
  • Utmaning i att konkurrera med Google Maps och liknande tjänster

Låter helt okej, fair, tycker jag! För att rita mer detaljera resväg, mellanliggande stationer och vägbeskrivning för gångsegment, kommer jag att prova att byta ut Resrobot till min OpenTripPlanner instans på Vilkenresa.se (och hoppas på att den kan fungera lika stabilt som Resrobot gör :-))

Kultursafari får webbkarta

Posted in Osorterad on april 12th, 2013 by Clas – Kommentering avstängd

Kultursafari har fått en webbkarta som gör att man kan klicka runt bland ”kulturplatserna” på en karta, istället för att behöva besöka dem, och läsa i mobilen.

I första hand har jag programmerat kartsidan för att kunna testa den backend jag skapat för att visa dynamiskt laddade punkter på en karta, något som är enklare att debugga i Javascript, än att utveckla den direkt mot en Java-app. Kartsidan kan också användas för att titta på den HTML som jag genererar från min Wikipedia-dump. Den innehåller en del fel, och genom att klicka runt på kartan så får jag möjlighet att identifiera var/vad det är som blir fel. Förhoppningsvis för det att jag kan öka kvaliteten på de texter som visas.




Förhoppningen är också att denna webb-karta är ett första steg mot en ”spelifiering” av Kultursafari, där man på webbsidan kan titta på vilka platser man passerat och läst om i mobilen, och se vad man borde besöka för att öka sin kultur-nivå.

Sök bland platsannonser MerJobb.com

Posted in Osorterad on april 3rd, 2013 by Clas – Kommentering avstängd

Med insikten om att Arbetsförmedlingen har ett fint API för att göra sökningar bland deras platsannonser så har jag satt ihop en platsannons-sök-sajt på MerJobb.com.




Tyvärr kan jag väl inte säga att jag är så nöjd med själva loggan och designen. Loggan påminner mig som diverse sajter som fanns för 5-6 år sedan, men jag är lite nöjd med att ha ritat själv. Sajtens HTML/CSS är baserad på Foundation 4. Foundation 4 verkar vara lite mer flexibelt än Twitter Bootstrap som är det jag har använt tidigare, och det går att ha lite mer kontroll på vad som händer med layouten när den visas på en liten skärm. Övrig kod för sajten består mest av PHP-kod för att hämta data via API:et; inte speciellt avancerat. Vet inte riktigt vad jag ska göra med sajten nu när kafferasten är slut…

Kultursafari på Travelhack 2013

Posted in Osorterad on mars 18th, 2013 by Clas – Kommentering avstängd

Under helgen har jag varit på Travelhack för att se hur ett hackathlon fungerar, och för att utveckla mitt ”resdata-koncept” Reslogg som jag skapade en Android-app för, för ett år sedan ungefär. Konceptet har nu ”pivoterat” till en app som heter Kultursafari och som visar upp kultur som finns i din närhet, när du t.ex. gör en bussresa. Typ, du ser en kyrka, staty eller gammal byggnad genom bussförnstret och appen ger dig data och beskrivande text om vad det är du ser. Appen bygger på mer än 15.000 geo-lokaliserade kulturobjekt och beskrivningarna kommer från Wikipedia.

Min 1-minutspitch baserades på denna bild, som ska beskriva vad det handlar om.

Historiskt sett så har appen viss koppling till boken ”Längs spåret” som SJ gav ut 1989, och där man kan läsa om kultur man passerar om man gör resan Stockholm-Malmö med tåg. Men min app funkar naturligtvis för alla färdmedel och för alla resor!

Appen finns att ladda ner från Google Play under namnet Kultursafari. Har du en mobil med Android 4.0.3 eller senare så får du gärna provköra och kommentera. Även om jag med förberedelser inför Travelhack har ägnat lite mer än 24 timmar åt appen, så är det en första version. Både konceptet och tekniken kommer att utvecklas och finjusteras framöver. Versionen som finns ute har lite problem med ikonstorlekar för vissa mobilmodeller, men i övrigt så ska den fungera relativt bra.

Google News 10år, Frisim.com 10.5

Posted in Osorterad on september 25th, 2012 by Clas – Kommentering avstängd

Google firar att Google News har blivit tio år. Google News startade 22 september 2002. The Atlantic har en artikel som berättar hur Google News skickar massvis med besökare till stora och små nyhetssajter.

Jag startade min Frisim.com för ungefär 10.5 år sedan. Jag registrerade domänen Frisim.com den 20:e april 2002, men samma funktion fanns innan dess under namn som Allanyheter.com (på den gamla goda tiden då det fanns ”gratisdomäner”), och Nyhetsrubriker.com (registrerad 17 september 2000). Allra första visade jag lite insamlade nyhetsrubriker på nic-sys.se, en domän som vi registrerade 1995…

Reseplanering med Vilkenresa.se

Posted in Osorterad on september 2nd, 2012 by Clas – 1 Comment

I mitten av augusti började Samtrafiken publicera stora delar Sveriges kollektivtrafiktidtabeller på Trafiklab.se. Bara någon vecka tidigare så lanserdes en officiell reseplanerare för Portland, USA, utvecklad som open-source-mjukvaran OpenTripPlanner.

Mitt senaste projekt har varit att hämta dessa GTFS-data från Samtrafiken och stoppa in i OpenTripPlanner. Det gick fort. Det som behövdes var att ladda ned en version av OpenTripPlanner och GTFS-filen från Samtrafiken och lägga den i rätt katalog. Det enda kruxet är att GTFS-filen för Sverige är ganska stor, då den omfattar tidtabellerna från Sveriges kollektivtrafikoperatörer. Det OpenTripPlanner gör är att utifrån GTFS-data identifiera vilket område som täcks (hela Sverige), extrahera detta område från OpenStreetMap (OSM), och använda OSM-data för att bygga ett nätverk med resemöjligheter. OpenTripPlanner består också av en funktion för att hitta ”bästa rutt” i detta nätverk, vilket kan presenteras för användare endera som XML/JSON-feed, eller som en ruttplanering på en karta och med färdbeskrivning, ungefär som Google Maps.

För att sätta upp systemet på en webbserver krävs inte så mycket mer än detta, i alla fall inte om du redan har en server som kör en Java application server. Ett krav för att kunna använda Samtrafikens GTFS-data i OpenTripPlanner är, i princip, att du har en server med 8GB RAM. Då jag inte hade någon sådan så satte jag upp en Elastic Cloud Server hos Ipeer.se. Samtidigt som jag experimenterar med OpenTripPlanner provar jag alltså Ipeer för första gången.

Min ”svenska” reseplanerare finns på Vilkenresa.se.



Vilkenresa.se innehåller en grafisk reseplanerare, och ett API för att få förslag på resor i XML/JSON-format. Det Samtrafiken publicerar i sitt ”API” är en stor fil med kollektivtrafiktidtabeller; det Vilkenresa.se:s API ger är förslag på resor givet en tidpunkt och en start- och slutpunkt.

Den initiala planen är att kunna använda data from Samtrafikens GTFS-data, via mitt API på Vilkenresa.se, för att jämföra resor, och ge förslag på alternativa resor, till min Android-app Reslogg.

Medaljer till alla

Posted in Osorterad on augusti 5th, 2012 by Clas – Kommentering avstängd

Min resespårningsapp Reslogg har nu tagit ett första steg mot ”spelifiering” (gamifcation). Jag delar ut medaljer beroende på hur många resor, reslängd och restid som registreras. Det är inte så avancerat precis, utan det är mest en kul grej för att göra något av kod-snuttarna jag skrivit för att beräkna reslängder och restider. Min plan är att det ska bli mer ”spelifiering” i framtiden, och jag hoppas att jag kan jag få lite tips från Coursera-kursen Gamification som jag planerar att gå. Kursen startar den 27 augusti.