skysight-inc/HackerNews huggingface dataset:
> There is no perception of reordering my intentions in the real world.

Never tried to type something by thinking only of the word (rather than specifically the sequence of key strokes) only to have your fingers execute the presses in slightly the wrong order -- giving you something like "teh" instead of "the"? I have, a lot actually, and if I'm in a hurry or distracted, it can even pass by unnoticed, leaving me with the impression I typed the correct word while having actually executed the wrong sequence. (Hurry or distracted I think would be the most analogous to systems which don't take the time to register aggregate feedback and verify correct execution after the fact.)

Humans have at least one experience of trying to execute a distributed sequence of actions and having the output be mangled by the actual ordering events so common they invented a word for it -- the "typo".

It's insanely easy to explain to people that sometimes really complicated systems make a typo when they're keeping their records, because it's such a shared, common experience.
I'm not sure the central argument fully explains the illusion.

If you can simultaneously see several stars in the sky using your peripheral vision using averted gaze, why not several dots?

I suspect uncertainty plays a part, but image completion from higher-order feedback that complete the lines might drive the illusion more. Put another way, I believe if you remove the gray lines, the illusion ceases to work.
Deforestation is so serious, I visited Indonesia last year and all I could see from the plane was smoke from illegal burning of forests for palm oil plantations and cheap mass animal agriculture. It was the worst fire in known history and a really, really sad thing to witness, the baron charred fields left behind are really a terrible thing to see.

I wonder why on earth more wealthy Governments don't send in the "defense forces" to help stop this illegal activity, instead of going to Syria, it's such a no brainier. Countries like Brazil and Indonesia shouldn't be required to protect everything on their own, nor should activists, murders of activists are a reality because they're just getting in the way of business.

It would also be easy and relatively cheap to start replanting and re-generating damage forests, I know it won't bounce back immediately, but it does regenerate eventually if assisted (apparently).

For those that are unaware, palm oil is in pretty much in all packaged foods sold in super markets, often hidden as vegetable oil, the WWF has information about identifying products that use it http://www.worldwildlife.org/pages/which-everyday-products-c...

After the destruction I saw, if one wants to continue living and has any loved ones, I would cross it off your shopping list now, along with any imported animal products.

Also, be highly skeptical about any "certified products", having spent time in Indonesia and seeing corruption first hand, I doubt such things truly exist, better to just get off the palm for good.
> You can't do this in general, because we often want to build applications where the user expects their actions won't be reordered.

The key being they don't expect their actions to be reordered. In most systems this is trivially handled by logging event time as seen from the users system and ensure the user sees a consistent view of their own operations.

There are exceptions, naturally, but the point is not that you should be able to do this "in general", but that expecting global consistency is a relatively rare exception.

If I post a comment here, I expect my comment to be visible when I return to the page. But there is no reason for me to notice if there is a strict global ordering to when posted comments first appears in the comment page. If someone presses submit on their post 100ms before me, but the comment first appears to me the next time I reload, while it appeared the opposite way for the other poster, it is extremely unlikely to matter.

> A canonical example is privacy settings on a social network. If I want to hide my profile from a user by unfriending them and then post something unkind about them, it doesn't really for me that the application is free to reorder my actions.

This is a design issue. Your privacy settings is a local concern to your account, it most certainly does not need to be globally consistent. All you need to do to avoid problems with that is to ensure consistency in routing requests for a given session, and enforce local consistency of ordering within a given user account or session depending on requirements.

As long as you do that, it makes no difference to you or anyone else if the setting and post was replicated globally in the same order or not.
> - You would psychologically damage yourself by pushing the person off a bridge.

This. This response is exactly what the experimenters need, to differentiate between a 'normal' person and a psychopath.
Browsers have always accepted "broken" HTML, "tag soup" as it's known, in order to not break existing web pages. HTML 5 simply codifies existing behavior.
Thanks for posting the Reddit link : I hadn't previously realised that the quality of the commentary in /r/MachineLearning was so high.

I came across your link I had "check the real-ness of SARM" on my TODO list (along with the v1 of the PDF on my reader). Now to try and parse through what was real about the method and what was hubris...
It's a little late now, but I might suggest in the future of that rather than radically change an API interface, even between major versions, you launch it as an entirely new package. While I really appreciate the work that you guys have put into this library, I think what everyone is really frustrated about is the heavy change between versions. This creates a lot of logistical headaches and perception problems that have upstream consequences, some technical and some political.
Edward Snowden Says Disclosures Bolstered Individual Privacy
Yes. Firefox on Android
"Aggressively competitive" feels awfully euphemistic given some of their tactics.
> unless you have devs that cannot actually deliver on the needs the dependency covers.

