Arkiv för kategori ‘Utvecklare’

Inloggningar som blev utloggningar – en teknikdeckarnovell

28 januari 2010

Varning, det här inlägget kan innehålla spår av utvecklarjargong och teknisk terminologi.

I onsdags förra veckan blev det plötsligt svårt att logga in på booli.se. Våra alerta användare (tack!) rapporterade inloggningar som blev utloggningar blandat med lösenord som slutat fungera och ibland: ”tack, nu fungerar det igen!”. Genast började våra ninjor till utvecklare klia sig i huvudet.

lösenordet stämmer inte

Första steget när något sådant här händer är att försöka återskapa felet, något som framgångsrikt gick att göra – ibland. Andra steget är att kolla felloggarna på servrarna, som faktiskt spottade ut sig en massa fel om cookies som – återigen ibland – inte accepterades när man försökte logga in. Okej, skumt.

Felmeddelandet i loggarna skrevs ut på flera av våra frontend-servrar, varav en var helt nyinstallerad, men inte på våra testservrar eller våra utvecklingsburkar. På de sistnämnda gick det dessutom att logga in varenda gång. Ehh, okej.

felloggar

Vi tittade på historiken i vår SVN för att se om något ändrats på sistone. En del kod var såklart omskriven sen sist, vi försöker sätta koden i produktion ganska ofta, men ingenting som hade med inloggningen att göra. Öh, w000t?

Nu gick diskussionerna livligt till och teorierna innehöll mer och mer osannolika händelseförlopp: I vilken ordning man var tvungen att klicka på ’kom ihåg mig’-knappen? Vilken webbläsare fungerade det oftast inte i? Omg, wtf?!

w00t

Men felloggen då? Jo, ibland verkade cookies levereras fel från servern till klienten. Ibland är ett ord som utvecklare inte tycker är speciellt roligt, det gör nämligen felsökning otroligt mycket svårare än vid konsekventa fel. Noooo!

Till historien hör att tåget till vår sedan länge bokade weekend i Åre gick på kvällen, något som ökade stressnivån väsentligt. Stress är ytterligare ett ord som utvecklare inte tycker speciellt mycket om. Iiiiik, vad kan det vara?

Förvirringen och frustrationen växte, timmarna gick alldeles för snabbt och till slut var siste man tvungen att slita sig från tangentbordet för att slänga ihop lite pjäxor och långkalsonger i en bag innan tåget gick. Dangit!

frustration

Diskussionerna fortsatte på tåget, och frustrationen över att vi varit tvungna att sticka var stor. Det är jobbigt att veta att ens användare tvingas använda en sida som inte fungerar.

Väl tillbaka på kontoret på måndag morgon, efter att ha spekulerat och diskuterat felet hela helgen, uppblandat med lite prat om toppturer och lössnö såklart, satte sig ett strike-team (jepp, ett strike-team ;) ) bestående av två utvecklare direkt med problemet och ett gäng idéer på hur man kunde angripa detta.

Efter ett par timmar visade det sig att vår enda ledtråd, felmeddelandena i loggarna, inte hade något med vårt inloggningsproblem att göra. Det var en automatisk inloggningsrobot som gått bananas, men det felet fick vänta.

kaffebryggare

Osannolika mängder kaffe tvångskonsumerades i ren förvirring, vilket i kombination med stor envishet och en nedmontering av vårt inloggningssystem bit för bit gjorde att vi upptäckte att det var memcache som ibland returnerade felaktig data till apache-processerna.  Ytterligare några tester senare uppdagades det att det hände då någon av servrarna efterfrågade memcache på den nyinstallerade servern. Några minuter senare var problemet löst, det visade sig att den felande servern hade en nyare version av memcache än den som funnits innan ominstallationen. Den körde 3.x.x och övriga 2.x.x och i övergången från 2 till 3 så hade vissa defaultinställningar ändrats. Det som ställde till det för oss var att hash_strategy var ändrad från ”standard” till ”consistent”.

Några minuter efter den upptäckten gick det återigen att logga in utan problem på booli.se. Vi är jätteledsna över det här och ber om ursäkt, sådant här får inte hända.

Vi vill i alla fall dela med oss av, förutom historien, våra lessons learned, så att andra inte behöver råka ut för samma sak:

-       Ha inte ”ofarliga” fel som skrivs ut i felloggen
-       Kolla alla versionsnummer på alla moduler som installeras på dina servrar
-       Åk inte till Åre :)

Skalproblem

14 januari 2010

Vi har aldrig haft så mycket besökare förut som vi har haft den senaste veckan. Det är såklart hur roligt som helst, men det har tyvärr även inneburit att vår kod och våra servrar satts under en belastning som de inte sett maken till tidigare. Det har resulterat i långsamma svarstider och att en felsida ibland dykt upp på Booli.se. Speciellt vid den magiska bostadsletartimmen som verkar börja vid ca kl 21.15 på vardagskvällarna har problemen dykt upp.

