Updates

What we're building, what just shipped, and the occasional note from Neeri. Newest first.

Mailer is almost in the water 📬

It's been quiet on this page since August, and that's mostly my fault: I've been heads-down rebuilding Mailer, our mail merge, from the ground up. (Secure Vote has been busy too, and it's getting a post all of its own very soon.) Here's where things stand.

Mail merge is the oldest good trick in the office: write one email, point it at your spreadsheet, and every person gets their own — their name, their shift, their link. The earlier Mailer was ours alone, never something I could hand you. This one is a from-scratch rewrite, built to be open source so anyone can run it. And I really hope to call it alpha in the next week or so.

Here's what already works. Connect the account you send from — a Google account with an app password, or any SMTP server — and send yourself a test message to prove it. Bring your list as a CSV upload, a link to a Google Sheet, or a list kept right inside Mailer that you can add to, edit and prune row by row. It reads real-world spreadsheets kindly, too: a title row above the headers, odd quoting, a column nobody named. Mark the rows to skip for each mailing, and attach images, each one named the way you want your recipient to see it.

The part I'm proudest of landed this week: the merge language. It's small on purpose. {{ first_name }} drops in a column, and capitals and spaces don't matter, so {{ First Name }} finds the very same one. {{ first_name|default("friend") }} covers the empty cells. {% if volunteer %}…{% else %}…{% endif %} says one thing to your volunteers and another to everyone else. That's very nearly the whole lesson. A template can't run code, by design, so a stray brace never turns into anything worse than a friendly error message.

And the error messages are the point. Mailer tells you about every mistake, with its line and column, before anything goes out. It can check every row of your list in one go, so the forty-seventh person with a blank first name turns up now, not in your sent folder. You can preview the message as any real recipient and test-send it to any address you like — and the preview, the check and the test send all render through the very same path as the real send, so what you looked at is what they get. The on-screen preview pane is what I'm wiring up next.

Still to come before alpha: the send engine itself, built so a hiccup halfway down a list never sends anyone the same email twice, and a proper installer, logo and all.

Meanwhile, over in Chooser, a lot of the work went into making its emails easier to trust. Invitations now carry a plain, words-only button, and your personal key is printed as text you can use yourself: go to chooser.shatuga.com, tap the key icon beside Sign In, and pop it in — no clicking a link you're unsure of. The first time someone hears from Chooser, the email says so, and the sender reads as "your name via Shatuga Chooser." And before you email a group with people new to Chooser in it, Chooser now nudges you to give them a heads-up first, and even suggests the words.

New free accounts now start with 200 email credits, up from 50 — enough to invite most clubs, crews and departments without buying a thing.

Smaller splashes: polls have a new Range question, where people rate several things on one scale (1 to 5, or whatever you like), and the results show each item's average with a little strip of where the answers landed. The weekly time grids finally drag-paint on phones, and the rows are slimmer, so a whole nine-to-five fits on one screen. A Flow's presenter now opens on the same big scan-to-join slide polls got in August. And one fix said out loud: an email to a list of more than 100 people could fail entirely — one roster of 129 sent exactly zero. Chooser sends in batches now, so a hiccup only ever touches its own batch.

Shatuga.com got a fresh coat as well. The homepage follows one crew through their week, every product has its own page, and there are new pages for nonprofits, schools, anyone giving a talk and volunteers.

Next time: Secure Vote, which deserves the whole page. 🌊

Chooser looks good on the big screen now 📽️

Presentation Mode — the full-screen view you put on the projector while a room answers — used to belong to Flow alone. Not by design; just by accident of where we built it first. Which was a bit silly, because the most common thing anyone wants on a screen is one poll, live, right now. So Chooser polls have their own presenter now. Open your poll's admin view, go to the Links tab, and there it is: Presentation Mode.

It opens on a slide made for the part everyone forgets to plan for — the three minutes while people are still finding a seat. Just your question and a full-size join QR, big enough to scan from the back row. Then it's one question per slide, nothing but the question and its answers, and a final slide for the comments people left. No tabs, no cards, no chrome you can't click from thirty feet away.

The opening slide of Chooser’s poll presenter: the question "Tasks vs Projects" in large type beside a full-size join QR code labelled "Scan to join", with the sidebar showing Prev and Next, a Jump to question box, and a green Live indicator
The slide the room looks at while everyone is still finding a seat — your question, and a QR big enough to scan from the back row.

