Bash is not just a shell that’s only on Linux/Mac, with WSL it is also available on Windows. The shell has been around since 1989 and documentation is plenty. The shell’s name is an acronym for Bourne-again shell, a pun on the name of the Bourne shell that it replaces and on the common term “born again”.
Reading multiple key/values from Redis
At Wehkamp we use Redis a lot. It is fast, available and implemented as a managed AWS service called ElastiCache. Sometimes we need to extract data from Redis, and usually I use the redis-cli to interact from the command-line. But what if you need to get the values of 400k+ keys? What would you do? Is there an effective way to query multiple key/values from Redis?
Connect to AWS ElastiCache (Redis) with redis-cli
This week I needed to query an ElastiCache instance on AWS – which is Amazons version of Redis. I could not find a decent free client to query this remote dictionary, so I ended up using redis-cli on Ubuntu. Turns out: Redis is a wonderful and powerful system to work with.
Poll JSON endpoint until value changes with bash & curl
Today I had some data coming into our event driven landscape, so I needed to know when my data was processed. As it constituted the processing of 400.000+ records (and I had more things to do), I needed a small script that kept an eye on my JSON API endpoint to see if the values are changed.
Investigate problems due to User-Agent using Bash
Last week we had some problems with the Google Ads bot. It was not able to crawl a bunch of URLs while the browser had no problem getting through. The only difference was the User-Agent. This send us on a debugging journey through Cloudflare, gateways and micro-sites. To assist us, we’ve created a small bash script to visit an URL and show some debug info.
AWS Lambda Size: PIL+TF+Keras+Numpy?
At Wehkamp we’ve been using machine learning for a while now. We’re training models in Databricks (Spark) and Keras. This produces a Keras file that we use to make the actual predictions. Training is one thing, but getting them to production is quite another!
The main problem we’ve faced was that it was too big to actually fit into a lambda. This blogs shows how we’ve dealt with that problem.
Setup Jenkins (Blue Ocean) using Docker on Synology NAS
Using Docker on a Synology NAS has become really easy. It’s a bit harder to install Jenkins in a container and let it use the Docker installation it’s part of. But we are living in exciting times: bringing a fully functioning CI/CD-pipeline to your home automation has never been easier!
Taming Unit Test logging in Docker pipeline for .NET
The main problem of a CI/CD pipeline – in my opinion – is logging. When it logs too little you don’t know what’s going on, when it logs to much you can’t see the trees to the forest. Having too much logging can seriously impact the effectiveness of your CI/CD pipeline. This script will improve Xunit unit test output.