skysight-inc/HackerNews huggingface dataset:
What's the point of

GetCoordinates(out var x, out var y)

over destructuring assignment like

var x, var y = GetCoordinates();

the former looks completely backwards.
To deploy this in a real world scenario seems implausible to me. You would need specific models for every person, laptop and router combination, as the physiology of the hands, the gestures when typing, and the location and power of the laptop's and router's antennas can all be different.

The only relevant attack could be to train on a specific target (person+laptop+location) for a given amount of time to achieve high accuracy, but to do this you already have to know what the person is typing...
With steganography [0], you can send encrypted messages embedded in images. Sending normal looking pictures is not suspicious (at least currently, for some definition of normal).

[0] https://en.wikipedia.org/wiki/Steganography
It's something of a relic of the resurgence of Puritan-esque positions from the 2nd Great Awakening. You get the abolitionism and the women's rights, but you have to take the prohibition and the frowning and finger-shaking at anybody that's trying to enjoy themselves along with it.
At least in Germany, coming from the leading party[1] and pushing the official party line, the minister is anything but rogue.

The leading party (CDU) even has a sister party (CSU in Bavaria) that is even more of a law and order type. They have way more extreme ideas on how a state should be able to control it's citizens. But even the moderate left SPD (in coalition with CDU as ruling parties in Germany) have their flavor of hawks.

Right now it seems there is no powerful reasonable voice for freedom in Germany - at least in the higher ranks of power. But maybe this last sentence is just my selection bias.

[1]: https://en.wikipedia.org/wiki/Thomas_de_Maizi%C3%A8re
I say the actuarial risk of dying from terrorism in Europe is very low. Everything else is emotion and irrational fear, which as others pointed out, is the aim of terrorism. If you don't believe me, and you think the mortality risk is high, please get in touch; I'll sell you an insurance policy.
Isn't Unity stuck with C# 2.0 ?
Same here, plus I think the parent brakes are noise, can the compiler just know that the switch statement ends on last case?
Using light to control genome editing
Previous discussion here:

https://news.ycombinator.com/item?id=12353957
Does the snark mean you don't have an actual argument supporting the 'axiom' (really just a premise) that "terrorists will take over the world"?

You can't avoid the need to prove your premises by calling them 'axioms'.
In Idris, there are functions `believe_me` and `really_believe_me`, which assert things to the compiler. They're generally only used for FFI code, or for extremely tedious proofs.

If you wanted to prove that a list was sorted, you'd write another datatype:

IsSorted : Ord a => List a -> Type

which represents the proposition that the input list is sorted. You could encode this by requiring that any new element in the list is either the first element, or less than or equal to the previous element. Then, your sorting function could return a dependent pair:

(l : List a ** IsSorted l)

which can be read as the list, accompanied by a proof that it is, in fact, sorted. Since your `IsSorted` type requires that the list is sorted, via construction, you won't be able to supply the output of the function unless your code is correct (or you use `believe_me`!).

The compiler doesn't generally come up with counterexamples for you; with this style, if the proof isn't complete, it won't compile.
The final item is (almost) already a thing: http://www.cs.iit.edu/~xli/paper/Conf/Frogeye-info14.pdf
"Terrorists that we brought to country hurt you so we have to hurt you back to compensate"

That's how it goes with politicans for the last 15 years.

I used to be wanting interplanetary travel, now my bar is much lower, I'll be happy enough extracting my revenge.
> If we continue policing as we do now, terrorism will increase, up to a point where the terrorists take over and are the new rulers.

Are you seriously expecting that ISIS will take control of France?
It maybe wasn't clear, but I was referring to the parent's point about verbosity when using the 'old' Tuple class.

using Complex = System.Tuple<double, double>;

is less verbose than

public class Complex
{
public double i { get; set; }
public double j { get; set; }
}
that would make sense...
Reading the sources to that, it seems the issue is extremly unclear. The big question is if you need additional copyright permission to lease out hardware that include software.

