#####Learning about computers
A couple of weeks ago, I started taking a self-guided introductory computer science course with MIT Open Courseware. This is the intro to intro class, because the intro class is really just too difficult for most MIT freshman. My first impressions were that the course materials were very well organized and very well curated. I started by clicking through the recommended references.
#####Binary Fingers
My initial clicking landed me on a page about learning to count in binary using your fingers. I am primarily a kinesthetic learner, so this exercise was fun: Count to 1000 on your fingers. However, the real take-away for me was anger and dread,
Why did I only ever learn base 10?!
Increasingly, technical protocols are obscured from users who lack basic technical literacy. I include myself in this bucket. I've been trained to rely on graphical user interfaces to interpret computers, protocols, services, etc. It is convenient to trust blindly and consume services freely, but in exchange I have surrendered a great deal of agency and creativity. Including basic technical literacy in the Common Core Standards would be a good start, but imho we should go a step further and include curriculum and standards for critical thinking about technology.
#####Self Doubt
I followed the first lecture and slides easily and found the lecturer and material to be very enjoyable. I completed the first homework assignment without issue, as far as I know. But this is where things get supremely tricky for me. I don't know that I didn't have problems, because I'm not confident enough yet to trust my judgment. I recently took my fifteen year old nephew on a backpacking trip, and throughout the trip I noticed that when I made big context jumps, he didn't always follow. Understandably so, I think. I'm more than twice his age and have a lifetime of vocabulary and experiences to help me make a lot of leaps in my thinking very quickly—especially in the context of travel and the great outdoors. Similarly, when the instructor makes little context leaps, I don't always follow. These leaps can seem imperceptibly tiny to someone with a lifetime of experience in computing. In my case, lacking context, I have to make leaps of faith or rely on the internets to help me understand. Usually, though, reading a Wiki article about shells doesn't advance my thinking immediately. It is good context for the long haul, but I rarely have enough context to answer my own immediate questions with Wiki articles.
I saved the file in the correct format, but does that make it a program? Is it a shell? The file says I can run shell...the homework assignment said to write a program.
And so I'm left wondering about the difference between running a python shell and what makes a program a program. I will be left with these doubts for a time, I'm sure, and have to be okay with the ambiguity. I'm good at that—the ambiguity part—but I'm not used to applying my standards of ambiguity to math and science. I am left feeling unsure about what I've learned, if anything.
#####Markdown language
Another goal I have for myself at this time is to learn markdown in github so that I can make pretty lists, checkboxes, etc. Here, I'm going to practice:
######checkboxes for task lists
- This is not yet done. Let's call this
clean your room before bed
- This is done. This was when I completed the task
drink a dirty chai with breakfast
Here I'm going to practice how I pop in a live view of another website. Not sure yet how to do this.