skysight-inc/HackerNews huggingface dataset:
> you'd be hard pressed to find a system in 2019 where NULL != (void *)0

You'd be hard pressed to find a system at any time where NULL is not equal to a compile-time constant zero. ;-)
It turns out DMARC isn't actually required. Having it might help your acceptance score, but gmail and outlook don't actually require it.

I know because I haven't set up DMARC for my email domain, and my email still gets accepted by everyone.

I believe it helps that I accept on TLS with a valid certificate, and I used Google's postmaster site verification.
I honestly don't see the relevance of that. Most people who have such shares are not given any sort of say about what Microsoft does, so that they may have shares is not significant.
This could be telling in a way though, don't you think? Scurvy is a fun example of what I mean. Most people now know that scurvy is just a disease caused by a lack of vitamin c. But for centuries it was not really understood what caused it, and it has resulted in countless millions of deaths throughout the centuries. Some people would discover the cure, but it never really stuck around. Part of this is because it sounds so absurd that e.g. eating limes is a way to stop an otherwise aggressive and deadly disease. Imagine I suggested you eat apples to stave off the flu. Sounds, at best, 'folky.'

And this was also further complicated by the fact that lime juice can lose its nutritional character in some situations (such as certain sorts of storage), and so some experiments in using lime juice as a cure/prophylactic failed. It was also complicated because there's also high quantities of vitamin C in various fresh meats, and so crews that had access to these meats, but consumed minimal citrus, would also never seem to be affected. Tricky to nail down!

As a fun factoid, vitamin c is ascorbic acid, but it wasn't always called that. It was originally named hexuronic acid. It was renamed ascorbic (against scurvy) acid once it was confirmed that it was indeed absolutely what was treating and preventing scurvy. Another fun one is that this is also related to the slang term for a Brit - a 'limey'. The nickname came from the fact that the British navy was one of the first to start dosing their sailors with lemon/lime juice to ward off scurvy.

So the point of this is that if a whole bunch of people are suggesting something works, to the point of it becoming a meme, there may actually be something to it - even if it can be difficult to isolate the exact reason why, or why it may not work in 100% of cases. Definitively solving the mystery of scurvy took about 3,500 years from the point of it being formalized. So a bit of patience is probably justified for these sort of things.
That doesn’t check whether that memset call writes 0xFF bytes in the padding.

The compiler could also determine that &a.x)[1] is undefined behavior in C (reading past the end of an object), and take advantage of that.

The way to check that is by disassembling the code, and even that doesn’t say what a C compiler should do, only what these particular compilers do.
Thermal validation. It is easier to test in a laptop as it has a limited thermal flux.
Isn't owntracks an option? Self-hosted and has regions.

It comes in as Json and just parts the regions array
I’m convinced this is a special case of the more general “success begets success”. There’s likely a physical aspect of it as well but just feeling like you’re doing well drives you do better. It’s a virtuous cycle.
Thoughts after thinking about this comment and thread for a day:

Has the time come for wiki directory of non-commercial (possibly: advertising-free, cookie-free) sites with robust, actually valuable information, and other sites that are doorways to them (think: topical forums, even revived webrings, etc)? Could this feasibly get enough action to be useful?
Because of c spec idiocy it isn’t event sufficient to use memset anymore, you need to use memset_s.

But “stop memsetting” is clearly nonsense if you care about security.
It all depends on what the situation is. Some people get mugged by people without weapons or who only have a knife or are bluffing about having a gun. But yeah I wouldnt have it somewhere I couldnt reach for the gun immediately.
The large structures in the universe are assumed to be rooted in fluctuations that got inflated to their size.

See https://en.wikipedia.org/wiki/Inflation_(cosmology)
This is mostly a matter of taste, but if the first example makes sense, the second example looks less clear, because, for someone quickly skimming through the code, a variable which have a somewhat clear meaning "yes" (that could be improved) is replaced with a magic number who have no intrinsic meaning.
> By reverse engineering ProTrack and iTrack’s Android apps, L&M said he realized that all customers are given a default password of 123456 when they sign up.

Pretty much sums it up.
>NULL != (void* )0.

This expression is false in any C99 compliant system:

Section 6.3.2.3 [0]:

> An integer constant expression with the value 0, or such an expression cast to type void * , is called a null pointer constant. [1] If a null pointer constant is converted to a pointer type, the resulting pointer, called a null pointer, is guaranteed to compare unequal to a pointer to any object or function

> Conversion of a null pointer to another pointer type yields a null pointer of that type. Any two null pointers shall compare equal.

The technicality of the memset example is that it does not set the bits of the pointer by referring to it as a pointer, so the requirement that 0 behave as if it was a null pointer does not apply.

[0] http://www.open-std.org/jtc1/sc22/WG14/www/docs/n1256.pdf

[1] In text footnote: The macro NULL is defined in <stddef.h> (and other headers) as a null pointer constant; see 7.17

EDIT: Formatting
Sure, but GP contended that

> Gmail’s spam filtering is just a pretext for passing all email through a machine learning system. Sure, one possible signal emitted by that system is whether a message is spam or not. Perhaps this determination is conflated with wether the message is useful for ad targeting

And well, that's clearly not the case if Google moved from doing both ad targeting and spam to just spam. The evidence is literally Google moving in the polar opposite direction from the nefariousness that they suggest.
Escape Room T-Shirts
What No One Tells You About Noise Cancelling Headphones
There is some minimal support for fallible allocation through the try_reserve method on various collections. See https://github.com/rust-lang/rust/issues/48043 for more information.

Other than that, there is ongoing work for custom allocator support in collections: https://github.com/rust-lang/rust/issues/42774. Maybe that's what you meant with tracking the allocators at the type level?

It's of course also possible to create own fallible collection types, for example as a wrapper around the normal liballoc and try_reserve.
I "mind the suffragette movement" because it was one of the examples used in the article.

If that example doesn't work, then of course any number of other once-radical ideas don't work.

As an aside, John Stuart Mill is not considered one of the 'foremost Enlightenment thinkers' because he isn't regarded as an Enlightenment thinker. The Age of Enlightenment ended about the time that J. S. Mill was born. Instead, he is part of 'late modern philosophy' https://en.wikipedia.org/wiki/19th-century_philosophy#Philos...

J. S. Mill and other contemporaneous philosophers like Karl Marx, were certainly informed by Enlightenment ideas, but to the best of my understanding, the right of women to vote were NOT core to Enlightenment-era thinking.

As support, I point to https://en.wikipedia.org/wiki/Marquis_de_Condorcet#Gender_eq... where we see that gender equality wasn't considered by famous Enlightenment thinkers until the end of the Enlightenment, around 1790:

> One of the most famous Enlightenment thinkers at the time, [Marquis de Condorcet] was one of the first to make such a radical proposal. A visionary, he identified gender as a social construction based on perceived differences in sex and rejected biological determinism as being able to explain gender relations in society. He denounced patriarchal norms of oppression, present at every institutional level, and continuously subjugating and marginalising women.

I can easily be proven wrong by pointing to writings from several other of the foremost Enlightenment thinkers advocating for a woman's right to vote equal to a man's. Could you point them out?
You don't need that for a Model 28; it only needs 20mA, and you can still buy 20mA current loop interfaces. It's the 60mA machines, where the current loop directly powers the selector magnet, that need this.
I have had good success with Server-Sent Events in Go. It’s a pretty clean alternative to long polling and it didn’t need a library. In my case I was streaming JSON objects to the browser, very quick to implement.
I actually think along similar lines but at a higher level of abstraction. I think we'll have to start moving towards multiple complete computer systems, each with their own internal busses, memory, etc., that operate as a unified whole. A bit like massively parallel systems do.
The thing is, users usually don't know what they're doing. Users are accustomed to clicking through promtps and usually have the "meh, some stupid security thingy again, who cares" attitude. There are the HN people who can actually read prompts on screen and understand what stuff means, but most people can't (or don't). They can't differentiate between a legitimate app that, say, wants to re route all your traffic through a server b/c parental controls, and another app that wants to do it for "making your internet traffic faster" while spying on you. People installed fake RAM extending Android apps, what are we even talking about.

Even if the users understood what they were doing, they probably didn't know the risks associated with installing an MDM profile. THey didn't know what data exactly the app makers were getting and how they were using it. Even I don't know that. I know where to find such information if I need to, but I don't know exactly the permissions of an mdm profile by heard.
> BTW, Japan's social cohesion is falling apart just like everyone else'. So even your initial point is a bit suspect.

When you say "falling" apart, what do you mean exactly? Declining? Is it falling apart to the same degree that cohesion is falling apart in Western first world nations?

> Unless you feel things like masses of old people dying alone, unwanted and even undiscovered is a sign of great social cohesion.

Ian Bremmer uses four specific dimensions of evaluation to substantiate his case. Your example uses one, but is " "masses" of old people "dying alone" " both an accurate description of current Japanese society (what is the actual degree of change in this respect over time), and caused by "social cohesion falling apart"? Demographics and the rising tendency for offspring to move away from family (in this case, it introduces complexity into what the word "alone" really means) seem like they play a substantial part as well. Epistemologically, I wonder if there's anyone who really has a good idea.

> In a modern world, in modern societies, social cohesion just tends to fall apart....It's really just human nature.

I wholeheartedly agree that this is the overwhelming norm in most modern societies, but I disagree with "it's just human nature" so will continue to agree with Ian Bremmer for the time being. I think it is largely a function of the kind of societies we choose to build, often optimizing for GDP growth with little respect for the often nuanced qualitative effects this has on our societies.
Surely you only need memset_s if you're doing this for security reasons, as if memset is optimized away it's because the compiler can prove the observable semantics are the same.
Perhaps the point is "safe device + no game" > "device with user error likely + game", i.e. there is no longer a game but that's okay.
Because it’s 2019!

It really irritates me when people give arguments like this. I seriously don't care what year it is, I care that the code I write works. A lot of projects still use C89 because they want the widest portability. C99 isn't very new, but especially in the embedded and other niche industries, C89 (often with some extensions) is all you get.

That said, "= { 0 };" is almost always usable instead of a memset() and works in C89 too.

And finally, there is absolutely no reason to check if a pointer is NULL just before calling free() on it

This is advice I agree with. The nullcheck is in free() itself (IMHO a good design decision --- especially along error-handling and cleanup paths.)
What kind of person is this? In your estimation, what is his tragic flaw, apart from existing and being involved?
What is the difference between this and what leetcode already has with their mock interview.
KISSMetrics was the poster child for a lot of people on the SaaS marketing front. Their content marketing game was the best in the business and they tested landing pages aggressively.

But I guess there was a mismatch between the product and the marketing
Uh... multiple registers dedicated to return values is a feature of an ABI, not an architecture. The hardware doesn't care what you put in those registers, obviously. Rust defines its own ABI for internally-generated code, it doesn't need to care.

And in fact I'm not aware of any such systems. Existing 32+ bit embedded architectures like MIPS, RISC-V, Xtensa, and ARC all have robust instruction sets with large register files and a fully-defined SysV-style C ABI.

No, the reason is as stated elsewhere. Rust doesn't run on these systems because no one bothered to tool up LLVM for them.
Intel is very likely to miss holidays with 10nm.
OEM manufacturers in South China, are screaming murder, and even ones who were Intel shops for decades like Weibu are jumping the ship. Intel is losing China big time.

I'd say, a lot would've been fine even if Intel gave them existing 14nm chips, but since all 14nm capacity is gobbled by server chips, it's not gonna happen.

I believe Intel is making a huge error by prioritising big wholesale Xeon buyers like Amazon over OEM manufacturers. Hosting providers will be back the moment Intel regains the tech lead or finally makes 10nm Xeons, but OEMs will walk away and not return.
What do you mean they are not drivers for Linux? AFAIK they are blobs for Linux. Of course you can't compile them, as they are proprietary, but they are drivers for Linux.
Discord is blocked in China, and a large number of people in China are not willing to use VPNs.