You say this off-handedly like its not a big deal. No single person or company understands all the dependencies from the app all the way down to the electricity. That's the real reason we use dependencies - for things that aren't core to our business, that we don't want to have to understand.
I'll revise my position, but only slightly. Using the data that you pointed me at, if you had retired in 1929, you would have had to wait until 1944 before the market broke through permanently above the 1929 level, with dividends reinvested. So you would only have starved for 15 years, not 25.
You're both being super anecdotal here. Look at sales numbers to get a more accurate view of what the actual landscape looks like.
This is very US based. Does much of this advice change, say if I were a, UK citizen? (other than the obvious 401k etc)
Sure, one can think of clever ways to "break" the question, but it undermines the asker's intent. The trolley problem is really only interesting if you play by a set of rigid rules (which, to be fair, are generally not explicitly mentioned).
What's your control where you believe your wait for treatment would be shorter for the same quality of care?
I heard that inner motivation (motivation from the inside, in other word, yourself) has more impact than outer motivation.

That was my problem too when I was preparing college entrance examination. My teacher told me that you can get a motivation by categorizing what you love, what you fear, and what you hate. Someone can get a motivation because he hates something. So, write it down! Repeat what you've written regularly before and after you're going to bed.

Side note: I would recommend James Clear's reading list for motivation [1].

[1]: http://jamesclear.com/motivation
It's really hard not to immediately picture Homer Simpson with a hacksaw and dreams of intercepting the flow. Then I thought... cartoons aside you could probably tap and divert a very small portion of the beer. Then I wondered what kind of threshold any monitoring systems might have which would be alerted to a drop in pressure, and therefore how much beer one could swindle before alerting the BierKops... mit their hops.

Sorry, I'm a little tired.
Yes, but some places tell you not to do scripts there when possible and load them instead at the bottom of the page because the page loading pauses while the script is downloaded (if not inline) and executed. See https://developers.google.com/speed/docs/insights/BlockingJS
Just to put the code sample here...

<!-- Not recommended -->
<!DOCTYPE html>
<html>
<head>
<title>Spending money, spending bytes</title>
</head>
<body>
<p>Sic.</p>
</body>
</html>

<!-- Recommended -->
<!DOCTYPE html>
<title>Saving money, saving bytes</title>
<p>Qed.

Does the <head> tag really not matter anymore?
I would have said Go rather than Scala, but now Go is pretty mainstream.

I think my choice today for a Python Paradox would be Erlang or Ocaml. Ocaml + MirageOS is a system level simplification that makes application correctness/security a much more tractable task than [any other language + linux].

Erlang is the most common sense way to build resilient, distributed applications. But there is a high barrier to entry to learn both Erlang and the OTP framework that makes it useful.

Having said that, I've never worked at a company where choosing Erlang or Ocaml was a possibility. I think there are companies that make bold technical choices, but I haven't had the good fortune of being given the chance to work at such a place.
I agree, but maybe a transformer step could do it automatically. Write full HTML, generate less.
Yup, and we used to have FoundationDB, sadly not any more, but don't get me started on that.

Still there are plenty of highly distributed stores to go around, and it's good to know that people are actively using them with great success.

It's very nice to have fine control over consistency vs performance even if you do have to think about it as a developer, but then that's our job :-)
This is a very selective view of banking. In financial reporting you have a lot of situations where you need a consistent point-in-time snapshot of your data or you might be in very big trouble.

It's true that clearing of payments and trades is usually a multi-step process that isn't done in one huge distributed transaction. But implementing each stage of that process without ACID transactions seems like a daunting task to me.

So I think Eric Brewer's remarks lack a bit of nuance and detail, but he's not entirely wrong of course.
> And the answer is: over $7 trillion.

Only if you include monetary policy, directed by a Federal Reserve chairman appointed by George W. Bush, the same man who signed into law the bailout programme.

Goldman Sachs was far from the chief recipient of those funds and had to pay back the bail-out funds (at a profit to the U.S. government).
Didn't Carlsberg also make their special brew in honor of Winston Churchill? Interesting company that I think I'd like to read more about.
Sure, if its within the same ecosystem - at which point the diff is really just syntax. (Whats Python's ecosystem anyway?)

But I doubt a moderately complex architecture can live within just one ecosystem. We use PHP, C, Lua (to script the C), Go and Python (being phased out in favour of Go) because different workloads/problems have different requirements.
Programmable network routers
Famous Applications Built with Node.js
Open source hash_map with unparalleled performance/memory usage ratio
yep, so just position the script at the bottom then. :)
A lot of this sounds like there's an engineering solution that edX and Coursera can offer as a service. Course creators would have SOME work to do, but limited to uploading the charts and files used in their video.

