Clojure in production: what do we use in real-world services?

  Рет қаралды 8,332

Andrey Fadeev

Andrey Fadeev

Күн бұрын

Пікірлер: 43
@andrey.fadeev
@andrey.fadeev Жыл бұрын
If you liked this video and want to support my channel, please consider buying me a coffee ☕. Your contribution helps me create more content like this. You can donate at: 👉 Ko-fi: ko-fi.com/andreyfadeev 👉 Buy Me a Coffee: www.buymeacoffee.com/andrey.fadeev I'm truly grateful for your support, and thank you for watching! 🙏
@germandiagogomez
@germandiagogomez 15 күн бұрын
This is not for everyone but I can say that your stuff is deep, insightful and useful as a person in software industry for 15 years.
@andrey.fadeev
@andrey.fadeev 15 күн бұрын
Thanks, that's the best feedback :)
@johnoerter2725
@johnoerter2725 Жыл бұрын
This content on starting new projects in Clojure is so badly needed, and you did a great job. Thank you!
@andrey.fadeev
@andrey.fadeev Жыл бұрын
Glad it was helpful!
@joakim57
@joakim57 Жыл бұрын
Great video, we need more stuff like this, providing somewhat of a "paved path" for newcomers. Learning Clojure can be demanding enough to do in your evenings if you don't have the luxury of doing it as a day job, and having to explore what libraries are safe to invest time in on top of that is a big ask. I agree with what some of the others have said; having names/links for the projects being discussed on the screen would be nice too. Good work!
@andrey.fadeev
@andrey.fadeev Жыл бұрын
Hi, thanks for the comment! Agree about the names of the libraries, that was one of my first attempts to record a video so it's far from ideal. I've covered most of the libraries in my other videos and will do more soon!
@blemberger
@blemberger 6 ай бұрын
Thanks!
@DanielHorrisberger
@DanielHorrisberger Жыл бұрын
Hi Andrew! Learning clojure with you.
@andrey.fadeev
@andrey.fadeev Жыл бұрын
Hi, nice - hope you'll have fun with the language!
@blindender9979
@blindender9979 Жыл бұрын
Clojure is too good to be true, i love it, wish the language come to be main stream (as python, js etc)
@LucasBatistussi
@LucasBatistussi Жыл бұрын
Way better than Python
@denislutov6216
@denislutov6216 Жыл бұрын
This is one of the best closure materials out there!
@Binbulsha
@Binbulsha Жыл бұрын
Thank you, this is really helpful. Please make more practical clojure tutorials.
@andrey.fadeev
@andrey.fadeev Жыл бұрын
Thanks for the comment! Doing my best :)
@AndresMoreno-xe7mb
@AndresMoreno-xe7mb Жыл бұрын
Thank you Andrey! Please keep creating this content!
@Surf_Cat
@Surf_Cat Жыл бұрын
Well made video nice that it's in context of production with tips and concrete examples. Currently working on converting CI and kafka related stuff to babashka it's really nice.
@RobertLJ11
@RobertLJ11 Жыл бұрын
Thak you for the video. I just found your videos and will be checking them out. Thanks for sharing you knoledeg with us. 😊🎉
@cswaroop2
@cswaroop2 Жыл бұрын
Thank you for sharing your great experience. Any template project by assembling all the goodies perhaps a real-world TODO app?
@andrey.fadeev
@andrey.fadeev Жыл бұрын
Hi, thanks for watching! Regarding the template, we are literally building it right now on the channel, first part is already uploaded, second one will be uploaded today, also in the description you can find a link to GitHub repo were I push all changes done during those tutorials!
@ActualJosiahPreston
@ActualJosiahPreston Жыл бұрын
Thanks! Getting started so this is perfect
@ericanderson3879
@ericanderson3879 Жыл бұрын
please put all names of libraries on screen to overcome difficulties hearing. thanks for doing these intro videos.
@Maaruks
@Maaruks Жыл бұрын
awesome
@maxreuv
@maxreuv Жыл бұрын
Glad I subscribed
@jeffreyjflim
@jeffreyjflim 10 ай бұрын
hi, I recently came across kit-clj. What are your thoughts on it?
@andrey.fadeev
@andrey.fadeev 10 ай бұрын
Hi, I think it's not bad if you want to use a framework, there is also Biff. The thing about kit that I don't like is that it's using Selmer for HTML templating by default and also follow unnecessary complex structure for namespaces (eg controllers etc) I usually just prefer to create my own simple templates and at work, we just have a template for our backend services that evolves over time.
@ceigey-au
@ceigey-au Жыл бұрын
What's the package name at roughly 8:20? I thought it was "JT" but I couldn't find something by that name that looked relevant. EDIT: Ah I'm silly, it's Jetty... you can tell I haven't done enough JVM dev recently!
@andrey.fadeev
@andrey.fadeev Жыл бұрын
yeah, Jetty :)
@ΔημήτριοςΦκιαράς
@ΔημήτριοςΦκιαράς Жыл бұрын
Hello, very good content! I think it would be great if you took each part of the system you described and made a tutorial for that.
@andrey.fadeev
@andrey.fadeev Жыл бұрын
Hi, first of all, thanks for watching and commenting 👍 That's the first comment ever on my channel 😄 Yeah, I totally agree - the plan is to cover all the commonly used libraries with tutorials - and at the end combine them into a big video showing how to build a real-world application (simplified) with Clojure. So stay tuned!
@ΔημήτριοςΦκιαράς
@ΔημήτριοςΦκιαράς Жыл бұрын
@@andrey.fadeev My honour. Your timing is perfect for me! I am studying clojure and just finding my way through integrant, reinit, aero etc
Жыл бұрын
❤ You missed logs and testing.
@himanshutripathi7441
@himanshutripathi7441 11 ай бұрын
Thank you
@josevargas686
@josevargas686 Жыл бұрын
Hello! Mount is great, it does way more than just defining an order to start services, it lets you control the starting and the stopping of services during REPL development. It has nothing to do with global state as you mention, any `def` or `atom` is a very easy way of introducing global state into Clojure, nothing is stopping the developers from using those...
@andrey.fadeev
@andrey.fadeev Жыл бұрын
Integrant and component can start/stop the system (part of the system) in the REPL. If an atom is used as a global state it's usually a bad code and shouldn't be allowed. My problem with mount is that by design it introduced a global state in many namespaces and immediately makes a lot of functions not pure - making further refactoring a nightmare (from personal experience). But anyway, if it works for you that's great.
@Simon-xi8tb
@Simon-xi8tb 25 күн бұрын
How do you even get a Clojure job. Need lots of luck probably.
@andrey.fadeev
@andrey.fadeev 25 күн бұрын
Nowadays, getting any job is not easy, in some ways the niche languages are in better state as it's less affected :) But I agree, in some locations there are no Clojure jobs at all, in others it's a tiny amount of companies to choose from. But who is looking and interested - will probably find eventually.
@TPITEOTG
@TPITEOTG 9 ай бұрын
With all my respect to Clojure community I cannot Imagine Java having similar video mentioning good and bad frameworks 😅 I know some “bad” in Java: Struts, Liferay Portal, WebSphere, and even Akka (because of their licensing). But all listed are used in production by huge companies, including uglies hippo called Liferay.
@andrey.fadeev
@andrey.fadeev 9 ай бұрын
not sure ive got the idea fully
@TPITEOTG
@TPITEOTG 9 ай бұрын
@@andrey.fadeev I mean, can you imagine in Java world we will be discussing "do not use Hibernate, use iBatis instead", or, for example, "stop using Struts, use Spring Boot", or "use Vert.x, don't use Akka" - they are all good frameworks, and each has its' applicability. My main viewpoint was this: can you list 5-10 bad frameworks in Java which you don't recommend to use in production? I know one framework: SWING for desktop applications (use Eclipse instead). Hard to find more... maybe only most of Java internals, such as java.net.* classes (URLConnection), Executor framework, and so on. So I am laughing (as a Java developer learning Clojure)...
@andrey.fadeev
@andrey.fadeev 9 ай бұрын
@@TPITEOTG yeah, I can easily do that xD Hibernate will be at the top of the list :)
@TPITEOTG
@TPITEOTG 9 ай бұрын
@@andrey.fadeev +JMS, +JSP, +Portlets, and, of course, Stateful & Stateless EJBs, and big heavy gorillas such as XYZ Application Server and so on. But all listed are in heavy use in production, and even power widgets & modules built in Clojure ;) Yes, I can put Hibernate and others listed on top, but those are "legacy" frameworks, they were best at the time of invention; comparison is unfair. In Clojure, you are comparing similar-by-age frameworks.
@TPITEOTG
@TPITEOTG 9 ай бұрын
@@andrey.fadeev - Anyway, Java times come to the end... don't use Java for new projects ;)
Malli getting started - best library to work with schemas in Clojure
24:34
Хаги Ваги говорит разными голосами
0:22
Фани Хани
Рет қаралды 2,2 МЛН
Why Clojure? - Derek Slager
41:59
ClojureTV
Рет қаралды 62 М.
Deep dive into Clojure HTTP Basics: Ring, Compojure, Jetty!
27:37
Andrey Fadeev
Рет қаралды 4,4 М.
Clojure: A live Demonstration of Simplicity That is Production Ready - Nir Rubinstein
45:39
Self host Browserless on Coolify
12:01
Self-Host Everything
Рет қаралды 554
In Search of Code Purity
16:37
No Boilerplate
Рет қаралды 101 М.
How startups can move fast with Clojure (by Bradford Cross)
27:34
London Clojurians
Рет қаралды 8 М.
A History of Clojure by Rich Hickey with Q&A
1:07:02
Visas Meilas
Рет қаралды 32 М.
Solving Problems the Clojure Way - Rafal Dittwald
1:02:26
Clojure/north
Рет қаралды 76 М.