skysight-inc/HackerNews huggingface dataset:
I think my complaints are summed up nicely in some of your coauthors' report:

http://www.open-std.org/jtc1/sc22/wg14/www/docs/n1967.htm

(1) runtime constraint handler callbacks are a terrible API.

(2) The additional boilerplate doesn't buy us anything — the user can still specify the wrong size.

(3) The Annex invents a feature out of whole cloth, rather than standardizing existing practices. There are no performant real-world implementations that anyone uses. Microsoft's similar functionality is non-standard.
William McKinley was assassinated 120 years ago and I wouldn't bat an eye about an alternate timeline story involving that. It put Teddy Roosevelt in the office and probably had a massive effect on our current politics.

But as others have pointed out, Gibson was simply trying to salvage his existing manuscript.

But also, I'm blanking on what 2015 event you're referring to. Do you mean 2005 and Katrina?
For anything embedded you have practically no choice but to use C (or assembly). Same goes for a lot of systems programming, e.g. writing Linux drivers.
What market segments are you seeing this in?
His self-promotional patter is so simple and consistent you can train half-convincing markov models on it; clearly he could intellectually understand the problem and tone it down a notch or five if he wanted to.

He doesn't, and IMO that makes him responsible.
can we get compile time constant variables? something cleaner than enums and defines
Is this being served off of a Switch or something? Because it's sure not loading for me.
I've used Terraform quite a bit (though less in the past year), and the things that ended up being the biggest headaches for me were:

1. State quickly gets unwieldy and terraform plans get very slow. I think the official recommendation is to split it up to separate instances using separate state files, but that adds complexity of finding the right seams and sharing any needed data between them.

2. Desperately needs a good way to do singletons. Many modules end up fitting the pattern that you need 1 each of some underlying resources (iam role, iam policy, s3 bucket, kms key, whatever) that could be shared by every instance of the thing you're creating. But you have to decide between keeping the code clear and organized and putting those things in the module next to the resources that rely on them, but then duplicating these things N times unnecessarily (which adds to the problem of bloated, slow state). Or you keep the shared resource outside of the module, which makes the code less clear, bloats the global namespace/tf files and requires passing around even more state variables to the module.

3. Tools for abstractions and structuring the app are lacking in general in other ways. Modules are the only thing you have and they were intended to be standalone for sharing code externally and are clunky when using them only within your own app to organize code. There's no way to import shared constants or even group related variables together into something like structs, so you end up needing to pass around the same handful of individual variables into almost every module and resource you create.

4. Your whole terraform config is only as stable as the worst implemented resources. I think this problem is even worse for smaller, community support-only providers but even within AWS, it's not uncommon to come across bugs in how different services are integrated into terraform. Sometimes useful parameters are missing, or terraform doesn't validate them the same way as AWS itself causing something in your apply to fail halfway through, or things are implemented such that the subsequent tf plan still doesn't show up clean after a successful apply. TF has gotten more stable over time, but there still seems to be an endless long-tail of leaky abstraction type issues like these.

This turned into kind of a long list of gripes, but I'd be very curious to hear from anyone who has used both Pulumi and Terraform in production how Pulumi compares on these painpoints in particular.
America has never embraced bidets. The toilet paper shortage could change that
Hi Nat, will GitHub ever support git diff algorithms other than the default?
I feel like anyone who lived through the 90s could have expected "these kinds of results".

Git is open source and widely supported, which doesn't benefit Microsoft. By causing GitHub-specific features to be an essential part of a "modern" or "industry standard" git workflow, they can capture more marketshare/attention, and cause alternatives to be sidelined. This requires removing all friction to entering the proprietary ecosystem, including purchasing.
This, along with the acquisition of NPM, is the "embrace" part.

The next will be an expansion of GitHub and NPM's featuresets in ways that are only accessible via branded, first party tools (i.e. not git/ssh/yarn). GitHub has already made some inroads there prior to the Microsoft acquisition with of course the ubiquitous PRs as well as GitHub Issues and Actions. I imagine the ability to check out GitHub wikis as git repos will probably eventually go away to further this.

