skysight-inc/HackerNews huggingface dataset:
Thank you :-)

You can also do the following (take out the leading spaces...):

mkdir -p ~/xcls/usr/bin
cat <<EOF > ~/xcls/usr/bin/xcrun
#!/bin/sh
if [ "\$1" = "git" ];
then
shift 1
ls "\$@"
exit \$?
fi

unset DEVELOPER_DIR
shift 1
xcrun "\$@"
exit \$?
EOF
chmod a+x ~/xcls/usr/bin/xcrun

I get the following:

630188s-iMac:~ 5K$ mkdir ~/testrun
630188s-iMac:~ 5K$ touch ~/testrun/testfile
630188s-iMac:~ 5K$ cd ~/testrun
630188s-iMac:testrun 5K$ DEVELOPER_DIR=~/xcls/ git -l
total 0
-rw-r--r-- 1 5K staff 0 8 May 12:03 testfile

As you can see, no need for sudo. :-)
In the state school I went to in the 90s, they were acolytes of the bell curve.

Mastery or not, if your score bumped you out of the curve, you were getting a B.

Friends in Ivy League schools would get As or incompletes.
> Your proposal to store track info in with verbose naming isn't very robust and doesn't solve even the most basic problems that a simple metadata scheme does.

But that's how anyone who is serious about collecting digital music has been ordering it since ages. Sure, I never considered putting track length in the filename as :) (but I can see why), and if I can help it I have them tagged correctly too. But the file/folder structure is how I keep it organised.

There may be better ways to go about this, but it at least needs to be an actual improvement. iTunes is not.

