• 0 Posts
  • 3 Comments
Joined 2 years ago
cake
Cake day: July 9th, 2023

help-circle
  • Yes, that’s a more correct use of “prisoners dilemma:” a choice to either cooperate or defect. Origin below, for the curious.

    The dilemma

    Two prisoners are interrogated in separate rooms. Each is asked to snitch in exchange for a reduced sentence.

    Because they’re separated, the prisoners can’t coordinate, but each knows the other is offered the same deal and the interrogator will only offer bargains that increase their combined years of imprisonment.

    For example, “house wins” if snitch gets -2 years and snitchee gets +3 years, since interrogator would net +1 year from the deal.

    So what will each prisoner do?

    The result

    Of course, the best outcome overall is for neither to snitch, and the worst is for both to snitch.

    The Nobel-Prize-winning observation was that any prisoner faced with this dilemma (once) will always net a lesser sentence if they snitch than if they don’t, no matter what the other decides.

    In other words, two perfect players of this game will always arrive at the worst result (assuming they only expect to play once). This principle came to be known as the Nash equilibrium.

    Applications

    The result above sounds bleak because it is, but real-world analogs of this game are rarely one-offs and thus entail trust, mutuality, etc.

    For example, if the prisoners expect to play this game an indeterminate number of times, the strategy above nearly always loses (the optimal strategy, in case you’re wondering, is called “tit-for-tat” and entails simply doing whatever your opponent did last round).

    The study of such logic problems and the strategies to solve them is called game theory.

    Edit: fixed typo, added headings and links


  • Forgive me for not explaining better. Here are the terms potentially needing explanation.

    • Provisioning in this case is initial system setup, the kind of stuff you would do manually after a fresh install, but usually implies a regimented and repeatable process.
    • Virtual Machine (VM) snapshots are like a save state in a game, and are often used to reset a virtual machine to a particular known-working condition.
    • Preboot Execution Environment (PXE, aka ‘network boot’) is a network adapter feature that lets you boot a physical machine from a hosted network image rather than the usual installation on locally attached storage. It’s probably tucked away in your BIOS settings, but many computers have the feature since it’s a common requirement in commercial deployments. As with the VM snapshot described above, a PXE image is typically a known-working state that resets on each boot.
    • Non-virtualized means not using hardware virtualization, and I meant specifically not running inside a virtual machine.
    • Local-only means without a network or just not booting from a network-hosted image.
    • Telemetry refers to data collecting functionality. Most software has it. Windows has a lot. Telemetry isn’t necessarily bad since it can, for example, help reveal and resolve bugs and usability problems, but it is easily (and has often been) abused by data-hungry corporations like MS, so disabling it is an advisable precaution.
    • MS = Microsoft
    • OSS = Open Source Software
    • Group policies are administrative settings in Windows that control standards (for stuff like security, power management, licensing, file system and settings access, etc.) for user groups on a machine or network. Most users stick with the defaults but you can edit these yourself for a greater degree of control.
    • Docker lets you run software inside “containers” to isolate them from the rest of the environment, exposing and/or virtualizing just the resources they need to run, and Compose is a related tool for defining one or more of these containers, how they interact, etc. To my knowledge there is no one-to-one equivalent for Windows.

    Obviously, many of these concepts relate to IT work, as are the use-cases I had in mind, but the software is simple enough for the average user if you just pick one of the premade playbooks. (The Atlas playbook is popular among gamers, for example.)

    Edit: added explanations for docker and telemetry


  • Just a tip: if you must use consumer editions of Windows regularly, consider adding an automatic provisioning tool like AME to your workflow.

    The example above uses customizable “playbooks” to provision a system the way docker compose would a container image, so it can fill the role of a VM snapshot or PXE in non-virtualized local-only scenarios.

    The most popular playbooks strip out AI components and services (there are many more than just Recall) but also disable all telemetry and cloud-based features, replace MS bloatware with preferred OSS, curtail a truckload of annoying Windows behaviors, setup more sensible group policies than the defaults, and so forth.

    I have a few custom playbooks for recurring use cases so that, when one presents, I can spin up an instance quickly without the usual hassle and risk.