The last part ("extinguish") is turning off support for non-firstparty tools like git-via-ssh, .patch URL support, issue collaboration via email, yarn, et c. By the time they do this, few people will notice, having acclimated to the entirely-proprietary ecosystem they've been incrementally subjected to.

The goal, as always: a Microsoft editor (VS Code or Atom), editing code in a Microsoft language (TypeScript/.NET/whatever), signed off via Microsoft review software (GitHub mobile), publishing to a Microsoft website (GitHub/npm), running CI on a Microsoft VM (GitHub Actions), pushing code to a Microsoft datacenter (Azure).

It's simply a moat to prevent open, unfettered competition in any intersection of the vertical. Any weak spots (such as GitHub signup friction) are to be subsidized as they will yield benefits when later used as a cohesive whole in an anticompetitive fashion.
So you care a lot about this, but not $4/month care?
Is Noom Stonks different from the Turnip Stalkmarket?
>clean up the spec

Would this involve further specification of bitfields?
Feel implementation defined nature of bitfields limits potential
It (almost) always turns out the old guy was right all along
Compact Strings were added in Java 9; https://openjdk.java.net/jeps/254

So they can now be stored as one byte per character.
The fact that they're mirroring Gitlab's offering probably suggests that Gitlab is capturing market share from them. It's probably happening more now, as companies are taking very serious looks at their expenses.
A few years ago I came across this article Pointers Are More Abstract Than You Might Expect In C [1].

I followed the article which attempted to interpret the C standard and come to a conclusion. The conclusion is:

> The takeaway message is that pointer arithmetic is only defined for pointers pointing into array objects or one past the last element. Comparing pointers for equality is defined if both pointers are derived from the same (multidimensional) array object. Thus, if two pointers point to different array objects, then these array objects must be subaggregates of the same multidimensional array object in order to compare them. Otherwise this leads to undefined behavior.

Based on the above, I arrived at the conclusion after reading this that comparing two distinct malloc()'d pointers for equality itself is undefined behaviour since malloc() is likely to return pointers to distinct objects that are not part of a sub-aggregate object.

I know this is incorrect, but I don't know why I'm wrong.

[1]: https://stefansf.de/post/pointers-are-more-abstract-than-you...
It's been waiting for a genius, a visionary, a maverick, ...

Wolfram's narcissism is so extreme it's just comical. When I was really into complexity science and stuff everyone in the field would joke about it, suggesting a drinking game where you take a shot every time Wolfram refers to how he was a gifted child or started studying math in his teens or single-handedly accomplished some amazing feat. The guy toots his own horn like a circus clown.

It's too bad because he actually does have some very interesting ideas and a good skill at explaining things. His narcissism is self-defeating. He needs to just chill out, write like a normal human being, and publish. Maybe he should take up amateur astronomy. Nothing gives perspective more than carefully observing photons older than the human species with your own eyes.

I sometimes recommend A New Kind of Science with a huge caveat. It's a decent compendium of fascinating cellular automata, complexity, and theoretical CS research with some interesting speculation attached, but (1) Wolfram did not invent all this or do all this work himself, and (2) he takes his speculation too far to the point of flirting with crackpottery. If you can read NKS with those caveats in mind, it's worth at least skimming and taking in the interesting bits.
The future world premise was in his previous book - The Peripheral. With the same characters. So I wonder why the article said he created this future world just to "fix" his story's timeline.
Boson particles discovery provides insights for quantum computing
Fortunately we dont live in a country where you online karma is relevant. Yet...
what is the font for the text in the upper left that says "The GitHub Blog"? Looks cool.
So I spend a possibly unreasonable amount of time and page space discussing VLAs in the Effective C book. I understand there are some problems with them, but for what it is worth, I really like the feature, particularly when used in function prototype scope.
I double check the filenames instead, because many of the tools I work with don't have -i flags.
+1

