< prev 16 Dec 2014 to 16 Dec 2014 next >

Posts from 16 December 2014

  • Week 6 Day 1 - Red Alert! Asteroids inbound!

    Today's partner: Sai

    Today's project was second or third portfolio project1, Asteroids. We were playing with JavaScript and Canvas to draw the classic game on screen, and using an external key handler to bind input keystrokes to game functionality. A lot of ground covered in a short time, but I have to say it was pretty cool.

    Canvas is powerful and expressive—no less than I expect from an Apple-generated extension—and gives you the ability to do some very nice prettifying operations for cheap. JavaScript is, as usual, insane, but we were able to generate plenty of working code (once we figured out a couple issues with this, inheritance, and some other piddling details) in a reasonable amount of time.

    It doesn't even matter that I see other groups demonstrating more functionality in less time at this point. I'm learning a lot, we're learning a lot, and what we're producing meets my standards. I'm getting more familiar with the reference materials for the technologies we're using, and doing a lot of meta-learning in turn—learning how to find the more pertinent information from the MDN, for instance.

    This is the first project so far where I just really want to keep working on the code. Mostly this is because I can see where organic extensions can take place, for instance when drawing objects that are wrapping around the screen (what's the proper way to eliminate "popping" into and out of existence? Should I make the canvas larger while keeping the window the same size, or should I "clone" objects when they're within a certain range of the border and have the "clone" mirror the original's properties, or something else? Does canvas support a "toroidal space" mode?), but there's not a lot of time for that at the moment. I think I'll keep playing with it from time to time for the next couple weeks, but for now I'm obligated to tap out.

    I accidentally began reading the HTML tags guide, and it turns out we won't be doing the W6D2 curriculum until January… man, I want to do the lessons on semantics and document properties. The page layout/editing geek in me is drooling. Oh, well. Tomorrow's JQuery; time to get to work.

    1. depending on whether you view chess and ActiveRecordLite as both worth posting 

  • 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.

< prev 16 Dec 2014 to 16 Dec 2014 next >