WindWiz

En GSM-uppkopplad vindmätare

jQuery Mobile

Det är ett ganska dåligt betyg för ett API när man som utvecklare sitter framför datorn och mumlar frusterat för sig själv.

”Fan vad bökigt detta blev då! Kunde det inte varit såhär istället?”

.. Särskilt när det är ett API man uppfunnit själv, som var tänkt att vara enkelt att använda och att förstå. Jag tycker det vore synd om hela Mars månad fick passera med endast ett ynka blogginlägg, så idag är det dags för en kort uppdatering.

Sedan jag blivit med smartphone har jag känt ett större sug efter en bättre lösning för handhållna enheter. Egentligen borde mobilanvändare prioriteras över vanliga surfbesökare eftersom behovet av realtidsdata från vindmätarna i någon mån ökar när man är ute på fält, antingen på hanget eller på väg till hanget.

Mobila appar är hett, men för den här typen av presentation tror jag en mobilanpassad webbsida duger lika fint. Jag ser dessutom fördelar i att inte behöver underhålla n stycken olika appar för n stycken olika plattformar när samtliga system inkluderar kraftfulla webbläsare. Därför har jag under Mars ägnat tid åt att kika på diverse mobilanpassningar av ”Web 2.0”-ramverk och kommit fram till att jQuery Mobile är en god utgångspunkt för en mobilversion av vindhemsidan. Målet med detta ramverk är att skapa en sida som efterliknar de vanliga mobilgränssnitt som finns i t.ex iPhone, Android, Blackberry mfl. Här finns ett litet demo som visar vad för slags gränssnitt jag pratar om (pröva gärna att klicka runt).

Under ytan sköter ramverket alla specialtricks som krävs för olika enheter och ser till att presentationen blir likformig oavsett telefonmodell. Ramverket kan också lyssna efter särskilda mobilorienterade händelser, t.ex när man sveper med fingret över touchskärmen eller ”nyper” skärmen. Med alla dessa verktyg borde det gå att få till en webbsida som fungerar på alla moderna telefoner.

För ett par veckor sen satt jag omborde SJs tåg mot Göteborg och hackade loss på en sådan sajt. Det var ungefär då jag insåg att mitt applikations API hade en hel del brister, som nu är tillrättade i v3. Det gamla (v2) API finns fortfarande kvar och uppdateras aktivt, men för all slags nyutveckling rekommenderar jag version 3.

Nyheter i version 3:

  1. All statisk information är flyttad till stationsindex (index.json/xml). Tidigare var filosofin att hålla filstorleken på index låg och låta klienter polla den för att upptäcka nya uppdateringar i flera stationer parallellt. I version 3 är filosofin istället att klienten pollar den station som klienten är intresserad av, eftersom man troligtvis bara tittar på en enskilt station åt gången ändå. Detta medför att den information som tidigare fanns i info.json/xml för varje station numera är inbäddad i stationsindex. Detta underlättar en implementation eftersom man inte behöver hämta flera filer under initieringsfasen.
  2. API:t är numera UTF-8 kodat för att på ett korrekt sätt bevara svenska tecken m.m.
  3. Det finns nummera ett nytt ”description”-fält för varje station (lagras i index.json/xml) där man kan fylla i matnyttig information om varje station.
  4. Data finns nu även tillgängligt via formatet ”Padded JSON” (JSONP), en teknik som ofta används för att kringgå webbläsares ”same origin”-policy.

Jag hade kommit en god bit på vägen med den nya sajten när min laptop plötsligt bestämde sig för att delar av filträdet på min disk var korrupt. En del arbete gick åt helvete, men de viktigaste designbeslutet finns förhoppningsvis kvar i mitt huvud någonstans.

Annonser

Ett svar till “jQuery Mobile

  1. Ping:CPS vindwebb goes mobile « WindWiz

Kommentera

Fyll i dina uppgifter nedan eller klicka på en ikon för att logga in:

WordPress.com Logo

Du kommenterar med ditt WordPress.com-konto. Logga ut / Ändra )

Twitter-bild

Du kommenterar med ditt Twitter-konto. Logga ut / Ändra )

Facebook-foto

Du kommenterar med ditt Facebook-konto. Logga ut / Ändra )

Google+ photo

Du kommenterar med ditt Google+-konto. Logga ut / Ändra )

Ansluter till %s

%d bloggare gillar detta: