HNHacker News
TopNewBestAskShowJobs

kees99

1,024 karma · joined July 3, 2016

submissionscomments
kees99··on In Defense of RAM
> with the occasional 64GB for a specific model at high markup.

That's very much the point of soldered-down RAM, isn't it? 64GB kit (2x32GB) of 260-pin (SO-DIMM) DDR4 modules show up around $110 on amazon. But why would manufacturer give customers such option, if they can be forced to buy whole new laptop instead?

kees99··on Staring at a Wall: Embracing Deliberate Boredom
There is a commonly-used way to avoid having an open-ended think while walking, too: podcasts.
kees99··on "<ESC>[31M"? ANSI Terminal security in 2023 and finding 10 CVEs
> edit: Hacker News also doesn't sanitize escape characters (...) will turn your screen red

No, it won't:

  wget -qO - https://news.ycombinator.com\
  /item?id=37963815|grep 31M|xxd -g1 -c6

  (...)
  0108: 74 3b 26 6c 74 3b  t;&lt;
  010e: 45 53 43 26 67 74  ESC&gt
  0114: 3b 5b 33 31 4d 26  ;[31M&
kees99··on Qualcomm will try to have its Apple Silicon moment in PCs with "Snapdragon X"
Comment above is about enabling [qemu-user]. Hyperv is more akin to [qemu-system].

With latter, like with any full-system emulation, for top graphics performance, you probably want a separate video card and [pci pass-through] it to the guest VM.

[qemu-user] https://www.qemu.org/docs/master/user/main.html

[qemu-system] https://www.qemu.org/docs/master/system/index.html

[pci pass-through] https://askubuntu.com/questions/1406888/

kees99··on Qualcomm will try to have its Apple Silicon moment in PCs with "Snapdragon X"
I don't get it. On Linux-arm, all I have to do to run x86 apps is this:

  apt install binfmt-support qemu-user
  update-binfmts --enable qemu-x86_64
That's it. Neither "ownership of the stack", nor "whole lot of mumbo jumbo" is required.
kees99··on UK government MPs are using Signal’s automatic deletion feature
Free Software Foundation appear to disagree with your definition [1], while OED lists absence of monetary charge as only one of necessary characteristics of "free software" [2]

[1] https://www.gnu.org/philosophy/free-sw.en.html

[2] https://dictionary.cambridge.org/dictionary/english/free-sof...

kees99··on UK government MPs are using Signal’s automatic deletion feature
> "it's not free, part of it is free"

That's news to me. Which part of Slack do you consider to be free software? Is that the part you think GDS is using?

kees99··on UK government MPs are using Signal’s automatic deletion feature
I don't think capitalization matters:

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

In addition to not being free, Slack is also not software. It's a service.

Sure, there's some software involved in making that service tick (mostly proprietary), as well as some limited gratis access ("free tier") being offered, but that doesn't magically transform that service into "free software".

kees99··on UK government MPs are using Signal’s automatic deletion feature
> Slack [...] just a good faith use of free software [...]

Since when is Slack free software?

kees99··on Linux Sucks 2020
He'll probably stop once we had a year of Linux on desktop.
kees99··on Two capacitor paradox
Funny thing is - this is exactly what happens many millions times every single clock cycle inside pretty much any modern(-ish) digital CMOS CPU/ASIC, with the right-hand-side capacitor being parasitic gate capacitance in the driven gate.
kees99··on Two capacitor paradox
Yeah, with substantial amount of energy in that capacitor, that is exactly how you weld the contacts in that switch shut.
kees99··on Beyond Remote
Given that "central" office expenses are taxed differently (more favorably) than payroll, it might make sense to pay "remote/wfh" office expense separately.

That being said, how do you calculate the amount? Say, if I rent a 3-bedroom apartment for €1200/mo, and use one of the bedrooms as my home office, is €400/mo reimbursement fair? What about if I work from a living room? What if I own the place I live in? Can I include ISP expense too? etc...

kees99··on Linux 5.8 Set to Optionally Flush the L1d Cache on Context Switch
Do any of the common browsers have an option to pin javascript to a dedicated CPU core?
kees99··on My New FreeBSD Laptop: Dell Latitude 7390
OP writes:

> my System76 Galago Pro had its second experience with a dead/swelling battery.

I used to have a Dell laptop which had exactly the same problem with my first battery. Running laptop plugged into AC adapter 99% of the time was one reason for that happening, I imagine.

Fix was ridiculously simple - I bought a new battery (original) + a knock-off power adapter (a more expensive one - hoping it's built well enough so it wouldn't burn my house down - and as luck had it, it didn't). Knock-off adapter doesn't speak magic Dell charging protocol, so laptop runs off of it, but refuses to charge.

I kept original AC adapter for (infrequent) travel only, all the other time powering from a knock-off. Worked a charm - second battery held something like 90% of charge 3 years later, with no signs of swell whatsoever. Compare that to first battery, that lived on constant top-up charge (original adapter), and after less than a year swell up to the point it wouldn't clip in anymore.

kees99··on Deleting a Few LOC Can Yield “Significant” Power Savings on Some Linux Systems
Reminds me of the Raspberry pi 4 update, where enabling ASPM shaved something like 10% off the idle power consumption:

https://www.cnx-software.com/2019/06/29/new-raspberry-pi-4-v...

kees99··on Safe-Linking – Eliminating a 20 year-old malloc() exploit primitive
Thumbs up with reaching out to upstream to mainline it.

Did you talk to musl team as well?

kees99··on Google rolls out DNS-over-HTTPS support in Chrome 83
I think you're right on the money here.

DNS-over-TLS uses port 853, so is trivial to block on a firewall and force fallback to plain-text DNS.

DoH is resilient to such an attacker - be it sketchy guy in starbucks trying to steal your cookies, or yourself trying to run pi-hole adblock.

kees99··on US Secret Service: “Massive Fraud” Against State Unemployment Insurance Programs
To set up digid, you apply via official website (or app), receive one-time code in your paper mail, then proceed back to the same website/app to register your password and phone number. App registers itself if you're using one.

Once set up, you have 3 authentication methods, selectable on login page:

1) password only (low-trust authentication, not all places accept this, certainly not your doctor's office);

2) password + 2nd factor via SMS/text (high-trust);

3) password + 2nd factor via app (high-trust).

