skysight-inc/HackerNews huggingface dataset:
> Uh, that wasn't an instance field, was it? https://codereview.chromium.org/2608823002/diff/20001/third_....

Fair point, I was indeed being insufficiently precise. That code is a typical example of how const helps performance, concrete performance gains from applying const to instance fields in particular are much rarer in practice.

> It's not a bug, just a missed performance optimization. The code behaves correctly.

I think the MSVC devs classify it as a codegen bug since the cause is a logic error in the optimizer. The code does behave correctly, but it's reasonable to expect that optimization to happen, and it does in GCC / clang. My point here is simply that in this case MSVC is the outlier, therefore the example does not constitute a general argument against using const in this context.

> The underlying language reason I have for it is not something you may agree with, but it's that it Seems Wrong (TM) to me for the fields of a class to dictate how the class's instances can be constructed or assigned to.

I happen to have the opposite preference, namely that if you have constant data in a struct, it makes sense to say so at the declaration site for clarity. Regardless, it's a perfectly reasonable stylistic preference. I only argued against it because the phrase "NEVER have const instance fields. Ever." seems much too strong for what's ultimately a subjective choice. In doing so, however, I may have erred in the opposite direction and made overly strong statements myself. Mea culpa.

> It just seems like poor design to me, and it's given me trouble so many times without once actually providing me a benefit. So it's a reason. YMMV.

It's definitely a valid personal preference. When you say using const has given you trouble many times, do you have any particularly poignant example in mind?
I think it's more than that -- it likely stems from how the IT department is run at a particular company, too. I've dealt with many sysadmins that offer absolutely no transparency into their processes, and in many cases actively obfuscate it. So any attempt to take an interest seems to be interpreted as some sort of threat to their position.

Either way, this is a two-way street. And often times the culture of one group or the other gets in the way. Which is really unfortunate.
A Brief Overview of QA in Software Engineering
Russia and China Are Making Their Information Security Case
I really like Nim, it is fantastic creation. That said, I didn't use it nearly as much as I would like and people complaining about bugs are probably right. Thank you contributors for your work.

If it could carve a small use case for itself, it would help it's momentum. Something to be recognized for.
What about Bioconductor and Openbabel/Pybel?
Thanks - that's good to know! Another reason for me to try rust then ...
Tangentially related to this - what if there was a major Google information leak, and a bunch of people's lives were unleashed on the net? Think about an Android user (me), who has their 1) google searches, 2) photos, 3) voice searches, 4) location history, 5) phone calls/sms, 6) email, 7) time/date of what apps you've opened, 8) contacts, 9) grocery lists/notes, 10) tasks/reminders, 11) calendar events - practically everything about me - stored with Google. If enough people's information were released, it could be almost a social upheaval.

Beyond just keeping my data out of that ecosystem, I sure as hell hope Google has some serious talent to keep my data safe from outsiders, and insiders wanting to make a splash. I mean, I obviously trust them to some degree. But it's a scary prospect to think what would happen if an enormous trove of Google data were ever leaked.
I've had to work at start ups where I was one of the initial developers (and the most experienced in the team) so I've been forced to learn a lot about Sysadmin and design (and a lot of surrounding dev tools for instance) but all in all - knowing more about sysadmin has made my dev experience change - I think a lot more about how it's deployed, how it works in prod, how to get data to improve my code and so on.

I do feel all devs at one point should have some sysadmin experience - if not professional, then informally.

That said, sysadmin is strongly divided into 2 types of tools - configuration and code.

