I wanted to start this DevLog with a more personal approach as it is detailing a journey, rather than a spewing of information I obtained this past week. If that sounds uninteresting and you wish to skip past the drab exposition, well then click here.
To start…
It’s been a month to the day, of writing this, that I have traveled nearly 5000 miles to attend University in a different country from my own. The process has been arduous, stressful, and exciting. Uncertainties are built into the very nature of moving; unfamiliarity is uncomfortable. Aside from the obvious logistical nightmare that moving so far away brings, getting settled in a space that is so far away becomes tenuous. The floor under your feet feels shaky, buildings loom in unfamiliar dressings, and you place yourself in a Petri dish in which the locals line up to investigate the microscope above you to gawk. How out of place this organism is, they say. Which of course is ludicrous, a self-fulfilling narrative that anxiety brings.
BUT…
One thing that fixes all. The cure of self-doubt and the antidote for stress that living on this rock brings: Distraction. In this case, a useful one. First few weeks of university have begun. “Ahh, yes, this is why I emptied my savings and filled a backpack to live out of in the first place.” Superficial things fade into the background and what is truly important fixes into focus. I came here to learn in an environment that is inviting, and harbors create practice, in a technical setting. Obtaining an associates degree in Computer Science back home left me feeling a bit like, “Okay, so what do I want to go to school for now…” I knew that my craving for more torture (higher education) wasn’t over. If a two-year degree taught me anything, it is that learning does not have linear narrative structure. There is no end point. Just a succession of never-ending beginnings. Like the one I’ll get into now…finally.
DevLog
Programming Fundamentals
It was a comfortable first few weeks of uni. Welcome week was full of much appreciated hand holding. The first real week of course work was very welcomed though. Programming Fundamentals: something that I feel like I should know better. We defined data types and code structure and other computational thinking practices. How we can think and solve problems in the way a computer is inclined to perceive the information we give it. By understanding this, we can become better wielders of a tool with essentially infinite uses. Knowing how something should work only goes so far if you don’t know how to tell the computer to do that thing. Computers are not sentient (fingers-crossed) and cannot read our minds to do what we tell them. We must learn how to express how we see a solution working in a way that the computer can understand, in order to be useful. Before even learning a programming language, programming fundamentals is like the tower of babel in which those languages are birthed. Without it, learning a coding language would be more difficult, and like learning to hammer a nail without learning how or what hammer is first.
Flow Charts

Something I did not like doing in my previous degree. Drawing out detailed descriptions of how code should work when you’re learning how to code is agonizing. JUST LET ME CODE! How wrong I was back then…Drawing out your ideas in a readable, pseudo-code manner is not only useful for other people trying to read what you’re trying to accomplish with your code, but mightily useful for yourself when trying to stay on track. Code can be an unwieldy beast when trying to solve something without some sort of outline. Ideas can get lost in the act of typing and bugs can pile up fast. Like digging your own grave to be buried in, along with the running debugger. Flow charts express how a block of code should be executed in a logical way that is easy for humans to read and easy to translate for a computer. They are a sequence of statements and conditions that flow from one end to another smoothly. A kind of error checking before even typing into the IDE.
Intro to JavaScript
It’s easy to say, “Man, I wish I started with X language before learning X language.” JavaScript is one of those things. My first real foray into a “Dynamically typed language”. Meaning that as opposed to a “Statically typed language” the datatypes of variables do not have to be expressed by the user and is interpreted by the machine at runtime (https://www.geeksforgeeks.org/what-is-a-typed-language/).
var number = "5";
This is a foreign idea for me, as I have hardly written code in this manner. It’s something that I see the appeal of as learning a new language though. The downsides of the uses in a larger code file (such as a full-on game) are still a little shaky to me, other than the speed benefit of doing those checks once at compile-time in the case of statically typed languages, and apparently very contested online as well. Looking forward to seeing for myself after getting to write some larger applications in JavaScript.
The experimental phase of coding is always enjoyable. Working with code just in order to break it is not only a useful practice, but a fun way to build confidence and familiarity.
Independent Practice / Inspiration?
Outside of class hours, I decided to check out the library on campus and stumbled onto a great Game Dev section. I ended up checking out a book called Playing Smart: On Games, Intelligence, and Artificial Intelligence by Julian Togelius. The author is a premier researcher in AI in video games. The book posits the questions,
“Can games measure Intelligence? How will artificial intelligence inform games of the future?”
Playing Smart: On Games, Intelligence, and Artificial Intelligence. Julian Togelius.
It has been a fascinating read thus far. A more popular science approach to explaining how AI in video games work and how they can work even closer in future iterations of both fields respectively delivering innovations in each practice. It has sparked my own curiosity as far as what kind of projects I want to work on. As well as some ideas for specific game mechanics I feel could be interesting to work on. Hopefully more details about that in the next DevLog…