Discord uses themes that do not meet minimum contrast guidelines (#747F8D on #FFFFFF is 4.06:1, failing WCAG AA for normal text).

Discord says third-party clients[1] and even client-side CSS modifications violate their ToS https://twitter.com/discordapp/status/983359562458849280

[1] https://old.reddit.com/r/discordapp/comments/8tukek/ripcord_...
> I wouldn't mind being able to buy a computer and not have to worry about upgrading it for 10 years (I think we're pretty close to this point already).

Depending on your needs, we're been there for at least 10 years. I don't expect to have to upgrade (not counting increasing memory or storage as "ugrading") or replace any of the systems I own right now until they're over 10 years old. About half of my current machines are approaching their 10 year anniversary. Two are older than that. None of them need upgrading.
“””
I divide my officers into four groups. There are clever, diligent, stupid, and lazy officers. Usually two characteristics are combined. Some are clever and diligent -- their place is the General Staff. The next lot are stupid and lazy -- they make up 90 percent of every army and are suited to routine duties. Anyone who is both clever and lazy is qualified for the highest leadership duties, because he possesses the intellectual clarity and the composure necessary for difficult decisions. One must beware of anyone who is stupid and diligent -- he must not be entrusted with any responsibility because he will always cause only mischief.
“””
I agree. I’m also not a fan of doing `sizeof(typename)` as it can hide intent
I agree anything is better than a magic number, but really only if the variable is properly descriptive.

What are we saying 'yes' to?
From your description, commercial real estate sounds like a bubble waiting to burst, in that vacant properties exist to prevent the mortgage from going underwater to protect the property owners.
Probably the arrogance to write about his "mistake" without actually learning the core reason for the failure. The author starts out owning it, but then shifts the focus to "we" and other things like execution.

In the end I think once KISSmetrics became a hit, it was hubris that took over and the mistakes followed. That's likely hard to own and admit in a blog post, because you'd basically have to be a different person to write it.

So to me, the "ugh" response makes a lot of sense.
Most interesting to me is that

&(int) {1}

is equivalent to

int one = 1;
&one

How did I not know about this? I'll be using it from now on.
Tbh I'm not a network person, but my naive brain says instead of casting to char* and writing to the buffer, couldn't you just write out individual fields to a buffer so you control every byte? That seems smarter and safer.
>So you want Apple to allow spyware on their phones?

Yes.

>Should Smsrt TV makers be forced to allow any third party app?

Yes.

>What about console makers? Should Nintendo be forced to allow adult oriented games on their platform?

Yes. They do not have to endorse or even promote such games, but they shouldn't be allowed to prohibit such games either.

>Next question. What if this app with the same capabilities - to record the apps and activity used on another phone - was marketed to husbands who suspected their wives were cheating. Would you be okay with that too? Should Apple allow it?

Yes, Apple should allow the app's functionality. The law shouldn't allow such ads or spying on people without their knowledge.

In short, it shouldn't be Apple/Samsung/Nintendo's business what gets run on a device.
> Elements that are not specified are initialized as if they are static objects: arithmetic types are initialized to 0; pointers are initialized to NULL.

That's actually not true. It is the case when initializing arrays, but for structs (and unions) any non-named member has "indeterminate value" (see paragraph 9, section 6.7.8 of ISO/IEC 9899:1999; unchanged in C11 and C18). Well, at least according to the standard - GCC, Clang and MSVC all happen to make it zero, but it's not guaranteed by the C language.

The trick with avoiding a variable when passing an address to a literal value is nice though, I didn't know that. There are some places in my code that could use it ;)
Again, this doesn't mean that the degree is bullshit; it means the degree is grossly overpriced. In reality, almost all degrees are overpriced right now.
So I got through lots of questions, and now it's just saying "Are you thinking of X" endlessly.

I guess it doesn't know the thing I'm thinking of. I guess I win. Sort of.

