skysight-inc/HackerNews huggingface dataset:
I'm working on an extension for Chrome that lets you add a bunch of new emotive reactions to Facebook posts. It's based on this PDL comic (http://poorlydrawnlines.com/comic/proposed-facebook-buttons/) and includes all of the reactions described there: dislike, hate, love, threaten, applaud, stare creepily, accuse of racism, offer bribe, express doubt, incite rebellion, pass joint, and throw tomato. I even got the author of that comic to tweet about my extension! https://twitter.com/PDLComics/status/481493925878714368

I work full-time on Javascript, but this is the first Chrome extension I've completed and actually added to the Chrome Web Store.

Right now it works by adding a unique emoticon comment and parsing that out into a "reaction", but I've been rebuilding over the past week and a new version of it is almost complete (public git repo here: https://github.com/ollerac/New-Facebook-Reactions). This version relies on an external API instead of parsed comments to keep track of the reactions on Facebook posts.
I made a timeline of Swartz' life http://newslines.org/aaron-swartz/ Feel free to update if you see something missing.
Gmail users have an expectation that Google won't start silently diverting their legitimate email as an experiment on them. That's the comparison if you didn't quite grasp that.

You're claiming that users would "expect" Facebook to do something like filter out all the happy posts from their friends and family without telling them? I don't think many would agree with you.
Samsung hasn't slowed their move off of Android at all. This winter, they released the new Gear 2, which ran Tizen instead of Android. Earlier this month they released details on their new Z phone, their first phone to run Tizen. In addition, they announced that they're moving to Tizen for their smart TVs.

They're still trying to move to Tizen as fast as they can; it's just taking time for them to get there.
probably related to canada's new anti-spam law, in effect july 1.

http://en.wikipedia.org/wiki/Fighting_Internet_and_Wireless_...
Really interesting videos, thanks.

Amazing how such a relatively small guy could be that coherent after 17 beers....and could put away 40 in one sitting.
An unassigned variable in C is not "an unknown", though it is (as an adjective) unknown. It's uninitialized and thus equal to some value though it must be initialized first in order to be useful since only then do we know how to predict its behavior.

To break down the difference, consider the idea of names versus the idea of "boxes" or "slots". In some languages those two concepts are undistinguishable because names always refer to locations in memory. In "functional"[1] languages they are separate.

As an example, consider a function in a hypothetical language

def foo (y, x):
let z = get(x)
assign(x, y*y+z)

The (side) effect of this function is merely to update the value stored in the slot named `x` using a function of the value named `y`. To do so, we read from the slot `x`, bind a local name `z` with that value, and then assign back to the slot named `x`. We would call it in a block like this

let box = newBox(1)
let inp = 3
foo(box, inp)
let newVal = get(box)
print(newVal)

and it would print `7` (3*3+1).

I'm being really explicit about the idea of things being "named" by variables instead of just "being" variables. I'm also being really explicit about the notion of how boxes undergo mutation. The reason I do this is to isolate this "naming" property and show how simple it is. Variables-as-unknowns are merely names of values given to them in some context. Usually this is either a function abstraction or a let

let x = 3
# now, here, the name `x` refers to a value `3`

def foo(x):
# now, here, the name `x` refers to some value that
# will later be passed to `foo`

If we need mutation we have to introduce the box idea noted earlier. Boxes with names behave quite similarly to "memory address variables" like what you have in C.

[1] For this given definition of "functional"
> How many were part of that treatment of the experiment, without consent or knowledge?

How would this be determined in offline experiments where people volunteered?
Why do you need multiple IPs when SNI is supported on most major operating systems and most server platforms. Just look on Wikipedia for a full list of technology that supports Server Name Indication. It is free.

$500 certificates are Extended Validation certificates that require man power to verify many details about a company. There are other costs involved in the certificate issuance process that is mandated by the CA/Browser forums.

There are multi-domain certificates for less than $100 that allow wildcard in the certificate. If you really knew what you were doing you would only need one certificate and it would cost less than the $150 you are talking about.

If you have an ecommerce site that Extended Validation certificate is worth it. Our sales increased by better than 40% by having an Extended Validation certificate. So YMMV. Do what makes the best sense for your site.

Self signed certificates are just as secure but they give the warning unless you import your CA certificate into your browser. So you can get away with free if the sites are only for internal use only pretty easily.
Cause that can be annoying.

What if when installing, you could be presented with all the permissions, and a on/off switch for the optional ones, where you could be even prompted for them later (similar to the article)?
It's not really appropriate, given the movie's content - the main character, Jake "the Muss", destroyed his family through his alcohol abuse and horrific violence directed against them (see the film Once Were Warriors). In this film, he tries to deal with the consequences of what he has wrought.

It's a pretty bleak story, and it has little relevance to "a bunch of overhyped and heavily investor backed startups didn't pay off."
Are you diabetic by chance?
That's good to hear, but how representative of a sample are your apps? I think more tech-oriented people gravitate towards well-coded apps that deal with exceptions well. There's lots of poorly-coded apps that don't.
I absolutely agree about the tone. Non-CS major myself, but I don't get the impression that things like operating system design count as "ditch digging". I do think the question of whether CS is intrinsically useful in the same way as physics or engineering is an interesting one. Hope to hear a CS major's response.
Care to go into more detail? How are you handling storage, deployment, frontend. How useful are Shakespearean templates?
What happens when you deny? That's the problem I have: I need intelligent denials. Like 'fake GPS location' or 'fake contacts'.
Software can't grab your testicles and feel while you cough.
Patent officers give no damn to Knuth! ...
I think the community has reacted the way it has, because what Aaron did, downloading academic journals from a cabling closet, was both in the same context as things that many of us have done (Who hasn't, at one time or another scraped a few gigabytes of Academic Journals, and who hasn't, at University, spent a ton of time trapsing through campus in areas a helluva lot more locked down than where Aaron went), and, it was being done in pursuit of a noble goal, by someone who only had the best interests of others, and the internet at heart.

He was then mercilessly pursued, pushed to the point of financial ruin, and threatened with several decades of prison - by a prosecutor who seemingly had zero sense of right/wrong, even in the face of the supposed victim (JSTOR) indicating they had no desire to pursue this any further.

It was the sort of activity that when I went to school, would have merited a 3 day suspension, if that.
Is that 32 bit or 64 bit?
What would SimCity be deciding?
> Algorithms are mathematical structures, and they're also machines.

Sorry, but you can kick a machine. You can not kick an algorithm, exactly like can you can not kick any kind of mathematical construction.
I just looked at Fluxxor and AngularJS. They use the exact same TodoList example in their quickstart guides. Turns out that AngularJS is simpler and easier to understand.
The Erlang post is fantastic. Haven't read the Ruby one yet. Excellent idea for a site. Thanks a lot.
Then why did they let the manuscript go to press without the "this study was reviewed by the University of Somewhere IRB (protocol #XXXX) and was ruled exempt" sentence?

I see this enough in papers that it seems pretty standard to me, and it especially makes sense in a paper where the editors think there are potential ethical issues.

If I was an author of this paper, I would have actually spent a sentence or two explaining why there was not a risk to human subjects, etc.

The way they address this by basically saying it is ok because of the ToS that no one reads is the worst possible way to handle this. It seems to me more like no one thought about it at all than that the editors carefully considered it. I just don't see how you get from recognizing big ethical issues to not even addressing them in the manuscript.
Since those participants did give consent to physically being _in_ a study, that's voluntary.

If social norms within the test population (e.g. graduate students) are that pretty much every study tells participants they are doing X, but they end up doing Y, then people are clearly agreeing (consent, free will, expectation based on norms) that they won't know. The norms are a form of disclosure.

What we have here are invisible, silent experiments that violate precedents and norms, without consent.
See the discussion here: https://news.ycombinator.com/item?id=7959829
Developer-supplied descriptions don't help: If you're worried that an app might use its permissions inappropriately, you should also be worried that the developer will leave inappropriate uses out of whatever explanation they supply.

"Contacts required so we can highlight their names in incoming messages. [And spam them, but we're not telling you that...]"
But with IP delivery the counting is perfect? And you even have better demographics.
BtcCal, Bitcoin price at a glance
Drifting even further afield than the above, but since it's the weekend on HN:

I remember watching a 50s era SF-based film during a Hitchcock festival (Vertigo? Read Window?)in the City, and the streets in the movie were torn up for repairs to the street car system just like outside. The place cracked up.

Everyone ooh-ed and aah-ed over the views with no hi-rises, though.

Even more unrelated to typical HN topics: How have those old tourist courts and motels on Lombard/101 on the way to the GG survived all these years? A serious question.
You may certainly be right on that front. I have no idea how well-coded most of the apps are, but my most heavily-used apps tend to be stable ones just by virtue of the fact that when apps become unstable, I find replacements. My guess is that many people have the same workflow. That said, I don't use any social networks, I don't play very many games on my phone, and I don't have any children, so I don't have any of these apps where you interact with a cartoon cat, or that show you arbitrary colors and play noise or otherwise distracts children, so there are certainly large subsets of the app ecosystem that I really am not taking advantage of.
Jekyll turns 21! Err... I mean 2.1.0
>forget getting answers to questions unless you were one of the sites better known users

That doesn't match my experience. I have only ever asked one question on Quora, and at the time I had only written a single answer on an unrelated subject.

My question was about the value of staying in the official hotel vs an Airbnb when attending a conference and I got a quality response from a cofounder of Lanyrd.
What's funny is that I'm completely at loss at the new system. All of the permission are either so broad that they could mean anything, or so intrusive that all available apps now basically spy on my entire life.

If I can't understand their scope, I have no idea how the metaphorical average user will.
I agree with you but would go even further in saying that the idea that "human creativity" is somehow exempt is another layer of hubris.

The comics will probably be the last to lose their jobs (long after we have no need for the very many people currently involved in transportation, for example) but a virtual infinite number of monkeys typing very fast on an infinite number of keyboards with a really clever machine learning filter eventually beats them, I'd bet.
Billy Beane’s Ascendant A’s Are Playing a Brand-New Brand of Moneyball
This is really neat, thanks! I like all the browsing ability that this seems to offer. I should throw-out another option: youtube-dl ( http://rg3.github.io/youtube-dl/supportedsites.html ) in the past I have used it for sound cloud cause the site does not work well (I can usually browse but not listen to anything) on my system, and youtube-dl only really needs python.
Let me clarify: I don't have a pension fund, and neither no most people in non-unionized jobs. My RRSP account is a personal investment account. My employer contributes to it, but I am the investment manager.
I wonder how deep the rabbit hole goes...
I'm just curious, what value do you place in Internet karma. Conceptually I get why people give a damn about it- but why do you, personally, care about imaginary Internet points?
Do you really think Obama is where he is today out of merit?

He won't rock the boat. He won't go JFK on people and cause a ruckus.

Do you really believe an upper-middle-class lawyer can breeze past the multi-billionaires?

Look at what's happening in Detroit. Who the scapegoat is for the downfall of an entire city.
Looks like they have enabled answer checking again .
I hate to be that guy, but Snow Leopard is 3 full OS versions ago. That is like complaining that something doesn't run on Windows 2000.
So in your narrative, who are in the insiders? And in what terms are they thinking as opposed to the 'outsiders'?
Cook’s Apple: Padding the Bottom Line, Gouging Loyal Customers
As a person with a degree in CS I have to say this is bogus.

The writer doesn't explicitly state what CS skills are but he says they will be outsourced. I take it he thinks CS means you only learn basic programming or how to install software. He then says it is good to spend time in the lab learning how stuff works. I had to learn plenty about how computers work from low level details to theory of computation to high level specifics of software design.

His second part about languages coming and going so therefore don't study languages?? seems odd since someone is apparently making all the new languages. Apart from that, understanding concepts such as oop or functional 'paradigms' are not as easy to wing although admittedly things are becoming freely available on the web.

Then he said people who build OS's are ditch diggers but if you look at how hardware has changed, building software that can handle different devices and allowing them to interact with the OS is huge! Just look at the evolution of super computers that physicists use. From vector processors to multicore cpu to gpgpu, there needs to be people who understand computer science to work on these things because computers require someone to know about computation itself.

Lastly, I had to learn computer architecture, physics up to quantum mechanics, and I had to take all sorts of deep math courses so the writer is completely wrong about the CS major.

[edit] and I forgot to add in algorithms and data structures which are themselves deep topics and no, algorithms are not useless, knowing which algo or data structure to use can save a lot of time and therefore money. I should say that theory of computation and algorithms really distinguish the major and add that currently in demand are skills such as machine learning or data mining which are subsets of the CS field.

If I was to give a reason not to major in CS it might be that the degree is very popular right now and the demand for the degree might at some point be larger than the demand for persons with the degree.
First, two disclaimers. I'm an advisor to Highway1, and my only firsthand manufacturing experience is with a relatively straightforward boardgame, produced stateside (because after investigating overseas manufacturing I decided it was more complex than I could manage without help).

I don't think this is a very accurate assessment of the problems facing startups. Most of the problems you pose can be solved in a few conversations with a good lawyer or experienced operator. If you want protection from patents, you're likely going to be talking to the kind of folks who sell protection, like Intellectual Ventures; they'll be happy to take your money. There are companies that specialize in managing certifications, listings, etc. These are problems you can solve with a few phone calls and a check.

There is, however, a do-or-die problem for most startups: it is extraordinarily hard to create a strong working relationship with a great factory.

First, you have to find a great factory. That requires a lot of experience and a great deal of touring, QA, reference checking, and so on. And while the good ones are great partners, the bad ones are working very hard to deceive you in to thinking they're good. But the worst part is that most of the best factories will have nothing to do with you because you're too small. You don't have the volume to be interesting yet, they are concerned you'll go out of business, your team may not be experienced and so you'll make mistakes that they'll need to correct, etc.

Second, you need to create a great relationship with them. That means at least one person living there full-time. And that person needs to have expertise in manufacturing, QA, and so on. That person needs to feel great about their role over a very long period of time, and not everyone who moves to a new country finds it to their liking.

Third, you need to figure out a logistics supply chain. A good friend, having solved both the previous problems, nearly bankrupted his company when the shipping service used the wrong kind of pen and the address rubbed off all the labels. The return fees alone were more than the total profit on the product.

Companies like Apple rely on experts like PCH to do this for them. I believe most startups benefit from it too.

Also: PCH/Highway1 is willing and well equipped to help with most of the rest of the problems you list as well.

You may or may not find Highway1 to be a good fit for your needs but unless you're very experienced in overseas manufacturing and/or doing something truly trivial, I believe you'll have more challenges with manufacturing than you suspect.
Ask HN: Looking for C# dev stack advice
I have some C# enterprise type work coming up and am looking for advice or links to good information about what a great C# stack looks like. Specifically I'm wondering what good options are for unit testing, mocking, building, database connectivity, and dev libraries and frameworks.

I have a lot of experience with enterprise Java, for comparison here is what my answer would be for it:

Testing: JUnit, Hamcrest, Mockito
Database: Mybatis, Mybatis Migrations
Build: Maven or Gradle
Libraries/Frameworks: Guava, Guice, HttpClient, Jersey or Stripes, log4j, Apache Commons

Thanks!
It'd be an improvement.

But I suspect too many applications would deliberately be set up to either have no optional permissions or would be set up to pop up a screen saying "please enable permissions" and close if you turned any of them off.
You are travelling in time as you read this
http://rappad.co/blueprints/1064
How would you say this compares to a "virtual calling card" service like KeepCalling.com? (Dial a local KC number, enter your pin, and then dial your desired phone number in the US or wherever.)
Facebook manipulated feeds of users to study emotional responses
Well, it was a borderline call, so I've restored the thread.

Perhaps I should explain our thought process. There were at least half a dozen major web publications today putting out variants of this indignant post about "Facebook's unethical experiment". Did all these authors suddenly develop a passion for science ethics? Of course not. It is simply the internet controversy du jour. Those have never made for good HN stories, and the policy has always been to penalize them, because otherwise they would dominate the site.

In cases of pile-on controversy like this one, when the original story has already been discussed on HN—which is pretty common, because HN users tend not to miss a day in posting these things—we usually mark the follow-up posts as dupes unless they add important new information, or at least something of substance. Does this article add anything of substance? It didn't strike me that way, but arguably it does.

As for the PR fluff piece you think is on the front page, why haven't you flagged it? It's impossible for us to catch (or even see) all such things. We rely on users to point them out.
What would you say about Clojure, then, where one of the big selling points is concurrency?
Exactly. That's what Copyright is for, a perfectly fine way of protecting a software developer's work.
Or even if just quicksort and mergesort were patented.
I think the way it usually works is the company will craft a compelling narrative summary that paints the company in a good light and contact bloggers their PR people have good relationships with. Then when one blogger bites, they give them exclusive access, quotes, sound bites, etc. The blogger then writes their own story the way they see it, but they are primed to write the article the company wanted. At least that's the rumor I've heard about how it works.
You can always work with pintos (http://web.stanford.edu/class/cs140/projects/pintos/pintos.h...) or some other relatively simple 32-bit operating system if you want to get a feel for how to do this stuff from scratch. There's not a lot of point in it with Linux and all. Mostly it's a lot of tricky multi-threaded C programming.
The fact that Android has more 'dangerous' abilities (sending SMS, phone calls, etc) makes it more difficult.

I'm also surprised that there is a permission for using internet access.

A few months back I had to deal with this on my home network: https://adblockplus.org/forum/viewtopic.php?t=11849
My brother had Adblock Plus on his Android tablet and it was continuously sucking down data to do nothing, presumably in a background process.

It makes sense that if you want to give devs lots of power when making apps, you need to give users finer grained permissions. Maybe you can group things or whatever, but you probably shouldn't be making permissions coarser grained or forcing users to install 3rd party apps to get control of their phone again.

This is one of the reasons I use iOS. I don't really have to worry too much about apps doing dodgy things because they are severely hamstrung to begin with.
> They provide the tools to make your app have different layouts on different form factors

This is exactly what I stated above, and my argument is that it is suboptimal to having a design from the ground up for a specific form factor. I'm not saying it's bad, but it's never as good as designing from the start with the exact form factor in mind. And it's absolutely more work for the developer. But that's the point - Google is encouraging developers to take the easy road: not to develop a separate app but instead make a few tweaks to their phone app so that it lays out better on a tablet while not addressing the fundamental difference in scope and complexity that a tablet app can offer.