Michael Connor Buchan
Meticulous · Driven · Tenacious
I'm an enthusiastic University of Stirling Computing Science undergraduate by day, a passionate systems programmer and successful Open Source contributor by night.
I'm committed to using my skills to build technology that makes the world a better place for
Contact Me
- Email: mikey@blindcomputing.org
- Phone: +44 7572 814 659
- Web: thefake.vip
- Linkedin: linkedin.com/in/michael-buchan-011995298
- Github: github.com/mcb2003
Past Work Experience
Northern Education Trust
Classroom Assistent & Equality, Diversity, and Inclusion Ambassador - Sept. 2021 - May. 2022
References
Redacted for privacy reasonsQualifications
Currently Studying
BSc (Hons) Computing Science - University of Stirling (2022-2026)
A Levels
Computer Science | A* |
---|---|
Maths | A |
Physics | A |
GCSEs
BTEC Creative Media | D* |
---|---|
Computer Science, Physics, English Language, English Literature, Religious Education | 9 |
Maths | 8 |
Biology, Chemistry | 7 |
Design Technology (Product Design) | 6 |
My Projects
Odilia
A new
Cyal
Python bindings to the OpenAL 3D audio library, written in Cython
github.com/lower-elements/cyalLEGE
The Lower Elements Game Engine, an engine for building audio games
github.com/lower-elements/legeBlind Computing
A central resource for information related to assistive technology and accessibility of systems by the blind and visually impaired
blindcomputing.orgTechnical Skills
Systems Programming
- Developing a large C++ application (LEGE)
- Made many smaller projects with C
- Developing a large asynchronous Rust application for the Linux desktop (Odilia)
- Proficient in x86_64 assembly, including SIMD instruction sets
Scripting
- Made countless scripts in Python and Bash, such as md-toc-creator and ffstream
- Developed larger applications in Python, such as the Blirc self-voicing IRC client, and the Libraille app for braille transcription
- Familiar with many common Python libraries, including Pandas, Numpy, Pygame, and FastAPI
Web Development
- Developed many static sites with Hugo and the Bootstrap CSS framework
- Built a large PHP-based online game using MySQL and the Laravel framework (Mundistry)
Dev Ops
- Intimately familiar with git, including advanced topics like interactive rebase
- Made use of multiple code forges, including Github, Gitlab, and Sourcehut
- Used Github Actions to write continuous integration workflows for testing my projects where appropriate
- Implemented continuous deployment strategies to production VPSs and Github pages
- Maintained some small open source projects (Odilia, Cyal) and helped review and merge contributions
System Administration
- Administered several Linux servers that people depend on, including VPSs and my home server
- Proficient with Docker and Docker Compose for containerised applications, including building custom images
- Can configure secure HTTP sites and proxies with Nginx, Traefik, Acme clients, and Lets Encrypt
- Maintained ZFS storage pools and ZFS on Root
- Familiar with Linux distro components, including the kernel, its modules, Systemd, and package managers (apt, pacman)
Soft Skills
Adaptability
- I'm a problem solver, I learn very quickly, and have developed an intuition for code of almost any kind that lets me see problems and find bugs faster than most
- I'm proactive, I enjoy exploring new problem domains, languages, libraries and frameworks, and do so constantly in my free time
- This diverse technical knowledge has allowed me to tackle several, completely different problems, E.G. improving Linux accessibility with Odilia, and building optimised, idiomatic bindings to a complex audio library for developing audio games with Cyal
Efficiency
- I see the bigger picture when working on a project, and can abstract and decompose a large problem into many smaller, manageable tasks
- I strive for simplicity in design and implementation (code is read much more than it's written)
- I like to write fast programs using efficient algorithms and, where appropriate, hardware acceleration features such as SIMD instructions and GPU processing
- I make use of existing, well-known, secure libraries in my projects: SDL, OpenAL, and Lua in LEGE, and Tokio and Zbus in Odilia, for maximum compatibility and stability
Team Work
- I have worked with developers across the globe on free, open source projects (Odilia and Blind Computing), using many chat platforms: Discord, Matrix and IRC
- I have also contributed to FOSS projects maintained by others, such as creating C bindings for tts-rs
- I am the president (former secretary) of the University of Stirling Computer Club, and work with the USSC committee on a weekly basis, to plan, write, and deliver events and workshops
Leadership
- I'm a natural leader, and enjoy kick-starting and managing projects, like the former UOS AI society's fatial recognition project
- I love to teach interested people new technologies, and work with them to succinctly explain and digest concepts