10 ms·
My entire business is built on Clojure and ClojureScript, and it would not have been possible without these languages. I am always slightly worried by this kind
by jwr 6y ago
My entire business is built on Clojure and ClojureScript, and it would not have been possible without these languages. I am always slightly worried by this kind of news, because it means that the main Clojure team is now dependent on a single institution. But it could be good news as well, depending on how things go.
Until now, I've been getting nothing but excellence from the Clojure team: not just great tools, but also great thinking behind them. I appreciate what I've gotten (for free!) until now, and hope that the trend will continue :-)
- jonahbenton 6y agoWould love to hear what you learn from engaging on any expectations you have for roadmap. I wrote separately that I see a bright (very bright, complete game changer) future for the toolchain in finance, but finance is a special ecosystem where general purpose languages with goofy syntax become niche- sometimes very large niche, but still niche.
- jwr 6y agoNiche is fine. I don't know why people are obsessed with languages becoming dominant, or enjoy calling languages "dead". I don't need everyone to use Clojure. In fact, I'd rather prefer that my competitors use something else, because it gives me an edge over them. I don't have "expectations", I think "hopes" is a better word here. I hope to continue to profit from the core team's thinking and be able to use the tools they create and ideas they generate.
- randompwd 6y agoI mean, that may be true to a point in the long run/true outside of webdev. But the dev who intimately knows Spring & Java/Kotlin is gonna be far ahead of you for the first 9 months, given that there's so much out of the box functionality. They'll be going through a nice paint by numbers scenario for most of the heavy lifting whilst you have to expound effort in creating what's done.
- lukashrb 6y agoInteresting view. What are the 'out of the box functionalities' which Clojure is lacking? Keep in mind Clojure provides Java interop and with clojurescript js interop. The clojure ecosystem has also pretty great libraries to work with. For example take a look at fulcro or re-frame, also metosin works on some really great libraries and there is much more.
- dkersten 6y ago> What are the 'out of the box functionalities' which Clojure is lacking? None, because for anything Clojure doesn't have, you just lean on the JVM (or JS for Clojurescript). Sure, the syntax isn't as pretty and there are some abstraction mismatches, but in my experience, you create thin wrappers to hide this and move on.
- mping 6y agoI can tell you what I miss: really good error messages :)
- slifin 6y agoClojureScript with shadow-cljs has really good error messages Clojure's errors require getting used to because they can be verbose but the patterns emerge after some use, that said most beginner errors can be caught before runtime with clj-kondo
- lukashrb 6y agoTouché :D, but to be fair the Clojure-Team (i guess Alex mostly) put a lot effort in it to improve the situation.
- slifin 6y agoIf what you're comfortable with is Spring or Drupal or Rails and those work for your use case then more power to you At the same time it's true there are products like roam research that are fundamentally harder to achieve in a cookie cutter environment This talk kind of eludes to why that is https://youtu.be/rI8tNMsozo0 https://youtu.be/rI8tNMsozo0 but it's worth learning there's many mature pieces of tech in this community that are astounding If you need boring.lib then reach into Java/JavaScript with the easiest interop I've ever used
- dustingetz 6y agoPlatform war phenomenon (like Xbox vs Playstation) emerge from winner-take-most effects with a high upfront investment, so you want to make sure you pick a winner and then once invested you want to help them win. A good example of what happens when you lose is the Nintendo Wii U which had like 8 games made for it.
- phrygian 6y agoI suppose a question for you would be how has your business supported clojure(script)? It seems to me to be a case of a business that has benefited from clojure - and wants to be invested in its future - doing something about it. It cost something to provide what you built your business on :)
- jwr 6y agoA while ago I started to set aside an R&D budget that goes towards developers writing open source, specifically Clojure and ClojureScript libraries, and tools like magit or CIDER. The amounts are still small (this is not an enterprise business), but I'm increasing them regularly. I want to see a stable, long-term ecosystem with maintainers that are getting paid for their work.
- dkersten 6y agoI am about to (next two or three months) launch a company/product that is heavily built on Clojure(script) too and I was actually thinking about this exact thing just this week! There are a number of libraries that I rely on that I would love to give back to, both as a thanks for the work so far, and to fund future development. I'm not in a position to do so yet, but its something I very strongly hope to do in the not-too-distant future, if things go generally well.
- d_t_w 6y agoI founded operatr.io. Our product, static site, and licensing systems are entirely built in CLJ/CLJS. JVM, brower, lambda, etc. Like JWR I feel there's absolutely zero chance we could have built this product as effectively in my previous primary JVM languages. Clojure is just a better toolset, no comparison. We recently enquired with Github about sponsoring as an organisation (rather than me using my personal account) and have been added to the waitlist for the alpha of organisation-sponsoring. Once that starts we'll contribute financially to the developers in our space who enable our business. Also as a habit I send personal emails to open source contributors simply to thank them in person. Good luck with your launch! P.s. I'm very excited for the team at Cognitect. It's hard to start a consultancy, hard to launch a product, there are no guarantees of success, and they deserve all of it.
- swyx 6y agowhat was your decision process leading to bet on Clojure?
- jwr 6y agoI used to enjoy programming in Common Lisp, then saw a talk by Rich Hickey which intrigued me. I gave Clojure a try (this was about 8 years ago I think) and (much to my surprise) it turned out it works really well. It also turned out that a coherent concurrency story is important, and that programming with mutable data is not a very good idea after all, so I abandoned CL completely. Over the years, I got many fantastic gifts: ClojureScript, transducers, core.async, spec — and more. I'm very happy with the choice. I also think my business would not have been possible without Clojure and ClojureScript: the leverage I have because of them lets me run a single-founder self-funded business.
- nathell 6y agoThat’d have been 11 years ago. I know because my earliest Clojure project on GitHub hearkens back to July 2009, and I jumped onto the bandwagon after hearing enthusiastic opinions of yours. Not sure whether I ever had the opportunity to properly thank you, but let me say so now. Thank you, jwr.
- jacobsmith1984 6y ago"My entire business is built on Clojure and ClojureScript, and it would not have been possible without these languages." No company depends any new language to succeed, depends on customers.
- finnjohnsen2 6y agoI would rephrase and ask why he claim his business would not exists without Clojure/ClojureScript :)
- Scarbutt 6y agoYeah, seems like a cultish thing to say.
- jwr 6y agoIt's very simple: it's a solo-founder business. I would not have been able to tackle the complexity of modeling the problem domain, writing server-side code, writing client-side code, and maintaining the whole thing. I would have needed a team, and this SaaS has a growth curve (line, to be precise), which isn't fast enough to get to a team quickly. This particular business really would not be possible without the reduction in incidental complexity that Clojure+ClojureScript brought.
- Tostino 6y agoI feel like this is just being pedantic. obviously business is nothing without its customers, however it's also nothing without something to sell.
- bishalb 6y agoWhich could definitely have been built using other languages had clojure never existed.
- riku_iki 6y ago> it would not have been possible without these languages What critical features Clojure has, which don't exist in other platforms/languages?
- dustingetz 6y agoLisp + immutability is the right foundation for symbolic/logic programming, datalog, declarative programming, graph programming. None of this is really feasible in other langs due to bad ergonomics and no coordinated ecosystem buyin. Haskell lacks platform portability and Scala 2 is just too complicated to think clearly about anything high level.
- sitkack 6y agoTake a look at Elixir, it has metaprogramming and immutability while gaining the robustness and distribution that the Beam (Erlang VM) gives you.
- andrenth 6y agoFor the Beam there’s also Clojerl https://github.com/clojerl/clojerl https://github.com/clojerl/clojerl
- sitkack 6y agoI am astounded by the abundance of languages on the Beam, Gleam, LFE, Purerl, Lua and possibly many more. Have you seen Lumen, a Beam implementation in Rust that targets Wasm? https://github.com/lumen/lumen https://github.com/lumen/lumen
- andrenth 6y agoI had heard of it but never tried to use it. I hope at least some of those languages get enough adoption to become viable production choices. I feel, apart from Elixir, Gleam has the most “popularity potential” right now.