skysight-inc/HackerNews huggingface dataset:
I am not going to dispute the idea that NASA, just like any government enterprise, isn’t as efficient as private enterprise. Just look at what happened with CDC COVID-19 tests as a data point from another domain.

That said, having experience working both with SpaceX and NASA, I can tell you that companies like SpaceX would not exist without NASA’s research and experience. The simplest example of this that comes to mind, again, having worked with both, is NASA’s decades-long work in materials science for space. The cost of acquisition for such knowledge is absolutely incalculable —some of it measured in lives.

The real cost and development timeline of a FH would be dramatically higher and longer without NASA.

A fair question, then, might be: Why can’t NASA use this knowledge to develop products as efficiently as SpaceX then?

In order to answer this question you would have to have access to documentation spanning at least from MCR to CDR in order to understand what we are comparing against. A rocket isn’t just a tube full of fuel and LOX.

I am not defending anyone, just highlighting context I am privy to within the limits of what I can disclose. I can say we are working on a small portion of the Artemis Mission.
> "They are NOT effective in preventing general public from catching #Coronavirus"

This is true. Masks don't protect you from catching COVID-19.

Masks may lower (but not eliminate) spread of virus particles. We don't have any evidence that this reduces infection rate, but it's plausible, at least for droplets.

If the virus spreads mostly by aerosol however, then mandated masks are probably counterproductive, because if the government says "wear masks" the people will hear "wear masks and you'll be fine", because that is what they want to hear.

All you smart rational types out there might not think like that, but I have heard this reasoning first hand from ordinary people. It's a real problem.
no we don’t. fuck off seriously. games are the last place we don’t have to deal with dipshit mods and overly sensitive players. you tell them to fuck off and die and if you’re better at the game than them, you’re right.
Cargo cult - what a great pun!
It's a medal icon like kind of thing
There is a user space thread on the host for each virtual CPU core being offered to the guest. The host OS runs the virtual CPU by scheduling this thread. The host kernel scheduler subdivides the time on the virtual CPU that has been given to it by the host for its threads/processes.
The first four utils were added 7+ years ago: https://github.com/uutils/coreutils/commit/9653ed81a2fbf393f...

This has been developed for a while. You're looking at the official GitHub releases which doesn't mean much. It just means they just started providing official compiled releases. Not all projects even do that at all.

I know a lot of people getting into Rust, including myself, started reading through this repo. This was one of the first good real-world examples of Rust, that I found.
This gihub link may be a better one, as it provides demos, hardware, software, and design descriptions along with the schematics, pictures, and ICRA paper reference: https://github.com/Nate711/StanfordDoggoProject
> This is less "On Rust" and more "On accepting a rewrite of any tool into OpenBSD, on the merits of memory safety alone".

If people wanted memory safety so much, they could have done that years ago with Java
If you ignore that the tooling is proprietary, it is pretty great. Most people can't/won't (myself included), so it's a bit more dubious of a claim under that light.
Julia has done a fair job of mapping high level mathematical primitives to the GPU (though I disagree with their approach)
I'm unsure if "smooth white surface" might not just be a well-defined / focused plasma ball. See my link below for a laser plasma tic tac in a lab setting.

I didn't see the turbulent / frothy part of the video, but could imagine there being reflection creating visual illusions or the heat / microwave emissions of the plasma [2] causing mirage diffraction, mild steam, or even wind effects on the surface - the latter could be caused by oscillating laser patterns used to produce more plasma effects via increasing mass - ie laser plasma lowers localized air mass, but moving around slightly could energize more air mass to produce a far larger effect once energy isn't the gating factor.

[1] Which could be from a 1MW or more laser setup, to my knowledge 60kW is the largest anti-missile laser, but with big multi-diode / multi-optic arrays this would be possible)

[2] https://www.slashgear.com/super-powerful-laser-creates-plasm...
GyShiDo: The art of getting your shit done
Generics in Rust makes this difficult, not to mention the lack of a stable ABI. I would think it's still possible, but I'm not sure just how much easier static linking is over dynamic linking.

