skysight-inc/HackerNews huggingface dataset:
Oh yes, I forgot to make it clear that `Foo` is a C struct from a C API. There are tens of thousands of such libraries.

An issue with your wrapper is that it is not generic enough and thus must be written for each Foo-like object. That could likely be fixed with more template arguments, but of course there are multiple ways to initialize C objects like

- `fooInitialize(Foo foo); // expects that foo is pre-allocated`

- `fooInitialize(Foo foo); // allocates and sets the Foo pointer. Annoying, but some libraries do this.`

- `Foo fooInitialize(...); // taking certain arguments`

A single `defer` wrapper allows you implement custom destruction behavior for each instance, which is useful if you want to set flags or log errors in the destruction process.
The development of the lung is an evolutionary adaption to life on land. In order to survive on land, the lungs are necessary for most large animals. Its complex structure is partly determined by its integration with the cardiovascular system, which makes it an attractive organ that is difficult to study from a perspective of regenerative medicine. In addition, lung disease is one of the leading causes of death in the world, second only to cardiovascular disease and cancer.

In a new study, researchers from the Perelman School of Medicine at the University of Pennsylvania identified a lung progenitor cell that repairs alveoli (a gas exchange compartment in the lungs). They isolated these progenitor cells from mice and human lungs, described their characteristics, and confirmed that they are essential for lung tissue damage caused by severe flu and other respiratory diseases. Related research results were published online in the Journal of Nature.
This seems similar to Apache Airflow:

https://github.com/apache/incubator-airflow/blob/master/READ...
Morrisey, leader of the research, the a professor of Cell and Developmental Biology and director of the Penn Center for Pulmonary Biology and scientific director of the Institute for Regenerative Medicine, said that, ‘One of the most important parts of understanding lung regeneration is the alveoli, the blood in the lungs that absorbs oxygen and the tiny ticks that exhale carbon dioxide. To better understand these subtle structures, we have been drawing different types of cells in the alveoli. Understanding cell-cell interactions should help us discover new players and molecular pathways that will provide targets for future treatments.

This study explored whether epithelial cells on the alveolar surface have stem cell behavior that may restore normal respiratory function after serious injury caused by influenza infection or in diseases such as chronic obstructive pulmonary disease (COPD). Although some organs, such as the intestine, replace the entire intestinal epithelial wall with the resident stem cells every five days, organs such as the lungs show a very slow replacement and contain stem cells that are only activated when they are damaged to regenerate this damaged tissue.
The Morrisey team identified an alveolar epithelial progenitor (AEP), in which the AEP was shed in larger cell populations known as alveolar type 2 cells (AT2 cells). These cells produce pulmonary surfactant (wetting agent) that prevents the lungs from collapsing with each breath. Dr. Will Zacharias, co-author of the paper and a postdoctoral researcher at Morrisy Labs, said, ‘AEP is a stable cell lineage in the lung that changes slowly, but rapidly proliferates after injury, regenerating the alveolar walls and restoring gas exchange.’

AEPs exhibit their own unique set of genes and contain unique epigenetic markers. The Morrisey laboratory used the genomic information obtained from mouse AEPs to identify a conserved cell surface protein called TM4SF1 and ultilize this protein to separate AEP from human lungs. The Morrisey team then developed a three-dimensional lung organoid by taking advantage of the ability to isolate mouse AEP and human AEP. Mprrisy claimed that, ‘From our organ-like culture system, we were able to confirm that AEP is an evolutionarily conserved alveolar progenitor cell that represents a new target for human lung regeneration strategies.’
I disagree. If anything, hate is a very human action. And the truly opressed know this. By not calling it out, you are actively complicit, giving more power to the oppressor.

How many times does the story need to play out? Didn't we just see the #metoo thing play out? These women are victims of hate. Same story with LGBT and black.