I love tools that can be coded (as an example - Gulp), over configuration (like Grunt) - as they generally have a lot less undocumented "gotchas" and getting started is generally a lot more simple. (I'm looking at you Webpack!!!)
RIAA and MPAA Back $25M Piracy Verdict Against Cox
How the world reacted to the first iPhone 10 years ago
Thank you for sharing! More valuable resources awaited!
Condoms are good security for sex. An enigma machine wouldn't be very helpful on the other hand.
The two hats don't fit well at the same time; 27 years of both has not been easy, but the experience of wearing each regularly is invaluable.
The lesson for me is that I should be more careful about dismissing something before really understanding and considering it.
Also, at the moment you do not get much by checking their broken DNSSEC entries:

http://dnsviz.net/d/pool.ntp.org/dnssec/
> It achieves lower costs in large part by cutting out the middle man of health insurance for basic services.

Is it actually lower cost? The cash fee for a PCP visit and what insurance actually pays are drastically different. If you're paying a membership fee just to get the same sort of rates insurance pays out at, there's no win here.

> A little known provision of the ACA makes Direct Primary Care a kind of legal loophole. When combined with a high deductible health plan or health savings account, Direct Primary Care can meet the requirements for basic coverage, thus getting you out of the tax penalty for not being properly covered.

That's not a loophole. That's "pay extra". You'd still need at least a Bronze plan, and any visits that bill against your DPC won't count towards your annual deductible or out-of-pocket caps.
there is a way to add external collaborators to groups in some fashion. I dont know how that translates to teams.

http://fasttrack.microsoft.com/roadmap?filters=

type EXTERNAL into the search bar of the link above to see the features they have been working on.

Guest group access has LAUNCHED, and there are 11 other features down in the previously launched section.
Then you have a very skewed sample set. Empirically, libertarians rate in the single-digit percentages of the population. People who conform to the libertarian stereotypes probably even less so; I'm "libertarian" because I would tend to think we're overregulated right now rather than underregulated, but it doesn't mean that I want to indiscriminately slice everything away, nor that I am permanently predisposed to slicing everything away no matter how much we might somehow slice. I'd get off that ride sooner than a lot of other "libertarians".

Personally I can't help but reading anyone trying to blame underregulation on libertarians as effectively an admission that they have run out of excuses. There just aren't enough libertarians to have that much of an effect on anything. Even "deregulation" is not generally the libertarians running wild, it's non-libertarians trying to implement a "free market", for some definition of said, but they're generally not libertarians and the same people will happily vote for crony capitalism or a ton of other sorts of regulations.
This is begging for a C++ FQA style hate blog post. Paging Yossi Kreinin? Seriously, "Delete const three times to move 53,064 bytes to read-only data segment and save 729,168 bytes of code." WTF?

[1] http://yosefk.com/c++fqa/index.html

[2] http://yosefk.com/blog/
Videos from Rust Belt Rust 2016 are now available
CSS Reset for Minimalists
>You can't run business if you don't serve your customers well.

Serving your customers well is entirely out of self interest, especially in large corporations; in fact, this is the easiest example of "every man for himself". You serve your customers well because ultimately it brings you more profit. Sure, it's not as sure sighted as screwing over every customer, but people who are selfish aren't necessarily stupid. I would argue that the very act of running a business in such a society is not only wrong due to the exploitation of workers, but also the motivation underlying (almost) every transaction in which your goal is to sell things in such a way as to get yourself the largest profit.

Of course that doesn't happen in real life. People have moral standards. I think I'm just a cynical ancom with regard to how people would really behave in the absence of all regulation. Let's not forget what large companies can still get away with today, and imagine what it would be like with anti-competitive monopolies, oligarchies, and two or three organisations controlling mainstream information sources.

So sure, your business doesn't last long because you were too obviously selfish. Your next plan of action is to pay a news outlet (or better yet, already be in control of one) to cover you. Or if you can't do that, there's still hope - you can band together with like minded people and start another business. Not without worker exploitation, of course. You need all the surplus value you can get.

I simply do not have the hope that "serving your customers well" is enough to prevent what actors in a capitalist system are truly capable of doing.

Let's not forget the sheer paradoxical nature of "anarcho-capitalism" (the inherent class system set up of the bourgeoisie and proletariat is the exact opposite of non-hierarchical relations).

I'm not really a proponent of central planning myself, so I agree with you on that.
As a grumpy evil sysadmin, I think the good Professor misses where the real disconnect is, at least nowadays: stack management.

Why do things like Docker exist? Because developers got tired of sysadmins saying "sorry, you can't upgrade Ruby in the middle of this project". Why does virtualenv exist? A similar reason.

Containerized ecosystems (which is to say basically all of them now) are really a sign of those of us on the sysadmin side of the aisle capitulating and saying that developers can't be stopped from having the newest version of things, and I think that's a bad idea.

15 years ago, when a project would kick-off, as a sysadmin I'd be invited in and the developers and I would hash out what versions of each language and library involved the project would use. This worked well with Perl; once the stacks started gravitating to Ruby and Python it was a dismal failure.

Why? Because those two ecosystems release like hummingbirds off of their ritalin. Take the release history for pip[1] (and I'm not calling pip out as particularly bad; I'm calling pip out as particularly average, which is the problem): in the year 2015, pip went from version 1.5.6 to 8.1.1 (!) through 24 version bumps, introducing thirteen (documented) backwards incompatibilities. Furthermore, there were more regression fixes from previous bumps than feature additions. You'll also notice that none of these releases are tagged "-rc1", etc., though the fact that regressions were fixed in a new bump the next day means they were release candidates rather than releases. Ruby is just as bad; the famous (and I've experienced this) example is that an in-depth tutorial can be obsoleted in the two weeks it takes you to work through it.

