Sign in

Anders Innovations
Anders is a Finnish IT company, whose mission is sustainable software development with the greatest colleagues of all time.

By Frank Wickström

Packages are fun, let’s cache some!

After the recent Fastly downtime, we were once again made aware that the internet is not always as stable as we would think. While Fastly took down many major sites on the internet, it also affected things like package managers. Services such as the central Helm registry were also inaccessible during the downtime. Using a single source for services such as Helm, PyPi and NPM is very convenient, but it sucks when things go down, and it might even block you from delivering software. …


By Tuomas Suutari

The next big Python release, Python 3.10, should happen in October. Even though that is still a few months away, we already know what to expect. The 3.10 branch went to feature freeze when the first beta version (Python 3.10.0b1) was released on May 3rd, 2021.

Let’s have a peek at the new features and other changes.

Overview

The most fascinating feature in 3.10 is Structural Pattern Matching. It might look like a simple switch statement, but it’s actually so much more than that.

The second important set of changes are improving Python’s interaction with static type checkers…


By Mingfeng Yu

When it comes to maps on the web, OpenLayers stands out with its feature-packed capabilities and wide-range support of different data sources, be it geo-referenced images, vector tiles, or open and proprietary vector data formats. With its powerful API, OpenLayers makes it easy to put up a simple web map application with little effort. At the same time, OpenLayers also provides more advanced tools that help you accomplish more complex requirements.

The following steps will show you how to create a simple web map with OpenLayers. We will also walk you through setting up a simple dev…


By Frank Wickström

The source for this blog post can be found on Github at andersinno/python_plugin_example.

Creating an application that can be extendable but have low coupling throughout is something that has always interested me. What if I could remove and add new parts to my application without thinking about the rest of the application breaking. Of course, this is often through as a programming 101 type of thing, “low coupling, high cohesion”. But saying the words versus actually being pragmatic is often challenging. …


By Frank Wickström

Paraphrasing what Netflix and many others have said before:

The only way to be comfortable with failures is to fail often

Why create chaos?

Over the past few years, Anders has focused heavily on DevOps; we have done so because we have seen it as one of the most critical shifts in both technology and company culture that has happened over the last few years. We, or most companies out there, have not always been the most comfortable with things breaking and failing. We want to change that.

An engineer waking up in the middle of the night due to…


By Joonas Venäläinen

Vault loves Postgres
Vault loves Postgres

Vault is a great tool for managing and protecting sensitive data. One of its many features is ability to create database credentials dynamically. This gives you extra layer of security as you can define short TTL for the credentials and rotate them frequently. For this short demonstration, I will use a simple docker-compose file that setups Vault and PostgreSQL.

version: '3.9'
services:
vault:
image: vault:1.7.0
container_name: vault
ports:
- "8200:8200"
environment:
VAULT_ADDR: http://127.0.0.1:8200
VAULT_DEV_ROOT_TOKEN_ID: roottoken
VAULT_DEV_LISTEN_ADDRESS: 0.0.0.0:8200
VAULT_SKIP_VERIFY: "true"
cap_add:
- IPC_LOCK
postgres:
image: postgres:12-alpine
environment:
POSTGRES_USER: exampledb
POSTGRES_PASSWORD: exampledb
POSTGRES_DB: exampledb

Run compose and exec in…


By Frank Wickström

TL;DR

We build a microservice architectured application with three services. All of these communicate with one of the following AMQP, REST APIs, and Websockets. The application is deployed using our Open-Source (MIT Licensed) DevOps tool Kólga.

The full source-code for this blog post can be found at https://github.com/andersinno/microservice_kubernetes_webinar.

The preface; the story behind Kolgá can be found in Anders blog.

Writing and deploying an application with Kólga

Let’s deploy a monorepo consisting of three applications. We will do this using Kólga and GitLab CI; however, GitHub Actions can also achieve the same result.

Prerequisites

Let’s begin with the prerequisites.

  • I will assume that you have a…

Anders Innovations

Get the Medium app

A button that says 'Download on the App Store', and if clicked it will lead you to the iOS App store
A button that says 'Get it on, Google Play', and if clicked it will lead you to the Google Play store