No one is dehumanizing anyone. The word is about human autonomy and dignity.
In the further study, the Morrisey team aimed to study influenza-induced lung tissue injury and other lung disease models to determine where and when AEP responds to acute lung injury or more chronic conditions . Given the severity of the current influenza season, this study provides new insights into human lung regeneration and provides new important genetic and epigenetic pathways for lung regeneration. The Morrisey team is now exploring which of these molecular pathways may contribute to the function of AEP in mice and human lungs, including understanding whether activating Fgf signaling (one of the key pathways conserved in mouse AEP and human AEP) may promote lung regeneration. We will keep updating more related and further information for you.
JavaFX decoupled from Java SE 11
Good point. Uber tried to fix things by a shake up (but I still don't use Uber). Equifax, I would force to pull my data if I could.

Facebook, this kind of stuff is inherent in their business model. Our data is the only obvious thing they can turn into money.
91% of all statistics in marketing documents are pulled from posteriors. I definitely do not want to 'hear' from the companies I do business with unless I specifically ask for it. No better way to lose me as a customer to pester me with 'opportunities' and 'ways to improve my business' that in fact mean more sales for you.
This looks interesting to finally replace the outdated Firefox password manager. It is especially important as it was recently shown that the protection by the "master password" does not meet modern security standards.

But what exactly is "stand-alone" supposed to mean in this context? At the moment it is distributed as a Firefox extension that replaces the Firefox password manager. This seems like the opposite of "stand-alone" to me, as you cannot use it without Firefox.
Ask HN: A way to manage many unique email addresses?
Is there a service or tool(s) that could help me manage many unique email addresses that can all be forwarded to one master address?

My goal would be for any online service I use to have a unique email address, and for me to be able to log into one mailbox to see/manage the email received from these proxy addresses.

The ultimate goal being increased sandboxing of services and PII that may be leaking between them.

Thank you.
LOL. This is the part of the Silicon Valley episode-bar-scene where the fight breaks out.

Thank god OC didn't mention "Just like you move from tabs to spaces."
Certainly is hard to read nested code, but returning earlier makes it harder because now our mind has to construct the execution path instead of reading it. What I usually do is writing the body in a new procedure. Dijkstra designed a language with no return statement with a very simple semantics made for proving the program behaves exactly as its specification mandates. Niklaus Wirth designed Oberon with no return statement. Currently I write Go code only using return at the end of the procedure, my code is easy to follow and I have fewer errors than before https://en.wikipedia.org/wiki/Guarded_Command_Language
https://www.inf.ethz.ch/personal/wirth/ProjectOberon/index.h...
It's worth remembering what happened to Microsoft after it was hit with anti-trust action: https://www.seattletimes.com/business/microsoft/long-antitru...

The stock was literally dead money for decades and the ramifications are clear. The recent selling pressure is driven to an extent by memories of Microsoft and the financial impact. The stock is in no meaningful sense a bargain.
> by adding a SATA SSD (or replacingthe PCI-e blade SSD, but that's much more costly)

I think that's all true. Also note that the external SATA SSD is going to be much slower (500 GB/s) than the internal (1700 GB/s or even higher).

This is one place the drawback of the Apple branded, unibody iMac strategy reveals itself. In a more roomy, user-friendly, conventional box case with standard parts, the consumer has a much more reasonably priced way to increase storage capacity without sacrificing speed or paying two times as much per GB.
Have a look at Password Safe. It has an Android version as well as a Windows version (and Linux I think). The Android version has PasswordSafe Synch, which allows it to automatically synchronise your password vault when hosted on a variety of online storage solutions including Dropbox and Google Drive. Plus the Android version has a custom keyboard for entering user name, password, etc... without having to copy/paste.
I think you're expecting someone to give over an hour of their time then yes.

I've had companies compensate me for interview time before and for me it certainly improves my likelihood to accept an offer. Knowing a company will be respectful of your time is important.
Yes, it's only potentially different on CPUs with non-twos-complement arithmetic, which nobody has made in a long time. I think the last was the PDP-6 in 1963.

I'd prefer to have a C standard that specified everything you can count on in a modern implementation.
Don't forget the human time to debug the code (especially the rare or only-happens-under-load issues, which can be related to resource exhaustion, among other things).

Also, some of your examples (like altering or reviewing code) can become easier and faster if resource management is a first-class citizen in your code base or language (i.e. is either more explicit in the code, and you know to look for it and manage it, or it is somehow taken care of automatically by your language, so you would have a hard time forgetting it, even if it is handled implicitly).
Ah, and not only is it opt-out, you 'opt-in' to at least 5 different email lists all of which you then have to unsubscribe from individually (and if you are lucky the unsubscribe link is present in the mail, and if you are even more lucky it actually works rather than being just another signal to the spammer - sorry, company - that the email address is indeed legit.

And that's before we get into selling your email address to 'partners' who will then really go to town to try to monetize the address.
How to make an ML Armada: Run tens of billions of ML predictions on a budget
I find a compromise is best.

First, do the simple checks "Oh, this function returns an empty set if one of its parameters is null? Do that".

Then go into the main method body. In the main method body, I want to see elses on ifs. I'm okay with putting a return in each branch of the if/else, but what I find bad is when the main body is

```

if(foo)
{
doLotsOfStufff();
return myResult;
}
return bar;

```

That pattern I can't stand. That's as confusing as switch-block fallthrough.

For those cases, I prefer to see an else. If you must fall through to a final return while you've had a zillion other returns in your branching logic, then that deserves a comment at least explaining that this is the final fallthrough return.

Like

```

if(foo)
{
doLotsOfStufff();
if(somePositiveCase)
{
return myResult;
}
if (someOtherNeutralCase)
{
doSomePreparatoryThing();
if (heyMoreChecks)
{
return positiveResult();
}
}
}
// this comment here is super important where we
// explain that we couldn't do any positive thing
// so this is a failure state.

return barFail;

```
All the time, but to be honest, it's mainly side by side when I do. This is useful when building one function that acts on some other part of the code and I don't want to scroll / swap files back and forth.

I more meant it in the sense that it's nice to be able to soak in more of the code at once and avoid unnecessary scrolling.
I'm not the person several comments up who brought up regulations. I don't yet have a strong opinion about what regulations, if any, might be beneficial.

I was merely responding to a comment that I thought didn't accurately portray the harms that social media can cause. Perhaps you could address those points?

> to want to destroy you

That doesn't sound healthy...
> ...and then went back up after everybody realized nothing was going to happen. including last week's drop, it's sitting at 80% of its pre-breach price.

A sustained 20% drop in market share for a very large, very established company that has fairly few competitors, substantial network effects, and a high barrier to entry. That's a significant drop. It didn't wipe out the company, no, but it's a far cry from saying that "the market doesn't remember" - in this case, the market very clearly did remember.
I deleted Uber during that campaign and so did at least a dozen people that I know. I don't know the exact numbers, but I think Lyft's market share roughly doubled within several months.

How did "the market" not notice?
From a market perspective, a split might make FB stock even more attractive. While I'm sure FB can leverage IG data quite effectively by mixing it in with the FB (product) data, I bet investors would salivate at the potential of investing in IG directly. Investing in FB now might result in pre-"IPO" prices for IG.

It might be the case that the sum is greater than the parts, but I don't know if the market would respond to a split from a purely rational stance, at least initially.
ADVANCED SYSTEM REPAIR PRO 1.6.0.0.18 LICENSE KEY FILE
Maybe it was the straw that broke the proverbial camel's back but it doesn't seem to be the deciding factor in that decline.

Like the Roman empire before, the fractured bits of the Mongol empire survived for hundreds of years after.
That's a rather tenuous connection. EX: "Transitory storage" does not count as a copy.

You need to make a copy of a book on the back of your Retna to read it, however nobody calls that copying.

It's easy to argue that playing a DVD is not actually copping the DVD as at no point does a DVD player copy the full DVD. Without a durable copy it's no more copping than the back of your Retna.
Facebook logs text and call histories for Android users
I’m really glad they did this (even better if we could compile and fix our own bugs). I’d love to see the sources of the binaries linked — there’s a lot missing from the C# code (ie. I’d love to see how cloth is implemented and why is it crashing on me so frequently).
Voila, I learned the fact du jour. This makes my day, or my joie de vivre if I may say.

Do I do it right ?
I see no reason to not use the word "hate" in this context. Someone can hate broccoli without implying that broccoli is evil. Someone can say "I hate royalty" without implying that any member of royalty is evil, or that there should be any sort of "punishment" beyond a switch to a republican form of government.

Hatred - a "strong dislike" - does not need to be expressed through fiery emotion. A checklist which says "I will not provide service to someone who is {insert protected class}, followed robotically, is still an expression of hatred.

A computer vision system could be used to implement some sorts of racism, so of course the CV system itself could not be said to "hate" the person. Instead, it's an expression of the hatred embedded in the system.

Someone choosing to follow God's law is expressing the hatred embedded in that belief system. That they might "only" be an instrument of that hatred rather than an instigator does not absolve them.

You wrote "Is it really hate though? Or just people accepting certain social standards and living their lives in accordance."

If those social standard are based in hate, then why shouldn't we say those people are being hateful?

Moreover, if many others from the same society hold different beliefs (e.g., there are Christians for and against gay marriage, and for and against slavery, and for and against tattoos, and for and against women speaking in the church, etc.) then why should we excuse those people who choose a specific interpretation which condones and encourages discrimination?
Fewer Americans rely on TV news; what type they watch varies by who they are
Narcissists and sociopaths dismiss someone's success with "You were lucky".

The appropriate response in those cases is: FU.
I've found VSCode Vim bindings _really_ buggy. Sometimes non-responsive to the escape key until I press it a few times, sometimes it will kill highlighting of code blocks until I switch modes, sometimes enters `<tab>` in the source code instead of tab when I press the tab button. I still use it, because I've used modal editors for so long and I like everything else about VSCode, but the vim bindings are my biggest point of frustration with it.

Sublime's vintage mode is, in my experience, light years better, if not in completeness, at least in stability.
We do have fusion. It's very conveniently located a safe* distance away and blasts us with continuous energy. We just need to get better at collecting and storing it. Instead of engaging in behavior that results in that energy cooking our planet.

* we have a few hundred million years or so to find a new one before it becomes markedly less safe.
I'm a happy user of Bitwarden, but until it undergoes a formal security audit I'd probably recommend Lastpass or 1Password (assuming "non-technical people" means friends/family)
Life experiences and personal growth. Opening yourself up to others (especially interesting others!) and entering their world is about the only way I've seen humans reliably grow and change as individuals.

Something I wish I would have learned and internalized at a much younger age!
If you're connected to an AP via Wifi, can't you ping the router? That would give you a single RTT data point, which you could combine with the non-RTT measurements to enhance the precision. The router is often either the AP itself, or linked to it through a wired connection.

Thinking more about it, you could even use an ARP ping (like the "arping" tool) to try to ping the AP directly, even if it's not the router.
Starvation wages are the norm in the academic world.
> There is nothing to suggest dark UX patterns were at play here

https://techcrunch.com/wp-content/uploads/2018/03/opt-in_scr...

The no button is barely recognizable as button. But the No button is barely recognizable as a button and it and the explanation are gray on white, while the Yes button and misleading title are much more emphasized. And even half the explanation is bullshit like "better experience for everyone". Plenty dark UX in my book.

(Though I assume a lot of people would have agreed to this, even without the dubious UI)
There is an easier method: just append AJAX crawling token to the query string: http://blog.stgolabs.net/2018/03/linux-v415-performance-good...
Thanks for your suggestion. This is a work in progress, and I have to create a more advanced system than only a spreadsheet to improve the list.
The FCC can regulate or ban certain kinds of advertising on the public airwaves, but a dwindling number of people watch terrestrial OTA television exclusively or predominantly. Private networks (cable, satellite, internet) can set their own rules.
It's ironic because it provides a subversion of expectations: the FTC is releasing a statement in which they are trying to demonstrate some sort of power and authority over Facebook, but at the same time using one of Facebook's product, thereby undermining (in a very minor way) their own statement. It's not deeply ironic, but it's definitely an example of irony.

Source: My partner wrote his doctoral dissertation on irony, so I happen to have picked up an appreciation for the subject.
My family has always made jokes about or accused me of being unusually lucky. I didn't really believe that was the case; over time, my standard response to these suggestions is that we can manufacture luck. That wasn't based on any actual research, though, so it's refreshing to see some data back me up.
> not having any exposure to caste societies...

Never heard of America?
The initial implementation was finished in '03, and we revived the project somewhere around '15, so your guess about a research project that was recently taken back up is correct.

We intend to write a "proper compiler" at some point (probably either a Clang fork or a Cforall front-end on LLVM), but it hasn't been a priority for our limited engineering staff yet. I think we are getting a summer student to work on our debugging story (at least in GDB -- setting it up so it knows how to talk to our threading runtime and demangle our names), and improving our debugging capabilities has been a major focus of our pre-beta-release push.
The main difference is scale; giving your sibling a used DVD is just a 1:1 exchange, uploading it to e.g. megaupload can potentially open it to millions of other people.

There are laws about digital resale though; there was an EU ruling that indicated reselling digital-only products is legal.
Correctly handling user data is much cheaper if you bake it in from the start. The real costs are in figuring out how to follow GDPR when you already have private user data saved all over the place and suddenly need to be able to do things like permanently remove all identifiable information for a single user.

It isn't a huge loss if we no longer explore models that require violating privacy protections to get off the ground.
Think of EM as a salesperson. A good one makes a big difference. However, it takes time to develop it into a sales machine. Your best bet at this point is to learn about copywriting basics because that's what EM revolves around.
Nanoparticles of gold may be the answer to storing data for hundreds of years
I read this as "The CTO was late for a meeting, and needed to travel across campus really fast"
I wish this sentiment were expressed more often but also expressed less judgmentally and given more depth than sometimes occurs..

To say it is religion isn't to say "your preference is dumb". In my own code preferences I try to maintain a split between "have a reason I have confidence in" and "personal preference". And "easier to read" is almost always in the latter. (If you can say WHY, that is the actual reason, but your actual reason still has to be provable.)

Given the difficulty of finding good research and the inherent difficulty of the research (if familiarity is a big component to preference, and a proven ability to mentally parse code required to judge, then good luck running a control group) I have a lot of items I have confidence in being provable without having actual proof, but the lengthy preference list also means I'm willing to accept that each of those can switch columns.

Way too many of our "easier to read" defenses are really "it is easier to read because I'm familiar with it. I personally think camelCase is terrible - language has spaces for reasons! - but there is no denying that it is very common and that the vast majority of coders learned it first, an unfortunate self perpetuating cycle.

Nonetheless, shown research that said I was wrong (assuming said research had taken familiarity into account) I would change my stance rather than dig in my heels...even if that change were to only add "but that's just me" to the end of it.
This is one of the reasons why I grew to really love function overloading, especially in combination with pattern matching (I learned both first with Clojure, perhaps, but have only become comfortable with them now with Elixir). I can often avoid if/then statements altogether! It's also interesting how error handling becomes much less of an issue.

I do a lot of javascript programming, and it's often quite frustrating to not have these and other features available. While I by no means hate Javascript, I have to admit I feel a bit silly about being defensive about it in the past. I just didn't know what I was missing, or didn't see what the big deal was.
STD and scabies mostly