Dylan Carroll
Dylan Carroll

Programming

Experience

I first learned to program when I taught myself Python by following an online tutorial in middle school around 2015. I often programmed as a hobby and made simple console-based projects to mess around with programming.

In 2017, which was my sophomore year of high school, I enrolled in my first official computer-science course. The course was based in C# and the .net framework and introduced me to more structured programming practices and more advanced concepts. I continued to write mostly in Python for my hobby projects because I was still more comfortable with that language.

That same year, I learned how to write BASIC for my TI-84 plus mainly as a way to program in math class. I wrote simple games, math tools, and tech demos. Some of the programs I wrote include: Snake, a program that factors quadratics, and a Mandelbrot fractal renderer. This is not an important skill, but it was a fun part of the hobby to mess around in such a limited language with limited hardware and to see what I could get it to do.

In 2019 I began to teach myself C and C++ to familiarize myself with lower-level programming concepts, increase the number of languages knew, and gain access to a faster language for resource-heavy projects.

2019 was my freshman year at Western Washington University. I was accepted into the “Computer Science Distinguished Scholars Program" freshman year and was admitted into the computer science major in Winter Quarter 2020.

Having a few years of personal projects before beginning my has definitely helped me with my studies and I feel that I am a better and much more well-rounded programmer because of it. Since then, I have been learning a lot more interesting and advanced computer science topics in my courses that I have been able to apply to my hobby projects.


Personal projects

This is an incomplete list of my favorite projects that I have completed in my own time as a hobby. I am still working on documenting the rest of my projects. Most of them are just simple projects that I worked on out of curiosity, mainly to explore a new concept or idea.

Click on the titles for more details


Mandelbrot and Julia renderers

— C and C++

C and C++

Simple fractal rendering programs.



Command Line Calculator

— Python

Python

A simple yet powerful scientific calculator that exists only in the terminal.



Neural Network Driving

— Java and Processing 3

Java and Processing 3

A simple neural network trained with a genetic algorithm to race around a track.



Markov-Chain Text Generator

— Java

Java

A trained Markov-chain model that generates new text based on a training text.



3D Ray Tracing Engine

— Python

Python

A slow ray-tracer written in python to experiment with some math.



Perlin Noise Generator

— Python

Python

A Perlin noise generator written from scratch.



dylancarroll.net

— HTML, CSS, and Javascript

HTML, CSS, and Javascript

Woah, that's the page you're on right now!.