skysight-inc/HackerNews huggingface dataset:
He's saying people are turning it into a buzz word that is losing it's true meaning, so instead of the buzz word, think of what it's really all about: composing and managing side-effects. Take a look at Google Trends for "Reactive Programming", it spiked over the last year or so,: http://www.google.com/trends/explore#q=reactive%20programmin...

Take a look on GitHub at all the projects with reactive in the name or descriptions; it's become a buzzword that people use to describe various things that don't have any relationship to the original.

Iterable is broken, as Erik said, because it has a hasNext() method, and a next() method, which is a problem because hasNext() causes side-effects to be evaluated.

Imagine if the implementation of the iterator has to execute a long running function, or wait for the next value in an observable to be pushed, like an event. So, if call hasNext() twice, then it may cause a side effect so that next() actually has a different result than it would without the side effect. Thus, it is not mathematically, a function, and can't really be used to build monads.

So, unfortunately, due to backwards compatibility, Java classes that implement Iterable/Iterator can't automatically get the benefits of list monads etc..., by simply defining a library of operators that take Iterable/Iterators, like C# could with IEnumerable/IEnumerator.

In C#, IE only has side effects in the MoveNext() method, which returns true or false if there's another element, and the effect is explicit in the name, which helps. However, more importantly, if you get the value from Current, there is no side effect, and you can do that as many times as you like.

With Iterable, if you call next() it moves to the next element. So, it is impossible to get the same value twice with a guarantee of no side effects, and impossible to guarantee mathematically sound composition of Iterables. The interface is broken, and changing it would break nearly every Java program.
Hard Reset: A fast and easy way to wipe your personal data
GHash.io already have acted dishonestly when they had a large but substantially sub-51% share - they launched a bunch of double spending attacks that effectively stole money from a Bitcoin gambling service.
What would it do if multiple addresses share those bits?
It was under its averages, but still at a frothy valuation (75 P/E before the announcement). The majority of their revenue comes from bookings and that's going to be hard to continue milking quarter after quarter. A great move to sell out for a very high sum.
I agree with your second idea. I don't see how it's different from Vim or Emacs.
This is the best rationalization for maintaining the current structure that I have ever seen. I can almost buy it.

I don't think that our current leading-edge technology has really gotten enough penetration to see how it is going to change things. And I think that within two or three decades, the capability of those machines/AIs is going to increase by a very great amount.

It is almost of a leap of faith to have this worldview, but I have seen so many powerful AI wins recently (self-driving cars, Jeopardy bots) changes and advances in actual artificial general intelligence, that I think we are going to see "strong" AI within two to four decades.

Even if that doesn't happen, the leading-edge machine-learning and automation robotics is only starting to be deployed.

Within a few decades, I think there are going to be so many jobs replaced, the current structures will be inadequate.

And as more and more jobs are replaced by deep learning systems and/or better natural language processing, even before we get to "strong AI", I don't see how the structure is going to accommodate that.

The problem is that within not too many decades, I believe, almost _everything_ people do can and will be done better by AIs/robots.

So whether we can keep our jobs is not even really our main issue. What we really need to think about is, how can we stay relevant in a world where AIs that are twice as intelligent as people are common? The answer, I believe, is to incorporate those AIs within our bodies.

Ultimately to buy into that line of thinking really requires a significant change in your worldview, which is why I think a lot of these discussions aren't really fruitful. It comes down to your beliefs. (Everyone has beliefs, whether they are boring and reassuring, or "crazy" sounding like me.)
Seems that you use twitter as "rss with human faces attached"
I can't agree with housework(I don't care), but I do care
about how a person treats kids, animals, and the less
fortunate. The mother can be a good barometer, especially
if the bride is not educated. As to looks, I thought it
didn't matter, but I was recently reminded how primitive
I really am. I was, I thought, in complete love with a
Midwestern girl in the 90's. Eric Fromm type of love! I
just was her at DMV and that love was gone. She morphed into
her mother. Her voice changed. Her liberal views were buried
under layers of the wrong foods, and too much alcohol. I
didn't recognize the most beautiful person I had ever come
across. She knew I liked her years ago, and abused it--so
maybe my repulsion had more to do with that, and
not the way she aged? I'll never know?
> "per year the loan is held" sounds exactly this.

I was not aware of this. You are correct - this looks more like interest than a facilitation fee.

> that is the definition of a '%' sign, isn't it? :)

Transaction fees are usually assessed as a fraction of the value transacted. A flat fee, within this context, is a non-varying percentage of the transaction value, e.g. 5%. A non-flat fee has moving parts, e.g. 5% for the first $100, 4% for the next, etc. (or 5% if the interest rate is less than 15%, 10% if above, etc.).

