• 1 Post
  • 332 Comments
Joined 3 years ago
cake
Cake day: July 5th, 2023

help-circle
  • In the U.S., copyright protections don’t extend to functionality, though. So copying even copyrighted code in a manner to replicate functionality is fair use when there’s no other way to accomplish the same thing.

    For example, if you have a piece of equipment that checks the software on a cartridge for a string of text that says “Produced by or under license from Sega Enterprises Ltd.” before running that software, then it’s fair use to copy that exact text so that your software can run on that equipment. And it’s fair use to reverse engineer and decompile licensed cartridges to see what the bare minimum necessary to make it work.

    One way to prove that you didn’t copy the software any more than is strictly necessary for functionality is to fully document the functionality, and then have a skilled programmer take the documentation and write new software from scratch, without ever having seen the original software whose function is being copied. That’s a “cleanroom implementation.” Compaq and other IBM clones built their own BIOS software to implement the exact same functionality of copyrighted IBM code, and created an entire industry of IBM compatible PCs that weren’t actually licensed from IBM. Similarly, Google moved Android off of Sun-licensed Java using a cleanroom implementation (when Oracle bought Sun and Google wanted to get away from Larry Ellison’s abusive pricing practices).

    Ok, so if it’s permissible to reverse engineer the code to create documentation of how it works, and then have someone else take that documentation and implement the functionality using new code, how do AI/LLMs fit into this? Can it be said that it’s truly a “cleanroom” when the reverse engineering and decompilation functions are done by the same software that converts the decompiled code into documentation in human language, and then is the same software that converts the documentation into newly implemented code? Doesn’t quite hit the same way, and I’m not sure the courts would see it the same way.

    All of this is a gray area, and people shouldn’t confidently predict what the courts will decide in specific nuanced examples. A lot will depend on the specific details, so there isn’t going to be much room for sweeping generalizations.





  • It is believed that pi is “absolutely normal” in the strict mathematical definition: that in any base numbering system, any finite sequence of digits appears as frequently as any other sequence of that length. If that’s true, then yes, a particular binary string, including one that corresponds to a particular digital file (like a particular mp4 file), can be found in pi.

    That said, it hasn’t actually been proven that pi is normal. If it’s not normal, then the number can be infinitely non-repeating and still never hit that particular sequence of digits.





  • When I’m bored, I get price quotes from Lyft and Uber to the airport. I’ll click around and look at the different tiers of service. Then I choose not to actually request a fare, and close the app.

    I fly enough to where both apps probably have me as a regular airport customer, but that I’m price sensitive enough where I just won’t use their service sometimes.

    I do the same with Doordash and other food apps, where I just put together potential orders to get a sense of how much something would cost if I ordered it, and then just never order it, letting that cart expire. I’m hoping this poisons their data or adds something to the price sensitivity metrics.

    I also look at airfares, hotel prices, etc., a lot. It’s not for the purpose of manipulating their algorithms, as I just like to get a sense for how prices move over time. But if there’s a side effect that these variable pricing algorithms take into account people who window shop and walk away, maybe I’m helping push prices down.

    If they’re gonna create a panopticon, we should fuck with their data.


  • AMP was two different things.

    1. Google defined a standard that was an approved subset of html/css/js designed to load quickly on mobile screens, with none of the extra cruft that slows down sites as experienced by phone users.
    2. Google also agreed to host AMP-compliant pages on their own ultra-fast servers. Many smaller sites, especially local news stations and local newspapers, agreed to offload the extra work by allowing Google to host their content. Those hosted pages had a whole system of referring back to the canonical URL on the actual outlet’s own website (and the desktop version of the page), and had little things referring to the AMP project.

    I was 100% on board with #1, but #2 was controversial and created a lot of the conflicts of interest that tore the whole thing apart. Google spun off the AMP project as an open governance model, and then it was taken over by the OpenJS foundation.

    In the end, the performance gap between mobile devices and desktops narrowed, and at this point most people’s phones and mobile browsers can load pages just as quickly as a laptop, so the purpose of the project itself is less important to the actual web as it exists today.


  • No paychecks mean no customers.

    That’s never been a concern with the corporate executives. The macro level stuff is someone else’s problem.

    We saw it in the 90’s when they stopped hiring managers from within, instead relying on bringing in outside consultants, and then directly hiring the ones they liked, so that there was no longer a path between the typical employee’s seat and their boss’s seat.

    We saw it in the 2000’s when companies realized that they didn’t want to train entry level employees anymore, and would rather wait for someone else to train them, and then hire midlevels. Except too many employers did that and then the pipeline of future midlevels dried up in a lot of industries that were then ill positioned to survive the tumult of the 2008-2010 recession. Then something similar played out in the 2010s in certain other industries.

    It’s always been buck passing. They don’t care.


  • He doesn’t even have that. He just pretends, by misleadingly saying he has a degree from Wharton. He does have a business degree from undergrad, from the University of Pennsylvania, whose business school is called Wharton, but most people say Wharton degree to refer to an MBA from that business school. He takes advantage of the confusion by referring back to his Wharton degree, and it sometimes works.







  • Somewhere along the line someone is going to have a password that is their favorite sports team followed by their anniversary. Someone will reuse the same password over and over including a site with exploitable security flaws.

    None of this is new, and none of this has destroyed the feasibility of electronic payments. AI has nothing to do with any of it.

    The ability to conduct fraud, hack websites, and hijack accounts has always been around. The systems we’ve built will always assume that occurs on a regular basis, and are resilient against needing to address this reality. How does any of this prevent electronic payments from being processed?


  • That SEO slop article is simply wrong on the math of cryptography, and relies on an example of the one time pad not being used only one time. Either way, the interesting thing about the OTP is that you cannot prove that any particular plaintext exists, so the nonsense about trying to infer any particular plaintext from the encrypted text. Frequency analysis doesn’t help when there is no correlation between different bits of the key, the same way that flipping a fair coin 10 times reveals nothing about what it will likely be on the 11th flip.

    40 and 56 bit encryption keys are obsolete as they are now easily broken. 128, 192, and 256 are the standard now. 512 bit encryption is being played around with.

    You might be tricked into believing that a 512 bit key is twice as hard to crack as a 256 bit key. No, a 257 bit key is twice as hard to crack, and a 512 but key is 2^256 (1.5 x 10^77 ) times harder to crack. So if you can crack a 256 bit key in 1 second, a 512 bit key would take 3,672,000,000,000,000,000,000,000,000,000,000,000,000,000,000,000,000,000,000,000,000,000 years to crack using that same technique. Or, if you can crack 1 million 256-bit keys in a second, go ahead and take 6 zeroes off the number I just listed.

    Throw in developments in quantum computing

    Good luck with that. Quantum computers aren’t anywhere close, and more importantly, have nothing to do with AI.

    AI isn’t going to make cryptography obsolete.


  • Any cryptography can be broken with enough computing power and time,

    This is wrong. A one-time pad is provably secure against an adversary with infinite time and infinite computing power.

    And there isn’t infinite time or computing power. The math means you can use keys that can’t be cracked before the heat death of the universe, using even as many transistors as there are atoms on earth.

    There will always be vulnerabilities and patches. I wouldn’t count on them actually breaking trust forever. And AI doesn’t have anything to do with that general statement.