Categories
Uncategorized

The Merry-Go(dot)-Round

“There’s man all over for you, blaming on his boots the faults of his feet.”
-Samuel Beckett, Waiting for Godot

Blame my theatre background for the Waiting for Godot quote, I couldn’t help myself.

My team has been working on building a 3D escape room game, and we’ve been working in the Godot game engine. I came into this project as a complete novice when it comes to game development, so I didn’t have a strong feeling about which engine to choose. I’m perfectly happy to be learning Godot. I think that most of what we’re learning would translate to game development on a different platform, and I’m not sure that I’ll do a lot of game development in my career anyway.

The benefits of using Godot is that the engine is a little more streamlined. We briefly considered the relative advantages and disadvantages of Unity and Unreal, but ultimately decided that we liked the genuine open source nature of Godot more than the variety of one of the mainstream engines. The scope of our project is small enough that we wouldn’t need the bells and whistles that might be afforded to us by using something like Unity.

We’ve been fully into development for a few weeks now, which has allowed us to get basic prototypes in place for the player, the environment, and the sound effects. Most of our sprint has gone pretty smoothly, except for the last week where each member of our team struggled to troubleshoot a myriad of technical problems. Some of the issues were from the relationship between Godot and Github, especially concerning code written in C# rather than the engine’s native GDScript. We had a block of problems stemming from one team members C# script that was pushed without the csproj file, which left the rest of us unable to run the player code.

Other than these inconsistencies between our tech stack, I’ve really been enjoying learning how to use Godot. I fully recognize that most (if not all) of our issues stem from our inexperience with the platform, and therefore these problems will get less frequent with time. I’ve been enjoying the cross between creating things within the interface and writing code, as certain things are best accomplished through specific methods. Cultivating this instinct for the best approach is one of the most rewarding features of this learning curve.

As my quote indicates, the problems we’re having are user created. It isn’t fair to blame the technology when it’s our inability to use it that causes the issues. And even though we may have had a difficult week of struggling through blockers, getting through them together has vastly improved morale and team spirit. We’re learning to rely on each other’s knowledge and gaining more insight into how we can assemble into the optimal team.

Categories
Uncategorized

Smelly Code, Smelly Code

I always appreciate when the subject matter I’m studying goes beyond the strict boundaries of whatever is most functional and immediate. Writing clean code is one of those things that is often overlooked and undervalued. We’ve discussed it at length in several of my classes at OSU, and I still find myself having to slow down and consciously consider ways that I can improve the readability and cohesion of my code.

I am the first to admit that I’m not great at commenting my code, and that I tend to do most of my commenting as an afterthought. I think that comes from underestimating my ability (or overestimating everyone else’s). There’s a part of me that struggles to define what might be considered complex or not intuitive, and I think a lot of that comes from assuming that I struggle more (as a baby developer) than any potential readers. I’m working on being more intentional about comments, which is advice I’ve come across through a multitude of sources.

That being said, I do make a concentrated effort to be concise when I code. I am generally good at consistency and clarity in variable naming, and I’m mindful of redundancy in code and strive to separate things into more modular sub-functions.

One thing I’m actively working on phasing out is a tendency to hold on to outdated code that I’ve commented out. I have a silly fear about deleting a block of code and then finding out hours or days later that my previous solution was more effective. I’m not egregious about this, and usually I remember to delete the section once I’m done actively working on that part of the project. But sometimes things get left behind, and I’m striving to be more mindful of this tendency.

Section from Lara Letaw’s Handbook of Software Engineering Methods regarding comments and code smells

Categories
Uncategorized

Home Stretch: Fall Edition

We’re heading in to the home stretch now. I was a week or so late updating my office calendar in November, so instead of writing a month at the top I titled it “Home Stretch” and included everything from November 10th through mid-December. Having the last five weeks of this fall term all together where I can see them has been nice. I’m a big fan of efficient presentations, and that what this feels like. Not that it doesn’t have personality; my partner filled it with drawings of our cat Pepper at the start of the term, which still makes me smile even though the pictures are a little worse for wear now.