Vi är såklart jätteledsna över svarstiderna och vill med den här bloggposten be om ursäkt, berätta att vi är medvetna om problemet och att vi jobbar (dag och natt) på att hitta en lösning.

Och så vill vi tacka förståss, för att ni är så många som surfar bostad och inspiration hos oss nu för tiden, kärlek till er!

Bildcredd till: http://www.flickr.com/photos/chikawatanabe/ / CC BY 2.0

Booli Hackathon – Live Update 3 (final)

2 oktober 2009

Klockan är nu 08.15 och solen har lyst oss rakt i ögonen i flera timmar. Den andra andningen som några av oss kände kring 5-snåret är som bortblåst, men ett par saker håller ögonenlocken på glänt:

  • Den fantastiska Spotify-playlist som ni och många andra har byggt upp åt oss!
  • En stundande test-lansering av en feature som vi utvecklat sedan igår kväll
  • Brist på minne för en annan feature vi jobbat på under natten

Trötta utvecklare

Hur som helst, den featuren som inte slukade allt vårt minne har vi döpt till “Inspiration” och kan testas här. Som vanligt (under Hackathon) är den endast testad (nåja) i FF3 i OSX. För att göra användarupplevelsen ännu bättre har vår test-server en ett dygn gammal databas vilket gör att vissa bilder saknas.

Nu börjar det pratas om akut behov av sömn runt omkring här på kontoret. Vi får stänga butiken för idag. Tack till alla som kom förbi, alla som lade till låtar till spellistan och kiosken på hörnet.

Godnatt /Booli

Booli Hackathon – Live update

1 oktober 2009

Kl 13:37 drog vi igång och vårt Uppsala-kontor har fyllts av folk som vi kodar, äter, pratar eller bara tar en match i NHL10 ihop med.

BH

Det första lilla projektet vi har att visa upp är en tidig version av polygonsök, eller med andra ord, möjligheten att själv rita det område på kartan man vill söka bostad i. Vi vill dock göra er uppmärksamma på ett par detaljer innan ni ger er ut och testar; bostadsdatan är inte helt färsk på test-servern, som utvecklare har vi en förkärlek till Firefox 3.5, det kan finnas en del buggar ;-)

Med det sagt, ni hittar funktionen här: http://testing.booli.se/Kartsök. Zooma in tills det dyker upp en ruta som berättar att man kan aktivera funktionen, aktivera, rita och sök! Mycket nöje!

Update: Det visade sig att det fanns en viss förkärlek till OS X också. Det ska funka med FF i Windows, men med några mindre grafiska fel.

Booli Hackathon

24 september 2009

Det började som en längtan från oss utvecklare att få tid att göra de där sakerna vi velat göra så länge, men som aldrig blivit prioriterade tillräckligt högt. Istället för att vänta på att det sker så tänkte vi ta saken i egna händer.

Det hela är väldigt enkelt, vi öppnar dörrarna på kontoret i Uppsala och sitter och kodar hela natten. Vi köper upp lite pizza och Jolt-cola och tar det därifrån. Ledorden är opretentiöst och mest på skoj. Hackathons har utförts på många ställen förut, bla på Facebook och Google.

Det är snabba bud som gäller, ingen vill väl vänta på något roligt!? Torsdagen den 1 oktober kl 13 kör vi igång här. Och vi håller på tills vi inte orkar längre!

Så, om du är sugen, släng iväg ett mail till emil@booli.se så ses vi snart!

Nyckeln till Booli.se – vårt API!

24 september 2009

Vi vet att flera av er har många riktigt bra idéer på tjänster och förbättringar som vi på Booli.se borde genomföra. Sedan vi startade har ni gett oss kontinuerlig feedback på det vi byggt och på vad vi borde prioritera att bygga. Det är hur grymt som helst. Tack!

Vi försöker förverkliga så många av de bra idéerna som kommer in som möjligt, men befinner oss – som alla webbentreprenörer säkert gör – i en ständig kamp om vad som ska prioriteras och vad som ska få stå åt sidan. Det är frustrerande, det finns så mycket häftigt man kan bygga, så många bra idéer som vi inte hinner genomföra att man faktiskt blir lite deppig när man tänker på det.

Men så råkar vi också veta att det finns många därute som inte bara har idéer och önskemål utan som dessutom kan backa upp dem med lite coding-skillz. Och vi vill ju se alla häftiga/roliga/nyttiga idéer komma till liv – så därför känns det väldigt naturligt att nu ta steget och öppna upp API-dörren helt till Booli.se.

Så har du en idé och lite skillz, välkommen att hacka runt med vårt API! All our base are belong to you.