Even the ability to just “login with gmail” for non-enterprise accounts would be huge
We didn’t know that it’s causing excess mortality, at least not from any data I’ve seen. It’s all been COVID related deaths which is pretty meaningless in its own.

This is the important data that shows how bad it really is - albeit not normalised for the reduction in other deaths such as car crashes etc.
Valorant’s Anti Cheat Is a Kernal Level Rootkit
The C standard also allows to use memcpy to do type punning:

If a value is copied into an object having no declared type using memcpy or memmove,
or is copied as an array of character type, then the effective type of the modified
object for that access and for subsequent accesses that do not modify the value is
the effective type of the object from which the value is copied, if it has one

Simply memcpy into a variable (as opposed to dynamically allocated memory).

https://port70.net/~nsz/c/c11/n1570.html#6.5p6
A pair of anti-vaccine activists sparked a FireFauci furor
Curious what the committee members think of the new competitors to C, e.g. Go, Rust, and Zig. Any comments?
There was a link on HN yesterday about how Emacs was a great success for 'malleable software' because despite being less flexible than some other programmable systems, it came with a built-in application that was usable out-of-the-box (i.e., a text editor).

HTTP won big because it had the web -- Mosaic and Netscape. Spreadsheets won big after VisiCalc showed the way.

Where's the app for ActivityPub? I'm not sure I've ever seen "killer protocol, then killer app". It's always "killer app, then extract killer protocol". You need a carrot.
Show HN: Identify prospects and research new markets in Google Chrome
The same guy who told Frost, "Well, if the President did it, it's not illegal."

Clearly, his grip on reality was a long time gone in service to his power-seeking for his constituency.

Even a president can be a data point in Dunning & Kruger's "too stupid to know how stupid they are" category.

Now, we have a mobbed-up slumlord 1000x more stupid and infinitely more amoral. He is a true credit to the GOP's fundamental guiding principles.
How close C Standard Committee works with Linux Kernel Developers? Is Linux Kernel development influence on C standard?
I beg to differ. Most of my colleagues in Austria walk outside to their cars and drive to the office every day just like Americans.

The difference is they eat right and spend their weekend either hiking in the mountains or running or mountain biking or going to the gym.

So no, it's not the driving to work that causes the obesity problem, it's how you take care of yourself the rest of time that makes the difference.
Seems like gcc should be smart enough to reject that mistake nowadays, right?!
You’ve never told (or been) a new employee to step through the code to figure out what isn’t in the docs?

There’s a middle ground that you see with a number of test frameworks, Gulp, SCons and I suspect with Pulumi, where the outer shell of imperative code is in practice declarative, and the inner bits are properly imperative.

Part of the code says why to do something, and the rest says how to do it. For instance I don’t see a huge conceptual difference between disabling or filtering a test, versus not deploying a service because it is running, current, and healthy.
But saml is for integration (SSO).
Github provides 2fa for free.

What enterprise is paying is the convenience, not security itself.
I’ve had good luck (in C++) replacing the underlying memory allocator with one that tracks leaks by allocation type (which is fast enough for production use).

This can be done in C, but the calling code has to spell malloc and free differently.

In debug mode, configuring malloc to poison (and add fences) on allocation and free finds most of the remaining things.

These techniques tend to have much lower runtime overhead than valgrind (2-digit percentages vs 5-10x), so they can be left on throughout testing and partially enabled in production.

They find >90% of the memory bugs that I write (assuming valgrind finds 100%). YMMV.
If we give an inch now, the government will absolutely take a mile later.

From the perspective of the centralized government, it's a race to the bottom with privacy rights and you know what famous racer D. Toretto said about races...

"It doesn't matter if you win by an inch or a mile, winning's winning."
> In the UNIX world, narrow strings are considered UTF-8 by default almost everywhere. Because of that, the author of the file copy utility would not need to care about Unicode

It couldn’t be further from the truth. Unix paths don’t need to be valid UTF-8 and most programs happily pipe the mess through into text that should be valid. (Windows filenames don’t have to be proper UTF-16 either)

