Jon Milley Creations

Growl: The Newfoundland Card Game My Family Plays

Sunday evenings at Gran Quigley’s house meant cards. Not the polite kind. Cards with a deck slapped onto the table, a trump called, and somebody, usually somebody related to me, accusing somebody else of “wasting the five.” The game was 120s, and if you grew up around any branch of my mother’s family in Newfoundland, you grew up around it.

I assumed for years that this was a Quigley peculiarity. Then I started dating my wife, and over the holidays her family pulled out a deck and started bidding. Same game. Same arguments. It turns out that if you have Newfoundland relatives, the odds are good that 120s is somewhere in the kitchen too.

Where It Comes From

120s is descended from an old Irish trick-taking game called “Twenty-Five,” sometimes “Spoil Five,” brought to the Avalon Peninsula by Irish settlers in the 18th and 19th centuries. The Irish version is still played, but the Newfoundland branch evolved its own scoring system, its own little rule wrinkles, and its own name. You play to 120 points, hence the title.

The most readable rule reference I’ve found online is by Paul Rice, hosted on a Memorial University page that has been there for what feels like forever: Paul Rice’s 120 guide. It is the closest thing the game has to a canonical written source, and it lines up with the way I learned to play at the kitchen table.

Splash screen of the 120s web app, with Signal Hill and Cabot Tower silhouetted under a dark Newfoundland sky

Why It’s Also Called Growl

Around Newfoundland the game has another name: Growl. The story I’ve always heard, and it tracks with my own experience, is that “Growl” comes from the noise the table makes during play. Somebody reneges when they shouldn’t have. Somebody leads off-suit when their partner clearly signaled trump. Somebody throws away the five at the wrong moment. The growling starts.

It’s not really anger. It’s a particular Newfoundland register of mock outrage that lives somewhere between “you eejit” and “you’re alright.” But the volume is real. If you’ve never been at a 120s table on a Sunday night, picture four adults who love each other yelling about a card game for two hours straight. That’s Growl.

How the Game Plays

I’ll keep this short, since Paul Rice’s guide does the full job. The shape of a hand:

  • Four players, two teams, partners sitting across from each other.
  • Five cards each, plus a three-card “kitty” on the table.
  • Bidding goes around once. You bid 20, 25, or 30 points based on how confident you are in your hand. If you have a five in your dealt hand and nobody has bid, you cannot pass; you must open the bidding. The dealer has the option to “take” a standing bid (match it without raising). If everyone passes, the dealer is stuck with a 20.
  • Trump is named by the high bidder, who picks up the kitty, then discards back down to five.
  • Five tricks are played. Each trick is worth five points. Whoever played the highest trump anywhere in the hand earns a five-point bonus.
  • Bid 30 is the big one. A 30 bid is “for sixty,” and you have to win every trick. Make it and your team gets sixty points. Miss and you lose thirty.

The trump ranking is what trips up new players. It is not the standard A-K-Q-J order. The top of the trump suit goes:

  1. 5 of trump (the highest card in the game)
  2. Jack of trump
  3. Ace of Hearts (always trump, regardless of what suit was named)
  4. Ace of trump (collapses with the Ace of Hearts when hearts is trump)
  5. King of trump
  6. Queen of trump
  7. Then the pip cards, with a twist: highest in red, lowest in black. If trump is a red suit, the 10 outranks the 2. If trump is a black suit, the 2 outranks the 10. Don’t ask why. It just is.

There’s also a renege rule for the top three trumps (5, Jack, Ace of Hearts). When trump is led, you may withhold one of those cards if no higher trump is on the table. It rewards strong hands and punishes lazy leads. It also produces the most arguments.

The “must bid to win” rule is the one that keeps games honest at the end. If your team would otherwise reach 120 on a hand you didn’t bid, you stop at 115. You have to win a bid to win the game. There’s no slipping over the line on someone else’s mistake.

What Makes It Stick

I’ve thought about why this game travels so well across generations of Newfoundland families when so many other card games faded out. Part of it is that a hand only takes a couple of minutes, so you can play forty hands in an evening without it feeling long. Part of it is that the bidding gives every hand a story: somebody bid too high, somebody held back too low, somebody made an impossible 30. And part of it is that the renege rule and the bid-30 rule and the run-in tactics give partners genuinely useful information to argue about afterward. Growl is the byproduct of a game that actually rewards thinking.

I learned at Gran Quigley’s house. My wife learned at her grandmother’s. Same game, same noise, same kitchens, separated by a few bays. There are not many things that connect families in Newfoundland the way 120s does.

A Small Coda

I built a browser version of the game so I could play a hand when I’m away from a table. Four-player, AI opponents, all the rules I described above (the five-rule, the renege rule, the bid-30 trump-lead, the cap at 115). You can play it here. The growling has to be supplied by the player.

A hand in progress in the 120s web app, showing the green felt table, three AI opponents (Patrick, Mary, Bridget), the bid panel, and the player's hand

Flash Words: Building a Speed Reading Tool with Agentic AI

I recently stumbled across a short form video on YouTube that caught my attention. It showed a person reading at an incredible speed by having words flashed in front of them one by one. I was skeptical at first, but after trying it for a few minutes, I realized how much faster I could process information when my eyes weren’t constantly jumping around a page. I decided I wanted my own version of this tool, something minimalist and efficient, so I built Flash Words.

Why Speed Reading?

Most of us read at a pace that is limited by our eye movements. We skip back, we get distracted by sidebars, and our focus wanders. Speed reading techniques like the ones in this app help by forcing the brain to focus on a single point. It eliminates sub-vocalization (that little voice in your head that says each word) and stops your eyes from performing “regressions,” which is when you accidentally re-read the same line twice.

