Blogg
Här finns tekniska artiklar, presentationer och nyheter om arkitektur och systemutveckling. Håll dig uppdaterad, följ oss på LinkedIn
Här finns tekniska artiklar, presentationer och nyheter om arkitektur och systemutveckling. Håll dig uppdaterad, följ oss på LinkedIn
In part one we looked at some of the popular schema frameworks used with Kafka. In part two we will look at the role of the Schema Registry.
In earlier blog posts we have looked at some of the popular schema frameworks that are commonly (although not exclusively) associated with Kafka - Avro, Protobuf and JSON Schema.
This blog post will consider some aspects of choosing a schema framework (part one), and look at the Schema Registry and the role it plays in organising, communicating and enforcing your schemas (part two).
By the time you are reading this I’m quite confident many of you are already quite weary of reading about the amazing possibilities of AI in general and LLMs in particular. But perhaps you are still, on a general level, positive about AI and happy to use the tools it has provided so far, but quietly asking yourself “What now? What is next?”. This story is for you. Too.
With Spring Boot 3.2 and Spring Framework 6.1, we get support for Coordinated Restore at Checkpoint (CRaC), a mechanism that enables Java applications to start up faster. With Spring Boot, we can use CRaC in a simplified way, known as Automatic Checkpoint/Restore at startup. Even though not as powerful as the standard way of using CRaC, this blog post will show an example where the Spring Boot applications startup time is decreased by 90%. The sample applications are based on chapter 6 in my book on building microservices with Spring Boot.
KotlinConf 2024 ägde rum i Köpenhamn den 22-24 maj och var en stor succé. Med över 2 000 deltagare från hela världen, 102 talare och 77 sessioner, var konferensen en guldgruva av information och inspiration för alla som är intresserade av Kotlin. Från Callista var vi ett gäng som hade några inspirerande dagar i Köpenhamn - här kommer en första presentation av några intressanta föredrag.
With Spring Boot 3.2 and Spring Framework 6.1, we get support for some really exciting new features like Java 21, including Virtual threads, and shorter startup times using Coordinated Restore at Checkpoint (CRaC). In this blog post, I will use the source code in the 3rd edition of my book on building microservices with Spring Boot and describe how to upgrade it to Spring Boot 3.2 and Java 21.
Här presenterar vi andra upplagan av Callista Tech Radar Light - en kartläggning av av hur teknikanvändningen ser ut hos våra kunder och kollegor i branschen.
För tre veckor sen klubbades slutligen AI-förordningen av EU. Det betyder att alla reglerna däri kommer att börja gälla pö om pö från och med om ett halvår och upp till som mest 36 månader framåt i tiden, men där majoriteten av reglerna träder i kraft om mellan 12 och 24 månader.
Jag har varit på Cloud Native & Container Day. Här kommer en kort reflektion och takeaways från årets evenemang och lite om vad som är hett och vad som kommer.
It was the best of
java.time.Date
, it was the worst ofjava.utl.Date
.
- not Charles Dickens
Använder du forfarande java.util.Date
?
Gör inte det.
Varför? Det finns bättre sätt att hantera både kalenderdatum och tid i java.time
paketet. Ta 10 minuter för att förstå vad klasserna i java.time
kan göra för dig.
Stora språkmodeller (LLM:er) är grunden för den kända ChatGPT, men det finns andra tillämpningar. Ibland vill man kunna arbeta med specifik data, t.ex. ny eller privat data, som LLM:en ännu inte har tränats på eller aldrig kommer kunna tränas på. Det är här Retrieval Augmented Generation (RAG) kommer in i bilden. RAG ger oss möjlighet att berika den generella språkkunskapen hos en LLM med specifik kunskap från andra källor.
I detta föredrag kommer Niklas bland annat att gå igenom begrepp som tokenisering, inbäddning, vektordatabaser och hämtning. Han kommer även att beskriva och demonstrera olika användningsfall med hjälp av en LLM och ett RAG-ramverk som båda finns tillgängliga som öppen källkod.
Automatisering av acceptanstester har varit ett återkommande tema på Cadec genom åren. Det är ofta svårt och kostsamt, men har kommit att bli en viktig framgångsfaktor för storskaliga mikrotjänst-arkitekturer och en förutsättning för kontinuerlig driftsättning.
För 18:e året arrangerades utvecklarkonferensen Jfokus i Stockholm. Jag var som vanligt på plats som scenvärdsanvarig men hade tid att vara med på Universitetsdagen på måndagen och se många bra tal under två fantastiska dagar. Här kommer några reflektioner och en liten topplista över de presentationer som jag rekommenderar att man tittar på.
Att designa ett system med krav på hög tillgänglighet kräver genomtänkta avväganden gällande hur vi hanterar beroenden mellan komponenter, både inom vårt system och mot befintliga komponenter utanför systemet. Dessa befintliga komponenter kommer vi förmodligen ha ytterst begränsade möjligheter att påverka, och systemdesignen måste därmed göras utifrån de givna förutsättningarna.
Multiplattformsappar, både för webb och mobil, har blivit något av den heliga graalen inom frontend-utveckling. Även om multiplattform kan kännas skrämmande för nativespecialister så lockar möjligheten att ha en enda kodbas som ett generellt botemedel mot ökade kostnader och större komplexitet.
Om AI tidigare varit ett abstrakt koncept så har det nu på allvar blivit en del av vår vardag, och ett fenomen som kan antas växa kraftigt i betydelse under förutsägbar tid framöver. Något man kan uppleva som spännande eller skrämmande, beroende på tillämpning.
Kubernetes Ingress har tjänat oss väl genom åren genom att standardisera hanteringen av inkommande extern trafik till ett Kubernetes-kluster. Dock har Ingress-specifikationen ett antal brister och begränsningar vilket ofta leder till användning av leverantörsspecifika tillägg med hjälp av annoteringar eller CRD:er. En och samma Ingress-definition blandar delar som berör både klusteroperatörer och applikationsutvecklare, något som resulterar i ett oönskat delat ansvar för att hålla Ingress-definitionen uppdaterad.
För att säkra att rätt tillgänglighetskrav ställs på olika funktioner inom ett system behöver vi titta på krav utifrån de verksamhetsprocesser som nyttjar funktionerna.
Taking a quick look at building a backend-driven web GUI using htmx and Go templ.
Det finns många godbitar i Java 21 men den största av dom alla pratar ingen om.