RSSAmplifier

Blog

Winston Cooke

A collection of musings on tech, art, and more.

/RSS feed ↗23 posts

Latest posts

America 250

Face Value Washington D.C., USA Fujifilm X100VI Solace Washington D.C., USA Fujifilm X100VI STOP Washington D.C., USA Fujifilm X100VI A More Perfect Union Washington D.C., USA Fujifilm X100VI Enduring Washington D.C., USA Fujifilm X100VI No Wading Washington D.C., USA Fujifilm X100VI National Parking Washington D.C., USA Fujifilm X100VI ICE Washington D.C., USA Fujifilm X100VI Raised Standards…

On AI Coding Assistants

Opening thoughts Since switching to using AI coding assistants as a first class citizen in my development cycle last October, I haven't had a single eureka moment at my job despite previously having them on a weekly basis. That's a scary proposition because those moments are clear signals of overcoming a difficult concept to learn something more deeply. Nonetheless, there are real pressures to use…

Saint Vincent and the Grenadines

Harbor Bequia, Saint Vincent and the Grenadines Fujifilm X100VI Reflection Bequia, Saint Vincent and the Grenadines Fujifilm X100VI Flow Bequia, Saint Vincent and the Grenadines Fujifilm X100VI Motivational Quote Saint Vincent and the Grenadines Fujifilm X100VI Runway Union Island, Saint Vincent and the Grenadines Fujifilm X100VI Anchored Union Island, Saint Vincent and the Grenadines Fujifilm…

Accounting for Fixed Assets

I previously discussed how double-entry accounting works—including how to create the balance sheet—in my article A Basic Introduction to Accounting . Now let's explore some more basic accounting concepts: revenue, expenses, and depreciation. Fixed assets provide a great way to explore these concepts, so let's not waste anytime and get right into it! Revenue Recognition Sales Revenue Imagine we run…

Recurse Center Return Statement

I recently wrapped up a 12-week batch at the Recurse Center (RC) in Brooklyn, NY, and I can safely say that attending RC was one of the best decisions I have ever made. This was the most creative period of my life, and the amount I learned rivaled my time in college with the added bonus that I was able to learn what I wanted to learn. I had a few bigger projects that I worked on while at RC that I…

Rotation-Based Compression

Background In the late 19th to mid 20th century, the United States Department of Agriculture hired dozens of artists to paint watercolors of every fruit that grows in the United States. The collection contains 7,497 watercolor paintings, 87 line drawings, and 79 wax models created by approximately 21 artists. I thought this would make a great set of images to choose a random photo every day to use…

Improving Performance in Plight of the Wizard

I wrote most of the core code for Plight of the Wizard during a four-day game jam at Recurse Center . The game was perfectly performant at that time given the limited scope. However, I have made a lot of changes to the game since my last blog post, and a lot of my initial code did not scale very well at all. The biggest change I made was implementing a camera to allow the player to explore a…

Preventing Players from Cheesing

Media in this article may trigger epileptic seizures . Reader discretion is advised. While watching people play my game, Plight of the Wizard , I observed a clever tactic. Some players learned how enemies spawn and used it to their advantage. The enemy spawner I implemented spawns enemies a certain distance away from the player. This way, if the player's back is to a corner, then the enemy won't…

Creating a Rotation-based Indicator

After making an arena shooter for the Playdate titled Plight of the Wizard , there were a few areas that I knew needed some polish. One of those areas was how I handle my character's rotation. Here was my previous implementation: There were two issues with my approach: 1. Rotating a sprite in code is not very performant According the the Playdate SDK : This function should be used with discretion,…

Making a Game for the Playdate

I spent the past five days building a game for the Playdate for a game jam while at Recurse Center . Building the game required learning quite a few new things: lua, the Playdate SDK , working with sprites (including animation), music, sound effects, and the general concept of game design. Working with the Playdate SDK has been wonderful. It's well documented and provided everything I needed to…

Removing the Headphone Jack

1999 I wasn't happy the day we left Oxford and headed to London. "We're returning home", my parents told me. "But Oxford is my home", I objected. I didn't have much say in the matter, which felt unfair. Four-year-olds tend to have an inflated sense of importance due to their slight deficiencies in experience, wisdom, and just about every other possible metric that contributes to rational thought.…

Greece/Ελλάδα & Oxford, England

Rigged Paros, Greece / Πάρος, Ελλάδα Minolta X-700, Minolta MD W.Rokkor-X 35mm f2.8, Kodak Ektar 100 Rope Paros, Greece / Πάρος, Ελλάδα Minolta X-700, Minolta MD W.Rokkor-X 35mm f2.8, Kodak Ektar 100 Rendering Paros, Greece / Πάρος, Ελλάδα Minolta X-700, Minolta MD W.Rokkor-X 35mm f2.8, Kodak Ektar 100 Reflections Paros, Greece / Πάρος, Ελλάδα Minolta X-700, Minolta MD W.Rokkor-X 35mm f2.8, Kodak…

