HNHacker News
TopNewBestAskShowJobs

efaref

1,217 karma · joined July 16, 2014

submissionscomments
efaref··on Woman who lay dead in London flat for 2 years
> Issues of standards are not really depending on funding

This is clearly not true, otherwise we could just cut all the funding and maintain the standards as they are.

efaref··on BMW introduces new heated seat subscription in UK
Phone charger regulations were based on the need to reduce e-waste caused by every phone having a different charger.

I think the same principle could be applied here. Heated seats that can't be used are causing increased emissions as the car needs to move them around without actually providing any benefit to the owner, and so should be regulated.

efaref··on EU approves legislation to regulate Apple, Google, Meta, and other tech firms
What's the one for third-party apps? How different is the wording?
efaref··on New EU rules on car speed limiters coming into force
Automatic triggering seems like a recipe for disaster. My car has a version of this that shows the current speed limit on the display. It is frequently wrong. A road near me shows up as 20mph despite being 30 or 40 in different parts. Other times it sees signs for access roads or side roads and misinterpret them as for the current road (sometimes saying 20mph in a 60mph zone).

It's a nice idea, but the tech really isn't there yet. I guess a few high profile incidents and they'll be forced to fix it.

efaref··on Intelligent Indentation, Seriously
Tabs are implementation defined control characters. I don't want to say you can't use them, but if you do, then I get to use BEL. ;)
efaref··on Rust: A Critical Retrospective
Why is that weird? Procedural macros are compiler plugins. They get compiled for the platform you're building on, not the one you're building for, and so they need to be a separate compilation unit. In Rust, the crate is the compilation unit.
efaref··on Rustc: Add do yeet expressions to allow experimentation in nightly
It's not necessarily a "re-"throw. It could just be a throw of a newly detected error, like:

    try {
        if bad_thing {
            do yeet Error::new(...);
        }
        carry_on()
    }
Just plain "throw" would probably be fine, but I understand not wanting to bikeshed it at this stage.

Weirdly, "yeet" really does convey the sense of "just give up and chuck this thing back instead" that makes it a reasonable nice converse of "try", i.e. "try { yeet }".

efaref··on Self Modifying Code as an alternative to macros
> Alas, counting in macro by example is possible, but not trivial.

It's not stabilized yet, but RFC3086[1] introduces macro metavariable expressions, which make counting trivial!

The example macro becomes:

    macro_rules! define_error {
      ($($err:ident,)*) => {
        #[derive(Debug, Clone, Copy, PartialEq, Eq)]
        pub enum Error {
          $($err,)*
        }
    
        impl Error {
          pub fn from_code(code: u32) -> Option<Error> {
            match code {
              $( ${index()} => Some(Error::$err), )*
              _ => None,
            }
          }
        }
      };
    }
You can see this in practice on the playground[2].

[1]: https://github.com/rust-lang/rfcs/blob/master/text/3086-macr... [2]: https://play.rust-lang.org/?version=nightly&mode=debug&editi...

efaref··on Adding a “duress” password with PAM Duress (2021)
Most countries have key disclosure laws[1] which require you to provide keys or passwords to law enforcement. Not being able to remember the password is not a defense unless you can somehow prove it (which is impossible), and people can and have gone to prison for this[2].

[1]: https://en.wikipedia.org/wiki/Key_disclosure_law [2]: https://www.reuters.com/article/uk-britain-security-password...

efaref··on The BBC Is Using It’s Own ‘Dot BBC’ Domain (2021)
What a wonderful use of licence fee money.

/s

efaref··on Why We Banned Legos (2006)
Land. Billionaires own thousands of empty luxury apartments in city centres, while the poor people who clean them travel in from the outskirts.

And billionaires do effectively hoard things like rice. That's what the futures market they invest in is all about.

efaref··on Show HN: Three Magic Words
On Chrome on Android (whatever is latest on the Play store) in portrait mode, the bottom letters are off the bottom of the screen. If I rotate everything is small but I can see it.
efaref··on Worker pay isn’t keeping up with inflation
Internet connections cost poor people nothing in 1970 because they weren't necessary and could happily live their lives without one. The real item we're looking at here is *communication*, which was cheap: the stamp you needed to send in the form for your taxes cost a few cents. You could get away with using payphones for the few phone calls you absolutely needed to make.

In 2021, internet connections and cellphones are both expensive and mandatory if you want to participate in modern society. Your minimum wage job probably texts you your schedule, so if you don't have a cell phone, you can't even work. Many government forms have been moved online, with legacy options either unavailable or poorly services. Payphones are all but gone. If you're lucky to have a local library then maybe you can get some time on a decrepit computer with slow internet access, but the majority of the poor rely on their cellphone for internet access.

efaref··on Don’t do interviews, do discussions
In most countries doctors and other health professionals are registered and licensed, and must submit to strict examinations.

Mistakes can also be career-ending and potentially result in criminal prosecution.

It's way harder to get hired as a doctor than "do a bit of leetcode on a whiteboard".

efaref··on Zoom adding advertisements to the free tier of its service
> Could they *advertise* an upcoming festival

Yeah, that's an ad. It's even in the sentence.

efaref··on Skimpflation: A reason inflation is worse than the government says it is
Coming soon: TVs with 5G cellular access (sold as a feature) so don't even need to input your wifi.

