#1,280 in Computers & technology books
Use arrows to jump to the previous/next product

Reddit mentions of Web Development with Clojure: Build Bulletproof Web Apps with Less Code

Sentiment score: 2
Reddit mentions: 5

We found 5 Reddit mentions of Web Development with Clojure: Build Bulletproof Web Apps with Less Code. Here are the top ones.

Web Development with Clojure: Build Bulletproof Web Apps with Less Code
Buying options
View on Amazon.com
or
    Features:
  • Pragmatic Bookshelf
Specs:
Height9.25 Inches
Length7.5 Inches
Number of items1
Weight1.22577017672 Pounds
Width0.65 Inches

idea-bulb Interested in what Redditors like? Check out our Shuffle feature

Shuffle: random products popular on Reddit

Found 5 comments on Web Development with Clojure: Build Bulletproof Web Apps with Less Code:

u/yogthos · 19 pointsr/Clojure

In practice lots of companies of all sizes are using Clojure for web development today. The success stories on the official site are a good place to start to see what it's being used for. I work in the enterprise and my team moved from Java to Clojure over past 6 years. We couldn't be happier with our decision.

What practical examples are you looking for specifically?

I published a Web Development with Clojure book that specifically focuses on building web applications using the language.

There aren't any frameworks because the community hasn't found them to be of value so far. However, that doesn't imply that there isn't a mature web platform available for Clojure. Luminus is widely used. It couples a template for generating the boilerplate for typical applications with documentation on how to accomplish common tasks. There are other alternatives as well such as Yada and Pedestal.

In terms of libraries and ecosystem, here are a few examples:

  • compojure-api is a fantastic library for writing services
  • HugSQL is a library I use for database access, but there are lots of others such as Honey SQL.
  • you can use any Java logging library, I personally use logback. However, there's Timbre which is a Clojure centric logger.
  • buddy is a popular authentication and authorization library

    Polymorphism is supported in the language via multimethods and protocols.

    Libraries such as component and integrant are used for inversion of control. Meanwhile, mount provides a novel and automated way to manage resource lifecycle.

    My experience working with OOP for over a decade is that it does not deliver on its promises. Large OOP codebases end up tangled and difficult to maintain due to shared mutable state. These systems are hard to reason about and they're hard to test. Any time you come back to an old project, it's hard to tell whether a change you make will be isolated or it will affect another part of the application via side effects.

    I found that code reuse was difficult to accomplish in practice, and also rare. With a language like Java, you end up writing most of the logic in methods, and those are only usable within the context of a particular class. When you need a similar method in a different class, you can't reuse your existing code directly. This leads to a mess of adapter and wrapper patterns often seen in OO codebases.
u/DrUngood · 6 pointsr/Clojure

Web Development in Clojure, written by the author of this library, is also very good.

u/RodeoMonkey · 6 pointsr/Clojure

Yes, which is totally awesome BTW, and I think your book is a great place for people to start.

https://www.amazon.com/Web-Development-Clojure-Build-Bulletproof/dp/1680500821/

The question is, for a newbie interested in Clojure, how do we direct them to Luminus, or a similar set of beginner "blessed" libraries, as a definitive starting spot. To keep them from getting lost in the universe of alternative options. Basically every step of the process of getting started presents a beginner with options that they won't know how to answer until much later. Emacs or Cursive, Boot or Lein, Pedestal or Ring, Selmer or Enlive, Korma or Yesql, Om or Reagent.

What helped make Ruby and Rails easy to learn is those initial choices were pre-made. You were using Textmate, Rails (Rack, ActiveRecord, Prototype). Even though there were some bad choices, like Prototype as the default JS library, just by that choice being pre made it let you move forward into the learning. And by the time you built something, you knew enough to swap it out for JQuery, or whatever.