skysight-inc/HackerNews huggingface dataset:
You are right about C#: The type of `x => x + 1` can't be said to be anything other than "inferred". I stand corrected.

But I disagree with the rest of your post. From the point of view of type inference, what matters is the nature of the type constraints that the type checking algorithm generates:

(0) Traditional type checking: All type constraints are of the form “T1 = T2”, where both “T1” and “T2” are closed type expressions. There is nothing to infer.

(1) Type propagation: All type constraints are of the form “X = T”, where “X” is a type variable and “T” is a closed type expression. Again, there is nothing to infer, but we might need to propagate “T” between places. Say, from the RHS to the LHS of a variable initialization.

(2) Type inference: Type constraints are arbitrary type expressions, which must be solved using a unification algorithm.

As for why type propagation doesn't count as type inference: http://lambda-the-ultimate.org/node/4771#comment-75771
Trust me, it's currently far from zero work to submit code with a research paper. I was recently the corresponding author on a software paper sent to a journal that at least verifies the code compiles and runs and produces expected output. Since the poor person testing the softwares submitted is permanently in the ninth circle of dependency hell, across all platforms and libraries imaginable, it took about fifteen emails back and forth plus an OS reinstall before everything checked out. And they said that wasn't anything extraordinary.
Fascinating read.
I always thought there could be some kind of link between the social trauma of The Black Death and the eruption of The Reformation.
Just adding another data point: When I was in CS grad school (late 90s), everyone used LaTeX (including the journals). Then I started hanging out with neuroscience people, and everyone (including the journals) used Word+Endnote, with basically ad-hoc treatment of the figures.
I'm not an expert on quantum programmig but the impression I kind of got is that you don't just go around writing quantum programs like you would for a classical computers. Instead, you have very particular problems where very particular quantum algorithms are more efficient than the classical ones.

If I had to bet I would guess that quantum programming is going to be more like "linear programming", where instead of programming the algorithm instructions you program by preparing the inputs that you will pass to the specialized subsystem.
Loved it. As someone approaching 40, it was a mind bender that resonated.
Does anyone feel like taking a stab at explaining in non-poetic form what he means by "meaning games"?
Quantum computing is not about making simultaneous or parallel computations. Its about taking advantage of quantum mechanics (constructive and destructive interference of quantum waves, etc) to obtain very efficient algorithms for some kinds of problems.
That response actually illustrates my point, oddly enough; median has comforted you to organizationally disregard the super interesting data you're getting from the percentile aggregations. Those blowouts are far more interesting than you're saying, I wager.

p99 blowout is generally an operational smell, even on low-RPS endpoints.
For category theory, I don't think so. But if we take tensor algebra, of course, in physics, especially quantum mechanics .The thing is, you could approach the same physical problem at different levels of abstraction and would therefore use either or. For the study of manifolds, people generally tend to favor tensorial analysis. But some results could be found within the framework of category theory.

In terms of seminal work, I admit I am quite ignorant. I would check with SIAM.
Evan in thermonuclear bombs, most of the benefit in fusion does not from the energy released by the fusion itself, but rather from the neutrons released that trigger fission surrounding U-238 (the non-bomb isotope of uranium).
There are several IEEE Transactions that don't like LaTeX, and even one that uses a submission web form that is "Best viewed in Netscape Navigator". I don't understand why IEEE don't mandate a common, sane submission system.
3 - using volatile for asm that doesn't have otherwise inexpressible side effects has the same askance that using it for thread safety has. If you think you need it, maybe you needed to add a "memory" clobber instead.

5 - I can't think of any meaning early clobber has on an input+output constraint ("+")?

6 - there are many cases where you really do want to give the compiler flexibility in addressing modes. Unfortunately clang tends to ignore that and generate (reg) regardless.

7 - not really different than GPRs; you use "r" as the constraint then a modifier like "k" for the size.

I guess the lesson is that yeah gcc inline asm is powerful, but they try to leave it undocumented for a reason. Also, who stole number 4?
If the cars know how drive themselves you don't have to coordinate anything. There are things we can do to optimize traffic and whatnot by allowing these autonomous vehicles to communicate, but if a car can handle driving around distracted humans, it can handle driving around other cars.
A lot of researchers do make their results available as code and a whole lot of those who don't actually publish lies, as many people in academia from grad students to professors who implemented research papers and observed that the algorithms don't really work discovered.

File paths and manual steps can be worked around, mobody said it should build and run painlessly forever after having been published on any future system with no tweaking and with the researcher indefinitely maintaining the program. If however nothing remotely close to a working state can be published it's not a great sign.
I second this. I've given Gosublime (and more recently VSCode) a solid try on several occassions. Neither hold a candle to the Intellij Go plugin. Being able to give solid rename refactor, and code navigation, even when your code is in a partial spaghetti, non-compiling-mid-development state is hard. And the Intellij plugin does a decent job at it. Not quite Java-level good. But pretty darn good.