Do I get a prize?
AFAIK many "hardwire USB power supply" will automatically shut down if input voltage is below certain cut-off value.
If I was an FBI agent tasked with apprehending a suspect and I knew that the suspect had access to firearms and had "predicted" violent insurrection I would likely have taken the same precautions they did.
Auto playing videos? Wtf New York Times? I expect that from a click bait tabloid
They would be betting that by the time they're ready to go to market, the CPUs to support it will exist.
Please explain how you send a struct over the network without UB and leaking the padding.
Sounds a bit like what the Wordflex app does:
https://itunes.apple.com/us/app/wordflex-touch-dictionary/id...
> Having Fun is medicine for your soul. So laugh often, even if there’s nothing to laugh at.

I get jeered for doing this. :(
The article links to https://linkinghub.elsevier.com/retrieve/pii/S09609822183142... which explains how they define radical:

> To typify a spectrum of radical views, we first conducted a separate online survey of 344 US participants (study 1) who completed questionnaires about political issues [4, 19, 20, 21, 22]. We included standard questionnaires about political orientation, voting behavior, attitudes toward specific political issues, intolerance of opposing political attitudes, belief rigidity, and (left- and right-wing) authoritarianism. These questionnaires were selected based on prior models of political radicalism as stemming from a combination of intolerance to others’ viewpoints, dogmatic and rigid beliefs, and authoritarianism, which represents adherence to in-group authorities and conventions, and aggression in relation to deviance from these norms [23, 24, 25]. However, we stress that radicalism is likely to reflect a general cognitive style that transcends the political domain—as exemplified by links between religious fundamentalism and increased dogmatism and authoritarianism [22, 26]—and instead refers to how one’s beliefs are held and acted upon [27].
I feel like you're missing the point (the gcc -O0 was there for a reason) but I updated it. Is this better?
The literal `0` is guaranteed to be the null pointer value when used as a pointer, so by definition

NULL == (void*)0.

But given

void *p = 0;
intptr_t i = 0;

it is not guaranteed that `memcmp(&i, &p, sizeof(p)) == 0`.
Pepsi

Mountain Dew

Lay's potato chips

Gatorade

Diet Pepsi

Tropicana beverages

7 Up (outside U.S.)

Doritos tortilla chips

Lipton teas (PepsiCo/Unilever partnership)

Quaker foods and snacks

Cheetos

Mirinda

Ruffles potato chips

Aquafina bottled water

Pepsi Max

Tostitos tortilla chips

Mist Twst

Fritos corn chips

Walkers potato crisps

This Wikipedia list of Pepsi companies. I do try be aware and do shop based on my feeling. I no longer buy Post cereals after they went all cheap and changed the ingredients. But Post cereals makes more then just cereals. I may not be able to avoid the company entirely but I will do my best to avoid supporting companies I don’t agree with. I am not even sure the farmers are right here because if PepsiCo did engineer the potatoe sure they should be paid. But this looks like the farmers obtained the seeds legally within the laws of their country and now are getting in crap for it. I don’t know who is right IANAL. But I do not think I want a world where plants are controlled. Not sure how this is solved.
OT, sorry, but still desperately trying to fill the CopperheadOS void - what are you running?
> How many files are you talking about?

The numbers won't seem significant by today's standards. In the one case (stored by date), maybe 150 thousand files, each a few megabytes.

> you can copy a single 10 GB file to another drive faster than 1 million files totaling 1 GB

True, but I'll bet you can create (or read) a thousand files with a thousand records each faster than you can insert (or select) a million records into (or from) a SQLite table.
There's full text search, but that only does exact matches. To make it more versatile, take a look at trigrams, which forgives you if you don't spell something exactly right. It breaks everything into three letter segments, and searches with those.

https://www.postgresql.org/docs/current/pgtrgm.html
No, you are not the only one.

The author of that code is trying to make it explicit -- "yes, I want to allow reuse of local addressses". Some will prefer this, some won't.

I personally like the use of the variable, though I think it's not worth getting all bent out of shape about it one way or another. But I guess we all have our pet peeves, and I know I'm guilty of getting all bent out of shape about things that ultimately don't matter much.