Posts from 12 November 2014
Today's partner: Zach
Well, we didn't write Global Thermonuclear War today, but we did write a tic-tac-toe game, and the way we set it up we were able to have the computer play against itself. Fitting.
First, meta-stuff: Not having caffeine in the morning is brutal. I need to leave the house a half hour earlier in order to make sure I can hit the coffee place before 8:45. I'm thinking it will probably be a good idea to get to aA around 8:00—first, to avoid peak commuting hours, and second to be able to settle in and find my bearings and re-read the day's assignments before class starts.
I still haven't settled into the apartment, which is just killer. Every night this week, I've come home and there's been another issue (tonight, the cable company un-provisioned my router. Yay). If I were talking to a student who was accepted to aA but hadn't started yet, I would suggest they leave at least a week (preferably two) between the end of their previous job/the beginning of their lease and the beginning of the program. I have a workspace set up at home, but not much else—I haven't even had time to get groceries, which is playing havoc with my blood sugar.
Because the progress page was down last night, we got started 20 minutes late (hence my lack of progress report for yesterday—by the time I signed in today, the report was locked out), and in turn lunch started at 12:45. With no coffee and limited breakfast this morning, and my partner in a similar condition, we were struggling all the way to lunch. We progressed at about half the speed we should have been because our brains just weren't cooperating: we were dropping state and getting destroyed by simple tasks all morning.
The period after lunch was a completely different story. With a full belly and an equatorial nation's worth of caffeine streaming through my system, I was on point from 2 pm until 7. Much different than yesterday!
So, lessons learned: do everything you need to to get ready for the course well in advance, so you have no other concerns distracting you; eat breakfast every day; make sure you have what you need (i.e. coffee) to stay focused; get plenty of sleep every night… and I'm sure I'll want to be exercising regularly in a bit here. I can see all this focus on eating to maintain energy being a big blow to my health in even the medium term.
I think my life is going to get very regimented out of necessity.
As for the coding: I kind of appreciated that we didn't see much of the instructors today. We sat down, logged in, had our little lecture until 10:20 (Sennacy is a good name for a cat, it seems), and then just worked.
It's a revelation, really: pair programming continues to be amazing, and I can't say I understand the ire it draws in certain corners on the 'webs. Having a partner with you makes sure you're not going down a rabbit hole of stupid, allows you to rubber duck constantly, and helps you circumvent really stupid errors, like forgetting that you named your instance variable
I can't even really say what we worked on, for the most part. I have it all here beside me, but Tic-Tac-Toe was the part of the day I was most focused on and for, and the rest of the assignments are just a bunch of tiny vignettes in retrospect. I know more than I did this morning, but it's the kind of thing where I don't know if I'll be able to look back and point to a certain moment that I learned X.
Certainly, I've been filling in a ton of details in how the language behaves, and sharing what I've learned from one person with the next partner, but it's already disappearing into the background in favor of high-level design principles.
The readings on coding style were really good, and one topic that I'm sure made an impact. There's a world of difference between my coding style from a week ago and my coding style today, and in six months I'm sure I'll think me today is total crap. Breaking functions into really small chunks and treating DRY as religious dogma has turned my coding style on its head. It physically pains me when I can't figure out a way to get a function under 20 lines, and when the best way to solve a problem appears to be a five-position
casestatement I want to cry (a little bit).
I've had a lot of thoughts on pedagogy related to the course, but I'm still kind of digesting them and waiting to put them together in a separate post. Maybe over the weekend.