skysight-inc/HackerNews huggingface dataset:
> 1. I’m amazed that you call Java ugly and verbose but recommend C++. Apart from files not needing to be classes in C++, they feel similarly verbose to me with C++ slightly winning on ugliness.

I've always found java much much more verbose. here's e.g. hello world in javafx:

package helloworld;

import javafx.application.Application;
import javafx.event.ActionEvent;
import javafx.event.EventHandler;
import javafx.scene.Scene;
import javafx.scene.control.Button;
import javafx.scene.layout.StackPane;
import javafx.stage.Stage;

public class HelloWorld extends Application {
public static void main(String[] args) {
launch(args);
}

@Override
public void start(Stage primaryStage) {
primaryStage.setTitle("Hello World!");
Button btn = new Button();
btn.setText("Say 'Hello World'");
btn.setOnAction(new EventHandler<ActionEvent>() {

@Override
public void handle(ActionEvent event) {
System.out.println("Hello World!");
}
});

StackPane root = new StackPane();
root.getChildren().add(btn);
primaryStage.setScene(new Scene(root, 300, 250));
primaryStage.show();
}
}

here's a Qt version:

#include <QtWidgets>

int main(int argc, char** argv) {
QApplication app{argc, argv};

QPushButton button{"Say 'Hello World'"};
button.setWindowTitle("Hi");
QObject::connect(&button, &QPushButton::clicked, [] {
puts("Hello world !");
});

button.setMinimumSize({300, 250});
button.show();

return app.exec();
}

notice for instance creating an object just with {} ; just that saves me I don't know how many hundreds of keystrokes. Also no need to ever `new` anything, just name the types directly. No need to repeat types à la

StackPane root = new StackPane();

C++ would just be

StackPane root;

or maybe

auto root = StackPane{foo, bar};

observer pattern can be much less braindead thanks to the early existence of templates, and let's not even talk about https://docs.oracle.com/javase/8/docs/api/java/util/function...

Quoting stackoverflow:

https://stackoverflow.com/questions/18400210/java-8-where-is-trifunction-and-kin-in-java-util-function-or-what-is-the-alt

> There are ready to use Consumer3..Consumer8, Function3..Function8, Predicate3..Predicate8 in reactor.function package of Reactor Addons library that is bundled with Spring Framework.

like, come on...

same for Optional which gets some unrelated custom OptionalInt because there was no value type and adds boilerplate for nothing.
I got paid twice 24th and 25th but didn't have to do anything. They just took the money back when they realised. I bank with a different bank to my company.

"Can't get it back" is a fallacy.
Disney has options even if copyright legislation doesn’t change. For over a decade now, Disney has used clips of Steamboat Willie in their logo. Even after Willie’s copyright indisputably expires in 2024, they may attempt to litigate under trademark law.

That kind of thing doesn’t always work though. For example, Lego has repeatedly attempted to trademark their brick shape in various venues after the patents expired. Their many resulting lawsuits against Mega Bloks have (to my knowledge) been generally unsuccessful, because the functional elements of an interlocking brick design turn out not to be trademarkable.
You're not either a good guy or an asshole. There is a lot inbetween. Sometimes good people make mistakes, but I don't think it's good to instantly label them as assholes.
I love stories like these that leverage practical tricks such as percent-encoding the URL to bypass the filter URL filter.

I love technical writeups about masterfully overwriting structures on the heap, etc. as much as anyone else, but I find more “simple” hacks/workarounds equally exciting.
There are teams over one dev out there
If you did it before you can surely do it again. You had the spirit and intuition which led you to see that it could be done. Now do it for the world, not for yourself. That is the missing ingredient.
I'm going dark on social media this year, twitter especially.

There are some amazing posts on twitter, but how much crap do you have to wade through to get to them? Nuzzel was great at filtering down to the most relevant article, but twitter caught and killed that company, it's acqui-hired CEO promising to move some features into twitter but they never materialised. Twitter wants me to consider the uninformed and the informed alike, just so they can monetise my eyeballs, and in 2022 that's just a waste of our time.

