`timestamptz` is probably poorly named. It doesn't actually store a timezone at all - all values are stored as UTC. The underlying storage is 8 bytes and otherwise identical for both timestamp types. However, using `timestamptz` allows you to more easily group by day, hour of day, etc. in a non-UTC timezone when that makes sense. Especially when dealing with summer time/daylight savings time, this can be quite useful.
As far as storing a datetime with an associated timezone, I agree that usually this can be problematic. However, for things like weekly repeats, you may want to store broken out components so it handles cleanly across time switch boundaries - e.g. when going in and out of DST. So you'd have `timezone`, `time` (no TZ, no date), repeat schedule (likely using interval, internally stored in months/days/microseconds), and use these to set up your next exact timestamptz value.
Just an FYI- your "Read more" link under "Seat Reservations" on both pages just leads back to the same page, rather than actually linking to anything offering more information.
GTFS is widely adopted, "standardized", but also quite a wild west when it comes to the actual details. I've been building http://mobility-bot.com/ as a spare time project for two years, parsing the alerts GTFS feeds from a handful of providers, and for just about every one of them, I have to do something in the pipeline to clean up the provided data - fixing unicode issues, remapping route and agency IDs, rewriting headers and descriptions to not be identical, etc. You also have to watch and capture the data over time to make sure you have a corpus to generalize parsing and cleanup rules from.
Most of these projects made the smart choice to focus on a single or just a small handful of related providers. As soon as you're trying to aggregate, the problem becomes a lot trickier.
Thanks for being explicit, AI written marketing site. Wouldn't have been able to figure that out! Every currently maintained and reasonably popular open source project either runs CI in public or makes the tests extremely easy to run.
> unveiling it to the confusion of officials and competitors in a 150 yard medley race in 1933
The article doesn't say, but did the medley relay/IM become a 4 stroke event around the same time in 1952 when FINA recognized it as a new stroke? Funny to see a 150 yard event mentioned since it seems like such an odd distance nowadays.
This feels like what is really splitting the programming community right now- those that have typically enjoyed the journey, and those that just want to be at the destination as soon as possible.
> After this story was published Google's spokesperson reached out and asked us to publish a slightly different version of that statement. The new statement no longer stated that "it's critical that we maintain humans in the loop."
My first MP3 player used it as well. I remember how much this memory card style felt like a 5¼ floppy disk, as opposed to most other formats at the time which were hard shell.
I wanted to find this interesting, but it has AI/LLM signs of writing all over it.
The dig in the middle - "you can skip the next part, but if you do skip, are you even a real reader? Not judging. Just saying" - ugh. Why would I bother reading every word if you likely didn't write every word?
I wrote up our experience of how to get Tiptap to play nice with a Go backend server, along with a lot of inline code snippets and a gist with the backend code. Happy to answer any other questions I may have missed in writing it up.
Even if you don't use the Tiptap editor, hopefully the idea of a sidecar container is helpful to someone trying to solve a similar problem of allowing Typescript/Node code to interact with Go.
As far as storing a datetime with an associated timezone, I agree that usually this can be problematic. However, for things like weekly repeats, you may want to store broken out components so it handles cleanly across time switch boundaries - e.g. when going in and out of DST. So you'd have `timezone`, `time` (no TZ, no date), repeat schedule (likely using interval, internally stored in months/days/microseconds), and use these to set up your next exact timestamptz value.