Things I would like to Learn/Experience/Improve-Upon This Year [2013]

Since this is the time of the year that many making resolutions relating to self improvement, here are a few of mine:

  1. Finally get around to learning GridGain.   [I would love to see a well published book, or at least a Kindle eBook to get some headway on this] HazelCast would also be interesting, but GridGain has more of what I’m looking for.
  2. Finish the massive tomb that is “Groovy In Action”
  3. Finally understand how network routing works.
  4. Get more experience with DNS, and DNS tools
  5. Master NMap [not just learn the basic uses of it, but to really excel with the tool] This would be similar with the reading up on SSH I did last year.
  6. Get up to conversational level German. [Living outside of German speaking nations makes this incredibly difficult]
  7. Finally develop some strong time management habits.
  8. Learn how to use Python [to the point where you can do some cool stuff with it]
  9. Learn R [rather than haphazardly hack]
  10. Meet/talk with some of the gurus of airfare scheduling/decoding, and the famous Tom Stuker.
  11. Learn how to use GraphViz [This is one of the odd ones here, but it’s interesting]
  12. Get better with Erlang and to find/make real world uses.
  13. Learn/Create a GUI in Apache Pivot, and a web interface with either Stripes and/or Wicket.

How am I planning to accomplish these things? Having goals, and putting them on my task list.

Currently, I am reading up on Maven, and Groovy. I read a book on GIT, and got some practice w. A review of the strengths and weaknesses may be coming up in a later post on this blog.

To the 1.5 readers left reading this blog: What are your goals for the New Year? Leave the response as a blog post linking back to this post or in the comments below.

What Have I been up to lately? Erlang, Scala, Clojure, Ruby, IO, Haskell, and Prolog Oh MY!

What Have I been up to lately? 

Other than being busy with work, I have been reading and working through the exercises in “Seven Languages In Seven Weeks” by Bruce Tate. It is a book that goes through the following seven languages: Scala, Ruby, Prolog, IO, Conjure, Erlang, and Haskell. The amount of time needed to read through each of the languages isn’t seven weeks, but more like 3 days per language. Each chapter has 3 days worth of lessons and one day to “review.” If the reader wanted to go further in detail with one of the languages, there were suggestions and exercises to help the reader do so.

Criticisms

The biggest criticism about this book is that the book either skipped over or under-explained interesting features. For example, most of the languages consisted of Day One: Basic Syntax, Day Two: Lists/data manipulation, and then went to Day Three: Concurrency. There are a lot of concepts or tidbits of the language that could have been covered. If concurrency was one of the interesting bits of the language, make it a small section and prompt the reader to seek other resources.

I also wish that this book went over language-neutral concepts [introduced by the languages] before teaching the languages. It did try to wrap up the book by explaining the concepts, but I felt like it was too late by this time. Lastly, the book was great to introduce a person into the languages. However it left me with the feeling that it was something nice to know, but not something I could use in any of the projects I’m currently working on.

What I liked about the Book

I really like that the book went through so many different languages. Additionally, the book attempted to shy away from the traditional OO based languages, and stayed with the functional based languages. I was taught Prolog in undergrad, but I liked the introduction of a prolog. Prolog is an incredibly useful, and unique language, however it lacks the resources that the other languages have.

After the book I would like to follow up with the Erlang, Prolog [which was a refresher for me], and Haskell.  Clojure was interesting, however I didn’t get a strong urge to continue with it. I also thought that Groovy would be a little more useful than Scala.