Back to BASICs with Python

Image

I’m at that point in my Python learning journey where I’m getting really bored with doing courses, which start to feel like un-paid work in a lot of ways. When the class tells you to build a program that does X and you find X as interesting as watching paint dry, that’s disturbingly close to what I do for a living all day, but at least there I get paid.

However I’m not anywhere near the level of competency to dive into doing the things I want to learn Python for: AI stuff, like maybe Custom Nodes for Comfy UI or just basic user interfaces for whatever new open source LLM model is hot that week.

I was thinking about what kind of newbie-friendly thing I could build that would be interesting to me, and my mind flew back to my first years of using a computer and what we’d spend all day on: games. In particular, games written in BASIC. There I’d be on my Atari 400 with its chicklet keyboard bruising my fingertips typing in code from some magazine. Then (after storing the program on a cassette tape!) I’d play the game a bit and soon after start modifying it since doing so was so easy. I learned a lot that way.

Rebuilding Retro BASIC Games in Python

Partial screenshot of a page from 101 BASIC Computer Games showing some source code
Part of a page from 101 BASIC Computer Games

Then inspiration struck! I could do the same with Python. And to keep it totally old school I found 101 BASIC Computer Games on Archive.org. This not the 101 Computer Games book I had back in the day but it’s the same idea. (The one I had is listed at Amazon for $272!!) Of course I’m not typing in the code, I’m just replicating it in Python, and ideally making the games better. Most of these games were written by high school students back in the 1970s.

So for example the first game: Acey Du, is a simpler variant of Acey Deucy which is a simple game where you are dealt 2 cards and have to guess if the next card will fall between the two. In the book’s version the ‘cards’ are just random numbers, not an exhaustible deck of cards, making it purely a guessing game. So I added a proper deck of cards meaning if you can remember what cards have been used you can make better guesses.

This version had a betting system which I thought could act as a score. How much can you accumulate before the deck is exhausted? But then I thought “If I place a bet when the dealt cards are 2 and K it should pay less than if I place a bet when the cards are 5 and 9” so I’m going to change the odds based on the range of numbers between the two cards.

And maybe I’ll add a high score table that’s written to a file and so persistent.

And if I’m not bored by then, perhaps I’ll add a UI to it. Originally I was writing these just like BASIC programs: just a CLI and text feedback.

So yeah, that’s my plan for now. Take an old BASIC game, get it working in Python, then make it better. Then throw it away and start on a new game.

My next challenge will be figuring out how to turn off all the AI assistance I have in my IDE because the danged AI is always suggesting complete chunks of code that work well, before I’ve even had a moment to think about how I would accomplish the task at hand. Though, I dunno, in real world situations I’d have that all on and would welcome the suggestions so I’m still on the fence about that. Guess I could set aside VS Code and type up the programs in Sublime or even Notepad!

Learning Journey, Week of Oct. 20th, 2025

Image

We’re about a month from lease signing and already falling behind in our preparations. From here on until we get moved I’m guessing all my learning will be getting done during quiet periods of my work day. And right now things are quiet but I have about 3 projects that were supposed to be ready to start at different times and they keep getting delayed and I know they’ll all hit my desk at once. When that happens the learning journey may have to go on hold until we’re moving in settled.

But for today anyway, there is time!

Monday

Codecademy Learn Python 3 Course, Module 1, Module 2 Sub-Module 1

Yeah I’m back putzing with CodeCademy for a bit longer.

Typescript, Phaser and game dev

I also started another project; making a game (just a dumb game…the only reason it is a game is to keep me interested) using Phaser.io, written in TypeScript. I had never heard of Phaser but ChatGPT suggested it as a good fit for my parameters which were that I wanted to write a game using some scripting or programming language that I could use for other purposes. I had at first suggested Pygame and I may go back to that. ChatGPT waved me off of that due (it said, I haven’t checked it yet) to it having no physics systems or tilemap editors. I will definitely be fact-checking this!

My plan is to create a selection of super basic little “games” (eg move a sprite around a background, collide with something) in a few environments before I settle on one. I did it in Godot and Phaser and next I’ll do it in Pygame.

So far Phaser is pretty fun. I’m running it via Vite, and the game itself runs in a browser. When I change the source code, Vite automagically ‘deploys’ it without me having to restart anything, which makes the process delightfully iterative and kind of reminds me of plugging away on the chicklet keyboard of my Atari 400 writing Hangman games in BASIC!


Tuesday

Codecademy Learn Python 3 Course, Module 1, Module 2 Sub-Module 1

Didn’t even finish a complete sub-module today. 🙁 But I moved a domain between registrars, got renter’s insurance sorted, wrote a blog post and snuck in some packing, so not going to beat myself up. I know this was going to happen!


Wednesday

Codecademy Learn Python 3 Course, Module 2 Sub-Module 1

I did do a bit, but yeah another crazed day. Dealing with renters insurance and other hassles with moving. And work… expected me to work! The nerve! I did do a page of a sub-module but that was like 15 minutes out of my day.


Thursday

Codecademy Learn Python 3 Course, Module 2 Sub-Module 1

Yup, still on the same sub-module. I did work on it, but only barely. Work is heating up. I also schedule Internet installation for the new apartment, as well as scheduling transfer of electric service to me for the new place, and away from me for our existing apartment, as well as finalizing renter’s insurance. None of which has anything to do with learning but enough to do with keeping me busy. 🙁


Friday

Codecademy Learn Python 3 Course, Module 2 Sub-Modules 1 & 2

Did a little better today. Finally finished sub-module 1 and did sub-module 2 (which was just a quiz).

That said, this is causing me some stress and anxiety with everything else going on, so I’m going to set aside the “Learning Journey” posts and hope to get back around to them in January when we’re settled in our new home and completely moved out of this one.

