This page is not created by, affiliated with, or supported by Slack Technologies, Inc.
2022-12-12
Channels
- # adventofcode (80)
- # announcements (11)
- # babashka-sci-dev (6)
- # beginners (52)
- # calva (144)
- # clj-kondo (28)
- # cljdoc (2)
- # cljs-dev (7)
- # clojure (120)
- # clojure-dev (28)
- # clojure-europe (36)
- # clojure-nl (1)
- # clojure-norway (16)
- # clojure-uk (3)
- # clojurescript (1)
- # cursive (4)
- # datomic (14)
- # figwheel-main (5)
- # fulcro (23)
- # hoplon (2)
- # hyperfiddle (46)
- # improve-getting-started (10)
- # jobs (1)
- # joyride (1)
- # leiningen (10)
- # malli (5)
- # nbb (5)
- # off-topic (21)
- # polylith (7)
- # portal (15)
- # practicalli (1)
- # rdf (18)
- # re-frame (3)
- # releases (2)
- # remote-jobs (5)
- # shadow-cljs (25)
- # spacemacs (4)
- # tools-deps (16)
- # tree-sitter (1)
Hi folks! What would be the best video demonstrating interactive development to somebody new to Clojure? 🙏 I have https://www.youtube.com/watch?v=oTy4JYY3CoQ but there surely is something even better?
I have published https://blog.jakubholy.net/2022/trinity-of-clojure/ to address a misconception of Clojure I often see in beginners. What do you think about it? Improvement suggestions? 🙏
Just to be perhaps slightly contrarian, but I think you can get the full benefit of the language with the language + interactive development, without taking advantage of structural editing.
It would seem strange to me to pressure someone to learn structural editing if they were getting along effectively without it.
I appreciate different opinions! I understand your point but I respectfully disagree. First of all, learning 4 shortcuts is a minimal investment of time, so even if it doesn't bring much benefit, you loose little. And I believe that editing a Lisp without it is truly pain. I have seen people try, getting parens wrong and wasting time trying to fix them again. It simply is considerably more efficient.
I agree with andy. SInitially, I tried to learn Clojure and Paredit at once, which slowed me down quite a bit. After looking at Clojurians I respect a lot, like and Sean Corfield and Nikita Prokopov write Clojure just fine without paredit, I got rid of paredit, and was fine. That said, I just installed Paredit again, so "editing a Lisp without it is truly pain" is something that I may think once I get used to it.
The "to pressure someone to learn structural editing" part is what I think we should somehow avoid.
@U883WCP5Z thank you for reading and sharing your experience! I would love to understand better why you struggled with structural editing 🙏
> I would love to understand better why you struggled with structural editing Well, it was just too many things to learn at once. I'm not at all saying one shouldn't learn it straightaway. But I do want to suggest things like Paredit (or Parinfer) in a way that doesn't make them feel they need to learn it. So, although I agree with your "You cannot get the full benefits of Clojure unless you embrace all three" going by the letters of the sentence, it doesn't feel right to say this to a beginner in-particular. In reality, when I learned Clojure, editor-connected-REPL plugins weren't nearly as polished as they are today in VS Code, Atom, Sublime, etc. And when I heard how writing Clojure without an editor-connected-REPL is almost a sin, and how one should never type into a REPL, and how structural-editing was essential, I downloaded emacs, of all things. I did make some progress this way, but with a lot of constant-friction. Eventually, I said "screw it" and focused solely on the first part of your trinity (i.e, the language), and it worked. I learned very quickly, and then added the "interactive" part soon after, (by using Atom with Chlorine). I never felt the need to get to the third part of the trinity (i.e, paredit), so I never did. TBH asking to learn 4 shortcuts doesn't seem like much, but when I tried to do so along with learning the language, it felt like my first few hours of learning to drive. Sorry for being ranty 🙂
Thank you for sharing! I should have highlighted that you need an editor with excellent Clojure support, which is beginner-friendly. So Cursive for IntelliJ users, Emacs for experienced Emacs users, or Calva for everyone else. Then I think the benefits truly outweigh the downsides. I have taught a Clojure intro workshop a few times and participants seemed to have managed with Paredit just fine there. Of course YMMV depending on the environment and maturity of tooling…