For example. A car rental service buys a modern car that has software in it. Does they need additional copyright permission on top of the purchase in order to lease the car out?

A taxi driver buys a modern car with the intention to rent out his service with the car. Is additional copyright permission required?

A school provides students with access to the school computers. Is that conveying a copy of software? What if its "open door day", where the public is invited?

A public library want to have public available computers. Are they conveying copies of software through that?

If you looked at WIPO, it explicitly say no. If you looked at Information Society Directive 2001/29/EC, they explicitly say yes, under the condition that the offer is directed to the public. If you looked at the court cases that has interpreted those texts, then they are inconclusive.
Nonsense.

Accounting for all deaths together is a great way of losing focus on each problem.

Drownings account for roughly as many deaths as police in the USA. Should we seek for different, specific solutions or treat all deaths as if they were the same, losing touch with the real topic?

Terrorism is a deliberate attempt to destabilize the state and must be fought differently with respect to, say, flu.
Yes, it's a lot of papers, this might help people keep on top of the most important ones (though it works from the top of the queue, and not from the bottom up) http://www.arxiv-sanity.com/
I'm sure Donald Trump said that the other day...
Voice Recognition Software Beats Humans at Typing
Israel deploys automated military robots
We are proposing laws we would normally not consider. Destabilization successful.
> This would put an end to filler-based journalism.

No it might put an end to the filler-producing journalists, the so called journalism would still get produced, albeit by a bot.

The real journalists (in terms of a better differentiation) would then be even more drowned out in an ever growing dessert of CGH (computer generated headlines).
Balls Falls, a fantastic unique two finger game
how do we know similar acts
did not take place??

We are pretty sure that many pre-democratic changes of political power did come about in this way. Revolutions and other political power-struggles have been studied very carefully e.g. [1], the Marxist tradition is pretty full of such studies, e.g. [2, 3].

but that's still the case today, no?

Yes, precisely because of the intense counter-measures taken to prevent AIDS from spreading further. Need-sharing has mostly disappeared, at least in western Europe, because taking Heroin has been effectively decriminalised. Moreover, free Methadon substitution for addicts, and the provision of free needles (and space to shoot up) are all reactions to the AIDS epidemic.

So the fact that "that's still the case today" is a great success of not going whatabout-flu-and-traffic-deaths when AIDS arrived.

[1] E. N. Luttwak, Coup d'Etat: A Practical Handbook.

[2] Võ Nguyên Giáp: People's war, people's army.

[3] S. Alinsky, Rules for Radicals.
> writing Chrome app

Note that Google will stop supporting Chrome Apps in 1 year or so.

http://blog.chromium.org/2016/08/from-chrome-apps-to-web.htm...
Apart from the depression other people mention, how do you do with problems on sites like HackerRank?

Personally I can not take coding problems in interviews that seriously. Surely, it seems to me, the point is showing off your thought processes, not actually solving the problem. Solving the problem might be a matter of luck - sometimes you happen to try the right approach, sometimes the wrong one. Or even having heard about some particular algorithm is luck, nobody can know them all.

One perhaps slightly more realistic variant I have seen was when they gave me the specs for an algorithm and I had to implement it.

Probably many interviewers see it as a "solve it or bust" thing, but then it is their loss.
The former works with pre-tuple out-parameter-based API e.g. Int32.TryParse.
What original title? The title was "Blackbox is a new shipping company from the creators of Cards Against Humanity".

So someone breaks the rules to provide a less descriptive title. Must be the silly season on HN.
The New Stack, Hybrid Cloud Providers and Machine Learning
So ... enough reason to start worrying and set-up counter campaigns ?
I think you described how modern journalism works. Except skimming Wikipedia is often optional.
I did, and it helped more than everything else i tried so far.
> Devices like Roku could do this too and sell the data to Netflix.

