An Architect's View

CFML, Clojure, Software Design, Frameworks and more...

An Architect's View

Entries for month: April 2013

Clojure in the Enterprise?

April 16, 2013 ·

A question was recently asked on the Clojure Users group on LinkedIn about reasons to migrate to Clojure for enterprise applications in a Java shop. It's a fairly typical question from people in the Java world when they hear the buzz about Clojure, and of course asking the question on a Clojure group garnered a lot of positive responses about why Clojure is a good choice. I didn't feel anyone had really addressed a core aspect of the original question which was, essentially, "Why should I, as a Java web developer, using JPA, JSF etc, choose Clojure instead for an enterprise application?". The key considerations here are "enterprise application" and "Java web devloper, using JPA, JSF etc". Clojure is rightly praised for big data projects, simplified concurrency due to immutable data, and the conciseness of its solutions. The general advice when introducing Clojure to an organization is to take a grass roots approach: use it for some tooling first, or a small low-risk (but perhaps high-profile) project and show how well it works in a Java-dominated world. Then you get more and more developers trying it out and gradually the organization adopts it for more and more projects. It's good advice, and it's often how Clojure has crept into Java shops so far (as opposed to those fast-moving small shops that already have a tendency toward polyglot development).

I didn't feel anyone had really talked about how radical Clojure seems to a conservative "enterprise" company that's already bought into the Java way of doing things from top-to-bottom (as indicated by the original poster's references to JPA and JSF). I've had a couple of people ask me to turn my (fairly length) response on the group into a blog post, so here it is...

[

Tags: clojure 0.3.0 alpha 1

April 07, 2013 ·

0.3.0 represents a major overhaul of the API. Read on to find out what has changed!

[

Tags: clojure

New FW/1 - Framework One - Organization on Github

April 06, 2013 ·

To make it easier to manage collaboration on FW/1-related projects in future, several projects have now moved under a new FW/1 - Framework One - organization on Github. Your forks and watches should have been updated but if you have local clones of the old repos under my personal Github account, you'll want to update those. Here's the full list of Framework One projects:

If you were a collaborator on one of these projects before, you will no longer have commit access (because you were a collaborator directly on my repo). If you'd like to become a collaborating team member on one of these projects as part of the new organization, contact me directly to discuss that. I'd certainly like to see some of the regular contributors in the past become official "Team Framework One" members in the new organization!

Thank you to all the contributors who've helped get these projects to where they are now!

Tags: coldfusion · clojure · fw1 · di1 · cfmljure

DI/1 0.4.7 available for testing

April 06, 2013 ·

The seventh minor update in four months, this brings a number of bug fixes and enhancements to DI/1 - Inject One since the 0.4.0 release at the beginning of December, 2012:

  • Fix optional constructor argument handling (with help from Marcin Szczepanski)
  • Fix edge case bug in property / setter / accessor logic
  • Setter metadata is cached, improving transient bean handling performance (Grant Shepert)
  • Robustness fixes for file path handling and parent bean factory handling
  • Add getVersion() API
  • Addition of transientPattern configuration option (Matt Levine)

In addition, DI/1 has moved to the FW/1 - Framework One organization on Github. The old repo still exists under my account (and is an up-to-date fork), but you should watch / fork / contribute to the new repo going forward.

Tags: oss · di1 · coldfusion