Works

Highlights

Susi

March 2024 - May 2024

Rust C# C++ WinUI 3 InnoSetup Win32 API Desktop Development

Susi is an open-source file encryption tool that encrypts using AES-GCM-256 to a custom file format, SSEF, to protect files from unauthorized access. This was also built to help me improve my programming skills. Software specifications for Susi were also written and a PDF version is available in one of my GitHub repositories. Susi is built with Rust, C#, and C++. An installer for the app was already created using InnoSetup.

Project Link: https://github.com/seanballais/susi-gui-windows

Pira Pasahe

June 2023 - Present

Flutter Android Development Mobile Application Development

Pira Pasahe is a commuter companion app that allows users to know the correct fare to pay tricycles when commuting in Tacloban City currently only available for Android. This was built as a response to tricycle drivers of the city asking for fares higher than the regulated fare price, which is a regular problem among commuters of the city. Almost released the app to the Google Play Store, but app performance is not satisfactory, so release is indefinitely postponed until the app is of satisfactory quality. This project is currently built with Flutter.

Botos

June 2016 - May 2024

Python Django jQuery HTML CSS JavaScript SQL PostgreSQL Web Development

Botos is an open-source election system built in Python for use in schools. It includes features such as allowing voters to vote for multiple candidates running for one position, and allowing admins to view the current election results. It has been used in the Philippine Science High School - Eastern Visayas Campus and St. Therese Educational Foundation of Tacloban Inc.. I am no longer actively maintaining this, but I do some maintenance-related work when needed. End date indicates the last time I worked on Botos.

Project Link: https://github.com/seanballais/botos

Building Placement Tool

July 2020 - September 2021

C++ CMake Simple DirectMedia Layer (SDL) Conan Dear ImGui EASTL Optimization Algorithms Genetic Algorithms

Building Placement Tool is an app I developed as part of my undergraduate thesis, "Solving the Classical Unequal Area Static Facility Layout Problem Using a Modified Grey Wolf Optimization Algorithm". In line with the goals of my thesis, the app tries to find a good arrangement for a set of buildings within a certain quadrilateral lot using a stochastic optimization algorithm. In the app's case, it utilizes a modified grey wolf optimization algorithm. A modified genetic algorithm and particle swarm optimization were also implemented as points of comparison against our modified grey wolf optimization algorithm. I built this app using a custom game engine. Overall, this was built using C++, CMake, Conan, Dear ImGui, SDL 2, and EASTL.

Project Link: https://github.com/seanballais/building-placement-tool

Knitter

January 2024 - Present

Python Jinja Web Development

Knitter is an open-source static site generator developed for the development of the Dev8 website. It has support for SCSS compilation, routes, live-reloading, and templating support through Jinja 2. This project was built using Python.

Project Link: https://github.com/dev8community/knitter

Open Source Contributions

  • flier/rust-filename#1 (November 2023 - January 2024)

    Contributed a pull request that introduces fixes to a compilation error resulting from unresolved imports to winapi. Pull request has not been reviewed yet and merged.

  • GaijinEntertainment/DagorEngine#14 (November 2023 - January 2024)

    Was not able to complete a Linux port of the shader compiler of the Dagor Engine. However, parts of my work was reused by the developers to download and build the DirectX Shader Compiler.

  • ArjunNair/egui_sdl2_gl#30 (August 2023 - September 2023)

    Add support for egui v0.22 to egui_sdl2_gl

  • conan-io/conan#7309 (July 2020)

    Add support for all Linux distros using apt to Conan.

  • grimfang4/sdl-gpu#192 (June 2020 - August 2020)

    Allow sdl-gpu to be easily added as a dependency in a CMake project.

  • snare/voltron#276 (March 2020 - May 2020)

    Fixed an error in Voltron that shows up when running GDB. zcutlip finalized the pull request.

  • dfranx/SHADERed#46 (January 2020)

    Added support for out-of-source builds to SHADERed. The project, prior to my PR, only supported in-source builds.

  • elementary/code#705 (August 2019 - November 2019)

    Helped depriorize Git-ignored files in Elementary Code. Did the initial work, while some of the elementary team finalized the work I've done.

  • elementary/calculator#69 (June 2018)

    Fix bug where mismatched parentheses in the calculator does not throw an error.

  • electron/electron#3758 (December 2015)

    Added a way to automatically add a version to Electron's package.json file.

Random Builds, Incomplete Works, and Notable Projects

MulayGFX

April 2023 - Present

Rust OpenGL egui Graphics Programming