Or allow studios to block playback if more than x people are present, unless you fork over for a "broadcast" license...
Wow... And I thought Microsoft used questionable business practices...
Maybe the former method would make more sense to use if it were HasCoordinates and returned a Boolean?

This way you would get a Boolean if the coordinates exist and would not have to perform validation on the out variables.
I was thrown by the first one you pointed out too, I'm still not sure I understand it.

The page said for type patterns it will "test that the input has type T, and if so, extracts the value of the input into a fresh variable x of type T", so if o is an int it'll be extracted to a fresh int i with that value

But the out syntax in TryParse isn't the new one they mentioned, it's the current one that requires predeclared variables - to be new it'd be out int i or out var i. So i is already declared as an int before this code example? In that case how can the first bit work? Does it not create a "fresh variable" if there's already one in scope with the desired name and type? That could be quite confusing, usual behavior is to compile error if an inner scoped variable conflicts with an outer one, I'm not sure I understand why this should be different.
I know a few people who did Qt wrappers for their websites and sold them as native apps, because some big enterprises only installed old IE versions.

Installing a new browser wasn't allowed, but installing these wrappers that prevented the use of any other website and most other browser features, was okay.

With Electron this is even easier.

Also the "Web-Platform" can now do most of the things others can do too.

90% of all things people want to do with apps (mobile or desktop) is already possible with a web-app. If you need more, you can do a browser extension or an Electron app.
Even if this is true, and terrorism threatens the existence of the state, states have no right to exist. New states often come into being, and states often stop existing (East Germany, USSR). This isn't inherently good or bad. There are ethical rationales for opposing terrorism, but defending the existence of particular national governments isn't one of them.
Recovering Atari ST ASIC Designs
I agree it's definitely easier to do - and obviously already happening in this context. Also billboards that use Kinect CV to record emotional response. [1]

I was just intrigued by the perceptions around this - people often have an instinctive strongly negative response to the idea of pervasive face recognition but I'm not sure they would feel as unnerved by the presence of a wifi network with this sort of "surveillance" traffic running through it. Maybe they would.

[1] http://theconversation.com/now-advertising-billboards-can-re...
Qt does look like crap on OSX unless you reskin all of the widgets like QtCreator does.
Yes I do. Let's not forget that ISIS almost managed to take over Syria and Irak, what makes you think they would not take over France if the French let them?

A hand full of socialist revolutionaries took over Russia, and ruled for nearly a century.

Francisco Pizarro with took over the Inca empire with just 168 men, 1 cannon and 27 horses! The Inca empire was one of the largest seen in human history at the time.

Actually a handful of revolutionaries took over France in 1789.
Yea I can see usage for big shops like wallmart etc where its next to impossible to find something if you dont know the store. Image if these where available for each area, and you just put in what you are looking for and it guides you to the correct section.
Git Undo
people capable of secretly building exploits alone in their bedrooms at night (probably committing a crime)

No, that isn't how exploit research works. I don't understand why one would think that writing exploits is associated with being a criminal.
Please don't start on AIDS, you can find studies that say one thing and the other about which population is more exposed to risk. It's really far from trivial and they already have been several comparatives critical studies about theses studies.

Only 2 fact are undeniable:
1.AIDS can biologically affect anyone even if odds are low
2.If you use condoms (before you and you partner get tested), you'll never have to worry about it.

Otherwise is just betting with odds and trusting strangers, do as you wish but don't complain later on, nor shall you encourage others to be careless.
It's Always Sunny in Proxima b
It is easier to find something to blame then actually taking steps to avoid these attacks.

As far as I remember the Police already had the people behind the attacks on their radar, but they didn't do anything.

Being able to decrypt the messages wont help if they do it after the attacks happened. Like the FBI vs Apple? They knew the guy, they were following him. And did they do anything? Nope.

And what does it matter, if they go through with this? Criminals, terrorists will create their own encrypted channels.

It's a never ending battle and the only ones loosing will be the rights of the civilians.