I think of my information diet as a classic signal to noise problem. My goal is to unearth thought provoking articles, twitter it might take an hour of slog to get one nugget, whereas hacker news offers about one per minute, and at the other end feral wastelands like the youtunbe comments section you would be lucky to get one gem a month.

All of which is my round about way of saying that I love HN! The comments here are often more insightful than the article, and I feel that time spent here is actually time well spent. Happy new years to all the hackers, makers and grinders out there. Don't go changing!
I started using Twitter to follow my new boss and his colleagues in a new to me industry. I stopped several months later because the legitimate "social action" content I was exposed to was overwhelming... I know the world is not perfect, and I try to improve it here and there, but I cannot take the full weight of all that must be fixed on my shoulders at all times.
Gish gallop?

https://en.wikipedia.org/wiki/Gish_gallop
> So, if I update the copyright...and some copycat sets their copyright say at 2019....who retains the copyright?

You do. You don’t need the notice to hold the copyright. You get it automatically as soon as it’s created. The notice is unnecessary.

But if you lie about the creation date by keep changing it to the current year, and somebody can prove their copy existed before the current year, it might make enforcing your copyright difficult.

You should just keep it simple and use the correct year.
AAA titles like Battlefield 2042?
Recent AAA titles became so low quality and uninspired that I mostly skip them.

The true AAA titles made by indie developers come surprisingly often with Linux support.

And there is always Stadia and Geforce Now.

Then again, I am not the Hardcore gamer I used to be in the golden days...
Nice to see an implementation of priority queues in Haskell, although I think most people would say this is already an integral part of the dijsktra algorithm?

I haven't yet attempted this year's AOC but I suspect this is one where working backwards from the bottom right and dynamically storing the best value at each cell would work much better than dijsktra.
No idea what pressure change over what timescale would be required to actually injure a mosquito, I guess someone will have to torture a bunch of mosquitos for science.

The reason to use an array is to precisely control the timing of each speaker so that the sound waves from each of them interfere constructively at a single point. Then by varying the timing you can target that focal point wherever the mosquito is, hopefully without causing the sound to be painfully loud anywhere away from that point.
There are definitely warts and sharp corners. Inconsistent cli api. The story for binaries with Git-LFS is still a mess (try using git over SSH with LFS or explain to a newcomer why it doesn’t work). Conflict resolution is still half stupid with very few easy ways of adding better more specialized merge drivers and deploying it over a company. Improvements like ReReRe and similar aren’t well integrated and enabled by default. Instead they are obscure additions so that you can get a less infuriating behavior. But only if you press the right buttons first.

The worst aspect of it though is you can’t set it up to be properly centralized so that you truly bless a location which can keep things like branch name policies, distribute hooks to all employees etc. All that has to be built (poorly) on top, with ample opportunity to accidentally sidestep.
> I imagined, “what if we were able to just find the next vertex of minimum distance from the source in constant time?”

> [...]

> even if you have the right algorithm, the choice of how you represent auxillary data in the algorithm matters.

I think this is a very useful insight and the core of the piece. It just goes to show how important the layout data is with respect to the algorithm using it.
> How does having strong support for dynamic linking prevent someone from copypasting insecure code or just linking statically with your .so?

It doesn't. But it gives people a real alternative to doing what you describe! And only when a real alternative to something bad exists, one can reasonably demand that people stop doing the bad thing (Debian does, so does Fedora and a few other distros I believe).
Thanks for the links. “About 93%” is much more sensible then 93%. As for vitamins there was an old study [1] :

Child mortality due to measles is 200 to 400 times greater in malnourished children in less developed countries than those in developed ones. In addition, measles brings about consumption of nutrients in marginally nourished children, so they will also do worse if not supplemented during infection.

[1] https://www.karger.com/Article/Abstract/413843
Yes it is if you are careful.

