![](/static/253f0d9b/assets/icons/icon-96x96.png)
![](https://infosec.pub/api/v3/image_proxy?url=https%3A%2F%2Fprogramming.dev%2Fpictrs%2Fimage%2Ff312679d-da36-4020-a1bf-90d480c6f4d0.png)
I originally got into FP through university. We used HUGS (haskell variant) and the things that really drew me in were the concepts of laziness, and non-shared state. At the time I only had experience with imperative languages, but could see the benefits in terms of scalability (network computing) through the immutable data structures, and having a “pull” style mechanism for consuming sequences, delaying computation until it was actually required.
I dropped FP after that course, and for around next 10 years only did imperative programming. Then Clojure came on my radar via Overtone, and I’ve been into FP again ever since. Wanting to make music with code really drove me to learn clojure.
We have a clustered/load balanced application and do zero downtime deployments with elastic beanstalk on aws. I’m uncertain as to how popular elastic beanstalk is, but it makes managing this sort of stuff really easy.