Introduction When you follow along in this series [1], you might have been irritated by the amount of work to test your functions. It isn’t a problem to test only the unit test for the accept function, but when you have to test the unit test for the decrypt function, […]
How I create multi-layer videos with talking head, slides, sound and simple effects with OBS Studio
Using videos to announce events, explain complex topics, draw attention to causes and entertain community members is powerful. Until recently, I did not create any videos. Too hard. Requiring complex, expensive equipment. That was my thinking. Until recently a colleague introduced me to OBS Studio – Open Broadcaster Software. With […]
AWS Shop example: Smoke and performance tests
Introduction In the previous blog, I talked about unit tests of the AWS Shop example [1]. Today, I will continue with a smoke test and a performance test. Smoke test When you follow along, you will have seen the smoke test several times: we used a smoke test from the […]
The Six-part REAL Oracle Cloud platform Webinar Series – Cloud Native Live Demo and Hands-On Oracle Developer Meetup sessions – kicking off June 10th 2020
Attend this series of six live webinars to get going with cloud native application development on the Oracle Cloud platform, created and presented by REAL specialists. The Red Expert Alliance (aka REAL) is a network of Oracle partners on four continents that have joined forces to share knowledge and experience […]
OpenEBS: Create persistent storage in your Charmed Kubernetes cluster quick and easy!
As a developer I wanted to experiment with Kubernetes environments which approximate production deployments. In order to do that I wanted a distributed storage solution and chose OpenEBS. Mainly because it was easy to get started and quick to get up and running. In this blog post I’ll describe how […]
AWS Shop example: unit tests
Introduction In the last six blogs [1], I showed you an application that used AWS to process the sales from a cashing machine. This series continues with tests for this application. Some objects of our solution cannot be tested: we cannot test the API gateway, the SNS topics or DynamoDB […]
Interesting new features in PowerPoint to make presentations more attractive and effective
PowerPoint is one of the applications I use the most. I create presentations with architecture solution designs, for training purposes, to use in conference sessions next to live demo and in many other cases where a visualization of ideas comes in handy. I am quite keen to learn about new […]
Charmed Kubernetes on KVM using MAAS and Juju
Coming to this solution was a journey. I was looking for a Kubernetes installation which was easy to deploy and cleanup on my own laptop (I didn’t want to have to pay for a hosted solution). I did want a solution which was more or less production-like because I wanted […]
Create video recording in Microsoft Teams with green screen chromakey background without an actual green screen
If you record yourself in front of a green screen – or giant sheet or curtain – you can then manipulate the video and have any picture, movie, drawing or other visual replace the green in the video. A trick commonly used by reporters who do not actually want to […]
A Quick how-to RMAN backup to OCI Object Storage
This is a quick how-to article on setting up RMAN to backup to Object Storage on OCI. This is applicable when you build your on Oracle database on an OCI instance, or when you have a database on-premise you wish to backup to the (OCI) cloud.
AWS Shop example: API Gateway (2)
Introduction Last time, I talked about the API Gateway [1]. The URL that we used last time has randomness in it: it looks like https://54dwcigu3a.execute-api.eu-west-1.amazonaws.com/prod/shop. When you destroy the API Gateway objects and redeploy them, you will get another URL. That’s not nice: we don’t want to change the URL […]
AWS Shop example: the API Gateway (1)
Introduction You might have noticed that we skipped the API Gateway up to now [1]. I will write two blogs about the API Gateway. In this one, we follow the simplest route: from sending the message to the API gateway, and let the API Gateway deliver the message at the […]
Migrating databases using Dataguard, some pitfalls and observations
My customer needed to migrate to a new set of datacenters, and while other services were able to “lift and shift”, the Oracle RAC database servers had to be rebuilt in the new datacenter because the underlying platform wasn’t able to migrate the shared disks. Fortunately the environment was already […]
ADF Performance Monitor: Thread Wait and Blocked Time
Last week we had a new version of the ADF Performance Monitor available – version 9.5. In this blog I will write on one of the new features; thread wait and thread blocked time of requests. Sometimes we cannot explain a poor performance, disruptions, hiccups. If we dive into the […]
Windows Sandbox with Chocolatey, Scoop, Git, VisualStudio Code and more
I recently wrote an article to introduce Windows Sandbox. I explained how the Sandbox can have folders mapped from the host, have network interactions with the host (and the rest of the world) and use the clipboard for exchanging objects to and from the host. I also mentioned the logon […]
AWS Shop: DynamoDB, the AWS NoSQL database
Introduction The ultimate goal of our shop application [1] is to update the AMIS-shop table in the DynamoDB service. In this blog, I will tell a little bit more about DynamoDB. DynamoDB is the NoSQL solution of AWS. The way we use this table in our example is straightforward: the […]
Deploy Angular and Node.js webapp in Azure Pipelines (part 5)
In the previous article I explained how to set up multiple environments for Azure Pipelines. In this article I will explain how you can deploy the artifacts to the on-premise VM’s. This are the artifacts you build in the pipeline. I am using an template for this, because we are […]
On-premise VM’s and Azure Pipelines: Set up with multiple stages in Azure Pipelines (part 4)
In the previous article we discussed how we can build a pipeline and at some tests to it. In this article we’re going to discuss how we can set up the on-premise VM’s so that we can deploy the artifacts to them. You can also deploy the artifacts to an […]
AWS Shop: about the AWS Simple Notification Service (SNS)
Introduction Today [1] we’ll look at the AWS Simple Notification Service. We have two of them in our shop: one to get messages from the accept-lambda function and send them to the decrypt-Lambda function, and the decrypt-Lambda function will send the decrypted sales information via SNS to the process-Lambda. The […]
Add tests for Angular and Node.js webapp in Azure Pipelines (part 3)
In the previous article I showed how to build a webapp in the Azure pipeline. In this article I will explain to you how you run tests in your pipeline. I will show you how to do this for both Angular and Node.js. Adding tests frontend – Angular Adding tests […]
Creating a re-usable Vagrant Box from an existing VM with Ubuntu and k3s (with the Kubernetes Dashboard) and adding mysql, using Vagrant and Oracle VirtualBox
In a previous article, I shared with you the steps I took, to get k3s installed (with the Kubernetes Dashboard) on top of an Ubuntu guest Operating System within an Oracle VirtualBox appliance, with the help of Vagrant. [ https://technology.amis.nl/2020/01/15/rapidly-spinning-up-a-vm-with-ubuntu-and-k3s-with-the-kubernetes-dashboard-on-my-windows-laptop-using-vagrant-and-oracle-virtualbox/] For training and demo purposes, I wanted to add mysql […]
Quick and easy: A multi-node Kubernetes cluster on CentOS 7 + QEMU/KVM (libvirt)
Kubernetes is a popular container orchestration platform. As a developer understanding the environment in which your application is going to run is important since this can help you use available services of the platform and fix issues. There are several options to run Kubernetes locally to get some experience with […]
Azure Pipeline: Build Angular and Node.js webapp (part 2)
In the previous article, we discussed how we can set up a pipeline with multiple stages in Azure Pipelines. In this article we will discuss how we can build the Angular and Node.js apps in the pipeline itself. I usually put all the build processes in one stage. In that […]
ADF Performance Monitor New Version 9.5
We have again a major new version of the ADF Performance Monitor available – version 9.5 ! We have added many new valuable features and improvements. Many overview screens have got a facelift and new charts. In several blogs I will write on them. This blog is on one of […]
AWS shop example: Lambda
Introduction In the previous blog [1], I wrote about an example shop application in AWS. Let me show the AWS architecture of this shop again: In this blog, I will tell a little bit more about the Lambda functions in this shop example. Lambda functions are serverless functions: you don’t […]
DIY Kafka Topic Watcher tool – Node, Express, Server Sent Events and Apache Kafka
This article can be read in at least two different ways: as a somewhat lengthy introduction of a handy tool that you can easily run to inspect messages published to the topics in a Kafka Cluster as a detailed yet basic example of how to combine several techniques to create […]
A Free Apache Kafka Cloud Service – and how to quickly get started with it
Last week I presented on Apache Kafka – twice. Once to a group of over 100 students, once to 30+ colleagues. In both instances, I invited attendees to partake in a workshop with hands-on labs to get acquainted with Apache Kafka. I had prepared a Docker Compose based Kafka platform […]
Example application in AWS using Lambda
Introduction I have to admit: I love serverless. Serverless computing is using the cloud as it is supposed to be used: it scales up when you need more capacity, it scales down to zero when you don’t need resources. That is really good when you have, for example, a shop […]
Windows Sandbox – light weight playground for R&D, tutorials and workshops
Windows Sandbox to me is a light weight Windows 10 virtual machine that I can quickly start and stop and use to install and run programs. The Windows Sandbox provides a well defined, clean environment that is fresh every time it is started. Inside the Sandbox, I can create an […]
Azure Pipelines: Using and set up a webapp (part 1)
This will be the first part 5 part series about Azure Pipelines. In this first part I will explain to you how to set up your Azure Pipeline so it’s capable of deploying a Node.js and Angular webapp. We will use Node for the backend and Angular for the frontend. […]
Azure Pipelines: How to build and test an Angular and Node.js webapp and deploy it to on-premise VM’s using multiple stages (YAML) – Overview
What is Azure Pipelines? Azure pipelines is a free continuous integration/continuous delivery tool from Azure Devops (Microsoft). Not only can it deploy to the azure cloud, it can also deploy to self hosted VMs. Even multiple, with multiple stages. For instance, an Acceptance, Test and Production environment. All of this […]
My Tips for Presenting an Online Meetup – experiences from a would-be pro
After presenting a three part Online Meetup series to colleagues and a three hour webinar to just over one hundred (or two thousand, I did not actually see any of them) students – and what feels as countless Team Meetings over the last six week – I have started to […]
Spring: Blocking vs non-blocking: R2DBC vs JDBC and WebFlux vs Web MVC
Spring Framework version 5, released in Sept 2017, introduced Spring WebFlux. A fully reactive stack. In Dec 2019 Spring Data R2DBC was released, an incubator to integrate relational databases using a reactive driver. In this blog post I’ll show that at high concurrency, WebFlux and R2DBC perform better. They have […]
Closing the gap with Zachman.
IT environments tend to become more and more Complex. When planning for new or additions and changes to existing (IT) environments, the necessity to invest in decent preparation and high level design isn’t challenged. Not challenged because alignment with the long term business goals is key in many organizations. In […]
Migrating an old (10.2.0.4) database to Oracle Cloud with minimal downtime
Unlike most of our posts this post will contain almost no code or examples. But it hopefully will help somebody who ends up to be in the same situation we landed on: migrating data from very old versions to a new environment. Recently we were tasked with the migration of […]
Writing a blog in Word, automating HTML formatting by using a .docx to HTML converter for Java and publishing the blog via WordPress (part 3)
In part 1 and 2 of this article, I shared with you the steps I took, to even further automate the manual steps I still had to take every time I wrote a blog article. [https://technology.amis.nl/2020/03/10/writing-a-blog-in-word-automating-html-formatting-by-using-a-docx-to-html-converter-for-java-and-publishing-the-blog-via-wordpress-part-2/] In this article I will focus on unordered HTML list (<ul> and <li>), HTML […]
The size of Docker images containing OpenJDK 11.0.6
When running Java applications in containers, you need to be careful with your resources. If you’re not careful with layering your images (for example using Google’s Jib), you can quickly get into disk-space issues, especially when your base image and/or application gets updated regularly. One of the ways you can save […]
Performance of relational database drivers. R2DBC vs JDBC
R2DBC provides non-blocking reactive APIs to relational database programmers in Java. It is an open specification, similar to JDBC. JDBC however uses a thread per connection while R2DBC can handle more connections using less threads (and thus potentially use less memory). This could also mean threads are available to do other […]
Mapping Azure and Oracle Cloud Infrastructure core concepts – Part One
All major public clouds are organized in similar ways. However, terms used for certain similar constructs can be (quite) different, or the same terms are used for quite different constructs. This article attempts to outline some of the most relevant concepts for both Azure and Oracle Cloud Infrastructure and to […]
(Many ways) How to upload files into Oracle Cloud Infrastructure – Cloud Shell
Oracle Cloud Infrastructure Cloud Shell is VM that runs inside OCI -to be used for manipulating OCI resources using various means, including OCI CLI, Terraform and Ansible. We may want to be able to get files into Cloud Shell – scripts, source code, Infrastructure as Code and more. There are […]