Skip to content

Blog

The ProgSoc Blog is a place for members to share their thoughts, experiences, and knowledge with the rest of the society. It is a place for members to write about their projects, their experiences, and their thoughts on technology and society.

2025 Java Workshop

Introduction

Welcome to the 2025 Java Workshop! This workshop is designed to help you learn the basics of Java programming. Whether you're new to programming or just looking to brush up on your skills, this workshop is for you.

In this workshop you'll cover the following topics:

  • Java syntax
  • Variables and data types
  • Control flow (if statements, loops)
  • Basic Functions

Intro to Git (2024)

Featured Image

This post is based on the workshop that we held on the 27th of March in-person, it'll cover everything we covered during the workshop!

Unlike the workshop, we'll mostly be using the Git and GitHub CLI to interact with Git but feel free to check out Last Year's Workshop if you prefer a more graphical method.

If you run into any issues or have any questions, feel free to ask on on Discord.

A comprehensive introduction to React hooks

Featured Image

Before going into hooks, let's first have a quick recap of the basics of React:

  • React components are functions that take in props and return HTML-like fragments
  • Props are the arguments to a component, which look like HTML attributes.
  • The component function is called every time the component re-renders
  • Components choose to re-render when their parent component re-renders, or when their state updates (when a useState's "set" function is invoked).

Regex, the ultimate tool for string validation, parsing and matching!

Featured Image

During the most recent programming competition that we ran as part of UTS TechFest, there was a question that involved making sure a username matched a certain set of rules. The task was simple on paper: match usernames that have a first name, last name, then 3 digits (e.g. JohnDoe123).

Regular Expressions were devised at the same time as the first computers as people needed a way to match certain outputs with inputs. It's implemented in every major programming language as part of the standard libraries and is especially easy to use in scripted languages such as Python and JavaScript.

Without Regex (Regular Expressions), the problem becomes significantly more complicated with many nested logical comparisons with chained logical operators, if/or/and. Whilst regex itself may look complicated and confusing at first, once you've got the basic rules down it becomes a little less foreign.

Git Workshop (2023)

Featured Image

This post is based on the workshop that we held on the 22nd of March in-person, it covers everything we covered in the workshop.

This workshop uses the VS Code GUI for interacting with Git, so make sure you have it installed before proceeding.

If you have any questions or issues while following along, feel free to ask in our Discord server!

Guide: ProgSoc Voting System [beta]

I've been asked to make a quick guide to using the voting system I've been developing. Keep in mind that there are still more features to add, and I will hopefully get most of it done before other societies' AGMs begin. But as of writing, the system works well and has been stress tested by a room of people.

Getting Started with IntelliJ IDEA - A more complete solution

Whether or not you've done applications programming you've probably heard about how the framework of choice is JavaFX. This isn't the most friendly approach for people who are just getting started, fresh out of Prog 1 or even Prog Fund.

Let me tell you that there's a better way.

IntelliJ Idea, for free with your university email does all the setup for you. It automatically installs the correct Java version. It gives you a starter project for JavaFX and has advanced features like automatic imports and inbuilt documentation.

Rather than spending weeks messing around trying to get the right versions of Java and antiquated versions of JavaFX to work together you can simply avoid all the fuss and get a better experience for it.

Modern Web Development: an installation guide

Featured Image

The batteries-included guide to what UTS doesn't teach you

This post is aimed at the majority of people who use a Windows machine and want to get into web development in 2022. Modern web development has some fairly common environment setups, and this guide aims to explain all the software you'd need to be on top of things.

This guide covers how to install:

  • VS Code (the most popular web development environment)
  • VS Code Extensions
  • WSL2 Ubuntu (WSL = Windows Subsystem for Linux, developed by Microsoft)
  • Node.js (using NVM)
  • Docker Desktop (for building your apps, as well as running database servers locally with ease)
  • Setting up SSH keys for Github