And even if it will help to fight terrorism and save everyone without firing a gun, what's the promise that these tools, these backdoors wont fall into wrong hands?
What's the promise when a dictatorship rises in one of these countries, they wont be able to use it for bad things?

Will they close these doors after they won the war on terrorism?
It feels like a few of those could actually be prevented with different language features/by the compiler:

- `null` related errors: through algebraic data types like `Maybe` in Haskell or `Option` in Rust

- Unused arguments in string formatting methods: I don't get why the compiler doesn't see this as an error
I have a mixed feeling about that incredible progress in modern CPUs branch prediction. Don't they just use idle execution units and run both branches in parallel behind the scenes? It looks great on microbenchmarks when there's a bunch of idle execution units to use, a memory bus and caches are underused. It may not perform so well on real load when there's no idle execution units available to use for free, and memory bus and cache lines are choking on load.

Is it somewhat similar to these two examples?

> If it owns that line then CAS is extremely fast - core doesn't need to notify other cores to do that operation. If core doesn't own it, the situation is very different - core has to send request to fetch cache line in exclusive mode and such request requires communication with all other cores. Such negotiation is not fast, but on Ivy Bridge it is much faster than on Nehalem. And because it is faster on Ivy Bride, core has less time to perform a set of fast local CAS operations while it owns cacheline, therefore total throughput is less. I suppose, a very good lesson learned here - microbenchmarking can be very tricky and not easy to do properly. Also results can be easily interpreted in a wrong way

http://stas-blogspot.blogspot.com/2013/02/evil-of-microbench...

> On current processors, POPCNT runs on a single execution port and counts the bits in 4B per cycle. The AVX2 implementation requires more instructions, but spreads the work out across more ports. My fastest unrolled version takes 2.5 cycles per 32B vector, or .078 cycles/byte (2.5/32). This is 1.6x faster (4 cycles per 32B /2.5 cycles per 32B) than scalar popcnt(). Whether this is worth doing depends on the rest of the workload. If the rest of the work is being done on scalar 64-bit registers, those other scalar operations can often fit between the popcnts() "for free", and the cost of moving data back and forth between vector and scalar registers usually overwhelms the advantage.

https://news.ycombinator.com/item?id=11279047
It actually would! Someone posted this on HN recently: http://www.effectgames.com/demos/canvascycle/?sound=0
I think that calling this "whataboutism" is wrong. It is good to weigh the actual risk something presents and putting it into perspective.

The truth is that terrorism is a minor threat compared to others in our life yet a disproportionate amount of effort and fear stems from it. Your assertion that they would eventually take over is an overstatement. There have been countries under occupation with strong resistance movements that were orders of magnitude more active and disruptive and had far more popular support than the terrorist threat we are facing now, and those movements by themselves did not manage taking over, it seems unlikely terrorists would manage this now.

> (Compare for example with the reaction to the AIDS epidemics in the early 1980s. The lazy whatabout-ist could have said (and indeed did say): "Oh AIDS just affects a few gays and needle-sharing heroin addicts, whatabout the orders of magnitude more who die of the flu and cancer, no need to worry about AIDS".)

In a way, this example is also flawed. If, a comparatively similar amount of effort and research would have gone into developing cures and treatments for the other diseases, the benefits would have also been, probably, order of magnitudes greater. Would that not have been a logically superior choice?

On the other hand, I find very interesting you approaching this as a disease that has to be controlled and quarantined so it does not spread, it might have some merit. But we are not proposing ignoring the issue, but acting in a way proportional to its actual threat level, some way that the costs of acting are balanced with its actual benefits. I will give you that terroristic attacks are most costly not because of human lived but because of, well, spreading terror. I we could all see the threats as relatively minor to other threats, maybe their effects would be diminished. I think that they would loose their effect if they become common enough, because people get used to them and continue their lived, same way people continue their lives in war zones.Then, the precieved risk(or at least, the fear of this risk) would be smaller even if the risk itself would be higher.
A similar concept was used in Jack of Shadows by Roger Zelazny, but with fantasy elements.

