Clojure Gazette 1.29
Issue 1.29 - January 24, 2013
One of the ideas I have been playing with recently is that Clojure is now in this zone between obscurity and popularity. It is obviously getting a lot of air time, but it is still not considered (in the popular conception) an obvious choice for most projects (Storm is the obvious exception).
I recently competed in a 48-hour hackathon. I developed a mobile web app in Clojure. A collaborator wanted to be able to run the server himself. A git pull and a lein self-install later, the server was running. Amazon sponsored the hackathon and we all got AWS credits. Lein beanstalk let me deploy the app without a hitch. The point is that Clojure development is pulling together into a very cohesive and powerful experience.
At the same time, Clojure is popping up all over the place. Clojure is on the verge of something big. Business opportunities abound.
I am working on a project now that seems as ripe as it will ever be. It should be coming online in the next few weeks. Get ready for it!
In the meantime, enjoy this issue!
**Eric Normand **
PS. I love to hear from you. Just hit reply!
Challenges for Logic Programming (video)
Steve Milner discusses the history of logic programming and how logic programming can find a place in a modern computing world.
Playing Go with Clojure (video)
Zach Tellman discusses the challenges of making a Clojure implementation of a Go AI performant.
Monads for Normal People (video)
YAMT (Yet Another Monad Tutorial), this time in Python. What's most interesting is the pragmatic approach of the speaker,Dustin Getz, who explains when monads may be a good choice for structuring your code.
A thought piece on Clojure, static types, and the web.
Still undecided about going, myself. The lineup looks pretty good, but my proposed talk was not accepted, so no free ticket for me!
One thing that will help ClojureScript adoption is the promise of not having to write your code twice. The same code can run on the server and the client. This project aims to help that out by converting Clojure source files into ClojureScript compatible files.
This open source framework looks promising: develop cross-platform apps using web technologies. Although the JVM is already cross-platform, I imagine there is a possibility for using ClojureScript to drive TideSDK.
The web is purportedly an easy platform to develop for. But look at how many things are required of web apps, in addition to writing the software itself. This checklist is a very helpful reminder of all of the things that need doing before a web app is ready.
Here are the goals according to the article:
a data-centric model of the view hiearchy
a query language to declaratively find views (avoiding explicit hierarchy traversal)
providing a REPL for interactive exploratory development
providing high-level functions for interacting with views based on this query language (tap, pan, swipe etc)
Stuart Sierra opens a nice discussion about the expectations surrounding the GitHub pull request.