Here’s a photo of our model, Pepper

I’m at that point in this term now where I am operating like a well oiled machine. I’ve recovered from all of my earlier issues and setbacks and have turned my weekly time management schedule into both a science and an art. That ease and simplicity and peace is how I know it’s time to start a new term.

In all seriousness, I’m excited to be progressing through my senior year. Every day I’m inching closer to the goal of completing this program. There’s only a week left of this fall term and then I get to turn my attention to my winter break projects. This year, that means learning how to utilize the Godot game engine and hopefully finding a job for my post-graduation world. Life stays busy, but I don’t mind. I’m just glad to be here.

Categories
Uncategorized

Life Happening

I’m going to be honest here, it’s been a rough ride for the last month or so.

I feel like I’ve been in one of those lovely life stages where everything is finding uniquely challenging ways to go wrong. It starts with a nasty bout of Covid that ran its course through my family in October. I had a lot of issues with fatigue and brain fog, in addition to a fever that didn’t want to let me out of its clutches. Unfortunately, this coincided with a stretch of time where I needed to be at my most focused in class. I distinctly remember telling my capstone project mates that my brain felt like soup during one of our planning meetings.

Fortunately, sickness doesn’t last forever, so after a couple of weeks I crawled out of my blanket nest and got back to business. I managed to keep up and meet the bare minimum while I was sick, but it left me a whole pile of advanced tasks to do once I felt better. I hit the ground running, only to be derailed by life at the worst time.

My extended family does a yearly women’s retreat around the beginning of November. I haven’t missed a single one since I was eligible to attend the adults-only Freedom Weekend, so I knew that I would have to get ahead in order to take the time off for relaxation. The final week of October was a mad rush to get all of my work done, and I was making reasonable progress. Unfortunately for me, my partner had a very scary medical emergency in the middle of the night on the 31st. Everything turned out okay, but I could have lived without the 4 AM ER visit. When everything settled back down, I threw myself back into work.

It was a frenzy of activity, and I think my desk was as full of post-it notes and research papers and assignment specifications as it’s ever been. I think I looked a little wide-eyed and wild whenever anyone happened to glance through the doorway of my office. But I got there, and I finished what I needed to get done.

I’d love to say that my early November has been less chaotic, but I’m not sure that’s true. So far this month has included an extended family gathering (wonderful and stressful), a presidential election (extremely stressful, not so wonderful), and my anniversary (purely delightful).

Life has been a lot recently, but I’m optimistic that things might calm down soon. And if nothing else, there’s only four weeks left of the fall term.

Categories
Introduction

Welcome to Paradeis

Hi, friends!

My name is Mackenzie Paradeis and I’m a senior Computer Science student at Oregon State University. I’m based in Moorhead, Minnesota, which is a relatively small town just across the river from Fargo, North Dakota. I’m originally from Brainerd, Minnesota, which is right in the heart of lake country in north central Minnesota. I live with my partners and our three cats, who do their best to keep our lives interesting and active.

I enjoy playing games of all kinds (card, board, video, etc.) and often spend my free time immersed in my current video game fascination. I’m looking forward to learning more about game design and development this year. I also really enjoy reading, puzzles, and crafts.

I chose to go back to school for computer science because I felt like it was time for a change in my life and it was one of my back burner career choices. I obtained a degree in massage therapy and spent several years in that field until moving on to pursue other interests.

The two years I’ve spent at OSU have been challenging, enlightening, and rewarding. The thing I like most about learning to program is the problem solving — I’m a big fan of having a puzzle to solve. There’s nothing quite like the moment when everything comes together, and it makes the hours of tracing code and running tests worth it.

I’m excited to get the chance to devote an entire year to working on a single project. I’ve been looking forward to the capstone, and I’m eager to get started.

Thanks for joining me on this journey!

Categories
Introduction

Hello world!

It wouldn’t be right to start any other way.