I ran into this very nice article the other day that goes into the how of creating an online community. Besides using Clojure, it also uses Datomic as the database, Angular for building the front-end and Ansible and Vagrant for provisioning and deployment. I just started using Vagrant on my desktop to provision a number of VirtualBox instances for some search engine work I am doing. This article provides a nice level of depth to the discussion of a number of technologies and shows more than a basic outline of the architecture.
One aspect of most architectures on the web involve search. I’ve been working with Apache Solr – a search engine that as it turns out fits the definition of NoSQL database (and some people use it as a read database). If you don’t know what Solr is there are plenty of books worth reading on the topic. And you should visit the Apache Solr site :
A commercially supported version of Solr is available from LucidWorks. If you are interested in learning a lot more, there are some nice videos from the Lucene Solr Revolution 2013 conference. Lots of very good talks, select the following ‘Recommended Viewing’ image to go to the conference video/PDF presentations :
A taste of some of the talks – first on the topic of ‘search’ itself.
and second, a talk on Solr as a NoSQL database from the creator of Solr :
Another interesting search engine project is ElasticSearch.
Jack Rusher published a nice tweet photo showing terrain generated by less than 100 lines of Clojure code.
You can look at the code here –
James Trunk provides a video presentation of building a game with play-clj using Light Table.
Here is an example of the game Pong written in Clojure with source code.
If you are looking for a tutorial that can provide you with an example that shows you a top-to-bottom view of a Clojure application. It is worth looking at Luminus which shows you the complete view of building a guest book application. It starts by installing Leiningen and progresses to creating a new application, providing an anatomical view of the app, discusses adding dependencies, running initial code on startup, creating pages and handling form input and finally packaging the app.
There is a wealth of videos, covering a number of topics from the recently concluded OpenStack Summit 2014 conference in Atlanta. You can see on the left side of the introductory video that there are a large number of other selections covering a wealth of topics from keynotes to sessions –
Mark Engelberg gave a talk on InstaParse at Clojure/West 2014. In this talk he discusses Instaparse, a parsing library for Clojure that allows you to build parsers from arbitrary context-free grammars. Extremely useful library.
Instaparse can be found at GitHub :
Very, very cool announcement today from SolidFire, Dell and Redhat. Everyone interested in the next generation datacenter should listen to this excellent keynote from a SolidFire’s CEO. They are way, way ahead of the rest of the flash storage crowd. Unlike announcements of some vendors whose native operating systems don’t even support extreme scale-out and quality-of-service and that announce their belated participation in the OpenStack foundation minus virtually any substantial meat – SolidFire delivered a strong announcement – a real-world, pre-tested, pre-validated Dell/Redhat/SolidFire reference architecture for building a flash-based cloud. And they are not new to OpenStack they have been supporting it for some time. Today, SolidFire unleashed a pre-validated, pre-tested reference architecture with two key players – Dell and Redhat. In this talk – two eBay engineers – Subbu Allamaraju (Chief Engineer, Cloud) and John Brogan (Cloud Storage Engineering) discussed with Dave Wright (CEO, SolidFire) the challenges that moved them to look at OpenStack and how eBay is using OpenStack today. It is definitely worthwhile to listen to these knowledgeable eBay engineers provide a meaningful discussion on why OpenStack is important.
Then, Dave Wright discusses the newly created OpenStack cloud reference architecture. You can find the Solidfire Agile Infrastructure (AI) Reference Architecture here :
David goes into some of detail on the reference architecture for a scale-out cloud. Two Dell and Redhat execs also joined David on stage to further discuss the new reference architecture.
This is quite useful, if you are trying to throttle or limit an activity.