My passion for technology and programming began in the earliest days of my learning, when I first sat down with C and C++. Those languages taught me the fundamentals of how computers actually work (memory, logic, and control). One of my first real projects was a basic cashier application that ran in a classic MS-DOS interface. It was simple by today’s standards: text-based menus, keyboard input, and straightforward calculations for totals and change. Yet building that little program gave me a profound sense of possibility. I could tell a machine what to do and watch it respond. That early experience in the stark, no-frills world of DOS ignited a curiosity that has never faded.
As my skills grew, so did the ambition of the projects I took on. During my university years I chose Java for my senior project and created a Hare and Tortoise racing game. The classic fable became an interactive simulation where players could watch the race unfold, adjust variables, and see how strategy and chance played out on the screen. Working in Java introduced me to object-oriented design, event handling, and the satisfaction of turning an abstract idea into something playful and complete. That project remains one of my favorite memories because it showed me how programming could bring stories and ideas to life.
Alongside the languages themselves, I deepened my understanding of data through formal courses in databases, including Microsoft SQL. Learning how to design schemas, write efficient queries, and manage relationships between tables taught me that good software is rarely just about the interface; it is about the solid foundation of information underneath. Those skills have stayed with me through every subsequent project, reminding me that elegant code still needs reliable data to be useful.
Over the years I have continued expanding my toolkit with genuine enthusiasm. JavaScript and HTML opened the door to the web; Angular gave me the structure to build more sophisticated front-end applications; and the .NET ecosystem showed me the power of a mature, integrated platform for enterprise-grade solutions. Each new language or framework felt less like a chore and more like adding another instrument to an orchestra I was learning to conduct. The variety itself became part of the joy discovering different ways of thinking and solving problems.
Most recently, artificial intelligence has become a central part of both my professional work and personal exploration. I have been learning how to use AI models and agents to accelerate application development and to debug code more effectively, turning what used to be long troubleshooting sessions into faster, more insightful conversations with intelligent tools. At the same time, I am deliberately diving into building and running local large language models. Hosting these models myself lets me support personal projects without constantly paying for remote tokens (an inevitable cost that local solutions can meaningfully reduce). This latest chapter feels like a natural continuation of the same curiosity that started with a DOS cashier: the desire to understand the tools deeply enough to shape them for my own purposes, and to keep growing with the technology that continues to reshape what is possible.