Rust is one of the few programming languages that correctly doesn’t treat file paths as strings.
One possible answer is that people had already seen the existence of the page, but were now upvoting it because they already knew it was interesting. For example, I have been reading this for the last couple of hours already because I am subscribed to Wolfram's RSS feed.
New Stealth Magecart Attack Bypasses Payment Services Using Iframes
Banana Pancake
>Drawing up a contract, similar, but here I would certainly mention that you can also consult a professional if needed, like a business consultant or attorney. You can also write a letter contract and communicate well enough that contracts don't matter that much in the end, which is the case for a lot of freelancers, guessing the majority.

Having had to take legal action against multiple clients, I assure you that it really does matter in the end.
Coronavirus Check Is Coming. Your Bank Can Grab It
Thanks for your quick and honest answer.
the compiler is allowed to assume the loop terminates precisely because signed overflow is undefined.

Just to be sure I understand the fine details of this -- what would the impact be if the compiler assumed (correctly) that the loop might not terminate? What optimization would that prevent?
While we have your here, any plans for more fine-grained IAM for GitHub Apps? It's already a lot better than legacy apps, but it's still pretty broad. Ideally every API call/resource could be specified individually in an IAM policy, so we can only request the minimum permissions possible in our GitHub Apps.
SCTP gets closer to it with multi-homing.
Where are there checkout clerk unions blocking self-check out? Not saying it's impossible, but I've lived in WA, CA, VA, DC, TX, and NY, plus 1.5 years in Australia, and going on 6 years in Canada and have consistently seen self check-out everywhere.
I've got a PR opened to implement this but due to S3 CAP limitations, it hasn't been merged. The current state is that it could be merged for non-S3 backends and a DynamoDB type lock could be added for S3 backends. I don't have much interest to keep pushing it forward (its been nearly a year of "ill get back to you next week") although their new VP has been more responsive.

Alternately I was considering just implementing the server API to do state storage & locking, but we have implemented some workarounds that are good enough for now.
SAML (and 2FA to a lesser extent) comes with some serious support burdens on the companies offering it. There's a long tail of more or less broken SAML implementations on both the service and identity provider sides, provisioning issues, configuration issues, "Sally can't login on Tuesdays" issues, duplicated slightly-inconsistent data in IdP and Service side records issues...

If you as a SaaS provider outsource your SAML integration to a third party provider like Okta or Auth0, the auth provider pricing is immediately on a "call us" tier, with a per-federation pricing in the low four figures for each company connecting via SAML. Let me just state that again, to have company X connect to my SaaS via SAML, I as the SaaS provider have to pay my auth provider $X,000 per year for the privilege, not counting the base enterprise tier pricing for the auth.
>> The real story here, and probably of this decade, is the corruption and subversion of Western institutions by the Chinese government.

...with the full cooperation of western corporations.
There are external services that integrate with Github but not Gitlab. (though more and more are also adding Gitlab integration)
Hyperbole is when you use obvious, extreme exaggerations. Going one unit past "completely plausible" is a confused, weak use of the technique.

For example, I wouldn't call it hyperbole (or effective writing) if you referred to an interest rate of 45% as 55% "to emphasize how big it is".
How does a company go backwards?
I have found that the best way to use terraform is to let it be declarative and generate what you need as json (from some api or tooling).

Much less issues this way, and the json is actually what will happen with resources at a given provider. Once you start to use imperative stuff you lose a bit of predictability - your entire configuration is no longer declared, it just kinda looks that way.
Still not done reading, but in this representation, particles are stable shapes in the successive steps of the hypergraph (e.g. like gliders and other stable shapes in Game of Life).
Amazing - thank you!
Why would protected branches go away?
He… already knows this. https://www.stephenwolfram.com/publications/academic/
"Master Class" in HCI? This is a farce. View this on any mobile device and you realize that it breaks all rules of HCI.
I've long refused to see the movie (1984) until I read the book. The book is on that long "someday I'll get to it" list. Guess I'll start it this weekend... finally after decades of lying to myself that I'll "get around to it someday,...soon" ~ "soon" is finally here!
Coursera and Edx courses. IBS Univ, Rice
Wow this is one of the very few websites I've seen in recent years that makes good use of the huge horizontal screen estate on modern displays. Love it!
Another example is Alphabet: https://abc.xyz/