And then I went and measured the thing, in a real browser, instead of trusting the stylesheet. Ouch. A date step was running a couple of hundred pixels past the bottom of the slide — worse in a six-week month like this coming November, where the calendar simply grows another row and shoves everything off the edge. It fits now, all twelve months of it. So does the poll chart, which had a quieter and meaner problem: it was drawing six labels for twelve options. Six bars with nothing naming them, on a projector, in front of a room. Every option is named now, long ones wrap, and the winning bar's count no longer gets clipped off the right edge — which, of course, was the one number anybody was looking at. An option nobody picked says "Not chosen" instead of a bare zero, and a question nobody has answered yet says "Waiting for answers…" over the plain list, which is the truth and reads much kinder than a column of noughts.

The feed is properly live now, too, and says so. It used to quietly stop refreshing after ten minutes — fine if you were clicking through slides, quietly awful if you'd parked on one open question while the room typed. It runs for an hour, and there's a Live / Paused badge that tells you which it is and starts again when you click it. New answers arrive at the top of the list, where you'll see them land, rather than slotting in somewhere alphabetical and invisible.

Two things about revealing steps in a live Flow. Hidden now means hidden: a step your participants can't reach is no longer projected on the wall behind you, and the slide counter agrees with what everyone's holding. And when you reveal a step, the room follows you to that step — the one you just opened. Previously everyone jumped to the last visible step instead, which is right only when you reveal them in order, and I'd quite like Chooser to be right the rest of the time as well.

While I was in the water: every Flow step saves itself now, live or by email, so the async "Save" button is gone. Moving between steps waits for your answer to land before it goes anywhere, and switching tabs or closing the app flushes whatever's pending. Copying a Flow makes a real copy of its steps, rather than two flows quietly sharing one set. And if you've ever run a session where the whole room is on one campus wifi — so everybody looks like a single visitor to us — the limits that were designed for one person are now sized for a roomful. Sign-ins, making a chooser, plain page loads: all of it.

One more, said out loud rather than buried: we caught a security problem in the route that returns a chooser’s results. No production data was leaked — but it would have let someone collect participants’ email addresses, and that is exactly the sort of thing we take very seriously. We patched it as soon as we found it: those details now sit behind an admin-only route that checks your admin link first, so the public one can’t hand them out even by accident.

Go put a poll on a wall. It looks rather good up there. 🌊

Chooser can tap you on the shoulder now 🔔

Here's the thing nobody tells you about running a chooser: the making is the fun part, and then you spend three days refreshing the results page like you're waiting for a kettle. Not anymore. Chooser now has notifications — and honestly, it's the feature I've wanted since the day we started.