From the DOJ letter:

> 1. Some videos did not have captions.

> 2a. many videos did not provide an alternative way to access images or visual information (e.g., graphs, charts, animations, or urls on slides)

> 2b. videos containing text sometimes had poor color contrast, which made the text unreadable for those with low vision

> 3. Many documents were inaccessible ... [HTML and PDF stuff]

> 4. Some links were not keyboard accessible

> 5. Websites and materials that were integrated into the course material were not fully accessible

Before we jump to debating the ADA, let's see if there's a sensible solution!
> A p element's end tag may be omitted if the p element is immediately followed by block-ish element, or if there is no more content in the parent element.

> This doesn't apply if you are doing weird stuff in a non-block-ish element, or a media element, or a custom element.

is the easier way to think about it usually
It does, and the usual solution is to not load your link heavily while gaming. If it's someone else's link that's loaded, then you're screwed.

However, most games are deeply inflexible on how much bandwidth they use, and additionally tend to use UDP. Running out of bandwidth doesn't degrade the game; it makes them break entirely.

As a result of both of these, with a few exceptions, this work won't be directly useful to games.
No!

Thank God we will always have BSD/Linux.
It's weird if you're accustomed to XML, but most file formats, even those representing hierarchical data, don't have a root-level "wrapper". Most file formats have a header followed by one or more data sections possibly followed by a footer. Of course, in a hierarchical document format the run-time binary representation will constitute a tree, but there's no intrinsic reason for a serialized format to be isomorphic to the run-time format, as long as possible missing pieces can be inferred on deserialization.
> This simply should be a build step

This is a great point, but when I think of build steps, I think of something like minifying which comes with a performance gain.

I'm not sure I see what the obvious gain to omitting optional tags in the way Google suggests is.

Edit: To clarify, I'm wondering if there's some performance gain by the browser not having to parse the implicit optional tags.
The problem is that people have long since figured out that a deal over drinks and a handshake is tough to prosecute, and easy to deny.
Elixir is great in the sense of attracting people who are interested in functional programming, distributed systems, and scalability, but aren't willing to give up pragmatism/productivity/readability in exchange. In my experience, these are the best kinds of people to work with. Cs theory + get shit done = good engineering.
"Bank transactions are easy to express as a join-semilattice[1],"

That may be true for a given set of transactions in a very abstract way, but that has some serious practical problems. First, like it or not, banks have a history of making transactions non-associative and non-commutative; there are many reported cases from the wild of banks deliberately ordering transactions in a hostile manner so that the user's bank account drops below the fee threshold briefly even though there is also a way to order the transactions so that doesn't happen. So as a developer, telling your bank management that you are going to use a join-semilattice (suitably translated into their terms) is also making a policy decision, a mathematically strong one, about how to handle transactions that they are liable to disagree with.

There is also the problem of variable time of transmission of transactions meaning that you may still need to have some slop in the policies, in a way that is not going to be friendly to the lattice.

The nice thing about join semilattices and the similar mathematical structures is that you get some really nice properties out of them. Their major downside, from a developer point of view, is that typically those properties are very, very, very fragile; if you allow even a slight deviation into the system the whole thing falls apart. (Intuitively, this is because those slight deviations can typically be "spread" into the rest of the system; once you have one non-commutative operation in your join-semilattice it is often possible to use that operation in other previously commutative operations to produce non-commutative operations... it "poisons" the entire structure.)

I think you're badly underestimating the difficulty of the requirements for anything like a real bank system.
I have interviewed with two "Big Corp" companies and during the interviews I asked about the possibility of an immigration sponsorship considering that I live in a South American country, and they have always assured that once the interviews are done and the company extends a job offer they can help during the immigration and relocation, not only to North America but also Germany, Scotland, Japan, Canada or any city where they have an office.

I wouldn't worry about that, just be sure to study a lot to improve your profile as much as you can, every skill counts considering the fact that they receive tons of resumes all the time, you have to differentiate yourself from the others.

PS: Since you mentioned being a front-end developer, I want to give you some advice with respect of your current learning strategy. A couple of days ago I interviewed for a position in the web development team of one of the "Big 4", my background is mostly on back-end development. After reading several articles from people who interviewed with the same company I realized that most of the questions they were asked were related to algorithms and data structures, so I decided to refresh those skills, bought the latest edition of the CtCI book. The day of the interview I was surprised to find that all the questions were regarding the DOM, basic CSS concepts, and new features introduced in the latest specification of JavaScript. During the ~40 mins of the interview I was never asked one single algorithm question.
Hard to disagree that Snowden's revelations brought some needed sunlight on the shady - possibly illegal - practices of our governement, practices which had been denied by government officials in official testimony in front of congress. As such, he is clearly more of a whistleblower than a traitor.
I never really thought about it much, but there's no reason it needs to.

