skysight-inc/HackerNews huggingface dataset:
Please see the code: https://github.com/rust-lang/rust/blob/68650cacf23c60ee2f346...

In edition 2018, migration mode is turned on.

I learned myself about this today btw, after I saw this PR: https://github.com/rust-lang/rust/pull/58342

I think I was mistaken about one point though which is that migration mode is erroring if one of the two errors. IIRC migration mode was introduced that way but it seems to have been changed to be a bit more tolerant than AST borrowck.

Anyways, more NLL fun is to come, and it's to come to both editions.
Brave on Android had the same issue - toggling scripts to off via the brave icon made the site work perfectly.
I’m not sure that discussion of monads is super helpful. It’s not neccessarily wrong, but it doesn’t get to the meat of the matter.

Monads doesn’t represent uncomputable values like sqrt(-1), it’s more like they represent a context, where computations take place.

So you can separate all computations involving IO into the parameterized function type ’Monad a’, where a is your result type
Given the alternatives it is likely to go to, pretty likely.

There’s definitely better things it could be spent on. It’s just that that will never happen. So we pick the best of the worse things.
Betamaxed
My bad. HHV != HPV. I have been misreading the OP article.

I'd delete the above if it was within time limit.
There is a large overlap of mathematical techniques between cond-mat and high energy physics. This has led some to speculate that particles are just excitations in some deeper "condensed matter" substrate.

Overall I find Hossenfelder's attitude to be far too negative. I'm fine with canning the big particle accelerators, but apart from that, there is a huge amount of exciting research going on in physics, theoretical physics (not just high energy stuff!), and mathematics.
The lack of support for standard Linux APIs in the NVIDIA driver, you mean. You're asking compositors to implement this:

if (nvidia proprietary driver) {
/* thousands of lines of code */
} else {
/* thousands of lines of code */
}

We cannot debug the proprietary driver. We cannot fix bugs in the proprietary driver. We cannot read the code to understand it's behavior.

Our answer: "no".
> A lot of people keep saying this about X apps but anything written with GTK will be awful because (from what I understand) it’s just paints everything itself and then uses X11 to actually display what it draws. Plus if you run anything over the network like that GLX doesn’t work.

I don't find that to be true, e.g. I've used pavucontrol (a GTK3 app) over the wifi X11 networking and it worked fine - the very nice thing with X11 networking is that it will use your client DPI for rendering / Xresources / etc... so you can have both lo-dpi and hi-dpi clients connecting to the same machine and it works for both without any configuration.
> It has also been true at any point in the past you care to exam

I figured you would say this, which is why I stressed that we have crossed some kind of threshold. The effect of the internet, cheap electronics, free online resources as well as the fact that we now have 8 billion people in this world all culminate to set the stage for an entirely new era of creativity.

We are living in the New Renaissance. People will be discussing this era in history books for a very long time, like we do the Renaissance now. Why do we focus on the Renaissance and not the period of creation between then and now? Because it marked an unprecedentedly different era of creativity. And here we are again. So your mention of the Renaissance really only strengthens my argument.
Thank you, will do that.
Show HN: Stripe Failed Payment Recovery for SaaS Businesses
The Free and Open Internet
Just a clarifying point from the article: Transmissible != Communicable. Still, it makes me wonder what sort of other spooky “life forms” we can host.
Oh right, seems it got a bit more tolerant. The mode's still called migration mode though, full NLL is to be unleashed later on: https://github.com/rust-lang/rust/issues/57895
>Until Wayland supports X-style remoting of applications, I literally can't use it, so here's hoping X remains an option for a long time to come.

Xwayland supports X forwarding, so your existing forwarding setup will work fine OOTB. What's missing is forwarding native Wayland applications, but if everything you use today works on X11, it'll work on a Wayland compositor via Xwayland too.
This is a terrific line:

