## Beginnings

The first official week of classes has now come and gone. I’m currently enrolled in Discrete Mathematics for Computer Science and Intensive Introduction to Computer Science. The math class got off to a running start with propositional, predicate, and quantificational logic as well as proofs, number theory and modular arithmetic. CS so far is just scratching (pun intended, you’ll see…) the surface, as its positioned for an audience potentially less familiar with programming than I currently am (and far wider than the math class). The first assignment was to create something in Scratch. I haven’t completed it yet, but when I do I’ll probably link to it here.

## Math as a programmer, programming as a… mather

Discrete math is already causing me to think a little differently about programming - and I can say very confidently that having years of software development experience is positively informing my approach to learning math “this time around” (I’ve dipped back into math a few times in my life).

Mathematics topics as simple as functions, arguments, variables and return values have a new framing for me now that I’ve used these concepts, practically, all day every day for years at work. Likewise, entrenching the rules of predicate logic and equivalences in my brain is giving me a slightly deeper and more fluent insight into conditionals in programming. Not that I’m necessarily doing anything different or would say I’ve learned anything new about control flow in programming - more that I’m seeing the regularly-used, higher-level abstractions as direct reflections of fundamental logical structures. There are whispers of bytecode evaporating off the screen now that I’m spending some of my waking hours thinking academically about manipulating atomic trues and falses (or 1s and 0s. no difference).