Julian Assange decision by UN panel ridiculous, says Hammond - <AUTHOR> http://www.bbc.co.uk/news/uk-35504237 <comment><USER2> I'd appreciate it if someone could make an earnest answer to explain to me how on Earth one could agree with the U.N. panel.

As I understand it:

Assange has been charged in Sweden with rape, on the basis of an alleged victim's complaint. This, I would think, is clearly enough to warrant a criminal investigation and, perhaps, an arrest warrant. I know that some question the veracity of the complaint against him, but that does not change the fact that Sweden has clearly followed its own law in pursuing the complaint, including the arrest warrant. (Remember, there's a different standard for arresting someone than convicting them!)

On the basis of this arrest warrant, he is now subject to arrest in the U.K. for extradition. Again, this is totally normal.

True, there may be questions about whether the Swedish prosecutor could have/should have come to the U.K. to question Assange. But the fact of the matter, legally speaking, is that he is subject to legal arrest in Sweden and, therefore, legally subject to arrest in the U.K. regardless of how the prosecutor chooses to pursue the case. The Swedish prosecutor clearly does not legally _have_ to come to the U.K. to interview him. That's presumably the whole reason that, under Swedish law (and also, more or less, under U.S. law), one can be arrested for questioning. So that a defendant cannot run out the clock on his or her prosecution by dodging the prosecutor.

It is often said that he is doing all this to avoid extradition to the U.S. But: a. This is totally speculative, and not a legal basis for avoiding a duly issued arrest warrant in Sweden. a. That didn't stop him from hanging out in Sweden before his rape charge. b. If he is extradited to the U.S., that too will presumably be in the course of a legal process. There _is_ , after all, a good argument that he committed a U.S. crime.

Again, one may question the merits of the prosecution in Sweden, or the hypothetical charge in the U.S., but that doesn't make what has happened so far "arbitrary."

<comment><USER3> The answer is actually quite simple. Julian Assange has not been charged with rape in Sweden.

He has never been charged with a crime anywhere, yet he was put in solitary confinement, then held under house arrest for a very long time, then he asked for and was granted asylum by Ecuador because of a grand jury investigation against him in the US (and reports of a sealed indictment).

Asylum is an international law which is binding on all parties. Moreover the UK has consistently denied Assange's right to leave the embassy without arrest for medical treatment, and the conditions inside the embassy are not fit for detainment.

Assange is forced to either give up his asylum or his human rights, both of which are inalienable. The UN could not possibly have reached any other conclusion in the matter. International law is binding.

One might also consider three additional facts. Firstly, one of the complainants in Sweden said she had not been raped by Assange and that the police railroaded her. The other has said that she did not want to accuse Assange of anything. Note also that various women's groups have sided with Assange. Knowing the facts on record, they do not believe he committed a crime. Secondly, the case against Assange was closed and he was allowed to leave Sweden. It was reopened later, it is alleged, by a different prosecutor after political interference. Finally, under current UK law, Assange would not be extradited to Sweden because the prosecutor is not judicially independent in Sweden and no charges have been laid. In other words, he would not be subject to arrest and extradition under current law.

I doubt that those three facts played any part in the UN decision which was about his arbitrary detainment and various other violations of international law by the UK and Sweden, not about the case in Sweden itself.

<comment><USER4> Your statement if factually incorrect it contradicts everything that was actually brought up before the UK courts including the UK supreme court.

Assange was placed under curfew he had to surrender his passport while awaiting a decision on extradition to Sweden, that process could also have resulted in Sweden deposing him in a UK court.

He however decided to "flee" to a country which would not mind giving the "west" a political middle finger violating his curfew order under UK law (which is why the British government said they will arrest him, it has nothing to do with his alleged offenses in Sweden).

