This morning, I clicked a single button to send a to-do list item to each student in STA Digital Media, instantly creating about 45 to-do list items in 45 different Basecamp projects. This is the result of a little side project I’ve been working on over the last week or so, culminating in a flurry of work over the 3-day weekend. However, it’s an idea that’s been percolating for a while.
Almost exactly two years ago, I sat down to chat with a co-worker while we were both waiting to board a Southwest flight at KCI. While I didn’t exactly know it at the time, I know now that our then-new software engineering teacher, Greg Bustamante, is always up for a conversation about the nerdiest of nerdy things.
I had already told him I extensively use Basecamp, a project management platform, in my media production class — anyone who has worked with me five minutes has heard that story. I no doubt hit the ground running the day, asking him how I might learn to use Basecamp’s API to communicate with a spreadsheet or our district LMS. I already knew he was doing some clever things with GitHub projects and personalized learning, but unfortunately, I’m not as clever.
I had already exhausted the extent of my knowledge to utter that sentence in which I knew only of the existence and general concept of API. On the other hand, Greg had his laptop open before I got done pitching the idea, skimming through API documentation, and setting up a quick test to check for authorization protocols…or something. Again, he’s the clever one, not me. I think it was something like that.
Over the following two years, I had bigger fish to fry, not the least of which was writing a dissertation, so I didn’t have much time to dabble in side projects. That said, I watched bits and pieces of Python courses on LinkedIn Learning and checked out books I didn’t finish from Mid-Continent Public Library. I recognize, in retrospect, that what I was doing wasn’t far off from the concept suggested by Becky Blades — I was a stARTist, starting much more than I could finish.
In comes AI
Now, this story pivots to a story about how someone with minimal knowledge can harness AI to get started on a coding project. I saw a video showing how impressive Gemini 2.0 is and how it can teach you software if you share your screen. I’m not quite ready to share my screen with AI, but I took that as a cue to jump into the deep of this long-simmering project.
On January 13th, I typed a prompt that included this into Google AI Studio, ” I want to connect a Google Sheet to Basecamp’s (project management platform) API to keep track of various projects, potentially pushing out mass to-do list items to several projects, or keeping track of documents that have been submitted in Basecamp in the Google Sheet.”
After that, it was off to the races. It was easy to get started because I already had remnants left over from my previous coding experiences from LinkedIn Learning. Python was installed, as was Jupyter Notebook. I needed to remind myself how to use them, but I could ask questions of Google AI Studio when I ran up against a roadblock.
In passing, I told Greg I was making some progress connecting to Google Sheets Apps Script and he steered me away from that approach, pointing me instead to the idea of using a local database. This got me over a hump that was slowing me down and the project moved forward.
I’m not entirely clueless when it comes to coding and working from the command line, and I could ask for help when I needed it, but I knew I’d need help from a live human person at some point. Last Thursday, I watched in awe as Greg stopped by and got the project back on track, helping me troubleshoot a pagination challenge by setting up a “while loop” (did I call it the right thing?) to ensure that I was getting all the results provided by the API. All very standard stuff, I’m sure. He also pointed me to Visual Studio Code, which I think I already had installed from my stARTist experience in coding, and suggested connecting to GitHub Copilot, which also took just minutes since I was already dabbling in that during my stARTist phase.
So yesterday was the home stretch. I pull all kinds of data from Basecamp and used it to build a local database. I stumbled through connecting to the database and cross checking AI suggestions to snippets of code from Basecamp’s API documentation. I ran some tests pushing to-do list items to just my personal project, then last night I put my first to-do list item in everyone’s project.
I dare say I’ve never been as excited to wake up to the news of an AMI day, knowing I’d have a good reason to use the new tool. To answer your question in advance, what I’m doing is nothing that can’t be done manually or as a routine operation in a learning management system (LMS). That said, I’m not interested in manually doing it, and I’m more interested in running #STADigitalMedia on a project management platform than an LMS.
Coding this relatively simple project felt like an interesting case study for using AI in learning. I did have to know a lot to get started and make it this far, but there’s a lot that I still don’t know. It wouldn’t have worked without working with an actual mentor, but the time we spent together was small compared to the total time spent on the project. Finally, I think I’ll learn a lot as I continue to work on this because I can see the code, and I know (generally speaking) what’s going on with everything.
This is just the tip of the iceberg. I have a lot of other ideas of what to do with this, and it’s fun to have enough free time to explore side projects again.