Python Code Jam

9 July 2021 - 17 July 2021

In 2021 I took part in the official Python Discord Summer Code Jam, The rule of the code jam was that you had to make your program in a TUI (text-based user interface) and the theme was "Thinking Inside the Box". After completing the qualifier designed as a barrier for entry. I decided to join a team as a member. However after an unfortunate event causing our team leader to leave on the first day, I was voted into being the leader. After a day of brainstorming, my team (of now 5) decided that we should make a hacking style game. So over the next week using the Blessed framework. We managed to construct a simple virtual operating system. Littered with puzzles and a short story. The goal of this puzzle game was the use "hacking tools" which we created to break into our virtual OS and discover its secrets. Our team managed to get into the top 11, unfortunetly we didnt make it into the top 3. Python Code Jam 2021 was a super fun experience, I will definitely return next year. You can see our full project below.

View Github Repository

PC Benchmarking Software

5 April 2021

The program runs stress tests and performance tests on cpu gpu and memory and relays easy to read scores into a CSV file which is sent to out database on a webserver. Eventually we would like to have a website which will display the compenent scores of all components and have ways to compare diffrent computer components to find the best part avaliable for a price.

This Benchmarking Program was developed in python in collaboration with Callum Gourlay

View Github Repository

Encryption Program/Module

16 June 2021

This is a python program which uses fernet from the Cryptography python package. This program can encrypt and decrypt almost any file, It is very easy to incorporate into other programs and requires very little coding to do so. The program can also encrypt entire folders if they are compressed first into a ZIP. The program is designed to work as a stand-alone program allowing users to encrypt/decrypt files as well as make encryption keys easily through the command line interface. The program also functions well as a module allowing it to be incorporated into other programs and easily encrypt or decrypt data sent into through the custom functions.

View Github Repository

Login / Sign-up Menu

4 June 2021

This is a small scale project which was my first look into the Python package, Tkinter. It allows you to make simplisitc UIs to allow programs to be be more interactive. The idea behind making this was to learn more about making a UI while at the same time allowsing me to put login pages on some of my other programs allowing for more security. For example a login page work work very well on my Inventory Management System program.

Update: I have continued development on this project and added a way to easily create new logins via the UI. It involves a check to confirm the password is correct.

View Github Repository

Inventory Managment System

13 June 2021

I created this inventory management system in python. It interacts with CSV files to store data about products and inventory as well as sales and calculates income.

Update: Added a GUI to increase accessibility. This is still a work in progress. View Github Repository

Weather Application

13 June 2021

Created in 2 days using the OpenWeatherMap API. It includes a dynamic search which updates the weather info as you type and also displays an image based on the type of weather. This program will be easy to incorprate into other projects as it is a module which can be easily added to pre-existing code.

I have plans to incorporate this into a larger program centered around productivity

View Github Repository

Audio Player

18 July 2021

Developed in python using a TUI framework. It allows users to play mp3, wav and flac audio files. The program has some basic controls which let the user have control over the music, I used the python module Pygame to allow me to play music. Pygame doesnt have built in support for flac files, but as i like good quality music the program will take flac files and export temporaly export them as wav. This keeps the audio quality, since wav files are alot larger once the song is done the program deletes these temporary wav files to save space. The program has a small text-based user-interface with a working progress bar and song timers. The program uses threading to allow it to do play music, accept inputs and update the ui all at once.

View Github Repository

HTML Debugger

Side Project made in python which is able to debug html files from command line. The idea started as a coding challenge where the idea was to find find HTML tags which were invalid. The program later expanded, I encompassed more features; allowing users to benchmark HTML files. and locate simple mistakes and common code smells.

View Github Repository

Music Production

5 October 2017 - Present

I sometimes create music on my soundcloud. My goal will be to eventually move all that music onto this website.

View Soundcloud

Unity Games Development

Jan 2020 - 2021

Below are some of my unity projects. Most of them are unfinished and unreleased, but they are in a state where I am happy showing them off. The second game is complete and I will include a download.

Python Summer Code Jam 2021

During the summer of 2021 i took part in the python Code Jam competition hosted by the official python discord server. There were 66 teams of around 5 people which were randomly chosen. The rules of the competition were

View Github Repository

About Fergus Haak


I was born in 2003 and have been programming since 2017. I learned Python to create programmes and web apps as well as HTML, CSS and Javascript to create interactive websites. Currently all projects are done in my spare time. This website is a display of some of my projects which include management tools, video games, software development and music production.

GET IN CONTACT

Elements

Text

This is bold and this is strong. This is italic and this is emphasized. This is superscript text and this is subscript text. This is underlined and this is code: for (;;) { ... }. Finally, this is a link.


Heading Level 2

Heading Level 3

Heading Level 4

Heading Level 5
Heading Level 6

Blockquote

Fringilla nisl. Donec accumsan interdum nisi, quis tincidunt felis sagittis eget tempus euismod. Vestibulum ante ipsum primis in faucibus vestibulum. Blandit adipiscing eu felis iaculis volutpat ac adipiscing accumsan faucibus. Vestibulum ante ipsum primis in faucibus lorem ipsum dolor sit amet nullam adipiscing eu felis.

Preformatted

i = 0;

while (!deck.isInOrder()) {
    print 'Iteration ' + i;
    deck.shuffle();
    i++;
}

print 'It took ' + i + ' iterations to sort the deck.';

Lists

Unordered

  • Dolor pulvinar etiam.
  • Sagittis adipiscing.
  • Felis enim feugiat.

Alternate

  • Dolor pulvinar etiam.
  • Sagittis adipiscing.
  • Felis enim feugiat.

Ordered

  1. Dolor pulvinar etiam.
  2. Etiam vel felis viverra.
  3. Felis enim feugiat.
  4. Dolor pulvinar etiam.
  5. Etiam vel felis lorem.
  6. Felis enim et feugiat.

Icons

Actions

Table

Default

Name Description Price
Item One Ante turpis integer aliquet porttitor. 29.99
Item Two Vis ac commodo adipiscing arcu aliquet. 19.99
Item Three Morbi faucibus arcu accumsan lorem. 29.99
Item Four Vitae integer tempus condimentum. 19.99
Item Five Ante turpis integer aliquet porttitor. 29.99
100.00

Alternate

Name Description Price
Item One Ante turpis integer aliquet porttitor. 29.99
Item Two Vis ac commodo adipiscing arcu aliquet. 19.99
Item Three Morbi faucibus arcu accumsan lorem. 29.99
Item Four Vitae integer tempus condimentum. 19.99
Item Five Ante turpis integer aliquet porttitor. 29.99
100.00

Buttons

  • Disabled
  • Disabled

Form