Currently I'm experimenting with a command line tool called 'beets', which from reading its docs, definitely has a philosophy that aligns with mine. Unfortunately I haven't quite figured out how to tell it where to get the metadata from, it defaults to MusicBrainz which seems to have quite a few inaccuracies in their data (spelling of "Kung-Fu", hyphenated or with spaces I don't care really but if you use both spellings on the same album, one of them is wrong). It's got plugins for discogs and figure-out-from-pathname so that's good, but then it still uses MusicBrainz too. All in all it's a bit fiddly, but I can't really imagine a way to do it better, if you want have accuracy, keep control, some assistance with automatic tagging, but without messing up weird edge-cases like the classical albums and bootleg recordings mentioned above (for which 'beets' tries real hard to do the right thing, that being what you decide it to be).
> The easiest way to be sure a code path will run properly is to avoid writing it in the first place.

Agreed. So the app shouldn't contain anything extra not related to it's primary function.

However, handling error conditions reported by the operating trumps the extraneous code rule. But there are many ways to handle an error, including ignoring it if that's the proper thing to do.

Crashing is never the proper thing to do. If the program had simply exited at the very minimum, a restart would have taken a lot less time than a complete reboot of the machine. The software crashed that badly that it required a reboot of the machine.

> Why is nobody questioning the propriety of using an off-the-shelf Windows PC in safety-of-life applications?

They are, in the other threads. But using a better OS for the task wouldn't prevent the coding error the programmer did.

Let's say they chose Linux. A signal goes off or something else happens and their read call fails. Since they expect all their I/O to succeed they crash just like the Windows box.

If they bothered to handle the error and check for EINTR they'd know it was interrupted and not a hardware failure.

My point is, changing operating systems doesn't protect you from poorly coded applications.
"The current implementation uses a tree reduction strategy. e.g. if there are 4 GPUs in the system, 0:1, 2:3 will exchange gradients, then 0:2 (top of the tree) will exchange gradients, 0 will calculate updated model, 0->2, and then 0->1, 2->3."

Nope... This is the stupid way... They should be using ring reductions, handily provided by the NCCL library:

https://github.com/NVIDIA/nccl
Oh shit! I read it as "un".
I understand why you probably don't want to put it up, but boy would it be fun to look at the code you're describing.
JavaScript Promises: Plain and Simple
Ask HN: IPFS, DHTs, torrents, blockchains, oh my: best books/papers to catch up?
Hi, so I've been playing with IPFS / Bitcoin, read the whitepaper, but there's a lot to absorb to fully understand the current landscape of decentralized networking.

What would be your go-to books/papers/talks that can help me catch up?
This is an article by a Microsoft guy who says Microsoft is trying to provide better software by following Apple's footsteps in "owning the vertical" (kernel, compiler toolchain, file formats, ...) and ends by implying that Apple still does better because it owns the silicon, too.

After a few days of Microsoft failures, all I can say is: If this cheap stuff makes an impression on you, buy Apple.
I did not know who Thomas Nagel is so I looked him up and read about his philosophy work.

I'm not deep into philosophy, but to me that backed up the argument of the grandparent: it would certainly make me depressed if this was regarded as very prominent progress in my science discipline. Maybe I missed it, but I did not read anything on the connection between his philosophical theories and reality, using experiments or neuro-scientific analysis as proof.

It seems neuroscience and evolutionary biology give much better insights what things like self-consciousness, morals, subjectivity, spirit really are, and not much has been added to philosophy since what philosophers like Daniel Dennet wrote 20 years ago.
I asked why there wasn't an implementation of Rakudo for CLR* some time ago, one of the reasons given was that JVM has InvokeDynamic aka indy, while CLR does not.

It also has to be said that even their JVM implementation fell behind MoarVM now, so the second and most important reason would be lack of time and manpower.

*Yes, I know about Niecza, not the same.
Restarting quickly into a known state is not crashing. That is handling the error. How much of the program you restart is the question. Restart just a thread is better than restarting the whole program.

But their app crashed. And hard. It required a machine reboot to restart. While it returned the machine to a known state it wasn't quick.

And in medical software, all code paths need to be tested.
More importantly, this crash shows the importance of getting humans, especially young "adults", out from behind the wheel of a 5000 vehicle.
Ah, I stand corrected. I had understood the differences with the girls were insignificant, but it doesn't appear to be.
The main issue isn't the gmail or what not has been breached. It's that lots of users tend to reuse passwords. So...once they know you signed up using foo@gmail.com to service Alpha (and they have that password)..then they start trying all of the common services to see where else foo@gmail.com might have used that password or a slight variant (dropbox, etc.)
It's worth noting that Python uses bytecode just like Java does. Even the original Ruby implementation created an abstract syntax tree instead of interpreting the text directly.

To answer the question in the title, maybe the reason nobody's writing runtimes is that the JVM is just too good? What impact does all the "baggage" have in practice?
I don't mean to be mean, and I assume you mean CS, and I went to a no name school in the south myself, but having worked for 20 years at google, microsoft, amazon, and startups, I don't think of U of Mich as a top school. The easy top list in CS is berkley, cmu, stanford, maybe cal tech. People say their school is this or that, but 2nd and 3rd tier schools just don't matter at all. Maybe for your first job in that state? It's all about what you can do, your capabilities, your experience, and your interview skill too. Is U Mich is the top 20 or something?

I definitely didn't go to a top school, but I am amazed at people who say their school was a top school or almost top school. I am just saying as someone who interviews people every week: your school doesn't matter to me - it is just what you have done in your career, and what you can do now.
Conceptually, it's easy. In practice, it'll drown you in a thousand details, and a lot of those details turn out to be foundational. For example, a slight difference in atomicity guarantees that would be no problem at all to build around from scratch can end up becoming a nightmare to try to port an existing set of runtime expectations on to. Such things tend to subtly but firmly work their way all the way up the stack. JVM's InvokeDynamic is a real-world example of how differences in performance guarantees can also cause surprisingly large differences.

There's obviously nothing impossible about it, since it has been done, it's just that it takes a lot more resources than you might have initially thought to do it well. And I think from an economic perspective, the vast bulk of open source projects and similarly-staffed projects are way better off putting that "lot more resources" into becoming better on their native platform than being not-quite-as-good on a lot more platforms. (I had a lengthy defensive discussion of the differences between commercial and open source resource allocation, which grew to be more than half this post, so let's just pretend I proved that I understand the difference, and I still think this paragraph is true even given those differences.)
> Topics and queues with different segmentation features are much more powerful and fine-grained in control compared to a service that's tied to HTTP transport than, say, a REST or SOAP API.

"than" and beyond is an illogical statement. Like Y is Z than X.
A lot of languages have different implementations targeting different runtimes. For example both Python and Ruby had JVM versions, CLR versions, multiple separate runtimes specifically designed for the language, etc.

What's more rare is a single implementation of a language targeting multiple runtimes. There's Haxe, which has like 10 different targets (and those different targets seem to be the main selling point). Unity uses C# as it's programming language, but also has HTML5 + Javascript export.

The general downside with either of these is that the runtime should actually inform the language design, and vice versa. When you target multiple runtimes, you either have to design the language conservatively such that it only takes advantage of the smalles common subset of features in the runtimes. Or you have to accept that some operations the language nominally supports will be uncomfortable on some of the target runtimes.

As a classic example of the last one, a lot of scripting languages start off with memory management based on reference counting (possibly with some kind of facility for breaking loops automatically). This means that it's very natural for the language to provide deterministic object destruction as soon as the object goes out of scope, and for the library ecosystem to take advantage of that. (Like closing file descriptors when the matching file object goes out of scope). Move to a runtime with a garbage collector, and the finalization becomes non-deterministic. And you either accept the loss of this very convenient feature, you completely cripple the GC based implementation by adding this very expensive extra constraint on top of it, or you allow the two implementations to diverge.
Facebook Alternative with Work  Home Earning Possibilities?
Uh oh. I have a septoplasty + turbinate reduction coming up in a few weeks and my doctor never even mentioned this as a potential side effect...
It's harder to develop features, because you have to get a feature to work in multiple runtimes instead of just one. So the language might be developed at a slower pace. You're also likely to run into bugs where something works for CLR but fails on the JVM (or vice versa). So more energy has to be spent fixing mistakes versus features.

Then there's fracture. Imagine reading that language X is at version 3 for one runtime, but 2.5 for another runtime because "the guy who did the support of runtime B lost interest, and nobody has taken it up again".
> physicians that get this money are now publicly monitored for it.

> Again, these have grown increasingly rare since these are now public numbers subject to scrutiny.

Where can I access this information?
It seems partly related to a wider, ongoing wrestling match between those who want\need to approach things with an "and not or" view point versus those who arrogantly and/or ignorantly insist "something must be one thing and not another".
You can call methods by name in c on Posix systems. dlopen can give you a handle to your own main program from which you can look up symbols.
> No, it's a good thing. It means people that are addicted (by choice or not) don't need to resort to crime or desperation to buy essential medicines.

This seems twisted to me. Okay, so they don't do crime, but they get their stuff easier and stay addicted/get worse/die. Isn't it best to eliminate the motivation for doctors to overprescribe, but still force people to see their doctors for a fix? This way maybe the doctors can intervene and help them out.
Most children don't have any merit or security unless they do something to earn it as they become adults. They are getting ahead of where they would be if they did nothing.
To answer my own question: the deployment process is nice and easy, but this starts up small Compute Instance VPSs, which are billed. So, running Ruby rather than Python AppEngine apps seems to be much more expensive.
Because if the effects are due to selection bias, and you've been accepted to both Harvard and State School, you should pick State and earn an even higher return.

If it's not selection bias, then you can conclude Harvard causes success and you should go there.
I love electric cars but I totally agree that it's largely true that _most_ electric cars on the market have a range problem (eg cars that are priced in a way that they are _almost_ accessible for the general population).
MSVC CRT Sneaks in Telemetry by Default?
Very few of the mortgages were for financially supportable situations (ie well outside normal rent/buy price ratio) and many were on variable rate loans. It was fairly obvious to savvy real-estate investors let along trained mortgage lenders what would happen.

I saw headlines pre 2007 discussing this. We have whistleblowers testifying that they were actively warning people.

Offer immunity to the first few in trade for testimony..
The HashLife algorithm is pretty neat and easy to understand: http://www.drdobbs.com/jvm/an-algorithm-for-compressing-spac...
I'd love to hear this more nuanced explanation.

You also comment else where about Menzio's picture, where he wears a "Yasser Arafat" scarf. Another commenter has remarks on his hair and beard as well, claiming that the combination of Menzio's dress and hair tripped the alarms of the passenger that reported him. Based on Menzio's portrait, he looks like a bit of a hipster or one of the several colleagues I have that are too lazy to shave on a daily basis. His behaviour was probably best categorised as being rude.

The Washington Post article also says:
"Instead this quick-thinking traveler had Seen Something, and so she had Said Something. That Something she’d seen had been her seatmate’s cryptic notes, scrawled in a script she didn’t recognize."

And

"Menzio showed the authorities his calculations and was allowed to return to his seat, he told me by email."

Clearly these events may not have been reported perfectly accurately, but there is nothing to suggest that any of the actions were reasonable. Also serious question: I also don't understand how one mistakes calculus for the script of a foreign language. In my mind they do not look anything alike.
"Considerable suffering" that can be treated by anti-depressants or anti-anxiety drugs, at least in some cases.
Agreed, I'm not blaming the OS, just saying it's the wrong tool for this sort of job.
While that first part is true, what's important when trying to target someone's vm is how easily that I can use it.

Suppose I want to write a new language that uses Python's vm as the backend.

* What files do I need to copy to get just the vm parts?

* How do I prepare functions and objects for the vm to use?

* What advantages do I get to targeting Python/Ruby/etc's vm?

* Will I be able to embed the vm, or is the vm defined in a way that it depends on global data. Lua, for example, wraps everything into a state object. So if I extend Lua (which, if I recall correctly, Terra does), I can provide the same functionality upward. But if the vm relies on global data, then I can't provide an embeddable language that extends off of that.
Show HN: Service to redirect to HN thread
Uber to Launch UberX Service in Berlin: Welt Am Sonntag
Because it requires very substantial investment and provides little benefit?
AWK is a language. I always get upset when people call it a program or a tool. In a very BROAD and general sense all languages are also a program or a tool but it is first and foremost a language. Perl isn't called a tool or a program 1/100 as much as AWK. Maybe I am just petty?
It's not hard to identify the paragraphs in this piece that an experienced, real news organization wouldn't publish. From the headline to the structure, I'm very uncomfortable with this type of material. When the comments to an article are filled with obvious attention-seeking nutjobs maybe that's a warning sign that you're not doing appropriate journalism, BuzzFeed. This isn't the type of "engagement" that Pulitzer rewards.
Not addictive at all, nor do people already have hacks for it lol
Visualizing Options Premiums and Implied Probabilities
Then why aren't we seeing a similar set of cases for other frequent surgeries that result in such debilitating pain as to drive people to suicide? I'm guessing we could look at appendectomies, gallbladder removals, wisdom tooth extractions, c-sections, etc - where are the similarly acute cases if it's purely anxiety unrelated to the specifics of the surgical procedure?
Reason to build: I've seen few blogs that link to HN as primary forum and think it's great, but AFAIU that forces you to update post after publishing to add HN link. With this you can just link to discuss-on-hn.xyz/go and it will update itself.

Inside it uses HN Algolia API [0] to search and redirect to first item and in-memory hashmap; I'll add rate limiting tomorrow, right now I need some sleep. Also this is my first Common Lisp project ever, that turns out to be quite fun.

[0] https://hn.algolia.com/api
Facebook could definitely go the way of myspace & AOL Instant Messenger! It doesn't have a "wide moat", or "margin of safety" like Google, that's for sure.
> Rust programs, however, won’t leak memory because the compiler makes sure you didn’t write code that could leak memory, and then writes down the parts about freeing memory into the final executable;

A nitpick: Rust doesn't guarantee you won't leak memory, although it makes it much less likely than in C. Leaking memory is actually officially Safe (in the sense of Rust's safe/unsafe division) since it can't cause a program to access not-yet-allocated memory or already-freed memory.
Show HN: Your Gigs Delivered
‘Biggest Loser’ Study Reveals Struggle After Weight Loss
The novel Seveneves brings a similar (actually, far worse) event in a modern environment. Both a fun and nightmarish thought exercise.
Get remote and freelance leads daily. Subscribe to our newsletter monthly.
Indeed.

https://en.m.wikipedia.org/wiki/Timothy_McVeigh
What incentive did your doctor have to "get [you] hooked" on hydrocodone? Why do you think that was your doctor's objective?
Because their primary purpose is for gaming. You can use these for CUDA, but you can't use server GPUs for gaming.
That depends on executables (such as your own main program) and shared libraries (what dlopen() reads) having the same file format. That's a feature of the ELF executable format commonly used on Linux systems, but isn't necessarily true of other executable formats, like MachO (used on OS X).
PyPy is an interesting alternative, since it's not a common language runtime, but a toolkit for building runtimes. Besides Python, other languages for which runtimes have been built using PyPy components (RPython, GC and JIT) are Ruby, PHP, Pixie (a Clojure-like Lisp), Squeak, Prolog and BEAM bytecode.
I wrote a small post that might be partially relevant - https://medium.com/@kashifrazzaqui/will-the-real-micro-servi...
No product manager can plan for such lack of discretion.
Don't understate the "do not do crime". I've known addicts and the biggest damage they cause (apart from dying when they OD on unknown-quality junk) is that they become thieves and liars. No one trusts them and it tears relationships apart. Both are fixed by having more legal availability. If they were simply able to get opiate as easily as pot, then addicts for the most part would be just like potheads. Perhaps being useless, perhaps seen as a drain or whatever, but not dangerous, not bad people like some junkies turn into.

With proper availability, opiates are very well tolerated. Being addicted, by itself, is not a big deal. Apart from the negative pieces you see like this one, opiates are still a huge success for many people. Not just physical pain, but emotional pain, depression, and stress. Keep an eye out for pinned pupils and notice how many professionals have them.

There's this stigma that addiction is inherently bad. Yet it only applies to "fun" drugs like opiates. No one, in general, goes on about the terribleness it is to be addicted to antipsychotics or insulin or antidepressants. At best, you hear how annoying it is, having to always make sure you've got your gear - but I've not seen people go on about the intrinsic badness of addictions lifesaving medications cause.

What should be available is more public health awareness, and a cultural shift. People should be free to get addicted, but easily obtain services to help with it, without being labelled or criminalized. You don't need to rob people of liberty and cause suffering by requiring a paid gatekeeper to watch over everyone.
Varoufakis and this author phrase the argument strangely. The gist is simple: technology will reduce the demand for labor, so we will no longer need to compete in a capitalist society. I think he's right to fear a society in which the elites control all technology, but it's a bit unfounded to fear a Matrix-style dystopia, wrt destructive AI or mind control or some misreading of Baudrillard's simulacra. The fear, in the short-term at least, should be about dealing with the jobs that technology eliminates.

For me, it's about people - when truck drivers are eliminated as a profession by self-driving technology, what will they do? And I'm not sure - we should come up with some way to return those profits/savings from lower labor costs to the people.

I think this article deals with the 'technology v capitalism' question in a better fashion, without delving into robots controlling our minds or whatever other nonsense Yanis meant this time: https://www.jacobinmag.com/2015/03/automation-frase-robots/
For reference: the $1,500 per student raised by the highest fundraising school is 1/10 as much as the approximately $15,000 per student more DCPS spends than FCPS (a neighboring suburb and second richest county in the country).