• 0 Posts
  • 27 Comments
Joined 3 years ago
cake
Cake day: June 18th, 2023

help-circle
  • But it would still be more expensive, and still have a latency issue.

    Imagine a public counterstrike server where there’s an extra 30-50 ms delay between when you hit the strafe key and when you start moving.

    Alternatively, Counterstrike or another shooter could defeat wall hacks if the server only told the client about player positions in the client’s line of sight. But then the Counterstrike player executing a peek would see their opponent pop in 30-50 ms after they gain line of sight. Much Counterstrike gameplay is built upon the short interval between when you see someone, and when you click on their head with your hit scan weapon.

    Furthermore, latency is not going to go away for Internet play. The speed of light travel time to circumnavigate earth is 125 ms. That gives a theoretical worst case minimum ping of 62.5. Actual pings I see from my ISP are approaching the speed of light order of magnitude, assuming they are only traversing North America.





  • This is an astute observation.

    In fact, macroeconomic theory would say that appreciation in real estate should be tied to the rate of interest, which in turn should be tied the rise of the price level: inflation.

    There are discrepancies, of course. Lately real estate has been growing faster than inflation. And importantly, during the Second Thirty Years War, 1914-1945, those European apartments suffered great depreciation and outright physical destruction.

    The biggest thing that happened, though, is that inflation essentially did not exist until the second half of the nineteenth century. As far as we can tell, inflation was created by the industrial revolution. Before then, with wide error bars, you can tie prices from the 1760s to prices from the Roman Empire, in the same base metals.

    For more evidence, read the works of Jane Austen and Victor Hugo. They are full of specific prices for things that make no sense to modern readers. But the authors expected that future readers would be able relate to the specific prices. Modern fiction authors avoid mentioning specific prices when they want their work to feel timeless.

    Source, generally: Thomas Piketty. Capital in the Twenty First Century.





  • Skipping forward a bit, in 1964, the Civil Rights Act applied restrictions to how Louisiana and some other Southern states could draw districts. These restrictions essentially required Louisiana to create majority-minority districts to ensure that blacks were elected to Congress in proportion to their population.

    Now, if racism is bad, and if the 14th amendment demands equal protection of the laws, how could we justify drawing districts explicitly on the basis of race? Answer: as a systematic remedy to a century of systematic violations of the 13th and 14th amendments from 1865-1964.

    So the status quo for decades was that Louisiana had one or two black members of Congress, from the legally-mandated majority black districts. And the white majorities in the other districts continued to vote for white representatives.

    Now recently, the Supreme Court has been attacking that rationale that allows race-based districts. Their reasoning is that although the systematic remedy was justified in the 1960s, there is no longer any need today.



  • mkwt@lemmy.worldtoProgrammer Humor@programming.dev< :-( >
    link
    fedilink
    arrow-up
    5
    arrow-down
    1
    ·
    edit-2
    12 days ago

    In C and C++, the source character set is implementation defined. This means that each compiler sets its own rules about what characters are accepted. For example compilers could choose to accept ASCII or EBCDIC or Unicode, or some combination, etc.

    So the ISO standard will say that ; character is the end of statement punctuation. But it is up to the compiler to say which character(s) or code point(s) represent the ISO ;.

    The ISO standards also require compilers to define a separate execution character set to specify values that can be stored in char and used with the string library functions. The execution character set doesn’t have to be the same as the source character set.

    Edit: I should also mention that the rules for this stuff are changing a lot in ISO C23 and C++23. (Which standards I haven’t yet personally adopted.) Basically the ISO 23 standards mandate compilers to support UTF-8 source files, and they map every source character in the ISO standard to its corresponding Unicode character.








  • A spinning circle requires just two threads, one to do the work and one to spin the circle. And they don’t have to talk to each other.

    A progress bar is the same thing, but now the work thread has to periodically communicate the progress to the bar thread, and inter-thread synchronization has to be setup. And how do you know how much progress a single file transfer represents? Or how many progress points is a registry edit versus a file transfer? It’s hard to figure out in advance, which is why so many progress bars are shitty estimates of progress.