So today, barring the times I had to be elsewhere (meetings, class), I programmed. All day long. It is rare that I have the opportunity to do so anymore. On a "good" day, I'll have maybe an hour to spend on a program, which is usually enough time to whip up a script or two but not enough to do serious development and/or debugging. So I have to save my heavy-duty programming work until I have a big block of time, or enough semi-consecutive smaller blocks of time in a single day (like today).
So I programmed all day, stayed late at school, and then came home to programming task #2: code for tomorrow's class, which involves some stuff I'm not overly familiar with and needed to play around with. Programming task #2 went slower than it might have otherwise. Perhaps my brain was fatigued from thinking in "program mode" all day. Perhaps it was because tonight's task was in a different programming language and I kept mixing up the syntax with the language I was programming in earlier today (they're pretty similar, so this is not unexpected). Perhaps it's because I didn't make it to the gym today and thus feeling restless. But I found myself taking longer than normal to understand things and making silly mistakes (one of which took me a good 45 minutes to track down--it was a spelling error in a class name, but the misspelled word as it turns out is also a valid class--good times). But it's done now, and I can honestly say that it *was* worth the time, because I learned quite a bit of useful stuff while playing around.
Programming gives me a sense of accomplishment unique to any other aspect of my work. At the end of a long day of coding, even if the net result is not what I'd hoped for (bugs whose causes are elusive, design decisions gone awry, code that's messier than it should be), I feel like I've *done* something concrete. I feel like I have something tangible to show for my efforts. I feel like I've done something useful and creative with my time. I feel, in short, satisfied.
And tired. Geez, it's late! Off to bed!