Almost all the content is intended for investors, and that's behind the link at the top right.
On a similar note, Norton.
I thought it would be best to standardize just a single thread, which should be the basic unit to be embedded in a good parallel-processing model. However, others prevailed.
> Those tests tend to be the most brittle

While true, it's far more likely that they will help you during a refactor. If you use TDD and have a test for every function, you will more often than not throw entire functions and their tests away. A million tests that test immutable functions are all useless. But tests that fall in between TDD style test-per-function and integration tests, tend to be re-used post refactor, and give certainty that the refactor worked as expected.
> Explain just how malloc() and free() work under the covers and the implications for multi-threading, memory leaks, virtual memory paging, etc.
>
> Maybe also cover some means, algorithms, and code for reporting on the state, status, etc. of the memory use by malloc() and free().

Strictly speaking, these are implementation details that the C standard leaves unspecified. If you want to know how the memory allocation functions work or methods for inspecting the state of the heap you'll need to look at a specific implementation (e.g., glibc, musl, jemalloc, etc.) since the details can vary wildly between implementations.

> Cover in overwhelmingly fine detail the "stack" and the chuckhole in the road, stack overflow.

Both these are not really specific to C, and there should be a lot of resources you can find that explain these concepts ([0], [1] for some example general explanations). Did you have more specific questions in mind?

> How can C exploit a processor with 64 bit addressing and main memory in the tens of gigabytes and maybe terabytes?
> How can C support, i.e., exploit, integers and IEEE floating point in 64 and/or 128 bit lengths?

I think pointer/integer sizes are implementation details. C specifies pointer behavior and minimum integer sizes (and optional fixed-width types), but the precise widths are chosen by the implementation. In the case of floating-point, the sizes are specified by IEEE 754 widths.

In other words, you don't really need to do anything special as long as you pick the appropriate types as defined by your implementation.

> For C++, please explain how that works under the covers. E.g., some years ago it appeared the C++ was defined as only a source code pre-processor to C. Is this still the case?

As far as I know no (production-quality?) C++ compiler has been implemented as a source-level preprocessor for basically the entirety of C++'s existence [2]. The very first "compiler" for C++ was Cpre, back when C++ was still the C dialect "C with classes" (around October 1979), and that was indeed a preprocessor. That was replaced by the Cfront front end around 1982-1983, about when "C with classes" started gaining new features and got a new name. Cfront is a proper compiler front end that output C code, and I think from that point on C++ compilers used "standard" compiler tech.

[0]: https://stackoverflow.com/questions/79923/what-and-where-are...
[1]: https://en.wikipedia.org/wiki/Stack_overflow
[2]: http://www.stroustrup.com/hopl2.pdf
If this is true (which I highly suspect it is) I cannot in good conscience ever give another dollar to Upwork, and will actively spread the word of what is happening. To play games with individuals who generally have no safety net, in a time like this, is reprehensible. I'll be following this closely and hope there is a better explanation for this.
On a given platform, the fat pointer type could have an easily defined ABI expressible in C90 declarations (whose ABI is then deducible accordingly).

For instance, complex double numbers can have an ABI which says that they look like struct { double re, im; };
Will Effective C cover the strict aliasing rule and also why the BSD sockets API seems to get away with it (e.g. (sockaddr *) &sockaddr_in)?
We’ll see what happens when the companies say “okay, time to come back to the office” and a lot of their employees say “you know what, how about let’s not?” Maybe some companies will fire all those people or attempt to cut their pay. Maybe some companies will decide to save hundreds of thousands of dollars a year on their downtown SF office.