Note: I’ll redit this post as soon as I consider I missed something without explicit notice about edits. Feel free to visit again in the future.

Screenshot of the VSpaceCode website.

Intro

On Linux machines I usually used Spacemacs as “keyboard only” editor. It is a community-driven Emacs distribution which uses the Emacs editor, adds vim keybindings and mnemonic keybindings and powerful default configurations for a lot of programming languages via layers on top of it. Working with Spacemacs is great!!!

However regularly I’m working with collections of Docker containers and I’m forced to work on Windows machines. Right now I’m feeling most comfortable to work…


Screenshot of the Yocto Project website hearder.

tl;dr

There’s coming official support for running FastAPI on Yocto based Linux distros. This might be interesting for you in case you do not stick to a Debian/Ubuntu based industrial Linux server.

Commonly used linux distros

Nowadays the majority of on-premise servers in the industrial domain run a “cleaned up” Debian, Ubuntu (Core or Server) or a Yocto Project based Linux distro.

Why should I care?

A common approach with Debian and Yocto based distros is to run applications inside of Docker containers. This is reasonable but has 2 drawbacks which get critical for you.

  1. Better performance: Docker containers add another level of abstraction. Consequently the performance of a…

Pop!_OS logo.

Note: I’ll redit this post as soon as I consider I missed something without explicit notice about edits. Feel free to visit again in the future.

tl;dr

Pop!_OS 21.04 is a Linux distribution with the focus on keyboard driven workflow and minimalism. It’s based on Ubuntu and the Gnome desktop but offers some unique features w.r.t. keyboard driven usage workflow. For a spoiler about the differences between Pop!_OS and Ubuntu read this article. I didn’t try Pop!_OS again for a long time. However I’m really glad that I came back to it. The workflow experience in Pop!_OS 21.04 is just awesome…


Book cover of Architecture Patterns with Python.

Note: In addition to the source code I’m pointing at in this post I decided to add a short summary to each chapter to give context which will help to understand the code. Feel free to visit again in the future.

tl;dr

This post is about the example code from Architecture Patterns with Python (book as code) which uses Flask and which I ported to FastAPI.

The example code is structured in an iterative manner means an exemplary application in the “shopping domain” is build up using a Domain Driven Design approach. The source code repository has several branches including branches…


Kong Community Logo.

Why should you care about API Gateways?

In microservice based applications a lot of cross-cutting concerns w.r.t. authentication, security, endpoint related monitoring, etc. (more about this e.g. here: API Gateway Pattern) need to be considered in every single microservice. Without an API Gateway one would have to implement support to manage these cross-cutting concerns in every single microservice.

In the best case you are using just one microservice framework like ASP.NET (C#) or Spring Boot (Java) which will potentially provide some functionality already (Microservice Chassis Pattern) out-of-the-box (e.g. Spring Boot for Java) or via a “cloud-native” framework (e.g. Steeltoe for C#). FastAPI (Python) is accelerating rapidly BTW.


RAPIDS logo.

Note: This post is a work in progress; it will be changed and updated with new content in the future.

Table of Content

Fundamental basics:

  • Understanding why hardware matters
  • Wrapping C and C++

Libraries in alphabetic order:

  • Modin
  • OpenCV
  • PYNQ
  • RAPIDS
  • Tuplex
  • Vaex
  • Qiskit

Fundamental basics

Understanding why hardware matters

High Performance Python is about moving and transforming data in a highly efficient way. Efficient calculations require a goodunderstanding of the hardware you’re running the software on.

The book High Performance Python summarizes this topic quite well in its first chapter Understanding Performant Python.

Fundamental Computer System

With respect to high performance, one has to distinguish between computing units


What’s 5G?

5G is a wireless telecommunication standard developed by the 3GPP and introduced in 2016.

Why is 5G so important?

Let’s have a look at a few characteristics of 5G first:


According to Awesome Vue, there are quite a few static website generators available for Vue.js which are Gridsome, Peco, Saber, Servue, VuePress (alphabetical ordering).

Tl;dr

At the time of writing the “go to” static site generator for Vue 3 is VuePress v2. As soon as Gridsome supports Vue 3 it would be another reasonable solution out there.

Gridsome


Logo of Vue Apollo.

GraphQL client integrations for Vue

Today I’ll check the state of Vue 3 support of GraphQL libraries. According to Awesome Vue there are the following libs w.r.t. GraphQL:

In addition there is

  • Villus: A tiny and fast GraphQL Client for Vue.js

Vue Apollo

Vue Apollo is a library which integrates Apollo in Vue components with declarative queries. Version v4 of Vue Apollo is compatible with Vue 2.0+ and 3.0+. …


Tauri on GitHub.

Tl;dr

Tauri allows us to develop secure cross-platform desktop apps (Linux, macOS, and Windows) with web technologies. Tauri is way more secure than Electron and offers some additional benefits. At the moment, Tauri allows writing backend code in Rust and provides a Rust API and a JavaScript API which enables the frontend code to interact with OS layer functionalities like interaction with the file system.

When using Vue.js 3 with TypeScript for the frontend part, we can develop high quality frontend code in a super-fast manner. …

Florian Kromer

Software Developer for rapid prototype or high quality software with interest in distributed systems and high performance on premise server applications.

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