Dylan Carroll | ||||||||||||||||
Dylan Carroll |
|
|||||||||||||||
ProgrammingExperienceI 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 projectsThis 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
C and C++ Simple fractal rendering programs.
Python A simple yet powerful scientific calculator that exists only in the terminal.
Java and Processing 3 A simple neural network trained with a genetic algorithm to race around a track.
Java A trained Markov-chain model that generates new text based on a training text.
Python A slow ray-tracer written in python to experiment with some math.
Python A Perlin noise generator written from scratch.
HTML, CSS, and Javascript Woah, that's the page you're on right now!. |