It is an ambiguous term. I try to avoid it. Instead of calling a fee "flat" to emphasise its simplicity, make it simple.
SmartJars – Organized storage for small items
>Some of those , like arts and philosophy and exploration and adventure would not generate an income, and would be done for free/fun.

Why would they not generate income? Currently all of those activities are done both for fun and for profit.
Another related effort is http://turbolua.org/
"then to move on up I need to do a whole lot of marketing and hustling to get the right people to listen to me? Moreover, are you saying that it's a whole lot easier to have someone with all those connections to do it for me? "

I suspect that's largely true. Even for the people who could do it, the more they do that, the less time they have for actually working on their product/craft/music/act.
Academic Publisher Fights Publication Of Paper Criticizing Publishers'
I see your team made Fundtastic. It's a great site.
Use a decent language like JavaScript. You are correct that terrible JavaScript is available and widely used, but all of the platforms support both, so you may as well use decent JavaScript instead. :-)
Any time a Bitcoin address is used for transactional purposes and appears in the
block chain, its firstbits - or the prefix that uniquely identifies that address
within the block chain - are considered assigned at that time. If another address
is created and used with the same prefix at a later time, the firstbits of that
new address will be at least one character longer, as the shorter prefix remains
reserved for the address that used it first.

https://en.bitcoin.it/wiki/Firstbits
Um ... bit of both. My goal is personal enjoyment - I've done graduate level maths [way in the past] but graph theory never really featured for some reason. Thanks for your continued consideration.
Starbucks rolls out wireless charging stations
The Title Of This Article Makes Me Think Of Jaden Smith