There has been work done on using sscache for cross crate build artifact caching to reduce the footprint when building many binaries.
Although, ironically, I can comment on this AskHN... but not the URL I submitted recently.

Is the idea just that you should no longer be able to post a URL with an introductory comment?
>the gatekeeping implied here is really toxic

The words 'gatekeeping' and 'toxic' are toxic.
Modelling domain with state machines in ReasonML
that's `init` in Haskell, and in this case i'd agree with the OP - i'm used to `pop` letting you actually access the last element, so i'd prefer a different name.

also, doing it that way will require traversing the structure twice, something that's often not free with functional data structures, whereas a tuple-pop does it in one go. similar to how you'd rather split a list at an index and get back two lists rather than do a `take n` and `drop n` separately
I agree with every point you made.

A counter-point:

I, and many others, ended up funding puri.sm to actually undertake this project. Which included hiring a bunch of people full time to work on the software on all layers of the stack.

Today we have a much different landscape with pinephone and others working to slowly release phones too.

My take is that we needed this kickstart of the libre-phone movement. They started it, before them there was nothing relevant going on. They obviously didn't do it alone, far from it. But they showed there was real money to be made, they pushed consistently and had actual people do the hard work.

So, even though I have not actually received an actual piece of hardware, I'm still happy I funded their campaign. I may not get a great piece of hardware, but I did get a lot of worth for my money.
Is Go widely used compared to the others as a systems language at this point?

Over the years I’ve gathered that it’s more of a competitor for C# & Java rather than Rust & C(++).
Ever been to IKEA restaurants? If not Google it. Lots of stuff they dish up for you out of massive trays.
> unfortunately, Cargo merges dependencies and devDependencies in a way that’s simply incorrect.

Yeah, I've run into that, but IIRC this got solved super recently/is being solved. Probably https://github.com/rust-lang/cargo/pull/7820 ?
can you elaborate please?
About $30 each on aliexpress. Seems like an ok deal to me.
It starts with his photo...
The rationale is that rust can only give any guarantees at all if the resulting binary is self-contained. A shared library swap can break everything that the compiler guaranteed during compilation. This fits nicely with the generally restrictive mindset of the rust designers.
GNU APL is pretty slow and makes some controversial design decisions. Fun to play with, though, and remarkably polished.
I agree with you up to the point of RPC calls. In general it doesn't matter what specific technology is used, as long as each data source is structured around the use-case and not around backend details like how entity models are actually stored. A lot of these ideas are captured well by Robert Martin ("Uncle Bob") in his book Clean Architecture
Nice! This reminds me of Deluxe Paint on my IBM XT with a monochrome monitor. It's astounding how beautiful 1-bit art can be.

A related tool: Pixilart -- a web based tool for drawing pixel art (favicons, etc.)

https://www.pixilart.com
Option 3: davmail[1] acts as a translator between Microsoft's proprietary protocols and open protocols.

1. http://davmail.sourceforge.net/
Yup. I just finished putting 100 hours into Dark Souls 3. Anyone who says there aren't any quality single-player games anymore just isn't paying attention; video games are better than they've ever been. Just to list a few great single-player games I've enjoyed over the past couple of years:

* XCOM: Enemy Within

* SOMA

* MGS V: The Phantom Pain

* Dark Souls 1 & 3

* Sekiro: Shadows Die Twice

* DOOM (2016)

* Nier: Automata

* Hyper Light Drifter

* Hollow Knight

* The Talos Principle

* The Witcher 3: Wild Hunt

* Wolfenstein: The New Order

* Furi

* Katana Zero

* Zelda: Breath of the Wild

Plus many more; I put significantly more hours into video games than many people (probably to the detriment of my career, lol) and I am barely scratching the surface of what's out there. Times are good for entertainment!
You can find many articles on the origin of the term. I like this one from 1959:

https://www.scientificamerican.com/article/1959-cargo-cults-...
WaifuCraft: Using Waifu2x to upscale minecraft textures
Can you really "cheat" when there is, as you say, nothing at stake and nothing to gain?

