Hi, my name is
Matthew Moonen
I'm a programmer and Linux Server enthusiast with a background in research biology.
About Me
I have been passionate about technology for as long as I can remember and have been tinkering with Linux Server distributions for over a decade. As an avid photographer, I used my Linux Servers to host my growing library of images, which introduced me to various technologies, including Command Line Interfaces, Docker, SQL, and virtualization. Additionally, I was always mindful of best-practice security measures.
Starting in 2022, I fully immersed myself in various programming courses such as Harvard Online's CS50 series and FreeCodeCamp, where I gained poficiency in languages including C, Python, JavaScript, SQL, HTML and CSS, with a particular focus on Python. I am now enrolled to study a Master of Data Science part-time.
With new knowledge under my belt, I decided to rent a VPS and use my knowledge of Linux Server administration to create a website that showcases my programming skills.
My toolkit:
Portfolio Projects
Major Project - Learn German
Click Here
Introducing My Language Learning App
This personal project was a key motivation for me to learn programming. After studying German and working as an English teacher in Germany, I recognized that certain concepts, such as cases and declensions, were not effectively covered by existing gamified language-learning platforms, leading to difficulties for German learners. To address this gap, I aimed to create an app that could both fill these gaps and serve as a means for me to learn programming. Developing the app also requires knowledge of fundamental concepts such as frontend and backend development, security and authentication, data analysis, machine learning, algorithms, UI and UX design, scalability, and CI/CD.
Technology
The app queries a JSON API to retrieve lesson content. Lesson progress and score are handled via JavaScript in-browser. In future versions, the browser will return the user's results to the server.Future
Currently, the app has one lesson. More lesson content will be developed, and future versions will deliver personalized JSON lesson content based on the user's previous progress and results. I plan to optimise learning retention by using spaced repetition algorithms like the Leitner System.
Python Scripts
Recent Blog Posts
Contact
Please complete the form below to contact me
let you = "visitor";
greetings();
async function greetings() {
••console.log(`Welcome ${you}!`);
••await new Promise((resolve) => {
••••window.addEventListener("scroll", () => {
••••••const {
••••••••scrollTop,
••••••••scrollHeight,
••••••••clientHeight
••••••} = document.documentElement;
••••••if (scrollTop + clientHeight => scrollHeight) {
••••••••resolve();
••••••}
••••});
••});
••console.log(Thanks for stopping by ${me}\'s website!);
}