Daily, snackable writings to spur changes in thinking.
Building a blueprint for a better brain by tinkering with the code.
A Chess app from Tinkered Thinking featuring a variant of chess that bridges all skill levels!
The Tinkered Mind
A meditation app is forthcoming. Stay Tuned.
January 4th, 2023
I might just write about initiating derangement (see the last post) until I’ve done it. Today I got a lot more done than yesterday. And most importantly I actually did some meaty, schleppy stuff - meaning, stuff that needs to get done but which the homunculus in me has been whining and pouting about.
This is a coding project, and for the first time I’m using chatGPT and GitHub’s CoPilot AI’s to help me in the process. What an incredible difference it is when those two tools are available.
I’ve worked with GPT-3 before. The Tinkered Thinking post called “What is GPT-3” which attempts to explain GPT-3 in layman’s terms made it to the front page of Hacker News back in the day. I wrote and recorded a few posts that were collaborative writing exercises with GPT-3, including one fictional story, and I even built a GPT-3 app called The Tinkered Question, which did a remarkably good job of generating questions based on user input. The project couldn’t be monetized so it was sunset.
Now GPT is back in this shockingly quick chatGPT form and it’s knowledge.. at least when applied to coding is shocking and refreshing.
There’s the saying in the tech world that a full stack developer is always a little rusty on… everything. For the layman, what this means is - if a coder knows how to build a complete project from start to finish, including all the stuff a user sees and how that stuff works all the way back to the design of the database and how to host the whole monstrosity on a server - that is a full stack developer. And it requires facility in a number of coding languages and how they communicate with one another. And the original point is that since they are a jack of all trades, their lack of mastery means that they likely can’t remember how to do something when the task comes up even though they’ve done something like it before. Traditionally this means googling and going “ohhh yea.” But googling is a pain. A coder often opens a bunch of links on google and then quickly scans each one until something familiar or promising sticks out.
ChatGPT really changes this whole work structure. Instead of googling what a Django/Python database model needs to look like, or hell, just looking at some that I’ve already written, I simply asked chatGPT:
Can you write me a custom Django model that has all of these attributes? And then I listed those attributes and clicked enter.
Boom, It spit out exactly what I needed in no time. This I legit just copy and pasted into my own code base and it works. But the use of this sucker is better than that. When I wasn’t sure how an aspect of Django worked in terms of structure I just asked chatGPT and it gave me a very easy to understand answer.
CoPilot is the other AI tool. And it’s a lot like autocomplete on steroids. It tries to guess what you are going to code and if it’s correct, tap the tab button and boom. For example I might start writing a function called calculateTimeBetweenDates and given that this sort of function is fairly common and easy to understand, CoPilot can instantly fill in exactly what the function is supposed to look like.
It’s difficult to describe just how.. smooth the work went today. It was as if all the most uninteresting sticking points of the work have been lifted. Being able to actually work faster makes everything else less distracting. Which is a strange point to realize. Is it in the lulls of work that we get distracted? When we get stuck and we’re not entirely sure what to do, or we know what to do, but it’s just going to require something tedious and boring?
One has to wonder: what’s the relationship between level of agency and distraction?
If you have a low-level of agency, meaning: you don’t know what to do, or you don’t know how to do it… are you more likely to get distracted? This sort of circumstance isn’t just boring, it’s aggravating, and confusing.
Whereas, consider the reverse: if you know what to do and how to do it, and you are very well versed in the task at hand, are you more or less likely to get distracted?
Being In the Zone is perhaps a function of agency more than anything else. It’s somewhat.. impossible to be in the zone while learning something new. That’s probably fair to say. Low agency because it’s new, means no chance of being in the zone.
But what about learning as the task? Is it possible to be in the zone of learning?
First instinct here is that it’s all about having high agency when it comes to emotional regulation. Can confusion and aggravation be redirected to fuel curiosity? High agency in this meta-task might just make it possible to be in the zone while learning.
Interesting tangent aside, this is what those AI tools seemed to do: it was far easier to get in the zone. These tools increased agency by addressing two important issues: hazy memory as applied to how to do something or how something should look, and syntax. The first is just that jack-of-all-trades full stack developer problem. The syntax problem is just a subset. CoPilot is like Grammerly but a Grammerly that can also write your essay for you once it figures out what you’re talking about.
Regardless, it seems, and certainly feels like I’m one step closer to a proper and productive derangement.