The existing command line Go tooling (while great) just don't do a good job at providing that kind of support to your IDE.
Could you share some resources where "why" is also discussed.
One interesting consequence is that this will probably impose a ceiling on Google's growth.
The design cost is increasing. It's not as in software where you write high level code (Verilog for IC) and let the compiler do its job, and in most cases you're done. For IC design, there's a two part process: the front-end design in Verilog, and then the back-end design to map this to the process implementation. With old nodes, the back-end was a simple affair and mostly automated --- software like. But with more advanced nodes it's no longer the case. The tools need proper constraints to generate something that will work (like timing constraints), and this need human input. And at the most advanced nodes, it's common that when you reach the back-end work one realize that the design is not good enough and need to be tweaked to let the tool generate a good implementation. This creates round-trips between back-end and Verilog level design. And these are slow and expensive round trips (synthesis, tests in the loop are heavy).

So it's far from fully automatic. There's a lot of work done on the tools, but there are also a lot of additional constraints to deal with with each new nodes. It's a real complexity explosion, and this is what makes designs on advanced nodes so much more expensive. This a highly simplified description but hopefully enough to get a feeling for what's going on.
Sure. I believe there's some fusion happening around us all the time. It's a statistical event. But to get a useful amount of fusion is different.

Yes, plasma is very difficult. You need to get it hot enough and in the right shape and in the right position at the right time. But even when you do that there are still many hard problems to solve. One of them is irradiation embrittlement. Capturing all the energy efficiently and converting it efficiently into power is also difficult (steam turbines I guess). The efficiencies of the input side are also a problem (the energy intake of creating the plasma, managing it, "fusing" it). All these inefficiencies eat into your energy budget making it harder to get significantly more energy out than you put in... Anyways, I'm not a physicist, but every little problem I hear about related to this process seems to be of monumental proportions and there are many of those...
Maybe I've drunk the kool-aid, but saying "academic institutions fetishize academic papers" seems wrong to me. It's like saying that developers fetishize working applications. It's not a fetish, it's the whole point of the thing. The output of research is research papers. Yes, sharing raw data and code are both good things, and should be promoted. But no one is going to take the time to look at either unless the paper presents good evidence for some novel result.
That's the intended result. Although, we're not hosting the code, we're integrating with GitHub for that. We're going to be hosting the Docker images and the results/output.
You'll be able to see which version of the code produces certain results.
Indeed, Broadcom doesn't even allow you to buy their proprietary SoC (at least, last I checked), so you can't make a knock off RPi board, or integrate the SoC and peripherals into a custom application board. You need to use an RPi directly or get some other Cortex-A53 chip with a comparable architecture.
> They don’t drive like humans, they don’t negotiate intersections like humans, and they’re going to interact with human drivers and pedestrians in unexpected ways.

Well, if you can't make a car that behaves like a good human driver, then maybe you shouldn't be making driverless cars? Otherwise, instead of reducing accidents, you might increase them (at least initially, before humans adapt). Self driving cars that can't interoperate with humans using existing infrastructure are basically useless - infrastructure lifetimes are orders of magnitude longer than technology life cycles. Re-planning cities for driverless cars now will make you regret it when the technology matures.

Also, while centralized planning might fly in current day '1984' London, I sure hope this fails at least in EU, where they claim to value privacy. Nothing about self driving cars requires either centralized reporting or even V2V - if you can detect a pedestrian behind a tree, you sure as hell can measure the speed of the car ahead.
Open source hardware refers to both the system level design and the IC level design. Credit where it's due, Raspberry PI is open hardware on the system level. You are right that it is not open on the IC level.
Pyne. Turns out he delivered this and is pro-marriage equity. Maybe he wasn't as bad as I thought (although his attempt at education reform when education minister was a debacle).
They have a public beta environment that is set up for feature testing, rather than stress testing. The PBE does see code rollbacks (if features are incomplete) before releases, so I believe the game logic on the PBE represents basically what will be moved to the live server.
RoR is an awesome framework that has (almost) everything you need to build monolithic web apps.

Go is a different story. You need to join the pieces together to make something functional. You will probably need:

- A router like [Gin](https://github.com/gin-gonic/gin)

- A [XSRF token generator and validator](https://github.com/golang/net/blob/master/xsrftoken/xsrf.go)

- An ORM like [Gorm](https://github.com/jinzhu/gorm) or [XORM](https://github.com/go-xorm/xorm)

- A template lib like the one that comes with the stdlib

- Node for front-end (ugh, this is the harder part)

- The testing library in stdlib plus maybe [testify](https://github.com/stretchr/testify)

- etc...

Many nice things are missing. Some were [shamelessy copied by other people](https://github.com/go-testfixtures/testfixtures). Some you may need to implement yourself.

The big advantages is that Go has much better performance, and run on Windows, etc.
"indentured servants"? That's ridiculous - startup tech workers are paid well compared to the average person, and they face no financial penalties for leaving their jobs if they do not exercise their stock options.

They do face the gnawing possibility that they could be rich, if only they could sell immediately, or keep the options for later, or or or ... if only!

But they can always just find another reasonably interesting job and get on with a pretty good life. I'm as interested in big success as the next guy, but let's be reasonable - these handcuffs are a lot more like "golden handcuffs" than actual handcuffs (or indentured servitude).
I agree, this would be ideal. Knowing what the product does when the cloud service inevitably goes away is a good thing.

I get the impression that some part of DLink understands that this is a feature that some people want. Even the people who design the packaging have made vague references to not requiring the cloud service. It's not spelled out as clearly as I'd like, but that might come in time.

As for the code quality, I honestly have no idea. I've had a couple of them running for months on end serving an MJPEG stream to a computer running 'motion', only powered off when they needed to be moved around. They do what I need them to without needing any babysitting.
Actually, the launcher was replaced under 2 years ago. The matchmaking client has entered alpha, and is accompanied with rewrites to a lot of Riot systems to help it all work together.
I am well aware of that and I agree on being pragmatic, but more often than not, the reason for multiple assertions per test is developer laziness and/or unawareness of the benefits of isolating failures by having just one assertion per test.
Grandparent's point is that 99th percentile latency is, for their application, unrelated to the ruby-vs-Go comparison.
Historical nit: I always considered the CDC 6600 to be the first commercial RISC machine, although given its strange architecture, I can see that others might disagree. It had multiple floating point and integer processors. An assembly programmer had to be aware of them all. I would not write two FP divides in a row because the second would stall waiting for the first to finish. I could write two consecutive FP multiplies, because there were two FP multipliers. Instruction timings were always a consideration in selecting registers, because you wouldnt want to try using a register that was the target of another instruction until that instruction had completed. Fortunately there were interlocks so that you would get the register contents expected rather than some undefined intermediate state. You always had two or three parallel instruction flows going to take ad vantage of as many of the 10 or so processors available.

Other aspects of the architecture were truly strange. There were no load or store instructions. They were a side effect of setting an address register. I was the lead developer for two of the PL/I compilers for the 6600. Much fun. For those interested in strange architectures, I recommend the Wikipedia article https://en.wikipedia.org/wiki/CDC_6600.
What feature of Smalltalk, but absent in Python/Ruby/JS, prevents these mistakes?
There are also fundamental thermodynamic limits that you hit at some point. All production and usage of electricity produces waste heat, it's unavoidable (see Carnot). Even neglecting global warming, you can't keep 20th century energy growth going for much more than another century or two before waste heat alone causes catastrophic climate change.
What happens if they decide to keep the company private? Travis, the CEO of Uber, has stated many times he feels like going public isn't needed anymore because of all the extreme amounts of capital available in the private market.

And, they have found a spigot on the economy that can provide for returns for these private equity investors. So why even go public?

To me, this just seems like a well thought out plan to keep employees locked into the company while not allowing them to ever exercise their equity, and keep the return focused on those who have provided capital. The "capital class" if you will.

Carry on worker bee employees; one day you might see those options actually worth something and liquid.
Well, I was being sort of sarcastic about it.

Fact is, the vast majority of people prefer pleasure over pain .. all time, although not-pleasure (or pain) is one of the few guaranteed things in life.
Pleasure is optional, pain and suffering are guaranteed and unavoidable, because of our mortality.

Still, we want pleasure and not-pain and if possible - greater pleasure over "just pleasure", since, well, it's more scarce.

> do you see yourself as nothing more dignified than a pet or a slave

If there's a choice between being a pet and a factory farm animal, I guess being a pet is much nicer and desirable. I say this while my cat is purring ecstatically on my lap. Not bad to be loved and cared for by a omnipotent giant.

And I think in the end, this is the metaphor for "A brave new world" and "1984" - A society of pets vs a society of farmed animals.

Make your pick.
Strictly speaking, Moore's original paper is not about transitors per chip but about transistors density for the least cost node.

So first it's about transistor density, hence the relation to having smaller and smaller transistor. And also and very important, it's about cost. You could go 3D to increase the amount of transistors per area, but that requires more masks/operations and impact the yield, and increases cost. If in the end the cost per transistor increases, then it's a density increase but it's not advancing Moore law.

In other words, Moore's law can be broken in two different ways:
1) we can't improve anymore the transistor density;
2) we can improve transistor density, but not in a cost effective way. If you want more you need to pay more (vs. getting more for less money when riding Moore's law).
Clojure Macros Tutorial – part 1: functions vs. macros #cljklipse viebel
The constitution has nothing to say about which districts must issue a warrant. The constitution doesn't even require there be different districts. Congress could abolish all the lower federal courts tomorrow and create one giant district court for the whole country.
Seems like he's over 40 and is inventing another meaning game. No thanks.
On the other hand, just because you have a great testing framework, it doesn't mean you should launch new game features/changes left and right.

(LoL is structured around roughly yearly 'seasons' for competitive play and for ranked play rewards. This season they have released a far greater amount of game mechanic changes, which make it difficult to plan competitive strategy and difficult for regular players to keep up.)
Show HN: Lightroom Catalog Viewer – Alternative to Lightroom Dashboard/Analytics
Hi photographers of HN,

In my spare time I was building an open-source alternative to Lightroom Dashboard that is a bit faster and has some additional features (more advanced filtering, google maps integration for geo-tagged photos, multi-dimensional charts).

You can find it here: Lightroom Catalog Viewer

The tool works just like Lightroom Dashboard. The catalog is opened within your browser and no information is at any point sent out of your browser. The whole source code is publicly available, written in ReactJS and used as my own learning tool for modern JavaScript development (ReactJS/ES6/webpack/eslint).

The known limitation of this tool is that the catalog is opened in memory of your browser and if the catalog is too large it can crash the browser tab. If this happens I wrote a simple script that minifies the catalog and removes all data that the tool doesn't use. Please make sure to use a copy of your catalog and use this tool and all scripts at your own discretion.

So far I have been testing it with just my catalog and I'd be happy if you could give it a try and let me know of any issues you encounter or ideas to implement.
Magnetic info is sensitive more for detecting hidden equipment, like submarines.
MHI always wanted to build them in Japan, and it was clear that the proposal for a local build of Japanese subs was going to be very expensive.

I don't think Turnbull had/has any agenda to damage Abbott. He is ambitious, yes, but once he had the job he didn't do anything else.

It's worth noting that the likely loss of the submarine build to be done in Japan was one of the primary reasons the SA liberals almost all switched to supporting Turnbull.
As Ray says, when you say "If a search is to be performed in many districts, they yes, that is what the constitution requires.", this is just gobbledygook.
Please cite any part of the constitution that says anything about this.
Honestly, I don't think this is the right path for inquiry. Philosophy isn't just the accumulation of arguments and scholarship; it's a discipline, and by that measure, some folks are better or worse, absolutely.

When it comes to Plato specifically, I did a lot of pre-Socratic and later Plato work in my philosophy degree, and you can basically watch Plato go from reiterating Socrates to becoming a truly great philosopher in his own right. He does it by learning, as we all must, to do good philosophy: to take seriously his forebears on their own terms, and then communicate carefully and thoroughly what's inadequate.

It's funny, because the tools he has are very weak. Logic isn't well developed; they just started grappling with basic concepts like what-is and what-is-not. But eventually, as any truly great philosopher must, Plato builds out his own positive program. The Parmenides is a great example; he finds a way to reconcile the paradoxes the pre-Socratics were obsessed with, and comes out with a richer toolkit and a stronger ontology as a result. Oh, and it's just as rigorous as any modern work of philosophy.

This article, though, seems kinda narrowly concerned about impact and exposure and all that stuff. Like in tech, you don't get to decide your impact, but you can become a really great philosopher by doing just what Plato did back then.
'struggle through and do well' is how I'd describe the country.
I took a graduate course on software engineering just a month ago and read many of those paper which use Mozilla's data. It's a very popular dataset in the field since it is both open and large. I'm sure Mike Hoye meant to criticize a part of that field, not academic CS research as a whole.

My impression of the field was there was a severe mismatch of skillset. The set of people with the scientific background to carry proper experiments, and the funding to do so, is very disjoint from the set of people who understand the field. That made a lot of the papers feel "off". Almost like reading text generated by a machine: individual sentences make perfect sense, the whole doesn't seem to go in a relevant direction.

As someone who's done a fair bit of practical software engineering, seeing academics study software engineers feels like seeing a WW2 veteran trying to understand how youngsters use snapchat. It feels very awkward for the youngster, just as it does for the software engineer. Which I imagine is one reason why Mike is pissed off.

There is some irony that businesses are much more scientific in this particular subfield than academia, because business incentives require the results to be reproducible and meaningful, over a longer period of time.
Their figures for chip costs at all nodes are bullshit including the $30M/chip at 28nm figure. It's inflated out of all proportion and of course it depends tremendously on what you are doing.
Duplicate: https://news.ycombinator.com/item?id=11606927

The other thread was posted earlier.