HNHacker News
TopNewBestAskShowJobs

matja

1,184 karma · joined December 29, 2018

https://github.com/matja
submissionscomments
matja··on The origins of ‘horn ok please,’ India’s most ubiquitous phrase (2016)
Maybe it's the other way when driving on the left? :)
matja··on 8880 Super Car (2010)
Impressive! I had set 8865 and it was the only set I had which had those suspension and wishbone pieces.
matja··on A Case for Asynchronous Computer Architecture (2000) [pdf]
And not even a mention of AMULET (https://en.wikipedia.org/wiki/AMULET_microprocessor)
matja··on Benchmarking the Apple M1 Max
541 gflops here, following those steps. Well done Apple for making a laptop CPU over 2x faster than a 250W server CPU released this year :)
matja··on Benchmarking the Apple M1 Max
On Linux I had to use `-lcblas` instead of `-lblas`. "6.63171 gflops" with a 24-core AMD EPYC 74F3
matja··on What every IT person needs to know about OpenBSD Part 3: That packet filter
An SSH password is sent to the server, the server will get the exact password. An SSH private key is not sent to the server.
matja··on Rust on MIPS64 Windows NT 4.0
Why was SetWindowLong (taking LONG) superseded by SetWindowLongPtr (taking LONG_PTR) on 64-bit versions of Windows?
matja··on Features that more cameras should have
How did you determine that the RAW images are lossy-compressed?
matja··on Blacksmith – Rowhammer bit flips on all DRAM devices today despite mitigations
AMD EPYC processors already support AES encryption of memory (https://developer.amd.com/sev/) where VMs themselves cannot know the key. Interesting that I didn't see that mentioned in the paper as a possible mitigation.
matja··on YAML: It's Time to Move On
Seems to me that YAML just needs type/schema support to be less of a hurdle.

As an alternative, the encoding/decoding roundtrip using protobuf seems reasonable to me, catches the footgun of using floating-point version numbers (it becomes a parse error), whitespace/multiline concatenation being more obvious, and allowing comments (compared to JSON):

  ( cat << EOF
  # yes, comments are allowed
  name: "Python package"
  on: "push"
  build {
    python_version: ["3.6", "3.7", "3.8", "3.9", "3.10"]
    steps: [
      {
        name: "Install dependencies"
          run:
            "python -m pip install --upgrade pip\n"
            "pip install pytest\n"
            "if [ -f 'requirements.txt' ]; then pip install -r requirements.txt; fi\n"
      },
      {
        name: "Test with pytest"
        run: "pytest\n"
      }
    ]
  }
  EOF
  ) | protoc --encode=Config config.proto  | protoc --decode=Config config.proto
  
  name: "Python package"
  on: "push"
  build {
    python_version: "3.6"
    python_version: "3.7"
    python_version: "3.8"
    python_version: "3.9"
    python_version: "3.10"
    steps {
      name: "Install dependencies"
      run: "python -m pip install --upgrade pip\npip install pytest\nif [ -f \'requirements.txt\' ]; then pip   install -r requirements.txt; fi\n"
    }
    steps {
      name: "Test with pytest"
      run: "pytest\n"
    }
  }
matja··on AMD Gives Details on EPYC Zen4: Genoa and Bergamo, Up to 96 and 128 Cores
I wonder how many people in charge or purchasing actually consider the name, unconsciously or not. It could be called Thready McThreadface for all I care.
matja··on Parsing gigabytes of JSON per second
Tricky part about implementing that is that the protobuf wire-format alone doesn't contain enough information to unambiguously represent the real data types, it also needs the schema (.proto file) to do that.

For example, in the wire-format, a string and a sub-message are encoded as the same type (a blob - varint + sequence of bytes), but using the schema they are clearly interpreted differently.

Sure, it is possible to make a self-describing protobuf message which includes the schema in protobuf representation, but that is a special-case.

matja··on New 16-inch MBP with M1 Max to feature High Power Mode for intensive workloads
I remember setting those 7-segment LEDs up on my first PC build.

On the motherboard there was a jumper which took the input from the turbo switch.

To provide feedback to the user, some cases ran a wire from the turbo switch to a bi-color LED on the front of the case as well as to the motherboard to control the turbo state.

On fancier cases they had multiple seven-segment LEDs which had a multi-state jumper for each segment, which decided to light that segment depending if the switch was on or off (example: http://www.minuszerodegrees.net/led_speed_display/LED%20disp...), so you could display either the two different clock frequencies, or a "HI"/"LO" message, or anything you wanted. And connecting that switch input to the motherboard wasn't necessary for the LED to change, so I guess that is how your father's was setup :)

matja··on Intel researchers propose HTTPS Attestable to secure web workloads via SGX
edit: The paper doesn't actually say if Intel are signing the attestation report in the CPU, so perhaps that's why.
matja··on Intel researchers propose HTTPS Attestable to secure web workloads via SGX
Is this essentially the same as AMD's SEV-ES attestation reports, but per-application rather than per-VM? I don't see why any particular transport is required, if the attestation report is signed coming from the CPU firmware.
matja··on OpenBSD 7.0
Lack of ZFS, or any checksumming filesystem at all is a hard "no" for me.
matja··on Ubuntu 21.10
Is that the case for all distros? For Arch I see only libEGL/libGLESv2 are bundled, every other library is an external dependancy: https://archlinux.org/packages/extra/x86_64/chromium/
matja··on Why Did Satoshi Decide to Use Secp256k1 Instead of Secp256r1?
The r-curve parameters were apparently chosen by picking a random number, and hashing it, which somehow "proves" no nefarious play. Problem is that one could keep picking random numbers, hashing them, to get curve parameters vulnerable to an attack not commonly known. There is no attempt to explain how these numbers were chosen, or to use a nothing-up-my-sleeve number.

From "SEC 2: Recommended Elliptic Curve Domain Parameters":

"... one type being parameters associated with a Koblitz curve and the other type being parameters chosen verifiably at random"

"Verifiably random parameters offer some additional conservative features. These parameters are chosen from a seed using SHA-1 as specified in ANSI X9.62 [X9.62]. This process ensures that the parameters cannot be predetermined."

matja··on Quickemu: Quickly create and run optimised Win-10,11/macOS/Linux on Linux
If QEMU is compiled with graphical window support, and is started without `-nodefaults`, then you can press ctrl-alt-2 to switch to the monitor, type "sendkey ctrl-alt-delete", then press ctrl-alt-1 to switch back to the emulated display.

Common QEMU frontends may have a UI button or keyboard sequence to do this for you (they connect to the monitor backend and send the same command, either as text or as JSON (in "qmp" mode)).

matja··on Can You See the Republic of Ireland from England?
Is that considering one can see over the horizon when the conditions are right? https://en.wikipedia.org/wiki/Atmospheric_refraction
matja··on Windows 11: Just say no
The UI did scale, but lots of apps were poorly coded.

> Marlett is a TrueType font that has been used in Microsoft Windows since Windows 95. The operating system uses this font to create user interface icons that are used in the menus and windows.

https://en.wikipedia.org/wiki/Marlett

matja··on "Secret" Agent Exposes Azure Customers to Unauthorized Code Execution
yes, checking the secret before setting the uid/gid does seem like "Enhanced security" : https://github.com/microsoft/omi/commit/4ce2cf1cb0aa656b8eb9...
matja··on Windows Subsystem for Linux GUI
That seat that Microsoft have on the Linux Foundation board of directors will come in useful for that.
matja··on JSON Schema bundling formalised
Separate types is fine, but JSON doesn't specify a minimum range or precision of the number type that a implementation must have, so the number type is unreliable (and string has to be used instead). To handle any number, a JSON library needs to use an arbitrary-precision number type, which no common one does because of the huge performance hit.

So, no better than XML really :D

matja··on JSON Schema bundling formalised
If every JSON library actively chooses not to implement the JSON spec, that sounds like an issue with JSON to me.
matja··on JSON Schema bundling formalised
Even with integers (comes up often for large numeric IDs):

   JSON.stringify(JSON.parse('{"kids":10000000000000001}')) -> '{"kids":10000000000000000}'
How do JSON schemas handle "must be an integer", and having to pass a string to get the necessary value?
matja··on Windows 11: a survey of text boxes
And even that comes from Windows 3.0
matja··on I nearly lost the Lightroom catalog with of all my photos
> At the time, raw format was the only thing that preserved all necessary information to make scientific observations.

Which "RAW" format? I think that is the problem - there are many and few are completely documented, which is where DNG comes in (https://www.adobe.com/content/dam/acom/en/products/photoshop...).

Great point about throwing away metadata, and probably worthwhile to safeguard that one's flavor of RAW files (CR2/NEF/etc) can be reliably read in the future when the software necessary to read them inevitably disappears from the cloud.

matja··on 286 vs. 386SX
The MMU was a sanity-saver even in DOS development using a DOS-extender like DOS4GW or CWSDPMI, where a crash could actually be debugged/output a stacktrace rather than instantly reboot the machine.

A fair-few DOS applications (via DPMI) also implemented virtual memory schemes like a "real OS" - I remember POVRay 2.0 officially requiring 2 MB of RAM, but was able to start on my 1MB 386SX machine (albeit with 1-2 mins of HDD-thrashing...).

matja··on Looking Glass: Run a Windows VM on Linux in a window with native performance
For the USB part, would adding a extra USB adaptor card (assuming it's a desktop machine) and using PCI-passthrough/VFIO on that adaptor make it easier? From my knowledge of QEMU, then no USB emulation is involved - the guest OS sees the entire USB adaptor (and the host doesn't) - so one can have all the special USB hardware connected to that.
← PreviousPage 12 of 13Next →