skysight-inc/HackerNews huggingface dataset:
There is another approximate solution to the baseload and storage problem:

A global power network.

Peak loads would balance themselves approximately with the lack of need of energy at the opposite side of the earth.

Also, wind and solar energy generation would vary much less on a global scale.

Of course, there are calculations as to why this currently ineffective (AFAIK mainly loss of energy through transmission) but who knows when the next superconductor appears that could make it feasible.

Economically, it shouldn't cost much more than an internet.
Is this retroactive? My wife would love to go back and get 7 years of FICA paid for.
Nginx web server upgrade focuses on web security, JavaScript configuration
You know, if 10 years ago someone had bet me that one day Microsoft would be the darling of the startup world, mainly for their embracing of the open source community and the linux movement, for supporting development on Apple devices, and for a kick a editor... I would have plonked down a wad of cash while laughing hard at them.

And I would have lost a lot of cash...

The ONLY reason I still use Safari on my Mac is to do web debugging of my hybrid (Ionic) apps. If I can do it all within VS Code, then it has just become my best argument to complete my triple jump from Sublime -> Atom -> VS Code.
Reminds me of Ubisoft claims that its Assassin's Creed crouching mechanic had 6M LOC
Oracle has GraalVM

http://www.oracle.com/technetwork/oracle-labs/program-langua...
> I'm a little used to this from Haskell, although I imagine the dependently-typed languages are even worse in that regard. Working through the Idris tutorial now and at least the syntax is familiar.

That's what I mean by the difficultly jump. Like when you go from C++ to Java or the other way around, there's a lot of familiar things to cling on to while you make the transition. With dependently typed languages, there's a massive pile of unfamiliar stuff so the steep learning curve is unavoidable really. Someone needs to write a "dependently typed programming for Java programmers guide". :)
i18n generally just adds property files and maybe localized CSS, not code.
add : (x : Nat) -> (y : Nat) -> {auto smaller : LT x y} -> Nat
add x y = x + y

Actually, (GHC) Haskell can express something like this type if you turn on the required extensions.

data Nat = Z | S Z deriving (Eq, Ord, Show)
data SNat (n :: Nat) where
SZ :: SNat Z
SS :: SNat n -> SNat (S n)

type family Compare (a :: Nat) (b :: Nat) :: Ordering where
Compare Z Z = EQ
Compare (S a) Z = GT
Compare Z (S a) = LT
Compare (S a) (S b) = Compare a b

type a < b = Compare a b ~ LT

type family (+) (a :: Nat) (b :: Nat) :: Nat where
Z + a = a
a + Z = a
(S a) + b = S (a + b)

add :: (a < b) => SNat a -> SNat b -> SNat (a+b)
add = ...
No, it's the correct argument.

Putting an option in to disable something that only a miniscule number of users would ever want is not sensible.

Note bene: I'm only talking about this DEC1-like conversions. I agree that there are lots of conversions that are annoying.
Solve All Your Performance Issues with with Solr Caching on Rails
> Haskell has no equivalent of the Idris type above, and Go has no equivalent of either the Idris type or the Haskell type. As a result, Idris can prevent many bugs that Haskell can't, and Haskell can prevent many bugs that Go can't. In both cases, we need additional type system features, which make the language more complex.

Type checking Idris is much simpler than Haskell.
First of all OP is not dying. But there is a crucial distinction to be made between suicidal thoughts being a forgone conclusion in one's mind, and someone sanely exercising the right to die peacefully. The inability to distinguish these two would be far more harmful.

> suicide is absolutely an option

You said it yourself. Option, not forgone conclusion. But I would go as far as to say exercising one's right to choose one's death should not even be called suicide. You're already dying. You did not choose death, so it's not suicide. The word "suicide" has immense negative implications in many cultures and religions. If by simply changing the term we can exonerating their soul from the sin they themselves believe in, and assist them in a more beautiful death, we should be all for it.

