HNHacker News
TopNewBestAskShowJobs

m45t3r

1,652 karma · joined August 22, 2014

submissionscomments
m45t3r··on OpenGL 3.1 on Asahi Linux
> Framework laptops are insanely expensive for again, worse hardware.

1199 EUR is not insanely expensive, specially considering that I can put up-to 64GB of RAM in a Framework laptop with a reasonable amount of money, while I would need to pay almost the price of a full Framework laptop to do the same in a Macbook Pro [1]. This is IMO, insanely expensive.

And yes, I can definitely use those amount of memory during mass rebuilds that I sometime like to do in NixOS. I don't even try to do those same workloads in my macOS because they start to become hugely slow once you hit the swap.

[1]: by the way, this get even worse considering that I also need to upgrade from an M2 Pro to M2 Max to have the option to do so. I just did a quote for the cheapest Macbook Pro with 64GB of RAM, and I got a 4000EUR quote for 512GB of storage that is laughable low for something that expensive. At that price, I can get 2 of the most expensive Framework AMD and I would still have sufficient money to get another one of the older Intel ones as a spare.

m45t3r··on Pixel Tablet
> The equivalent iPad in 2013 when your tablet was released is the 1st iPad Air that had a slightly better screen than your Asus and a much better processor

Apple didn't had that much advantage in CPU power them, looking at the benchmarks A7 seems to be ~30% faster that isn't "much better".

Also, iPad was way expensive than my tablet, specially in my country. It was fifty percent more expensive. 50% more expensive for 30% more performance looked really bad for that time. The screen being better in the Air also didn't matter because I choose LG G Pad 8.3 exactly because it had a 8.3 inch screen.

> The version of WebKit available in 2019 is not “ancient”.

It is. This is at least 4 years without relevant security updates (except maybe for "extremely critical") and without improvements in Web standards.

I could get that same tablet today and get a modern browser like Chrome to run with relatively acceptable performance.

m45t3r··on Pixel Tablet
> The original poster just said that some apps required the latest OS.

Yes, of course there is a small number of apps that will need the latest OS, because they're trying to do something new that is not possible before etc. This is not true for 99% of the apps that you use though, and is specially not true for apps used by the mass market like Facebook/Twitter/Instagram/your bank because you would be crazy to only support a small % of your user base.

Also keep in mind that this is valid for both iOS and Android (bigger publishers generally support older versions of iOS because there are folks that will never upgrade/their devices doesn't support the latest version).

> Apple just released a security patch for the iPhone 5s January of this year. It was released September 2013. It was the first 64 bit iPhone and the first that supported LTE. Is Google or any Android manufacturer doing security updates for a phone released in 2013?

I still used my 10 year old tablet (LG G Pad 8.3) a few years ago because even if it didn't had the latest security updates, because at least my browser was up-to-date. Keep in mind that I wouldn't do anything security critical on it, but it is still arguably more useful than a iPhone 5s that should be using an ancient version of WebKit (so a good portion of the Web is broken on it probably).

BTW, before you ask why I stopped using the tablet: it finally broke after all those years.

m45t3r··on Pixel Tablet
I would argue it still is, because I am sure most Android apps still supports Android 9. Google is also much more serious about backward compatibility than Apple, and go a long way to make sure that Android APIs has backwards compatibility between multiple versions of it, see https://developer.android.com/topic/libraries/support-librar... and https://developer.android.com/jetpack/androidx.

So as long your device is still receiving security updates, it means you can pretty confidently run the majority of Android apps, even if you're in an older device. This is specially true since essential apps like browsers use their own engine and can receive security updates. This is very different from iOS that once it stops receiving updates, you're pretty much screwed up.

Not saying that one approach is better than the other, but both have trade-offs.

m45t3r··on Dell Latitude 5411: the Linux compatibility sweet spot
> My requirements are basically powerful hardware, a real GPU with nvidia strongly preferred, and good Linux support.

Unless the NVIDIA GPU is for Windows usage or CUDA, I would strongly recommend a AMD GPU instead. My last laptop had a NVIDIA GPU and it was a hell of issues inside Linux, that was amplified for the fact that I needed to use the NVIDIA GPU or I would get no output in its HDMI port. For sure, this was a gaming laptop and I expect a Dell XPS or Precision to use the sanest choice (connect all outputs to the iGPU instead). My Thinkpad P14s Gen 1 (new old stock) with AMD Ryzen 4750U and a Vega 7 iGPU is much better, no issues at all.

I had a Dell Precision 5530 from my previous workplace with a NVIDIA GPU (don't remember what) that was much better behaved in Linux, but in this case I just disabled the NVIDIA GPU and used the integrated Intel graphics (that really sucked). So if you are not interested to using NVIDIA GPU at all in Linux I would recommend this one, but to use it day-to-day in Linux desktop I would avoid NVIDIA GPUs.

m45t3r··on Apple unveils redesigned iPad
No it is not. A Xiaomi Mi Pad 5 for example is still cheaper than the newly announced iPad (US$399) and uses a much more powerful Qualcomm Snapdragon 860 CPU.

A14 is still 1.5~2x[1] faster than this CPU, but using a really low budget CPU for comparison is really unfair here.

[1]: https://nanoreview.net/en/soc-compare/qualcomm-snapdragon-86...

m45t3r··on Surprising result while transpiling C to Go
I didn't mean to imply this. I consider most router hardware embedded, but they includes CPUs. It is just that they're CPUs that you would generally consider embedded (like a SoC).

And BTW, my reply was mostly because of the context: people were talking about binary sizes for Go, but if you're using PC-like hardware you wouldn't care about binary sizes anyway (you can simply put more storage, even something like a 1GB SD Card would be way bigger than something like OpenWRT that can run with hardware as low as 8MB of Flash memory).

m45t3r··on Surprising result while transpiling C to Go
This certainly doesn't look like a embedded device though:

> The reference hardware platform is the PC Engines™ apu2c4 system board. It features a 1 GHz quad core amd64 CPU, 4 GB of RAM, 3 Ethernet ports and a DB9 serial port.

m45t3r··on Why is zero not falsy in Clojure? (2015)
> as it is a source of many bugs

Citation needed.

I worked with two languages that have exactly this same behavior (Clojure and Ruby), and both of them this is not the source of any bug that I can remember [1].

Also, I would argue that Clojure as a language is much more ergonomic thanks to `nil` being `falsey`, so this is all about the trade-offs between safety and ergonomics. Considering that, IMO, Clojure without nil being falsey would lose much more than Clojure being a more safe language, I really don't seem much problem.

[1]: well, there is one, where one of our internal tooling had this function called `assoc-if` that it would assoc a key to a map if truthy, however this also meant that when the key was of boolean type and false we would also not assoc this; but we eventually introduced `assoc-some` that does what you expect.

m45t3r··on Why Hy?
I completely understand the decision and applaud the fact that Hy seems to be going of a direction of being a much finer layer than it was previously (removing things from Hy itself and moving to Hyrule, for example).

On the other side I am quite torn about the decision. I quite liked the early releases of Hy where I could write a code that was much more familiar for me as a Clojure programmer. Still need to give a try to the new releases though.

m45t3r··on Why Hy?
> I always thought the main reason lisp did not become the world's dominant language (or, at least, dominant language with garbage collection) is that writing

I can write ugly code in any language. But if I was writing this code in Clojure, I would probably do something like this:

  (let [r1 (- (* b b) (* 4 a c))
        r2 (+ (- b) (sqrt r1)))
        r3 (* 2 a)]
    (/ r2 r3))
That is perfectly readable to me.

Yeah, you may say that I needed to introduce other variables to make this work and the code got bigger as a result, but on the other side how many people are actually writing this kinda of code on daily basis that are not Computer Scientists?

m45t3r··on Why Hy?
For me the example printing `1` makes sense because I think `let` as being something immutable, so I wouldn't expect `setv` to mutate that variable (would expect either a compiler error or the introduction of a new local variable).

But maybe it is because I am familiar with Clojure (where `setv` or equivalents doesn't exist) and not other Lisps.

This would be the equivalent Clojure code anyway:

  user=> (let [a 1] (defn foo [] (def a 2)) (foo) (println a))
  1
  nil
So yeah, makes sense for me. But can understand why some other people would expect the other way though.
m45t3r··on How to Learn Nix
> Nix can create isolated environments, but as far as I see, you can only install the tools Nix repo supports. And the official examples only give toy examples --here's a simple python script you can run with Nix-- but I can just run this simple script in a virtual env, or docker if I have 2-3 different scripts.

Well, for one, someone send me a random Python script with a dependency on a PostgreSQL driver (that probably needs to compile some C library). Just the script, no `requirements.txt` or `Pipfile.lock` or `pyproject.toml` files declaring the dependencies. I could have just created a virtualenv and tried to install it using pip, that would probably fail because I don't have a proper C compiler setup. Or maybe I have but it is missing headers. Maybe it will work because there is already a wheel for my system, but maybe it will not because some other random reason.

Instead, I just wrote two lines for shebang:

    #! /usr/bin/env nix-shell
    #! nix-shell -i python3 -p python3 python3Packages.psycopg2
And them `chmod +x ./script.py && ./script.py`, and everything is working.

> What problem is Nix solving? What pain does it fix that is so important it would justify me spending 6 months on it?

Really the meme that you need to spend months just to use Nix properly needs to die. I literally skimped the docs and got a working NixOS install at my first try on the system [1]. The default configuration is really well documented with examples, and I think most people can get what they want quickly.

Eventually I wanted to use something that was not packaged on nixpkgs, or I started to want to upgrade some specific packages without using unstable. At that point it was when I started to think Nix was kinda of painful (not because it was difficult to do, however the documentation is not good and you end up searching a lot until you find some answers). At that point yes, it is kinda a journey, but it is very similar to learning a new language: you eventually can get very proficient at it, but you never stop learning.

> And then there is NixOS, which again, I have no idea-- I can create my own Linux distribution that is what, reproducible? Again, is this a real problem anyone faces (and that isnt fixed by docker or ansible or any of the other hundreds of tools)?

Try to have reproducible system with Ansible. Yeah, I tried. It simply doesn't work well. Ansible is always a pain because steps randomly fail in a new machine, and you can waste hours of debugging for simply issues. Not NixOS: if your configuration builds there is a great chance that everything will work.

NixOS is the only system that I am sure that I have the exactly same configuration as my other systems, as long I am running the same commit from my nix-configs repository. Can't say the same for Ansible: if I setup a machine using Ansible right now and 2 days from now, pretty sure they will have different package versions (since the repository will have changed them), for example.

Also, you don't have rollbacks with Ansible. Yeah, you can have ZFS/Btrfs taking periodic snapshots and use this for rollbacks. This is not the same though. The UX in NixOS is simply so much better (reboot your system and select which generation you want to boot).

> My point is: Why is Nix getting so much hype when I dont see them solving any real problems? Sure, they promise a lot, but I have yet to see any real solutions.

Well, my point is: Nix solves real problems. Maybe you are not bitten as much as I am with them, maybe you think that spend half a hour trying to get a random Python script to work is fine. And I completely concur with you. It doesn't mean that Nix is not worth your time though.

[1]: Now, I think the fact that I used Arch Linux before really helped, since both NixOS and Arch Linux have an installation process that is completely terminal based instead of a proper installer.

m45t3r··on My transition from Windows to Linux in an anti-customer age
It is definitively not. I mean, Bluetooth is unreliable, but what happens in most of my other devices is a small 1~2 seconds gap in the sound. On macOS it simply stops working until I reconnect my device.
m45t3r··on My transition from Windows to Linux in an anti-customer age
This comment is strange because the only OS that I never had serious issues with Bluetooth is Linux, specially after migrating to PipeWire.

Windows always had some strange driver that were hit or miss depending of the dongle.

However macOS is much worse: I have a Galaxy Buds 2 that works perfectly in all my devices (Android, Nintendo Switch, my notebooks running Linux, etc.), but with my work provided MacBook Pro it randomly disconnects one ear, or the audio gets completely garbled after a while. Other teammates report similar issues with their Bluetooth earbuds, from completely different manufacturers.

Even without the above issue, connecting/disconnecting the device opens Apple Music and there seems to be no way to disable this behavior unless you buy an Airpods or disable all other music shortcuts.

It kinda seems that Apple makes the Bluetooth experience horrible for everyone else just to sell more Airpods.

m45t3r··on The case for induction cooking
I did a quick read in the article and while it gets in conclusion that induction has only 15% efficiency compared to a typical open fire, it is considering also the conversion of heat in energy by a thermoelectric (that is the actual inefficient process). While I understand the point of the article this is not a valid general conclusion of the efficiency of induction cookers, since you can have much more efficient ways of producing energy.

Induction cooks by themselves are very efficient in converting energy to heat (90% efficiency, according another claim in the article).

m45t3r··on Pokitto: Open-source pocket gaming console
Well,for one Vita is under-powered for some systems (like SNES). It has very good PlayStation 1 emulation performance though, thanks to its awesome PopStation emulator (proprietary emulator develop for Sony for PSP, that also runs on Vita thanks to backwards compatibility).

Switch is much better of course, however only the old non-Mariko units can be jailbroken without modchips, and while I do like the hybrid design of Switch, I still think Switch as a handheld is bigger and heavier than I want for a portable console. This would be solved with Switch Lite, but all Switch Lites are Mariko.

I quite like my RG350 to play old games (playing Final Fantasy VI right now), so much that my Switch is on its case for quite some time.

m45t3r··on Hidden Networks in TP-Link Routers
Not trying to defend TP-Link or anything, but I recently bought a pair of mesh router from them and they work very well.

BTW, this hidden network probably uses another protocol (for the OneMesh). It is the 802.11s (https://en.wikipedia.org/wiki/IEEE_802.11s), that uses its own encryption method based on Simultaneous Authentication of Equals (SAE) (yeah, that is the same as WPA3, however it came before it). It shows as hidden network on Wi-Fi Analyzer, but the network is not actually hidden in the same sense of a hidden Wi-Fi network: this simple happens because 802.11s has no concept of SSID.

The authentication of new devices happens when you pair a new router using the application available on Android/iOS (it has a web interface too but AFAIK it doesn't allow adding new mesh routers to the network). So it seems pretty secure for me, at least sans some security bugs that I am sure that the device should have. Doesn't bother me too much considering that most bugs that I saw on those consumer routers generally comes from the security from things like administration pages and not the Wi-Fi network itself (unless it is something like KRACK that affects all devices implementing the protocol).

Yeah, it is still pretty sh*t that they enable this by default, but if the router from the author of blog post is from one of their lines of mesh routers I do think this is kinda of made by purpose, because using multiple routers devices is kinda of the idea of a mesh network.

m45t3r··on Exodus – relocation of Linux binaries–and all of their deps–without containers
Sometimes you can't run Docker (maybe you don't have root permissions to install and start the service). Someone else in the tread said that they're using in their Synology NAS, that don't have access to a package manager.

Docker also will have a much bigger overhead since you basically need to include a whole distro instead of just a few libraries. And I particularly find Docker applications to be sufficient slow to start that I never want to use CLI tools via Docker.

m45t3r··on Apple’s New Screen Repair Trap
> If your argument is that insecure devices are ok for most people, you’ve already lost.

Quoting things out-of-context is really bad.

What I meant for that amount of security is the kinda of security where if you lose your device from your sight consider it already compromised. People that needs that amount of security will not be better with the Apple's new security theater.

Android devices are sufficient secure if they're up-to-date (this is not always true, sadly). iPhone devices are secure when they're up-to-date (more likely) and not suffering from the 0-day exploit of the week (that is happening more and more frequently). Arguably every iPhone user would be much better if Apple started to take software security more seriously, but they prefer to increase their profits by making screen repairs harder "in name of security".

Just to make it clear: you don't need to have "Apple certificated repair shops" replace the screen to have secure bio-metrics. The Google Pixel 6 shows this, you can change the screen, this will disable the bio-metrics until the device is re-calibrated (that doesn't need special hardware). Once re-calibrated the device will wipe itself, so there is no security issue here [1].

But even still, this is probably too much. 0-days seems to be so bountiful those days that buying a 0-day seems to be much cheaper than doing custom hardware, even when the hardware itself is not authenticated. Still, if you're gonna do it, do as Google at least.

[1]: https://www.gsmarena.com/google_quietly_releases_a_fingerpri...

m45t3r··on Apple’s New Screen Repair Trap
> All you'd need to do is find the place where your target is going and either bribe the teenager behind the counter or, depending on the value of the target, compromise the distributor from wherever the parts are coming. This is neither expensive nor difficult to do.

Sure you won't find strange that your smartphone disappear and appear later on, probably turned off (or at least asking for password) because I can't imagine someone doing this procedure with it powered on.

BTW, if you're really a so important target that your life depends on your phone not being tapped, you probably at this point would just throw away your phone and buying another, even if it is completely secure (that I am sure it iPhones isn't). I can imagine many other ways of compromising your privacy just by adding a small GPS tracker or something similar, and this way I don't even need to have access to the original hardware.

Now, of course only a small handful of people needs that amount of security. For most people, having hardware-level encryption of the data contents is fine, of course with trusted path with the bio-metric sensors so a just swap of parts doesn't give access to all its data. This level of security is available in any Android/iPhone. Anything else is just justification to allow Apples to earn even more money.

m45t3r··on Decline in effectiveness of all three US Covid-19 vaccines over time
There are some health pre-conditions that are impossible to avoid. I have hypertension for example, and except for this I am pretty much healthy. But still have a significant increased change of having of death in case I got COVID.

So yeah, I will take all vaccines I can. If I need a third dose to keep my immunity high against COVID, I will sure take it.

m45t3r··on Apple’s New Screen Repair Trap
Yeah, sure. Let me put millions to compromise a supply chain and get access to what thousands of people are sending on their WhatsApp accounts /s.

There is a reason why any type of security analysis needs to depend on your treat model. Unless the target is worth it, it doesn't make sense to do what you described.

Instead, millions of people lose a option of doing their screen repairs for cheap. And of course, Apple will have access to more money as always. But sure, security...

m45t3r··on Decline in effectiveness of all three US Covid-19 vaccines over time
Considering that even people infected by the virus had recurrent cases after a while (and in a much greater proportion than vaccinated people BTW), it is much more likely that this is thanks on how this specific virus works than some conspiracy theory to sell more vaccines.
m45t3r··on Decline in effectiveness of all three US Covid-19 vaccines over time
Prevention generally is better than cure. And it is not like scientists are not researching for alternative treatments, it is just that unless they got some positive result the media will not announce it.
m45t3r··on Making Emacs Popular Again (2020)
Yeah, exactly. For example, evil-mode is still miles better than VSCode Vim plugins just because it works everywhere. Any buffer that my Emacs opens I can still use my Vim shortcuts (so it doesn't change that I open a text, a binary, file manager, a fuzzy search or PDF). Compared to this, on VSCode I basically need to explicitly say "make vim commands do this in this context" for everything I need.
m45t3r··on Differences with other Lisps
They're not hygienic, but the usage of auto-gemsyms on quasi-quote and the fact that symbols are automatically expanded to their namespaced forms solves most of the problems that unhygienic macros have: http://clojure-doc.org/articles/language/macros.html#macro-h...
m45t3r··on Fedora 35
Apple machines still needs constantly updates, and worse, they keep nagging you.

My only macOS installation is a Catalina one, and Apple keeps wanting me to upgrade it to Big Sur, that I don't want for some reasons. However, the only workaround I found to stop the update badge from appearing (that is really distracting since it confuses me if this is something important or not) is to set some strange flag and kill Finder. If I open settings for any reason, the update badge reappears and this is really infuriating.

My system with the last amount of maintenance is my NixOS installation, where any workaround that I need for software/hardware issues are forever described in my dotfiles. So yeah, I need to find how to fix something once, however afterwards it will just work. Also different from Apple I can do upgrades when I want, they're atomic and I can also do rollbacks, so they're pretty much safe from a user perspective.

m45t3r··on Firefox on Unix is moving away from X11-based remote control
It seems for me that this remote control using the X based protocol was never meant to be a feature. Probably the mechanism was created before D-bus existed, was meant to be dropped once a better solution was created, but never was done until now.

If anything else, D-bus seems to be the proper protocol for something like this, since as the author itself said, it is simpler and more reliable.

m45t3r··on Raspberry Pi 3 Fastboot – Less Than 2 Seconds
If you're using systemd and NetworkManager, this is already what happens. Services that depend on network are delayed until a connection is made, that generally only happens after login.

If you're using something else than yes, the start of network services are made during boot. But it can be argued that if you're not using NetworkManager, you are a server and wouldn't benefit from delayed connection.

← PreviousPage 2 of 16Next →