By using home assistant and sonoff plugs flashed with tasmota firmware you can keep all of your data local.
It is not uncommon that older/senior developers hold an undeserved grudge against STL. STL was far from mature in the 90s, sometimes even rather bad (at least in Windows/Visual Studio). But that is simply not the case anymore. Modern STL is well-written and highly optimized IMHO.

Sure, it is not as "complete" as standard libraries in Python, Go, etc. It is rather a different kind of beast than those standard libraries, not as high-level, more building blocks oriented.
Maybe we should just leave email off for 2022.
Adaptability is key.

Some may go to a party to "hook up." Some may go to a party to score some drugs. Some may go to a party to network. The author of the article goes to the party to have intellectual conversations. The author didn't get his intellectual conversations, but he could have wrote the same article about coming up dry in scoring some drugs.

I feel the author is missing an opportunity to practice creative adaptation in these parties. Don't go into the party with a specific frame. Instead, try on different frames as you speak with different people. Maybe create frames which you have never attempted. Or just wing it and see how it turns out.

If you make it about any one thing, you'll be disappointed, but you'll also miss an opportunity to make that moment of life interesting rather than a disappointment by going in with a more fluid presence.

Don't forget about how to play.
I took Serverless Stack for a test drive by going though their guide, I was not disappointed
my current setup consists of 2x imac27 retina sitting next to each other. I use Barrier (a software KVM) to switch mouse/keyboard between those. It works well for my need and is an inexpensive way to get a 2x 5K monitor setup (total cost: 2100 EUR)

I am considering getting a M1 mac mini and use my 2 current imac27 retina as external monitors. My plan is to get a cheap small monitor for the mac mini, then use Barrier to use the imacs as external monitors.

Anyone here has gone that route?
I think it's fair to say he was quite a reactionary even for the standards of the time. In my opinion, that does not erase the beauty he produced, and neither does that beauty erase his less unsavory featured.

But yes I'm quite against the tendency to crucify dead people, which is annoyingly prevalent in some circles.
The point is that sales don’t factor into it in the first place. An infringing work could increase sales, and the copyright holder would still have just the same rights. Think of anime fansubs—which effectively brought Japanese anime to mainstream popularity in the west, yet are still heavily cracked down upon by license holders, and always have been.
I am afraid the intellectual side of the article is largely about the (only hinted) problem of "how to reliably identify infections". Some would suppose that "better" (faster, cheaper, more reliable etc.) testing technologies could compete in importance with medications (one could argue that they are in a way more important, since they are damage pre-emptive). With the new variant, the typical symptoms are even less evident.

Also based on statements from «Professor Tim Spector, from Britain’s ZOE Covid app», the article warns that there are grounds for the new variant to go undetected because of mild and common symptoms:

> data from the ZOE study app suggests that about half of all cases of Delta are being “missed” because people are only on the lookout for the “classic” Covid symptoms of fever, new and persistent cough and a loss or change of smell or taste ..., whereas a mild case may not result in all of the conditions on that checklist being experienced. Omicron is probably much more similar to the mild variants we’re seeing in [the] vaccinated [ill]

The professionals quoted in the article seem to agree that it is important with «any symptoms of respiratory infection», say maybe just «a runny nose and headache», to get tested - say, to «use lateral flow tests for a couple of days».

--

The Independent also just published a "twin" article, How long is Omicron’s incubation period? How it differs from Delta and other Covid variants, https://www.independent.co.uk/news/health/omicron-incubation...

> While the World Health Organisation estimated that symptoms took anywhere between two days to two weeks to materialise in cases of people infected with the first coronavirus strain, the Omicron variant is thought to incubate much faster, closer to three to five days

> Early warning signs for the new variant, by contrast, include a scratchy throat, lower back pain, a runny or blocked nose, a headache, muscle pains and fatigue, sneezing and night sweats

