Jenkins is a solid CI/CD platform which has proven itself over the years. Many organizations use it to build, test and deploy their applications. In Jenkins it is possible to define credentials or to use an external credential store. You can then use these inside your pipelines and jobs. Direct […]
SonarCloud: OWASP Dependency-Check reports
SonarCloud is a hosted SonarQube SaaS solution which helps you with code quality management. It is free to use for open source projects. You cannot install 3rd party plugins in SonarCloud however. This puts some limitations on the kind of data you can put in SonarCloud. For Java this is […]
GitHub Actions and SonarCloud
GitHub Actions allow you to do most CI/CD tasks for free, directly from your GitHub repository. One of the challenges however is that there is no build-in facility like for example SonarQube to manage code quality. Luckily, SonarSource provides SonarCloud; a SonarQube SaaS offering which is free for public projects! […]
GitHub Actions: A first impression
I’m a regular user of GitHub. Recently I discovered GitHub also has a build-in CI/CD workflow solution called GitHub Actions. Curious about how this would work I decided to try it out. I had previously build a Jenkins Pipeline to perform several static and dynamic application security tests on a Java project […]
OWASP ZAP: A quick introduction to a versatile open source DAST tool
OWASP ZAP (Zed Attack Proxy) is an open source dynamic application security testing (DAST) tool. It is available here and has a website with documentation here. I recently encountered it when looking for open source security test tools to embed in a CI/CD pipeline (here). I was surprised by how versatile this tool […]
Delete play-resources from Azure using runbooks
Learning a new cloud can be frighting: do I configure this right? And, when I click here, don’t I end up with a huge bill at the end of the month? In general, these fears can be solved quite easily: when you follow along with a training, the trainer will […]
Executing JavaScript from PL/SQL in Oracle Database 21c with Multi Language Engine
Oracle Database Release 7 – end of 1993 – introduced PL/SQL as language for Stored Procedures, Functions and Triggers. This was just before I joined Oracle Corporation, in May 1994. I have made extensive use of PL/SQL. With Oracle 8i we saw the advent of the Embedded JVM that made […]
How to build [a CI/CD pipeline for] an Oracle Database application–kicking off a six part series
Build is an overloaded term in the world of software engineering. Building software used to be mainly a fancy way of saying “programming”. Now after the construction of the code, the actual build process is kicked off, that takes the work from the individual programmer and turns it into something […]
How to unit test a SQL query?
A simple challenge: I am working on a SQL query. Not a trivial query. I am trying various approaches. I believe I may have found a solution that works. That produces the correct solution. How can I be sure? How can I try to further refine the query while maintaining […]
How to build an Oracle Database application (that supports APEX, Java, React or any other front-end) (1)
What’s in a name? A title is important and I hope that it describes well what I do want to share with you in this series of articles. It is not so much about how to use the back-end part (Oracle Database) or the front-end (Oracle APEX, Java, Node, React […]
Java Security: Open Source tools for use in CI/CD pipelines
It is often expected of a DevOps team to also take security into consideration when delivering software. Often however, this does not get the attention it deserves. In this blog post I’ll describe some easy to use, CI/CD pipeline friendly, open source tools you can use to perform several checks […]
SQL–Only Counting Records Sufficiently Spaced apart using Analytics with Windowing Clause and Anti Join
A nice SQL challenge was presented to me by a colleague. The challenges basically consisted of this table. A table contains records that describe login events. Each record has a login timestamp and the identifier of the person logging in. The challenge is to count “unique” login events. These have […]
How to build an Oracle Database application (that supports APEX, Java, React or any other front-end) (6)
Last time in “How to build an Oracle Database application (that supports APEX, Java, React or any other front-end) (5)”, I told you about Git, Subversion, Maven and Flyway. In this final article, I will discuss the following tools & methods: Oracle SQL Developer, utPLSQL, SonarQube, Perl, Ant and DevOps. Oracle […]
How to build an Oracle Database application (that supports APEX, Java, React or any other front-end) (5)
Last time in “How to build an Oracle Database application (that supports APEX, Java, React or any other front-end) (4)”, I told you about the Oracle SQL Developer Data Modeler. This time I will discuss the following tools: Git, Subversion, Maven and Flyway. Flyway The first tool I would like to […]
How to build an Oracle Database application (that supports APEX, Java, React or any other front-end) (4)
Last time in “How to build an Oracle Database application (that supports APEX, Java, React or any other front-end) (3)”, I told you about the Oracle Database and Oracle APEX. This time I will discuss Oracle SQL Developer Data Modeler. Oracle SQL Developer Data Modeler A book I can recommend is Oracle […]
How to build an Oracle Database application (that supports APEX, Java, React or any other front-end) (3)
Last time in “How to build an Oracle Database application (that supports APEX, Java, React or any other front-end) (2)”, I did show you the database structure. This time I will elaborate on the base tools, the Oracle Database and Oracle APEX. Oracle Database How to use it? I can tell […]
How to build an Oracle Database application (that supports APEX, Java, React or any other front-end) (2)
Last time in “How to build an Oracle Database application (that supports APEX, Java, React or any other front-end) (1)”, I gave you an introduction. This time I will elaborate on the database structure. Project folder layout The following top level directories may exist for every database application project: Directory Description […]
The Prototype Pitfall
TL;DR Prototyping is an essential way to determine the technical feasibility and functional desirability of features of a software system. There is a clear and present danger that the prototype is considered to be professional code, peer reviewed and production ready. This risk must be mitigated and anyone involved needs […]
Java Agent: Rewrite Java code at runtime using Javassist
You might want to change the behavior of a Java application at runtime without having to alter the original sources and recompile them. This can be done by using a Java Agent. Java Agents are used by several products. Dynatrace uses for example a Java Agent to collect data from inside […]
VNet peering in Azure
Introduction I looked into virtual network peering peering in Azure and I saw something that looked rather strange to me. Let me explain what it was, how VNet peering works and what you should be aware of from a security perspective. Situation I have two virtual networks: one for 10.1.0.0/16 […]
How to add a user in Azure Active Directory
Adding a user in Azure Active Directory caused some troubles: it didn’t work as I thought it would. Let me explain. Adding the user I went to Azure Active Directory, clicked “Users” in the left menu and added the user via “New user”. I filled in some information and clicked […]
Building my own Video Recorder–Automating Scheduled Streaming Video Recording on Windows 10
My objective: create a mechanism for recording streaming video on my Windows laptop on a preprogrammed timestamp and channel. My motivation: show that I can do this (using AutoIt, OBS, Windows Task Scheduler an Windows Sandbox) and create a way around the limitation of my current TV provider (Ziggo in […]
Playing with AI in Azure
When I was learning about Azure AI, I asked myself the question: “how far is AI? What can it determine – and what is impossible (yet)?” A nice tool that can give (partly) answers to that, is the website that Azure offers to scan images, it uses Azure Cognitive Services […]
Schedule Spotify Good Morning Playlist–using AutoIt and Windows Task Scheduler
I would like to have my Spotify playlist played to me every morning at 8AM sharp. Using the Windows Task Scheduler and an AutoIt script I can have the Spotify App started and subsequently automate the steps to run my preferred Spotify playlist. I can even wake my computer up […]
How to manage local IoT complexity with Azure IoT Edge
Whenever there is a more complex IoT solution with dependency on local business logic and the need for autonomous operations an edge device is quickly an important part of the solution. This article demonstrates the implementation of Azure IoT edge as part of two business cases that rely heavily on […]
Capturing those elusive Video Streams on Windows 10
I have tried to capture various video streams running in my browser using a plethora of screen capture and video recording tools. However, some streams prove hard to pin down. When I activate the recording tool – all of a sudden the video goes blank or black. And my recording […]
Automating actions on Windows – my first steps with AutoIt
I recently spent quite some time on getting to know Playwright – a great tool for automating virtually any operation performed in a browser. Playwright is great for automating testing web applications as well as for screen scraping (for data), tactical integration, RPA, prototyping and even customizing third party applications […]
Using one-time upload URLs in AWS with S3 versioning
In this blog, I will show how you can use the SAM (Serverless Application Model) to get a presigned upload URL to AWS S3 that can be used exactly once [1]. In AWS it is possible to use a presigned URL to upload files, but the URL is valid for […]
Python: A Google Translate service using Playwright
There are a lot of use-cases in which you might want to automate web-browser actions. For example to automate tedious repetitive tasks or to perform automated tests of front-end applications. There are several tools available to do this such as Selenium, Cypress and Puppeteer. Several blog posts (such as here) […]
Using one-time upload URLs in AWS with Memcached
In this blog I will show how you can use the SAM (Serverless Application Model) to get a presigned upload URL to AWS S3 that can be used exactly once [1]. In AWS it is possible to use a presigned URL to upload files, but the URL is valid for […]
Using one-time upload URLs in AWS using DynamoDB
In this blog, I will show how you can use the SAM (Serverless Application Model) to get a presigned upload URL to AWS S3 that can be used exactly once [1]. In AWS it is possible to use a presigned URL to upload files where the URL is valid for […]
Create OCI Function running a Playwright scenario
TL;DR – How to create a Function on Oracle Cloud Infrastructure that uses the Playwright library for running headless browser scenarios, for example for Web UI Health Check and Performance Monitoring, for tactical integration and simple RPA and for web based reporting. The article shows a custom Docker container image […]
Quickly Run NodeJS Demos in Vanilla Windows Sandbox featuring Scoop
TL;DR – this article describes how Windows Sandbox can be used to prepare a well known environment for demonstrations, tutorials, tests etc. Scoop is a great package manager for quickly installing Windows packages (Node runtime, Git client, VS Code editor, …) into the Sandbox. I have applied these concepts to […]
Run Automated Step-by-Step Browser Scenarios for Instruction or Demo from NodeJS applications with Playwright
TL;DR; Run demonstrations or instructions of browser actions. Allow the user to pause and skip acts, and to reset and switch scenarios. Allow the user to interact with the browser before, after and during the scenarios. The open source Playwright library is used from a custom NodeJS application in which […]
Inject Generic Floating Toolbar into Any Web Application or Site using Playwright
The objective I am pursuing is the following: I want to be able to open a web site or web application and show a floating toolbar on top of the web site’s content. As I am making my way through the site or application, I can use functions from the […]
Use Playwright to Inject Shortcut Keys into Any Web Page – for example to download all images
Adding a short cut key combination to a web application or web site can be quite powerful. When the short cut key combination is activated – things can happen. Things that you have defined on top of everything the web application already offers. In this article I describe how I […]
What you could do if you had a free, tireless browser operator?! Introducing Playwright.
Browsers are our primary platform for running applications and retrieving information. We have to use browsers to test applications, verify health and current performance of applications, look up data and download (as) files, submit information, and do much of our daily work. Suppose we had a new colleague – who […]
Performance problems, the Whys.. and Hows.. around them
Introduction Over the last years, as part of my consultancy experience, I had the chance to work on several assignments tackling IT performance problems. In this post I will try to share my experiences on that topic, considering performance problems that I have faced on several (on-premise, cloud, hybrid) and […]