IT student, systems-curious programmer, and builder of small tools,
typed Luau projects, game systems, and workflows that make code easier
to reason about.
this site is better experienced on desktop
open a folder to explore!
about
Tommy
systems programming · computer science
Hi, my name is Thomas, aka Qxshio. I'm a first year IT student from Ireland,
where my ambitions are Computer Science at university, Mathematics,
and Systems Programming. You can reach me via the contact page, or
find me tinkering on my
.
I consider myself a pretty fast typer at 130wpm in combination with
keyboard-centric computer interaction streamlined by my (yes I use
btw). Outside of programming, I like learning about the universe and the patterns
behind human behaviour. Space, time, consciousness, decision-making, motivation, and
why people become who they are all sit in the same part of my brain: big systems with
hidden rules. I enjoy studying those rules, connecting ideas across science and psychology,
and slowly building a better model of how reality and people work.
When I'm not programming or studying, I really enjoy Jogging and weight training. There
is something about the rhythm of running ... the steady breath, the sound of each step, and
the runner's high that cleans your mind, helping you reset. Weight training gives me a different
kind of focus. It takes time to build progress through consistency and dedication.
Discovering the ideal training program, ideal time-under-tension, and nutritional requirements
is exhilarating. They both provide me with opportunities to escape from screens and push my body
to its limits. In turn, I come back refreshed and motivated.
STM32 Nucleo Microcontroller
embedded systems · hardware experiments · low-level programming
The STM32 Nucleo is a development board family built around STM32 microcontrollers. I use it as a
practical way to learn how software talks to physical hardware: pins, timers, interrupts, registers,
serial output, sensors, and the small details that make embedded code feel very different from normal
desktop programming.
Embedded programming is super enjoyable, as you get to directly correlate source code
directly to physical stimuli. It also enabled me to fine-tune micro-optimizations which
is a good mindset to have in any workflow.
GPIO experimentstimers and interruptsserial debuggingC / embedded C
My Neovim Config
tooling · ricing · workflow
If I was on "My Strange Addictions", deleting and revamping my Neovim config
would be my addiction.
My Neovim config is a perfect case of how I want to employ my tools.
Not only as just software, but also a platform on which I can shape
it according to my preferences, till it becomes something that belongs to me.
Consistency in terms of visual aspects plays a crucial role in setting up my
workspace: be it editor, terminal, status line, borders, transparency,
file browser, or syntax coloring. It's not about achieving an appealing
setup (even though that's half the battle), but about crafting a smooth and
sleek workspace each time I use it.
The configuration is written in Lua, which thankfully I'm familiar with,
and structured around Lazy.nvim, which lets me keep plugins organised as small,
readable configuration files instead of one huge tangled setup. It's useful for me to
configure different aspects of my editor that provide completeness to it, such as navigation,
file tree view, fuzzy search, syntax coloring, LSP, autocompletion, code formatting,
status bar interface, and theming behavior. With Lazy, the configuration process feels
highly modular, where each plugin serves its purpose, has its options, keybindings, and
load order, which helps in maintaining editor speed and heavy customization. I also
found it very enjoyable creating a file system layout for all of my plugins.
My keyboard uses the nice!nano v2 microcontroller unit, which I flashed with ZMK firmware, in addition to Memory-in-Pixel displays.
Both splits are powered by 3.7V 401230 120mAh LiPo batteries that are rechargable
and most importantly lightweight. I'm using Choc v1 Kailh Brown tactile switches as they give me a mix
of low operating force with the nice tactile feeling I'd get from a Macbook. I use a 3D printed case to contrast
the white keycaps I have on it.
I had a lot of fun building and soldering this keyboard. Coming from a 75% QWERTY staggered layout keyboard (which I spent too much money on to sound good),
it was so refreshing switching to this ergonomic split. I was sold by the fact we've always been using the same standard that was used in the typewriter era,
even though the way we use computers has completely changed since then. This keyboard has made my workflow feel more comfortable. Having each half positioned naturally
at shoulder width makes long sessions feel less cramped, and using layers for symbols, navigation and shortcuts has made me think about typing less as "pressing keys" but moreso
controller my setup efficiently.
The biggest change in this layout was learning to rely on layers as opposed to reaching across a full-size keyboard.
At first it felt slower, but once the layout started to become muscle memory, common actions like moving around text, using shortcuts and symbols became much more fluid.
It also made me appreciate how much thought goes into input devices. Small details like switch weight,
thumb key placement, wireless reliability through bluetooth, battery size and case height all affect how
natural the keyboards feels, especially during long programming sessions. Building it myself made the final product
feel a lot more personal, because every part of it was chosen for a reason than just accepting features as the default.
workflowhardwareergonomicskeyboard-first setup
work
Accepting work offers via my work email!I do web dev, web design, game development, app development and DevOps!email me
FEATURES nit-picked systems from projects
PROJECTS ongoing and completed software
toolbox
toolbox
Luau
C
JavaScript
TypeScript
HTML/CSS
Git
CLI Workflows
Project Management
These are the tools I am most proficient with. I couldn't add every single tool here,
otherwise you'd be scrolling all day, heh. If you have any questions about my proficiency,
please do contact me.
This website and its original design, code, written content, graphics, animations,
interactive features, and overall presentation are protected by copyright law.
Copying, redistributing, republishing, modifying, or reusing substantial parts
of this website without permission may be copyright infringement. This includes
cloning the site, changing the text or project data, altering the colours, or
making small design changes while still using the original work as the base.
If copyright is violated, the owner may request removal of the copied material,
submit takedown notices to hosting providers, platforms, or search engines, and
take legal action where appropriate. Legal consequences can include an injunction,
damages, legal costs, and the removal or disabling of infringing content.
If you'd like to use parts of this website as inspiration and are unsure,
please contact me at hello@qxshio.com for guidance.