(https://www.tvtechnology.com/opinions/five-ways-5g-will-chan...)

efaref··on Skimpflation: A reason inflation is worse than the government says it is
The goal is to track the relative price of goods consumed (the "Consumer Prices Index").

But if the way you're doing that basically ends up as "everyone is spending all of their wages", then your numerical value degrades to "how much wages do people have?".

efaref··on Skimpflation: A reason inflation is worse than the government says it is
The key part is in "obtain a basket of goods".

The ONS (UK statistics) are quite open about how they do this: https://www.ons.gov.uk/economy/inflationandpriceindices/arti...

Specifically:

> For example, if the price of tea rose dramatically during one year, consumers might switch their spending towards coffee, making it necessary to adjust the expenditure weights accordingly in the following year.

Or put another way, if fuel goes up astronomically and people buy less of it, they will adjust its weight downwards, limiting the effects of its price increase on the headline inflation.

It's not that statisticians and economists are fooled. The methodology works assuming that people have spare money and can choose to spend or not. But the reality is that things have got so expensive that most people are living paycheck to paycheck and spending everything they have, so their attempts to eradicate the bias of choice ends up just measuring how much money people have to spend (i.e. wage growth).

efaref··on Goto (2007)
Avoiding jmp in assembly is a sensible thing to do. jmp may stall the pipeline if the branch predictor is wrong. Better to use cmov when you can.

And if we're being silly, you only really need mov[1].

[1]: https://github.com/xoreaxeaxeax/movfuscator

efaref··on Cities try to phase out gas stoves but cooks are pushing back
In the UK, pretty much anywhere that uses electric heating will be resistive: either night-time storage heaters or just straight-up electric radiators. Heat pumps are still exceedingly rare.
efaref··on Policies that make the poor less poor
That's the idea. In practice you need to be careful as a failure mode of introducing UBI is it being used as an excuse to cut benefits without an adequate replacement.

For example, a reasonable stepping stone would be for people to get their food stamps by default, but then be able to "pay" some of the taxes on any income they earn using those food stamps. This means food stamps are being reduced gradually and at the marginal tax rate, so it's fairer than just falling off a cliff when you hit a threshold.

efaref··on Policies that make the poor less poor
I think we can always manage to let people starve.
efaref··on Policies that make the poor less poor
Functionally they're equivalent. In a UBI/negative-income-tax schenariom things like food stamps also shouldn't be cut off at a simple threshold, but instead factored in at your marginal rate. If your marginal rate is always your marginal rate, then it's always beneficial to take a higher-paying job.

The problem with means testing is that it effectively raises the marginal rate, often to astronomical percentages. For example, the withdrawal of a $1000 benefit because of an additional $1 that pushes you over a means testing threshold means your marginal tax rate on that dollar is 100,000%. Of course the rational thing to do is to not earn that dollar, or indeed any of the next $1250 that it would take to get you back to where you started (assuming a normal marginal rate of 20%).

efaref··on PHP has been removed in macOS Monterey
cut usually doesn't do what you want it to do. Most of the time you want to split on sequences of whitespace (which may or may not be tabs, it's not easy to tell from the output of the program). cut doesn't let you do this, which is a shame, as it would've been a sensible default. It also does weird things like print out the whole row if there's no instance of the separator on the line.

So because you can't trust cut to do what you want, you'll probably reach for something like awk '{print $3}' instead.

efaref··on Native speakers are hard to understand in a lingua franca situation
For an article about communicating clearly, it was pretty poor at communicating clearly.
efaref··on Using Rust Macros to exfiltrate secrets
IntelliJ with "Build in background" enabled?

https://www.jetbrains.com/help/idea/executing-build-file-in-...

efaref··on Using Rust Macros to exfiltrate secrets
You're not just viewing it. You're opening it in an IDE which compiles it behind the scenes for you.

Many IDEs also do this for other languages (e.g. by running make), and the same problem applies.

efaref··on Where the top of the stack is on x86 (2011)
I never understood why people ever put memory upside down on diagrams.

In fact, I think the only time I see diagrams with F at the top and 0 at the bottom is in explanations of the stack, or in explanations of how "the stack is so weird it grows the wrong way!".

When describing, e.g., a memory map for a custom ASIC, you would always put the low addresses first and the high addresses later. That's just how numbers work. The "stack grows the wrong way" issue seems to be an invented problem.

efaref··on New evidence that British workplaces are losing viewpoint diversity
Exactly. People say they want freedom of speech, but really they want the ability to say whatever they want while also having the ability to punish others for saying things they don't like.

Similarly, people say that some countries have freedom of speech, when in reality every country has ways of punishing people for making certain noises out of their mouths - they just differ in which noises and to what degree.

The effect of this dishonesty is there is a hidden social contract on what you are, or are not, allowed to say, and everyone has to negotiate that. The article is about how people are becoming more self-censorious as a consequence of this social contract tightening up.

efaref··on New evidence that British workplaces are losing viewpoint diversity
In the UK we have limited freedom of expression (under S10 of the Human Rights Act 1998), which is much more narrowly defined, and even then subject to many restrictions and limitations (libel, court privilege, hate speech, and more). It doesn't really qualify as "freedom of speech" in the sense that really matters for this discussion.
← PreviousPage 2 of 12Next →