Starting 100 Days of Code
As I try to get a bit creative and have fun with tech, I decided to start a 100 Days of Code challenge to jumpstart this solo journey. So, I wrote this article to publicly plan and document this challenge. Right now, I am thinking of doing (at least) two things as part of that challenge:
Write blog articles and learn, well… Clojure!
Why Blog?
You could read this article where I ramble on about past steps in my tech journey and what led me to start this blog. To put it short here, I needed to have some creative freedom to break the relatively dull job routine, and blogging seemed to be a very easy idea to get started right away, especially with Hashnode.
I could use the blog to document my learnings, like this challenge here. I could also use it to share helpful stuff with the community or just pour my thoughts (actually overthinking) about any tech- or data-related topic that interests me.
Why Clojure?
Clojure, like any functional language, is very obscure. It’s nowhere near JavaScript, Python, or even C/C++ in terms of popularity. So, why bother learning a language like that? Well, my friend…
First of all, I’m supposed to make this learning journey creative, so why not go weird and crazy with it? I mean it’s not the craziest way to go, but it’s crazy enough. Clojure is a Lisp-based, functional language, which should be a breath of fresh air given all the C-based, object-oriented languages we use.
(Side point: many people say that JS has FP because we do write functions and pass them to event handlers or high-order array methods, but others think it’s kinda like the meme where mom says “We have FP at home.” I’ll hopefully form a solid opinion on that when I learn some Clojure.)
The second reason is that it’s not completely new to me. I took some programming courses around 3-4 years ago on platforms like Coursera and edX. Two of my favorites were Programming Languages Part A, which taught FP basics using a language called Standard ML, and How to Code - Simple Data, which was using a Lisp language called Racket. Also, I did hack a little with Emacs Lisp for obvious reasons.
So, I liked FP, and I liked Lisp. Clojure has both. That’s it.
Conclusion
So, that pretty much summarizes what I intend to do in this 100 Days of Code challenge. I wouldn’t mind if other interesting stuff came up later, and I really hope the Clojure thing doesn’t blow up in my face…
Let’s go! 🚀