Having thoughts of dying better are not suicidal thoughts.
definitely also tests, deployment and generic tools
Truly that big. Imagine even 25 full time developers working on a website for several years.

If you look at Yelp and see a simple crud app you're not looking hard enough.
Danes do it differently: #CPHFTW and the birth of an ecosystem
Oh man, I would love to work at a place like that. If only there was a "Sandi Metz" specialization in software development. The worst part might simply be managing the egos of people whose work is refactored.
> The world can transition to 100% clean, renewable energy

Yes, at 5-10% of its present population and with a sudden, overwhelming and universal attack of wisdom about the problems caused by uncontrolled population growth. Otherwise, this is more eco-fantasy that ignores the obstacle produced by ... too many people.
Drone defense is very interesting....but I find the concept of jamming/electronic spoofing/RF commandeering somewhat comical in this arena. (what ApolloShield seems to be doing)

This is a physical threat (in the terrorist scenario) that needs to be dealt with kinetically.

RF spoofing doesn't work for planed flights, GPS spoofing can work but reply attacks are wonky at best and most just will trigger a "go home" which is easily overridden to be the target.

Skywall (http://openworksengineering.com/skywall) type stuff is interesting, but very hard to get right...know a few folks in the field working on some cool stuff.

The passive whoops I'm a terrible drone pilot and flew my drone over moffet is fairly easy to deal with (betting we'll see some sort of drone tagging (RF)/mgmt system tied to the in-place registration very soon)...but not nearly as lucrative as true airspace security

/2cents from someone not in the field but interested in it
Having an intern write a good blog post for the engineering blog is a great recruiting move.
You don't need type theory to verify program properties, people have been using first-order methods for decades to prove properties about programs. For example there was a line of work in ACL2 that verified a microprocessor implementation, as well as plenty of modern work using tools like SMT to automatically prove program properties, see Dafny, F* for language based approaches. Though there is plenty of language agnostic approaches as well. My colleagues at UW have a paper in this year's OSDI verifying crash consistency for a realistic file system with no manual proof.
How to Market Your Business on Instagram? – Piktoria Blog
maybe they want to start to sell more pokeballs? In the end most games makes their money off a small percentage of power users (aka heavy addicts) who are ready to shell out money for in game purchases - a game does not need a massive following, they need to hook a small circle of friends (015% according to [1]) who are ready to pay.

[1] http://venturebeat.com/2014/02/26/only-0-15-of-mobile-gamers...
One of the interesting things about wind and solar is that they can output less than the potential production at will.

So if you have a regular peak demand of 10GW, you provision for 12Gw of predicted continuous production, then simply turn off the portion of production that is not required.

This is not possible with steam or gas turbines because they have a huge lead and lag time to cope with while wind and solar are for all intents and purposes instantly switchable.

No storage required.

One use for storage storage is when 1kWh of storage becomes cheaper than an extra kW of production required to meet that 1hr peak. Since wind power is around 7¢/kWh at the moment, there is not much chance of this happening any time soon.

A more likely use for storage is to remove dependency on fragile interconnects. Remote towns can use batteries today to help insulate the residents from temorary loss of power due to ice, wind, fire, etc damaging transmission lines and equipment.
No. You got it right Go ahead!
TV in Europe is 50hz

Things get sped up, slowed down or played back with jitter. It's not great. Older devices (DVD/BD players) used to change framerate automatically. Newer devices (streaming) seem to default to 60hz with an obscure Settings menu to manually change it. Nearly everyone ends up watching the content in the wrong frame rate :-(
regexps are error prone better use ASTs see Facebook's jscodeshift
"You cannot just fraudulently invent a bill for services with absurd prices, and then demand payment."

You have obviously never enjoyed the services of the US health care system!
It would be interesting to a certain type of person to look back on this in ten years and see if any of those papers were corrected, etc. Some links are in this thread that would allow this to be done now as well. Also check out the fMRI and microarray scandals that contaminated decades worth of publications.

Did using correct data and analysis pipelines actually matter to the conclusions these authors came to?
It's been spoofable (and jamable) for some time...but serious PIA to do and a huge FCC no-no as it's tough to focus.