Devs are chasing a moving target, and devs who haven't been sysadmins may have trouble seeing why that's a bad idea.

[1]: https://pip.pypa.io/en/stable/news/
A complete dump of the data from petition.parliament.uk
I have sometimes wondered why python used 'lambda' for anonymous functions rather than just... well literally anonymous function - normal function syntax without the name. Could have been something like

`def (x,y): x+y`

This makes it sound like that was just how it was implemented. Nothing fundamentally wrong with lambda i guess
Chemical engineering, Hydroelectrical engineering, Power engineering come immediately to mind as engineering disciplines that deal with active systems that require operational management and control.
Maybe he was an american? He wouldn't have citizenship in Germany then.
South Korea put an exec guy to prison.

Already.
AFAICT It's all going to be a generator-like abstraction which is pretty zero-cost.
If the DNSSEC validating resolver is a server then it is usually not an issue. Most server hardware has battery backed real time clocks. In the odd case that you are bootstrapping a server you would have to set the time manually or make setting the time part of bootstrap process.

For embedded systems that don't have a battery backed real time clock and want to do local DNSSEC validation this is indeed an issue.

There are plenty of hacks to make it work, but no real standard.
As a developer with practically no sysadmin skills, how would I go about improving these skills?
Limoncelli's newer book
_The Practice of Cloud System Administration_ is awesome. It's really more about how to build distributed systems to performant and operational.
Well, I'm running 9.3.5 on an SE, so there's that.

In general I tend to agree with those who argue that Apple's peaked and is going downhill, and I accordingly expect that, whatever the new bells and whistles, iOS 10 will work less well for things I actually do every day (like typing!) than iOS 9 does, which in turn has been a regression from iOS 8. The hardware's not improving, either, and I don't think Apple has correctly understood occurrences like the difference between expected and actual demand for the SE versus the 7 and 7+.

But, as best I can judge from the experience of Android-owning acquaintances and colleagues, for all iOS' and the iPhone's flaws, it's still by far the most solidly reliable smartphone platform on the market, and that's what counts the most for me. Others who feel differently will make different choices, and that's fine. I don't see why people seem to want to make such a big fight about it.
What was Y2k like at Microsoft?
How does one car impact another? Wouldn't the drivers gravitate to the least congested/long road, and hence distribute across capacity?
nice to see the concept of hypermedia so early in the text
It's probably one of those things where there will be something disruptive like an Uber or AirBnB that forces their hand.
"THE DEAL'S NOT DONE UNTIL THE CHECK CLEARS."

