skysight-inc/HackerNews huggingface dataset:
There are many concepts which approach equivalence, e.g. the IO monad and the C preprocessor.

http://conal.net/blog/posts/the-c-language-is-purely-functio...

Likewise, tests and type systems approach equivalence (especially with dependent types).

Thus the distinctions are practical rather than purely theoretical.

(1) In practice, I find the static typing approach to result in more complete "tests".

(2) In practice, I don't see people writing reusable tests when they share code with others. However static types are are shared with the user's code, thus reducing the testing they need to write themselves.
Those shell companies are also bad!
I could swear up and down that I have never used my personal address on any website/app ever. (I use my "spam" address for all internetting.) So if I had accidentally opted in somewhere, it would have been with my "spam" address. Even then, they should not be able to get my email address, period! My fear is that they have other info that I am supposed to have control over, such as my address/DOB/credit card/SSN. Can they mine all of those things just from cookies/browsing or when I purchase something from amazon?

The reason I am fairly concerned about privacy is due to the nature of my work and the fact that I have a unique name. As it is, you can find my whole family and their address/phone number on a search's first page. I feel even less secure knowing that my sensitive personal info is so easily mined and distributed despite my best attempts to block ads/cookies/tracking and stay away from clickbait/social media who I would assume to be the primary offenders.

I am also a little surprised that no one else seems terribly bothered and a company like Criteo is instead lauded for its innovative methods. Do we as users just have to accept that a lack of control over personal info is the new normal?
I never heard of the BB problem before but according to Wikipedia it requires an N-state Turing Machine so I don't see how that's relevant to the question I posed. Could you elaborate ?
Trident is a type of SLBM. Is that an Ohio class sub?
The 200B dollar chatbot disruption
That's not true at all, if you're including their core PC game business. The vast majority of games they sell come with DRM. Only the Indie bundles are marketed DRM free, and there's only a few of those a year versus many dozens (probably approaching 100?) other bundles a year.
The article sort of glosses over IntelliJ with the golang plugin as an "other" IDE, but it's best in class hands down. At one point in my past I had sworn off of Java-based IDEs, and used Sublime Text for years with primarily Python and Go. Something convinced me to try Go in IntelliJ, and really it's fantastic.

It also covers "important-to-me" features the author mentions. I haven't tried VSCode yet, but have tried all the others listed. IntelliJ is fantastic for Go.
That's not true. I remember the first GSM networks in my country, from the nineties, along with available phone models, and they weren't that great.
Shut the fuck up, Donnie.
We've taken the distracting "little-known committee" bit out of the title.

Normally we'd treat this thread as a dupe of the first one you linked to, but this seems to be one of those stories the community wants to discuss thoroughly, and this thread is pretty good, so we'll leave it up.
I never had a chance to play with the i960, what made it great?

I seriously wish the SH-5 had actually been released and the new POWER chips were actually available in a bit of a cheaper form.
The UK could learn alot from them. Sadly we never seem to.
>Types can prove that certain inputs can never be received by a piece of code, which is a stronger guarantee.

I'd amend this to say that sometimes the compiler can prove you're calling a function with or setting a variable to an incorrectly-typed input, but at runtime a strong type system by itself doesn't prevent receiving those inputs, only executing them.

It is possible to create a programming language with semantics such that the compiler will always catch incorrectly-typed inputs, but that's a separate but related concept from the type system.
The only thing you should be disappointed with is your reading comprehension. There are three paragraphs dedicated to your complaint.

>“Not all 10nm technologies are the same,” said Mark Bohr, a senior fellow and director of process architecture and integration at Intel. “It’s now becoming clear that what other companies call a ‘10nm’ technology will not be as dense as Intel’s 10nm technology. We expect that what others call ‘7nm’ will be close to Intel’s 10nm technology for density.”

>It wasn’t always like that. Traditionally, chipmakers scaled the key transistor specs by 0.7X at each node. This, in turn, roughly doubles the transistor density at each node.

>Intel continues to follow this formula. At 16nm/14nm, though, others deviated from the equation from a density standpoint. For example, foundry vendors introduced finFETs at 16nm/14nm, but it incorporated a 20nm interconnect scheme.
Boole, Shannon and the Electronic Computer
Who checks the fact-checkers?
> TSMC is moving from a 2D layout scheme at 16nm to 1D technology at 10nm. 1D layouts are easier to make in the fab, but they involve more restrictive design rules.

