Skip Navigation

InitialsDiceBearhttps://github.com/dicebear/dicebearhttps://creativecommons.org/publicdomain/zero/1.0/„Initials” (https://github.com/dicebear/dicebear) by „DiceBear”, licensed under „CC0 1.0” (https://creativecommons.org/publicdomain/zero/1.0/)LI
Posts
1
Comments
380
Joined
2 yr. ago

  • If you describe what you configured using DNS and what tests you've performed, people in this community could also help debug that issue as well.

    An AAAA records to map a hostname to an IPv6 address should be fairly trouble-free. If you create a new record, the "dig" command should be able to query it immediately, as the DNS servers will go through to the authoritative server, which has the new record. But if you modified an existing record, then the old record's TTL value might cause the old value to remain in DNS caches for a while.

    When in doubt, you can also aim "dig" at the authoritative name server directly, to rule out an issue with your local DNS server or with your ISP's DNS server.

  • I'm not quite sure I follow. The AGPL mirrors the GPL, with an extra proviso that accessing the software via the network constitutes "use" if the binary, not "distribution" of the binary. Under GPL, the mere use of a binary does not require the availability of source.

    Example: a student uses a GNU/Linux computer at their university computer lab. She runs the unmodified "tar" command from GNU Coreutils, which is GPL licensed. She is not entitled to a copy of the source from the university, because execution is a "use" of the binary on an already-provisioned machine, not a "distribution" of the binary.

    Example: a student is given a software assignment from her professor, along with a .7z file containing old versions of "tar" that contain bugs, all GPL licensed. This is a distribution -- as in, a copy -- of the binary, so she is entitled to a copy or link to the source from her professor.

    The first example helps explain what the AGPL adds, in the context of network use. Consider what happens if the university actually modified the "tar" command installed on their machines. They still would not have to distribute the modified source to the students, because students only execute ("use") the binaries. But with AGPL, use of modified software obliges source distribution.

    Phrased another way, AGPL has every guarantee that GPL does, but adds another obligation for modified use via a network. Unmodified use does not require source distribution, under both GPL and AGPL.

  • One of the drawbacks of software licensing with community projects -- although there are some (controversial) ways to sidestep this -- is that the license needs to be selected at the onset of the project, and you'd have to have everyone agree to that license or change the license.

    If all the initial parties agree to use a FOSS license, they and all subsequent contributors under that license cannot complain that someone is actually employing that software per the terms of the license. A project might choose FOSS because they want to make sure the codebase only dies when it disappears from the last developer's disk.

    If instead, the initial parties decided on some sort of profit-sharing license -- I don't know one of the top of my head -- then they and future contributors cannot complain if no business wants to use the software, either because FOSS competitors exist or because they don't like the profit split ratio in the license. If that ratio is fixed in the license, the project could die from lack of interest, since changing the license terms means everyone who contributed has to agree, so a single hardliner will doom the already-written code to obscurity.

    The sidestep method -- which is what appears to have been used by Redis to do this relicensing to the SSPL -- is that all contributors must sign a separate agreement giving Redis Inc a stake in your contribution's copyright. This contributor agreement means any change to the Redis codebase -- since its inception? Idk -- has been dual-licensed: AGPL to everyone, and a special grant to Redis Inc who can then relicense your work to everyone under a new license.

    Does the latter mean Redis Inc could one day switch to a fully-closed source license? Absolutely! That's why this mechanism is controversial, since it gives the legal entity of the project all the copyright powers, to level-up to FOSS or level-down to proprietary. Sure, you can still use the old code under the old license, but that's cold comfort and is exactly why hard forks of Redis are becoming popular right now.

    In short, software projects have to lay out their priorities at the onset. If they want enduring code, that's their choice. If they want people to pitch in a fair share, that's fine too. But that choice entails tradeoffs, which they should have known from the start. Some mechanisms allow the flexibility to change priorities in the future, but it's a centralized, double-edge sword.

  • There are two concepts at play here: open-source and free software. An early example of open-source is AT&T Research UNIX, which was made source-available (for a few) to universities for research purposes, who could recompile the code and use the binaries for that purpose. Here, the use of the software is restricted by the license terms.

    On the free software side, as a reimplementation if the Unix software utilities -- ie all the programs like tar, ps, sh -- GNU coreutils is GPL licensed, meaning any use of the compiled binaries is allowed, but there are restrictions on the distribution, of both source and binaries. As it turns out, GPL is both free and open-source (FOSS); there are fewer major examples of free but non-open source, but WinRAR and nVidia drivers on Linux would count.

    Specifically, GPL and other copyleft licenses require that if you distribute the binary, you must make the source available under the same terms. If you've made no changes, then this is as simple as linking to the public source code repo. If you did add or remove code, you must release those alongside the binaries. If you simply use the binaries internally, you don't need to release anything at all, and can still use them for any internal purpose.

    wouldn't GPL and other copyleft licenses be considered non-free as well since you are not free to do whatever you want with the source

    From the background above, free software has always been understood to mean the freedom to use software, not necessarily distribute it. GPL complies with that definition for using the software, but also enforced a self-perpetuating distribution requirement. Unlike plain ol free software, under GPL, you must redistribute source if you distribute the software for use (aka binaries), and you must make that source also GPL.

  • Irrespective of debates on what the definition of "open source software is" or who gets to define it, it is very clear that the SSPL is not a FOSS -- free and open source license -- and that's a shame. Sure, open source still means we can look at the source code, but we do not have the full freedoms to use the code for any purpose. You might retort "but I'm not a aaS provider" so my rights aren't affected.

    But that's the thing: the erosion of free software rights is never the end, but then beginning of the end. Much like free speech, such rights must be jealously guarded. Need I mention what happens when there's no one left to speak up?

    That some users of Redis never contributed back to the project is beside the point: truly free software is free as in libre: if you want thanks for your work, release it as freemium or some other license. But a FOSS license like BSD-3 has always been thankless and the OSI is correct in calling out the SSPL for not meeting the OSI's Open Software Definition's anti-discrimination clause, nor the FSF's zeroth freedom, amongst four.

    Free means free. AGPL is free. But SSPL carves out an exception, making it not free. No amount of sweet talking changes this reality.

  • I'm not a Rust developer (yet), but I understand its strength in this regard as: Rust is statically memory safe by default, and code which isn't statically memory safe must be declared with the unsafe keyword. Whereas C++ has not deprecated C-style pointers, and so a C engineer can easily write unsafe C code that's valid in a C++ compiler, and no declaration of its unsafeness is readily apparent to trigger an audit.

    It's nice and all that C++ pioneered a fair number of memory safety techniques like SBRM, but the debate now is about safety by default, not optional bolt-on safety. All agree that the overall process to achieve correct code is paramount, not just the language constructs.

  • In the United States, cities and counties are the creations of state or territorial law, so you'll find a lot of different variations. Using California as an example, the counties are the first-level political subdivision, dividing every bit of land in the state into 58 pieces, some smaller and some bigger. Exclusively within each county, a city can be incorporated by the will of the people living there, either as a general law city or a charter city. The former uses some default rules prescribed by the state (usually suitable for small towns, which California law still calls a "city") and the latter being a mini constitution that allows creative municipal administration (eg "strong mayor" systems).

    Incorporating a city removes the power and responsibility from the county to manage that territory and its affairs, giving that to the city government. It is a specific rule in California that no city can span two counties: hence adjacent cities like Sacramento and West Sacramento, that are in different counties.

    Compare this system to Louisiana, which uses county-like parishes. Or to New York City, which is one big city made from five counties, each being the same territory as the five constituent boroughs of the city. Oh, and California has one "consolidated city and county" in the form of San Francisco, where the city expanded to include all land in the county, so the difference was meaningless and they merged the two.

    So while counties are consistent in covering all the land in a state, cities don't necessarily follow consistent rules or reasons. More often, they follow population patterns (sometimes gerrymandered to include prison populations, for example) or to grab natural resources (eg Sacramento River waterfront).

    Edit: I should mention that the smallest "towns" in California basically exist in name only, being Census Designated Places (CDPs) of the county. They have only their normal county representative, although CDPs tend to also have a county-level committee made of locals to advocate for their town, in front of the county Board of Supervisors.

  • What I mean is, this program draws from a scraped database, right? Is there any reason it couldn't also search an online database using DICT, to potentially get more definitions that aren't in the Cambridge Dictionary?

    Excellent work, btw

  • I saw "terminal" and "dictionary" and thought this was going to be using the DICT protocol to retrieve definitions. If that's not supported, could that be added?

    Not for any reason other than I think it's cool to look up stuff remotely using nothing more than curl. But this is definitely easier to read.

  • For people that are interested in the plate-bearing pin, you might find that they're kinda expensive. However, it is something which can be constructed fairly simply, using wood and a threaded rod plus hardware. Fractional plates would usually top out at 5 kg or 15 lbs, so it doesn't need to be made out of billeted titanium or whatever.

    This is one such wooden pin I made, using a scrap 4x4 block of wood and a router. If for your homegym equipment, you may be able to permanently mount a peg for plates, which I've done for my functional trainer.

  • I agree with wanting to know the empty weight for machines. For my leg press at home, I forgot to weigh the sled/carriage before fully assembling the machine. So I did the next best, which was to measure the uphill force of the carriage at its 45 degrees, using a cable that pulls uphill and dangles vertically off the top of the machine. I then progressively loaded the cable with plates until it started to move the carriage.

    The force uphill is sqrt(2) of the carriage weight, so I multiply the plates by 1.41 to arrive at the empty weight. This is only useful when I compare to the leg press at the office gym, though.

  • I'm only cursorily familiar with WebDAV, but I think the needs of cloud storage aligned much better to the object storage model than WebDAV's file/directory structure. For example, in a distributed cloud across continents, referencing a file in WebDAV might have a canonical path, but object storage would just need a key or hash. And by using a key/hash, automatic deduplication is achieved, since the same object should hash to the same key. File paths necessarily imply context, but the point of clouds is to be homogeneous. If paths need to be world-unique but locally-cached, then the path is just a unique identifier and we slowly end up with the database-like semantics of object storage anyway.

    Phrased another way, a file/directory structure imparts an organization to the contents of those files. Cloud doesn't need that organization, so throwing stuff in the junk drawer is perfectly reasonable.

  • You may find this post by the eminent First Amendment lawyer Ken White (aka PopeHat on social media) a useful read: https://popehat.substack.com/p/in-defense-of-free-speech-pedantry

    As a summary, he distinguishes the different facets of the free speech debate into three categories: free speech rights (FSR), free speech culture (FSC), and speech decency (SD). FSRs are those protected in law and vary depending on country and historical precedences. Whereas FSC manifests itself in how private actors conduct themselves, sometimes very inviting of opposing voices and other times not so much. Finally, SD is closer to social morals, and the application of speech to fight other speech.

    If we accept Mr PopeHat's assessment, then the term you're looking for may lay somewhere between FSC and SD, since private entities will have their -- sometimes great/justified/meh/awful -- reasons for declining to platform certain types of speech.

    I suppose it may be plausible to describe a private censor as "free speech unprincipled" or "free speech uncultured" if they act within the law but not within the accepted FSC.

  • but they would have to spend an equal amount of time over the southern hemisphere

    There are some highly eccentric orbits which are heavily tilted so that, time-wise, they spend more time in one hemisphere than the other, by tracking farther away from the earth when slowly overlooking the northern hemisphere, and then getting closer to the earth when tracking the southern hemisphere, faster. The Molniya orbit is one example. There is a diagram showing how much time the orbit spends in each hemisphere.

    For use in telecommunications, the fact that the satellite gets farther away is usually acceptable, although this wouldn't be as good for a spy satellite.