What does cheating even mean then?
Totally, that's almost the point, and other groups are now adopting their methods and patterns, which is really the bigger concern
I bought one out of curiosity as to what it might add.

It’s sort of like a management consultant: The bluetooth allows my phone to tell me when I’m brushing my teeth. So I paid big bucks to find out something I already know.
This rule is not just dumb, it is retarded.

I maintain a quite popular open source project, and OpenBSD maintains a fork. They try to submit patches every now and then, but every time it happens, I ask them to please also submit a test that makes CI fail without the patch, and pass with it.

They can't, so OpenBSD remains unsupported.

The problem is that there isn't a supported cross-compilation toolchain from any major platform to OpenBSD (due to this dumb rule), so if they want to compile and run the test, they need to compile a big project under qemu-system and then run the test, which is super slow.

Other targets just cross-compile natively in seconds, and just run the test under qemu-user, which is super fast.

So we break OpenBSD a lot, and they need to put in a lot of effort into maintaining their own fork, which takes them resources away from doing other more useful things. Adding OpenBSD code is pointless, because we can't even test that it compiles, much less works.

This rule of not supporting cross-compilation hurts them more than it helps them, but it's their own fault.
Just FYI. I am using Graze, that uses Razor templates as the backend: https://github.com/mikoskinen/graze
This is not "the rationale" whatsoever.

Stable ABIs are hard, and we have a lot of other work that's a higher priority for our users. There is no ideological opposition to dynamic linking, only practical blockers.
There is gatekeeping here... but it's not implied, it active and out in front. The entire conversation here is whether Rust code is going to be permitted through the gate of the OpenBSD base system. You don't have to parse through implications to find the gatekeeping, it's the topic of the conversation.
> There has been no attempt to move the smallest parts of the ecosystem, to provide replacements for base POSIX utilities.

There was an attempt, that started over 4 years earlier, and if I understand correctly that attempt was pretty far along when this email was written. We can argue over definition, but I'm pretty sure he wouldn't have written this if he was aware of this project.
> the source code was not open back in the days

The Caddy source code has always been open source (Apache 2.0 licensed) from day one all the way to today, and will continue to be in the future.