MulayGFX is an open-source toy 3D renderer that is among my current project backlog. The project is a way for me to teach myself graphics programming and rendering techniques. It has foundational support for hot reloading of shaders. It is being built with Rust and OpenGL.

Project Link: https://github.com/seanballais/mulay-gfx

sand-sim-2d

February 2020

C++ Simple and Fast Multimedia Library (SFML) Random Build

sand-sim-2d is a basic 2D sand simulator I built out of the blue. It was inspired by a showcase of the same thing in the 2019 GDC talk of Petri Purho, "Exploring the Tech and Design of Noita". The project was built using C++ and SFML. Unfortunately, the code, as it is written currently, can only be run in Linux.

Project Link: https://github.com/seanballais/sand-sim-2d

simple-raytracer

February 2021 - January 2022

C++ stb_image_write

simple-raytracer is a basic offline raytracer I built following the "Ray Tracing in One Weekend" book by Peter Shirley, Trevor David Black, and Steve Hollasch. Pictured above is an output of the raytracer. Going on a different path from the main tutorial of the book, I implemented multithreaded raytracing in the project. The project was built with C++ and stb_image_write.

Project Link: https://github.com/seanballais/simple-raytracer

CopyOver

October 2022 - March 2024

C++ Kotlin C# Qt WinUI 3 MQTT Desktop Development Android Development Mobile Development

CopyOver is an app that I built to let users sync the clipboards of their computers and mobile devices, similar to Apple's Universal Clipboard, through the MQTT protocol. The target platforms were Windows, Linux, and Android. Some basic functionality, such as copying between two computers and between a computer a laptop, were accomplished. However, technical limitations discouraged me from further working on the project. The project was built using C++, Kotlin, and Qt. The latest attempt (around late February to early March 2024) to work on the project used C# and WinUI 3 for the Windows app for a more native experience.

Push 'Em Over

September 2016 - December 2016

Java libGDX Game Development

Push 'Em Over is a student game project we created back in college. It's a two-player game where the goal is to push the other player to a spike or off the map to get a point. The first player to get a certain number of points wins. The map is also procedurally-generated, so each match will have different map layouts. Basic controller, albeit now bugger, support is also in the game to control one of the players. The game also came with sound effects and background music, but we used copyrighted music from Move or Die for the background music, so the audio in the demo above is silenced. This game was built using Java and libGDX.

Project Link: https://github.com/seanballais/push-em-over

Other Projects

This page only includes a curated and selected collection of my projects. I have a bunch of other projects that I opted not to include here due to incompleteness, lack of presentability, and/or just the fact that they didn't make the cut in this page. If you'd love to check them out, you may check them out via my GitHub profile.

Volunteering

Co-Founder and Core Team Member (January 2018 - Present)

Dev8

🤝 Co-founded and currently part of the core team of Dev8, a local developer community based in Eastern Visayas, Philippines that aims to make a vibrant tech scene in the region. We have hosted a tech conference already, our own Dev8 Tech Talks, and are organizing regular monthly meetups and produce podcast episodes once a month. We also hosted Google I/O Extended Leyte 2019.

📸 Images are from Dev8 and used with permission.

Relief Operations Volunteer (April 14, 2022)

Buhat Eastern Visayas

🫡 Volunteered for the relief operations for Abuyog, Leyte, Philippines last April 14, 2022 after the onslaught of Typhoon Agaton that swept through the country on the same month. Conducted some documentation work as well, other than just help distribute the relief goods.

📸 Images are from Buhat Eastern Visayas and are used with permission.

Google I/O Extended Leyte 2018 Volunteer (August 4, 2018)

GDG Cebu

🫡 Volunteered to help with the organization of the second Google I/O Extended Leyte hosted by GDG Cebu in Palo, Leyte, Philippines last August 4, 2018. Was assigned to the audio team.

Google I/O Extended Leyte 2017 Volunteer (August 19, 2017)

GDG Cebu

🫡 Volunteered to help with the organization of Google I/O Extended Leyte hosted by GDG Cebu in Tacloban City, Philippines last August 19, 2017. Was assigned to the technicals team.

Post-Typhoon Haiyan Relief Operations Volunteer (November 2013)

🫡 Volunteered to aid some members of the Armed Forces of the Philippines conduct a medical mission and relief operations in Tacloban City, Philippines held on a day in the middle of November 2013 after the onslaught of Supertyphoon Haiyan that ravaged the city and surrounding towns and provinces. Was tasked with crowd control.

comments powered by Disqus