I’m a Clojure beginner and I want to learn more about using Clojure. To your surprise, I don’t have a Java background, no experience on Database and server programming either. I heard Clojure is a well-designed language with Functional programming stuffs. I like FP, I learnt some Haskell before, but Haskell is too hard for a programmer like me. I only write HTML/CSS/JavaScript after I got a job.

Learning Clojure is hard. I don’t have many friends in my city, which is Shanghai. So no one is going to teach me Clojure. I bought books about Clojure but still not finished reading it. For the most of the time, I just follow the guides and want to build small programs, like a simple Web server, like I did with Node.js before. Also I want to build command line tools, which helps me using Clojure in my daily works. I could do that in Node.js, but JavaScript is such a clumsy language compared with Clojure. I want to use Clojure for my works. However it’s so hard.

Clojure tools have docs, but they seem not prepared for me. I want guides, I want step by step logs how people finish they tasks. However I barely see that. Many projects in Clojure community comes with nice docs and READMEs, but they are not guides. I don’t have so many experience on, like Unix programming, Java programming, concurrent programming, most pieces in the docs are just hard to absorb for me being a beginner. I was taught that, “when you don’t know how to do it, Google it first” when I want started learning Linux. People in Linux groups shares a lot. Many times, I run into a problem, I would Google it, then I find someone explaining it on a forum, or in a blog. That’s very helpful. Although I don’t program Linux, I can get me job done somehow. I found far less results when Googling Clojure problems.

It doesn’t mean only very a few people are programming Clojure. I already found that out, there are a lot of Clojure programmers. So many of them. I see updates in Clojurians Slack channels everyday. And I see people answering all kinds of questions, some of them I can’t even understand. It’s fantastic that we can solve so many problems. But I always feel anxious. What if one day I want to ask the same question, can I get those answers immediately. What if that person is not there? I have no guarantees that I can find them. I always feel anxious.

So when I ask questions from Thomas Heller about ClojureScript, one important thing is, I want to make sure it’s written down somewhere that I could reach it. On Slack? No, stack logs are hard to read and hard to search. Sometimes things will go to shadow-cljs Wiki, that’s cool. But best way is I write down all things I know about the solution. Then when I need it next time, I open my blog and everything I need it there.

Somehow I want to urge people from Clojure community to do the same thing: write blogs, write down solutions. It’s not only serving one’s own need, but also others can find the blog and make use of those knowledge. In this way I would feel that the whole Clojure community is backing me up. Whatever problem I run into, someone in the community might have explored the problem and noted down solutions for that. I’m not going to alien areas by my own. I’m in a community and I can get help, even if no one in my timezone has spare time to answer my questions in realtime. But it’s written already that I can read and learn.

If you don’t have a blog, then ClojureVerse can provide you a markdown editor and a comment system. We can help you to share the blogs on Twitter so that more people will be aware of your work. You can have other platforms for blogging, Medium, HashNode, even GitHub issues. It’s not a problem to pick one. If you can finish that within 280 letters and 4 pictures, then just do it.

Please, I would need your knowledges on Clojure, please share them. And I would share mine too.