It's awesome that David Nolan compares the idiomatic ClojureScript state management that uses regular immutable data structures with the "Redux" philosophy from the domain of other programming languages. Of course it originally started in React and continues to be pretty much the most popular Flux implementation. He also notes that Redux actually was inspired by the Elm language's state management system, which is also built on immutable, persistent data structures! Even in OOP Angular land I've been using Redux (more specifically, ngrx/store). Although Redux does have a learning curve to it and may seem overly complex to beginners, I'm seeing more and more top developers in across almost all front-end languages gravitating towards Redux-esque patterns and libraries. The key is the Redux flow of data and the immutable, persistent data structures!
David Nolan tries to address the common argument against using ClojureScript in the workplace that it is too risky. He notes that ClojureScript is actually 5+ years old, it's actively being worked on, and it's not going anywhere. People who like Clojure love Clojure, and the tough part is really just getting over the initial "omg, that's weird!" speedbump right in the beginning. The thing is that some people just don't want to learn new technologies. They don't want to learn Clojure and just want to stay in their comfort zones. Of course I'm not like that, but sometimes you need to be a team player and don't have the luxury of telling people to either get with it or get out. At the same time, how do you find skilled ClojureScript devs? It's a catch 22 that's getting better, and I think the key is to try to just surround yourself by other people who love what you love, whether it's ClojureScript, TypeScript, React, or Angular.
He ends by saying that anyone can help out with ClojureScript and contribute on Github, and he mentions that one great way to do this is by helping out on the website clojurescript.org. I'm definitely going to see if I can dig into this codebase (I'm assuming it's in ClojureScript) and see if I can add something useful. I definitely want to get more involved in the ClojureScript community. Especially since I'm based in NYC and David Nolan lives in Brooklyn, I'm hoping that the New York ClojureScript community will get stronger and stronger. Go Clojure!
The posts on this site are written and maintained by Jim Lynch. About Jim...