“The truth is Dingell’s family should never have asked the Washington Post to publish his last words. Even the Washington Post’s owner Jeff Bezos knew to publish his words that he wanted everyone to read on an open platform like Medium.”
> The spec leaves the system condition undefined [...]. The safe thing to do is assume everything failed

This is key.

Often programmers do 'assumption based programming'.

"Surely the function will do X, it's the only reasonable thing to do, right?". As much it is human, this is bad practice and leads to unreliable systems.

If the spec doesn't say it, don't assume anything about it, and keep asking. To show that this approach is feasible for anyone, here is an example:

Recently I needed to write an fsync-safe application. The question of whether close()+re-open()+fsync() is safe came up. I found it had been asked on StackOverflow (https://stackoverflow.com/questions/37288453/calling-fsync2-...) but received no answers for a year. I put a 100-reputation bounty on it and quickly got a competent reply quoting the spec and summarising:

> It is not 100% clear whether the 'all currently queued I/O operations associated with the file indicated by [the] file descriptor' applies across processes. Conceptually, I think it should, but the wording isn't there in black and white.

With the spec being unclear, I took the question to the kernel developers (https://marc.info/?m=152535098505449), and was immediately pointed at the Postgres fsyncgate results.

So by spending a few hours on not believing what I wished was true, I managed to avoid writing an unsafe system.

Always ask those in the know (specs and people). Never assume.
How do/would you measure the accuracy of the algorithm?
Set your http cache headers correctly to instruct the client to save and re-use pages it downloads.
On the flipside, knowing that a ring is "like a group (which we already covered), with another operation that follows these axioms" is useful, and still mostly rigorous.

It's better than "eh just use it a lot and you'll figure it out."
Not being able to make a keylogger is actually bad thing.

Both X11 and Wayland have poorly designed keyboard events handling (which was defined in XKeyboard spec in 1995). For example, you want to use Ctrl + Shift keys to switch keyboard layouts on release. Simple thing that is working in Windows. You cannot do that in Linux, because:

- if you assign Ctrl + Shift to switch keyboard layout then when these keys are pressed, the event will be consumed and you cannot use combinations like Ctrl + Shift + F (this will be interpreted as Ctrl + F or Shift + F depending on what key you have pressed earlier)

- you cannot make a separate program that would monitor all key presses and releases and switch layout without breaking other programs. In the X server and extensions there is no such feature as "monitoring pressed keys"

The only way to do it reliably is to have a privileged program that would listen to events in /dev/input.

By the way this bug hasn't been fixed for 14 years [1], and instead of fixing it the distributions have been using different hacks and workarounds. Also, they don't warn user that using Ctrl + Shift to switch layout will break hotkeys using these modifiers.

Another issue is remote control programs like VNC. In both X11 and Wayland to emulate user input VNC server muss pass a key number to the X server or Wayland compositor. Not a keysym, not a unicode codepoint, but rather a number of the key on a physical keyboard. Now guess what happens if VNC client's machine has a keyboard layout with characters not present in layout on VNC server's machine? Everything gets broken. Typical solution for this is to find unused key number and patch current keyboard layout before sending a key press event to the X server.

Because of the same reason on-screen keyboards on Linux cannot produce characters not present in keyboard layout. Emoji, for example.

[1] https://bugs.freedesktop.org/show_bug.cgi?id=865
Thieves Mine Catalytic Converters for Metal More Valuable Than Gold
Did I just get downvoted for giving an example where the OS doesn't seem to handle the disconnect of the physical device at all?
Before particle accelerators, we had physicists climbing mountains and pointing photographic film at the skies
> This is false. Wine could be implemented, [...]

Is the information in this bug outdated?

https://bugs.winehq.org/show_bug.cgi?id=42284

> Yes. This is by design, because it's very easy to turn a global hotkey mechanism into a keylogger mechanism. Also it's not clear how hotkey conflicts should be handled.

It doesn't change that this impacts usability, and a lot of software will need significant updates to accommodate these limitations.

> They already work. See xdg-desktop-portal.

As I understand, xdg-desktop-portal is one competing mechanism among several.

> That's how it works. Wayland doesn't have the magical power to make everybody implement a common interface.

I don't understand... by "a common interface", how would that differ in concept from the X11 protocol?
I don't think we disagree, actually.

Yes - from a purely technical point of view, DIO is superior in various ways. It allows tuning to specific I/O patterns, etc.

But it's also quite laborious to get right - not only does it require a fair amount of new code, but AFAIK there is significant variability between platforms and storage devices. I'm not sure the project had enough developer bandwidth back then, or differently - it was more efficient to spend the developer time on other stuff, with better cost/benefit ratio.
My rule of thumb for explaining things to people is "start specific and generalize."

This goes the other direction. Which is sometimes useful, but can be hard to follow unless every step is meticulously explained and its necessity is justified.
Hey PC drones voting this down: your anonymous downvotes do not help to advance your stupid corporate careers, unlike your workspace virtue signaling. Are you the true believers, or just trained like dogs?
Further reading (at a much slower pace):
https://bartoszmilewski.com/2014/10/28/category-theory-for-p...
Has examples in C++ and Haskell.
yea, that was unexpected and made me feel tricked into interrest in the software for a few minuttes
A guide to native ReasonML for Node.js developers
There's no hivemind. Calling an opposing view part of a hivemind implies that people who disagree with you are either following a script or are incapable of agency, self-awareness or independent thought, when they simply hold opinions and values different from your own.

I use HN with showdead on by default, and I sometimes post a userscript for people to uncensor comments and I've complained about the greying out of downvoted comments often ... I understand wanting to read everything and make your own decisions about what's worth reading rather than have others make them for you. However, most of what winds up flagged deserves to be.

Look at the flagged comment at the bottom of this thread, for example. It's just a rant against the "global socialist LEFT." There's nothing there that no one has read before. Even if you agree with the "validity" of the opinion, it's just stereotypical anti-leftist edgelord nonsense.

And now and then, albeit rarely, perfectly legitimate and inoffensive comments do get flagged. I try to vouch them when I can. But even then, I have yet to see anything I'd consider a true jewel in the rough.

There seems to be a trend among people to consider content that goes against the establishment to be inherently more valuable than that which goes with it, as if offensiveness maps to truth. Seek the bottom of the barrel out if you want, but I think it's a mistake to expect enlightenment from it.
It's not the terminal's fault, it's because man lacks semantic markup.
> Best of luck...

thanks. this is my first programming book. about 13 years ago, a good friend turned me onto org-mode (and the emacs contagion, haha!). that kinda got me started on my developer journey. i recognized then that, for myself, i'd have to make a decision about what language to learn first, and it was a tossup between javascript (super popular at the time) and lisp.

i'm primarily a javsacript dev these days, with a few applications in production. as i start getting my feet wet with react & python, it's interesting to learn these two in parallel with lisp (lambdas, anybody?). i like what i sense as the honesty of lisp, it's so much less encumbered with methods, etc... and somehow more inscrutable.

i think i'll really like the data handling capabilities when i get my head wrapped around it, and i'm looking forward to some graph problems down the road. and then there's the passionate part of me that believes in foss/emacs & owning/contributing the entirety of my toolchain, so i'm doubly glad to be working with it in spac/emacs.

for the sibling comments, thanks for the recommendations. i'll probably need to get a couple more books before i really grok it.
So, I'm working on a website/maybe a newsletter while that's under construction. It's focus is on 2d Game Development, and I hope to turn it into an open source compendium or library where the more contributions you make, (and the more you can teach about the language) the more opportunities you get to post articles and scripts. (This is a very brief description but that's the idea.)

Rust is a language I have little to no familiarity with. I would love to learn more about it and talk to people who develop with it. Would you recommend it as something to include as a major platform for 2d game development? Also, is it a "good" engine in your experience?
As far as missing command flags, this explains what to do:
https://github.com/idank/explainshell/issues/1
Wow, this is really interesting! You developed this yourself?
There has to be legislation against these huge companies, who hold so much commercial power.

I had my Adsense account terminated a few years ago and since then I can’t do anything commercial on Google’s platform. My appeal wasn’t heard and I wasn’t given any info on what happened. I expect a competitor did something.

I can’t make YouTube video and add ads, and I can’t add ads to any new website businesses I may want to put online.
... beware the GNUluminati
If prions stick to surgical instruments “like glue” what about needles and lancets? Could this be the link between diabetes and Alzheimer’s?
Related tangent, in hopes it might be helpful to others:

my mneumonic for distinguishing "inductive" vs "deductive" is "PIG":

Particular -> Inductive -> General

See also "infer" vs "deduce".
Wealth concentration returning to ‘levels last seen during the Roaring Twenties'
Well, Wayland has been around for a decade now and is still rarely the default for any given distribution. I think that says a lot about Wayland.
If they want a thank you note they can go volunteer in their free time IMO. I think employers should be paying their employee's wages, not relying on the public to directly pay their salary.
Wow drug research must be really cheap! To judge by the cretinous late-night ads for junk medicine. They can't have cost much to throw together...
what's wrong with virtualenv? I've never had a problem
Ask HN: What are your issues with public speaking?
I'm about to start a public speaking coaching business that would be mostly dedicated to introverts in the tech / science fields, and I would like some suggestions.

As a guy in these fields myself, I have seen many conference presentations and speeches that failed, for several reasons. I know several business opportunities that have been lost after crappy presentations.

So, fellow hackers: what are your biggest issues, regarding public speaking, if any? What do you struggle with? What do you dislike? If you could magically improve anything, whether it's the actual content of your speech, your slides, the way you speak, your posture, I don't know... What would it be? And what do you usually like or hate in the presentations you see?
Show HN: Evolving emoji images
> One problem is for example that a program can not specify the location of a newly created window.

> It is part of their concept that applications should not have control over the window position and similar settings.

> I can understand this for security relevant features, like grabbing the keyboard and mouse input from another window, but not for things like specifying the window position

Seems excessive
I've traversed many budgeting apps and I currently use YNAB. I signed up for the beta program because I'm obsessed with budgeting and love trying new programs, but I would love to see a break down of how you differentiate yourself in this relatively crowded market.
As mentioned by others, you don't actually need a GPU. Weston, the reference compositor implementation, will run in software rendering.
> Multiple clipboards

If it's up to the implementer, and two of the biggest options don't do it, then it might as well not exist.
Nope, we merged with another company with similar product, and we switched the tech again.
Yep, I think it’s an unfortunate side effect of dealing with an onslaught of bug reports, many of which are user error or someone else’s problem. It’s common in any kind of user support, you start seeing the same report over and over.

I even saw something similar when I went to the ER recently. Even doctors will pickup on one thing you say and draw conclusions from that and dismiss everything else.
Ask HN: What’s your laptop?
I’ve never owned a device that is not a Mac. Currently I have a Macbook Air that is getting slower. I was considering buying something else to run Ubuntu or a Surface, mainly to do some Clojure/JS development.

Any suggestions?
It has as much impact on my workflows as Magit does. If you are an Emacs user on Linux, you should give it a try.
PKI for busy people
Power Clash at the Top of SoftBank Puts Son's Vision in Question
It's wonderful for me. I use it to queue up everything I follow so I don't have to manually interact to keep it going. Mine currently has 1 item that I'm keeping there as a quasi-bookmark, but I churn through it pretty regularly.
His videos on you tube are also very informative.
This is tough since I have changed careers three times, but i have found the remote work I do to be highly effective for me. It’s my first software job and I’ve been good about managing my time and delivering successfully.

I don’t get micromanaged but have clear goals that are set forth.

The only problem I’ve faced is occasionally unclear communication with other coworkers; mostly because I’m still getting used to some of the jargon and need to phrase my questions correctly.

Some coworkers use English as a second language too, so that can be a slight barrier; fortunately my experience as a language teacher helps me in that regard.

Overall I’ve been learning a lot and I can see myself working with this company for a few years at least.
/page/4 would probably be more prudent
N-version programming
Here's the rub though, what is the definition of "reasonable"? How about "record" or critically, "interaction"? Does browsing a web page allow them to build a shadow profile under the guise of recording an interaction?

Funny enough, the thing you object to is usually the one thing explicitly spelled out in ToS that they are allowed to do with your information
The Potential Economic Value of a Computing Platform
Same here.

Someone said "Functors are objects with a map method, monads are objects with a flatMap method" and then explained some different type of objects that have these methods and how the work in that specific cases.

After 2-4 cases I saw the principles and rules behind them.
It's open source. You can add support if you so desire. You can even likely get it pushed upstream if what is done makes sense.
Because people want their desktop to look nice like Android with smooth animations and not like Windows 3.1 with grey rectangular windows and buttons.
It’s funny because I tried to hyper optimize my email so I would get less of it, but now I’m going in the opposite direction, largely because of email lists and how terrible websites have become.

I’d much rather get email newsletters than trying to stay on top of RSS, which feels like I’m always drowning. And emails are usually much simpler and no flashing ads, no auto playing video, no unlimited scroll, etc.
Imho we need to be facing up to the implications of quantum mechanics. All of this brain power going into particle physics should be going into the most baffling and fundamental discovery ever made. We need to experiment the f* out of the phenomena and take seriously the implications.
I've had this experience when I've tried to contribute to ASP.NET Core and .NET Core - in the case of ASP.NET Core, they weren't in the slightest bit interested in fixing something that's obviously broken. In the case of .NET Core, it was made clear that adding something new to the encryption library was going to take a long time, possibly years, even though there was demand for it.

I've given up on both :/
Actually, while that might have some truth to it, game developers are very concerned about responsiveness, frame rates, and latency in a way that developers of other modern applications simply aren't, and their products tend to be much more efficient because of it. They could still probably do better in a lot of cases, but they are orders of magnitude better than webapps and electron.
> It's random because pretty much anyone could volunteer that opinion. By diagnosing the problem, making a patch and reaching out the author has already made their intention of fixing the problem clear. Unless it has been established that the problem isn't valid a workaround isn't really relevant.

I'm baffled by this. Even if the fix had been immediately committed, the workaround of using nointr still would have been valuable, because a fixed version of postgres wouldn't immediately have been released.

You seem to argue in a way that entirely counteract your own later comments.
What are the steps to learning category theory? Preferably something with solutions so I can check my work?
> the most baffling and fundamental discovery ever made

...Which is?
An all-time low iPhone upgrade rate is going to cause more pain
I’ve always assumed the vast amount of marketing is the armies of incredibly high paid door to door salesmen who always seem to be visiting your doctor with some new pitch to reward them for prescribing their pet drug.
I'm currently working on a project that's implementing this whole pattern using AWS. 1.) Requests are written to a DynamoDB table 2.) a Lambda subscribes to the Dynamo event stream 3.) each event from the stream causes the Lambda to make an async call to an external system 4.) A message (with a delay) is sent to SQS from the Lambda that the async call has been made 5.) Another Lambda reads from the SQS queue and updates the original DynamoDB record completing the loop.

The delay in the queue simulates a polling interval to the external system and when a successful response is returned from the external system the Dynamo record is updated with a status telling the Lambda subscribing to the event stream that "the loop" is done.

This setup has to run at fairly significant peak loads and we're relying on Amazon to provision resources reliably enough to pull this off. None of us know if this will work but in terms of abstracting away the complexities of async/concurrent processing it's a novel approach.
A catch-all email address + filtering works for me.
As an end user, I hate it, but I see why they do it. Getting your email is the last bit of control they have that cannot be taken by Facebook/Google.