What is a 1D layout? Surely it must be something of a misnomer, as the only way I can visualize it is as a barcode, where each material you place has to span the entire width of the chip - and that seems utterly worthless.
I switched to Studio 2.0 hoping for better NDK support over 1.5.

However, it appears to still require the experimental Gradle plug-in. Which, frankly, isn't very good.

I'm still building my native .so separately using NDK build. I don't get any native code debugging either.

Is there something obvious I'm missing?
Longform content is even more valuable than it was before. Sell deep investigative content on current events and movements; sell the ability of a reporter to spend time combing the facts out.

I can read twitter and the drudge report too. Sell me something better.
GADTs for dummies
In my experience most Go developers seem to favor a terminal-heavy workflow, sometimes frequently shutting down and re-opening their editors in new paths and projects. The barebones simplicity of Go-the-language seems to be a nice match to this workflow. It's a different thing altogether to how large IDEs like IntelliJ expect you to work: opening up a project and staying in the IDE for a long period of time.

Both approaches are totally valid, of course, but I suspect Go developers are biased toward lighter-weight editors.
Unfortunately, this post doesn't seem to improve on Martin's usual fundamental misunderstandings. He still doesn't seem to understand that unit tests verify single cases but strong type systems prove general cases, and that in situations that could be handled with either approach, the latter is strictly more powerful. He still seems to believe that dynamic languages are the way things are going, despite almost every successful large and complex software system still being written in the popular static languages he dismisses. He still thinks dynamic languages like Python and Ruby are great for productivity, but he's primarily comparing them to Java as the standard for productivity with statically type languages.

This is the man who, somewhere around 2011 I think, claimed that we might have explored the whole programming language space, and there might not be any new programming languages left to be invented. He's also the man who, going by the very post we're discussing, seems to think that having typing so restrictive that not everything is nullable by default is some sort of radical new idea. (Compare that with Tony Hoare's conference speech in 2009, in which he called inventing the null reference his billion dollar mistake, and notice that almost every modern static language provides this kind of safeguard.) So I'm not sure we should take Robert Martin's predictions for where the programming industry is going too seriously; indeed, he should perhaps learn a bit more about what is already available today before making big public predictions about tomorrow.
The latest Uber investment rounds require that employees hold onto their shares for one year after going public.

This will prevent employees from flooding the market post-IPO and devaluing the stock.
> benign or benevolent actors

This was Hannah Arendt's "banality of evil" theory that she developed post WW2 when everybody was trying to figure out what happened. Evil acts are perpetrated by dumb people "just doing their job".
These questions are not completely unanswered. These dry problems are what Rigetti Quantum Computing [1] is working on.

[1] http://rigetti.com/about
>Tests are not proofs

Neither is static typing. It's a layer of protection, much like tests.

Proofs are exactly what the results of strong static type systems give you. They can't prove everything, but they do prove certain things in all possible cases.
It's slightly better paid and a chance to do some "real" operations even in peacetime, e.g. surveillance on rival nations (a lot of this during the Cold War), delivering and extracting SOF, being first on station in the event of a crisis, live-firing cruise missiles, etc etc. Everyone's motivated differently I guess.
No, he means all problems without a (known) polynomial time solution.
The first seems more important (no sense going through all the work of verifying something is true before making sure the authors are actually stating it!), but, both, really.

In the latter case, you'd look at the software that /you/ run to validate that:

1. It's using some sane form of key generation.
2. It's actually using those keys to perform encryption on the files prior to them being transmitted.
3. The original files, as well as the key material, aren't read anywhere else in the code base not necessary to do the above two.

Then, only run that version of the software. It's non-trivial, and generally expensive. This is why a lot of people prefer tools which call out to other trusted programs to actually handle the key management and encryption. Less complicated code to audit that way. (cf tarsnap)
> So how does the world change? Some software places might consider writing software that doesn't change for change sake.

Inconsequential feature creep doesn't happen for changes sake, it happens because people want to keep making money.
More often than not it cuts the polynomial exponent in half via some use of Grover's.
Haskell/OCaml style "fst" and "snd" functions can't index arbitrary tuples (they only work on 2-tuples/pairs): http://i.imgur.com/PbhNxmu.png.
performance: https://www.techempower.com/benchmarks/#section=data-r12&hw=...
It's relatively "elite," for people that care about that.
TLDR

There are a handful of private companies working on new/not well researched approaches to cracking fusion using private capital while Government projects like National Ignition Labs and ITER suck most of the public funding to work on mainstream methods.

There are two companies of note,

1) General Fusion (funded in part by Bezos) working on something called magnetised target fusion

