GuessMyLife är ett socialt frågespel utvecklat på uppdrag av en prisbelönt författare. Det designades för uppmuntra besökarna till att registrera sig och tillbringa tid på webbplatsen. Det utvecklades nativt till molnet med serverlös arkitektur med bland annat Go, AWS Lambda, AWS API Gateway, AWS SES och AWS SNS.
Projektet började som en abstrakt idé hos kunden om ett onlinespel för att engagera besökarna. Huvudsyftet med applikationen var att få besökarna engagerade så fort de kom till landningssidan och sedan hålla dem fortsatt motiverade.
Kunden, Stefan Ekberg, är en svensk författare och manusförfattare med över 25 års erfarenhet av att skriva böcker inom marknadsföring, ledarskap och företagande.
Våra skickliga mjukvaruutvecklare och designers jobbade ihop med kunden för att förbättra den ursprungliga idén. Kundens öppenhet inför nya idéer gjorde det enkelt för oss att dela våra synpunkter och tankar.
Några av de viktigaste synpunkterna vi hade var att spelet borde vara enkelt och ge snabba belöningar med resultat till användaren. Det passade väl med applikationens huvudsyfte och kunden både instämde och uppskattade idén.
Det här sociala spelet handlar om att gissa sig till personlighetsdrag utifrån bilder på personer. Bilderna visas i form av ett horisontellt bildspel, där varje kort har ett foto och en fråga.
Frågan ber användaren om gissningar om egenskaper som ålder, nationalitet, utbildning osv. Efter ett par gissningar dyker det upp ett kort som ber användaren att registrera sig. Efter registrering kan användaren ladda upp egna bilder och få dem inkluderade i spelet.
Applikationen skapar veckovisa rapporter med statistik över webbplatsens besökares engagemang. API för Facebook och Twitter är integrerade för att användarna ska kunna dela med sig av dessa rapporter på sociala medier. Det ger fler återkommande besökare och lockar samtidigt nya till applikationen.
Applikationen har utvecklats med inbyggt stöd för flera språk. För tillfället finns den både på svenska och engelska. Framöver kan flera språk läggas till, utan några större kodförändringar.
Det här var ett av de första projekten vi utvecklade med Golang. De utvecklare som tillägnades uppgiften lyckades utan problem skapa en säker och robust applikation. Vi har nu ett fullfjädrat team av Go-utvecklare – eller Gophers, som de också kallas.
Att göra egna applikationer ovanpå serverlös arkitektur var relativt nytt för oss. Vi gjorde omfattande research innan projektet började för att bekanta oss med de vanligaste misstagen med en sådan typ av arkitektur.
Serverlös arkitektur innebär betydligt lägre kostnader för hosting av applikationen, så för kunden är det därför mer kostnadseffektivt.
Kostnaden för AWS Lambda bygger på antalet hanterade förfrågningar. När en app precis har lanserats kan kostnaderna därför förväntas vara minimala på grund av låg trafik.
Om vi hade valt traditionell arkitektur hade kunden behövt betala för alla resurser oavsett trafikmängd eller hur mycket de använts.
Databasen ligger på MySQL-instanser hos Amazon RDS, med multi-AZ för hög tillgänglighet och failoverstöd.
Vi ser fram emot att göra en mobilapp av applikationen. Vi tror att spelet skulle vara mycket mer engagerande som en mobilapp. Pushmeddelanden skulle också hjälpa med att hålla engagemanget uppe och lyckas få tillbaka användarna till systemet mer regelbundet.