This bit of advice has served me quite well over the years. At a celebration party for a new investment in a company I'd previously co-founded but was only a stockholder at the time, the CFO excitedly told me that I was 'worth millions', and asked 'how did it feel?'. I told him that "I'll tell you when we get an exit" and changed nothing about my life. Good thing, because while the check had cleared on that investment, the exit several years later wound up with the stock amount value down in the five figures.

One guy I know had co-founded a company, was doing OK. I noticed some impressive new equipment that showed up on his website and we chatted about doing some projects together and how he's got a major deal coming in and had invested well into six figures. The next thing I knew, his company had vanished and he was working for a small shop several states over. They didn't get the project after all, and were immediately bankrupt.

Worse yet, was a story from an attny friend I'd worked with; he told me about a guy (client?) he knew who 'got' a VC investment, divorced his wife, bought a big new house, car, etc. .... and the deal fell through.... not sure what happened to that guy, but I'm sure it wasn't pretty.

Repeat: "The deal is not done until the check clears"...

[edit: typos, clarity]
For practical purposes, does the difference really matter? Most consumer phones come with Google services on them. Building a usable ROM without Google services on them is not an easy task.
Well, the traffic is not encrypted or otherwise protected, so a firewall trying to be "smart" could do all kinds of things. E.g. not letting you connect to other DNS servers at all or filtering all queries with unusual record types.
This really doesn't make any sense.

>blockchains introduced three new characteristics: centralized / shared control, immutable / audit trails, and native assets / exchanges.

Blockchains aren't immutable, they are just expensive to mutate.

Blockchains aren't centralized.

Blockchains didn't introduce audit trails, these have always been possible simply through having a transaction table that is only appended to. This of course does require trust in the central authority.

>(4) Leads to provenance on training/testing data & models, to improve the trustworthiness of the data & models. Data wants reputation too.

Is training set fraud really an issue in training AI?

>(1) Leads to more data, and therefore better models.
>(2) Leads to qualitatively new data, and therefore qualitatively new models.
>(3) Allows for shared control of AI training data & models.

The author has a poor understanding of both AI and blockchain technology[1]. Blockchains are for decentralized consensus, but it seems the author is vaguely proposing using a blockchain as a mass datastore (with ownership labels) for both training data and AI algorithms.

Of course AI is an exciting field so this means you can generate hype by implying the field of AI has yet to solve the problem of sharing data with fellow researchers until now.

[1] https://download.wpsoftware.net/bitcoin/alts.pdf
I'd assume yes.
A Lisp repl running in the browser
The amount of money Google makes supporting older browsers is most likely measured in billions.

Not to mention, why fix something that isn't broken? There are cases for it, but it's roughly the same tech that it was 4 years ago. What would they gain by spending developer time on it?
The companion talk about how the Dieselgate cases are transpiring is also worth a watch.

https://media.ccc.de/v/33c3-8131-dieselgate_a_year_later#vid...
Any socialist etc. who studies history will point out that our permissive peaceful society exists with a lot of implied violence that is just made invisible or normalized.

American incarceration rates and health care tied to employer come to mind.
POP3, IMAP and SMTP Explained for Newbies
Agree that its very unlikely for currently closed big datasets (e.g. those that give Google and Facebook their competitive advantage) to be opened for this. But if existing shared but siloed datasets (e.g. ImageNet and Kaggle data) were moved (or copied) to the "centralised" decentralised database (bigchaindb) then there might be some benefit.
Disposable servers launched with Bitcoin
6 things I learned by publishing an app on the App Store
Do you have any evidence that China or the USSR pushed them into invading South Korea, or are you just guessing randomly? Because my understanding is that it was NK persuading other countries to support them in the war.

> By 1949, South Korean forces had reduced the active number of communist guerrillas in the South from 5,000 to 1,000. However, Kim Il-sung believed that the guerrillas had weakened the South Korean military and that a North Korean invasion would be welcomed by much of the South Korean population. Kim began seeking Stalin's support for an invasion in March 1949, travelling to Moscow to attempt to persuade him.[94]

