Clojure 101: A New Course

Send to friend

About RubyLearning
RL offers online courses in Ruby programming, Git & GitHub, FXRuby, Shoes, JRuby and Sinatra. Since 2005, over 20,000 participants spread across 140+ countries have learned Ruby and other Ruby related timely topics. This has been possible due to the extensive support provided by the mentors of these courses. RL strives hard to improve the methodology and course content based on the extensive and critical feedback we receive. Thanks to YOU, people like Fabio Akita and companies like Locaweb who make this possible. Our Alumni are our best ambassadors.
You kept asking for it and so here it is – the new introductory, free, intensive, online course that helps you get started with Clojure programming.
Acknowledgements

Our special thanks go to Rich Hickey for providing us with this exciting new language as well as Mark Volkmann from Object Computing, Inc. for generously giving us permission to use his articles as teaching material for this course.
What’s Clojure?

According to Wikipedia: “Clojure is a modern dialect of the Lisp programming language. It is a general-purpose language supporting interactive development that encourages a functional programming style, and simplifies multithreaded programming. Clojure runs on the Java Virtual Machine and the Common Language Runtime. Clojure honors the code-as-data philosophy and has a sophisticated Lisp macro system.”
Stuart Halloway in his Programming Clojure book says – “Clojure feels like a general-purpose language beamed back from the near future. Its support for functional programming and software trans-actional memory is well beyond current practice and is well suited for multicore hardware. At the same time, Clojure is well grounded in the past and the present. It brings together Lisp and the Java Virtual Machine. Lisp brings wisdom spanning most of the history of programming, and Java brings the robustness, extensive libraries, and tooling of the dominant platform available today.”
What Will I Learn?
In this introductory course, you will learn the essential features of Clojure that you will end up using every day. The course topics are tentative and could change with the feedback received:

  • Week 0 – Getting started (no exercises)
    • Getting started
    • REPL
    • Functional Programming
  • Week 1 – The basics
    • Clojure Overview
    • Clojure Syntax
    • Bindings
    • Defining functions
    • Destructuring
  • Week 2 – Data
    • Collections
    • StructMaps
    • Sequences
    • Concurrency
    • Reference Types
  • Week 3 – Control Flow
    • Conditional Processing
    • Iteration
    • Recursion
    • Predicates
    • Input/Output
  • Week 4 – Advanced topics and tying it all together
    • Namespaces
    • Metadata
    • Macros
    • Java Interoperability
    • AOT Compiling

Who’s It For?
Anyone with an intermediate programming experience.
Mentors
Michael Kohl
Michael Kohl (Twitter / blog) in his day job, works as an IT systems engineer in Vienna, Austria. Michael fell in love with Clojure on first sight sometime in early 2009, but unfortunately never seems to have as much time to work with it as he wants to and started being a mentor for RubyLearning.org in early 2009. His interests include mathematics, literature, travelling, foreign languages, chess and so much more that he really wishes he wouldn’t need to sleep.
Baishampayan Ghose

Baishampayan Ghose (Twitter / profile) in his day job, works as a computer programmer cum entrepreneur at Infinitely Beta, Pune, India.
Dates
The course starts mid to late April 2010 and runs for a month.
How do I register?

  • You first create an account on the site (see right-hand top corner of the RubyLearning.org site). An email will be sent to your registered email address (could take 2-3 days). This email contains a link to confirm your account. Please click on that link.
  • Once your registration has been confirmed, login to the site and click on the Clojure 101 1st Batch link. It will ask you for an enrollment key. Please enter the Enrollment Key Clojure101 and you would be enrolled in this course.
  • Update your profile (with photo) and introduce yourself at the Course Social Forum.

Course Fees
The course is completely free of cost.
Hurry, registrations have started.
At the end of this course you should have all the knowledge to explore the wonderful world of Clojure on your own.

Technorati Tags: , ,