Journal des changements
Journal des changements
Ce qui a changé, daté — et dit par quelqu’un qui s’en sert.
Pas un journal Git. Le dépôt est public et qui veut chaque commit les trouvera là. Ici figure ce qu’une personne aurait remarqué — erreurs comprises, car un journal sans lignes gênantes prouve que la promesse « nous publions aussi ce qui n’a pas marché » est décorative.
Ce texte n’existe qu’en allemand et en anglais : il s’adresse à des personnes qui vivent ici. Vous le lisez en English.
The chat is the fleet's chat app
«/chat» is now the same chat app as Loki's and OrangeCat's (chatkit's `ChatApp`): your conversations sit in a drawer on a phone and beside the chat on a wide screen, with a search box and «Today / Yesterday / Earlier».
- New: a temporary conversation that is written nowhere; a message you write while Heidi is answering waits above the box and goes when she is done; and the conversation you had open comes back after a reload.
- Signed out, the list stays in this browser and nothing reaches the database. A conversation from the Heidi box or the floating window comes along; an older one is offered, not put back. «Delete everything» in the settings reaches every conversation in the list.
- Stop still throws away the half answer — it had not been checked for Zurich forms — and a failure still says why. The buttons under an answer («Shorter», «Word by word») and «What does it mean?» on a selected word now put their sentence in the box instead of sending it at once.
- Later the same day, with chatkit 0.19: the buttons under an answer and «What does it mean?» send in one tap again. Each failure keeps its own sentence, even with two in one conversation; Retry sends the pictures again; and signed out, the line saying the conversations are only in this browser sits above the list of conversations, with sign-in beside it.
Heidi opens on an empty conversation — the last one is a row away
Nearly everyone who opens Heidi has something new to ask: a message that just arrived, a word from the lunch table. Until now you landed in last week's conversation and had to find the way out. Now an empty conversation opens with the box ready, and the last one sits above it as a single row, one tap away.
- A conversation you were in less than half an hour ago stays as it was: ask something, read on a grammar page, come back — the same conversation. Anything older is offered, not put back; it is not deleted either. Signed in, it is your most recent saved conversation.
- The same on the Heidi box on the home page, the floating «Ask Heidi» and `/chat` — all three now follow one rule, and the floating window shows the same examples as the chat instead of questions of its own.
- The heading of an empty conversation now asks what you want to understand or say, instead of repeating «Ask Heidi» under a button that already said it. The icons at the top of the floating window (new conversation, full screen, close) are now 44 pixels.
- Talking to Heidi now has one name: the header, the home page and the floating button all say «Ask Heidi» (the header and home page said «Quick chat» for the same thing). On a phone the floating button slides away as you scroll down and comes back when you scroll up, at the top and at the end of the page — it no longer covers the lines you are reading.
- An empty box has a «Paste» button: most first messages are a line someone else wrote and you just copied. One tap fills the box (nothing is sent); the clipboard is read only when you tap, and where the browser does not allow that the button is not drawn at all.
- The first screens for someone who comes back: on «My area» a learner who has already practised no longer gets the warm-up as a second dark button above «Practise now» (it is a quiet line; newcomers still see the card), and the empty «Continue» heading over «No conversations yet» is gone. On «Exercises» the note about where your answers are kept now sits under the start button — «Let's go» is on a phone's first screen instead of below it.
- Uneven choice buttons are now equal cells: in Settings, language and appearance were buttons as wide as their words, three to a row with one left over; now an even grid. The footer's language list got half a column on a phone and broke «Schwiizerdütsch» and «Rumantsch» in the middle of the word; it now has the full width.
- On «The most important words» the button that starts learning the next ten words is on a phone's first screen — above the ten words instead of ten rows below them (on a wide screen it stays under the list).
Your channels: watch YouTube, understand it, be asked about it
Under «Your channels» you follow YouTube channels you watch anyway — by link, video link or @name, or from the register under «Listen». Heidi reads the channels hourly, shows what is new since your last visit, and tells your phone when you turn notifications on. Every video then comes with questions: one before the first listen, three to five after it, every wrong answer with the moment it was said.
- The transcript is the platform's captions — and it always says whether they are the publisher's, automatic («often wrong on dialect») or pasted by hand. When YouTube refuses a server the transcript, the screen shows the three steps to copy it from YouTube's own transcript panel.
- The model writes the questions once per video from the transcript; each is checked against the transcript before anyone sees it, and everyone following the channel gets the same ones. No grade: a count with its denominator, and the parts to replay.
- Podcasts belong: a podcast's feed is read like a channel's, the publisher's page or an Apple Podcasts link leads to it, and every podcast and YouTube channel under «Listen» has a «Follow» button. An episode plays in the browser's own player, with back five seconds and 0.75×. Where the publisher gives no transcript, Heidi listens to the first minutes herself — labelled as automatic, and never on dialect, where recognition would translate rather than transcribe.
- Fixed, found on the signed-in walkthrough: every signed-in page drew the signed-out state — the accounts package gave pages the user without the id they key on, and API routes the user with it. So the dashboard and «Your channels» asked you to sign in while following itself worked. One reader for both (accountkit 0.5.2).
- Following rings for the next video, never the last fifteen, and nothing here nags you to practise. What you answered stays in your browser; the server holds only which channels you follow — readable under «Privacy».
A Heidi account, without OrangeCat
Saving conversations or joining a group no longer needs an OrangeCat account: an email address and a password are enough, and a passkey and two-step sign-in can be added. «Continue with OrangeCat» stays as one button among several.
- Anyone who signed in with OrangeCat before signs in the same way and finds their groups, conversations and progress as they were. Everyone has to sign in once more.
- The sign-in, sign-up and account pages are the same as in the other fleet products, in Heidi's languages.
The word search forgives a slip
In the vocabulary, «schwöchter» now finds «Schwöschter», «gipfleli» «Gipfeli» and «kartofel» «Härdöpfel»: one wrong, missing, doubled or swapped letter no longer loses the word. The best match comes first, and what matched is marked.
- How Zurich German is written does not count as a mistake: «schribe» finds «schriibe», «Hus» «Huus», «spiele» «spile» — with a slip on top as well. That used to find the word a quarter of the time; now it is nine in ten.
- Measured on every single slip of every word in the list, about 9,700: nine times in ten the word meant is first, 97 in a hundred it is in the top three. Short words like «gäll» are the exception — at three letters, one slip is already another word.
Replies in one tap
When Heidi asks you something back, or the next step is obvious, two to four replies appear under the latest answer — in your language, and one tap sends it exactly as if you had typed it.
- They appear under the newest answer only, never while Heidi is still writing; in Zurich German they face the same gate as Heidi's explanation.
- One row instead of three: the replies first, then «What now?» and «Learn from this», with nothing offered twice and at most five buttons. The grammar link keeps its place even when the replies fill the row.
A scene for one word: the Bünzli
Under «Alltag i Züri» there is now «Dealing with a Bünzli»: fifteen lines you hear — the rule, the «we have always done it this way», the warning, and what people say about a Bünzli — and seven that end the exchange instead of starting it.
- Every line passes the Zurich gate; nobody who speaks Zurich German has read it yet, and the page says so.
- «Bünzli» is in the vocabulary as casual slang, with its register: warm about a third party, an insult to someone's face.
The investor page leads into Heidi's investor room on OrangeCat
The password now opens Heidi's investor room on OrangeCat, where each investor can also be given a link of their own.
- The text and the numbers are still written in investors.ts, where tests check them; the room is filled from it.
The home page says what Heidi is for
Below the chat there is now «What Heidi solves»: concrete moments, one person's first, then a city's — each with what Heidi does about it today and a link to the page that does it.
- For you: the group chat in dialect, the lunch table, the kindergarten, the doctor's, the Gemeinde, and the no that does not sound like no.
- For everyone: the conversation that switches to Standard German, care homes, workplaces, media nobody labels as dialect or Standard German, and learners who cannot check what they are taught.
- Every link lands on a page that exists; a test holds that, in all seven languages.
Heidi's Zurich German is now checked end to end — and written again when it fails
In real conversations Heidi wrote Standard German explanations on the Swiss German site, offered «jetzt weiß mir» as a line to send, and let «wo mir grad stöh» through. Fixed.
- On the Swiss German site the explanation is now checked too, not only the line to send.
- When an answer fails, Heidi asks once more — naming the refused forms — and keeps the cleaner answer.
- A refused line is no longer shown under “you can send this” and has no Copy button.
- The check now knows «stöh» and «göh» (Bern's plurals; Zurich says stönd, gönd) and double articles such as «d'Le Bilan».
- The model named under an answer is the one that actually answered — not the first in the list.
- Words from your own question are no longer handed back as vocabulary.
- Heidi asks Gemini first for Zurich German: compared on Heidi's own prompts, the previous first model misspelled the dialect's own name and mixed up who was asking whom.
Dictation works again in Swiss German and Romansh
On the Swiss German and Romansh pages the microphone said dictation did not work in this browser. The transcription model has no code for those languages and refused every recording. It now hears Swiss German as German and detects anything else by itself.
Heidi right on the home page — and a microphone that listens at once
The home page now has Heidi in its second column: tap an example or type, and one press takes it full screen — the same conversation.
- The microphone sends the recording straight to transcription instead of trying the browser's recogniser first. The silent seconds in which a press did nothing are gone.
- Fixed: a screenshot went unanswered whenever the one free model for pictures was busy. A second free model now reads them too.
- Screenshots are shrunk to 1024 pixels in the browser before they are uploaded — the full phone screenshot never leaves the device.
- “Again” after a failure sends the picture again, not just the text.
- On a phone, Heidi sits right under the headline.
Practice asks: “isch” or “hät”?
A new kind of question: four verbs, each with the right auxiliary for its past, “er [isch | hät] gange”. With a grammar topic, “isch gange, hät gmacht”.
- The trap: sitting and standing take “si” (“Ich bi ghocket”), where German in Germany says “hat gesessen”.
- Every board mixes both auxiliaries, and after checking each verb shows the right one.
Every verb with its forms, and a topic for the modal verbs
Only 4 of 48 verbs had forms. Now 87 verbs show a table: ich, du, er, one plural form for mir, ihr and si, and the past with its auxiliary (“isch gange”, “hät gmacht”), each beside the German form.
- 35 new verbs, among them fahre, wohne, wele, wärde, iistiige and chündige.
- New grammar topic “cha, mues, wott” on the modal verbs, with its own test.
- Form questions: 348 instead of 13. Every form is checked against Zurich forms.
Pages that say what is true today
Several pages described Heidi as it was a week ago. They have been recounted and corrected.
- Investors: recounted on 1 October (156 merged pull requests, not 119; 1047 tests in 130 files, not 842 in 103; 2482 practice questions, not 1876; 261 words, not 226). Streaks, the weekly goal, Teams, certificates and sync now sit under built, not next.
- White paper: 2,482 practice questions in both languages (the English said 1,761, the German 1876), 261 words, 20 grammar topics. The register of claims we do not make lives in the tests, not on the roadmap.
- For organisations: the care scenes hold 120 lines, not “around sixty”. Contribute: all 390 lines, not “a hundred and forty”.
- Settings, My space and About say what an account does today, and that saved words follow you to other devices once sync is on. “On this device only” showed even when that was not true.
- The own-key sheet said reading pictures was not included. It is free.
The dialect check now catches Standard German
The check only knew other dialects' forms and let plain Standard German through: “Ich habe heute keine Zeit” passed. It now recognises about 100 Standard German words that never occur in Zurich German, plus the “-ung” ending.
- For example “hören” for “ghöre”, “nicht” for “nöd”, “Übung” for “Üebig”, “wenn” for “wänn”. Each finding names the Zurich form.
- It found mistakes on the site itself, now fixed: “Sit wänn händ Sie das?”, “Bis morn dänn”, “drüü”, “vill”, “nöi”.
- Words that are also Zurich German stay allowed: “will” (because), “gern”, “Achtung”, “Entschuldigung”.
Every word has an example sentence
121 of the 226 words in the vocabulary opened without a single sentence. Each now has a short one written for Heidi, with its translation, checked for Zurich forms.
- The false friends get sentences that rule out the misleading reading: “Mir müend springe, s Tram chunt” means running, not jumping.
- The sentences feed practice too: 2,028 questions instead of 1,876, including 119 new translations.
“Learn these 10 words” asks all ten
The session had eight seats, shared out by question type, so two of the ten words never came up. Each named word now gets a seat first, and the session grows as long as it needs to.
The vocabulary page says what to learn next
The page used to print all 226 words, each with up to seventeen scene links, and never said which word mattered or whether you knew it. It now opens with the ten words that pay off most and one button to practise exactly those.
- The order is measured: words you hear most in the scenes and cannot work out from German come first; words that sound almost like German go last; false friends lead among equals.
- Every word shows whether it is new, being learned or known, read from your practice answers and your kept words.
- Rows open on demand, with an example sentence, forms, the scenes it comes up in, “Practise just this word” and “Show it in a sentence”. Search ignores accents and spelling: hardopfel finds Härdöpfel.
Tests for 17 of the 19 grammar topics
Until now only “No simple past” had a test; every other topic had too few markable questions. With 107 new questions, and the article and clock questions now counted under their topic, 17 of 19 topics can be tested.
- New “Which sentence says exactly this?” questions on the subjunctive (hett, wär, würd), short pronouns (en, em, ere), participles, verb order (ha nöd chönne cho), direction words (ine, use, ufe, abe), articles before names, “wo” clauses, possession (em Peter sis), the imperative and the indefinite article. Every wrong answer is correct Zurich German that says something else.
- “Which article?” knows eight more nouns whose Zurich article differs from the German one: d Glace, s Güetzi, s Rüebli, s Trottoir, de Anke, de Härdöpfel, d Stange, s Zvieri.
- Modal particles (halt, gäll) and diminutives (-li) have no test yet: what they change is mostly nuance, and only what changes the meaning is marked.
Ask Heidi why, and no more questions that need no Zurich German
Under each answer in practice and the warm-up there is now “Ask Heidi why”: the question, the right answer and yours go to Heidi, and the chat opens over the exercise.
- When writing, a word typed as a different form is named next to the pack’s (“schlof – schlaft”). Other spellings are still never named. “D'Chatz” counts as two words, so “Chatz” is no longer reported missing.
- “Which article?” is asked only where the Zurich article differs from the German one (s Tram, s Billett, s Grosi, s Säckli, d Chilbi). For “s Ässe” it was enough to know “das Essen”.
- A kept word came back with the sentence it was kept from, even when that was your English request. Its sentence now always contains it, also for words kept before.
- In dark mode the floating “Üben | Heidi fragen” button and the avatar were white, and a white haze lay behind dialogs and open menus. Both stay dark now.
Menus visible over the chat, “Mein Bereich” tidied
On the chat page the header's menus (Learn, Practise, About Heidi) opened out of sight: below the bottom of the screen and behind the conversation list, on a computer, in light and dark. They are always on top now. The language switcher sits left of the account.
- Every expandable element on the site is now opened automatically on every change and checked for being visible and on top, on a computer and a phone, in light and dark.
- “Mein Bereich” starts with “Today”: your streak, how many questions and words are due, “Practise now” and “Chat with Heidi”, with the weekly goal underneath.
- What you are working on and what you can already do appear once there is something to show. Before, they were six empty boxes saying “nothing yet”.
- Your words are one section; conversations and groups sit side by side on a computer. The jump strip on the left and the second chat button at the end are gone.
No two-question tests, no questions that need no Zurich German
A test on “Bsitz andersume” had two questions, whatever time you chose: the topic has only two questions that can be marked. A test is now offered only with at least ten; below that you practise.
- For “Annas Schwester kommt auch noch” the wrong answers named another person, dropped the sister or said “nöd”, so comparing the German found the right one. Now every answer has Anna and her sister, and only “de Anna ihri” says who comes.
- The same for “Herrn Meiers Zimmer” and the two “wo” questions, whose wrong answers now read “wo” as “where”.
- The explanation for possession no longer talks about “wo” relative clauses; that has its own explanation now.
Questions come back before you forget them
Every question now has its own date to return: tomorrow after a first right answer, then after 3, 7, 16 and 35 days, and tomorrow again after a miss. A sitting starts with the questions that are due, then brings new ones.
- Before, a question answered right once never came back on purpose; only your saved words had a schedule.
- The practice page says how many questions are due today, and the end of a sitting how many come back tomorrow.
- Practice and the warm-up count; the test does not. Only the first answer in a sitting counts.
- Stored in the browser, listed on the privacy page, deletable in the settings, and synced with your other devices when sync is on.
No two-question tests, no questions that need no Zurich German
A test on “Bsitz andersume” had two questions, whatever time you chose: the topic has only two questions that can be marked. A test is now offered only with at least ten; below that you practise.
- For “Annas Schwester kommt auch noch” the wrong answers named another person, dropped the sister or said “nöd”, so comparing the German found the right one. Now every answer has Anna and her sister, and only “de Anna ihri” says who comes.
- The same for “Herrn Meiers Zimmer” and the two “wo” questions, whose wrong answers now read “wo” as “where”.
- The explanation for possession no longer talks about “wo” relative clauses; that has its own explanation now.
Practise in one tap, from any page
Bottom right, next to “Heidi fragen”, there is now “Üben”. One tap opens practice for the page you are on: on “At the doctor” the sentences and words of that situation, on a grammar topic that topic, anywhere else everything mixed. Closing takes you back to the same page, at the same place.
- It used to take four steps: scroll to the button under the situation, tap, scroll again on the practice page and tap “Losgehen”.
- What and how you practise is changed inside the exercise: tap its name at the top. Cards, writing, the test or everything mixed, without leaving it.
- A situation now also asks the words said in it, not only its sentences.
- Every “practise” link (grammar, situations, vocabulary, review, home page) opens the exercise directly instead of the practice page first.
Exercises get their own screen, like an app
Practice, the test and the warm-up no longer run as a box in the middle of a page. “Losgehen” opens a screen with only the exercise: a close button and a progress bar on top, the question in the middle, and the answer buttons in a bar at the bottom where your thumb is. No header, no footer, and nothing above the question that could push it around.
- Close it half way and your place is kept: opening the same sitting within 12 hours carries on where you stopped, and the button on the practice page says so. Stored only in the browser.
- The practice page is now where you choose what to practise; the warm-up page explains the warm-up and starts it. Links from grammar topics, situations and word groups open the same sittings as before.
- The test’s clock sits in the top bar. On a computer the screen is the same, centred, with the buttons along the bottom.
- Fixed: “Gewusst” on a card skipped the next question. The card reported its answer twice, so it was counted twice and the sitting jumped two places. One tap is one answer now.
On a phone, the page no longer jumps when you answer
After every answer the next question landed somewhere else on the screen, and you had to scroll back. Above the question, the streak and “What to work on” grew with each answer, and an iPhone then pushes the whole page. Now an exercise on a phone runs full screen, like an app, and every new question starts at the top.
- Practice, the test, the warm-up and the chat on the home page open across the whole screen on a phone. “Minimise” puts them back into the page without losing answers or the conversation; “Continue full screen” opens them again.
- In the chat, the message box sits at the bottom of the screen. A saved conversation opens when you write, not as soon as the home page loads.
- On a computer everything stays in the page. When a new question starts above what is visible, the page scrolls to it.
- The language switcher shows “CH” for Swiss German instead of “GSW”. “GSW” is the language code from the address and looked like a mistake in the page header.
Warm-up: how much Zurich German do you already understand?
Eight Zurich lines in two minutes, with no grade and no level. Afterwards you see which situations you already follow and where starting pays off.
- The lines get harder while you keep up and easier after a miss. After each answer you see the word the line turns on.
- Your answers feed your practice: the first session starts where the warm-up found the gaps.
- If you also get the between-the-lines questions, you are offered the site in Swiss German. A no is not asked again.
- Offered on the home page, on your dashboard (until you have done it) and on the practice page. Stored only in your browser.
Heidi answers what you wrote last
After three answers about «Le Bilan», someone asked «Pire» — and got a fourth sentence about «Le Bilan», twice. The chat handed the model the whole conversation as one list, without saying which message was the question. The new message now stands on its own, and a single word is taken as a question about that word.
- Tested against the real model: before, «Pire» got another «Le Bilan» sentence in 4 of 6 runs; after, in none.
- Heidi now remembers the sentence she wrote, not only her explanation of it — «Shorter» still means the last answer.
- The model sees the last 20 messages, saved conversations included; there it used to get the whole conversation however long.
- «New conversation» sits right above the chat on a phone instead of only in the side menu, and in the floating chat it is an icon beside expand and close instead of a link that wrapped.
- Fixed: with the phone keyboard open, the top of the chat — and «New conversation» in it — slid off the screen. The chat now fits the part of the screen you can see.
- Fixed: signed in, «Chat» in the menu showed the conversation you had just left, and the next message went into it. «Chat» now opens an empty conversation.
Swiss German, all the way through
Schwiizerdütsch now comes first in the language menu. Reading the site in Swiss German gets you Heidi's explanations in Züridütsch in saved conversations too. They used to keep the language they were started in.
- The language menu, the footer and settings list languages in one order: the dialect first, then the four national languages, then English and Russian.
- A conversation follows the language of the page you write from, not the one it began in.
- Suggestion labels («Wärmer», «Chürzer») and the tone come from the dictionary instead of appearing as the model's English («warmer», «shorter», «bridge»).
- The translation under a suggestion is in your language, and a Swiss German reader gets none under a dialect line. Tested against the real model: English translations in 2 of 2 answers that carried translations before, in none of 4 after.
- Signed in, your chosen language follows you to every device: after signing in, the page opens in the language you last picked. German stays the default for everyone else.
Five new kinds of question — and a reason after every answer
Practice now also asks what somebody means, which reply fits, which sentence says exactly the German, what time or price was said, and what a word means in its sentence. The pool grew from 1,451 questions to 1,793, the objectively marked ones from 246 to 588.
- "Which reply fits?" — 40 questions from the situations: «Zäme oder separat?» wants one of two words back, «Sit wenn …?» wants a «sit», not a «für».
- "What is meant?" — 34 heard lines with four readings, among them the polite refusals («Mer luegt dänn») and the traps «mag» and «hei».
- "Which sentence says exactly this?" — 25 questions where every wrong answer is correct Zurich German that says something else: we instead of they, going instead of coming, over instead of now.
- Times and prices — 30 questions: «halbi drüü», «Viertel ab achti», «drüü Franke zwänzg».
- "What does the word mean here?" — 213 words in their own sentence; for false friends like «schmöcke» or «Eschtrich», the tempting wrong meaning is one of the options.
- After each of these: the word the answer turned on, and one sentence on why — in all seven languages.
- Fixed: a mixed session over everything drew question types in alphabetical order, and with more types than seats, writing in Zurich German was never asked at all. Now the type asked least recently goes first.
A home page you can read in a minute
The home page now says what Heidi is in two columns — with a cow in front of the Alps beside it — and leads in through three steps: situations, practice, chat.
- Nearly half the text: about 250 words instead of 440.
- The example reads like a real message from the lunch table: «Geschter im Kauz gsi — mega geil! 😍 Chunnsch s nächscht Mal au?»
- The menu opens on a click, shows every page with one line about it, and closes with Escape or a click outside.
- On a phone the menu opens as a full page, with large tiles and the chat at the top.
More grammar, more words — and a real rule for the -li
Seven new grammar topics, 62 new words, and the -li topic now says how the form is built instead of that it "often means nothing small".
- New: hett, wär, chönnt (the subjunctive) · en, em, ere (pronouns that look like articles) · gsi, gha, cho (participles without ge-) · chönne cho (the final verbs the other way round) · ine, use, ufe, abe · de Peter, d Anna (the article before a name) · am vieri, halbi drüü (telling the time).
- The -li topic states the rule: umlaut where possible, always neuter (d Chatz → s Chätzli), plural unchanged — and that Rüebli, Gipfeli, Weggli, Müesli and Meitli are simply the ordinary words.
- The vocabulary grows from 164 to 226 entries, mostly short words and verbs (ämel, worum, eso, dusse, lah, lauffe, aalege), plus hebe and rüere, which mean something else in German.
- Every new example passes the same Zurich check as the rest; practice now has 1451 questions instead of 1233.
The strongest model your key can use
Bring your own API key: paste it, Heidi checks it at once and lists the models it can reach, with the strongest preselected.
- Ten providers instead of five, now including Anthropic, Google Gemini, Mistral, xAI and Cerebras.
- The check no longer costs anything: Heidi asks the provider which models the key can use instead of paying for a test request.
- When it fails, you see what the provider says — an empty balance, for instance. «Could not be reached» is not «wrong key».
- The key stays only in your browser, as before.
The dialects, documented from the literature
Every dialect page now shows forms that identify the region — each with its source — and links the region’s grammars and dictionaries.
- Newly recognised: Wallis (appas, wier, wilt, Häärpfel, Aache), Central Switzerland (Gumel, Eiker), Glarus (schüü), Sense (gùgge), Graubünden (eswas), and more for Bern (geisch, geit, Hung).
- Sourced from the Linguistic Atlas of German-speaking Switzerland — volume and map given for every form —, the 2025 Dialäktatlas, and the volumes of the series «Grammatiken und Wörterbücher des Schweizerdeutschen».
- Corrected: «het», «nid», «goht» and «stoht» are not markers of other regions; the atlas records them inside the canton of Zurich too. Heidi still writes hät, nöd, gaht, staht, but no longer calls the others foreign.
- The «Which one is Zurich?» exercise now only asks about forms that are certainly not Zurich German.
A say belongs to Solon
The open votes and comments on the roadmap and changelog are gone again. A voice is a right someone holds — it comes through Solon, with an account and a seat in Heidi’s organisation.
- The roadmap and the changelog are for reading again.
- Pointing at anything on any page still goes through the feedback widget.
- What was submitted so far stays stored and is listed on the privacy page.
Heidi for Teams
A group can now be a team: whoever created it chooses the focus — the situations in a care home, for example — and sees who is secure in which situations.
- Every member decides for themselves whether to show their progress, and can take it back at any time. Until they do, the lead sees only their name.
- What is shown is the standing per situation and the number of certificates — never which lines, or what anyone got wrong.
- A member who shares but has not switched on sync between devices shows as «nothing to see yet», not as «not started».
- The page for organisations explains how to create a team.
Your progress on every device, and a certificate per situation
Signed in, you can switch on «Progress on every device» in settings: practice, streak and saved words are then the same on phone and laptop. Whoever understands a situation securely can have a certificate issued for it.
- Switched off — as it is until you change it — everything stays in your browser.
- Each device counts only what was practised on it; what you see is the sum. Nothing is ever counted twice.
- A saved word you delete stays deleted, on your other devices too.
- The certificate is issued on the server from your synced progress, by the same rules as the situation page. It has its own page anyone with the link can check — without your name.
- Switching off removes this device’s copy from the server; «Delete everything synced» removes all of it.
Five new situations, and every one deeper
At the doctor's, at the municipal office, in the laundry room, at an apéro — and when «no» does not mean no. The fourteen existing situations each gained ten lines.
- 19 situations with 390 lines in all, up from 14 with 140.
- «When no doesn’t mean no»: «Mer chönnt sich das überlegge», «Das isch ächli schwierig» — and what to say back.
- New lines are added at the end; what you have already practised stays where it was.
- Every translation is now also checked for Swiss Standard German: «das Velo», not «das Fahrrad».
Have your say on the roadmap and on every change
You can mark every roadmap item as needed or not, and comment on it. Suggest what is missing. Under every change here you can reply. No account needed.
- One vote per item per browser; clicking again takes it back.
- A suggestion that already exists in some form is shown to you before you send yours — with «Me too» instead of a second row.
- Only what you write is stored, with a random key your browser keeps — not who you are. The privacy page lists it.
Where is this message from?
On the dialect page you can paste a message you received. Heidi shows which forms come from where, what Zurich says instead, and what the words mean.
- «Giel», «Meitschi», «Miuch» point to Bern, «Drämmli» and «Kuchi» to Basel; «Fahrrad» and «Sahne» read as Germany.
- Every Zurich word it recognises is shown with its meaning: «nöd = nicht», «isch = ist».
- Too little text says so — Heidi does not guess.
- «nid» was labelled an eastern Swiss form. It is Bernese and central Swiss; the east says «nöd» like Zurich. Corrected.
Streaks and a weekly goal
Your area now shows how many days in a row you have practised, your best run, and a weekly goal you choose.
- One missed day is bridged automatically; you earn a bridge every seven days.
- When a run ends it says «start today» beside your best — never «lost».
- The weekly goal: 1 to 7 days, 3 by default. Above every practice session, one line shows where you stand.
- All of it stays in your browser.
Practice is now something you choose
Typing was everywhere and cards did not exist. Both are their own mode now, and there is a test that says nothing until the end.
- Four ways to practise: mixed, tapping, writing, cards. The choice lives in the URL, so it is shareable.
- Two new question types: write whole sentences in Zurich German, and real flashcards over the whole vocabulary.
- The question pool grew from 221 to 553.
- A test: twenty questions in a row, silence as you go, every answer with its explanation at the end — the wrong ones first. The clock is optional and can be extended.
- The typing field is gone from the card and gap questions. It used to appear every second or third question.
A conjugation question was translating the thing it teaches
In Russian the prompt read «мы ___» above a question about which Zurich verb form fits. Answering it correctly left you having never seen `mir chömed` — the only string it was ever about.
- The pronoun now comes from the variety pack and is printed in dialect; the reader's own word moves to the line underneath.
- In English a menu was called «Practise» and its first entry was also «Practise». The same in five of seven languages. A test ends that class of bug.
A recording with no speech in it was given words
A 1.5-second take — which the product itself calls too short to say anything about — was sent to be transcribed and came back as «Bis zum nächsten Mal.» Four words nobody had said.
- Recordings below our own threshold no longer leave the device at all.
- Found by a new harness that drives the page with a fake microphone — not by reading the source.
The reference pages do something now
Grammar, vocabulary and situations were there to read. Each one now leads into practice that stays on its subject.
- Every grammar topic has its own page and a button that drills only that topic.
- Heidi keeps track of which topics and words are giving you trouble, and brings them forward.
- The material grew considerably: 11 grammar topics, 83 words, 14 scenes.
Where you need it: six scenes from a shift
Handover, the morning, pain, meals, the evening, visitors — lines as they are actually said in care work, machine-checked for Zurich forms.
- Every line names its source and every line passed the variety gate.
- The page says for itself that no native speaker has read them yet.
Somewhere to open your mouth
Record yourself and see what the recording actually shows: time spent speaking, where the pauses were, and which words came from another dialect.
- No score for pronunciation. Nobody can measure that honestly today, and a number would be a claim about a person.
- In Zurich German nothing is transcribed, on purpose: no system writes this dialect down reliably.
What a computer can do with Swiss German — with the numbers
Corpora, word error rates, speech synthesis and language models, each with its source, so you can check our claims against the field.
- The best verifiable word error rate is 12.1 % — and those weights are not published.
- Almost every Zurich corpus is research-licensed or has a contested licence.
A reference section built on data
Every German-speaking dialect area of Switzerland, a map that says which claim it is making, and the words that actually block a sentence.
- A claim is data, gated and cited — not translated prose nobody here can check.
Heidi starts
One field on one page: paste a real message and have it explained.
- Four deterministic guards between the model and the learner, because that learner is exactly the person who cannot check the work.
- Every generated line goes through the variety gate before anybody sees it.