Cavan's Logo

Hey, I'm Cavan

I am a








About

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.

Projects

Can Chess, with Hexagons?

Can Chess, with Hexagons?

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 Project
Bitmap Encryption

Bitmap Encryption

This demonstrates XOR image encryption, which I was inspired to experiment with after researching various encryption algorithms.

Visit Project
Image to ASCII Character Mapping

Image to ASCII Character Mapping

I 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 Project
Chess

Chess

At 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 Project
3D Map of Colorado

3D Map of Colorado

Diving 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 Project
itscavanp.dev

itscavanp.dev

This 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.



Contact

Feel free to reach out to me! I can be reached at itscavanp.dev@gmail.com. I can be found elsewhere below.

GitHub Khan Academy Replit Stack Overflow YouTube