1. 7

    And best of all, he’s documented it all in detailed blog posts and nearly 50 videos uploaded to YouTube, sharing what he’s learned for others who might follow in his footsteps.

    I actually worry about this. Andreas Kling (with Serenity), Handmade Hero, Bisqwit, etc. Lots of educational content that is in the hands of a single company.

    1. 0

      Did you also worry about blockbuster having all the movies??

      1. 3

        It’s not common, but I have heard multiple accounts of YouTube terminating channels, without warning. One was this morning.

        1. 2

          I actually don’t get your point from that … unless you’re implying that failure of YouTube / Google in the same vain as Blockbuster could lead to the permanent loss of content not stored elsewhere?

          1. 2

            I think the kind of cataclysm that would produce a situation where YouTube suddenly and without warning got completely deleted along with all of its backups would be the kind where a few channels getting deleted is the least of our worries. Maybe I’m just not forward-thinking enough but I have a hard time imagining any of us here outliving Alphabet without something comparable to the apocalypse happening.

            And to the top level comment, it’s not like YouTube owns the content in question. I seriously don’t understand the what the problem is supposed to be. YouTube is just a means of transmission for video content from creators to their viewers. It isn’t, uh, I don’t know, holding that content hostage or whatever is being implied. I’m not even sure what the alternative is supposed to be. Some sort of peer-to-peer decentralized thing where everyone holds some subset of the thousands of petabytes of content on YouTube and shares the load of streaming the exabytes of content people watch per year? There aren’t enough people with high speed internet (and who have the required storage) in the world for that to be feasible and if there were it’d experience incomparable downtimes and constant, massive data loss. Some kind of federated thing would require each instance to have funds that only Fortune 500 companies have, and massive amounts of content would be lost whenever one of these collapsed. I don’t get it.

          2. 1

            Blockbuster predates DMCA.

        1. 5

          Ugh, I’ve been reading too much about filesystems, so I stumbled over parsing the title. You know: btrfs, zfs, ProoFS

          1. 3

            Time to go outside! Now I think about it, the formally verified file system the seL4 team are/were working on should definitely be called ProoFS.

          1. 4

            Ooh, nifty! There’s Common Lisp support, so I might explore setting this up for PAIP.

            1. 2

              What is PAIP?

              1. 3

                Paradigms of Artificial Intelligence Programming (1992), by Peter Norvig, is an advanced Lisp text. I’ve worked, off and on, on fixing up the online copy; it’s a work in progress.

                I was going to leave a breadcrumb on the relevant issue, but Klipse was already mentioned there.

            1. 2

              I find the website font astonishing hard to read.

              Edit: Fixed. Awesome.

              1. 4

                I’ve switched to the very minimalistic blog theme, which might now be better.

                1. 3

                  It looks more legible to me!

                  1. 2

                    On your main site (libreserver.org), my mouse cursor doesn’t change to a pointer when I hover over links.

                  2. 1

                    And Reader View wouldn’t kick in for me, either. Annoying.

                    1. 3

                      I expected a bit about the new-to-me .fun TLD, but this was a decent exploration of domain names and TLDs.

                      1. 25

                        A quick, rough timeline:

                        • 2005: git is released, and Junio Hemano becomes the core maintainer
                        • 2008: the first thread about staging on the linked article, and, GitHub is formed
                        • 2021: 13 years later, this is still a thing

                        There’s something about “we can’t change this, what about all the people using this” in the early days, becoming an issue for far far longer and for far many more people, that feels like a failure mode.

                        1. 31

                          I’m reminded of the anecdote about make: Its original author used tab characters for indentation in Makefiles without much thought. Later when they decided to add make to UNIX, they wanted to change the syntax to something more robust. But they were afraid of breaking the ten or so Makefiles in existence so they stuck with the problematic tab syntax that continues to plague us today.

                          1. 11

                            Your comment reminds me of the origin of C’s confusing operator precedence rules:

                            Eric Lippert’s blog post “Hundred year mistakes”

                            There were several hundred kilobytes of existing C source code in the world at the time. SEVERAL HUNDRED KB. What if you made this change to the compiler and failed to update one of the & to &&, and made an existing program wrong via a precedence error? That’s a potentially disastrous breaking change. …

                            So Ritchie maintained backwards compatibility forever and made the precedence order &&, &, ==, effectively adding a little bomb to C that goes off every time someone treats & as though it parses like +, in order to maintain backwards compatibility with a version of C that only a handful of people ever used.

                            But wait, it gets worse.

                            1. 18

                              I think this article includes a logical fallacy. It assumes that whatever you’re doing will be successful, and because it is successful, it will grow over time. Since it will grow over time, the best time for breaking changes is ASAP.

                              What this logic ignores is that any tool that embraces breaking changes constantly will not be successful, and will not grow over time. It is specifically because C code doesn’t need continual reworking that C has become lingua franca, and because of that success, we can comment on mistakes made 40+ years ago.

                              1. 6

                                Sure, but this error propagated all the way into Javascript.

                                I’m not saying C should have changed it. (Though it should.) But people should definitely not have blindly copied it afterwards.

                            2. 3

                              I’m curious why you think it is problematic? Just don’t like significant whitespace? But make also has significant newlines…

                              1. 3

                                For me it’s because most editors I’ve used (thinking Vim and VSCode) share their tab configs across file types by default.

                                So if I have soft tabs enabled, suddenly Make is complaining about syntax errors and the file looks identical to if it was correct. Not very beginner friendly.

                                1. 4

                                  IIRC Vim automatically will set hardtabs in Makefiles for you. So it shouldn’t be a problem, at least there (as long as you have filetype plugin on).

                                  1. 2

                                    I always make sure to have my editor show me if there are spaces at the front of a line. Having leading spaces look the same as r trb is a terrible UX default most unfortunately have

                                2. 2

                                  Thanks, I hate it

                                  1. 1

                                    What was the problem with tab syntax?

                                1. 1

                                  Lots of broken links with those early rovers, such a shame as this is a useful historical piece.

                                  1. 1

                                    Browsing the Wayback Machine copy will go to archived copies, if available.

                                  1. 1

                                    Mobile Safari can’t make a secure connection - server issues? Cert incompatibility? - so: Wayback Machine mirror. (the “cached” link by the story hadn’t gotten a copy yet.)

                                    1. 11

                                      The Programmers’ Credo: we do these things not because they are easy, but because we thought they were going to be easy”

                                        1. 3

                                          Apropos of nothing much, one of the differences between Self and the Smalltalk language which it was inspired by is that Self arrays start at 0, not 1 like Smalltalk.

                                        1. 10

                                          I glanced at lucky-commit to see what it was doing:

                                          lucky-commit adds its whitespace to a 64-byte-aligned block at the very end of the commit message. Since everything that precedes the whitespace is constant for any particular commit, this allows lucky-commit to cache the SHA1 buffer state and only hash a single 64-byte block on each attempt.

                                          1. 3

                                            Did you look at the commit history :)

                                            1. 2

                                              Oh wow, that’s clever.

                                              1. 2

                                                Yeah it’s a rant but not as a pejorative. I think it’s legit popup exhaustion and leaking concerns. I wrote a similar-ish post recently: Your 1% A/B Testing is 100% To Me

                                                The real meat of it is this:

                                                If I am 1% sampled 100 times, I experience 100% random sampling because I’m using 100 services.

                                                The incentive comes from metrics, dashboards, gradient following and no one representing the users or user experience. But most of all, to them it’s just their popups. But we all experience popups and nags from many services in this digital world.

                                                1. 4

                                                  I’m unsure how substantial a nitpick this is, but I place the odds of dodging 1% random sampling 100 times as 0.99^100, about 36%.

                                                  1. 1

                                                    The numbers are made up. I should have bolded the sentence containing “cute”. I should just change it to X and Y. The idea I’m trying to get at is: an company sees everything from their perspective so they manage (hopefully) popup and interruption but don’t think of the world. A company probably isn’t going to annoy me with 100 prompts but this is what I experience because I’m an Internet citizen (or whatever, not trying to be dramatic).

                                                    1. 1

                                                      Substantial. AB testing doesn’t much hurt.

                                                  1. 3

                                                    2^28 is around 268 million. (If we were counting memory bytes, 256MB.)

                                                      1. 2
                                                      1. 2

                                                        I’m sorry you had a hard time with this. Did you not keep the old machine around while you were setting up the new one? Whenever I upgrade the OS on my VPS I do that. I also tend to tarball the whole disk rather than try to select files and then I keep the tarball around for a few months after I case I had forgotten something.

                                                        1. 3

                                                          I was thinking the same, but it seems that OP is trying to change the OS in place. I imagine it is a vps with longer term commitment, not a hetzner cloud instance.

                                                          1. 2

                                                            I think it’s a Hetzner dedicated server, with monthly rates and a setup fee.

                                                            The following reads sorta like nitpicks, I know. I’m thinking aloud.

                                                            I would have considered rsynced tarballs elsewhere; tarsnap can be slow in cases with latency to an East Coast AWS region, like, say, Germany. GPG tarballs to s3 or to Hetzner storage sound ok.

                                                            It’s nice that it’s all in Docker. My last Alpine experience was unpleasant; any space savings were countered by lack of operational context and image caching anyway.

                                                            If I was worried about downtime I’d maybe doing a prototype / trial migration to a vps with hourly or daily rates.

                                                            A benefit of sticking to tarsnap is that it would show any gaps in backup coverage, such as the .env file here. Unfortunately, by doing this in place, it only surfaces any issues too late.

                                                            The self-hosted Bitwarden blip feels … very close to a very serious outage, too.

                                                            Thanks for the honest recap!

                                                            1. 1

                                                              I ran them all with docker-compose from a Debian VPS.

                                                              Doesn’t sound like it was a dedicated server.

                                                        1. 3

                                                          Doesn’t work on iPad (iOS 14). I get “a problem repeatedly occurred opening the page”. And the Back button is hijacked, sending me back to the same URL.

                                                          1. 1

                                                            Thanks! It is on my list to put up a banner on phones/tablets explaining that only desktop is intended to be supported.

                                                            1. 1

                                                              Do you have an About page to link?

                                                              1. 1

                                                                The Github readme may have the most info at the moment https://github.com/multiprocessio/datastation.

                                                          1. 1

                                                            Nifty! I’ve been mulling over a twitterbot recently, so my thoughts gravitate in that direction. Tweeting a transcript (or a link) would be nice for accessibility, and fan-contributed transcripts could help you out too? I’d think tagging you with “transcript: blah blah blah”. But I could be wrong, typing out even a lot of short messages could be faster.