“And now the end is here
And so I face that final curtain…” – Frank Sinatra (1969)
This quote keeps coming back to me, seemingly anywhere I go ending any project. It was the song I listened to driving away from high school for the last time, and it was also the song I listened to going into many different finals (Except for math, that was the song KOMM, SUSSER TODD, but that’s besides the point). The song really marks the end for me, and this last document marks, well, the end of my project.
Much of this ePortfolio has discussed what ill seemingly summarize here. The class caused a change in how I research and also changed how I plan on designing what I do in the future. The picture above is from the third version of ScratchDB. It marks the start, and somewhat end, of an era for me. ScratchDBv3 was the base I built many different projects off of, such as my discord bot, and somewhat my program for WREK Atlanta. When I continued to re-use code, it really never taught me anything, but it did have a sense of stability as to where I knew how it all worked together and I knew how to fix it. This system was for the most part “safe” to me and provided a base I knew an understood for everything else. The project idea for this class went very far away from that original idea. Even in my planning phase, I determined I would branch to other programming languages in order to learn something new and find new ways to do things, but I never really expected what I would learn to not be programming, and instead be a way of researching.
As I’ve stated probably plenty of times before, programming for me has always been opening up 50 tabs for the little line of code it provides to answer your question, and while this has always worked, you never truly understand it all and eventually rely on simply copying and pasting other people’s code snippets
(who likely just copied and pasted from other people) This class provided a glimpse into how I could actually learn how to write all of the pieces myself, instead of relying on random somewhat untrustworthy sources.
So starting out is finding articles. I’ve learned that I cannot simply just search up a random line of code and just copy it. Copying code from random sources online doesn’t really teach you, its much like copying code or writing from ChatGPT, you never really understand it, and for the most part, for ChatGPT at least, it simply hallucinates an explanation that is likely incorrect. I’ve learned to look deeper into sources and go to where they originate: the original developer of the system. The person, or people, who would know the most about a program is the ones who wrote it, not someone trying to get internet points. So with researching for various pieces of this class, I found that I tended to go to the original developer documentation for how to use something. This documentation is quite long and contains a lot of information I may not need to know, but it provides a ton of valuable insight into various features I would never have known to exist and I could possibly integrate them into my system, making it better than what I originally planned.
The second thing I learned, somewhat from the first, was the importance of planning. Like for what I do in almost anything, I do very little planning when it comes to writing and work, since I feel it’s sometimes best if it all just comes to me while I do it. While this works for something like a short essay or a small program, it doesn’t work for something as large as a major project or something like ScratchDB, which would be 2-4 large programs, each with their own planning, talking to each other. All of this cannot simply be written in one go or without planning; it needs time, a written plan, and a lot of sources to make happen. During the planning phase of my project, I looked into sources written by the developers to see how I could use their work to join my programs together. Without looking into that, I would have selected a system I would have made myself that would have been orders of magnitude slower and less efficient. But now, I have a plan to use systems that were designed for companies such as Google to use for their cross-program communication.
Over the course of the year, my project has taken a large shift. I originally planned to write multiple programs and possibly a bit of research into the data my programs found, but instead I am here, yet again on Crosland 7, writing about the process of learning how to code, instead of simply the output of the code I made. Like I said before, programming to the outside is usually a black box, like sausage, where you give something in, and something nice comes out, without really any explanation of what’s in the middle. My work in this class has really been to find out what happens in the middle, and how to make it better.
So I guess I will end with a thank you. Simply, thanks for providing the framework and the resources needed to learn how to learn. I really enjoyed the process of working on the bits of my project I got to, and they provided valuable insight into how I will likely work in the future.