skysight-inc/HackerNews huggingface dataset:
The point of being the guy with the largest stick is primarily that everybody has to do what you say. A secondary function that emerges after you do that is to ensure that those with the smaller sticks don't gang up on you and pay you back. My point is that "defend its interest" isn't it, it's "advance its interest". The US wouldn't be where they are today if there was no military on earth, their huge success is based on the military being there to bully other countries to comply with political demands, or to simply regime change if they don't.

That sure might change, and it won't be pretty for US citizens, but it will be great for plenty of countries. Until they get under China's rule, of course.
Evolutionary algorithms are SOTA for continuous control? Never saw a paper claiming that. Which one of them can even compare to soft actor-critic?

I believe gradient descent is the king everywhere interesting right now (e.g. CV, NLP, RL).
Wouldn't it be cool if they released the source code like they've always done? Of course, with Carmack no longer there, I'm just kidding.
I am an Arch Linux laptop user. Plain RDS through Remmina works great for Windows machines. When not usable, I found AnyDesk to work fine-ish (but it changes system keyboard settings, which is annoying). I can't use TeamViewer which still doesn't support Wayland.
Game development is a rapid prototyping adventure that is fuelled by the fact what you are producing is ultimatly a form of art. Architectures are based on abstraction, and abstraction is ultimately mindful ignorance; in this case of specific requirements or specific goals which are going to change because you are creating art. You are going to find out as you continue to develop that technical debt builds because the changing requirements create conflicting workflows which is why you get spam in the header. It's a lot faster to prototype something through duplication, cobbling, or refactoring then later on use automation to remove the chunks of code that are not used and reduce line count by creating utility functions because at that point, part of the project is set in stone and the project is going in one direction. Things will gyrate back and forth between messy and clean, and hopefully you have the budget to refactor to clean before you ship as modders don't like dirty game code.

Games are a simulacrum of reality and reality doesn't say properties of two different objects can never, ever, interact with each other; that's why you have the abuse of global variables to store state and also why there's a rich speedrunning community using all sorts of hacks in games to speed up their playtime due to unforseen edge cases. If you build a model of reality, you're going to be doing R&D learning how it interacts with itself, just like we do today!

Nobody wants to play a game with a static workflow.
The original Sony minidisc separate had unprotected spdif out which might be an alternative for some, I also looked at getting a minidisc data drive but they are hard to find.
So, for the folks that consider this a security issue.

Do you really want the OS to break all your existing connections when you start the VPN?

Do you think this is what most people expect to happen?

I would say that the great majority of VPN users use the VPN to gain access to services behind a firewall, not to disguise their location from the world.

I would guess they'd be pretty annoyed to have a file transfer interrupted that has nothing to do with the resources behind the VPN.

Seems bizarre to call this a "bug"
Cheap antibody test sent for validation in coronavirus fight
> E.g. 99% of all desktop gui programs and 99.9995% of games have a single main window by design - trying to abstract that with an API that simulates that you could have more than one just makes the code harder to read for no benefit