https://twitter.com/officialjaden
Mailpin – Create web page with an email
Author of said project here. Some additional info: the library is live on CodeCombat (http://blog.codecombat.com/new-experimental-languages-python...), which means you can now code your CodeCombat games in Clojure! Happy hacking! ;)
Ask HN: Legal advice for a programmer
I have a friend who is caught in an IP issue with their employer regarding a side-project. They told their employer about the project multiple times in detail, and the employer explicitly encouraged and promoted their involvement.

Now the employer has started an investigation because they've learned that the project is taking off and is commercially viable. Whether the employer is trying to defend themselves or something more sinister, my friend does not have a legal contact who can offer advice.

Can anyone recommend my friend a lawyer in the London area?

Following similar advice on HN before, I've told my friend to keep quiet until they've gained legal advice. Are there any other immediate things my friend should do?

Thanks
There's protections against this sort of thing that major isps implement. You can't just set your from address to whatever you want. Well you can, but it would be likely be rejected, or at least wouldn't reach your target's inbox.
It's just a good idea that was never (AFAIK) done for shell only interactions. Often good to be able to have progressive enhancement (people not allowed to install emacs say).
If anything here is thinly veiled, it's your opinion.
I have no experience, but here's my reasoning:

At the moment you don't have a lot of traffic, so you likely don't have a lot of users, and you don't really know if you have something they'll pay for. You don't really know what problems they experience using your app. You don't really know where else in the process they might fall out of the funnel. Putting the CC requirement at the beginning will even further restrict the flow of users through your funnel and make it harder for you to learn where your stuff is broken.

When you do have traffic, A/B test to find out which one works better for you BTW: there is likely more than one axis with which you'd measure what is "better". You'll have to decide for yourself what those are. Is it better than you have less tire-kickers and more seriously committed users? Is it better to have more people in the funnel in total so you can optimize the trial experience? Is it better to have pre-authorized the credit card and remind them that you're going to start charging them tomorrow if they don't cancel their account?
The sad part is that much of the current business model in the retail financial 'services' industry is built on obscuring what is in the end customer's best interest. This is why Vanguard has so much money fleeing towards them. What gets me is how otherwise very intelligent and successful people (engineers, execs, doctors - you name it) get suckered into bad investments because of a slick person in a suit.

I really hope they push this rule through - it's in the best interests of so many hard-working Americans. Who cares if a few sharks have to starve? Maybe they can go sell used cars.
> The pool would notice that certain participants contributions are conflicting with other discoveries, and ban such participants?

How? Or, you ban me, I sign up again under a different alias.
Already read it, I'm in the comments on the blog entry a couple times. If GHash were actively exploiting this advantage I'd be saying the same thing but they aren't and there's a high probability that they never will.
Linus once wrote a nice (typically Linus) rant on why cmov is a terrible idea in most cases:

http://yarchive.net/comp/linux/cmov.html

> In contrast, if you use a predicated instruction, ALL of it is on the critical path. Calculating the conditional is on the critical path. Calculating the value that gets used is obviously ALSO on the critical path, but so is the calculation for the value that DOESN'T get used too. So the cmov - rather than speeding things up - actually slows things down, because it makes more code be dependent on each other.
If nothing else, it kind of follows from Curry-Howard correspondence.

What makes it okay? This Python program will not throw an exception when ran

def f(x):
return x

if False:
f(1,2)

even though the types are wrong. Are you 100% certain that you will never make a bug like this even when there are 10^13 conditions and the call stack is deeper than the Mariana trench? Note that that this is not the only type of bugs that static typing prevents.
I notice that whenever I update my profile I tend to get a huge increase in emails.
Big fan of Lessig
Congrats on having tried. I'm sure you learned a lot that will help you succeed later. Good luck!
If I want to encourage people to respond because I'm honestly interested or confused, I edit my downvoted reply and double-down on the explanation of my point-of-view. It's important to me that people downvote me for something that is expressed unambiguously and that I truly believe. Then, it's a point of pride to be downvoted.

Also, for anti-authoritarian/anti-libertarian stuff that gets downvoted: I notice that I generally get most of the votes back later in the day and overnight after Europe gets into the office. The US middle class is generally very angry, and believes that money is the condensation of divine grace. Just saying.
No, googling those results doesn't really work. :) You get a ton of dogma with a lot of logical arguments. All of which are very appealing. Appealing arguments worry me, though.

What I have not seen, is evidence that any of your claims are true. I have seen easy to read programs in both dynamic and static languages. So far, I've seen very little correlation between the two as to which is desirable. The static languages are typically a bear on some algorithms because you have to provide so much more to the compiler for it to trust you. This does feel like it would lead to less bugs, but it goes against the "readable" and possibly the "more productive" ideas.
I think there were some older mainframes (CDC? System 360?) that may have done this to some extent -- it'd only really be feasible up to a certain (very low) point though, since you have the potential for an exponential explosion in the number of possible execution paths if more branches come up before you've resolved the outcome of one you're speculating on (especially in the deeper pipelines of modern machines, with perhaps 3- or 4-wide issue and a dozen or so cycles before a branch gets resolved).
A real-life hoverboard
Great material! Can we get a follow up article for seventy year olds? Not a lot out there for the elderly.
Math for seventy-year-olds
Thanks!
> It's pretty easy to break delegation

I'd be interested to learn how mining delegation could (in theory) be avoided. It seems to me that as long as you have a proof-of-work designed around something that can be solved with distributed computing power, there may always be incentives for delegation and cooperation (especially to reduce variance). I'm genuinely curious to hear what other approaches can be used to "break delegation."
SEO optimization tool to optimize title tags and meta description
I've got a couple other utils I'd add to a list like this:

- kitty (ssh client, fork of putty)
- visualwget (wget gui)
- dsynchronize (dir sync)
I don't question that the state can revoke a charter, I meant if it had done so as a result of a perceived threat (rather than as a result of criminal behavior). I'm aware that since the state also defines criminal behavior the line can be blurry, but I think we can agree that the North River Sugar Refining Company did not pose an existential threat to the state of New York.
Priceline to snag OpenTable for $2.6B in all-cash deal
Can a mod fix this so it links to the first page in the article?
This is a duplicate of another story you have on the front page right now. Please don't do this.

Also, please don't post stories and comments complaining about moderation (as you've been doing). Send them to hn@ycombinator.com, as the site guidelines ask.
Is 3% in three years really "monumental" progress? I honestly don't know much about the issue, but those numbers hardly seem monumental to me.
How  Xcode 6 Will Make Developers Like Me More Efficient
Straight-up IQ isn't everything. As a society we'll learn to better value (and make use of) other qualities, other intelligences: http://en.wikipedia.org/wiki/Theory_of_multiple_intelligence...
How do you determine the return value of a C function? You look at the function prototype. How do you determine the return value of a Python function? You have to read the whole thing. If you are working with large code bases, reading the whole thing is not really possible.
I found it to be not too fast once I started focusing on what was being input instead of the changes to the output.
Turning off that distracting auto-fu would help a lot, I think.
It's really hard to make money on those fields.Very very few do, and i don't expect it to become any better.
I was disappointed to get that email, I have an API key and am using it for an ongoing side project of mine.

It seems counter to everything else Netflix engineering promotes with its tech blog and open source contributions. To be so public and open on one hand, and then shut down the public API on the other seems strange.
Done. Thanks for pointing that out!
100% automated rank tracker monitor
domaintower rank tracker, automates your rank tracking & reporting. Keep track of your keywords, and your competition.
What would a combined Sprint and T-Mobile look like?
Why Most People's Charts and Graphs Look Like Crap
Always be wary of a precise thing as explanation for stuff existing in the real world, doubly so if the stuff predates the thing.
Is it just me, or does anyone else feel that gradual/optional typing isn't good enough? I've been trying out Typescript in a couple of nontrivial projects, and sure, it does catch some errors, but as long as you're forced to integrate with an unityped world it doesn't really catch enough problems to be worthwhile, IME. You can of course write type declarations for all your "foreign" libraries, but that's just an added burden that you (the programmer, not the language) have to get right. Plus, since the unityped language is so flexible (and thus conventions are different vs. a multityped language), there are things in the unityped language that cannot be sensibly typed without just resorting to saying "any" (which is the only type of the unityped language).
Chef (programming language)
Excerpt:

