A Javascript Digital Clock

Your browser does not support the canvas element.

I coded this digital clock as an excuse to spend more time writing in Javascript. I did a lot of cut-and-paste Javascript "programming" over the years, but finally decided to read an entire book on the language. Head First Javascript is a bit out of date now, but I still learned a fair amount and can recommend the book. (I picked it up through a Humble Bundle) and it was a great investment. This little exercise helped me put my new knowledge to the test.

I think the clock looks best when the width is about four times the height.

You can grab the code for this project from my GitLab account.

A RabbitMQ Demo implemented in Java and Swing

The SwingMQ demo came about after I read a job listing requiring or preferring programmers who had experience with RabbitMQ. While I understand the publish-subscribe design pattern, I'd never worked with such a system. I put this demo together to see what I could do with RabbitMQ and Java.

I used Swing as the platform because it's interactive and kind of fun to program in. It's also pretty easy to pull the project down, build, and run it. If you have Java 15 and Maven installed, as well as Docker (for the RabbitMQ service) you can have this demo up and running in minutes.

You can get the code for this demo project from my GitLab account.

A Redis Demo implemented in Java, Spring, and Swing

As with SwingMQ, I read a job listing that mentioned NoSQL experience and mentioned Redis specifically. I dreamt up a simple application that would use Redis as a key-value store and display the results in a pretty Swing application. Because I'm a fan of Spring and hadn't used it in conjunction with Swing before, I thought I'd throw that into the works as well.

You can tell that I wrote this application before I wrote SwingMQ and that the UI is obviously similar in many ways. If you look closely (or not even all that closely) you can see I spent some time improving the look of SwingMQ after working on this application. That's a TODO for SwingRedis.

You can get the code for this demo project from my GitLab account.

Multiple Virtual Sites in Nginx Running in a Docker Container

I host a few hobby domains on a little server at home. I need to run a webserver that can host multiple virtual sites. I chose nginx and I chose to run nginx in a Docker container. This project demonstrates how to do that.

You can get the code for this project from my GitLab account.