"aboutMe": "Welcome to my personal website! I am Bruce Blore, a software developer. I have been a tinkerer with an interest in technology for as long as I can remember. As a child, I liked to take things apart to see what was inside. My parents, seeing my interest for how things worked, signed me up for an after school STEM program. There, I discovered Scratch, and enjoyed messing with it, not even realizing that I was programming. My first exposure to "real" programming was shortly after with an Arduino board, and I have been doing it for fun ever since. In high school, I joined the coding club, which introduced me to web development. (And during my last year of high school, I ended up being a leader of the club.) Since then, I have been exploring and learning more on my own time, through my university courses, and now on the job. I hope to make a difference in the world doing what I love.",
"ownProjects": [],
{},
"description": "An RGB light vest consisting of a WS2811 addressible LED strand and a raspberry pi. Controllable by an app on my watch written in javascript, through a server written with express.js in typecript running on a raspberry pi.",
"href": "https://gitlab.com/bruceblore/rgb-vest",
{},
"name": "Set Your Sites",
"description": "A chrome extension that uses a local language model to have a character of your choice yell at you for visiting time-wasting sites. Developed for nwhacks 2025",
"sourceHref": "https://github.com/dislasriv/nwHacks2025",
"devpostHref": "https://devpost.com/software/set-your-sites",
{},
"description": "A Python script to automatically generate class schedules in seconds given a list of classes, with the ability to configure things like minimum lunch break time and earliest and latest class times. Uses Beautifulsoup4 to scrape the classes from UBC’s website, then uses a search algorithm to find schedules matching the desired constraints.",
{},
"description": "A few new apps and slight modifications to existing apps for the Bangle.js, an open source smartwatch used by thousands of people.",
"sourceHref": "https://gitlab.com/bruceblore/BangleApps",
"appLoaderHref": "https://bruceblore.org/banglejs",
{},
"description": "A social media website written for CPSC 304, along with two other students. Supports multiple images per post and multiple authors per post. Makes heavy use of SQL queries to oracledb, from the backend written in Javascript using node and express.js.",
{},
"name": "Text Reminder",
"description": "A program to send SMS reminders, using node.js to interact with the Twilio API. Developed along with 3 other students for nwhacks 2023.",
"sourceHref": "https://github.com/emilyz18/Text-Reminder/",
"devpostHref": "https://devpost.com/software/text-reminder-vegs8z",
{},
"description": "A Wordle solver written in Java using a search algorithm to play Wordle games.",
"href": "https://gitlab.com/bruceblore/wordle-solver",
"contributedProjects": [],
{},
"name": "Waybar",
"projectDescription": "A system bar for wlroots based compositors:",
"projectHref": "https://github.com/Alexays/Waybar",
"contribution": "Improved battery level display to more accurately represent remaining energy on laptops with two batteries.",
"contributionHref": "https://github.com/Alexays/Waybar/pull/2134",
{},
"name": "postmarketOS",
"projectDescription": "A project to enable devices to be kept up to date for years by providing a modular proper Linux environment.",
"projectHref": "https://postmarketos.org",
"contribution": "Made configuration changes to enable my Galaxy Tab 2 10.1 to perform better and access more software.",
"contributionHref": "https://gitlab.com/postmarketOS/pmaports/-/commit/0bcd26fb0e9068538c672950f80c7d7675808c8e",
"links": [],
{},
"item": "Resume",
"href": "https://bruceblore.org/resume.pdf",
{},
"item": "Linkedin",
"href": "https://www.linkedin.com/in/bruce-blore/",
{},
"item": "Gitlab",
"note": "My main place for dumping personal stuff",
"href": "https://gitlab.com/bruceblore/",
{},
"item": "Github",
"note": "Mainly used for contributing to other projects",
"href": "https://github.com/bruceblore/",
"education": {},
"school": "Universiy of British Columbia",
"degree": "Bachelor of Science",
"major": "Computer Science",
"years": "2021 to 2025",
"myElectives": [],
{},
"courseCode": "CPSC 302",
"summary": "Numerical computation",
{},
"courseCode": "CPSC 304",
"summary": "Databases",
{},
"courseCode": "CPSC 317",
"summary": "Networking",
{},
"courseCode": "CPSC 322",
"summary": "Artificial intelligence",
{},
"courseCode": "CPSC 340",
"summary": "Machine learning algorithms",
{},
"courseCode": "CPSC 404",
"summary": "Databases",
{},
"courseCode": "CPSC 416",
"summary": "Distributed systems",
{},
"courseCode": "CPSC 418",
"summary": "Parallel processing",
{},
"courseCode": "CPSC 422",
"summary": "Artificial intelligence",
{},
"courseCode": "CPSC 425",
"summary": "Machine vision",
{},
"courseCode": "CPSC 436s",
"summary": "Cybersecurity",