<aside> ⚠️ Disclaimer: This document and anything here within is open to discussion. You may highlight elements and comment them, or you can use the comments section above this disclaimer. Please treat this tool as a resource to help you learn. If any part seems wrong, or you have strong opinions, let's discuss it.

</aside>

Intro

As you explore the cloud service codebase you might ask yourself, "Why Clojure?". That's a good question to ask, but unfortunately there is not a simple answer. While I can't make you enjoy Clojure as the engineering team at later-stage [Redacted] did, I'm hoping this guide will both answer the question and help you appreciate it.

Project Context

An important part of understanding why Clojure was chosen was understanding the constraints of the project.

Clojure is Different

<aside> 👨🏻‍💻 Learning Clojure can be challenging at first. Clojure is built with a different paradigm in mind and because of that it's not just a matter of learning syntax but instead challenges us to think about problems in a very different way. I can't imagine the type of engineer I would be at this point if I had not learned it, it changed a lot for me. Even if I am not working with Clojure I can still apply principles and lessons learned from it.

From reading this guide you may not prefer Clojure, you may not like Clojure. That's ok, we all have different technologies and tools that we work better with. I am aiming for you to come out of this understanding why I was enthusiastic about it, and why I'm still excited about it.

</aside>

Understanding Clojure