Chef is a programming language in which programs look like recipes.

I have no clue how serious they are.
Needs a (2012) in the title.
I dare say you're right; never got far with Kant beyond the Imperatives - you appear to use his definition from within value ethics. My assessment was closer to the use in economics but still a bit aberrant - the context was the comparison of the value within the exchange articles themselves across paper money, gold, and cryptographic currency. The essence of my argument is that there is nothing else to be done with non-physical "articles" of exchange.

One might argue that the use of crypto hashes to certify documents or perform escrow-like services is comparable to the physical utility of gold and "paper" money. That seems a more apposite objection to my point, but hey ...
The optometrist I go to said it was a pretty severe case of colourblindness, however compared to other colourblind people I know, its not too bad. I have 2 cousins who fully cannot distinguish red from green, where as I think of mine to be closer to an optical illusion.

Green/Red street lights are easy to tell apart, but the amber light in the middle can look very close to either depending on the light level outside. A red flower amongst a green leaves is something I would overlook, unless it was pointed out to me. Then I would have to search for the flower. While looking directly at it, its pretty apparent its different from the green leaves but to spot it without previous knowledge that its there is a difficult task (This situation came up yesterday while someone was pointing out a wild rose among a hedge.).

Overall it I would say it doesn't have an effect on my daily life. I can still wire up a RJ-45 connector under good light conditions (I use my phones flashlight to do it). Oddly enough, being colourblind has made me better than my coworkers at wiring up Cat6, as I double and triple check each of my connectors quite thoroughly to make sure there is no mistakes (As me making a mistake will directly be blamed on colourblindness and my abilities will be called into question, if a coworker makes a mistake it is just that - a mistake).
I guess online music industry getting too crowded. Yesterday, Amazon announced music streaming service as part of Amazon Prime bundle.

I liked earbits though especially the people. Now a days, Rdio is my go to place for music. I like UI and the whole experience.
I think that the "selfish mining" in your first point isn't truly selfish mining. The idea is that the particular method of selfish mining being discussed would be defeated by a truly selfish mining method. No matter what you want to act selfishly and the debate is whether or not their is an optimal selfish strategy that is bad for the overall bitcoin infrastructure. Since little to no incentive exists to stick with a mining pool that is selfishly mining it is my understanding that that the attack using a mining pool mentioned in the previous post will not work well.
GitHub has a plain-language website that helps you choose an open-source license, though their list of "featured licenses" is just APL, GPL, and MIT. BSD, LGPL, and others are demoted to their list of "other licenses".

http://choosealicense.com
Who the hell are you to tell me how and who I peer with? It's my network, you shouldn't be able to force me to peer with actors who will flood me.
The renaming question has been debated at length multiple times, more recently in: http://erlang.org/pipermail/erlang-questions/2014-February/t...

Here's what I tell people when I mention Erlang and then OTP: "OTP stands for 'Open Telecom Platform', but it's just badly named due to old corporate history at Ericsson. It's more of a general development framework that includes generic versions of design patterns to build pretty much any Erlang application."

I have never received questions after that about the name -- people get more interested by what it contains than what the initials stand for.

For the argument about 'core Erlang devs', the post you mention is:

1. not from a core Erlang dev

2. actually from the main Erlang developer of Cowboy, one of Erlang's most used web server/framework

3. Right that JSON is a pretty inefficient serialization format, full of ambiguities and with many undesirable limitations.

4. It's also right that JSON contains nothing regarding hypertext within its data type (ignoring JSON-schema) and is therefore a weird choice for the web and REST, where hypertext is fundamental.
Yea, why understand your problem space and learn from history.

If only Erlangers spent more time on marketing and less time on building things!
You are just trying to make an appealing argument. This literally adds nothing to the debate. A simple survey of open source software would be more convincing. And even that wouldn't be definitive.
It seems your response says a lot more about your thinking than it does about Bret's. Perhaps you might try taking the view that Bret has really good reasons for doing what he's doing and try to figure out what they are, rather than presuming what he's doing is not for good reasons.
First this: "I would argue that 200 years of recent history confirms Friedman’s point of view."
Then this: "This is not a world we have ever lived in."
"We just know we will create an enormous number of them."

It's unfortunate to see even the mighty brains fall victim to rationalization. Dismissing anyone who is concerned the social impact of what's coming as Luddites hinted this was a output of an ideologue and not a philosopher, and it degraded from there.
This is probably different for different people, but I find myself constantly looking up the right flag for controlling a part of a request with curl even though I use it a lot. Having the command line be smarter about interpreting which argument is which seems like a productivity gain to me.
Thanks; done.