http://news.utexas.edu/2013/07/29/ut-austin-researchers-succ...
Design Approaches to Churn Out the Best Data Visualization Graphs
To be fair, the U.S. is a country on the scale of the E.U., 300 million and 500 million people respectively.
Is that a Bond reference? Apparently Vesper is also the name of a cocktail? I've only seen it as meaning "evening" (in German I think it typically refers to a cold dinner).
Book Depository's “Free Shipping”? Not Quite
https://news.ycombinator.com/user?id=Animats on HN!
> if an expression evaluates without error, then its type is…

What’s curious is that this is true in every language with general recursion/looping:

int f(int n) {
while (true) {}
return n + 1;
}

(In other words, the type of “f” isn’t the logical formula “a → a”, but rather “a → ¬¬a”.)

The type of “eval” can also be fully static; it can just return a type that you have to do case analysis or runtime type inspection on to use.

In Haskell, with a data type:

data Value = Integer Int | Text String | ...

eval :: String -> Value

foo = do
value <- read_from_the_network
let result = eval value
case result of
Integer n -> return (1 + n)
_ -> error "that was not an integer!"

Or with RTTI:

eval :: String -> Dynamic

foo = do
value <- read_from_the_network
let result = eval value
case fromDynamic result of
Just n -> return (1 + n)
Nothing -> error "that was not an integer!"

“fromDynamic” has the type:

Typeable a => Dynamic -> Maybe a

Which is to say “given a dynamic value, and its runtime type information, I can either give you the value back with a static type, or nothing if I can’t perform the downcast”—much like “dynamic_cast” on pointer types in C++.
Happy to do the same. Been through similar feelings, including the spiral of self-doubt and constant failure.

Maybe my experience can give you another point of view or some ideas on figuring out what's next.

Happy to be a sounding board if you're looking more for that.

My email is in my profile.
> For library types, the most commonly used properties will have already been proven; you wouldn't have to write a proof that "sort" sorts a list any more than you'd have to write the sort function itself.

Sorting was just an example. Most proofs of nontrivial algorithms come with reams of hand written proofs. Happy to see examples that go against this though.

> The computer can also be surprisingly good at proving these things in many cases. E.g. I was playing with the proof assistant Isabelle recently, and I tried to prove that given an int, a proof that twice that int is greater than 13, and a proof that four times that int is less than 29, then that int must be 7. I thought I'd have to fiddle around with induction on Peano numbers and the like, but nope, it could be proved with just a single "by arith".

Doesn't that just fall into the Presburger arithmetic decision procedure? The problem is you can rarely tell when the proof assistant is going to complete the proof for you (e.g. you're fine if it's within Presburger arithmetic but not if it requires induction).
Too bad. It was nice while it lasted.
You claimed "[Google] infringes on copyright as a matter of course" despite the many real civil cases (previously cited) which have found these very activities to be non-infringing. And then, strangely you claimed:

>Fair use is a case-by-case basis, so you can't say that Google's infringing conduct is generally accepted to be fair use.

There is so much wrong with this statement. For one, how can you call something infringing at the same time you point out that nothing has been proven? That simply defies all common logic.

Secondly, in general terms, the activities in question have been found to be non-infringing by the courts. Sure fair-use is case-by-case but if you're operating within similar parameters as a previously litigated case, then the legal risk is immensely reduced.

I don't disagree with your assertion that the legal system greatly favours the well monied/connected (I don't think anyone would). But you can't claim it to be fact that Google Search is infringing anything with little to no evidence or rulings to cite. Unless you're just stating an opinion in which case you should clearly indicate that.
Inevitably, some day, you will empathize.
The one in Illinois (Land of Lincoln Health) is in a similar situation, but the wind-down is being handled much better. I actually have coverage through the end of September and the state (which stepped in to shut it down) promises providers that they'll be paid. Part of the trigger for the shutdown was that on top of previous-year losses, LLH was being required to send something like $30m to the risk pool, money they just didn't have.

