Twitter
RSS
Navigation
Monday
Feb272012

4Clojure smugness

I cannot resist sharing how smug I feel about finishing the Clojure exercises at 4clojure. This has been the most immersing and refreshing programming learning experience in years. Well, Clojure seems to be doing this to lots of people!

I was captivated by the way problems evolved throughout the series. Rudiments first, then the nuts and bolts of functional programming, and finally some very interesting algorithmic problems that made everything click. I very much admired how some teasers matched real world problems. In particular, my preferred problems where those whose obvious solutions were performing badly and had to be refined; they were great lessons in code performance.

The code golfing competition (finding a solution in the least number of characters) is a lot of fun and I found it was a great trick to really think about the best way of doing things. Well, I probably picked some bad reflexes on the way, but I definitely picked some great one too.

Ok, I am not very proud of some of my solutions compared to others'. For the icing on the 4clojure cake really is reading others' solutions once you solved a problem. If you are competitive, be ready to experience some really nasty feelings towards people you don't know (Maximentaaaaal!!!). But what I learned from other coders was key to my overall experience. I made myself a rule *cough* *cough* not to change my codes with hindsight, although I did so when there was a learning point I felt I would miss otherwise.

What caught me in particular was the series of problems that ask to recode built-in Clojure functions. I found it a very clever way of teaching Clojure, but I later overcoded some solutions because I recoded built-in functions I should have used instead! This is a typical case where other's solutions showed me my error and I went back and changed my code (which happened to improve my golf score slightly *grinning*).

Hard to think about what exercises to add to the series, although I am sure it will come!

If you haven't done them yet, go and enjoy the 4clojure problems.

References (18)

References allow you to track sources for this article, as well as articles that were written in response to this article.
  • Response
  • Response
    Football is actually 1 of the most significant sports in America. It has a significant following.
  • Response
    Nice Webpage, Stick to the good work. Thank you.
  • Response
    Response: b2b marketing
    Neat Website, Maintain the good work. Thanks a lot!
  • Response
    Response: Hollister
    4Clojure smugness - Blog - Chaomancy,Acest articol a fost scris exact Cu toate acestea, dacă doriți să vedeți articole asociate puteți vizualiza informațiile de aici:Hollister,http://hollister-france1.weebly.com/1/category/hollister/1.html
  • Response
    4Clojure smugness - Blog - Chaomancy
  • Response
    4Clojure smugness - Blog - Chaomancy
  • Response
    4Clojure smugness - Blog - Chaomancy
  • Response
    4Clojure smugness - Blog - Chaomancy
  • Response
    Response: Vizari Cleats
    4Clojure smugness - Blog - Chaomancy
  • Response
    Response: offline advantage
    4Clojure smugness - Blog - Chaomancy
  • Response
    Political authorities have pivotal role in making and implementing educational policies. They should show their keen interest towards society for the provision of quality education. They should ensure the availability of all possible sources for education.
  • Response
    http://8873.refinancemortgage.science/
  • Response
    Response: 1
    http://www.chouyouyanji.cc/co3257.html
  • Response
    Response: Renacen
    The Pentair pool heaters group of gas heaters can prevent this from happening.
  • Response
    Response: Alysa Myerson
    I found a great...
  • Response
  • Response
    GearHooks® are the space saving way to store and display all your sports, leisure and hobby gear at home, in the garage, shed or office.

Reader Comments

There are no comments for this journal entry. To create a new comment, use the form below.

PostPost a New Comment

Enter your information below to add a new comment.

My response is on my own website »
Author Email (optional):
Author URL (optional):
Post:
 
Some HTML allowed: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <code> <em> <i> <strike> <strong>
« Cloud and NoSQL: A use case | Main | Opening Words »