I didn’t make it very far which is disappointing but… life is life and I’m just doing this for me. At my age I never intended to use this to find a new job or anything. It was just so I understood Python better when I encountered it, which I do a lot in my AI work. So hopefully I’ll be back in a few months and until then I’ll post any other learning quickie adventures I get into in the cracks around all the moving drama!

Learning Journey, Week of Oct. 13th, 2025

Image

Monday was a holiday for me this week, and we spent the 3 day weekend starting to do our big ‘purge’ before the packing for the move began. So I didn’t get back to the Python 3 course until Tuesday, and then I only got a bit done. As I think I mentioned I’m going to suspend the formal learning journey once I finish this course, and circle back to it after we’re in the new place. I just need to unload some of my daily tasks to make room for all the moving headaches.

I haven’t been doing much else, either. Have been letting my AI learning fall by the wayside as well. But that’s OK; I’ll get back to it.

PS: I did notice the hand in the image at the top of this post has 6 fingers but since it was a Halloween-based image it seemed fine to have it like that. Anyone else old enough to remember Chiller Theater that had the introduction with that 6 fingered hand that came up out of the ground and grabbed the letters off the logo one by one?

Tuesday

Codecademy Learn Python 3 Course (Python Code Challenges), Sub-Module 4

Syntax continues to screw me up, particularly switching between Lists and Dictionaries. But I always know what I want and need to do, I just frequently have to look up the right syntax. But that’s just part of learning a new language, I guess.


Wednesday

Codecademy Learn Python 3 Course (Python Code Challenges), Sub-Module 5

This finished up the Pyton 3 Course and CodeCademy suggested a few next steps. One was Intermediate Python which makes the most sense, but I’m instead going to go into Build Chatbots with Python since AI-related stuff is a big part of why I’m learning Python, AND it sounds fun (it’s marked as “Beginner” level) and something stress-free I can mess around with while we’re doing this move.


Thursday

Codecademy Build Chatbots With Python, Modules 1 – 4

Turns out at some point I’d started this course which definitely get my a leg up on my progress!


Friday

Codecademy Build Chatbots With Python, Modules Who Knows?

So it turns out CodeCademy re-uses modules within a subject, so as I moved through the Chatbots course I kept landing on things I’d already completed. Plus, the course seems out of date, which is understandable given how fast AI progress is moving. I was thinking Chatbot like something driven by AI and LLM, but this is more about scripted chatbots so far. Like “Write a program that takes a coffee order” via the user picking from a list of items.

I think this might be where CodeCademy and I part ways and I just start building things on my own, but we’ll see. I have the weekend to think about it. I’ll either just start building stuff and learning that way, or I’ll go back to the Intermediate Python course. This Chatbot course just feels like busy work. On my last exercise I was scolded for using a loop because loops hadn’t been introduced yet!

Side Note: Just to really throw my brain into confusion I started messing about with Godot (the open source game dev engine) last night so that’s yet ANOTHER thing I’m interested it!

Learning Journey, Week of Oct. 6th, 2025

Image

Well I did end up doing some learning over the weekend. I worked through the last sub-module in Module 9, which was an ‘off site’ project or whatever they call them. I pretty much had to do this in Jupyter Notebook which I found pretty irritating, but all the instructions were in that format. I did a lot of the work in a command prompt and then copy/pasted into Jupyter.


Monday

Codecademy Learn Python 3 Course, Module 10 (Files)

This was a short but important module. Now I feel like I could actually build something since I can read/save files.


Tuesday

Codecademy Learn Python 3 Course, Module 11 (Classes)

Sorta running out of patience with this course, just because most of the mistakes that I made are typing errors related to the long names the course uses (and requires you to use in order to pass). Maybe I am odd but I don’t use method or variable names like “players_gained_via_acquisition” or something equally long. Maybe it’s just me!? But I’m almost done with the course so I’ll push through.


Wednesday

Codecademy Learn Python 3 Course, Module 12 (Python Code Challenges), Sub-module 1

Had to do a bit of traveling today which really cut into free time for learning. Went to look at a new apartment about a 2 hour drive away.


Thursday

Codecademy Learn Python 3 Course, Module 12 (Python Code Challenges), Sub-module 2

We signed a lease and now have about 6 weeks to pack up and move, so I may be putting my learning journey on a semi-pause once I complete this course, until we’re settled in our new home. Which is super exciting!


Friday

Codecademy Learn Python 3 Course, Module 12 (Python Code Challenges), Sub-module 3

Learning Journey, Week of Sept. 29nd, 2025

Image

Monday

Codecademy Learn Python 3 Course, Module 8 (Modules), Sub-Modules 1-3

Yeah that’s a lot of “modules” in one line.


Tuesday

Codecademy Learn Python 3 Course, Module 8 (Modules), Sub-Modules 4 & 5

This module included a video which irked me. I watched it at double-speed and it was still too slow. And CodeCademy is pushing me to install pipenv when I already have mini-conda installed so I might be getting to where it’s time to diverge from the Codecademy agenda, but we’ll see.


Wednesday

Codecademy Learn Python 3 Course, Module 9 (Dictionaries), Sub-Modules 1 & 2

Work is starting to heat up so this might be a typical day for a bit. It’s probably getting near the time where I need to find some projects to build anyway. Just doing coursework never works very well for me because stuff doesn’t ‘stick.’


Thursday

Codecademy Learn Python 3 Course, Module 9 (Dictionaries), Sub-Module 3

Slowing down… partly due to work, partly due to boredom with the courses.

Friday

Codecademy Learn Python 3 Course, Module 9 (Dictionaries), Sub-Modules 4-5

Next up is an “Off-Platform” project which tend to be a little more interesting. Might poke at it over the weekend though I have a ton of chores to do. 🙁