-
Upgrading to Ubuntu Jellyfish 22.04
As of yesterday, April 21st, Ubuntu 22.04 Jammy Jellyfish is available for download and upgrade. If you are trying to install from the Software Updater from an earlier version of Ubuntu (I only use LTS ones, for example, and was on 20.04) you won’t be able to install it from the GUI (it will only…
-
How long should it take to solve the FizzBuzz coding question?
So, it was past midnight, and I was pretty much done for the day when one of those random thoughts ran past me like a fleeting glimpse (thanks, Roger) and I just couldn’t let go: if I were asking a candidate to solve the FizzBuzz problem, how long would be fair to expect them to…
-
Publishing a Java Library to Maven Central
Created by M. Massenzio, 2021-12-26 Motivation Publishing one’s own source code under an Open Source license (Apache 2 being my favorite one) and making the code publicly available on GitHub is only half the story, these days, in ensuring that your open source project will reach a wide audience. A critical part is also packaging…
-
How to Make Verified GitHub Commits
Created by M. Massenzio, 2021-12-24 GitHub has a set of detailed instructions, however, if you know your way around a Linux shell and basic understanding of how keys work, this is a condensed TL;DR version. Also, with minimal effort it could be automated in a shell script (even uploading the key to GitHub via API).…
-
Reorder Workspaces in Ubuntu
By holding the “Windows” key on a Microsoft keyboard, in Ubuntu, you get a MacOS-like view where you can move apps across workspaces; this is a super-useful features (and complements well the Shift-Alt-Up/Down combination to move windows across workspaces), however it does miss the ability to also move workspaces around. There is an excellent extension…
-
Using Multiple Identities with GitHub
When using multiple accounts with GitHub, it may be necessary to commit changes to private repositories which may not accessible by all accounts. This is how to generate the key and add it to the SSH agent; then add it to the GitHub account too. The original solution was here.
-
Docker ENTRYPOINT (and a note about $@)
This is something I keep forgetting, so I figure I’ll write it down so it’s here for future reference. General rule: use the exec form of ENTRYPOINT, in other words do this: As expected, this will run apache in the foreground, with PID 1 (unless you’re being a complete idiot and using hostPID – see…
-
JSON Web Tokens (JWT) utilities
A simple utility to generate and decode JSON Web Tokens (JWTs) that can be used to authenticate against web applications. The code is released under the Apache 2 Open Source License. See JWT-OPA for an example of how JWTs can be used to authenticate/authorize access to protected online resources/applications. Usage Use –help (or -h) for…
-
Integrating Open Policy Agent with Spring Security Reactive and JSON Web Tokens
We present a Java library that simplifies adopting the Open Policy Agent server to manage user authorization for a Spring Boot microservice, while also managing API Token (JWT) authentication. Motivation Spring Security assumes a fairly simplistic Role-Based access control (RBAC) where the service authenticates the user (via some credentials, typically username/password) and returns a UserDetails…