Teknik

Välkommen till vår teknikblogg! Håll dig uppdaterad, följ oss på Twitter

Callista medarbetare Andreas Mossljung

Kafka Summit London 2022

// Andreas Mossljung

En rapport från Kafka Summit i London som avslutades i går. Äntligen gick det att träffas på riktigt efter alla online-konferenser och vi var över 1000 deltagare som samlats på hotellet i Greenwich. Pandemin verkar man nu definitivt lämnat bakom sig i England och förutom några få som bar munskydd var allt som vanligt igen.

Callista medarbetare Björn Beskow

Dynamic Multi Tenancy with Spring Boot, Hibernate and Liquibase Part 7: Combining the Shared Database pattern with Database per Group of Tenants (a.k.a. Shard) for additional scalability

// Björn Beskow

In the last part, we implemented the Shared Database with Discriminator Column pattern using Row Level Security. The Shared Database with Discriminator pattern scales very well, but eventually the Shared Database will become a bottleneck. In this part, we’ll tweak the Database per Tenant pattern into Database per Group of Tenants (or Shard). Combined with the Shared Database with Discriminator pattern, we can reach yet another level of scalability.

Callista medarbetare Anders Forssell

Dynamic Lists with SwiftUI Using Swift Concurrency for Asynchronous Data Loading

// Anders Forssell

In a previous blog post, I described an implementation of lists in SwiftUI where items are loaded dynamically as the the user scrolls and additional data for each item is fetched asynchronously. I also wanted to provide a reusable infrastructure for lists where you could concentrate only on the data fetching logic and the presentation of a single list item, but didn’t quite reach that goal.

In this blog post, I try to improve the list infrastructure and the separation of concerns between the data model and UI. I also want to test the Swift Concurrency features (async/await etc) for the asynchronous parts, and see how well it plays with SwiftUI.

Callista medarbetare Erik Lupander

Path tracing with Golang and OpenCL, part 1

// Erik Lupander

Back in 2020 I spent an unhealthy amount of time implementing The ray tracer challenge book in Go, which I also blogged about. After finishing the book, I re-purposed the codebase into a simplistic Path Tracer. While the results were rather nice compared to the quite artificial ray traced images, basic unidirectional path tracing is really inefficient, taking up to several hours for a high-res image.

This “just for fun” blog series is about how I used OpenCL with Go to dramatically speed up my path tracer. Part 1 deals with the basics of path tracing while latter installments will dive deeper into the Go and OpenCL implementation.

Callista medarbetare Erik Lupander

Energy monitoring with AWS services and Go, part 3.

// Erik Lupander

This is the third part of a short blog-series about using CDK and AWS services to build and deploy a personal solution for monitoring electricity usage. This part is just a little follow-up on how the solution is doing, some improvements and most importantly - the costs I’ve been billed since the solution’s inception back in april.

Callista medarbetare Martin Holt

Application Integration With Kafka - Part 1.

// Martin Holt

There is no denying the growing popularity of Kafka as a platform. It is probably safe to say that Kafka is now the de facto solution for asynchronous integration using a pub/sub pattern. Given the profusion of Kafka providers and solutions it has never been easier to get started.

If you are starting out on your journey to integrate applications with Kafka there are some important aspects that you will want to consider to in order to guarantee smooth operation at scale. In this two part blog I will look at some of these aspects and give some advice for potential Producers and Consumers.

This blog series will focus on the Apache Kafka Java client. Part one focuses on the Producer.

Callista medarbetare David Ström

Callista launches new nano-services language: Callang(TM)

// David Ström

Over the past 18 months a crack-team of software developers and IT architects from Callista Enterpise, lead by the formidable trio Magnus Larsson, Peter Larsson and Fredrik Larsson has developed a new programming language for the nano-service, cross-cloud, no-platform based programming model.

It has now become time to share the good news and release this paradigm changing novel programming language to the wider community. We sincerely hope you will enjoy it!

Callista medarbetare Marcus Cedergren

Building Framework Agnostic WebComponents with stencilJS - Part 1

// Marcus Cedergren

The initial W3C Web Components specification draft was introduced way back in 2011. Every now and then over the years I’ve read articles and blog posts about the progress, but it’s only recently that v1 of the spec has been adopted by the major browser vendors. In the meantime, popular frontend libraries and frameworks like React, Vue, and Angular have created their own separate ways of creating components. For me, this raises a few questions:

  • Are Web Components still relevant?
  • How do you create them?
  • What’s their place in today’s ecosystem?

In this two part blog series I will try to answer these questions by creating sample components using different techniques and subsequently integrating them in some popular frameworks. First we will go through a quick rundown of some basic concepts before moving on to explore stencil.js in the second part of the series.