home
< Back to home

Projects


A few of the projects I've put together in my spare time

Jump to projects ↓

As a self-taught programmer, projects have always been my biggest tool for learning. Not having gone through formal education in computer science is both a blessing and a curse. On the one hand, it means I sometimes encounter gaps in my knowledge, but on the other hand it has taught me to be an active learner.

When you've never been obligated to sit through long lectures on data structures or compilers, your natural curiosity has space to grow. Similarly, when you're not graded on the quality of your work, it encourages you to undertake larger and more difficult projects.

I'll freely admit that only a small fraction of my projects ever reach something resembling a finished state. Once my curiosity is sated, I move quickly onto the next thing, often something radically different.

After five years of programming, I have noticed a few topics that I keep coming back to, namely:

  • parsers, compilers, and interpreters
  • programming language design
  • functional programming theory

I also find myself practicing the skills that I use professionally, like:

  • front-end frameworks
  • software architecture
  • API design