skysight-inc/HackerNews huggingface dataset:
Op here.

> Do any ad blocking tools aggregate the total estimated amount of ad revenue that I've prevented across all sites that I block ads on in, say, the past month, or year?

I'm sure there's a programmatic way of finding that information, but one could plausibly create a tool that guesses an ad spots CPM and then displays that information.
Heartbleed bug infected more government computers than previously disclosed
I assume you mean Cordova?

https://cordova.apache.org/
Your definition of "randomness" is interesting (but classifying it as a problem is misleading). Of course, if you don't have profound knowledge/skill of a game and you're not able to evaluate moves, their outcome will seem random just because you're ignorant of them. That's exactly what differentiates good and bad players! If the game were not random for newcomers and they could predict the outcome of every move, they would win or lose solely based on starting conditions (i.e. the game becomes perfect play tic-tac-toe).
Perfect thanks for your attention to this issue.
This article looks to me like a list of personal preferences presented as facts.
There's much more depth to language design than what the author presents - a checklist of must-have features that are "obviously better".
> Sounds pretty much the same as the AAP advice, just more cynical.

The fundamental difference is the inclusion of "guided" vs "unguided." There is this implicit assumption that "screen time" means "without continuous parent interaction" because our conversation is colored by the early 90s and television. The AAP advice doesn't differentiate. There's also a strong scent of "excluded middle" in your argument. Two 30 minute sessions of screen time, guided by parents, with programming specifically and scientifically designed for that age bracket is a hell of a lot different than parking your child in front of a television for 2 hours while you answer emails.

But even if we ignore that, 24/7 parenting presence is the province of the ultra rich, and often even then the province of women delegated to full primary caregiver status. So smug it up, friend. It's simply not economically possible for many people. You're still just another maybe-parent judging people on the internet.

I'll listen to my pediatrician and consults, thanks.
Another "Go isn't Haskell/Rust" rant. I agree Go lacks macros/templates/generics and should fix at least one of those, but mostly this is a bunch of whining wishing that Go was Haskell or Rust.
SQL was the query language of the first major commercially successful RDBMSs (from IBM, who developed the language, and Oracle) -- which weren't the first two RDBMSs, and were arguably successful for reasons largely unrelated to the query language chosen -- and became the de facto standard because of that. So, yeah, I can see the "historical accident" there.
http://nil.csail.mit.edu/6.824/2015/schedule.html
MIT distributed systems course is pretty good IMO.
You don't even need to go all the way up to medicine. According to US News and Report "Best Jobs"[1][2], median salaries for developers in San Francisco ($114,400), ostensibly ground zero for the "shortage", are only a whisker higher than they are for dental hygienists ($112,970) and are considerably lower than for registered nurses ($127,670).

[1] go to US News and World Report "Best Jobs" and drill down by salary and region. Alternatively, you can go to the BLS site - which is what the US News numbers are based on.

[2] I'd also like to acknowledge that these numbers "seem" low to me. It's based on BLS data by region, but dev salaries seem higher than this in SF.

I've posted this on HN a few times, and I've realized that I need to qualify this with a few statements.

I have no problem with nurses earning higher salaries than software developers. It's a difficult and vitally important job and nurses deserve their high salaries and high scores on surveys of professional respect.

