Week 5 Day 5 - Ain't no callaback girl

Today's partner: Max

I'm kind of liking JavaScript, which is surprising on day 2. We'll see what day 30 looks like, but so far, it's been forgiving.

Today was another example of re-creating Ruby code with JS, but emphasizing the features specific to JS—mostly callbacks and (more) closures. The paradigms are different, and JS is much more verbose (less of a profusion of one-line methods and more C-style 20 line blocks of if-elses and explicit loops). Which means that we're a lot more "productive" in the "productivity = lines of code" sense, and it was easier to make each individual line work, but I get the sense that finding an error will be harder in the future.

Which wasn't really a problem today - most of our issues boiled down to "Does this one-word function exist in JavaScript? No? Damn." - and between Max and I, we were able to handle pretty much everything there was to know about callbacks. We ended up finishing by break, and sort of trying to find something to do with ourselves to make productive use of the last hour and a half.

I don't think I like node, but we can make it do what we need to. What's most frustrating is that when you do have a real problem (debugging or experimenting), building up workable state to the point that you can try to find the problem is much more difficult. I really hope we get exposure to a testing framework or something for JS so that we can automate a lot of the process of iterative development.

Other than that, the module packaging in JS is ugly, but given the power and portability of JS overall, I think I'll be able to survive.

All in all, I'm enjoying JS, but what I'm really looking forward to is the power of JQuery and .css. Is it odd that selectors are so interesting to me?

Me, a typography nerd… liking text styling… who would have thought.