> The current evidence from Omicron cases analysed in Britain is that patients will recover within five days to a week on average, although some of the symptoms like coughing and fatigue may linger for longer ... Shortness of breath has also been reported in more severe cases, which has been seen to last for as long as 13 days after

> Covid sufferers are, typically, thought to be infectious to others from around two days before their first symptoms start to materialise and for around 10 days after
Indeed AAA titles like 2042. And indeed zero people need to switch to Windows for 2042.

I still play BF4 and it’s still a great game - but even that 7 year old title is of course impossible (as far as I know) to play on Linux.
The need for balance cannot be stated enough. All things have to be done when it's their time. Spending your entire youth working yourself to the bone to retire early is just as bad as trying to spend all your old years globetrotting to make up for not doing it earlier in life.

Life is like good food: you'll want all ingredients properly mixed in at the right time (with some added randomness and creativity). Trying to eat the ingredients one by one in some order that you think will make the food better is almost guaranteed to disappoint.
May I ask what caused you to not take it back then?
Seeing people very critical of vaccine studies of a successfully eradicated disease that has had a long time since to evaluate that success aside a really generous benefit of the doubt given to vague claims about vitamin supplements makes me sad.

We can be observant and suspicious about the healthcare industry while also admitting that there is science being done. They manufacture vitamin C supplements, too. They make money whether you buy the regulated stuff or the unregulated stuff.
I have a policy to downvote any post that complains about downvotes. Besides, it's against the site guidelines.

> Please don't comment about the voting on comments. It never does any good, and it makes boring reading.

https://news.ycombinator.com/newsguidelines.html

Yes, it's a painful hit to the ego to receive downvotes, but in my experience any post that is downvoted early undeservedly will be upvoted back into the black fairly swiftly.
Sounds an awful lot like Yoshi
Taiwan vs. China would be all over in five minutes flat, and nobody in the West really cares what China does so long as the trade and financial arrangements are relatively unaffected.
Yes, as long as you have tons of free time, and will to invest it in learning these systems tools.

For me this would be madness, I want the computer to achieve something, not to spend my days tweaking it.
If you're him, then I'm the 33 year old you.
> (...) such as Google's famous "no exceptions".

If I recall correctly, Google's rationale regarding exceptions is that their legacy code is not exception-safe, and so they were faced with the choice of either rewriting critical parts of their legacy code to handle exceptions, or don't use them.

Also, their "no exceptions" rule only applied to work involving their legacy code.

I'm too lazy to find the source, but that bit of trivia was already discussed ad nauseum even in HN.

The morale of the story is that you should not mindlessly repeat any opinion without knowing the rationale and instead pulling appeals to authority to cover up the logical hole. That's how you end up contradicting even your source, just because you believed that's how the cool kids do things.
Is it me or is this essay really an incoherent mess? As much as I would like to agree with the author's stern verdict (and I am saying this as a systems programmer with more than 20 years experience) I cannot make out the central argument.
That's a great idea, but still, You should remember that You do not even know all questions You can ask, thus reading books that has reputation can broaden horizon in ways that You can't event imagine (or alternatively You can try to build computer that will find the question).
I did not and I guess the person who created this app (Materialistic) didn't, either, cause I don't see a poll here.
What is the idea of 464XLAT?

We have IoT style devices using AWS. And IPv6 has long not really been available on AWS. Yeah, it has become a bit better the last 3-5 years.

So we have not really worked on IPv6 for our devices either. The kernel would support it, but our user space just does not use it. The typical excuse, someone else hasn't done their homework first...

Our devices work just fine with T-Mobile US SIMs. I assume you were referring to US? So where is the IPv6 only aspect?
OT: does anyone here still have the ebook of Winnie the Pooh that Apple included for free in your library when you set up iBooks on an iPad?

They included it from the launch of iBooks (now called Apple Books) in April 2010 until sometime in mid-2011. In mid-2011 it became a paid book for new iBooks users but remained in the libraries of existing users.

