Katemonkey (In Most Places)

Learning Python, Day 1 — Introduction

I've been unemployed for a month now, and I said to myself "Self, as much as you love playing The Sims and going through Tumblr, you are not going to do that this time. You are going to learn something."

So I dug out that Humble Bundle I boought ages ago, which is with Mammoth, and I opened up Python Programming Fundamentals — The Ultimate Learning Path.

(I could've started with Web Development Fundamentals with HTML, CSS, and Bootstrap — Complete Guide, since my JavaScript skills are nonexistent, but I had a feeling that I would get annoyed with how they would start out teaching HTML and CSS and never complete it to actually learn any JavaScript.)

I'm going to write up my thoughts at the end of each coursework day so that I have something written down to remember, but also so that y'all can hold me accountable to this. Finch can only do so much nagging, y'know?

(Plus? For each post I do, I'm going to use a photo of one of the many stickers I own as the meta_image. So that's something to look forward to. No random laptop or code stock images for me!)

Today is the first day, and I am currently going through the basics of computer science.

Computer Science and me

When I was at college, I wasn't there to get a proper profession. Other people were pre-law or pre-med or engineering or whatnot, but I was there basically to play with a T1 ethernet connection and work out how to make web pages in my spare time. It was the late 90s, that was what you did.

The only web dev course available was, like, a continuing education class designed for people who wanted to have their small business online. And why would I take that when I could take "Sacrifice: Theory and Practice"? Or "Human Osteology"? Or "Magic and the Supernatural in the Ancient World"?

I was thinking I could get a minor in Computer Science, because I was sort of drifting around, taking a lot of random courses, but my CompSci friends were like "...you're gonna have to learn FORTRAN. FORTRAN will do nothing for you and just make you cry."

(God, though, if I had stuck with FORTRAN think of the bank I could be making now...)

So I didn't study computer science. And I still haven't really studied computer science. But you know what?

I actually know a lot of basics. I keep on playing with stuff like decision trees and variables and even basic algorithms, just in the everyday weird nonsense I like to make. I might not know the actual programming language, both in the "write the program" sense and the "terms used" sense, but I used to be able to write nonsense in BASIC back when I was in my tweens, so I know how it all roughly goes.

(And, actually, here is a confession. I have written an entire fanfiction story in fake code. Because when Mischa Collins stars in a terrible apocalypse movie and keeps on mentioning a robot head on the moon, there's gonna be some robot head on the moon.)

01 — Introduction to the Course

I can already see I might have problems with this course. I already know I have a hard time taking in stuff when I'm just listening to it, and there aren't even subtitles on the videos to help. I can speed up the videos, which actually helps, because then my focus can't drift away while they're talking slow, but, dang, yeah, this is going to be a bit of a pain.

I suppose I'll just have to take notes when I get into the trickier bits, and maybe repeatedly listen to make sure that I get what they're saying.

I kind of like that they're going to be focusing on coding Python on the web, rather than going through the rigamarole of downloading and installing everything, but being that it's Google Colab, I just know they're going to keep on trying to stuff Gemini into my work, and I'll to be like "...stop it, I want to learn how to actually do this, stop it now".

But I'll tackle that when I come to it.

02 — Introduction to Computer Science

Like I said before, this is stuff I do know. I might not know the terminology, but, yeah, I've done this. I've made decision trees. I've done binary search. I know about loops. I'm Lex in Jurassic Park going "This is a UNIX system...I know this..."

But this is also where just listening to things has already tripped me up. I downloaded the PDFs of the slides, I listened to the lecture, and I'm still not 100% certain exactly what O(n) means when it comes to algorithm speed. I'm going to have to listen to it again, just to make sure I get it.

And binary still throws me. I understand how it works, a lot more than I did before, but numbers have a tendency to switch around on me even in the best of times, and you give me a bunch of 1s and 0s and I'm going to need a lot of time, a lot of patience, and probably a few sheets of paper.

It doesn't help that my first real introduction to using binary was Neal Stephenson's The Diamond Age, where Nell learns how to talk to the castle using flipped chains. She made it seem easy. I would have taken years and started scribbling on walls.

Also? I'm sure they had someone look over these lessons before they put them live, but I still spotted one typo and...well...

Screenshot of a slide in the lecture video, where, instead of having text about the actual lecture, there's the default text: "You can add a detailed description supporting your message here"

Yeah. Someone should've caught that.

Day 1 — Results

Not bad for a first day!

Tomorrow, I tackle setting up my Google Colab notebook and Python variables.

Today's Sticker

Hello Kitty wearing nerd glasses and winking, surrounded by math accoutrements, such as a calculator, a pencil, a notebook, an apple, and a set square A Hello Kitty sticker from a Panini sticker pack.

#kate learns python #programming