TL;DR: Collect debug information in an in-memory buffer that is printed to the output when an error occurs (and quietly discarded in all other cases). I may have come up with a useful idea. Or something that is not all that useful. Or even something that already exists (and I […]
Lucas Jellema
Example of OCI Function as Resource Principal [enabled] to invoke OCI services
Resource Principal is an OCI resource that through its membership of a Dynamic Group and permissions granted through policies to the Dynamic Group is given access to OCI resources and services. Examples of Resource Principals are Function and API Gateway. A Function that is resource principal enabled can for example […]
Quickest route to Your First Handson Experience with GraalVM – Katacoda Scenario with live environment and step by step tutorial
TLDR: This Katacoda Scenario has a live runtime environment with GraalVM 20.1 prepared for you including an easy to click-through step by step scenario that does a live demonstration of most aspects of GraalVM (modern Java runtime, Ahead of Time compilation to native executable, polyglot runtime platform and the platform […]
Reading Query Parameters in GET requests to Project Fn Functions (and Oracle Functions as a Service)
TLDR: query parameters can be retrieved from the Fn-Http-Request-Url header in the ctx parameter passed by Fn to the Node function handling the request; using url.parse() on that header retrieves the url query parameters Project Fn is an open source container native serverless framework. Project Fn provides a runtime […]
Productivity Boosting features in Windows 10
I ran into a valuable 17 minute YouTube movie with tips over some useful Windows 10 features: https://www.youtube.com/watch?v=do06MPWf9E4 I created this short list as a personal reminder: Virtual Desktop – multiple desktop pages for different circumstances (per customer, technology, work and private, for specific demos or recording webinars) (Windows + […]
Composing a Video from multiple sources (MP4, PowerPoint, image, text) using OBS
Videos are a powerful way of communicating a message. I have always been more inclined to write blog articles to share my findings. Recently I was introduced to OBS – Open Broadcaster Software. This free tool makes it fairly easy – for me too – to record videos and combine […]
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 […]
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 […]
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 […]
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 […]
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 […]
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 […]
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 […]
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 […]
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 […]
Install SQLcl on Oracle Cloud Infrastructure Cloud Shell and make it work against an Autonomous Database
Cloud Shell on Oracle Cloud Infrastructure is a versatile management and development environment to access and manage Oracle Cloud Infrastructure resources. Cloud Shell comes with many tools and runtime out of the box (or rather inside the box) including OCI CLI, Java and SQL*Plus. However, the Oracle SQL Developer Command […]
Connecting SQL*Plus in Cloud Shell to an Autonomous Database
Objective of this article: connect SQL*Plus in Cloud Shell to an Autonomous Database instance (in a free tier – in the same or a different cloud tenancy) The starting situation: I have an autonomous database instance running somewhere in Oracle Cloud Infrastructure. I have Cloud Shell as a versatile management […]
Access OCI OKE Kubernetes Dashboard locally through Cloud Shell Proxy and ngrok
This article tells you how to access the Kubernetes Dashboard on top of an Oracle Cloud Infrastructure OKE Cluster Instance from a browser – without locally installing kubectl. This trick uses OCI Cloud Shell to run kubectl to proxy to the dashboard application running inside the K8S Cluster and it […]
Oracle Cloud Infrastructure Cloud Shell – integrated OCI CLI, kubectl, terraform, SQL Plus, Docker and Maven
Cloud Shell in Oracle Cloud Infrastructure is a free browser based command line tool for various types of interactions within your OCI Tenancy. When you start Cloud Shell, a command line is opened in your browser. You are in a Linux environment (Oracle Linux 7.7) that runs within the OCI […]
Getting started with NoSQL Database Service on Oracle Cloud Infrastructure
This morning I discovered a new entry in the menu on my Oracle Cloud Infrastructure Tenancy (on Ashburn, USA): the NoSQL Database service had been added overnight. The service offers a key-(schema-less) document store. It also supports ACID transactions, SQL on JSON documents, joins across tables, structured tables and if […]
Very first steps in Oracle Cloud Infrastructure as Code with Terraform
Resources in Oracle Cloud Infrastructure can be managed through the console – the browser based UI. That works great but requires manual steps – no automation – that take time and easily go wrong (and become extremely boring over time). Additionally, it is a rather individualistic way of working that […]
Set Terraform Resource properties from an element in a list retrieved by a Data Source – using a local value
Terraform is a platform for implementing Infrastructure as Code. Terraform defines a syntax for describing resources and provides an engine that interprets the resources definitions, compares this desired state with the existing state in the destination environment and subsequently attempts to bring the destination in line with the desired state. […]
Oracle Database – more value for money and more value for free
Oracle is not known for low prices or free products. However, when it comes to the Oracle Database there are some developments that might be of interest to you. Either when your organization has existing Oracle Database licenses – or when you do not. In short: three powerful and until […]
Use OCI Monitoring, Alarms and Notifications for Your Own Custom and Functional Metrics
In earlier articles, I have discussed features in Oracle Cloud Infrastructure for monitoring metrics published by virtually all OCI services. These metrics get published when functions are invoked, files are written, the API Gateway handles a request, events are published, a user is created and a network transfers a packet. […]
Welcoming the Data Catalog Service on Oracle Cloud Infrastructure
Data is really important to any organization. Data tells us what the organization is doing, and where it is going. And how it can improve quality and efficiency of processes. Achieve better results. Data can be one of the key products an organization delivers to its customers. I am sure […]
Run Always Free Docker Container on Oracle Cloud Infrastructure
In this article, I want to show how you can very quickly run a Docker container for free on Oracle Cloud Infrastructure – using a VM in the Always Free Tier of OCI. As an example, I will run an NGINX container image and access that from a client over […]
Oracle Cloud Infrastructure Resource Monitoring – Alarm triggers Notification when Metrics satisfy Condition
Oracle Cloud Infrastructure gathers metrics from all OCI resources. These metrics can be visualized and analyzed with the Metrics Explorer. And Alarms can be defined with rules evaluating the metrics that publish to a Notification Topic to signal a situation of interest. Subscriptions can be defined on these Notification Topics, […]
jq – Linux command line tool for interpreting and manipulating JSON documents
I am not the first to discover jq, or even to write about it. However, jq was such a valuable tool for me that I felt obliged to share it with you. And turn it into a Katacoda scenario (Katacoda is on of my other favorite finds). jq is a […]
Trying out Project Fn handson – using only your browser
Project Fn is an open source framework for creating and running serverless functions. Project Fn produces a Docker container image for each function. This container has a runtime (for example for Java, Go, Python, Node) and a minimal handler to handle an HTTP request and turn it into a call […]
Somewhat Stateful Serverless Functions on Oracle Cloud Infrastructure – Implementing a DIY Cache
We call them serverless and we consider them stateless. Functions on Oracle Cloud Infrastructure (and on other cloud platforms). Of course they are neither. They run on servers. And they can carry some state, though largely opportunistic and not reliably. Functions on OCI run inside a container. The container is […]
JavaScript: Mapping and Wrapping Classic Callback Functions to Promises and Async / Await
Callback functions used to be very common in JavaScript and Node applications. Out of necessity. And with Callback functions came unclear program flows, parallel realities, nested complexity and more. ECMAScript introduced Promises several years ago and followed that up with the neat await and async syntax. This allows us to […]
Asynchronous Function Calls through API Gateway on Oracle Cloud Infrastructure
In a recent article, I described how serverless Functions on Oracle Cloud Infrastructure can invoke each other: synchronously and asynchronously. Although asynchronous calls are the desired state, such calls currently are possible only with quite a bit of hassle – using a Stream for queuing asynchronous requests and a Listener […]
OCI Serverless Functions invoking other Functions – synchronous and asynchronously through API Gateway and Streaming
OCI allows for cloud native application development, using facilities such as serverless functions, a light weight API gateway, a streaming service for asynchronous communication based on event messaging and built-in monitoring. In previous articles, I have gone over several aspects of serverless functions and API Gateways to create and expose […]
Using OCI Monitoring Healthchecks to Schedule execution of Serverless Functions on Oracle Cloud Infrastructure
Execution of scheduled jobs based on a time schedule is a frequent requirement. Jobs on Oracle Cloud Infrastructure are often implemented using cloud native, serverless Functions – that can be exposed through (public) HTTP endpoints on an API Gateway. I recently published an article describing how execution of functions can […]
Oracle Cloud Streaming Service – Scalable, Reliable, Kafka-like Event service on OCI
Oracle Cloud Infrastructure offers the Streaming service. This service is easily described as a Kafka-like fully managed event platform for high volume streams of data that can be processed in real or delayed time in a durable, reliable way. And from the documentation: “Streaming can be used for messaging, ingesting […]
Deprecated: (!First Steps) with Oracle Cloud’s Pub/Sub Service: Oracle Messaging Cloud Service
Fire and forget messaging is a powerful concept. Asynchronous, decoupled communication is key to scalability and independence of services. Oracle Cloud provides a pub/sub solution called Oracle Messaging Cloud Service. This is an HTTP based publish and subscribe mechanism for asynchronous communication – based on persistent messages and durable subscriptions. […]
Publish Oracle Function for Reading and Writing Object Storage Files through OCI API Gateway
The objective for this article is to show you how to get to the point where two routes are available on an API Gateway on Oracle Cloud Infrastructure that allow easy writing to a file on Object Storage and easy retrieval of such as file. Writing files is obviously useful […]
Oracle Cloud Infrastructure – Leveraging API Gateway as Read Only Cache from serverless Function
This article demonstrates a set up that is probably mainly of theoretical interest or maybe useful in demonstrations. I describe how we can invoke an OCI serverless Function through the API Gateway and ask the serverless function for values that are read from a [read only] cache. This cache is […]