Here's how it works: first, magnetic fields are used to confine a superheated plasma of volatile deuterium and tritium isotopes. This plasma is then injected into a sphere, where it's briefly contained in a vortex of liquid metal. Next, pistons converging towards the centre of the sphere simultaneously strike an anvil at the end of their cylinder, sending a shock wave into the plasma. This burst of energy causes the plasma to compress and the deuterium-tritium fuel to ignite – producing, in theory, a tremendous burst of energy.

2)Tri Alpha (Paul Allen) using a reactor tech called called a “field-reversed configuration.” This type of device has more in common with Iter's tokamak-style reactor than General Fusion’s machine: it uses magnetic confinement and heat, rather than compression, to induce fusion, and it produces energy continuously, instead of in bursts.
The advantage of a field-reversed configuration over a tokamak is that its engineering is much simpler. But from a physics perspective, the technology is far less well-developed.

Conclusion is that both these companies are following long shot techs and it's challenging for them to raise capital since they'll take a long long time to give VC an exit, if ever. But if they work, then their investors hit jackpot.
interesting that both papers use the same diagram model to image the architecture: these isomorphic boxes

anyone know why both papers share this seemingly arbitrary diagram style?

edit.. ahh, it's the same person
There's also Goclipse for Eclipse.
This is rad!!
> For a 10nm chip, it takes $120 million for the design cost, plus 60% for the embedded software.

I don't understand: 60% of what? What embedded software?
This is wrong information. 409A valuations are generally based on revenue models, profit models (not applicable for most startups) or comparatives. It's not done based on funding rounds because there's a lot of goodwill based in that.

Most companies push the 409A valuations as low as possible precisely because of income tax ramifications on exercise.
The Art of Sandwich Making
Senior buy-side guy here. Viewability measurement has made a small dent in things, but for the most part, my personal view is that a huge percentage of display inventory (especially video) is very inflated. Pubs are chasing the much higher video CPMs without a care for quality, and buyers seem to be eating it up for some reason.

In my mind there's only two things that will really change this...better viewability/inventory auditing and attribution technology.

The larger, more reputable inventory sources (Google, FB, etc.) have a VERY vested interest in pushing quality and using whatever data they can bring to the table to build that trust, and then use that trust as a moat against their competition. Viewability providers likewise have an easy sell once they can improve the accuracy and reliability of their offerings (they have a long ways to go based on general sentiment in the industry). This will put pressure on other pubs to up their game or be left out. Why bother with a crappy news site that has 50%+ bot views that you're being billed for if FB or Google can prove that their traffic quality is much higher, better targeted, and infinitely higher reach?

On the buy side, the pressure will come in the form of attribution. Right now, display performance, video in particular, is a super murky area in terms of measuring success. What is the value of a view-through? Most advertisers couldn't tell you. And the ones that can probably have a very fuzzy picture of it that varies based on the attribution model they are using. However the space has improved dramatically, and at the end of the day, performance marketers will be able to do a much better job of telling whether traffic is crap or not based on whether it backs out. Bots don't buy things (although they do sometimes sign up for lead forms now). So if someone with a solid analytics stack sees a ton of impressions and no sales through their various attribution lenses, guess what? They'll stop buying those impressions. And the more big buyers that get smart about attribution and stop buying based on impression counts, the more pressure will be exerted on the sell-side to clean up their game.

So while the problem is "self-correcting" in the sense that there is big money with very vested interests in solving for this, unfortunately it is a big ship to turn and will take time.

Articles that talk crap about the ad industry rarely get into the nuances which is horribly infuriating and does a lot to give the industry a bad reputation. Like any space, there are bad players. Legit players in this industry want the bots and garbage out of the picture yesterday. They make our jobs harder, and reduce our performance.
A countercurrent is the rise of data science, machine learning and statistical programming in industry. Dynamic languages such as R and Python are the tools of that trade, because of the exploratory nature of the programming work that leads to an emphasis on speed and flexibility over correctness, and the loosely typed nature of datasets in the wild.
Ruby salaries tend to be higher than JVM salaries? What?
Having fun at work Norwegian style (extreme indoor biking)
About 1. you're right, also there's some amount of price segmentation in some concerts/tickets (closer to the stage, VIP area, meet&greet tickets)

2 and 3 might be solved if (first) ticket sellers would set auctions for ticket prices, not sure if it's possible legally though
Not really a constraint anymore. With solar as low as $20/MW ($0.02/kwh), battery storage isn't so exorbitant when complementing solar (Tesla has batteries under $190/kwh, and that's before the Gigafactory is fully ramped) insert To The Moon ASCII here.