Yes, programmers have more upside, but check the BLS directly for higher percentile salaries. It isn't until you get to the 90%ile for devs and nurses (in SF) that the devs earn more, and even then, it's only by a whisker. There are also lots of downsides - age related employment issues can get pretty bad for software developers. I do think that nurses have better job stability, experience few age-related employment issues in middle age, and may actually have better job flexibility (they can't wander off and get a cup of coffee whenever they feel like it like most devs can, but many nursing and medical specialties have remarkable options to scale back on work for a period of time, such as having a kid, without severely compromising the long term career path).

Another complicating factor - anyone who reads a book on PHP can call him or herself a "software developer" (though BLS stats base this on people who use the title or something similar on a tax return, I believe). Nursing, on the other hand, requires a degree and formal licensure. So it's not quite apples-to-apples. Then again, we separate out physicians from nurses, whereas we include very high salary devs in that number, so again, it's complicated and difficult to make these comparisons.

Also, these are numbers for San Francisco - nurses do not out earn developers everywhere. However, the higher concentration of devs in SF/Silicon Valley could skew the numbers as well.

I'll stop here, and simply acknowledge that interpreting this data is certainly more complex than simply listing some medians. My real problem is that most analyses of why group X isn't going into profession Y almost never consider the possibility that this may in fact be a highly rational response to market signals. This isn't the only factor, and the social issues NPR mentions are highly relevant. However, we really do need to explore the extent to which a preference for law, medicine, nursing, pharmacy, dentisty, or even dental hygiene over software development may be highly rational.
NASA, Google unveil a quantum computing leap
I enjoy reading on distributed systems, but does anyone have suggestions for practical blogs/books/articles on the subject with directly applicable information?
They're talking about the compiler and the language spec not Go code.
Agreed. I foresee a great future for Rust, and also a great future for HN posts in the form: "I know I'll get downvoted for this, but Rust is a terrible language because it lacks the following features..."
Sailfish OS is a decent alternative - has been ported to several different phones, uses a modern software stack (Qt/C++/Python 3/Wayland) and is decently popular in some regions (the Jolla phone outsold the iPhone 5c when both were released around the same time). Unfortunately, Jolla's future is looking rather uncertain now.
OP here.

Whats your motivation for disabling javascript? I could create a javascriptless-version of this, but would you ever consider supporting/tipping a publisher via it?
He was looking for an off site backup meaning all of his current backups are at a single location. You need redundancy in your offsite backup (or have multiple) otherwise you may have to use it one day and find the drive has died or who knows what else.
Nothing is harmless. It's all shades of grey. And you won't be able to smoke everywhere. That ship has sailed.

"Smoking everywhere" didn't bother people until others suggested it should. Its just interesting...
Regardless of the corporate claptrap, if we give Nanobiosym the benefit of the doubt and assume their geneRADAR platform does advance the state of the art in qPCR, microfluidics, and point-of-care diagnostics, what might that advance be?

It may have to do with how much blood they need for each multiplex test. Clinical qPCR diagnostics need at least 5-10 uL of blood for each test (ballpark minimum). A finger prick or dried blood sample card [1] may provide enough DNA (human or pathogen depending on the test) for one or two of these tests, but not more. To run 100 or 1000 tests in parallel, a lab would need 5-50 mL of blood. Easy to get from a venous blood draw but not easy in the field.

So perhaps Nanobiosym is developing a reliable method purifying DNA from blood and running multiplex qPCR at nanoscale volumes, and possibly enriching the purified DNA first for particular pathogen DNA sequences with a non-qPCR method. The capability to run hundreds of qPCR-based diagnostic tests in parallel from a single finger prick of blood would result in significant improvements in clinical convenience and reagent cost-savings.

It's an interesting challenge: in a person who is HIV positive but hasn't presented with AIDS, how many viral genomes can be expected to be found on average in a single finger prick of blood (viral titer)? It could be on average only 0.001 - 1 genome [2]

[1] http://www.spotonsciences.com/dbstechnology/

[2] "If a subject has a high HIV viral load (for example, at least 1 ,000 copies/ml plasma), this may indicate treatment failure, i.e. that the virus is replicating and the disease may progress more quickly. If HIV viral load is low (for example, less than 1 ,000 copies/ml plasma), this indicates that the anti-viral treatment regimen is effective, i.e. that the virus may not be actively replicating and the disease may progress more slowly."
- http://www.google.com/patents/WO2014140641A1?cl=en
> Just look at the comments on any FirefoxOS thread -- lots of voices saying "why bother" since the top two are so heavily entrenched

I've noticed that too. Imagine if Torvalds, GNU, or the Mozilla team (to name just a few) responded that way. However, it's possible that they faced just as many naysayers.
Except from the very first day, the declared final authority falls at my desk, and I am a hardcore inclusionist. So no, it won't be making that mistake.
1. Take who the client is, think about how much I like the job, how technically hard it is, how long I'd be at it and the deadline they want and a few other variables then pick a figure from the air that seems good.

2. Word of mouth or chatting to people in person.

3. Fuck no. Faster for me to build a custom site than to wrangle with someone's theme that's been built for the lowest common denominator.

4. A good SEO setup is included in the cost, but I don't write the headlines, meta desc, etc. If I am, that's extra.

Agency for 2 years, Freelance for about 5 in total.
Extremes Push Us to Be Better
In relation to the blog we're discussing, Javascript is an excellent example, since one of the blog's points is that we shouldn't allow Go to become yet another Javascript.
Peter Thiel ups stake in Lystable
How to Make a Drum
Just because you create something doesn't mean you deserve to get paid for it. You have to create something people actually want to pay you for. And if they do that, then getting paid shouldn't be a problem, should it?

More importantly: just because I look at something doesn't mean I should have to pay for it. You can't know if an article is crap until after you read it. That's the nature of dealing in information -- you can't sell information without first giving people something valuable for free and building trust. If you violate your customer's trust, you can no longer sell information.

That's the state of internet advertising today.
Nothing is harmless, not even water. Dose matters.

Let me illustrate what I mean:

> "The estimated lower limit of a lethal dose of nicotine has been reported as between 500 and 1000 mg."

The highest commercially-available concentration of nicotine in ready-to-vape e-juice is 36mg nic/ml. This is considered extremely high nic, and is rarely purchased anymore. So, if you drank 14-28ml of this juice straight from the bottle, that might be a lethal dose (typical bottles are 15-30ml). I can think of several substances you likely have in your house today that have similar levels of toxicity.

My e-cig is loaded with 1.5mg/ml or 0mg/ml juice depending. I vape ~3ml/hour at full-bore. If I absorb only 50% of the vaporized nic, I am releasing 2.25mg of nic into the air over an hour. At 2 puffs per minute that's 0.02mg per puff, distributed over the volume of the vapor cloud.

If you walk through my vapor cloud on a sidewalk, your nic exposure is truly insignificant.

I -- and all friends I have who also vape -- make it a point to not subject others to our habit, out of simple human decency. But let's be real: you're far worse off walking by an idling car than you are walking through a single vapor cloud.
Yes I know, not complex, not novel, etc. First app built using Clojure at any rate.
Thanks guys. Didn't omit it intentionally and makes sense to add it. Was just trying to be concise with the title.
It's a fairly unobtrusive notice at the bottom of the screen. Screenshot: https://www.evernote.com/l/ABCw8ehFbgxMN6GYJ-RlacMysNSk3Iew0...
too bad she starts screaming "oh no a problem!!"

and panics

Not a good role model.

Same with Caillou, poor guy is too depressed...
I was measuring most popular by the reported sales and market share. I don't know what other definition could apply. I too keep hearing, mostly on the internet, that nobody uses them, but numbers are numbers.
Related: The software's author's original post: https://www.agwa.name/projects/git-crypt/
Thanks for breaking down each step in so much detail. Is there any value in going the "give the whole thing away for free" route? I have seen a few folks do this (http://gameprogrammingpatterns.com/)
Problem is Microsoft will likely abandon Cortana before very long, like they've done with SO many of their products.

Plays4Sure, the original Surface, Silverlight, I could go on. MS has no stomach for long-term commitment to their non-core products, and as such I'm always counting down the days till their latest innovation/copyvation gets the ax.
Actually your distance implementation is a good example of needless
stuffing of expressions into a single function.

Many times you don't care for the (costly) square root, so a
distance-squared function can be useful.

Multiplying x by itself ("squaring") can also be a useful function
that is used a lot.

(defun distance (x y) (sqrt (distance-squared x y)))
(defun distance-squared (x y) (+ (square x) (square y)))
(defun square (x) (* x x))

In the same way that we can decompose our code, we can also decompose
the concept of "operator overloading": it gives you is the ability to
use one-letter (1), fixed-arity and precedence-following (P), infix
(I), operators for your own or someone else's operations (G).

In languages that support 1PI properties, you'd often overlook such
decompositions because it's quick and easy to write sqrt(x * x + y * y). To
read it, also, but then you find yourself doing more and more complex
calculations in-line. Reading suffers. You may end up with something
that's worse than the corresponding code in a language that encourages
defining small functions instead. (Lisp, of course, lets you use any
combination of these properties, but the latter style is the one
normally used.)

Yes, this is a Go thread... but I'll leave it here anyway.
The FDA ban that they are trying to push through grandfathers in tobacco companies, so if they can generate enough scare and the ban succeeds they will make a TON of money.
Congrats and keep up the good work!
Even if its not that. It still doesn't mean - "Blows entire salary to smithereens'. Basic knowledge of savings and investments will put you ahead of bulk of the crowd out there.

As an Indian, I don't know much about the US market. But you guys still have index funds, Roth IRA, IRA and real estate to invest in.

In India even cab drivers who made bad real estate decisions have typically reaped X00% returns. People who made intelligent decisions are already retired. Many programmers in early 90's and even 2000's I know are already make big money in rents. And of course that doesn't mean every body did that.

When it comes to savings and investment there really is a binary crowd that I've seen. The first crowd says its just not possible and doesn't even try, the other crowd tries and some how makes it to be known as those "1 in 1000".
Very exciting announcement. I never quite understood all the criticism and doubt of DWave. Do people think Google wouldn't do due diligence before investing hundred of millions of dollars in the tech?
Anyway, happy to see this announcement and looking forward to hearing more in the future.
Wilson X Connected Basketball Teardown
"you need to throw yourself on the sword to avoid hurting others"

Like I said, there are possible extremes, but in essence, yes.

I believe that love is characterized by sacrifice.
I'm in Atlanta and we've seen the trucks out laying fiber already. I'm hoping for the end of next year.
e-cigs do not confer a smell to walls or clothing. That's one of the draws for smokers.
That's okay. Stolen plates can be on the list too.
Great show!

Just watched it the other day, very entertaining and makes the viewer think by themselves.
Then get editing.
Ok, I've got it now :)
All the best to Influx team. I see a good platform strategy here.
Bloc's weekly code puzzle: Don't eat the last cake
That's nice, but doesn't change the fact that most people don't use Bitcoin.
Software does a first pass through the stories and reviewers look at the rest. "Reviewers" means moderators and a small number of users. Our plan is to open story reviewing to the entire community, but there are some design challenges to solve first. I like the idea of making it a new way of earning karma, because it's both work and community service.

Re criteria for filtering stories: karma isn't a factor; past submissions are. A downside of the latter might be a rich-get-richer effect, but we mitigate that by looking for any earlier submission of the same story and picking that one instead. We don't advise about timing; in fact we randomize the process to reduce timing effects.

We mostly don't send repost invites anymore, but rather re-up the original post by rolling back its internal clock and giving it a random placement near the bottom of the front page. This guarantees a few minutes of community exposure, and regular upvoting decides the rest. On the front page, we display the re-upped timestamp, not the original timestamp, because otherwise it's confusing—only the re-upped time makes sense relative to the other stories on the page. But the original timestamp is available on most of the other pages that list the story, like /submitted and /from, and the discrepancy is temporary, since eventually the two timestamps converge.

The reason we switched from reposts to re-ups is that HN users are averse to duplication. I trust that the programmers among them hold their code to the same standard. We do still send emails when it seems important for the submitter to know that their story may still make the front page—mostly for Show HNs, like this one.

All of this is the latest in a series of experiments we've been running, whose goal is to fix the problem of good stories falling through the cracks on HN. Earlier posts about this, for anyone who wants more background:

https://news.ycombinator.com/item?id=10742610 (more recent, but might as well keep this list up to date)

https://news.ycombinator.com/item?id=10537417

https://news.ycombinator.com/item?id=10395389

https://news.ycombinator.com/item?id=9866140

https://news.ycombinator.com/item?id=8790134

https://news.ycombinator.com/item?id=9828818
"Faster" was not even close to being a solved problem when practical TTL maxed out at around 25MHz and ECL needed its own air conditioning plant.

USB 3 runs at low microwave frequencies. There's a lot of engineering between that and RS232 running at a few kbps.
I am of the opinion this exists to screw "the little guy" - becuase few employees who leave companies have the upfront cash for both options and taxes.

This allows the company in question to effectively keep many shares/options that are given out to employees who were lured into the company with the "you're an equity partner!" line... only unicorns will pay all those little employees for the most part.
The "right" way to do this (edit: this is essentially assumed by the article, so I'm not contradicting it) is to build static sites and use JavaScript to pull in any dynamic information. You run data services that output JSON, then the JS on the page calls those data services and renders the views.

This still allows you to reap the benefits of static content (namely CDN distribution / caching) while still maintaining some dynamic content.

But basically, you do it this way to avoid pulling data that isn't user-specific from the database. It's far more efficient to build a header + page + footer once at build time than to have every client have to do that on access -- even if you have 100+ variations of your site that need to be compiled and updated on any change in the shared content. Storage and compute resource are trivially cheap if they don't scale exponentially with number of users.

Yeah, it's more work for your developers, but it saves your DBAs a LOT of work by reducing the volume of data served from the database. And at the end of the day, it's full-stack effort that counts -- I'd rather have my developers spend 2x the time to build a system than have my DBAs fighting fires because the site went down. With a static site, you can set it to read-only mode if the traffic gets to be too much, and the static content will be handled by the CDN (which can almost certainly handle any load).
Isn't it a different situation, though? Often companies move legal jurisdiction to save money on taxes, while leaving their executives, warehouses, assets, etc. in their original locations. In this case you're depriving the original location of the tax base while still consuming the same services.

If you as an individual want to physically move yourself to another jurisdiction to avoid tax liability, that's a different matter. You're then consuming services in the state that has opted not to tax you as heavily, presumably at least partially to draw you and your money to that locale. You would also then live there and spend money, bringing benefits to the local economy.
I don't disable javascript. Just Javascript (and most resources) from 3rd party domains. I didn't come up with the idea, there's a browser plugin (uMatrix) that does it for me. And I selectively re-enable by domain or resource type. I like it because (1) it blocks just about every annoyance on the web and (2) it means that when I visit a webpage, the number of 3rd parties that the information about my visit is automatically leaked to goes down. It's like automatic blocking of ads, social buttons and just whatever new unpleasantry thing comes up next.

For example, this is what uMatrix displays on the demo:

https://i.imgur.com/0mtkpXY.png
It does have a huge collection of bad jokes, which is a draw to silly people like me! You can even ask it for categories like "tell me a science joke".
I'd utterly forgotten about house rules, but you're right, they're infuriating. The combination of not auctioning off properties when passed up and free parking make games go on forever.
FxOS uses an Android kernel: https://developer.mozilla.org/en-US/docs/Mozilla/Firefox_OS/...
I think many teams end up chasing the wrong metrics - data driven at the expense of UX. I'm ready to pack up and call it quits on Twitter.
> E.g. you'll want a "match" operator. And then that means you need all statements work as expressions. And you'll have to change how zero values work, which are pervasive throughout the language.

You don't need to make everything an expression for pattern matching to work. See Bjarne's C++ proposal: http://www.open-std.org/jtc1/sc22/wg21/docs/papers/2012/n344...

You might have to change zero values, although you could make algebraic data types all be nullable if you wanted to avoid doing that.
Tax lawyer.

Call up Orrick and ask for startup advice - they will direct you to the right person.
YC Arbitration List