California Zephyr

Union Station Chicago, IL iPhone 13 mini, 26mm f/1.6 ISO50 Polar Express Winter Park, CO Nikon F4, Nikon ED AF NIKKOR 80-200mm f/2.8, Kodak Portra 400 Snowy Tracks Winter Park, CO Nikon F4, Nikon ED AF NIKKOR 80-200mm f/2.8, Kodak Portra 400 Train Side Glenwood Springs, CO Nikon F4, Nikon ED AF NIKKOR 80-200mm f/2.8, Kodak Portra 400 The Rockies Glenwood Springs, CO Nikon F4, Nikon ED AF NIKKOR…

git pushall

git add remote "all" It starts to become bothersome having to push to multiple remote repos (i.e. Github and my nas) manually one-by-one. Linus Torvalds, the creator of git, mentioned 1 back in 2006 that he uses the following method: So for "git push" (where it makes sense to push the same branches multiple times), you can actually do what I do: - .git/config contains: [remote "all"] url =…

Mastodon Discovery and Nintendo StreetPass

Mastodon provides a simple way to implement link verification . This allows you to add a verified checkmark next to links added to your profile by simpling adding this bit of code to the head tag of your website: < link href = " https://social.example.com/@username " rel = " me " /> The great thing about verification is that it also comes with discoverability in the other direction! Using a…

tic-tac-toe

I came across this 1 fantastic resource from April 2000 while looking for a way to improve the computer for my tic-tac-toe game I developed to improve my Rust skills. It uses the negamax algorithm to determine the best move at the start of each turn by trying to win the game while making it as hard as possible for the opponent if the computer can't win in the next move. Negamax is a simplification…

git recent

recent branches I came across 1 a useful git alias that lists the 10 most recent branches: git config - -global alias.recent-branches ' !git branch --sort=-committerdate --format="%(committerdate:relative)%09%(refname:short)" | head -10 ' Which can be called using git recent-branches . recent commits This inspired me to make a similar alias to list the 10 most recent commits: git config - -global…

Improving The Beatles Red and Blue Albums

The Beatles' 1962-1966 (Red Album) and 1967-1970 (Blue Album) compilation albums that originally released in 1973 need little introduction. The 54 songs across both albums captured The Beatles evolving sound over the years and naturally split their music into early and late eras. However, the decision to only include original Lennon-McCartney compositions on the 1973 release of the Red Album means…

A Basic Introduction to Accounting

Double-entry accounting at its simplest is the accounting equation: Assets = Liabilities + Equity Accounts are created that fall under one of these three categories in addition to revenue and expense accounts. Asset accounts normally 1 carry a debit balance while liability and equity accounts normally carry a credit balance. In simple terms, debiting an asset account will raise its balance while…

How Game of Thrones Should Have Ended

This post contains spoilers for the television show Game of Thrones and the book series it is based on, A Song of Ice and Fire. The ending to the television show Game of Thrones was poorly received and rightfully so. The decisions made and their respective justifications by the showrunners were often questionable at best, and the execution felt rushed. The show needed at least another season to…

Appreciating 240p

A brief history lesson July 15, 1983 was a red letter day in gaming history when Nintendo's Family Computer (Famicom) and Sega's SG-1000 were released simultaneously. Today, these video game consoles are known for their charming 8-bit graphics, but it was their processor (that the graphics were incorrectly named after) that was the real star. With the ability to store up to 256 (2 8 ) values, the…

Heirloom Cameras

Heirlooms are usually objects defined by their desirability that have been passed down for generations from one family member to the next. There is an inherent degree of difficulty in replacing them due to their value or uniqueness. Historically, heirlooms were tools, hence the word loom in the name, but the concept has evolved in modern times to commonly include jewelry such as necklaces and…

Albania & Greece&#x2F;Ελλάδα

Bicyclist For Scale (Kryeministria) Tirana, Albania Minolta X-700, Sigma 35-135mm f/3.5-4.5, Kodak Portra 400 Look Up From Your Phone Tirana, Albania Minolta X-700, Sigma 35-135mm f/3.5-4.5, Kodak Portra 400 Gjirokastër Castle Clocktower Overlooking the New City Gjirokastër, Albania Minolta X-700, Sigma 35-135mm f/3.5-4.5, Kodak Portra 400 Free-Range Caged Cockerel Gjirokastër, Albania Minolta…