skysight-inc/HackerNews huggingface dataset:
Yeah, Sid is the rolling unstable. It's still slower and relatively more stable than most rolling distributions, but it's constantly changing here and there and everywhere. Using it as your main desktop machine is a recipe for trouble, especially when major changes start rolling in. The only certainty with Sid is that your disk will work a lot because of the firehose of updated packages streaming in at every hour...
I know some that serve the homeless, some that help people get over addiction, some that treat AIDS, and some that help victims of violent crimes.
Xinput is a very old, very widely used extension, and handles much more than just input sniffing. Disabling it will remove a lot of really important core functionality like setting keyboard mappings and mouse acceleration. It's also likely to break certain applications which legitimately need to capture events, like screen savers.
Why does anyone find it worthwhile to put this much effort into supporting this dead platform (PowerPC-based Mac)? Why not just let it go, acknowledge that the world has gone all little-endian, and buy a newer (but not necessarily new) computer?
Please don't create accounts to promote your publication here. Our users inevitably notice this and complain about spam.

If you'd like to participate in the community and post diverse interesting articles from many sources, including your own, that's fine. But accounts created just for submitting from one site eventually get banned, and make the community unhappy in the meantime.

Feel free to email us at hn@ycombinator.com if you have questions.
Effective Modern C++ covers C++14, and specifically points out where it differs from C++11 (I'm thinking about the discussion of decltype, here).
I was a Product Manager at Oracle when we decided to integrate Java. It seemed like an odd decision to those outside Oracle, but at the highest levels in Oracle we were circulating a Microsoft internal presentation about how Microsoft was going to use the dominance of Visual Studio to defeat competitors across the application space. So Oracle had no choice except to support Java as the alternative to Visual Studio. So Java and all Open Source support were really done only to the extent which self-interest demanded. We had floors of kernel engineers fixing Linux to make it work (it was barely functional back then.) And we coordinated with HP, IBM, Sun, Red Hat, and others so that they would encourage and pay their engineers to support Open Source. The idea that Open Source is somehow separate from business and market forces ignores its history. And the idea that Open Source is always positive is equally absurd. I've been working in open source for decades now, and the big winners are often the same rich companies which are extracting the wealth of our society - as they get software for free while the engineers provide work without getting the true "fruits of their labor". Does it make sense for multi-billionaires to get this software for free? Really, the Open Source idea is very messed up in an economy with distinct winners and losers.
I remember the age of moral panic well. It went far beyond DND. Really, they were deeply suspicious of anything kids liked enough to form a subculture around. Punk, goth, fantasy, arcade games, Star Trek, you name it.

They expected bored compliant teens they understood. Liking stuff was a subversive act.
I wonder about the legal aspects. The reuse in one set of cases may be legal, but what about the others? If nothing else, you would think that the NYT or USA Today would have a clause in their contracts that puzzles are guaranteed new and unique...
DDOSing nodes does nothing to support Bitcoin Core.

Bitcoin nodes get DDOSed from time to time-- e.g. people incorrectly believe they're the node for some service they think they can extort. Sometimes users on bufferbloat afflicted connections mistake other users fetching the chain from them as a DOS attack.

That said, since these claims that people are DDOSing "Bitcoin classic" were first made, I've had someone running a classic node-- in the hope of identifying the attacker-- which has received no attacks. I don't believe the claimed attacks are widespread if they're even happening at all.
Stock Ticker command for Slack
Yeah, I think you're right. Everyone expects a reversion to the mean -- even the batters themselves. It becomes a self-fulfilling prophecy.

But maybe it's more than that. The will power to overcome our intrinsic limits eventually runs out. We can only focus on the ball so long before our thoughts wander. And at some point below the average of our capabilities, we get tired of taking a break and start to perform again as well as we know we can.
The funny thing is that for at least some for-profits it is not a horrible idea, with no shareholders to worry about. I already mentioned the telecoms as an example in another comment.
Firefox has lost a lot of market share to Chrome (something like 30% vs. 14%). Internet Explorer has too. Considering Google only launched a browser in '08, it's pretty impressive they're at something like 50%.

Mozilla is still doing a lot of awesome stuff (web assembly, rust, servo, etc...), and I personally still choose Firefox over Chromium. As a user, I do have complaints about the direction on a number of things though.

One of the simpler things I'm surprised I haven't seen yet is a decent native text editor, considering how much relies on editing text in a browser.
The 61% and 81% accuracy is funny - try to run targeting with that!

The biggest issue with this problem is the data imbalance - how many females over 50 use apps in general compared to 20year males for example. The training data is heavily skewed, which leads to the algo learning that everyone is a single lady under 32 who make 52k/year.
Snowden is a hero to the security biz – but not for the reason you'd expect
See also scholastica (https://scholasticahq.com/) which is also around $10 per article before you add bells and whistles.
The military is just the apotheosis of bureaucracy. Bureaucracies live off of data, often to a fault, when whatever they're after can't be reliably measured.
"You are a married woman over the age of 32 who makes over $52,000/year"
> Most people agree that the Unix privilege model is a hold-over from an older time. Concepts like “binding to a lower port requires root” are warts of the original design of Unix.

...no. Privileged ports are a way to prevent an unprivileged user from turning a service crash into a service takeover.

Windows Firewall seems to sort of mitigate this by only permitting a given program to communicate on a port, but -from what my testing revealed- it does not prevent other programs from _binding_ to that port. So, I strongly suspect that on Windows systems, an unprivileged user can turn a service crash into a service DoS by racing to bind to the service's port.
I won't argue that async software thread per hardware thread style will have better maximum performance than a thread-per-request style, but I think that difference will not be material in most applications (the difference between the two styles of C++ server programming being far smaller than the difference between, say, a Go program and a C++ program), and the cost paid in code readability is pretty high. All that async continuation passing makes your code a twisty maze, and that style is fraught with lifetime problems that are the very thing most C++ haters are complaining about. In synchronous style all the allocations are scoped by nature. In async style the programmer has to assign ownership of everything to some master continuation that will delete them all in the final callback. That adds a lot of code.
That works fine when config files are simple straight forward text data. But config files can grow increasingly complex over time, and eventually become complex turing complete languages of their own.

I think it would be better to just start with a Turing complete language. I think they should use Lua. It has very simple general data structures that are self explanatory, and its very lightweight and sandboxable.

The only issue is combining config files with other programs. You don't want to strip the comments or formatting when you modify it with another program. Also wish there was a way to specify metadata, like what the possible values for a variable are allowed to be. Or descriptions and help info. With that you could easily convert config files into GUIs.
As a hiring manager, I rarely see a resume with an objective that's written to be at all useful. They usually paraphrase to "I want to earn money with my skillset (see below)." Duh.

What CAN be useful is a 1-sentence summary. "Full-stack web developer with team lead experience, specializing in real-time applications using Rails and ReactJS."

That tells me immediately how I might fit this person into my organization and gives some hints as to what to look for in the rest of the resume. An objective CAN (and generally should) be written to convey the same sort of information, but rarely is.
As I posted in a previous discussion of this two years ago [1]:

The very first comment below the article (correctly) contradicts the author's claims about SELINUX sandbox. The author acknowledges the comment, and criticizes the SELINUX implementation, but does not dispute the fact that SELINUX sandbox ("sandbox -X xterm" in RHEL/CentOS/Fedora/SL) does in fact defeat the keystroke logger attack described in the article.

[1] https://news.ycombinator.com/item?id=7607082
Are you absolutely sure? I cannot imagine a way to read your first line about literal rocket scientists in a non-hostile way.
How Do We Use Cell Phones [infographic]
Mozilla announced, just yesterday, some big improvements in the extension review process, including adding more reviewers:

https://blog.mozilla.org/addons/2016/03/04/breakthroughs-in-...
Well, ChartBoost is NounVerb, if that makes you feel better.
The C++ standards committee has started a guidelines document which encompasses the latest features of C++11/14

https://github.com/isocpp/CppCoreGuidelines
A good question (I think) would be some of the 2FA clients.
Machismo is ruining the tech industry for all of us. Equally
Thank you for the link.

> My experience is that only upgrade/dist-upgrade will prompt.
Synchronous looking programming doesn't offer any clarity for anything beyond dumb sequential requests to a single node, that nobody cares about. Try building a distributed k/v store with that.

It fails miserably once you have to deal with zero downtime restarts for continuous deployment, rate limiting, requests cancellations, waiting for one or multiple responses from multiple nodes, making more requests to other nodes just after a bit of time to guarantee latency, using a lot of different kinds of shared data, like response queues, log queues, connection caches, data caches, all used by multiple clients, while at the same time doing some synchronization of data between nodes, etc.

Anything non-trivial is impossible with threads in practice.
That's an excellent set of references. I've posted the second one to New: https://news.ycombinator.com/item?id=11230832
How does one protect the majority of users in the wide open case? For example see https://bugzilla.mozilla.org/show_bug.cgi?id=1251911 where the extension downloaded another extension and disabled the signing pref.
It's not impressive at all when they have one of the biggest marketing surfaces and budget in the world.
Show HN: ProductHunt Users Worldwide Origin Map
X86 considered harmful [pdf]
Except for "apt-get remove".
"Who will train all the NFL stars?" That's really what it boils down to. Training the million dollar gladiators for our modern society. Living vicariously through innocent children. Parental adrenaline rushes. It's sick. We should just ban it. It's worse than corporal punishment and that'll get a teacher fired but we let kids pummel each other on the field and it's fine. It's ridiculous. Those kids aren't choosing that for themselves. We won't let them drink alcohol or smoke cigarettes, but we'll let them do that to themselves to get a smile out of mommy and daddy. It's awful!

I've gone from super excited about life and the future when I sat down at my computer to pessimistic and frustrated with society.
boost is also a noun though
Yeah, so they want to make more money. Is that necessarily best thing for the bitcoin as a whole? Just for full disclosure I have my bitcoins over at Coinbase.
They even do Classilla, the latest version of which even support SHA2 certificates and SNI!
Wow. I always figured (naively) that dsubs were available with whatever (odd) number of pins you wanted.
I'm a married middle-aged man. Except single and 10 years younger. HN may be an exception; we are odd.
The roots of the Bible are much more clearly:

Romans 12

Repay no one evil for evil, but give thought to do what is honorable in the sight of all. If possible, so far as it depends on you, live peaceably with all. Beloved, never avenge yourselves, but leave it to the wrath of God, for it is written, “Vengeance is mine, I will repay, says the Lord.” To the contrary, “if your enemy is hungry, feed him; if he is thirsty, give him something to drink; for by so doing you will heap burning coals on his head.” Do not be overcome by evil, but overcome evil with good.

Christians who love the Bible know this passage by heart. Very few care to memorize the (no-longer-followed) legal code of Israel. The ignorant choose to take the Bible out of context to justify their hate. Please don't make the same mistake.
Why You Should Never Sleep with a VC on the First Date
How do I type

for src in $(find . -type '*.png')
do
sdir="$(echo "${src}" | dirname)"
name="$(echo "${src}" | basename)"
dstdir="/mnt/www/images/${sdir}"

optipng -out "${dstdir}/${name}" "${src}"
convert -scale 120x120\> "${src}" "${dstdir}/small_${name}"
done

into a GUI's "copy paste" feature?
> `/etc`? Why not `/config`?

/etc contains more than just config files so /config would be a misleading (or at least overly specific) name. If we went that route we'd need dozens of top level directories to cover everything. I do prefer OSX's more user friendly directory layout but the traditional directory structure has been around for decades. It works fine.
I think that line of arguing misses an important point.

"modern" C++ is the best language we have that holds backwards compatibility with C and old C++ and the humongeous codebase that comes with that.

For many uses that backwards compatibility is of key importance. Therefore C++ does not really have to compete with other languages that don't have that kind of backwards compatibility.

If you want to sort languages into "good" and "bad" you first have to define the use case. Most languages are best at their own respective niches. To cover a large ground, in large project C++ is often combined with scripting languages like Python and Lua to get the best of both worlds.
Usergrid: The BaaS Framework you run
Is he friendly?
There's a difference between holding christian values and acting on them. I have many religious friends in many wide and varied religions from all over the earth, and they're all great people, because the only time they'll ever even talk (nevermind act) about their religion is when you ask them to.
I think the article by Richard Samworth lays out the paradox better. The whole article is worth a read, but here's the paradox part
"
To give an unusual example to emphasise the point, suppose that we were interested in estimating the proportion of the US electorate who will vote for Barack Obama, the proportion of babies born in China that are girls and the proportion of Britons with light-coloured eyes. Then our James–Stein estimate of the proportion of democratic voters depends on our hospital and eye colour data!
"
<http://www.statslab.cam.ac.uk/~rjs57/SteinParadox.pdf>
Surely that's paradoxical!

The OP's post is an outstanding exposition of James-Stein estimators though, so thanks for the post. There seems to be lots of connection between these and doing linear regressions with regularisation in machine learning.
These statements are so cute. I can reasonably assure you that the distributed k/v store I have written in the thread-per-request style is currently out there serving more traffic than you've ever dreamed of.

As for your specific points, I disagree totally. Each of those things is easier to me in the synchronous style than in the async style. Certainly something like hedging is way easier.
There are really two parts to point 2.

2.a. is about performance. And while not specifically about C++ this article covers the main idea http://www.kegel.com/c10k.html

2.b. is about avoiding deadlocks and race conditions. Threaded programming in C++ is dangerous. For years I would have said, that I could avoid deadlocks and race conditions by virtue of being a good programmer. However, I've debugged enough of my own code to know this is not always true.

If you only use threads for data driven computation, then you greatly reduce the risks. On the other hand if you have multiple threads running around accessing anything and everything in your program then you need a lot of thread locks which is tedious to implement and not well supported in C++ (vs. say the synchronized keyword in Java), does not perform well and still it is very easy to make mistakes. The point is that there is no reason to let threads run willy nilly because you can do event driven programming in C++ (libev, libevent, libuv) and most programs (or rather most parts of a program) are not computationally intensive.

edit: Here's a great resource on the topic of threading. From the SQlite FAQ "Threads are evil. Avoid them." http://www.eecs.berkeley.edu/Pubs/TechRpts/2006/EECS-2006-1....
Data science background here. Connection made. Anything else you want?
I want a "PC student newspaper editor" and "overzealous administrator" party. So much irony
Pathology resident doing research here. Dr. Omalu is a very spiritual person and I've been impressed how persuasive that spiritual part of his discussion can be outside the scientific community. He did important work, but pushing the findings out beyond his cohort was what made the difference. I think there's something to learn there.
I do something similar, but use

aptitude -y safe-upgrade

...which is less likely to break things. Every month or so I go into aptitude to manually sort things out that have gotten their dependencies wedged.
If you roll the dice enough times, you'll eventually get snake eyes.
I meant opposition to homosexuality and gay marriage, not Christianity in general.
With regards to endianness of the web: this goes back to the original Khronos spec for typed arrays where the only view was machine endianness. At least now there are both machine, big and little endian views…

Exposing machine endianness was largely criticised by Mozilla and Opera people (AFAIK, only the latter were still really shipping on big-endian platforms). It was largely motivated by a desire to ensure WebGL could have good performance when copying data on all machines. Of course, plenty of us saw how that would end: everyone testing only on their hardware (which would inevitably be little-endian), and nothing working on big-endian hardware.

Sadly, the majority of the WG didn't really care, given the only big-endian stuff they cared about was things like TVs where they only cared about (web-platform based) widgets, and they only cared about the WebGL case, and didn't believe anyone would use them for anything else…
Pretty impressive, considering that there are presently only 1.6 million apps to choose from on the Google Play Store and 1.5 million on the App Store.

;)
I think Scott Meyers' "Effective C++" may be the "good parts" book you're looking for. As well as telling you how you should write "good" C++ it's also pretty good at explaining when you should break these rules too.
But for Servo it probably will be the only option.
I was thinking it was a Venn diagram, where none of the bubbles had complete intersection with the others.

"This bubble represents all pilots between 5'6" and 5'11" in height. And here's the bubble that represents those with 40" chests. Note how they barely intersect."
not sure why the downvotes. But do look up. The world is getting better, despite the media noise. They're just trying to drum up advertising. Most of Omalu's answers in the article are very uplifting.
Apple’s best defense against the FBI is the one it can’t share publicly
KDE Community Announces Distribution Outreach Program
I'm not sure 'true innovation' is what investors are looking for though. I mean that's what they say because it 'sounds right'. In reality they want to create a buzz and draw attention to something. I do agree that they need people, but the good ones make sure they have the right network.

I think what they do is entirely based upon intuition and ego. If it was just about making sure that things 'add up' a computer could do it and banks would make big bucks. They need to be sure that the idea really can be big in society, and that the founder is the type of person who will drive it there.
> .. It's still slower and relatively more stable than most rolling distributions ...

My experience is a "non-beta" Fedora is less stable than a "testing" debian.

> ...Using it as your main desktop machine is a recipe for trouble ...

Yes! It's a nightmare especially with Gnome Shell.

I see memory corruptions for months in Gnome windows. I wonder if it's related to Wayland stuff. It often occurs in Firefox.
Houston's perfect storm is coming. The only quetsion is when
My mom has an old PPC iBook (from 2003!). It's still working perfectly. It looks clean and white. She can edit documents and spreadsheets, check email, peruse photos. I've even fitted an IDE SSD. Why dump it for a newer 'better' model?

TenFourFox was the crucial factor - by providing a connection to modern internet - in our decision to maintain this old machine. My mom's happy, I'm happy! (And sincere thanks to "Contributors to TenFourFox.")
"... unlike the Trabant or Lada, or even a Skoda, the Tatra is pretty"

Weird - I think Lada and Trabant are genuinely smart wee cars if they're in good nick. Volgas too.
We force people to learn a new language to program, but it's certainly not English.

It's a stretch to even call some of the keywords in some languages words (car, cdr, con?). They're just tokens to feed to the compiler or interpreter, like parenthesis.

Even when full English words are used, it's rarely in the conventional meaning. English speaker or not, you'll have to learn what the word actually means in the given programming language.
Is there a more detailed explanation of this somewhere, and what range of stiffness variation can be achieved?

From what little can be seen in the video, it looks like the main spring is divided in half, and the center plane is variably tensioned perpendicularly, with the leaf springs so acting variably against the lower part of the string.
Oh yeah totally agree with the FOMO. I took it more as 'you didn't get into YC - I'm not interested'. In that case letting another investor make your decision for you seems like a pretty easy way to miss out on good companies.
You are right about the added difficulty of resource ownership in the face of asynchronous code. This is a trade off. lambda functions in C++11 can help with this. They make it possible to pass resource allocations (smart pointers) through to callbacks.
> All that async continuation passing makes your code a twisty maze

On the contrary, it gives your code clarity, consistency and predictability.

> some master continuation that will delete them all in the final callback

Even nginx in plain C is not doing that, but simply creates destructors on allocation to avoid tracking stuff manually.

Just don't jump into the first thing you read somewhere, remember one simple rule: if it feels harder than threads - you are doing it wrong.