Being able to test UI behaviour is a huge difference maker. (Also even if you do believe that a singleton is ok in this case, it's clearly no different from a global variable).

> as no widget system except beOS' can be used outside the main thread anyways

Which is a problem in itself.
> It's much more manageable to have a game class object, where inside it, what used to be global could now just a private member that's global to that class.

That's still a global, except now it has lipstick.
To the Crux of the matter "Four common coronaviruses are in current circulation and cause millions of cases worldwide. This article compares the incidence and mortality rates of these four common coronaviruses with those of SARS-COV-2 in Organisation for Economic Co-operation and Development countries. It is concluded that the problem of SARS-CoV-2 is probably being overestimated, as 2.6 million people die of respiratory infections each year compared with less than 4000 deaths for SARS-CoV-2 at the time of writing."
The compilers in these aren't really any better compared to GCC though.
That’s really nice! Did you have experience in Haskell before this project?
It's not just validation. A lot of things compilers have to do becomes dramatically simpler with structured control flow and simpler means faster. When you operate on an unstructured CFG you first have to analyze the entire graph to find the dominators, loops etc and then you have to propagate the dataflow information in that order. All these complications go away.

There's been a few other works that realized this, among them the CORTL IR, suggested by Carl McConnell in his Thesis proposal "Tree Based Optimizations" and the IR used in the Oberon compiler by Michael Franz.
Dot Matrix / Thermal Printer Software for Billing – Output Books
> I don't think it's appreciated here on HN because a good chunk of the members have higher education degrees and can't see past their own bias, hence the down-votes and lack of actual responses.

Ding ding ding. I've gotten my share of flak on a couple occasions for working in IT without a degree.

These people looking down on me are probably right that they're smarter than me and more knowledgeable than me and could probably code circles around me. I know I ain't getting a FAANG job any time soon. I know full well that there are gaps in my knowledge that someday I'd be interested in filling once I've got enough saved up to try college again. Doesn't mean I can't be productive, too, nor does it mean I can't teach myself what I need to know to get the job done. Maybe duct-taping systems together with MSSQL sprocs and proprietary programming languages/runtimes and shell scripts and CSVs ain't the most glamorous work compared to playing around with blockchains and neural nets and Jupyter notebooks, but it's work that needs done regardless, and I ain't too proud to do it, even if it's putting grey hairs on my head decades before they've got any business being there.

"Top-down" v. "bottom-up" is definitely a good way of putting it. The code I write ain't pretty, but it's gonna do exactly what I need it to do to solve the user's problem, and chances are it's solving problems for which there are no elegant solutions. It ain't gonna run like a Lamborghini, but that's okay; I just need it to run like a Tacoma.
I’m pretty sure NIST has more engineers than politicians. The same cannot be said of Congress.
Understanding the Covid-19 Recession
Elm style JSON decoder for TypeScript: type safety compile- and run-time
But it does parse and compile latex expressions right?
Was PA Semi in the ARM SoC business?
The ability to earn via affiliates, add more detail and more... Worth looking at rather than just concluding?
Whataboutism, and this is about Zoom (on trend) and related to its other fails.
Also relevant: https://news.ycombinator.com/item?id=22500389
> I have noticed a certain phenomenon where people who are bad at something read books about it to compensate, and then having read books on the subjects start considering themselves experts on it and preach to others, closing the loop from descriptive to prescriptive.

A motivating way to learn is to teach or re-iterate what you know, you learn new things that way. Going overboard or thinking you are a genius on the topic suddenly is annoying but sometimes it is how that person is motivated.

As far as sharing what people know through learning, that they previously didn't know and is interesting and fresh to their mind, that is part of their learning process.

Spaced Learning [1] + Spaced Repetition [2] are very effective learning/memory techniques, revisiting a topic many times over time.

Even commenting on topics you are into or researched on, simply restating them sometimes leads to learning more about it, at a minimum it sets it into your knowledge through repetition or spaced learning.

There is a fun spaced learning game using Spaced Repetition called How To Remember Anything Forever-ish [3].

Really both techniques just pattern-ize already existing techniques how people learn things through repetition and time. It is really just revisiting a topic in intervals that will put it in memory and make it important, which the brain will spend more cycles on, and new ideas and uses for that knowledge come up.

Talking or sharing what you know about what you just learned is part of that unstructured spaced learning/repetition that helps learn. It plays into presentation as well, when you are teaching a topic you start by summarizing, then get to the details, then resurface with the summary while hitting key points multiple times throughout. A teacher or presenter will learn more and more the more they repeat that topic/lesson etc that is impossible to get to on early iterations or draft/sketch phases.

[1] https://en.wikipedia.org/wiki/Spaced_learning

[2] https://en.wikipedia.org/wiki/Spaced_repetition

[3] https://ncase.me/remember/
That is such a fun image! Are any teachers taking note? I think this is a fun metaphor metaphor to use in a classroom setting.
Criminal investigation at Austrian ski resort where hundreds were infected
In principle it could perhaps be enforced by the compiler, but it would be very difficult. Whether something is memory-safe to Sync or Send across threads can depend on things like platform-specific atomic operations, thread-local storage, how panics and stack unwinds proceed, etc. Sounds like a nightmare for the compiler to make guarantees about. Maybe when compiling for a specific version of a specific OS, but to do it at the language level would be an incredible feat, and might make the language unusably complex.
It feels like the project uses "download" and "upload" the wrong way.

Surely transferring files from the disc drive to the pc using a piece of software on the pc should be considered "downloading"?
To me the easiest answer is that they are leveraging FFMPEG which is GPL. If they had embedded it in a mobile or desktop application they would have had to release it as open source.
MicroPython Programming: MakePython ESP32 Color LCD
> Do you really want the OS to break all your existing connections when you start the VPN?

Yes, just like when I connect to WiFi while having LTE enabled and active.
MEAN vs. MERN Stack
Sorry state of apps and privacy despite shameless Apple marketing
Exactly how can a language that's 4x slower than CPython, on the only benchmark posted, be considered "fast"?
If it's a fixed-width encoding, nudge the read size to a multiple of that encoding size.

If it's utf-8, keep the block reads in byte space, search for the terminator as a byte sequence, and only decode after you find the terminator.

Otherwise, throw your hands up in the air and give up?

Catch the UnicodeDecodeError, use err.start, and see if it's close to the end of the block? If it is, then do another read?

BTW, you can mitigate some Python overhead by using a larger read size.
Warm, humid weather could slow coronavirus, new research finds
> What are the stats for old players?

Well, the stats for old players are subject to survivor bias.

> The tiles version has laughably low information density, I can't imagine playing it for any extended period of time.

I cannot speak for DF specifically, because perhaps the tiles do indeed have bad distinguishability, but from purely an HCI point of view images can contain a lot more visual information than a single character glyph + a color can, so that does not hold up generally.

What may apply to you is that you have already learned to "read" the ASCII mode, and therefore have to spend less conscious effort to make sense of it than of the tiles version, and that it therefore is indeed easier for you to play in.
StoryBot: Step-by-Step Agile Planning Poker for Slack
What is an air purifier machine good for?
> Being able to test UI behaviour is a huge difference maker.

obviously UI tests are being run today so this is not really an issue, right ?

> (Also even if you do believe that a singleton is ok in this case, it's clearly no different from a global variable).

yes, that's global state all the same

> Which is a problem in itself.

maybe, does not prevent writing a lot of very useful apps.
Unfortunately, this is one case where being open-source would probably make the scanner easier to game.
I have unlimited data, I'd very much rather the device use everything seamlessly
unsafe doesn't mean dangerous or hazardous. If we cannot verify safety then it's unsafe. The word's choice seems correct to me. I agree with the rest of your comment though.
it was going through vpn in android 4.2 or 4.4 if I'm not mistaken.

But variety of applications can install their cert (with ofc user permission via dialog) and snoop traffic. At least unencrypted.

The way they do it is installing vpn and reading stuff in-between

https://play.google.com/store/apps/details?id=app.greyshirts...
React&Vue UI Library(50)
Nice tutorial. I loved MiniDiscs back in the day, they were so futuristic. I had a portable Aiwa MiniDisc recorder long before I could burn CDs. I used it for everything - copying CDs, recording live music, field recordings. Some day, I'll have to rescue all that old stuff, so this tutorial is greatly appreciated.
I've got a great use case for horust, or at least a container init process capable of running multiple child processes (kubernetes nodes inside containers).

Consider me interested. Contact me via the email listed in my profile.
> Why is it wrong to be clever and profit from others' stupidity and laziness?

Because it's parasitic and provides no value to society?
The wiki (https://github.com/ArkScript-lang/Ark/wiki/Embedding#creatin...) calls them “plugins” and they’re also called “modules”, which I think is a lot clearer than “FFI”. Essentially it’s a bunch of native functions that are exported with C linkage and compiled into a set of shared libraries, which are then loaded and the functions in them looked up at runtime. On the other (C++) side it’s similar to e.g. a JNI binding or any other language where you can pull values out of the runtime.
Top Must-Haves for Your AWS Architecture Checklist
Æternity to Hold Weekly Digital Conferences. First One Starts Today – 4PMCET
Unit tests are perhaps good for instilling a decent sense of function decomposition, but make no mistake, you can go too far in this direction and not develop the sense of an integrated system. It's a hard problem to avoid, especially when starting out. That's one of the reasons I generally find type-driven development better for seeing how parts are actually interacting.

Not to discount, testing, naturally, but I also prefer property based testing to unit for the same reason (i.e. a function can be a mini-system with relationships between internal values that may not be exposed with unit tests.)
> obviously UI tests are being run today so this is not really an issue, right ?

UI tests are notoriously slow, flaky and generally worse than other kinds of tests. They're absolutely a significant pain point in software development today.

> maybe, does not prevent writing a lot of very useful apps.

People write useful code with global state. People wrote useful code with gotos, with no memory safety... that computers are useful does not mean there isn't plenty of room for improvement.
The National Theatre (UK) is going to stream a free play every Thursday night
Seriously. Ryzen embedded would be perfect here. Better GPU and open source drivers.
Oh wow, i am suddenly struck by horrible flashbacks of the hours spent transfering files with Sonic Stage in my teens, and how it would bring my old pc to it's knees purely by running idle :D

Thanks for that little nostalgia trip, i think i need to go dig out my md player now.
When I hear "add tests" it's always a red flag to me. Imho tests are not optional, they are implied, they are a tool to build your stuff (like scaffolding). If tests are added at the end, how would one know the code written before that was correct?

The later tests are added, the less of their value is leveraged.
True experts are often quiet. Conversely, a loudmouth seeks to distract from their lack of knowledge by talking excessively.
Okay, so here are some bugs which bit me in real life and at $WORK, around pthread_key_create + dlopen/dlclose:

1. libgobject (and anything depends on it, i.e. anything GTK) uses pthread_key_create to allocate thread local storage slots, but since threads can't be joined during dlclose(), there are no safe timing when we can call corresponding pthread_key_delete. It leads to bug reports like this: https://gitlab.gnome.org/GNOME/glib/issues/1311, and ultimately, GTK developers said they explicitly does not support dlclose()-ing their library because they can't see how is it possible: https://bugzilla.gnome.org/show_bug.cgi?id=733065. They suggest people dlopen() their library with RTLD_NODELETE, and good luck on those who indirectly depends on libgobject.

2. On Android, libcxx (the C++ runtime lib) does the same thing, it intentionally leaks pthread_key if you unload it. What's worse is the amount of available pthread_key is limited to 100, so after 100 iterations of dlopen()/dlclose() your process would simply crash. And, one of our significant customers insisted our library must pass their "while true dlopen dlclose" test, because hey, this is supported by libc, right? Mind you, Android does not use glibc, it uses bionic.

These two instance make me believe that it is not possible to support true dlclose() because, well, the two most used libc implementation tried and failed.
Depends on your frame of reference.
Industrial programmable logic controller (PLC) programming environments I've worked with also use "upload" for uploading program from PLC to PC and "download" from PC to PLC.

Might be related to the fact that PC is usually placed on top of wiring cabinet, so PC is located upwards from PLC :)
Even if a state of the art machine learning system is going to work 99.999% of the time - with millions of diffs run daily - that's still too many failures.

So basically with diff we had 1 problem, with ML-diff we'll have two.
Building a Todo API in Golang with Kubernetes
Right, but Cordova isn’t PWA.
They surely are, because the overall development experience is much more than the produced executable.
Why Windows 95 and 98 would crash after 49.7 days of uptime
You mean after a decade or so
I remember using them over CDs purely because they had that ghost-in-the-shell anime-scifi feel, although burning a CD was much less pain than converting & writing to my Sony MD player
Banks are cash multipliers. When they receive 1€, they lend 7€. Speaking for EU. The ratio may be higher in the US.

That's why the Fed gets so much, because then it lends to banks, banks lend to businesses and to individuals, usually at a somewhat higher interest rate.
I think... you miss the point.

Usage of unsafe is effectively flagging areas for peer review. You can't build everything in safe Rust - certain things _require_ the use of unsafe. Having it gated, reviewed, and so on is effectively a check on a class of bugs that can be hard to pin down.

IMHO, the community cares way, way too much about the mere sight of an unsafe in a codebase - it borders on religious zealotry. It's just a tool like anything else in the (wonderful) language.
Memory tagging or inner bound checks have no effect on sandboxing. The wasm guarantee is that a module cannot escape it's sandbox, not that it is logically correct.

the security model of the web site based on executing arbitrary code, so you would need to assume that the wasm you receive tagged it's memory in the most malicious way possible anyway.

the way I see it real hardware needs this kind of checks more because they have worse sandboxing
My dad designed and built a ventilator prototype with a bicycle pump
Looks like the gender disparity in mortality is not being taken into account. The excess risk for men is probably double what he estimates.

https://www.theguardian.com/world/2020/mar/26/men-are-much-m...
Ask HN: Usable energy why only electrons
Hello folks,
Is generating electrons the only way to create usable energy( like electricity )

For example nuclear reactors which generate neutrons and heat is in turn via stream or molten salt used to run a turbine and magnet and the routine stuff to generate electricity, cant we just utilise the neutrons?
AFAIK WebAssembly can't do more harm than JS since it lives in the same sandbox, so that's not a concern? You're basically running Flash in a small VM.
>since it's the only IDE which does this anywhere near reliably enough.

Have a look at the Language Server Protocol implementations for java (eclipse jdtls and to a lesser extent boot-ls). Not all the features from IDEA are there, but the gap is closing.
Yeah, Wall knew what he was doing. He didn't try to make it look like a human language, he tried to make it work more like a human language.

Another significant experiment in Perl was embracing the idea that everybody write in their own personal dialect or subset of the language. Again, the conclusion seem to be that this is a really bad idea since someone else will have to maintain the code eventually. But nevertheless it is valuable that the experiment have been tried. Python took some important lessons from that.
"I want to test a (legacy) system but it wasn't designed with testability in mind."

Ugly advice: fall back to manual "unit tests" with a debugger, temporary printf or whatever you have at hand.

Does this eat a lot of time? Yes. Is it grungywork? Yes. Why do it then? Basically to surface the real cost of poor testability.
Also, Flash vulnerabilities were about escaping the execution sandbox of the web, so you should blame bad the implementation/specification of wasm in your case.
South Korean test kit makers swamped as coronavirus cases explode in U.S.
I never understood why vulnerability reporting was a social practice. The reason for that is because I see computer hacking in this particular context (breaking into computers or reversing binaries and cracking them) more or less equivalent to breaking into something physical, be it opening a box or breaking into a home.

But people don't go up to my home and say how they can break in. Nor do people go to companies and say "listen, if I go in here as some repair guy with a walky talky, security will let me right in! And then I switched into an office suit and talked to Janet at accounting, and she gave me your private financials by simply asking her. Train your reception and train Janet."

I understand that you want to keep open source software safe, because everyone is using it. So by helping it to be more secure, that's a win. But why isn't the same happening with companies in a physical sense? The public interacts with them.

Or are there 'vulnerability reports' (or whatever you call them) on those things? Then they're simply not posted here.
This is excellent. Thanks, bookmarked!

Handy to combine with peek (https://github.com/phw/peek) which does a good job of recording gifs.