The remains of LLH are also suing the Federal government for around $70m, because part of the original setup was that the government would cover (some portion of?) losses for the first few years through the risk pools regardless of the amount going into those pools; that was subsequently changed to "we'll divvy up the amount in the pools to companies according to their losses but we won't supplement as originally expected."
If the US absolutely had to do this, it could. It would mean building a lot of pumped storage plants, wind farms, solar panel installations, and EHV transmission lines. But it could be done.

The biggest pumped storage plant in the world is in the US, and it can generate 3GW at peak. Peak demand for the California ISO is about 40GW. California would need maybe ten plants of that size. A pumped storage plant requires two reservoirs with a big height difference, and California has lots of unused mountains. It doesn't use much water once filled up; the same water is pumped up and down.
There is an "International" tab you can click on, a bit above the map.
Diabetes Destroyer Pdf Book Review
Oddly enough, Ukraine has made some big strides in that direction. It took a war, though.
Maybe this link http://cirru.org/ , what do you think?

I wrote about it actually, Cirru Editor's demo is hard for trying out https://medium.com/cirru-project/stack-editor-programming-by...
Any people using gRPC and Protocol Buffers from Python with good experiences?

The library for Python for one seems very unpythonic to me, starting with all those CamelCase method names. It does not seem possible to use asyncio or any other non-blocking solution on the server.

Finally, gRPC obviously only handles the transport: Are there any other useful related Python packages out there for validation etc.?
My journey to becoming a web developer
It's also available to anyone with the money, from the company in the article or competitors.

(I assume there are no laws forbidding the system in the USA?)

For example, a large company could pay to track whether any of its employees attend a protest. An insurance company could measure whether policy holders are exceeding speed limits (approximately). A person could track the movements of their partner or relative.
Its not that they change type. Its that the comparison function returns either a proof that one is greater then the other, or that they are equal. When you are in the right branch, you can pass that proof (type) along with the value into other functions.
OhMyBet! is an information service with AI-driven predictions of the outcomes of professional tennis matches given by machine learning algorithms not human experts.
The core of the system is a self-improving predictive model which has been trained on more than 850,000 past tennis matches and is able to predict the winner in an upcoming match with 85% accuracy. What’s more, it ensures maximum profitability of its predictions sorting out the tips with low odds. On a distance, this approach results in 12% ROI.
OhMyBet! does all the analysis for users offering a mathematically-driven yet easy way to earn on tennis betting.
Exec / C-level startup coaches do exist, they tend to be pretty pricey though. I had a chance to chat with https://www.reboot.io/ a while back, they seem to be a good place to start. We tried putting together a CTO meetup here in SF several times, but it's worse than herding cats, everybody is super heads-down in the work 24/7.
There was a great Radiolab episode [1] on this very technology about how this has saved the day multiple times in the civilian world. They also cover the questions you bring up. The radio hosts couldn't come up with a good answer on how to best use it. I highly recommend listening to the Radiolab episode in full.

[1] http://www.radiolab.org/story/eye-sky/

Edit: Updated to only link to Radiolab. Note to Self's staff was just a guest. The Radiolab episode covers a lot more detail on the Juarez murder covered on the Bloomberg article.
It doesn't say "type checking", though. It says "the language", which I think of as including the respective preludes.
Is the 3M across all applications they developed? That may be much more than just the customer facing part. Plus like others have said, it's also years of development; I've heard a lot of stories that a lot of the high-profile companies and applications (paypal, ebay, linkedin, skype, etc) have huge and rather bad codebases.
NASA funded published research to be made freely available
Motion blur is caused by the image of the thing moving on your retina. Humans are very good at tracking steady movement with their eyes ("smooth pursuit"). When you're successfully tracking something this way the image is steady on your retina and there's no motion blur on it, only on the background. Applying motion blur relative to the camera does not look the same because it doesn't react to your eye movement.