Texas currently has the lowest price per watt in the entire country [1] (and that's just solar, they have so much wind power they can't get out of the state due to transmission lines being under construction, some utilities are giving wind power away for free during nighttime hours), the cost of solar continues to plummet [2], and India is going all out to provide solar to homes (its cheaper than coal based on their economics). [3]

New York is about to start a program to give solar generation systems away for free to middle class families [4].

Nuclear was once thought of as an energy source "too cheap to meter" [5]; solar is going to deliver on that.

[1] http://cleantechnica.com/2016/04/30/texas-solar-prices-curre...

[2] http://www.greentechmedia.com/articles/read/i-was-wrong-abou...

[3] http://www.sciencealert.com/india-says-the-cost-of-solar-pow...

[4]
http://greenenergychronicles.com/index.php/2015/05/26/new-yo...

[5] https://en.wikipedia.org/wiki/Too_cheap_to_meter
I am very critical of this assertion. I am currently developing a multiplayer game with websockets in Go, and the compile times do not at all seem to be less than 1.4. I am using 1.6.
The compiler can use the known bounds of a type to perform correctness checks or optimizations. It might not be testing every possible value of an int explicitly, but the compiler certainly uses the range of an int to make lots of decisions and produce warnings/errors.
I've done a lot of ruby and go.
Honestly, I would think twice before building a major website/product API on go.
Development time is markedly slower in go, some causes off the top of my head:

- testing is way harder (ruby has some amazing mocking/stubbing/testing tooling).

- debugging is way harder. Hope you like printf.

- Json; the strict typing & struct searialization rules make dealing with Json a pain in the arse, and heavy on boilerplate

- interfacing with Sql (if you have to do a lot of it) is a pain in the arse, for similar reasons to json.

- having no stack for errors is insanely frustrating.

- templating in go is primitive

Go is amazing for services. The parallelisation primitives are fantastic, and allow you to do things that would be hard/impossible in ruby/Python.
Go is undeniably much faster, execution wise. (Although our super high volume ruby product api is at 50ms median so, it matters less than you think)

Decide what you care about most; if your prime goal is to get a product in front of customers as soon as possible, I'd pick a higher level language.
If you want to make a rock solid service that sips on resources & scales to the moon, use go.
> The Judicial Conference of the United States is neither a "little-known committee" or in any way secretive or shady, unless one is totally ignorant of how the judicial system works.

The Judicial Conference is currently the subject of a lawsuit for being secretive, shady and duplicitous. (A serious lawsuit on a serious issue, with a serious chance of success.) So I think this statement is a bit subjective.
Amtrak turns 45 today. Here's why American passenger trains are so bad
> "Why am I wasting time satisfying the type constraints of Java when my unit tests are already checking everything"

Not only is this a straw man, it's also a really weak argument.

Types prove the absence of (type) bugs. Tests can merely prove the presence of such bugs.
HN's rule on this is described in https://news.ycombinator.com/newsfaq.html.

You can trace the rationale for it by skimming back through https://hn.algolia.com/?sort=byDate&prefix&page=0&dateRange=...
The old rules make it proceedurally hard to get warrant, not substantively hard. You could have a website openly selling sex slaves hidden behind TOR and you couldn't get a warrant because nobody knows where the site is located.

Meanwhile, the Feds can easily get a warrant some some innocuous stuff like selling raw milk because locating a real business is easy.

This just deals with an issue of where you know the specific server or network of servers you want to search but can't know where they are physically located. This just enable a dragnet to go search random computers.
That's still not NP, that's NPI+NP-complete.
Maybe it's just me, but I wish our society's future wellbeing wasn't placed at the whim of a handful of oligarchs.
Cool, and sorry for venting my pet annoyance on HN.
InterSystems Data Platforms and Performance Part 4 – Looking at Memory
The ovillanta is a clever mosquito trap made from old car tires
>
If I was still a student, I would definitely go in quantum computing

Timing the market would be hard. I remember seeing an article in 1999 talking about quantum computing, as if it were "just around the corner". Tons of advances have been made in the field since then, but we could still be 10-20 years out from QC being available/ubiquitous.
Good article. A few years ago I wrote a toy program which demonstrates cost of cache misses (or the power of hardware prefetchers). https://github.com/WojciechMula/toys/tree/master/cache_test
I don't really understand what this means. How is that different from how anyone else uses a compiler?