https://www.amazon.com/Shadows-Rediscovered-Classics-Roger-Z...
Show HN: Android: Local Question, Answers and Discovery
CSharp once again showing it is the best language in terms of features and improvements. Great job all round by the designers.
Writing a chrome app to save you from chrome's bloat seems like a dead end. Just write a native client, or at least java/c#.
Work Space Ergonomics
I was not addressing the question of whether the axioms are true or not, although I have an opinion on this matter. I was addressing lazy "whataboutism".

You still have not given an workable account of what you would accept as "proof". I imagine that that's because you have not actually though about this issue.

The question of regime change has been thought about deeply for millenia, but there has never been a "proof". Instead, those who think about politics usually look at the history of regime change. This is not because they don't want to have higher standards of evidence, but because nobody knows how to do better.
No support for ES6?

That's what everyone's using nowadays...
You're pretty opinionated for someone who doesn't seem to understand a lot of things ;)

1. Hitting refresh doesn't break everything. It resets your current state to the default. I default to the url combined with locally stored state, so you will lose text in an input field, but not much else.

2. I want a website not an app, thank you very much. I'm really just displaying text. I don't need to download an app for that when I have a perfectly good browser on every device I'd like to read from.

3. Maybe it's over complicated to you, but the same function that renders on the server is what I use to render on the client. Zero difference. It's not a choice I have to make so I can use either when I feel it's appropriate.
One word for you.

Manning.

If the US has that little respect for its own citizens. Why should these guys expect better treatment from rest of the world?
Yup, definite red flags.

How are you supposed to evaluate if it's worth your time if you don't know what you'll be working on ?

Had a similar interview once - the guy just wouldn't give me any specific info. Since I didn't know what the role was and I have very wide experience I couldn't target myself, in the end the feedback was that I was too vague !?
Most places I've worked there's been a fairly good idea of what I'll be doing before I start.
OpenPiton – The Open Source Princeton Piton Processor
> programming masses, some evil (bleep)

Too harsh. Logic is hard for humans. Evolution has trained us to take lots of mental shortcuts, not to be perfect calculating machines. Even the most technically competent people rely on their intuition. What differentiates them from the rest of us is that they have trained their intuition to make it more reliable [0].

It's the job of a language designer to arrange things so that intuition doesn't mislead programmers regarding the meaning of language features. Before proposing a new feature, the designer must anticipate how programmers will think about code that uses this feature, and there better not be a mismatch between what programmers think the code means and what the code actually means.

> A inherits B, if I try to actually use it as a B, it promises to work.

There's nothing wrong with implementation inheritance per se [1]. It addresses a very common use case: you have a thing Foo, and you want to produce another thing Bar that's similar to Foo, with minor changes here and there. This describes accurately how many things work in real life. However, you can't assume that Bar can always be used where Foo is expected. Those “minor changes here and there” might have rendered Bar incompatible with Foo. Hence, “inheritance is not subtyping”. As stated above, it's the job of a language designer to anticipate this.

[0] https://terrytao.wordpress.com/career-advice/there%E2%80%99s...

[1] Other than the lack of mathematical elegance, but few things are mathematically elegant in life.
Because the node.js cult have lost their minds, only knowing how to bring the kitchen sink with everything they do, and only knowing javascript.
Electron is really awesome. I wrote a rest client¹ a few weeks ago for my personal use, and it worked out really well. I saw that even the auto update² use case is taken care of.

Really awesome to make a quick app for someone who is already good in making webapps and needs the power/access/network rights of a desktop app.

¹https://github.com/S2-/http-client

²https://github.com/electron/electron/blob/master/docs/api/au...
US condemns EU over plan to demand millions from Apple in unpaid taxes
iOS only? Meh.