Blogg

Välkommen till Callista Enterprise blogg - här finns tekniska artiklar, presentationer och nyheter om arkitektur och systemutveckling. Håll dig uppdaterad genom att följa oss på Twitter.

Callista Enterprise medarbetare Sedina Oruc

Typescript - den vackra sidan av javascript Presentation

// Sedina Oruc

Presentation från Cadec 2017 i Göteborg

Om man frågar Google vad TypeScript är så kommer svaren bli många, men det högst rankade blir följande: “TypeScript är ett kostnadsfritt programmeringsspråk och öppen källkod som har utvecklats och underhålls av Microsoft. Det är ett strikt superset till JavaScript, och lägger till valfri statisk typning och klass-baserad, objekt-orienterad programmering till språket.”

Callista Enterprise medarbetare Peter Larsson

Dumpa servern - serverless är det nya svarta Presentation

// Peter Larsson

Presentation från Cadec 2017 i Göteborg

Serverless-arkitektur och funktion som tjänst (FaaS) är den senaste trenden bland molntjänsterna. Det innebär bland annat att traditionella långlivade virtuella maskiner och processer ersätts med funktioner som endast konsumerar resurser under den korta tid som exekveringen sker.

Callista Enterprise medarbetare Anders Asplund Callista Enterprise medarbetare Pär Wenåker

Reaktiv programmering med RxJava Presentation

// Anders AsplundPär Wenåker

Presentation från Cadec 2017 i Göteborg

RxJava är en specifik implementation av ReactiveX (Reactive Extensions) för Java och Android och är influerad av funktionell programmering. Den bygger på funktionell komposition, undvikande av globala tillstånd och sidoeffekter och en idé om att betrakta reaktiva system som dataströmmar.

Callista Enterprise medarbetare Jesper Holmberg

Kotlin - ett elegant nytt programspråk för JVM:en Presentation

// Jesper Holmberg

Presentation från Cadec 2017 i Göteborg

2016 har varit ett intressant år för Kotlin - ett relativt nytt, statiskt typat språk för JVM:en. I februari nåddes version 1.0 av programmeringsspråket och i maj meddelade Gradle och JetBrains att man tillsammans skulle göra det möjligt att skriva gradle-byggscript i Kotlin. I den här presentation kommer jag att presentera Kotlin som programmeringsspråk och visa på vilken nisch det försöker hitta i floran av JVM-språk. Jag kommer också att visa vad användningen av Kotlin betyder för gradle-användare.

Callista Enterprise medarbetare Björn Beskow

Java 9 Footprint Presentation

// Björn Beskow

Presentation från Cadec 2017 i Göteborg

Ekosystemet kring JVM:en är svårslaget vad gäller rikedom och mognad i APIer. Men är det verkligen rimligt att minsta lilla Java-program skall ta 256 Mb och flera sekunder bara för att starta?

Callista Enterprise medarbetare Peter Larsson

The Revenge of the Quiz - in the cloud Presentation

// Peter Larsson

Presentation från Cadec 2016

Kommersiella molntjänster erbjuder fantastiskt kraftfulla och kostnadseffektiva applikationsplattformar (PaaS), men vad bör man tänka “efter före på” utifrån en applikations livscykelperspektiv och företrädesvis då vad gäller klassiska problemområden som interoperabilitet, portabilitet och informationssäkerhet. Vi utgår från en enkel och typisk applikation och hur denna kan hanteras med avseende på ett urval av populära och kommersiella PaaS.

Callista Enterprise medarbetare Mats Ekhammar

Spring Boot Presentation

// Mats Ekhammar

Presentation från Cadec 2016

Spring Boot erbjuder ett enkelt sätt att snabbt skapa nya Spring applikationer. Dessutom utan att behöva tänka på beroenden till 3:e parts bibliotek, initial konfiguration och paketeringen av applikationen. Vi kommer att gå igenom hur Spring Boot gör för att åstadkomma ovanstående förenkling. Därefter kommer vi att belysa några andra områden där Spring Boot väsentligt förenklar livet för en utvecklare.

Callista Enterprise medarbetare Magnus Larsson

Microservices Presentation

// Magnus Larsson

Presentation från Cadec 2016

Många pratar om microservices och Docker som vägen fram för att bryta isär gamla tröga monoliter till mindre och mer lätthanterliga tjänster. Tjänster som sedan snabbt och enkelt ska kunna driftsättas i Docker containrar både lokalt och ute i molnet. Men hur gör man då? Att bryta isär en monolit i mindre komponenter medför att man börjar bygga distribuerade system och alla som provat på det vet vilka utmaningar det medför. Föredraget kommer handgripligen visa på hur man i en Java värld kan använda Spring Cloud och Netflix OSS för att bygga microservices som kan samverka på ett sunt sätt i en distribuerad miljö samt hur man använda Docker för att exekvera sin microservicar såväl lokalt som i molnet.
Callista Enterprise medarbetare Björn Beskow

