Hey, I'm Cavan
I am a
Hello! My name is Cavan. I'm 23 years old, and graduated with a Bachelor's
degree in Computer Science in December of 2023. With a strong foundation in Python and JavaScript, complemented
by familiarity with Ruby, C, C++, C#, Java, Kotlin, Swift, and even AVR and ARMv8 Assembly languages, I'm well
equipped to tackle diverse software engineering challenges. My academic journey has been a blend of rigorous
learning and practical application, culminating in a deep understanding of both theoretical and applied
aspects of computing. When I'm not at my desk writing code, I may be found playing chess, mountain biking,
or tinkering with various electronics. As of recently I've been enjoying going for rides on my motorcycle.
Around the age of 12, I discovered the joys of programming through Khan Academy's
PJS environment. From there, I embarked on a journey of creative exploration and technical development. All of my Khan
Academy projects can be found here.
Below, you'll find a curated selection of my favorite projects, each reflecting key milestones and skills I've acquired along the way.
I'm always eager to learn more about anything relating to programming, computers, or electronics in general.
Combining my interests with chess and programming, I created a version of hexagonal chess commonly known as Gliński's variant. Though still a work in progress, I do have the small rules (such as en passant) implemented, and it even features a computer opponent to play against. I created the frontend using JavaScript, and information is sent to a Python backend to process legal moves. The code can be viewed on my GitHub.
Visit ProjectThis demonstrates XOR image encryption, which I was inspired to experiment with after researching various encryption algorithms.
Visit ProjectI developed an algorithm to map an image's grayscale values to ASCII characters based on pixel density. Darker areas are represented by characters with fewer pixels, while lighter areas use more pixel-dense characters, ensuring a precise and nuanced translation into ASCII art.
Visit ProjectAt the beginning of 2020, I made my first attempts at making a chess game, with hopes of eventually turning it into an engine. While I never got around to making the engine portion, I did manage to build my first functioning chess game, complete with legal moves. This project was built using HTML and JavaScript.
Visit ProjectDiving into the world of 3D graphics, I performed some experiments with real-world data. Using various API endpoints, I generated a grid with latitude and longitude values to map the state's topography, then located cities accurately on this mesh. Additionally, I displayed each city's current temperature by varying the color of their corresponding points on the map. This project was completed using Three.JS. While I have since deactivated the API keys necessary to run the project, my code can be viewed on my GitHub.
Visit ProjectThis portfolio exemplifies my skills in software engineering and web design. It features a responsive design, dynamic elements, and showcases my projects and educational journey. The site itself was also a chance for me to continue learning - it was built from scratch utilizing the Next.JS web framework and is hosted on Heroku.
Feel free to reach out to me! I can be reached at
itscavanp.dev@gmail.com. I can be found elsewhere below.