Beware when using other Let's Encrypt integrations. Caddy will keep your site online when other servers don't. (We saw this recently when Let's Encrypt had a revocation incident and when OCSP responders / other network infrastructure went down. Caddy kept the sites up, where other sites went down or left sysadmins scrambling to renew their certs.)
You can use Thunderbird with a paid add on. It’s well worth it, because evolution is just bad.
That was once, on one distribution, 8 years ago.
Your definition of "decently complete" and Theo's are likely to be waaaaay different... and within your respective contexts, you are both correct.
RE HAMTs that's sort of true. Transients are a real leap forward that the FP community didn't have before (things like Haskell's ST generally require at least one full copy of an immutable data structure into a mutable one). Clojure's choice of dedicated syntax for each of its main data structures is also an interesting ergonomic choice (which sadly few languages have chosen to copy).

However the presence of a commonly available vector-like data structure (a data structure with logarithmic or better cons, snoc, and indexing) is not new. For example Haskell's vector-like Data.Sequence predates Clojure (as does its Patrica Trie and Map implementations).

RE higher-order functions I was being imprecise. I meant user-defined higher order functions. It's very common to use higher order functions, but it's rather uncommon to define your own new ones.

Incidentally, I think Clojure transducers are one instance where they've used a higher order function when a first order function would do.

It turns out that transducers can be implemented as functions of the form `a -> List b` rather than the usual presentation as a higher order function on reducers. Yes even though there's a List it works on non-collection things.
It's French in origin, FYI.
I've been trying to figure this out for decades now. From my teens, I realized that the internet was limitless in how much info it had, but that I was limited in how much I could pack into my brain.

Here are some things I try to keep in mind as I try to learn new things:

* Get enough sleep and nutrition. If you're tired/hungry you're going to feel overwhelmed faster

* Don't rely on motivation, instead rely on discipline. Motivation is great for a burst of energy, but it will eventually leave you. Discipline, on the other hand, is what will make you start and finish that book / online course, etc.

* Track your progress in whatever way is best suited to you. This could be as simple as a check on a calendar or using an app. Personally I like the Jiffy and Habits app on the Android store. Seeing progress helps with both motivation and discipline.

* Learn one thing at a time. It's tempting to spread yourself thin, but sticking to one thing is best.

* Give yourself more time than you think you'll need to learn. In a classroom setting you can raise your hand and ask an expert a question which they can quickly clear up for you. When you're doing self-study you'll find that you may ask the wrong question, interpret things wrong, go down a Google rabbit hole trying to understand related topics, dig through forum answers which may not quite answer your question, and leave you with even more questions.

* Figure out your learning method. Maybe it's video, maybe it's a book. Your preferred learning method may change over time and it may change by topic. Don't be afraid to stop one method and pick up with a new one, or change midway through. For example, when I'm learning a new language I find video courses helpful to get me started, but then once I'm running and past the basics, I find text content easier to digest.

* Personally I get frustrated when learning new things when someone decides to coin a new jargon term. For example a little while back I ran into the term "upsert" to refer to an "update or insert" process. The text I was reading used it like I was supposed to know what it was, but I had never run into it before. These things frustrate me and usually make me feel like I'm way behind in basic knowledge and tend to kill both motivation and discipline. Why not just the extended-term, especially in a course designed for beginners? It causes a weird mental block for me. My solution is to just say "Fuck you, but fine. I accept this as it is". It's a little mental prayer than helps me move past the feeling.
I looked at a random TI headphone amp chip [1] for portable gaming systems. It's tiny (3mm×3mm) and uses CMOS for low power consumption. Internally it has a charge pump to generate the voltages it needs from a wide power supply range. The charge pump also allows the output to be centered around ground so DC blocking capacitors can be omitted. The chip includes click and pop suppression. Inexplicably it is Windows Vista compliant. So audio chips have progressed a lot since this Nintendo chip.

[1] http://www.ti.com/product/TPA6132A2/datasheet
> Developers in particular don't generally care about security, so selling Rust as a "secure" language is not going to be enough.

You do realize that OpenBSD is, by far, the most secure general purpose operating system specifically due to decades of thankless work by people like Theo de Raadt, right?

I don’t think healthy skepticism of Rust is strong enough evidence to conclude that they don’t care about security.
Python's build ecosystem IS sane and well-designed. It's the pinnacle of package handling so far. A separate package manager which works together with a separate build system which still works when a distribution wants to package a python package.

What build systems like cargo seem to think is awesome is probably the most backwards idea of build systems I've ever seen. Static linking and automatic downloading of dependencies. Even the ability to directly pull from a github repo. No wonder almost nothing written in rust ever gets packaged.

Dependencies are hard, following a spec like semver seems to have confused people. Developers are lazy and don't want to think about settling down their API. Solution? Just give up and encourage bad behaviour. Thanks guys. Great solution. I think I'll stick with the previous one.
Try r/covid19
Lua Devirtualizer which deobfuscates Lua obfuscator used by hackers
"Thanks for that anecdote. I was planning on using the lockdown home office situation to finally buy some domain and set up my own email server."

Don't do this. Buy an email with a domain that offers email. e.g. gandi.net or infomaniak.com
They do have phone numbers if things go wrong. Hosting your email is easy. Having you emails delivered and not blocked is an art.
This project was created for intellectual purposes as a way to explore code deobfuscation techniques on Lua scripts obfuscated by Luraph, which is a tool used to obfuscate Lua scripts. This Lua obfuscator has been used by cybercriminals as a way of protecting malicious exploits they sell for Robolox or bots for World of Warcraft. This project may be of interest to game security developers to prevent cheating in their games by discovering how hackers are breaking their code.
> the "Nano Dog" is probably a cheaper and more approachable option for the garage engineer.

Hard to find out much about that or OpenDog in general. I've found videos and 3d printer files but nothing that I can read to understand what it can do and why I might want to build it.

Or do I really have to watch a bunch of YouTube videos? I hate video.

Have I missed the actual project page somehow?
> I wish didn't end up being engrained so deep in the toolchain

For what it's worth, rustc does support dynamic linking, both for system dependencies and crates. You can compile a crate with the type `dylib` to produce a dynamic rust library, that can then be linked against when producing a final binary by passing ` -C prefer-dynamic`.

I don't think it's possible to make this work with cargo currently, but there are a couple open issues about it (albeit without much activity).

And of course, rust not having a stable ABI means the exact same rust compiler (and LLVM version, I suppose) would need to be used when compiling the dynamic libraries and final binary.
Is there any evidence besides movie cliches to indicate there are indeed more hackers in poor countries?
... I am not really sure how to elaborate, to be honest. Rust prevents memory unsafety, but memory leaks are not memory un-safe. There are many kinds of bugs that Rust does not prevent. Leaks are one of them.
I'm asking about the quality of the reason. Is there a real reason to not cross compile in 2020?
Actually you did miss something.

Thinks like `cargo tree | wc -l` or the number of dependencies cargo builds are not appropriate as they count _internal_ dependencies (from the same repo).

Given that it's split into many "sub-crates" in the same workspace this will make the numbers unnatural high.

Or with other words _most_ of the 417 "dependencies" for building the "unix" feature set are internal ones in the same repository. I.e. the project is just split up into many small parts.

Additionally many deps are reused between many internal deps.

Removing duplicate dependencies, dev-dependencies (e.g. testing tools) and build dependencies less then 100 deps are left.

Looking through them many are rust versions a C/C++ libs which are "available per default", like e.g. unix_socket, libc and similar.

Then some are thinks which come from rust deps being split up more, e.g. there are md5, sha1, sha2, sha3 as separate crate.

There are also a bunch of "internal" deps of deps e.g. backtrace-sys.

Anyway still a lot of deps but most are quite reasonable and could be "taken care of" in some way or another if they want to ship a distro based on this.
You can comment on your own submissions, but it seems your submission ~5 minutes before this one got automatically killed, likely because the domain of the link you submitted is blacklisted. (You can ask the mods for more details at hn@ycombinator.com
Of course, and I use ag when I’m searching source code as well.

But ag isn’t a drop in replacement for grep, and when you have tooling that’s depends on that, replacing it simply isn’t a viable option.
Dark Souls 3 isn't even entirely single-player. After I beat the main game, I did a lot of PvP which was honestly more exciting than the main game!
Rapid Money Supply Growth Does Not Cause Inflation (2016)
Every branch of mathematics formalizes and studies some underlying phenomena. For example, in calculus, it's rates of change: their division into instantaneous changes (derivatives) and their accumulation into changes over time or space (integrals). In topology, it's properties like continuity and connectedness.

Of course, all mathematics is abstraction, and all abstractions are leaky. Calculus just chooses not to study non-differentiable and non-integrable functions. Topology chooses not to study discontinuous transformations, and abstracts away the spatial metric.

In category theory, the property under study is compositionality: the property that given a path from A->B, and another from B->C, you have a path A->C. Of course, anyone who's ever written a computer program knows that this is not as guaranteed as it sounds. All abstractions are leaky, and if your "paths" are functions, in the programming sense, then the second one could throw an exception, leaving you high and dry with the intuitive transitive property being straight-up wrong. Likewise, if your "paths" are mathematical functions, composition can preserve continuity (f . g for continuous f and g is continuous), but if either one is discontinuous, the result will fail to be continuous.

So category theory abstracts away the "exceptions" and "discontinuities" by ruling them illegal: in a category of topological spaces and continuous functions, everything, by construction, preserves continuity. We thus have an entire field of mathematics devoted to asking and answering the question: "what sorts of properties are preserved under transitive composition in what sorts of settings?"