kees99··on Teensy 4.1 Development Board
https://community.cloudflare.com/t/archive-is-error-1001/182...

tl;dr: cloudflare & archive.is: choose one.

kees99··on Revengineered ancient PDP-11 CPUs, originals and clones
Oleum. Fuming sulfuric acid.

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

kees99··on The secret behind “unkillable” Android backdoor called xHelper has been revealed
3rd-party recovery images (TWRP, ClockworkMod, ...) offer an option to "format" or "wipe" (mkfs, really) the /data partition. This should be much closer to what you seem to be expecting from a "factory reset".
kees99··on Show HN: A “living” Linux process with no memory
Did anybody try to run it? Python part of this PoC depends on python2 module "fuse", which in turn depends on "gunpowder", "a library to facilitate machine learning on large, multi-dimensional images". What is even going on here?

  $ pip2 install fuse
  Collecting fuse
    Downloading https://files.pythonhosted.org/packages/c3/f6/82777531d0dd0fa1d1b509258873f4b48e1ec702dcf0258214fafb474895/fuse-0.1.3.tar.gz
  ERROR: Packages installed from PyPI cannot depend on packages which are not also hosted on PyPI.
  fuse depends on gunpowder@ git+https://github.com/funkey/gunpowder@721718b6569b47a2f5d5d6633c76c85f779e25c7
kees99··on How do Unix pipes work?
Piping output of an "rm -v" is an oddball, with all the possible stdio buffering, I agree.

More real-life example fitting your model would be "start this long-running process and show me first 10 lines of output, just to make sure it didn't bail right away", but then, a more common pattern would be to keep a copy of the whole log too:

  myfoo >/var/log/foo & tail -f /var/log/foo | head
Counter-example would be "yes", but also unordered sampling. Let's say I want to know if there is file with "foo" in its name somewhere in a very large directory, just a yes/no. Continuing directory traversal after finding one is a waste of time. SIGPIPE is desirable here as well:

  find directory/ -name '*foo*' | head -1
kees99··on How do Unix pipes work?
"rm -v" does.
kees99··on How do Unix pipes work?
Wouldn't it be better to be explicit? If intention is to "display first 10 lines, at most; discard the rest", you can write:

  rm -vrf directory/ | (head; cat >/dev/null)
kees99··on Linux-ready, made-in-Germany “Volla Phone” succeeds on Kickstarter
I'm struggling to reconcile "Linux-ready" in the title and this blurb in the article body:

  MediaTek Helio P24 SoC is not one of the
  most easily hackable, and its Taiwanese
  manufacturer is not exactly famous for
  releasing kernel sources.
kees99··on MOV is Turing-complete (2013) [pdf]
PDP-11 architechture [1] has a "jmp" that is a variant of "mov". And "push", "pop", and even "ret" are too. Also this beauty:

  MOV -(PC), -(PC)
This is a 1-word self-replicating program that (when run from the topmost RAM address) will clobber entire RAM by copying itself all over it.

[1] https://en.wikipedia.org/wiki/PDP-11_architecture#Addressing...

kees99··on Rotary Cellphone
Why not 111? That would have been even easier to manually-pulse dial.
kees99··on An optimization to help code compilation times on big CPUs
Indeed. Those two lines in the test-case are particularly excellent:

  /* 64 processes */
  fork(); fork(); fork(); fork(); fork(); fork();
I can totally see most people, myself included, writing a dozen of lines instead, with a for loop, checking for parent/child/error return code, etc. Which might be preferable for some code somewhere deep inside the app logic that will potentially run on a resource-constrained machine. But for the explanation code to be read by a human, this one-liner is such a good choice!
← PreviousPage 6 of 9Next →