Author: Edward Whiting

  • Git Workflow

    Introduction Git is widely-used and is a very powerful tool for version control of computer code. It is not particularly easy or intuitive to use, however with a few simple commands you can get productive fairly quickly. Joining a project You will typically join a project on a code repository such as GitHub or Bitbucket…

  • Python Date Time Intro

    Python Date Time Intro

    This is a brief introduction to date and time in Python. Definitions Here are some commonly used terms: Greenwich Mean Time: abbreviated GMT. This was the zero offset timezone. It has now been superseded by Universal Coordinated Time (see next term) although the two terms are often used interchangeably. See Wikipedia. Coordinated Universal Time: abbreviated…

  • VLC How To Equalise Stream

    VLC How To Equalise Stream

    Introduction Suppose you have some music on a CD or an online streaming source that you want to copy to your computer for personal listening. Do not infringe copyright by pirating music and sharing it! There are many tools to do this including VLC. What’s not very clear in VLC is how to rebalance the…

  • Intro To iCal4J

    Intro To iCal4J

    Introduction Ben Fortuna\’s iCal4J library is a well-established Java implementation of the RFC 5545 international standard for calendar events. In this article I will show you how to use iCal4J to create a iCalendar event in Java and export it to a .ics file, and how to read in a .ics file and extract the…

  • Oauth2 SSO Keycloak Spring Security

    Oauth2 SSO Keycloak Spring Security

    Introduction In this article we will set up a Keycloak Oauth2 Single Sign-On (SSO) server with two clients and two user accounts with differing permissions. We will create a Spring Boot Java application (a \"resource server\") with two REST endpoints, secured by the Keycloak server and requiring different roles for access. We will send HTTP…

  • Java8 Path Filevisit Intro

    Java8 Path Filevisit Intro

    Goal of this Exercise In this article we will look at Java\’s SimpleFileVisitor as a tool to solve this problem: how to consolidate multiple backups of data, photos, and videos, from multiple devices such as phones and laptops. Suppose you (or your not-so-tech-savvy friends) use multiple devices and copy files between them, and edit different…

  • Java8 Date Time Intro

    Java8 Date Time Intro

    Why do you need to know about Java 8 date and time classes? In a lot of Java applications it is necessary to calculate business days, or manipulate dates for display or export: eg. calendar events. There is also a lot of old Java code which uses the old date and calendar classes, that needs…