Friday, May 16, 2014

Frustration, Plans, and Pre-ClojureBridge

My work schedule has not been very conducive to self-study for the past couple weeks, so I'm afraid I don't have much to update.

I have continued to work through the SICP while realizing that I truly am learning a new language. I'm definitely getting the simple stuff, but when I get to the exercises, I can't help but think "I see that you've written these things that I'm supposed to understand and answer, but I do not know your language." There is a vocabulary that I don't have. I admit, I've had moments of frustration.

I'm hoping that watching some of the SICP lectures will help, but I have not yet had a chance to get to them. I'm so anxious to start an edX course because I feel like it's a better way to break down those vocabulary barriers. In the mean time, I'm going for the submersion technique. I'm continuing to read, doing the exercises I understand, and hoping that at some point, something clicks and I suddenly understand (at which point I can go through those things I couldn't comprehend the first time through). This has worked for me in the past, so it's not a baseless plan.

It's difficult to admit that I just don't understand some things. Not that I'm not capable of understanding, but that right now at least, much of what I'm reading is Greek to me. My language is based in the humanities, literature, and policy. It's an adjustment.

About a week and a half ago, I attended a beginners night that was geared toward preparing for Clojure Bridge, which starts tonight. I was clearly very much a beginner. Of course people like me are exactly who these workshops are designed for, which is comforting. The install process was definitely a following directions process and while I'm still not entirely sure what I'll be using some of these tools for, I suspect I'll know a good deal more come Saturday night.

I went through a series of installs, with help, at the beginners night. Over the course of the night, I installed Leiningen, Light Table, and Heroku. I needed a SSL public/private key in order to set up a repository on GitHub (where I was already registered) and to deploy apps to Heroku. I cloned an app from GitHub, made some modifications, and deployed it to Heroku; I believe it was designed to be a “hello world” application. This is basically what’s going to be happening at tonight’s InstallFest. If you are curious, the curriculum for this weekend's workshop can be found on GitHub.

I have a few things in the works for the near future. I'll be attending a RailsBridge workshop here in Minneapolis on June 6 and 7. I had planned on attending one in Madison later this summer, but when this popped up a few days ago and there were spots still open, I jumped on it. I only hope that I'm not muddying the waters having *just* started playing with Clojure. In all fairness, I did start playing with very basic Ruby first. I'm working through a couple books, but have not had the opportunity to delve very deep into the more tutorial based books given recent time/work/logistical demands. As I mentioned above, I am digging into the SICP though it feels like a painfully slow pace as there are some basics to pick up as I go. Just today, my copy of The Pragmatic Programmer arrived which I understand is a good read and something I can easily fit into the time I have available.

As I wrap up this post, the ClojureBridge InstallFest is getting underway. I'll be posting a recap/post-mortum/personal takeaways in the next few days!



  1. I really don't think grinding through SICP is a good use of your time. What you need is to build something. You don't need to have read SICP to get your feet wet on a project that gets you excited. The beauty of frameworks like Ruby on Rails is that you get an immediate feedback loop. More complicated programming will require a strong grasp of the concepts SICP covers but those techniques won't really be applicable for a long time. My advice is to go through the Agile Web Development with Ruby on Rails book and pick a project to start working on. Get help from me and others when you're stuck and just start building! Otherwise you risk getting overwhelmed/bored by SICP.

  2. I agree but I also recognize that I lack a certain set of basic skills. But the occasional dryness of the SICP is why I'm going at this from different angles simultaneously. (Another reason is the kind of time I have to spend on this stuff. Often I have large chunks of time with no laptop/internet access. Large parts of the SICP works with that.) I am working though the Rails book when I have the magical confluence of time, laptop, and internet (sadly, pretty rare), I'll be reading the Pragmatic Programmer in the next day or so, and I'm going to work though the Learn to Program book which looks like it'll be a relatively quick process. On top of that I'm doing workshops and meet ups as they come up and my schedule allows. We'll see if being a bit of an obsessive multi-tasker helps or hurts during this process. Sidenote: I was really glad I got though a little of the SICP before I went to ClojureBridge. I felt like I "got it" very quickly, at least for the first half of the day. But I have a post in progress about that. :)