Synthetic motion blur (baked into the image and visible even with static images) can be used to partly hide low framerate, and with games it would be theoretically possible to use eye tracking to show synthetic motion blur relative to eye movement, but movies have to show the same thing to everybody. The only option for realism is to increase the framerate and rely on real motion blur. 120fps is about the minimum you can get away with for this and still have it look somewhat convincing.

Trumbull's Showscan tests were with untrained audiences, they didn't know what to look for. With the right test signals and trained viewers you can see differences in frame rate well into the kilohertz by examining the interaction with eye movement.
Type inference isn't the most important, most languages that employ type inference are moving towards features sets make full inference hard, if not impossible. Not to mention you can get pretty good "inference" in dependently typed programming languages just by designing an appropriate higher order unification procedure. I have never met a daily user of these tools that find this to be the bottleneck.

In practice you spend way more time writing proofs in these system then doing anything else. There is evidence that we don't need to limit the expressive power of our logics, just design appropriate automation for the logic. Lean, a new ITT based theorem prover from MSR, has been focused on building automation for type theory. It already has promising results that formal methods techniques can be scaled to type theory (see the website for more information on recent work).
Basic CS Reading List – M. Douglas McIlroy (2010)
> Type checking Idris is much simpler than Haskell.

Is it? How's that?
What's fascinating to me is that despite claiming hindsight and knowing now what went wrong, Gruber still completely fails to see that not even considering developing the app for Android was certainly a factor in the failure of his product.

I'm not saying that their app would have succeeded, just that you're pretty much doomed from the start if you don't develop for both markets these days.

Besides, making a whole business on a note taking app in 2016... seriously.

This is what happens when you let emotions drive business decisions: failure.
Nice. SMT can be (and indeed has been) integrated into type-based approaches to program verification as well.
I am responsible for a 1.1m LOC application. It's a whole bunch of separate DLLs.
The amount of code you have in a company is usually a function of the amount of engineers you have.
They mention DB financing some businesses related to Trump at the end of the article with no apparent connection with the rest of the story, I wouldn't ask for too much logic from a magazine like The New Yorker. Sometimes you feel that mainstream media has become like a 1950s western movie, where you've got the good guys on one side and the bad guys (Putin, Trump) on the other, with the Mexican boogeymen (terrorists) ready to pinch in at anytime.
I have no idea why it's hard-coded to 11pt font - disabling that makes it far more readable. I also tried to make it less skinny - #Main has width set to 425px, if you disable that it's a little bit better still. If you start screwing with the margins things get weird though...
cmd.exe starts in a second, powershell takes 5 and then another 10 to actually be interactive.

So it's still useful to me.
To this point and the point below about undergrads and specialized knowledge: yes, you're absolutely right. I should not have said that undergrads don't have the specialized knowledge to teach. Plenty of undergrads make great TAs, and teaching assistants are a critical part of the learning process at most universities. What I should have said is that courses are not taught by (the role of the teacher is held by) undergraduates but by professors and graduate students, who are responsible for the planning, content, and instruction, and for the TAs that assist them. The only point I'm trying to make is that graduate students are given substantial full-time-equivalent jobs and that there place and role in the university ought to reflect this.
> What’s curious is that this is true in every language with general recursion/looping:

Yes, thanks for pointing that out.

> The type of “eval” can also be fully static; it can just return a type that you have to do case analysis or runtime type inspection on to use.

I'd say that's what type T stands for in Lisp, since you can then dynamically dispatch on the actual type of the value.
GC Support in Rust: API Design
The core theory (and implementation) is much simpler for almost all dependent type theories. At least this is my personal feeling after having read a lot of GHC code, written an Idris backend, the native backend for Lean, and significant portions of `rustc`.
I wish HN had more of these posts, for the support.
Haskell's type system has accrued complexity over the years, whereas a small dependently typed language can be implemented very easily [1].

[1] https://www.andres-loeh.de/LambdaPi/
Can't wait to try it out. I hope you don't mind a slightly tangential question: why TypeScript?