The Science in the App

To make this work, I implemented three specific techniques:

RSVP (Rapid Serial Visual Presentation): This is the core engine. It shows words in the same spot at a high frequency. Since your eyes don’t have to move from left to right, you can ramp up the speed significantly without losing comprehension.

ORP (Optimal Recognition Point): This is that little red letter you see in the middle of the words. Research shows that our brains process a word faster if our eyes are fixed on a specific focal point (usually about 35 percent into the word). By highlighting this point, the app helps your brain “snap” to the word instantly.

Bionic Reading: This mode bolds the first few letters of every word. It acts as a guide for the eye, letting the brain complete the rest of the word based on context and memory. It is surprisingly effective for staying focused during long sessions.

Main reading interface showing ORP mode

Built in an Evening with Agentic AI

The most interesting part of this project was the development process. I built the entire application in a single evening using Agentic AI. Instead of just writing code myself or copying snippets, I worked with an AI agent that could understand the high level goals and perform complex refactors autonomously.

We started with a basic React structure and quickly realized the settings menu was becoming too cluttered. In one session, I had the agent refactor the entire settings modal into a responsive drawer that slides out on the side. This allowed me to keep the text visible in the background so I could see exactly how font changes or letter spacing adjustments looked in real time.

The responsive settings drawer on desktop

Research and Accessibility

One of the highlights was using the AI to research ways to make the app better for people with dyslexia. The agent found studies on the OpenDyslexic font and the benefits of specific color overlays. Based on that research, we added a dyslexia-friendly mode, adjustable letter spacing to reduce visual crowding, and low-contrast themes like “Sepia” and “Dim” to reduce eye strain.

We also expanded the app to handle more than just plain text. We integrated libraries to parse PDFs, Word documents, and even EPUB files. Each of these libraries is quite heavy, so the agent implemented lazy loading. This means the code for parsing a PDF only downloads to your browser if you actually try to open a PDF, keeping the app fast and lightweight.

Give it a try

The final result is a Progressive Web App (PWA) that works offline and saves your progress automatically. You can load a book, set your target speed, and let the ramp-up feature slowly bring you up to 500 or 600 words per minute.

You can try the application here: https://flashwords.jonmilley.com

Mobile view of the app in sepia mode

Introducing QuiltForge: Where Software Meets Stitches

As I mentioned in my last post, I’ve taken up quilting for the first time. Like most beginners, I quickly discovered that quilting is far more than cutting fabric and sewing it back together. There is colour theory, geometry, fabric estimation, cutting precision, and a surprising amount of planning before a single stitch is made. As someone who has spent years writing software, my instinct was immediate: there has to be a better way to plan all of this digitally.

So I built one.

QuiltForge is a web-based quilt design application I have been building in my spare time. It is free to use, runs entirely in your browser, and is designed to help quilters (especially those just starting out like me) plan their projects from start to finish before touching a single piece of fabric.


What QuiltForge Can Do So Far

Fabric Library

You can upload photos of your fabrics and organise them in a personal library. Add tags, give them names, and QuiltForge will automatically extract a dominant colour from each one. Your fabrics then appear as swatches throughout the rest of the app, so your designs always reflect what you actually have on hand.

Block Designer

This is where the fun begins. QuiltForge ships with a growing library of classic quilt block templates including Half-Square Triangles, Quarter-Square Triangles, Flying Geese, Pinwheels, Ohio Stars, Log Cabins, Churn Dash, Sawtooth Stars, and more. Select a template, assign your fabrics to each shape, and watch it come to life with your actual fabric textures.

There is also a free-form drawing mode for when you want to design something entirely from scratch.

Quilt Layout Designer

Once you have designed your blocks, you can arrange them into a full quilt layout. Set your grid dimensions, drag blocks into cells, and mix and match them across the quilt. Each cell can be individually rotated or flipped. You can also add sashing, multiple borders, and binding, each with their own fabric assignments.

The layout gives you a live preview of your finished quilt with accurate proportions and your real fabric textures applied.

Fabric Estimator

One of the trickiest parts of starting a quilt is figuring out how much fabric to buy. QuiltForge calculates yardage requirements for every fabric in your quilt automatically, including seam allowances, a 15% waste factor, and the standard bolt width. It rounds up to the nearest eighth of a yard so you always have enough.

Cutting Calculator

A standalone tool that takes a finished piece size and tells you exactly what to cut, with seam allowances included. It covers the most common units: squares, half-square triangles, quarter-square triangles, flying geese, and more.

When you are ready to get to the sewing room, QuiltForge can generate a print-ready summary of your project including a quilt layout diagram, block diagrams with piece labels, a full cutting list organised by fabric, and a fabric requirements table. You can also export the quilt layout as a PNG image.


A Work in Progress

I want to be upfront: QuiltForge is very much a work in progress. I am still early in both my quilting journey and the development of this tool. Some features are rough around the edges, a few are incomplete, and the design will keep evolving as I learn more about what quilters actually need.

I am building this alongside my own learning. Every time I start a new project and run into a planning problem, it becomes a feature on my list.


Free to Use, Always

QuiltForge is and will remain free to use. There is no account required, no subscription, and all your data stays in your browser. My goal is simply to make quilt planning easier and more enjoyable, and I hope it can be useful to others who are just starting out the way I am.


I Would Love Your Feedback

If you give QuiltForge a try, I would genuinely love to hear what you think. What works well? What is confusing? What feature would make your planning life easier? Whether you are a brand new quilter or someone with decades of experience, your perspective would help shape where this goes next.

You can find the app at quiltforge.jonmilley.com and send feedback or feature requests my way at https://x.com/jonmilley.

Happy quilting!