I noticed a couple years or so ago that it was no longer in my library. I don't know when it disappeared because I only rarely use iBooks, but everything else I remember getting in that first year is still there.

Checking my account for ebooks on the account that are not on my Mac, I don't see it, so it isn't the case that I somehow just happened to delete it from my Mac. Nor is it on the list of hidden books.

I'd have expected that if Apple had deleted it from existing libraries when they lost the rights to give away free copies that would have made the news but I've found no mention of that. In fact, all I found was just the opposite--apparently there were people who didn't want it in their library and were having trouble figuring out how to get rid of it! [1].

[1] https://forums.macrumors.com/threads/how-do-i-delete-winnie-...
Twitter for me is a news source but not a social network.
I did not mean it is 'simple' to write fast C code, but that it is 'simpler'.

Simpler in the amount of knowledge you need to have to write the fast program.

I mean just compare "C the programming language" with Stroustrup's "C++ the programming language". It took me years to understand even a fundamental thing as move semantics. When programming fast C++ you need to be able to see what is moved properly and optimized in the way you want. How classes are inlined into the code etc. What container do malloc on construction, what containers are cheap empty, and so on and on.

There is no such knowledge needed for C.
> Cool to see such a comprehensive guide! At the same time, are people seriously still pushing OAuth2 for first party auth? Shouldn’t everyone know by one that OAuth does not solve...

I assume you are using "Auth" for authentication, and not authorization (as OAuth does). Indeed, OAuth does zero for first or third party authentication of users - authentication is a set of extensions provided by OpenID Connect.

The reason people use OpenID Connect as the API for first party authentication is because you _need_ an API for integrating externalized authentication systems, and (excluding SAML) every other system is proprietary with minimal cross-vendor support.

However, that OpenID Connect API only provides for authentication with a few (possibly supported) hints for behavior. It is up to the OpenID Provider software to provide all the IAM features you mention - registration, account recover, profile management, multi-factor authentication, etc.

There is no standard for registration, account recovery, profile management, or MFA because all of these are business processes or user experience customizations - they are software, not protocols. That is why OpenID Connect is used to integrate with a piece of off-the-shelf software which implements your business policy and which is customized for your desired experience.

At most, you see things like https://github.com/w3c/webappsec-change-password-url - website configuration to tell a password manager where to navigate the browser in order to change the user's password.

> I think it’s exciting to see new open source projects like https://github.com/ory/kratos or https://github.com/supertokens/supertokens-core that finally break up this misconception!

These both have the same architecture as say an Auth0. Supertokens API provides a proprietary alternative to a constrained OpenID Connect protocol. Kratos has a companion project which exposes the server via OpenID Connect.

The supertokens API may have been easier for _them_ to implement than all of the potential OAuth and OpenID Connect extensions, but when going with constrained profiles like the OpenID Connect Basic Client Profile it would be difficult to be substantially simpler without being less secure.
Neither of these I would call "forums", but rather social media, because, for instance, they dramatically reduce the moderation work and fostering of a community. For instance : no need to have to police the proper use of necroposting (which sometimes is the proper thing to do instead of starting yet another copycat thread that will rehash the exact same points - a forum isn't a chat !), when necroposting has been disallowed in software !
What's the best time to have kids? 35?
Do you mean very recently? Because the change of tone is normal around the holidays; it will go away.
This is true in most cases. It is all about the data and algorithm in concert, rarely about either one. Badly laid out data can kill your cache. Well laid out data with a crappy algorithm may outperform badly laid out data with a fantastic algorithm.

The ability to visualize the impact of your layout on caching is the fastest pay-off you'll ever have as a programmer, just knowing the sizes of your caches can already make a huge difference.

For instance: if you have a bunch of data and you need to do operations on that data it is much faster to pull in the data piecemeal, do all the operations on it bit-by-bit and then to move on to the next bit of data than to do several sequential passes over the data storing the intermediate results.

The difference in speed can be multiple orders of magnitude.
I wonder... Is tax paid on these settlements?