Like it or not Assange exploited his status to get treatment that no regular individual under the sun could get, normal people can't hide in embassies, they can't get the attention of the global media, and they sure most likely will not get a UN panel hearing (which is a Joke since UN working groups are based on the UN regional groups which mean that you'll have bastions of Human Rights from countries like Senegal, Algeria, Georgia, Iran, Pakistan, Benin etc serving on the panel for "Arbitrary Detention").

UN Panels have for quite some time became a mockery and a kangaroo court as the majority of UN members are as far from being democratic and hold actual human rights value as pretty much possible.

Assange could at any point leave the embassy face the charges as far as UK law goes (violation of his court ordered curfew), face the charges as far as Sweden goes and be on his marry way either to prison or freedom.

There was never actual risk of him being extradited to the US it would never work, and the US could've grabbed him at any time when he was roaming the UK or when he goes back to Australia, for the most part with the exception of the current situation he never really attempted to hide in non-extradition countries and considering that both the UK and Australia are part of the 5-eye's a "less than transparent" extradition or rendition from those countries would've been considerably easier than from Sweden and the US had every chance to try that before which they never have attempted.

I know attacking the US is in fashion but people really don't understand just how different it is in places that actually utterly ignore every human right possible, where every institution is built to ignore them and when these rights are not something that is imprinted on the population from birth.

Democracy doesn't come through a piece of paper or a few institutions democracy comes from the spirit of the people, the US is simply an easy target you never hear about the 1000's gitmo's in Indonesia and you only hear about a blogger being put to death in Saudi Arabia when he got some hook up with the US or a European country, you maybe will hear about some reporter Iran has imprisoned for espionage but you don't hear about the 1000's gay men they hang from construction cranes at the town square each year.

People really need to shift their focus on what actually is wrong with this world but as always the tiny smudge of dog shit on the sole of your shoe is an easier target than the huge crap pile down the street.

<comment><USER5> _Assange was placed under curfew he had to surrender his passport while awaiting a decision on extradition to Sweden, that process could also have resulted in Sweden deposing him in a UK court._

Wait -- _was he_ charged, or wasn't he?

Your response doesn't tell us anything.

<comment><USER4> He was charged in Sweden which issued a European Arrest warrant which he attempted to appeal unsuccessfully in the UK up to and including the supreme court.

He was released on bail within the UK and had to surrender his passport until the time in which the matter would be settled.

Assange was notified of the European arrest warrant by the UK authorities in late 2010, the whole case dragged out for another 2 years before he sought refuge in the Ecuadorian embassy.

The fact of the matter that Assange lost 2 full appeal processes which resulted in the Swedish Supreme court upholding the arrest warrant, and the UK supreme court upholding the extradition under a lawful European arrest warrants. These are 2 European western democracies with a functional legal system which unlike what some people might think here isn't exactly the PR department or a henchman of the US government.

Assange has refused to surrender under a lawful arrest warrant and violated the conditions of his bail these are 2 offenses which will on their own will land you in prison regardless of any other charges. A normal person can't say well fuck it I don't think you should arrest me so screw you after losing an appeal in front of the supreme court, a normal person can't say well fuck it I don't think you should extradite me and I'll just skip bail if you don't mind after losing another appeal process in front of the supreme court.

It doesn't matter what you think about this case, what you think about Assange or WikiLeaks the matter of fact here is that Assange believes he is above the law, and he acted upon his belief by violating laws and seeking refuge in a foreign country without an extradition treaty.

Normal people aren't afforded these luxuries, and if it was some banker or politician who acted in the same manner everyone would been up in arms shouting to get them out of that embassy by force if necessary. And the claims that the Swedish authorities refusing to depose him in that embassy are some how a sign that the case was manufactured are also insane, the authorities should not humor people who piss on the law, it's not up to some one to decide where they will be deposed especially not after they've broken the law again and are now in a position to say what they want without being touchable.

Say Sweden can depose him, try him in absentia and find him guilty what good would it do? he's still tucked away in a place when they can't touch him, and if they do the same and acquit him it it will show that if you have enough money, power or political capital you can do what ever the fuck you want (which is sadly true probably far too many places) and get preferential treatment just because you are a special snowflake.

At this point even if he goes back to Sweden, tried, and acquitted he should face jail he has spat on the entire legal process in 2 fairly respected western democracies and made a mockery of their legal system, the crimes he committed by hiding in the embassy have nothing to do with the crimes he allegedly committed to prior to that, they didn't lead to this situation, his own actions did.

This isn't a Hollywood movie ala the "Fugitive", you can't just decide that the law doesn't apply to you and run away even if it is to prove your so called innocence while committing other crimes in the process, if you think it's fine then we might as well go back to the wild west with a high noon court or even further in time with trial by combat.

<comment><USER5> I know about the arrest warrant -- but my information is that he Swedish system is somewhat different from ours, and that technically speaking, he still hasn't been charged yet:

 _This arrest is for an alleged crime in Sweden as the procedural stage before charging (or "indictment"). Indeed, to those who complain that Assange has not yet been charged, the answer is simple: he cannot actually be charged until he is arrested._

[http://www.newstatesman.com/david-allen- green/2012/08/legal-...](http://www.newstatesman.com/david-allen- green/2012/08/legal-myths-about-assange-extradition)

</comment></comment></comment></comment></comment></comment><comment><USER6> Tangentially related: I'm not sure if anyone else gets this, but I honestly have trouble reading some of these comments without viewing any argument I disagree with as a potential JTRIG operation. (And yes I know someone was criticized yesterday[1] for making similar accusations in the other thread.)

Which is certainly uncharitable towards others' alternative opinions, but how can you honestly not be suspicious at this point? That's why the tactics are so insidious and destructive to civil society: there's really no way to innoculate yourself. Either you potentially let yourself be swayed by a NatSec astroturfing campaign, or let the same sow fear, uncertainty and doubt to where you can't even participate in a political discussion with people of opposing viewpoints.

Would be curious how many others have the same reaction and how they deal with it. Though there's a certain amusing irony that one would have cause for paranoid suspicion of _those_ comments as well.

[1] [https://news.ycombinator.com/item?id=11036249](https://news.ycombinator.com/item?id=11036249)

<comment><USER5> I'd love to think that HN was interesting enough to JTRIG attract it's attention.

Sadly, I tend to doubt that's the case.

<comment><USER6> Why not? Judging from the number of submissions and comments per day, and assuming the 1%/10%/89% approximation for how many people are content creators (submitters) vs contributors (commenters) vs lurkers, I'd estimate the site has tens of thousands of daily visitors. The demographic would also tend to be better educated, politically informed, career tech industry people, rather than your typical "low-information voter" who has no influence or authority in the world whatsoever. That plus the smaller number of users who are actually influential people in infosec or other relevant industries.

I assumed the government spying apparatus must be keeping at least some amount of eyes on this and similar places, even if it's just an intern or two.

<comment><USER5> They're almost certainly monitoring HN (at least algorithmically) to sniff for leaks (inadvertent disclosures from people who might know the various leakers or journalists of interest, or their supporters). And yes, high-signal threads (like this one) might get passed off to a human analyst somewhere.

As to whether they're trying to poison (or otherwise influence) this community in some way? It's certainly possible. But there's also the famous advice from a former government agent (who was once involved with infiltrating domestic radical communities) -- which goes about like this (someone out there might have a better quote):

"My advice? Stop worrying about infiltrators. That is, just _assume_ you're being infiltrated and monitored, and that there's nothing you can do about it. You'll waste an infinite amount of time and energy speculating who the source might be, who to point fingers at -- to the point where you end up poisoning your own community form within. Which is precisely what these monitoring agencies want you to do."

My own view is basically existentialist: if I were ever to get deeply involved in resistance politics -- or even if I'm not, and just casually hanging out with people who are -- sure, almost inevitably I'm going to end up monitored, perhaps even "cased" (i.e. someone might slither up to me at a bar or meeting somewhere, to find out what I know or what I'm about).

But at the end of the day... really, just _fuck all those people_. If they're playing that game, as far as I'm concerned, they've already given up, and are already dead inside, on some level.

And I'm not going to let that stop me for a minute from speaking freely, calling things as I see them, or hanging out with people I consider to be to be basically ethical and well-meaning (though I may sometimes question their approaches), just because of what some agency flack somewhere might be doing with me to pad his quota and make himself look good for his bosses.

But that's just me. You can make your own choices.

<comment><USER7> Well there's an argument to be made that a mistaken analysis as to your "threat level" curtails your personal freedom and has a detrimental impact on your ability to accomplish your goals. Just as the existence of your credit score doesn't impinge upon your fundamental rights as a human, its existence means it can be used to discriminate and that by bringing it into existence you've created opportunities for abuse.

Once it exists and you assume it exists you have to change your behavior in a way that maximizes outcomes for yourself. Its subtle psychological coercion.

At the very least decisions made by non-elected officials in the name of national security need oversight. So even if you yourself are not political, just by surveilling you they have forced you to become political in the sense that now you MUST participate in an issue and debate regarding the value of national security vs. your personal security.

<comment><USER5> Sure, it's nasty and unfair. And we're all being involuntarily politicized.

But we don't have to let it get to us, and upset our inner equilibrium.

</comment></comment></comment></comment></comment></comment><comment><USER8> If I were Assange I would stay there until David Cameron or even the Tories are out. But maybe he is tired of staying there and wants to take his chances on the outside.

<comment><USER9> His rape charges expire in 2020 so he'll leave in 4 years.

Did you know he has 4 children? I didn't know that.

<comment><USER10> The complaints in Sweden were originally due to him refusing to use a condom which would explain the 4 kids from 4 different women. There is somewhere truth in these allegations that Assange plays games with birth control without obtaining consent to not use it, problem is he is almost certainly to be renditioned to the US on a CIA gulf stream if he ends up in Sweden so can't own up to these charges.

<comment><USER11> > There is somewhere truth in these allegations that Assange plays games with > birth control without obtaining consent to not use it

Citation for such a claim?

<comment><USER10> This was the complaint of the two girls in Sweden

<comment><USER12> Perhaps you should read up more on what happened before falsely accusing someone of being a serial rapist?

<comment><USER10> Like the actual police reports I guess [http://www.theguardian.com/media/2010/dec/17/julian- assange-...](http://www.theguardian.com/media/2010/dec/17/julian-assange- sweden)

I realize this is a highly politically charged issue and Assange is a hero to most people (and me) but there is merit to these charges, which will never get cleared up in a court room because of US shenanigans with backdoor rendition hanging like a dark cloud over the whole thing. I can appreciate his work and not his character, just like I can appreciate the Unabomber manifesto argument without endorsing his personal actions.

<comment><USER13> I have personally met one of the Unabomber victims. I saw him before and after. I can't appreciate the Unabomber manifesto at all. When someone's opinions lead them to deliberately maim and kill people, I can't read their opinions without remembering their actions.

</comment></comment></comment></comment></comment></comment></comment></comment><comment><USER14> I love how article titles obfuscate the "is" of equation in that statement. By saying "decision = ridiculous" the only argument someone could have is "is not" to counter it.

The article's first line states it more as a matter of Hammond's opinion:

> The UK foreign secretary _has branded as "ridiculous"_ a UN panel's ruling > that Julian Assange be allowed to go free

<comment><USER15> First up, dropping copulas is pretty common practice in new headlines. There's no loss in information or any obfuscation.

Hammond made a statement, thus the 'says' in the headline. 'Branding' is attaching a label or description (such as 'ridiculous') to something. If somebody were to make the statement 'that car is fantastic', then they would be branding it as fantastic. Both the sentences 'X branded the car as fantastic' and '"the car is fantastic", said X', would be equally valid statement.

I think you're reading into all this far, far too much.

</comment></comment><comment><USER16> Also the feeling you get when reading the BBC article is that he is a guilty rapist wanted for much larger crimes (than rape). The video has a ticker showing the cost to the UK by putting up with him.

Anyone reading this should really notice the bias of this article. It has smear-campaign written all over. One would expect that of course from a FVEY country.</comment>


How to crack any Master Lock combination in eight tries or less - <AUTHOR> http://arstechnica.com/security/2015/04/28/how-to-crack-any-master-lock-combination-in-8-tries-or-less/

<comment><USER2> They need to roll out an update ASAP : )</comment>


Therac-25: When software reliability really does matter - <AUTHOR> http://en.wikipedia.org/wiki/Therac-25 <comment><USER2> The industry learned its lesson. Instead of continuing to use unsafe languages like C, they switched to safe, statically-typed languages. The tiny speed hit that checking memory bounds before accessing arrays required turned out to not be a big deal, and the improved programmer productivity more than made up for the need for slightly-more-expensive hardware. And, of course, the number of lives saved was more valuable than a few extra microseconds of execution time and the larger EEPROM needed to store the smarter runtime.

Oh sorry, that was me daydreaming. Of course nothing has changed, people just "try to be more careful". Since people never make mistakes, even when pressed with tight deadlines, this has worked out fine. Asking the computer to double- check your code is just not necessary.

(Hmm, I think I got that backwards. It's just not my day today, is it...)

<comment><USER3> The Therac-25 was much more of a management and engineering failure than a technical problem, though. While the immediate cause of the deaths was a race condition in the software, it was only capable of causing harm because the hardware safety mechanism had been removed as a cost-saving measure, without proper verification that the software was capable of doing the same job. Worse, it was widely known among the Therac's users that the hardware safety would regularly trip during normal operation without apparent cause, yet the problem was never investigated until after the deaths.

Ultimately, the Therac was a failure of software engineering more than a software failure. I don't blame the technology any more than I would blame a girder for buckling because a careless structural engineer didn't realize it was overloaded.

<comment><USER2> If the software had worked, it would have mattered if the hardware safety was removed. I'm not saying to design without hardware safety mechanisms, of course, but it's nice to know that you'll never need them.

<comment><USER3> The problem is that no one bothered to check whether the software worked when they removed the hardware. It's not a good thing that there was a bug in the first place, but proper procedures could easily have caught it before people were killed. That's why you have multiple systems to prevent catastrophic failures.

What makes the Therac-25 notable is the novelty of a software problem killing people. If it had been a second hardware safety mechanism that had been removed, it wouldn't be as notorious - but the engineering failure would be equivalent.

</comment></comment></comment></comment><comment><USER4> News of these accidents motivated some of our approach on a more recent radiation therapy machine project. Here's a short paper I wrote about it.

<http://staff.washington.edu/jon/cnts/iccr.html>

The software we wrote has been used without incident for more than ten years.

</comment><comment><USER5> Here's the infamous paper by Nancy Leveson: <http://courses.cs.vt.edu/cs3604/lib/Therac_25/Therac_1.html>

(original PDF if you have access to the IEEE: [http://ieeexplore.ieee.org/stamp/stamp.jsp?tp=&arnumber=...](http://ieeexplore.ieee.org/stamp/stamp.jsp?tp=&arnumber=274940))

And an updated PDF: <http://sunnyday.mit.edu/papers/therac.pdf>

It's one of the first paper's read in 6.033 (Computer Systems Engineering) at MIT, which is actually taught by rtm.

</comment><comment><USER6> I agree that good software engineering practices are hugely important. However, there are also supposed to be additional failsafes in the system, namely trained operators and supervisory personnel, many of whom are falling down on the job as well. Even worse, in many cases, the government does not compel public disclosure of accidents, which certainly hinders investigation of recurring failure modes.

For more, see <http://www.nytimes.com/2010/01/27/us/27radiation.html>

</comment><comment><USER7> The Therac-25 is one of the first things Georgia Tech CS students study in our CS Ethics course. If you're interested in more such events see <http://measure.cc.gt.atl.ga.us/classes/cs4001_fall_2009/>

</comment><comment><USER8> These kinds of problems are still occurring:

<http://news.ycombinator.com/item?id=887406> (Oct. 2009)

</comment><comment><USER9> Ho boy, I am due to start radiation treatment next week.

</comment><comment><USER10> That's exactly why you shouldn't employ "good enough" programmers - always try to recruit the best possible. It takes time, but tools like <http://codility.com> might help with the elimination of wrong candidates.

<comment><USER11> Are you connected with Codility in any way?

<comment><USER11> I just took their sample test to see what it was like.

I was disappointed that they disallow the use of external libraries, but then criticise C++ code that is vulnerable to the obvious integer overflow. In a real interview, I would expect a good candidate to indicate that they would pull in a bignum library to avoid this, but there is no way to say that in this sort of test. Likewise, depending on the exact specifications, you might consider using a 64-bit integer type to hold the sum, but that's not portable yet. Presumably, if you're limited to standard C++ (which has no bignum library) and required to pass the overflow test to get a top score, the only way to do this is to reimplement the relevant parts of a bignum type. Of course, that is exactly the _wrong_ thing to do if you have to solve this sort of problem in reality.

It is particularly unfortunate that they would criticise a candidate's code for this, while at the same time making a basic mistake themselves in the specification for the equi function. (If, as the problem states, there may be many elements in the input, then the correct return type for an index into a std::vector<int> would be a std::vector<int>::size_type, not an int. A size_type is always unsigned, so returning -1 in the event of finding no match is a bad idea.)</comment></comment></comment>


Getting compilers right: a reliable foundation for secure software - <AUTHOR> https://www.microsoft.com/en-us/research/blog/getting-compilers-right-secure-software/ <comment><USER2> For C and C++, the cost of proving a compiler correct seems hugely out of proportion to the actual benefit gained from doing so. Most critical security bugs in C++ code are found in code that _the compiler had no obligations whatsoever to compile "properly"_, because they are the result of undefined behavior (use after free, buffer overflows, stray writes, etc.) A perfect, proven-correct C++ compiler would do nothing to protect against any of the famous vulnerabilities you've heard of. Even the famous "null check eliminated by a GCC optimization" Linux kernel bug would be unaffected, as that was a _valid_ optimization per the language definition.

By contrast, I think JavaScript VMs are the target of miscompilation attacks many of orders of magnitude more often than C++ compilers are. They actually have to compile untrusted and hostile code. A miscompilation can be disastrous, and in fact actual browser vulnerabilities have traced back to incorrect JS compilation. So I feel this impressive research might have a more practical impact if applied to JS (or Web Assembly!)

<comment><USER3> If you look at the actual papers [1, 2] they don't mention security even once. I believe the security angle was just a PR spin added to the blog post.

This is a tool for compiler writers to reason about the correctness of optimizations, and as such I believe it is useful to unlock more and more sophisticated optimization techniques. I agree that this has no impact on secure code.

[1] [https://www.cs.utah.edu/~regehr/papers/pldi15.pdf](https://www.cs.utah.edu/~regehr/papers/pldi15.pdf)

[2] [https://www.microsoft.com/en-us/research/wp- content/uploads/...](https://www.microsoft.com/en-us/research/wp- content/uploads/2017/06/undef-pldi17.pdf)

<comment><USER2> Yeah, as a testcase generator that sounds useful to help compiler developers move faster.

</comment></comment></comment><comment><USER4> CompCert, CakeML, Simpl/C, VeLLVM, and SPARK Ada are the related reading for those interested in this sort of thing. The others naturally fit the topic with SPARK being a mature tool for verifying imperative algorithms.</comment>


Ask HN: Is IMDB down now? - <AUTHOR> D'oh!
We're sorry, something went wrong.
Please try again...wait...wait...yep, try reload/refresh now.
But if you are seeing this again, please report it here.
Please explain which page you were at and where on it that you clicked
Thank you! <comment><USER2> Yes, I see the same.

<comment><AUTHOR> Seems to be back up now.</comment></comment>


Linux creator Linus Torvalds shares Millennium Technology Prize - <AUTHOR> http://www.bbc.co.uk/news/technology-18423502 <comment><USER2> That's pretty cool. Remembering back to the old Minix/Linux flame fest I would not have ever predicted it would end up this way.

I'm struck by the fact that these sorts of things are often given to people who have persisted, year after year, in pursuit of singular excellence in a particular topic. I highly respect folks who have that level of grit.

</comment><comment><USER3> I have always been curious whether Linus has made good money for his contributions. This both made me happy that he was given some money and prompted me to find out whether he has made money otherwise.

It looks like he has [1], and thats awesome.

[1] <http://en.wikipedia.org/wiki/Linus_Torvalds#Later_years>

</comment><comment><USER4> "It is estimated that a total of 73,000 man-years have been spent working on the code."

That is such a mind-boggling number that I can scarcely believe it.

<comment><USER5> I guess I'll stop writing my own kernel. There are other things I want to do in the next 73,000 years.

<comment><USER6> The purpose of you writing a kernel is to share a Millennium Technology Prize?

</comment></comment></comment><comment><USER7> I really can't put in words how much I admire Linus!

If you know Linux's history, met the community or if you've tried Linux... it's hard not to fall in love with it.

<comment><USER8> Isn't this really more the windowing environments and the driver support? Gone are the days when it was difficult to get a working UNIX installation, thanks to Linux, but as far as the kernel is concerned, I was happy with Solaris, NetBSD, HP-UX. Some might argue SE was a welcome addition, but for me it's the first thing I disable.

I know there have been a large number of features added to the kernel over the years, and support for new hardware, but those developments have also happened with the other flavors of UNIX.

I guess my point is, did the world really need another flavor of UNIX?

I think I personally have been more impacted by LT for having authored git. Even though I write this on Chrome running on Ubuntu. I'd have been just as happy to have installed any other Unix flavor.

<comment><USER9> I think Linux played an important role in providing a free and Open Source Unix at a time where the BSDs were fighting demons both internal (segregation of their community) and external (with all their lawsuits). Linux was the turning point between Unix being a very expensive commercial product, and a hobbyist tool for the wannabe hacker.

It also, and this may be a personal impression more than an absolute truth, was the Unix to play the most insistent role on the desktop. I, like many, got introduced to Unix through Linux (Ubuntu to be exact - the year was 2006). Sure I fell in love with Unix and quickly moved on to other distros/unices, but at the end of the day, I still believe that I, and a lot of people my age, only discovered Unix because somebody somewhere fought for the desktop, something neither Solaris nor HP-UX deemed "profitable" enough.

<comment><USER8> I was using Unix long before Linux came along, and you're right it was the fork that pushed the most for the desktop. Even though today I am using it as my desktop that's really only because I write server software. I think the main thrust for Unix on the desktop was in fact OS/X, but among us geeks it has been Ubuntu. But that was really my point, it was the distros like RH and Ubuntu that put together something installable with a mostly workable window manager that most people associate with Linux, not the kernel.

While I am very much not taking anything away from the work that Linus has accomplished, my point was that much of the credit for today's Linux installations comes _more_ from RedHat than anything Linux did in the kernel.

There indeed was the BSD wars, but most of the old timers that started their career with a flavor of Unix (for me, it was HP-UX on an HP9000), since then they have all been much of a muchness, varying only in their applicability to a given problem (including suitability to the desktop.)

I am reasonably sure that the number of Linux desktops is very small, nearly every practical use for Linux is running servers. I would wager that OSX dwarfs Linux in terms of unix-on-the-desktop comparisons.

Since history provides no A/B testing capabilities, it's very difficult to isolate the impact Linux has had. Would we today be all using some form of BSD, or maybe Solaris/Intel with ZFS. Who knows, but I am thankful to Linus for a number of things including his efforts to promote OSS.

<comment><USER10> While it is true that OSX very probably accounts for more unix-on-the-desktop than linux, they are two very different desktop audiences.

While OSX is indeed a unix, it hides this so well that unless you know what you're looking for you would never use any of the things that most people mean when they refer to unix.

I write this on a iMac I use for developing iOS applications, but honestly, if I hadn't been using linux since 2006(Ubuntu, gentoo then arch for the past 2 years) I would never have learned the use of the command line(and tools such as find, sed, grep, etc...) just from using the mac.

For me, the switch to linux was mainly because I wanted an alternative to Windows(when I first heard about Vista) and I could definitely not afford a mac(I was a student at the time). I suspect that many a tinkerer/hacker has gone down this path. In fact, most linux users have met have had similar stories, while mac users have mostly been professionals and/or design/hipster- type people. I have not met a single programmer whose main unix learning experience has come from OSX while I've met tons that have learned from linux(and a few from other unices) even if they eventually ended up using OSX in their daily work.

As I said, this is all anecdotal, but I wouldn't be surprised if these trends were more general.

<comment><USER7> You're probably right. I'm a developer and I fit this group.

I've always been amused because it is a "free OS" that's really evolving. Since the my first tries with Red Hat, Mandrake, Connectiva... I never stopped. Used Debian for some time and 4 years ago I really got into Ubuntu, switching all my machines to take full advantage of the client x server environment it provides.

Now I've just switched back to it after a year of OSX on a macbook air. Lion is a great OS, but I just like Ubuntu approach and to be involved with Linux, I can't help it.

</comment></comment></comment></comment></comment></comment><comment><USER11> I don't mean to take away from Linus' achievement, nor to sound like RMS, but every time people refer to "the Linux operating system" it's misappropriating credit. They usually mean GNU/Linux and the kernel is only one piece of that.

EDIT: Disregard this comment, the article has been edited removing references to Linux as an operating system.

<comment><USER9> You seem to imply that GNU userland tools are:

1\. an inherent part of the Operating System.

2\. the only way Linux can be used.

The first point is debatable. In academic circles (where Linus has spent a big part of his career), operating systems usually designate the kernel. In commercial products, the kernel by itself is not very useful, so you'd add a few userland utilities to your definition.

The second point is simply wrong. Busybox is a very widely used alternative to GNU, and Android, arguably the most successful mass consumption Linux system to date, has zero GNU tool.

As much as I appreciate GNU, the FSF and rms, this constant demand for credit is, too often, misplaced and above all, a bunch of misguided rhetoric.

Can't we simply be happy for an engineer who fully deserves the recognition he's getting?

<comment><USER11> I gave GNU as an example of one userland that is commonly conflated with Linux. As you note, there are others. The main point is - Linux is not an operating system and it is misleading and incorrect to refer to it as such.

RMS's shrill remarks about how Linus is "stealing" credit from the FSF are misguided. I try to maintain the distinction between kernel and OS primarily out of a desire to be accurate about how I describe an operating system. Android and Ubuntu are clearly different and describing both as "Linux" is not particularly helpful to anyone.

<comment><USER12> > "Android and Ubuntu are clearly different and describing both as "Linux" is > not particularly helpful to anyone."

except they both run on the Linux kernel, so it is, nevertheless, accurate.

personally, i think it is helpful. there seems to be an ongoing criticism of Linux that it hasn't made much progress as the basis for a desktop operating system. while that may be true, talking about Linux in relation to android helps raise awareness that there's another kernel out there not put out by apple or microsoft that's responsible for running a large percentage of mobile devices on the market.

as apple frequently states, we're now living in the "post pc era". who's to say that the desktop and mobile spaces won't continue to merge, at which point your "not particularly helpful to anyone" use of the word Linux to describe both will become more relevant.

indeed, ubuntu is already trying to push things in this direction. <http://www.ubuntu.com/devices/android>

</comment></comment></comment></comment><comment><USER13> I wonder how the internet would've turned up without Linu(s/x).</comment>


Tilt Five – augmented reality tabletop gaming - <AUTHOR> https://kickstarter.com/projects/tiltfive/holographic-tabletop-gaming <comment><USER2> Tilt5's tabletop augmented realty system is awesome because it works. Multiple users can share and interact with the same virtual/physical space.</comment>


Ask HN: Clojure vs Haskell for a first functional language? - <AUTHOR> Which is more suited for someone who's just trying to learn their first programming language? And why? <comment><USER2> I would strongly back Haskell for this purpose. The reason for this is principally that Haskell is a single install, (whereas Clojure requires the jvm first and then Clojure). Haskell is a single language, Clojure is java with Clojure running on top.

When I started learning to program the greatest joy was code=some result. The greatest misery was installation, configuration and bizzaro error messages. In this regard I think Haskell comes out far far ahead. When I first learned Haskell I remember installing Hugs was simple and the REPL worked immediately.

I think that the number one consideration for a first time programming language is the ease with which you can get working software that does something and gives feedback. Clojure has too many leaky abstractions and is not nearly as simple to get up and running. (Aside, I like Clojure)

I think that what I am reading as an implicit question of "should a programmer be initially exposed to the greatest type system known to man in Haskell or the one-true programming language in Lisp" is taking the wrong approach. We should ask "how can I expose a programmer to the joy of making things using only a brain and a keyboard". I suspect that many of the best Haskell and Lisp hackers we have got started on Visual Basic because it was so accessible.

I would be tempted to say Javascript may be an even better answer. Easy to get started and a browser and a text editor makes for a great IDE.

I apologise if my characterisation of your question was wrong. It's not my intention to be offensive or stir up trouble. Those are two great languages to choose from, if you can capture the mind and imagination of a first time programmer with either of them they will be off to a great start.

<comment><USER2> I read the errata about 'first functional language'. My post is irrelevant then :)

</comment></comment><comment><USER3> I learned scheme first, then haskell, then (now) clojure. I think haskell is best for teaching functional programming because it's purely functional and puts focus on that aspect rather than on performance benefits of being functional. after ~1 year with it, I've decided that haskell, while great, is not for me, and I'm switching over to clojure. Clojure is very nice as a language; what it lacks in terms of a type system it makes up for with the presence of macros.

However, I don't think that clojure is quite as great for _teaching_ functional programming, because it is an eager language unless you explicitly tell it to be lazy exactly where you want it to be, so it doesn't have the performance optimizations that haskell has with recursion (as opposed to tail- call recursion) and it's therefore discouraged to not use tail-call recursion.

Now that's my recommendation for a first _functional_ programming language. For a first language in general, I'd recommend the reverse because with clojure you can actually start doing something practical as soon as you get started, where with haskell it takes a while to get to that point.

But the installation process is different with the two. With clojure, the language is designed around being used with a build system as part of java tradition, which means that you normally can't just type `clj` and get a REPL (at least not with the official distribution). Generally the best way to go about doing that is to install leiningen and make a new project and do `lein repl` in the project directory.

In Haskell on the other hand (with the Haskell platform installer) you can just run the installer and type `ghci` and get a REPL. If you want to run a Haskell program to test it, it's just `runhaskell file.hs` and to compile, it's as simple as `ghc --make file.hs`. But when things get more complicated, even slightly so, Haskell can be an incredible pain to deal with (in terms of compiling and such) whereas clojure, being designed around build systems for large project, scales up just fine.

</comment><comment><USER4> I think it is worth learning both. Clojure is more "practical" in the sense that it is dynamic, impure and gives you access to the huge JVM library ecosystem, which is a huge advantage for real world projects. Haskell is pure and extremely elegant in an almost mathematical sense - if you want to learn the "true essence" of functional programming then it is ideal. Overall, Clojure is my favourite because of the practicality and the fact that it is compelling for other reasons (Lisp-style metaprogramming, interactive REPL development, code-as-data philosophy, concurrency features etc.)

</comment><comment><USER5> Great question. I would suggest first learning a Lisp (Elisp, Clojure, Scheme, Arc, etc) and then moving to Haskell.

With Haskell, you'll be learning more than basic lambda calculus. Haskell has a lot of new concepts that traditional-language programmers may have to rewire their brains to think about. Things like lazy evaluation by default, automatic currying, a more advanced type system than most other languages and the concepts that brings like Functors, Monads, and Iteratees. Lazy IO is rough edge which is, as we speak, in the process of being cleaned up by Iteratees.

With a Lisp, you can learn the basic concepts of lambda calculus without having to learn more advanced language features at the same time. You'll tackle things like programming in a declarative language and leveraging first- order functions. Remember, you're trading for-loops for recursion, and for some, that's enough brain rewiring without also worrying about lazy IO.

Lisp allows you to divide and conquer the multitude of language features functional languages have to offer. Why take them all on at once? Once you're comfortable with Lisp, Haskell's true benefits really start to shine. Haskell is by far my favorite language and I find myself hating programming without the features it offers but I'm not sure I would have made it far enough to see it's benefits without learning Scheme first. And learning Lisp is easy. It's a terse language which one could write a small project in in a few weeks and be ready for Haskell.

Haskell is challenging but there's a reason which I'll try to illustrate with an analogy: Calculus is more complex than arithmetic and without a more advanced problem to solve, the added complexity may not be a clear advantage. But you get to a certain point in physics where it simply becomes harder to work in only arithmetic and learning the abstraction of calculus up front pays dividends. Haskell is the same way. I'll end with PG's "The Blub Paradox" <http://www.paulgraham.com/avg.html> (scroll down).

</comment><comment><USER6> Haskell is "cleaner" and "purer" if you're coming from a mathematical background its also probably going to be easier. Since this is going to be your first programming language I'd suggest Haskell since its cetianly more elegant (in my opinion). I'm a biased Haskell enthusiasist so that's my suggestion :)

</comment><comment><USER7> Without taking sides, I would say look at some books on each. Kinda like comparing plutonium and uranium, or a cello to a guitar. Maybe these comparisons are silly. While youre at it look at scala and O'Caml.

You can look at the Yesod book, Real World Haskell and "Learn You a" online, i.e. read the complete, updated texts. Thompson's orange "Craft of FP" is a good read also, with methodical (and relatively slow-paced) coverage of all the basics. GHC is piling on language features and libs at a breathless pace, from deferred type checks, limited forms of dependent types, concurrency (async loops, STM, updated thread manager), IO abstractions (conduits), web apps (Yesod)

<http://hackage.haskell.org/trac/ghc/wiki/Status/May12>

Clojure is an incredibly well documented (in books) language. I'm looking at the excellent O'reilly and Pragmatic books, and the 2 Manning books ("Joy of" is terrific), all of which came out in the last 4 months and target 1.3. And i will wager that Marick's book will be top notch as well. Unfortunately, these don't have texts online.

</comment><comment><AUTHOR> EDIT- I just noticed that I accidentally typed out "first programming language", what I really meant to type was "first functional programming language". Sorry, for the confusion.

</comment><comment><USER8> Haskell.

If you're going to learn a functional programming language learn a pure one.

</comment><comment><USER9> Neither is a bad choice. I'm partial to Clojure, specifically because it does integrate well with every Java library known to man. Starting out, there's a real Pavlovian benefit in being able to do something cool that "just works", and figure out the underlying principles later. It's fairly easy to take Clojure and integrate it with your machine learning library of choice, or a web framework, or Hadoop. Haskell has some of those libraries as well, but the advantage is that from the beginning you're exposing yourself to polyglot programming and it's easier to mix in some raw Java, or JRuby, or Jython...

</comment><comment><USER10> > Which is more suited for someone who's just trying to learn their first > programming language?

None. Learn a language that is appropriate for beginners like Python or PHP.

<comment><USER6> I'd have to disagree here. I don't think its entirely unimportant which language a programmer begins with. Every language has its own community, resources, paradigms, general practices, etc. and if you start with a "rather lawless" language like PHP, you could be in for useless headaches. I started with C and initially it was difficult to grasp the OOP paradigm. I actually think starting with a functional language would be quite interesting since one is immediately confonted with the bridge between mathematical theory applied.</comment></comment>


Black hole paradoxes reveal a fundamental link between energy and order - <AUTHOR> https://www.quantamagazine.org/black-hole-paradoxes-reveal-a-fundamental-link-between-energy-and-order-20200528/ <comment><USER2> Here's the one that has bugged me since I first learned of Hawking radiation as an undergrad: if it is true (it's still unobserved but let's go with it), that means that merely passing through the event horizon allows for violation of the conservation of baryon number.

I generally regard most of the "Star Trek physics" ideas like FTL with the hairy eyeball, but this one really gets me. Being able to violate the conservation of baryon number (and lepton number, for that matter) would point to -- in some scenarios -- mass-energy conversion being a lot more available than the laborious processes of fission, fusion, and particle/antiparticle mutual annihilation.

<comment><USER3> Surely the conservation of baryon numbers is just a rule for reactions. I don't see how crossing the event horizon changes anything. Remember from the POV of the baryon, it never crosses the event horizon. It's not really 'destroyed', it just becomes unobservable to the external universe.

<comment><USER4> _Remember from the POV of the baryon, it never crosses the event horizon. It's not really 'destroyed', it just becomes unobservable to the external universe._

I think this is backwards - for an outside observer nothing ever crosses the event horizon, from the point of view of anything falling towards the event horizon it takes a finite amount of time to cross the event horizon.

<comment><USER5> How does this interact with the Hawking radiation? ie I throw something into the black hole, how much time do I wait before the Hawking radiation from that matter to manifest itself?

<comment><USER4> From your point of view - assuming you do not fall into the black hole yourself - nothing you throw into the black hole ever crosses the event horizon so you will have wait forever. You can only see something cross the event horizon if you cross the event horizon yourself and you will see everything cross the event horizon at the moment you cross the event horizon.

<comment><USER6> My friend is kind of confused. Why wouldn't an observer outside of the event horizon see things falling into it? He says you can glean information from a thing that's outside of the horizon, but a thing falling into it should cease to be observable, at least by his understanding of black holes. My galaxy- sized brain understands this, of course, but my friend's pea-brain doesn't.

So asking for a friend, ELI-aborted-CS-degree?

<comment><USER4> An observer outside the event horizon has to accelerate to avoid falling into the black hole itself and in the resulting frame of reference of this observer the horizon of the black hole coincides with future infinity and therefore everything falling into the black hole only reaches the event horizon infinitely far into the future. You can watch Leonard Suskind's lecture on that [1], falling into a black hole starts at about 53 minutes, but depending on your background you may want to start earlier, maybe even several lectures earlier. Looking at those Penrose diagrams is probably the easiest way to see what happens even if it will probably still not make intuitive sense.

[1] [https://www.youtube.com/watch?v=BdYtfYkdGDk&list=PLpGHT1n4-m...](https://www.youtube.com/watch?v=BdYtfYkdGDk&list=PLpGHT1n4-mAvcXwzOIz3dHnGZaQP1LEib&index=4)

</comment></comment></comment></comment></comment></comment></comment><comment><USER7> As a true amateur,I don't understand the basic premise of this extremal black hole mystery.

In my simple view, if a charged black whole is extremal and cannot shrink then... the solution simply is that it must grow again. It absorbs particles of the opposite charge until it becomes neutral enough to shrink again and the process repeat until it completely evaporate.

That seems both a simple and straightforward theory.

(Then my other misunderstanding is how a black whole would become so charged when the universe is seemingly so neutral. The law of big number ensures that a black hole would be mostly neutral and the extremal case would only happen for very small ones on the brink of evaporation.)

</comment><comment><USER8> > In that case, the universe of the far future will be littered with tiny, > indestructible black hole remnants — the remains of any black holes that > carry even a touch of charge

I don't get that. Wouldn't the charge be neutralized by consuming particles with an opposite charge (which are attracted gravitationally _and_ electrically)? Or even by merging two extremal black holes with opposite charge?

<comment><USER9> I think if you read the article, they talk about this far future hypothesis.

</comment></comment><comment><USER10> I remember reading somewhere that charged black holes would quickly lose their charge by radiating charged particles rather than, I guess, purely neutral photons. I've been taking that for granted for a while now, but don't remember exactly where I read it. Does anyone know where that hypothesis comes from and how it relates to the work in article?

<comment><USER11> I think the prevailing notion is another, namely that an electrically charged black hole would quickly neutralise by preferentially attracting particles of opposite charge.

<comment><USER12> In particular, if a charged black hole creates Hawking pairs, the oppositely- charged particle is more likely to be captured than the same-charge particle.

</comment></comment></comment><comment><USER13> What a ridiculously well-written article!

</comment><comment><USER14> >"Plumbing black holes for knowledge of quantum gravity originated with Stephen Hawking. In 1974, the British physicist calculated that quantum jitter at the surfaces of black holes cause them to evaporate, slowly shrinking as they radiate heat."

If heat is related to a black hole shrinking, and a black hole shrinking is related to information, then perhaps _heat_ is related to _information_ , and vice-versa.

[...]

>"In that case, the universe of the far future will be littered with tiny, indestructible black hole remnants — the remains of any black holes that carry even a touch of charge..."

You mean like an atom? Perhaps atoms (and other particles, in fact, _all other particles_ ) are really just black holes! Perhaps _curved space_ is a better way to look at it... perhaps all black holes (and all particles) are really just _curved space_... in fact, perhaps all waves are _curved space_ too...

Which would mean that everything in the universe, all of its particles, all of its waves, all of its contents, including the universe itself... is basically _curved space_... in one form or another...

[...]

>"In a paper published in March in Physical Review Letters, [Garrett] Goon and Riccardo Penco broadened the lessons of the earlier work by proving a simple, universal formula relating energy and entropy. The newfound formula applies to a system such as a gas as well as a black hole."

If gases (particulate matter spread thinly in a thinner medium, i.e., space) can be related to black holes, then black holes can be related to the particles in the gases, which lends additional credence to the idea that all atoms are black holes, although, this being said, it's not a hard proof...

[...]

>"When they combine Einstein's gravity equations and the equations of electromagnetism, they calculate that a black hole's charge, Q, can never surpass its mass, M, when both are converted into the same fundamental units. Together, the black hole's mass and charge determine its size — the radius of the event horizon. _Meanwhile, the black hole's charge also creates a second, "inner" horizon, hidden behind the event horizon._ "

Super weird idea here... if we thought about a black hole of whatever size holographically, as information, then what would be true if the inner, hidden part of the black hole actually contained a miniature replica, a miniature mirror-image -- of ALL of the information inside this universe, a universe- inside-of-a-universe? That's highly speculative of course, but I think it's an idea worth exploring...

[...]

">When a black hole hits this point, a simple option for further decay would be to split into two smaller black holes."

You mean like + and - on a battery terminal?

Let me go for "full crackpot theorist" <g>...

What if charge, as we know it, in electricity, is implemented by various clusters of small black holes, regions of curved space, that we have (up until this point in time) been calling by such names as "charge", "electron", "electricity", "potential", "potential difference", etc.

When, what you've got might be multiple black holes, split into pairs, where one is a complex conjugate, a mirror image of the other, and they basically want to unify and annihilate, producing various wavelengths (heat/information) in the process?

All physics should be solvable once the correct identities are established between apparently dissimilar phenomena...

<comment><USER15> [https://en.wikipedia.org/wiki/Black_hole_electron](https://en.wikipedia.org/wiki/Black_hole_electron)

My line of thought has been similar: If all mass/energy curves space time, then by extension all particles curve space time in proportion to their mass. You can't have only planets and stars curving the fabric of spacetime, it has to be the individual particles that make them up, because duh: if you split a planet in two, each half will keep half the mass and hence half the curvature.[1] You can repeat this all the way down to atoms, nucleons, and electrons. Probably photons, quarks, and neutrinos too.

But that's not how anything works in field theory, QED, etc... they just assume that there's a locally flat background with some "stuff on top" that doesn't distort the background at all. Like a function above the number line.

The key insight is that whatever makes particle curve spacetime must be some inherent, fundamental aspect of their nature. Not an extra "m" attribute that can be anything. That's why rest masses of all particles are consistent, their mass -- their curvature in spacetime -- is the very essence of their nature.

My current best hunch is that particles are like knots or tangles in the fabric of spacetime, inherently curving it. _All information_ is encoded as curvature, and curvature is the only thing that truly exists. In this model, black holes are regions of maximum curvature, vaguely like a ball of yarn. If you want to add one extra "strand" going into the ball of yarn, its cross- section has to be added to the surface area of the black hole, which is why black hole area is proportional to its matter content, not its volume.

1] Not _quite_ though! There is the gravitational binding energy. You have to put energy into a planet to split it up into separate particles, and conversely, planets release energy by the mere act of their forming. Jupiter releases more energy from its interior due to gravitational contraction that it receives from the Sun. In effect, particles are _heavier_ separately than together.

<comment><USER16> The idea of particles like knots in the fabric of space has been around for a long time.

[https://en.wikipedia.org/wiki/Vortex_theory_of_the_atom](https://en.wikipedia.org/wiki/Vortex_theory_of_the_atom)

<comment><USER15> That was a fascinating rabbit hole to go down!

I especially liked this alternate model: [http://kennethsnelson.net/PortraitOfAnAtom.pdf](http://kennethsnelson.net/PortraitOfAnAtom.pdf)

I don't know if anyone had ever bothered to develop it further, or even critique it, but it's interesting how many qualitative phenomena it explains in a straightforward, intuitive way!</comment></comment></comment></comment>


Best book on persuasion and building community - <AUTHOR> http://blog.getsponge.com/online-communities-persuasion/

<comment><USER2> What a coincidence - I am in the middle of this book right now.

It is a fantastic book backed up with tangible examples (psychology studies, mainly), and if you are in the business of persuading customers, I suggest you grab a copy. It covers most of the content from the Psychology 331 (Social Psychology) course I took at university, and is a worthwhile read.

</comment><comment><USER3> This was one of the first books I read as a copywriter, it's a tremendous reference and because it's based on human nature, it's timeless.

Cialdini's more recent collaboration - Yes! - is also interesting, rehashes the basic principals, but then adds in some more current research, scenarios and applications.

</comment><comment><USER4> It looks like a good read, and the blog post offers a good online of the main points.

</comment><comment><USER5> I've read this book twice now. More than any other book on persuasion out there (and there are a lot now, including Sway, The Paradox of Choice, Covert Persuasion, Habit), Cialdini's is stellar. The popular Persuasion, Emotion & Trust course that Human Factors International offers is based almost entirely on this book. (So save yourself $2000 on the course... and just read the book.)

Keep Cialdini's "weapons of influence" in your back pocket when trying to persuade anyone -- but especially when writing your own web copy and/or creating A/B or MVT tests of your web copy. The concept of Reciprocity is one that more 'freemium' startups should be thinking of when trying to monetize.

<comment><USER6> Totally agree. I've seen Caildini's work rewritten, repackaged and resold in numerous books on influence.

Caildini writing style is clear and concise. He neither talks down to the reader or uses jargon</comment></comment>


Designing game narrative (2013) - <AUTHOR> http://hitboxteam.com/designing-game-narrative <comment><USER2> This is deeper than I expected and one of the better articles on game design I have ever read, and I have read many.

What I'm saying is that if you came to the comments to find out whether it's worth reading, it is.

</comment><comment><USER3> Discussed in 2014: [https://news.ycombinator.com/item?id=8128216](https://news.ycombinator.com/item?id=8128216)</comment>


The 'effective altruists' - <AUTHOR> http://www.lrb.co.uk/v37/n18/amia-srinivasan/stop-the-robot-apocalypse <comment><USER2> I've read this book together with the two books about Effective Altruism bei Peter Singer (The Life You Can Save and The Most Good You Can Do), and I have to say these books have really changed my life. I know it sounds cheesy, but I've never read books that had such a lasting influence on me.

Those books provide just the right rational and scientific arguments and have shown me with how much cognitive dissonance I, as a supposed rational person, ran through my life.

<comment><USER3> I'd argue that being an effective altruist actually makes you less rational. As part of your genetic fitness, your brain is optimized for survival, reproduction, and keeping your children alive. If you're in the middle class and you give your money away then it goes against those objectives.

<comment><USER4> The objectives of "your genes" do not have to be your objectives. So you can be rational, but have different goals from what you were "meant" to (for some value of the word "meant").

<comment><USER3> Well perhaps that is true but then you will experience a lot more mental incongruity. For example, gay and transgendered people have much higher suicide attempt rates. The more you deviate from traditional family values, the unhappier you will likely feel. There is a big correlation I bet.

<comment><USER4> I don't think what you're saying is true re: mental incongruity.

And I don't think your example of gay suicides proves it, as it's hard to know what is the cause (and many people will point out, and I would agree, that there are _many_ other causes of gay suicides, e.g. that our culture is oppressive toward gay people).

</comment></comment></comment></comment></comment><comment><USER5> What I like about the effective altruist movement is the research they provide.

What I don't like is the cultish behavior, and inherent bias that what I think is good is "universally" good. Effective altruism is nothing more than a rebranding of utilitarianism, and suffers from the same moral quandaries.

Should I kill someone if it is the best way to decrease child mortality rates in Africa?

Should we all quit our jobs to solve friendly AI? Because if not there is a non-negligible probability of human extinction, and the math clearly says this should be our top priority.

I think it's healthy to be aware of the short comings of effective altruism as well as its benefits. Morality and duty are too nuanced for a single ideology to provide all the answers.

Edit: wording

<comment><USER6> I don't get what people have against utility theory (if that's what you mean by utilitarianism). For me it's one of the few models that _must_ be obeyed: there _must_ be a way to create a partial order among possible choices.

Whatever the reasoning behind your actions is, you are going to choose _a single action_ (at each step) -- this _forces_ you to choose the best. That's all utilitarianism is for me -- it tells you nothing about how to construct the utility function. Now the utility this view provides is just that: you can see clearly what sorts of thing you give greater priority, so you'll make the best possible judgement.

<comment><USER7> _> Whatever the reasoning behind your actions is, you are going to choose a single action (at each step) -- this forces you to choose the best._

This works at the level of individual choice, but it doesn't add up over multiple individuals, because you can't compare different people's utilities on the same scale. But the key claims of utilitarianism under discussion (the ones that are supposed to motivate people to donate to charity instead of purchasing luxuries for themselves) require adding up utilities over multiple individuals. Your argument doesn't justify utilitarianism in that sense.

<comment><USER6> I agree that you can't necessarily add up utilities over multiple individuals, but you can naturally claim that a "good" individual utility takes into account the well being of others, and if the utility of each action is unique you may say there's a composing function g such that your utility u(a=action,t1=actor 1) is also a function of the utility for other people u(a,t1)=f(a,g(u(a,t2),...,u(a,tN))).

I also think utility can makes sense when there's a set of actors looking forward to make a set of decisions. Again, this set of decisions is going to be unique. So if those actors are able to 1) achieve consensus on a utility 2) coordinate their actions according to said utility, then it also makes sense to talk in terms of a joint utility theory.

<comment><USER7> _> you can naturally claim that a "good" individual utility takes into account the well being of others_

That's not the same as utilities of multiple individuals adding, or otherwise being composed into a single utility function. The "good" individual's utility function can certainly depend on that individual's _beliefs_ about how his actions will affect the well-being of others; but it can't depend on the actual utility of those others, because the "good" individual doesn't know the actual utility to others of various states of the world.

 _> if those actors are able to 1) achieve consensus on a utility 2) coordinate their actions according to said utility, then it also makes sense to talk in terms of a joint utility theory._

I agree with this, but I think the necessary conditions for it are very rare. In most cases of collective action, the actors do not have consensus on a utility function and do not coordinate their actions according to a single utility function.

In fact, in most cases the actors probably do not even share a common or compatible set of beliefs about factual things. In US politics, for example, you have members of Congress who are young earth creationists alongside other members who believe standard evolutionary theory.

</comment></comment></comment></comment></comment><comment><USER8> Peter Singer's work has influenced my life in a big way. I have taken the 10% income to charity pledge and am on track this year to hit it(I calculate it every week as my income may begin varying weekly).

My charity of choice is Schistomiasis Initiative, which I donate to through GiveWell. The Life You Can Save has a satisfying "Impact Calculator" that can help you visualize what good your money is capable of doing [http://www.thelifeyoucansave.org](http://www.thelifeyoucansave.org)

I urge everyone here to really consider taking the pledge and begin diverting at least some of their income to effective charities. I am now also considering donating a fraction of my 10% to AI research. (Tip: Don't set up automatic donations if doing it yourself manually every month isn't too much of a hassle. The good vibes are definitely worth soaking in!)

<comment><USER9> > I urge everyone here to really consider taking the pledge and begin > diverting at least some of their income to effective charities.

I wasn't aware of Peter Singer etc., but I was actually independently considering doing the same thing (also 10%). But to be honest, I still fight with my worries - I am not sure about the local culture (Czech Republic), many people here still believe "who doesn't steal, steals from the family", and I worry that some of my friends/family will not like the idea. Although it may be completely unfounded fear or rationalization (I have a fair share of social anxiety).

<comment><USER8> I sympathize. I've actually had some negative reactions from close family as well. Thoase reactions are hurtful but I believe this choice to be the right thing to do. I now rarely speak about my charitable gifts, unless questions of ethics or beliefs arise in conversation. There's nothing wrong with keeping your giving to yourself if that makes you feel more comfortable!

</comment></comment></comment><comment><USER10> Is it only me, who would prefer to have the phrase "efficient altruists" rather than "effective altruists"?

In the context of sciences, "effective X" usually means "something that is not X, but in the effect acts as X" (e.g. "effective potential"). So, I when I first met the phrase "effective altruism" I was thinking it is something in the line of Ayn Rand or so - that we should be egoistic, but (some) egoistic behaviours are effectively altruistic. While "how to do as much X given fixed amount of resources?" is talking about being "efficient".

<comment><USER11> To my understanding, "effective" also means to have an impact, while "efficient" focuses more on the ratio impact/resources.

In that way, I find the wording "effective" better suited. It means the maximum impact given your resources, while for "efficient" it would be okay to have 80% of the effect if you get that for just 70% of your resources.

<comment><USER10> I understand that "effective" has also this meaning. But, as I pointed out, is ambiguous, with the "default" meaning being very different (not just subtly) from the intended one.

Especially as, in evolutionary biology, and game theory, there is a big topic of investigating how egoistic behaviour may give raise to an altruistic effect.

(And of course, the main thing is that adjectives created from nouns are very ambiguous, i.e. effective can mean both "altruism that gives effect" or "altruism that is an effect".)

</comment></comment></comment><comment><USER12> I have trouble both with Effective Altruists' claims that they can actually quantify human well-being to the point to where if you spend $X, you'll get $Y benefit out of it, and without that, the entire point is lost.

Even if you could, with a fair amount of certainty, say that for every $40 that the Yurt charity gets, they'll build 3 homes, there's a pretty hard limit on how many $40's they'll be able to turn into homes. Eventually they'll run out of qualified people willing to build homes for peanuts. Charity simply doesn't scale. The more you try, the more it just looks like regular old business.

EA could very well be a viable philosophy at the low volumes that participate right now, but if they're successful as a movement, whatever they build is just going to turn into another Red Cross. The Red Cross couldn't scale appropriately, and I highly doubt it was due to any lack of can-do willingness.

</comment><comment><USER13> There is also a TED talk by Peter Singer: "The why and how of effective altruism" [1]

[1] [http://www.ted.com/talks/peter_singer_the_why_and_how_of_eff...](http://www.ted.com/talks/peter_singer_the_why_and_how_of_effective_altruism)

<comment><USER14> Looking it, one suggestion came up, that you should go for a career where you can earn as much as possible, because then you could gave more money away, use it for something good.

So finance came up and I'm not gonna to say, that finance is by definition evil, but I can see quite some bad things coming out of finance, just think about all the trading with food, which painfully increased prices especially for the poorest people in the third world. Not to speak about the effects of the financial crises and their reasons.

I was just quite surprised about this kind of thinking, this kind of simplification and to think of this as the most effective kind of altruism seems to be a bit blinded.

<comment><USER15> >Looking it, one suggestion came up, that you should go for a career where you can earn as much as possible, because then you could gave more money away, use it for something good.

That one comes up a lot and the fundamental problem is that nobody actually does it. People start careers with the intention of doing it but hedonistic treadmill/peer-pressure seems to wring it out of them sooner rather than later.

Even ignoring, as you point out negative externalities, it's just bad advice to suggest that doing something that no one seems capable of carrying though with is a good way to affect positive change.

<comment><USER14> Yes, that's certainly a good point.

What if someone really wants to go into finance, likes its money and prestige and now he might be even able, thanks to effective altruism, to appease his morally doubts.

</comment></comment></comment></comment><comment><USER16> "Pathological Altruism"

[http://www.wsj.com/articles/SB100014241278873246884045785455...](http://www.wsj.com/articles/SB10001424127887324688404578545523824389986)</comment>


Is Amazon taking revenge on the Seattle socialist who took on the retail giant? - <AUTHOR> https://www.theguardian.com/us-news/2019/aug/05/amazon-seattle-councilwoman-kshama-sawant-re-election-bid <comment><USER2> "Revenge" in this case appears to be supporting her opponent... which doesn't sound like anything exceptional, it just sounds like politics.

I was expecting to read stuff like her account being suspended, her staff being harassed, but its all just your routine political wrangling.</comment>


Facebook Love Button [Music Video] - <AUTHOR> http://FbLoveButton.com

<comment><USER2> Best Techie Love song for Valentines Day!</comment>


Show HN: Download any song without knowing its name - <AUTHOR> http://iyask.me/Instant-Music-Downloader/ <comment><USER2> I have a similar function in my bashrc, which also relies on youtube-dl (which is amazing, btw, it does a LOT more than YouTube – bandcamp, SoundCloud, etc).

`play` will instantly play any song (great for parties), and `mp3` will download it: [https://github.com/exogen/dotfiles/blob/730fb8e2b72b2fc3aa3d...](https://github.com/exogen/dotfiles/blob/730fb8e2b72b2fc3aa3d90b889874bb5195e1d07/.profile#L65)

<comment><USER3> 1\. "function" is non-standard useless syntax 2\. mpv now knows how to automatically spawn youtube-dl, fetch the URL, and stream it given a YouTube argument.

<comment><USER2> per (1), these are my dotfiles and I use Bash exclusively, ergo, I use the syntax I consider better (because you can easily search for "function" and not the standard syntax with no keyword).

</comment></comment></comment><comment><USER4> Here is the important 2 lines of code.

      response = urlopen('https://www.youtube.com/results?search_query=' + search)
      command = 'youtube-dl --extract-audio --audio-format mp3 --audio-quality 0 ' + video_link

Amazing how useful of a tool you can make with such little code. There is really some great libraries available today.

<comment><USER5> I also save audio from YT occasionally. I prefer to use this command however (to get the best quality audio):

        youtube-dl -f bestaudio[ext=m4a] <youtube ID>

PS: you can replace m4a with mp3 but that will induce trasnscoding and loss of quality. YT's AAC tracks are usually the highest bitrate ones so it's best to leave it as is.

<comment><USER6> youtube-dl already defaults to downloading the best quality audio; you only need that line if you want to force a particular format.

<comment><USER5> Not quite. Sometimes "bestaudio" downloads webm files because Opus audio tracks report higher average variable bitrate. If you don't want to download video+audio and don't want to transcode or deal with Opus stuff, you need that m4a flag in there. Since nothing supports Opus and you need to transcode and remove video, webm seems like a losing proposition. And higher bit rate is deceptive since AAC is a much better encoder even at a lower bit rate.

<comment><USER6> That's what I mean: youtube-dl --extract-audio already downloads the best quality audio, which may be Opus (albeit typically via DASH rather than a full webm file), so you only need a line like the one you pasted if you want to specify a specific format such as m4a.

</comment></comment></comment></comment></comment><comment><USER7> Based on the comments here, it seems this tool is powered by youtube-dl.

youtube-dl is a great tool ( supports multiple websites outside of youtube as well )

The problem is...if you use youtube-dl to rip songs from youtube you are going to be stuck with a not so great quality bitrate.

Based on some quick research, it looks like the top quality audio bitrate you can get currently get from youtube is 126.886 kbps. That's going to really reduce the quality of any song you rip from the site. Most songs are digitally released at 320kbps these days. CD quality is 192kbsp.

<comment><USER8> This has been an age old question since Mp3s were created. However, I'm going to disagree with you there on saying that CD quality = 192kb. I've heard 192kb files and they sound like complete garbage. If you're looking for true "CD quality" that would be LPCM 44100 Hz 16 bits stereo for a bitrate of 1411 kbps.

<comment><USER9> > I've heard 192kb files and they sound like complete garbage.

I'm curious, did you blind test yourself? I blind tested a friend of mine who kept saying so, and he did barely better than random.

<comment><USER10> It's very easy to tell the difference between 192kbps and FLAC if you have a decent subwoofer and the song ever goes below 30hz. On run-of-the-mill speakers and earbuds, probably not.

<comment><USER11> It's extremely rare for music to contain anything below 30Hz. Even below 40Hz is rare. The only place you're likely to find such low frequencies is sound effects in movie soundtracks.

<comment><USER12> Unless you are into Bassnectar and the like... ;)

<comment><USER11> Interestingly, a lot of "bass heavy" music focuses on frequencies around 50Hz, not the really deep sub-bass. This makes sense when you consider human hearing. Those higher frequencies sound much louder to us, and they're still low enough to get the tactile feeling.

</comment></comment></comment></comment></comment></comment></comment><comment><USER13> It looks like all this is doing is in essence just searching for the lyrics on youtube, finding the first result and then passing it to youtube-dl.

<comment><USER14> Nothing wrong with that, is there?

Sure looks a lot more productive to the boss than searching for your next track on YouTube. :)

</comment></comment><comment><USER15> You may want to ask /r/tipofmytongue if they'll put it in their sidebar.

A few people ask for music. They could have shazaamed it, but they don't.

</comment><comment> tefo-mohapi Love it. But expect hell from Google and record labels / music artists alike. All the best.

<comment><USER16> Yeah, I'm not a big industry player but I'm not exactly enamored with this kind of thing. One question would be does Youtube-dl still provide compensation to the artists/label/publisher/etc in the same format as a stream? If not, then it's genuinely circumventing the (admittedly limited) tracking and compensation structure YouTube has set up. That...probably won't work out very well in the long run.

<comment><USER6> Yes and no: it counts as a "view", but it doesn't show ads.

<comment><USER17> Restated: no. Monetization depends on the ads. Using such a tool is equivalent to using an ad blocker. If you're comfortable using an ad blocker, you're not doing much different here.

<comment><USER6> Exactly. I never see ads on YouTube when using Firefox, only when using the Android YouTube app.

</comment></comment></comment></comment></comment><comment><USER18> You should replace that YouTube video with an Asciinema: [https://asciinema.org/](https://asciinema.org/)

<comment><USER19> But then you wouldn't be able to use instantmusic to download the audio for the instantmusic demo video! Why pass up an opportunity to be meta when you can be meta?

</comment></comment><comment><USER20> This is pretty cool. I usually had to add a little more context to get the correct result though. It would be nice to see the top ten results, maybe with a relevance score.

It would also be great if I could pipe in the search and bypass confirmation, e.g:

> echo hide your love away | instantmusic -f

<comment><AUTHOR> Recently this feature was added. [https://github.com/yask123/Instant-Music- Downloader/blob/mas...](https://github.com/yask123/Instant-Music- Downloader/blob/master/music_downloader.py) You can install it from source if you wish to use it now.

I haven't updated the package as yet.

</comment></comment><comment><USER21> BTW, on a fresh Win10 install (Py3.5) I had a bit of trouble b/c of the lack of extension. Had to add the .py prefix and it worked then :)

<comment><AUTHOR> I should add that in the Readme.

</comment></comment><comment><USER22> Slightly simplified & loops through all the links on the first page :

        import re, youtube_dl
        from bs4 import BeautifulSoup
        from urllib2 import urlopen
        from urllib import quote_plus

        ydl_opts = {}

        soup = BeautifulSoup(urlopen('https://www.youtube.com/results?search_query=' + quote_plus('linkin')).read())
        links = soup.find_all('a', href=re.compile(r'watch\?v='), class_='yt-uix-tile-link')

        for i, link in enumerate(links):
            print i+1, '-', link.text

        choice = int(raw_input("Select song index : "))

        with youtube_dl.YoutubeDL(ydl_opts) as ydl:
            ydl.download(['http://www.youtube.com/' + links[choice-1].get('href')])

</comment><comment><USER23> I once tried to identify a piece of instrumental music and tried AudioTag, but it couldn't find anything. It would be useful to have a huge global music database with some recognition algorithms for that. Is there anything like that around?

<comment><USER24> [https://www.shazam.com/](https://www.shazam.com/)

[http://www.soundhound.com/](http://www.soundhound.com/)

[http://www.midomi.com/](http://www.midomi.com/)

[http://echoprint.me/](http://echoprint.me/)

[http://the.echonest.com/](http://the.echonest.com/)

<comment><USER23> Thanks. I'm looking for something simple enough that doesn't require any accounts. Looks like Shazam and Soundhound have no Web services and require registration. Midomi has recording widget, but no sample upload (that's somewhat weird).

Echoprint is open, I'll take a look at that. Echonest doesn't seem to have any service on their site (not sure how it's used).

<comment><USER25> Check out musicbrainz

<comment><USER23> Thanks. I thought it's more for meta information (I know VLC uses it to identify audio by meta tags). Looks like they support acoustic fingerprinting too: [https://en.wikipedia.org/wiki/MusicBrainz#Fingerprinting](https://en.wikipedia.org/wiki/MusicBrainz#Fingerprinting)

</comment></comment></comment></comment></comment><comment><USER26> This is super cool. :-)

I think it'd be nice to have a SoundHound/Shazam-style audio fingerprint downloader too: then you can either repeat lyrics, _or_ get a quick soundbyte!

<comment><USER27> I've wanted to build a similar thing for a while, except letting me say some of the lyrics vs. typing them.

<comment><USER28> OP + a voice recognition wrapper

probably wouldn't be too hard, depending on what's available for voice recognition libs in Python; I haven't actually looked. Anyone know?

</comment></comment></comment><comment><USER14> A nice little tool. I'm a big fan of Youtube-dl as well. I've used it in similar chain-together command line tools to feed songs from Youtube into ffmpeg to slow them down to practice/learn songs. It can also swipe audio from NPR so I can stream to my Sonos system, which is nice, because they tend to make the Bonnaroo and Newport Folk content streaming-only on their portal.

</comment><comment><USER29> Wow, what a nice hack!

My testing env : Windows 8.1, MSYS2, Python 3. It's working flawlessly even with some obscur foreign/french lyrics/song/group.

I'm impressed. :)

<comment><AUTHOR> All hail youtube-dl :)

<comment><USER29> Thank you for letting me discover these ecosystem of apps (I'm not a big user of Youtube). And it's still a cool hack. ;)

</comment></comment></comment><comment><USER30> I'm surprised to see this on HN. This should be called "Illegally download any song".

I think the project is extremely cool and you have props from me - but I hate it when people try to skate the simple fact that stuff like this is illegal. ROMs and emulators have shown up on imgur many times as "free" \- like as if the publishers have released the rights to the game(s).

<comment><USER31> This is using youtube-dl, which downloads the youtube video and converts it to an audio file. Not illegal. At least in my country..

<comment><USER32> The Youtube TOS basically says you can only stream content, and pretty much defines streaming as not downloading for offline or later consumption.

It's about as illegal as violating a TOS.

<comment><USER33> Well, in the US, it is also considered circumvention, so it's probably liable for civil penalties.

The EFF's interpretation of the TPP makes it also seem like for any member country, it could also be liable for criminal penalties.

IANAL

</comment></comment></comment></comment><comment><USER34> On a similar note. To all those who love to store movies and watch. It's always a pain to decide what to view. I wrote a tool which helps the process - [https://github.com/navinsylvester/cinephile](https://github.com/navinsylvester/cinephile) . Pip install is broken so try the git one.

</comment><comment><USER35> Pretty much the same as playbylyrics.com[1], something I made, except you run it yourself. I really like it!

[1] (Note that the site is broken as of a few months.. it never caught on and I'm going to let the domain expire unless someone wants to have it (for free, just tell me what you're going to do with it).)

</comment><comment><AUTHOR> Just updated to v1.2 with many bug fixes and some additional features. Run `pip install instantmusic --upgrade` to try. [https://github.com/yask123/Instant-Music- Downloader](https://github.com/yask123/Instant-Music-Downloader)

</comment><comment><USER36> After a bunch of mess getting it installed on Mac OS X, I get it to find a song, which is a bit of trouble in and of itself, and am then stuck with this error: sh: youtube-dl: command not found

<comment><USER27> Are you intending to use the author's program or youtube-dl directly?

This was sufficient for me on OS X 10.10.5:

      pip install instantmusic
      brew install ffmpeg

      instantmusic
      > ...some lyrics...

      afplay foo.mp3

</comment></comment><comment><USER37> Cool! But I'm looking at the video and this thing seems it automatically transcodes the audio stream to MP3. Why not just put the highest quality AAC stream available in an M4A container?

</comment><comment><USER38> I am surprised it even supports non-english songs! Though I wonder which languages are supported other than urdu/hindi

<comment><USER39> If a song is on youtube (or any other website that youtube-dl searches in), this will download it. Language is not a constraint here.

</comment></comment><comment><USER40> Going to try make this into a alfred workshop if anyone is interested

<comment><AUTHOR> That would be awesome, I am interested :)

<comment><USER40> I'm running el capitan and youtube-dl is complaining about current user access!

</comment></comment></comment><comment><USER41> It's a CLI version of a tool like Youtune ([http://youtune- downloader.com](http://youtune-downloader.com)) and probably many others.

</comment><comment><USER42> How do you get it to automatically play the file?

</comment><comment><USER43> didn't work for me. I also expected a Tupac song.

$ instantmusic

Enter songname/ lyrics/ artist.. or whatever

> used to be a thug

Making a Query Request!

Found: The Ambassador Christology Release Party I Used to be a Thug.mpg 11-22-99

Download song (y/n)? y

Downloading...

[generic] watch?v=YfE2-T1r-jw: Requesting header

[redirect] Following redirect to

[https://www.youtube.com/watch?v=YfE2-T1r-jw](https://www.youtube.com/watch?v=YfE2-T1r-jw)

[youtube] YfE2-T1r-jw: Downloading webpage

[youtube] YfE2-T1r-jw: Downloading video info webpage

[youtube] YfE2-T1r-jw: Extracting video information

[youtube] YfE2-T1r-jw: Downloading DASH manifest

[youtube] YfE2-T1r-jw: Downloading DASH manifest

ERROR: unable to open for writing: [Errno 13] Permission denied: u'The Ambassador Christology Release Party I Used to be a Thug.mpg 11-22- 99-YfE2-T1r-jw.m4a.part

<comment><USER44> Maybe you ran the program when your current working directory was not writable? Like you were in /bin or /usr or something when you ran it?</comment></comment>


A Posix Queue Implementation - <AUTHOR> http://zinascii.com/2014/a-posix-queue-implementation.html <comment><USER2> This is a great piece, and it reminds how rare it is to have excellent expository systems writing. It's certainly fitting that Ryan cites the late Richard Stevens, who was the exemplar of such writing. Those who like Stevens and Ryan's piece should also look for work by Elliott Organick: he must be considered the pioneer of expository systems monographs, and while his books are very hard to find (and the systems they describe long-since powered off), they remain rewarding reads.

On a more personal note, it was fun to reminisce about code that I hadn't been in in a long time -- I had actually forgotten how much surgery I did on the message queue code back in 1997[1], and I had the opportunity to chuckle at some of the comments made by my 23-year-old self.[2] I also marveled at how little this software has changed in the nearly two decades since; I've written about this before[3], but it's always inspiring to be reminded that we in software have the luxury of creating useful things that do not wear out -- may we only have more writing like Ryan's to learn about them!

[1] [https://github.com/illumos/illumos- gate/blob/a9e987e05eeb8cc...](https://github.com/illumos/illumos- gate/blob/a9e987e05eeb8cc8a9777541465eeea09e72e9eb/usr/src/lib/libc/port/rt/mqueue.c#L203)

[2] [https://github.com/illumos/illumos- gate/blob/a9e987e05eeb8cc...](https://github.com/illumos/illumos- gate/blob/a9e987e05eeb8cc8a9777541465eeea09e72e9eb/usr/src/lib/libc/port/rt/mqueue.c#L826)

[3] [http://dtrace.org/blogs/bmc/2004/08/28/the-economics-of- soft...](http://dtrace.org/blogs/bmc/2004/08/28/the-economics-of-software)

</comment><comment><USER3> Does anything use posix queues? Lack of support has never been an issue for openbsd afaik. Looks like somebody snuck it into FreeBSD, which I wasn't aware of until I just looked it up. Seems like a forgotten feature.

<comment><USER4> I thought about them a few times wanted to use them. But every time I thought "Hmm, wonder if anyone else is using them... I better stay away if I hit some bug or untested corner case".

<comment><USER5> I used POSIX message queues in production once. They worked fine, as a replacement for TCP when on the same machine, with reduced latency (roughly 75%). But eventually I switched to Unix Domain Sockets which offered similar good performance with a more familiar operating model (e.g. no worries about cleaning up old queues, and it's just another type of socket). This was on Linux 2.6.32-ish, and the POSIX MQ implementation had no bugs that I noticed over some millions of messages. Which is more than I can say of the UDP implementation.

</comment></comment></comment><comment><USER6> Is this secure? That is, can you receive messages from an untrusted process without worrying that it will somehow crash or corrupt your process?

There are two processes mmap'ing the same memory, and operating on it with a mutex. It seems like the one side has to perform elaborate checks to make sure the other side is obeying the protocol. Or am I mistaken?

</comment><comment><USER7> Compare QNX message passing, which has a much simpler API and runs faster.

The UNIX/Linux world has never gotten message passing right. It's inevitably built on top of files, sockets, or shared memory, which adds complexity and reduces speed.

<comment><USER8> Using files and sockets as common abstractions for a variety of underlying mechanisms is one of the most powerful things about UNIX/Linux. Yes, there are tradeoffs, but in return, it means you can interoperate with a tremendous number of utilities and tools (which don't even need to know anything about the underlying mechanism) in unplanned and unexpected ways... for free.

<comment><USER9> Trigger Warning: Memories of reading about Plan 9

</comment></comment></comment><comment><USER10> This reminds me of a Java project called Chronicle started by Peter Lawrey

[https://github.com/OpenHFT/Chronicle- Queue](https://github.com/OpenHFT/Chronicle-Queue)</comment>