Kartsök! Helskärm! Äntligen!

9 april 2009

Så var det dags att presentera en ny medlem i Booli.se-familjen! Denna gång är det kartsök som rullas ut från laboratoriet i Uppsala, en funktion som tillåter dig att söka bland Sveriges alla bostäder till salu i en och samma karta.

Kartsök har varit en av våra mest efterfrågade funktioner så därför känns det extra roligt att den nu är färdig. Flera av oss som jobbat med funktionen har flera gånger kommit på oss själva med att sluta jobba och sitta djupt försjunkna i kartan istället. Vi hoppas att du också gillar den! Varför inte leta efter fritidshus så här inför sommaren? Eller dröm dig bort bland dom här dyrgriparna. Och för dig som vill bygga eget, det finns mycket tomter och mark att välja bland, vart vill du bo?

Kartan fungerar som vanligt på Booli, när många bostäder syns samtidigt visas prickar och för att se större markörer behöver man zooma in. Dessutom finns också möjligheten att själv förfina urvalet och att spara enskilda objekt. Saknar du något så lyssnar vi som vanligt, hör av dig!

kartsok.png

Mer 1: Kartkontrollerna har fått sig en uppfräschning i syfte att bli enklare (och snyggare).

Mer 2: För ungefär två veckor sen lanserade vi Booli.se i en ny version. Vi har lyssnat på den feedback som inkommit och genomför idag ett antal förändringar på förstasidan: Mer fokus på sökfältet, tydligare uppdelning mellan olika delar och ytterligare ett steg mot att bli en så bra och lättanvänd tjänst som möjligt. Kolla in!

Ett avbrott i min arbetsdag

16 februari 2009

Booli.se har vi byggt ett rätt omfattande filtreringssystem som förhindrar att bostäder med felaktig data blir sökbara. Denna vecka är det min tur att gå igenom de bostäder som fastnat i filtrena, ett lite roligt avbrott i min annars rätt programmeringsintensiva arbetsdag. Det som gör det roligt är att det då och då fastnar rätt annorlunda objekt i systemet, idag fastnade till exempel den här herrgården från 1850-talet, våra filter sa att objektets boarea verkade misstänksamt stort, och visst är det stort, men för oss som vill ha ett eget torn att bo i så är det klart att även sådana hus ska gå att söka fram på Booli.se :)

Booli är fullt!

30 september 2008

Talesättet att “där det finns hjärterum..” stämmer inte alltid. För många av er som försökt besöka oss har Booli varit “fullt”, våra servrar har helt enkelt inte orkat med. Sorry. Men hjärterum finns alltså, så att det inte råder några frågetecken där.

Nya servrar är beställda och vi åtgärdar ett antal prestandaläckor i koden.  Vill du följa arbetet eller se nulägesstatus kan du alltid kolla in status.booli.se, där postar vi de senaste uppdateringarna.  Vi är snart uppe på banan igen.

Tack till “rikfred” och “neanord” för att vi får använda den här fantastistkt roliga skämdumpen.

Lite mer än ett jobb

25 september 2008

Det är nu Tor 25 Sep 2008 02:00:11 CEST och vi är 6 utvecklare som jobbar för fulla hästar här på Boolis utvecklingskontor i Uppsala. Anledningen till denna nattliga uppståndelse heter Booli version 4. Uppdatering innebär en rejäl utökning av mängden information i vår databas och då forskningen inom halvledarteknologin tyvärr inte går snabbare tar detta lite tid. För att så få av våra kära användare som möjligt skall drabbas av denna Booli-eklips väljer vi att göra detta mitt i natten.

Vår whiteboard med nattens schema ser ut såhär:

  • 00.00 Booli.se visar “Sidan nere”
  • 00.10 Kör igång script för omstrukturering av databas
  • 02.00 Kör igång script för import av ny data
  • 04.00 Kör igång script för omstrukturering av data
  • Före 07.00 Sidan ska vara användbar

Varför utsätter vi då våra stackars kroppar för denna stress? Stor del av svaret ryms nog inom begreppet företagskultur. Vi har sedan dag ett jobbat på att göra Booli till en bra arbetsplats. Detta yttrar sig i allt från diskussioner om etiska aspekter i features till schemalagda dagar där alla i företaget får jobba med vad de vill. Att skapa en tillvaro och produkt som alla inblandade trivs med är inte alltid en dans på rosor. Åsikter går ofta isär och slutet på vissa debatter kan ibland vara svårt att se. För mig är emellertid uppsidan betydligt större; möjlighet att jobba tillsammans med personer som är passionerade i vad de gör, inte en tråkig minut (nåja) och ett riktigt utvecklande arbete. Helt enkelt lite mer än ett jobb. Hoppas ni gillar version 4!

Utveckling i natten Utveckling i natten