There is not really any ambiguity that the head tag solves ever. Script tags don't act differently in or out of the head tag, and things like <title> are always going to do the same thing, so having the <head> block is at best a "comment" to the user that these elements are "head related".
here is an edge case: the <head>-tag might be optional, but HTML elements do have a different behavior when placed in the <head> section or the <body> section.

namely, the always beloved <noscript> tag https://developer.mozilla.org/en/docs/Web/HTML/Element/noscr...

which is a flow content element in the body section

but if used in the <head> it might include links, style and meta-tags and then it should not be treated as content element.

as the <head> element therefore changes the behavior of its child-elements, does this make it non optional?

p.s.: i think DOMParser.parseFromString() in Chrome gets this <noscript> behaviour wrong in some cases (closes the <head>-section as it treats the <noscript>-tag as content-element, even though it is in the <head> with just links & style children, so it shoudn't close the <head>...)
Maybe short-term, but long-term, it's a wise move.
1. Well obviously it's different in many ways. For example, it's easier to setup integrations, especially for non-developers. Even if everything is self hosted and internal it's nice to not need to modify a services code for every single use case.

2. I mean you can't I guess? But I'm not sure why that's a concern since it'd be part of a contract/SLA. If you don't trust them to follow the contract, then why are you even talking to them? Just host your own service that you do trust.
This increases your attack surface area. Any breach to one of those machines and the attacker can start doing mitm attacks. It also limits auto scalability assuming newly provisioned machines require manual approval of priv key distribution (that stays in memory) via hsm, and the same goes if the process dies. One way to limit the key distribution is to embed the routing information you require in the SNI at a second lb layer that's shielded from public traffic. This way your public machines don't hold any keys and if they get compromised, limiting the damage.

I agree it's a general problem. But sometimes certain architectures would require more vulnerable approaches vs others.
I think we live in different times now. Ecosystem matters much more. There are certain languages with features that I love (haskell's state isolation looks lovely, for instance), but I'm not willing to make the jump because the Haskell ecosystem isn't there and might not ever be there.

This mattered much less in the past as ecosystems were much smaller and people tended to build software much more from the ground up.

That said, I think it applies within ecosystems still. Scala programmers get to choose a better language without abandoning the Java ecosystem. F# programmers get to choose a better language without abandoning the C# ecosystem. The "paradox" is evident there.

Go is definitely not that language (generics? lack of package management for years? c'mon). Rust, maybe (for systems programmers).
The problem is that a big central ACID database enforces strict limits on throughput limited at best by the the speed of light (in reality it's worse).

Enforcing a globally consistent views basically requires coordination. Coordination requires that a signal traverses a distance and is acted on no faster than the instruction throughput of a single CPU core.

When the sources of operations are geographically spread out, you will be limited based on the fastest communication possible between those locations in addition to the processing latency.

Ultimately this means that there are scaling limits to throughput of a fully serialised system that causes real problems all the time.

Sometimes a single global truth is still fast enough. Very often it isn't, when e.g. your users are spread out globally. That's why it's important to consider avoiding consistency when it is not necessary.
Do you have a linter or some such automated style guide that you use to enforce this style?
Thank you for this :) I was trying to make the same point
Ultrasound Haptic Technology Could Revolutionise Man-Machine Interaction
Less HTML to load? Probably makes no difference in most cases, but it is less to load.

Many React/Webpack flows do something like this (minify or use a barebones template HTML).
Me at 59:-)
Facebook's transparent attempt to own the internet in Africa is scary, distasteful, but strangely tinged with inevitability due to Mark Zuckerberg's unstoppable hunger and relentless competence. I hope Africa is as savvy as the West (has belatedly become) to his self-serving PR stunts, and gives him an almighty neo-colonial kick in the butt.
Obama will never pardon Snowden.

The popular perception of him is liberal, but he is in reality one of the most hawkish men in Washington. He sends Hellfire missiles like the rest of us send email.

Obama will never go against the security state. He is the progeniture of the security state.

His belief is that if we wish to avoid large-scale wars, then some people must silently disappear, or be quietly erased from the sky.

Is he wrong? I don't know. It may be lesser of many evils. President Obama is strategically brilliant. Is he going to condone someone who endangered his entire philosophy of national defense?

No way.