Today and tonight, the world celebrates the Vostok I flight in 1961, piloted by Yuri Gagarin. Other celebrations are referred to as the International Day of Human Space Flight or—under the Soviet Union—Cosmonautics Day. But “Yuri’s Night” is pithy, so that’s what I’m going with.

Gagarin in 1961

Gagarin died young in an accident, but was celebrated around the world, including in parts of the world opposed to the Soviet Union.

In any case, we have code.

Doritís Onomáton

Granting that I’m not an objective observer, Doritís Onomáton is coming along nicely.

Names now have random—and almost never appropriate—diacritical marks. This reduces the chance that a name will be someone’s actual name or a word. This required changing fonts from the default, with Google’s Noto font family providing coverage across the Latin alphabet, including the diacritical marks. Users can now scroll the list of names, too, so it doesn’t overflow into an error.

There are also buttons to delete or replace the most recent name.

Swiping right on a name deletes it. Swiping left sends it to a (hypothetical) server for permanent storage and sharing. Note that Dart’s HTTP libraries appear to require constant (const) string URLs. Since that means a compile-time constant, it rules out making a GET request with the name in the URL, meaning that the app POSTs the name to an endpoint.

I don’t know if I’ve mentioned it previously, but one of the easy ways to test HTTP POST requests that I’ve found is to use Post Test Server v2. I’m not associated with it at all, and all it does is supply a random path to use for the requests. It’s easier than setting up a local server.

Next

I’ll probably continue with Doritís Onomáton, this week. To get a firmer sense of how to build user interfaces in Flutter, it might make sense to select different alphabets, though that would require pulling in other fonts and possibly switching between them on generating the tiles.

I’m also unhappy with the code that deletes and saves. In reality, swiping in either direction deletes, though one direction saves it to a server. I see that there are library components that allow for more sophisticated behavior.

That said, the assorted library updates are piling up, so I may take care of some of those, as well, at least for projects that I use routinely.


Credits: The header image is Neuvostoliittolainen avaruuslentäjä, majuri Juri Gagarin Suomen-vierailunsa lehdistötilaisuudessa vuonna 1961 by Arto Jousi, in the public domain, having passed into the public domain as a photograph published in Finland prior to 1966.