Tick "Email me when participants respond" when you set things up (it's right there in the options, on every chooser type), and Chooser will quietly keep watch for you. As answers come in, it sends you a tidy digest — who responded, what changed — with an Open results link that drops you straight onto the page you actually want. Run a Flow and you get a note when someone finishes the whole journey, all their steps gathered into one summary. Go make dinner. We'll tell you when something happens. The email notifications do require an account, since that's how Chooser knows your email address. Accounts are free. Email notifications don't consume your very generously allocated Plus email credits.

The other bit I'm delighted about: Word Clouds are live. The tile on the Chooser home page isn't a teaser anymore — click it and you land in a poll that's already set up to collect words and bloom them into a cloud. It's the fastest icebreaker we've got: one question, everyone types a word, the room watches the big ones swell. Drop it into a Flow as your opening step and watch what happens.

A Chooser word cloud filling in live on the results page: the question "Describe today in one word" above a cloud that grows from a single answer to fifteen, with amazing, happy, relaxed and excited swelling largest as more responses arrive
Answers land and the cloud blooms — the words people pick most simply grow the biggest.

We also opened the doors wider. How many people can join a chooser now depends on your plan, and it moves with you: 50 for an anonymous chooser, 500 the moment you make a free account, 1,000 on Plus, and up to 10,000 if you're running something genuinely enormous. Claim an anonymous chooser later and the ceiling lifts on its own — no re-making anything. And if you're at a school: .edu accounts get Plus free for now.

Behind the scenes, our shift scheduler got a serious safety pass. Edits to a passcode-protected submission now have to prove they know the passcode, so nobody holding a stray link can overwrite someone's availability or lock them out of their own shifts. We also stopped a nasty quiet one: change requests filed on an already-closed week were being swallowed without a trace. They come through now. If you run staffing on Chooser, these are the fixes you'd never have noticed and would very much have wanted.

Plus the usual pebble-smoothing — a bot-check script that could trip over itself on load, task presets showing up properly on a fresh Flow step, and Flow itself finally shedding its Alpha badge, because it's earned it. 🌊

Smoothing the pebbles in Chooser 🦦

After the big Flow splash, I went paddling back through Chooser to smooth the pebbles — those little wording snags that make you pause and wonder "wait, what does this actually mean?" Nothing here changes how anything works. It all just reads more like a friend explaining it than a form barking at you.

The biggest one: what we used to call an "Access Key" is now a "Join Code." Same little code that lets people into your chooser — it just finally sounds like what it is. You'll see the friendlier name everywhere participants do: the join screen, the presenter QR, the sharing line, all of it.

While I was in there, the admin "Share" tab became "Links" — which is honestly what it always was: your participant, admin, and results links, tidied into one spot. And the People tab got a good grooming. The email section now says plainly what it does ("Send Invites, Selections, and Assignments"), the "Add People" box walks you through adding folks one-per-line right where you type, and the pass-code option spells out that it's a four-digit code protecting each person's picks.

A couple of gentler moments, too. If you type a name someone's already used, Chooser no longer wags a finger about uniqueness — it simply offers to recall and edit that person's selections instead, because that's usually exactly what you meant. And the Task chooser's word-customization section got rearranged so its example sentence finally reads in order.

Under the surface, I patched a few leaks: Chooser now shrugs off the occasional Turnstile hiccup and heals itself instead of crying "ad blocker," recalling your choices is steadier, and your assignments and finalized dates keep their shape when you flip between steps.

Small things, every one of them — but small things are what a whole gathering glides across without anyone noticing. That's the good stuff. 🌊

Introducing Flow — run your whole gathering as one 🌊

Splash alert! 🌊 Chooser just gained the biggest thing we've ever added to it: Flow. If you've ever run a gathering where you needed a quick poll, then a task sign-up, then a date to lock in — and ended up juggling three separate links — this one's for you.

Flow strings choosers together into a single, guided journey. Every step is its own chooser: a poll, a claim-a-task board, a find-a-date, a find-a-time. Mix and match them, drag them into the order you want, and you've built a whole session in minutes — one link, one room, every step in sequence.

The Flow steps builder in Chooser: two steps (a poll and a task claim) with Hide and edit controls, and buttons to add a poll, claim-a-task, find-a-date, or find-a-time step, plus a View Presenter Flow button
Build a Flow from any mix of choosers — poll, claim-a-task, find-a-date, find-a-time — then reorder or hide steps until you're ready.

A Flow really shines when you've got a related set of choosers to run together — and there are two lovely ways to do it. Asynchronously: grab a bundle of email credits (10,000 for twenty bucks — yes, really) and send everyone their own Flow link. The email can even show each person the selections they've already made, so your whole team can weigh in on their own time, from wherever they are.

Or — gather everyone in the same room and go live. That's the part I'm most excited about: Presenter mode. Put your Flow up on the big screen and a join QR code pops right up for the room to scan — no logins, no hunting for links. Reveal each step when you're ready with Prev / Next, tuck away the ones you're saving for later, and watch answers roll in live. It's a poll, a workshop, and an icebreaker all in one current.

Flow presenter view showing the "What's next?" poll as a live bar chart of responses, with Prev/Next step navigation, a Scan-to-join QR code, and a Refresh Results button
Presenter mode: reveal one step at a time, flash a QR for the room to scan, and watch results roll in live.

Either way, Flow keeps everyone in sync: it remembers each person by name across devices, and every answer across every step comes back to you as one tidy summary.

This is a real leap for getting a whole group moving together — exactly the kind of thing we're here to make effortless. Go build your first Flow — I think you'll love it as much as we loved making it. 🌊

Hello from Neeri 🦦

Hi! I'm Neeri, Shatuga's resident river otter — and this is our new Updates page, the spot where we'll share what we're building, what just shipped, and the occasional splash of river wisdom.

Right now Engage and Chooser are in open beta, Shatuga Tools is live, and more is paddling downstream. I'll pop back here whenever there's something worth telling you about — no spam, no fluff, just the good stuff.

Thanks for swimming by. 🌊