Welcome to northCoder

a blind man in a dark cellar looking for a black cat that isn't there

Java Bounded Wildcards in Stream.map()

12 Apr 2020
What is going on here? <R> Stream<R> map​(Function<? super T,​? extends R> mapper) Making sense of Java bounded wildcards, using Stream.map() as an example.

Bash Cleverness - Too Clever by 0.5?

06 Apr 2020
I recently saw !$:t in a tar command and had no idea what it was doing…

Which JAR is my Java Code Referencing?

02 Apr 2020
When you need to check which jar is being accessed to load a specific class…

MySQL in Docker (for Testing)

10 Feb 2020
A walkthrough of one way to launch a Docker container running a MySQL database server, and to enable access to the database from the host OS - for example, using JDBC.

Zip File Writer Example

14 Jan 2020
An example of writing a potentially large amount of data directly to a zip file, item by item.

JVM Heap Dumps and OQL

09 Jan 2020
VisualVM is a great tool for exploring Java applications and the JVM in which they are running. One area which has always been a bit overwhelming (to me) is the heap dump - a mass of raw information for millions of objects, which can be hard to sift through…

Password Hasher

08 Jan 2020
I have previously written about my wish to avoid being responsible for password management.  Here is the other side of the coin: Some code which (a) creates a hash for a new password, and (b) checks if a password is valid. Also included: A bonus digression on Java string immutability.

JSON Minefield

04 Jan 2020
JSON is simultaneously straightforward and tricky…

AWS Cognito - Signing Up and Signing In

07 Dec 2019
In this walk-through I will take a look at AWS Cognito for user sign-up, password management and access controls, using a basic Java web application for demonstration purposes.