Kubernetes Presentation

// Björn Beskow

Presentation från Cadec 2016

"Divide and Conquer" är ingenjörens viktigaste sätt att angripa komplexa problem: bryt isär i mindre, begripliga delar. Objekt/komponent/service-orientering är just precis detta, tillämpat på komplexa, distribuerade mjukvaru-system. Men här finns en paradox: Vi måste kunna lita på att delarna alltid fungerar, för att helheten skall fungera. Och mjukvara är notoriskt opålitlig, hur liten den än är. Det här kan man närma sig på två sätt: Försöka göra de små mjukvaru-delarna ofelbara (i sig en lovvärd ansträngning, men förmodligen omöjlig att lyckas med), eller helt enkelt acceptera att delar ibland slutar fungera, och göra det bästa av situationen. En microservices-arkitektur tar typiskt den andra ansatsen: Isolera delarna från varandra, och försök begränsa effekterna av att delar ibland går sönder. Container-lösningar som Docker möjliggör samma ansats: Om delar ibland går sönder, kasserar vi helt enkelt den trasiga delen och skaffar snabbt en ny (eller ännu hellre många). Men nu ställs vi inför en ny utmaning: Hur håller man reda på väldigt många små delar, som ibland går sönder och måste ersättas, utan att det påverkar övriga delar? Open Source-projektet Kubernetes utgör Google's destillerade erfarenheter av denna utmaning. Detta föredrag belyser via en demo de centrala abstraktionerna i Kubernetes.
Callista Enterprise medarbetare Sedina Oruc

Web Components Presentation

// Sedina Oruc

Presentation från Cadec 2016

För 3 år sedan var WebComponents en stor nyhet, som lovade mycket. Målet var att etablera en samlad bild på specifikationer för: “CustomElements”, “HTML Imports”, “Templates” och “Shadow DOM”. Ramverken Ember och Angular planerade för att integrera dem, till och med basera sig på dem.

Callista Enterprise medarbetare Håkan Dahl

Java 9 Modulsystem (Jigsaw) Presentation

// Håkan Dahl

Presentation från Cadec 2016

Det nya modulssystemet (projekt Jigsaw) är huvudnumret på den rätt omfattande feature-listan för Java 9. Ursprungligen tänkt att ingå i Java 7 har modulsystemet nu tagit form. Modulsystemet ska råda bot på problem relaterade till classpath-röra, svag inkapsling i Java och ett monolitiskt JDK.

Callista Enterprise medarbetare Stephen White

GraphQL Presentation

// Stephen White

Presentation från Cadec 2016

Product driven technology - seems to be the new mantra of current open source initiatives, no waste! just lean clean api’s and technologies. From Netflix to Facebook.

Callista Enterprise medarbetare Magnus Larsson

Microservices Presentation

// Magnus Larsson

Presentation från högre skalbarhet och ökad feltolerans

Många brottas med monolitiska applikationer som medför långa ledtider, är svåra att skala upp och som är känsliga för störningar. På senare tid har begreppet microservices förts fram som en möjlig lösning.

Callista Enterprise medarbetare Magnus Larsson

Microservices Presentation

// Magnus Larsson

Presentation från högre skalbarhet och ökad feltolerans

Många brottas med monolitiska applikationer som medför långa ledtider, är svåra att skala upp och som är känsliga för störningar. På senare tid har begreppet microservices förts fram som en möjlig lösning.

Callista Enterprise medarbetare Björn Beskow

Testautomation tutorial Tutorial

// Björn Beskow

Tutorial från Cadec 2015

Effektiv testautomation stupar ofta på tekniska tillkortakommanden i verktyg och ramverk. Istället för att kunna koncentrera sig på de verkliga utmaningarna inom test, tvingas vi ofta lägga orimligt mycket tid på teknikaliteter kring själva automationen. Här är inte alltid ett traditionellt, starkt typat, språk som Java helt ändamålsenligt, även om den produktionskod som skall testas är Java-baserad.

Callista Enterprise medarbetare Magnus Larsson

Reactive Presentation

// Magnus Larsson

Presentation från Cadec 2015

Med ett ständigt ökande antal uppkopplade enheter (mobiler, plattor, “Internet of things” …) ökar kravet på att kunna hantera många samtidiga anrop till våra system. Traditionellt har Java baserade system använt så kallad ”blocking I/O”, dvs allokerat en tråd för varje inkommande anrop. Detta resulterar i begränsad skalbarhet samt dålig tolerans för fel orsakat primärt av dränerade trådpooler. En nyckelfaktor för att lösa dessa problem är att utnyttja asynkrona mekanismer i underliggande operativsystem som ger möjlighet till så kallad ”non-blocking I/O”. Denna teknik allokerar inte en tråd per anrop vilket leder till betydligt bättre skalbarhet och feltolerans.