> Initially, Stalin did not think the time was right for a war in Korea.[95] Chinese Communist forces were still fighting in China. American forces were still stationed in South Korea (they would complete their withdrawal in June 1949) and Stalin did not want the Soviet Union to become embroiled in a war with the United States.[95]

> By spring 1950, Stalin believed the strategic situation had changed. The Soviets had detonated their first nuclear bomb in September 1949; American soldiers had fully withdrawn from Korea; the Americans had not intervened to stop the communist victory in China, and Stalin calculated that the Americans would be even less willing to fight in Korea—which had seemingly much less strategic significance. The Soviets had also cracked the codes used by the US to communicate with the US embassy in Moscow, and reading these dispatches convinced Stalin that Korea did not have the importance to the US that would warrant a nuclear confrontation.[96] Stalin began a more aggressive strategy in Asia based on these developments, including promising economic and military aid to China through the Sino–Soviet Friendship, Alliance, and Mutual Assistance Treaty.[97]

https://en.wikipedia.org/wiki/Korean_War
Migraine voorkomen zonder geneesmiddelen and aangepaste dagmenu
I'm talking about having to sysadmin one's phone. You seem to be roving all over the map, from cultural standards of sex vs. violence to an advertising provider's choices in walled garden curation. I'm confused.
Once again, this demonstrates that blocking advertisements is a really good idea from a security perspective. It doesn't just reduce clutter and speed up page loading times, but also prevents loads of malware issues. See also https://twitter.com/swiftonsecurity/status/62840155490772582...
One of our web teams wanted to do a simple Wordpress deployment on LAMP. As sysadmins, that was no issue, even with clustered mariadb. But our DBA team doesn't have any experience outside of Oracle/MSSQL, and squawked about mariadb. After an hour of this BS, the manager of the web team spun up a few EC2 instances and got to work. Of course we don't have anyone familiar with EC2, so supporting that will be a learning curve for someone, but the manager is happy, he has his own sandbox without hassles from the DBAs.
I don't have a ton of first-hand knowledge, but I know that being licensed to provide health insurance in NY specifically is no joke. Todd Park (former US CTO, AthenaHealth founder) once told me that he didn't pay much attention to Oscar early on until he found out they had gained an NY license, at which point he dove into it.

More broadly, many hospitals and hospital are getting involved in the ACO (accountable care org), which gets at some of these goals, but it's not 100% clear that an ACO model can be successful (financially or for patients), and it doesn't cut out all the relevant middle-men.
Python Ukulele Tuner
If you weren't abusive or neglectful, they'll probably be fine. Let's say you were a little bit distant and distracted and they end up a little bit 'avoidant'. That means they're not going to rely on other people for emotional support when they're feeling down. That doesn't mean they're going to be emotionally crippled for the rest of their life.
Seems like a great project! Can this be used alongside the NAND to Tetris project[0] for understanding low level programming?

[0] http://www.nand2tetris.org/
The artwork is fantastic
How Design Thinking Became a Buzzword at School
It looks neat but I could not figure out what exactly was happening.

It might help if you did some smaller programs first where it is clear what the numbers in the grid really mean. Do those numbers map over (assemble) to the instructions?

I guess they do but I never could find a table that said "store" is this number...

It does look cool though!
Not sure what you mean. The topsellers here for example, the top-5 are all Android, and the rest mostly Android:

http://www.saturn.de/de/category/_tablets-252064.html?search...
Ask HN: Implementing a backgammon AI today?
When I was an undergrad a long time ago, I implemented a backgammon AI as a course project using minimax. Of course, neural networks etc. were available, but all methods at the time relied on the fact that there were some programmer-defined metrics which could be measured, and assigned weight to each metric to evaluate alternatives.

I have been a programming languages researcher, mostly away from AI, so I would like to know what the state-of-the-art is today. Is it possible to use commonly available tooling to only define what the rules of the game are and what each move does, and let the AI tools determine the metrics and their weights automatically?

What is the quickest and ideal way to implement a backgammon AI today? I am looking to do it in order to get a sense of what is possible today, and what the tools allow.

Thanks!