skysight-inc/HackerNews huggingface dataset:
While I wasn't a big fan of the "Cab Ride" story I think people are overreacting a bit.

I was much more concerned with how this story was received:

http://news.ycombinator.com/item?id=3548445

The top comment thread is nothing but useless chatter from a crowd that should obviously stop surfing and get back to work. I thought it was really distasteful that the folks who called out the OP's poor work ethic got downvoted so heavily.

One thought I've had is some sort of "elder" system on HN. I've noticed that the vast majority of the thoughtful and well-written comments come from people (a) above a certain karma threshold, for obvious reasons, and (b) they've been on HN for a good while.

I don't know how it could be implemented, but there's definitely a tone and voice associated with really good HN comments, which is why I keep coming back here. I feel like people who stay for a while and don't try to pull in the direction of reddit eventually gravitate towards this tone and style of writing. (I feel I certainly have, my first heavily-downvoted crap comment was a big wakeup call to contribute better thoughts to the discussion).

I think HN does an admirable job of pushing back against the "Eternal September" effect, but hey, let's be real for a second - even great minds might read trashy novels every once in a while. The cab story might just be an example of that.
They are probably still storing hashed passwords. It would require hashing your login attempt 3 times: 1) exactly you typed it 2) forcing first character to be lower case 3) inverting the case of all letters.
World events shown on a map
Why does nobody ever mention the obvious solution? Separate var statements.

They're always correct, they copy without any editing, and the "var"s line up to show that it's a block of assignments the same as commas or whitespace.
You don't need to store the password in plaintext, you can just capture the password from a successful login attempt and generate new acceptable hashes from different variations of it. That way you'd gradually add this feature for most of the active accounts.
I would argue that FB is a threat to their search ads, too, in the long run. And it's not too difficult to foresee some scenarios in which that's true.

At least Google seems to think so. (If they just thought FB was a threat to display ads, they probably wouldn't be making social such a huge, life-or-death deal).
I completely agree. I wouldn't go as far as the blogger to call it "trash", though. I think there is still value in that piece, and an appreciative sentiment to be shared. But there is no doubt that there is not the level of intellectualism for HN's supposed standard. There are routinely non-entrepreneurship articles that get attention on HN, but generally they are at least scientific/academic or relate to business.

EDIT: And now the OP got deleted. Anyone have an explanation?
American Science and the Anti-Bacon Agenda
Just because you don't want to get clean and make scrambled eggs at the same time doesn't mean others wouldn't like to.
You don't even need that. When you receive the password, you can compare the stored hash against:

hash(password)
hash(password-inverted)
hash(password-first-upper-case)

This way it'll work with an inverted password even on the first attempt (after this feature was implemented)

Edit: Going by my gut feeling only, this feels slightly more secure too... If the hashed password database is ever leaked, it feels like it would be easier to crack a password given the three related hashes, compared to just the one.
The big surprise for me: Why does this graph show Scala as a descendent of Clojure? I was not aware of that at all. What features or ideas does Scala get from Clojure?
You don't need to have the user change their password to implement this kind of change -- you can generate and store the additional hashes after any successful login attempt.
I heard many people submitted verbatim copies of their resume. Imagine having to browse through hundreds of applications and ASCII resumes. I suspect formatting of resumes trumped content.
> giving a +1 to a video that could possibly go on your Google+ wall (if that even exists)

It does not exist. You can specifically Share a video with Circles.

> influence your search results in ways you don't want,

In the upper right on your Search page, you can click "Hide personal results."

> or show up awkwardly in other strange ways while using other Google products like Gmail

[citation needed]

> The real problem is the effects are unknown and upvoting is no longer a contained action with a specific social purpose.

What if you want to share with your circles, what if you want things you've +1'd to influence your search results, what if you want to see better ads rather than crappy ads?

> my boss reading that I "liked" a LOLcats video while at work

Don't Share that with your boss. That's what Circles are for.

> my wife seeing that I "plussed" a review of Avengers by a woman in lingerie or something

+1's are inherently public.

I can appreciate that you like to give feedback to content creators saying, "Hey, I liked this!" Google is tying the "I" in that sentence to your Google+ account.

I think the days of "Anonymous Likes" are somewhat over... They were always susceptible to spamming, anyway. And they were never really as anonymous as we liked to think they were.
I've not actually heard of these guys before (maybe I've not been paying enough attention) but this looks like a fantastic product/service.

This looks to be perfect for me to recommend to friends and family who want me to create them "a quick website", with minimal costs.

The iPhone app video looks pretty compelling. Congrats.
> You're optimizing for programmer excitement. There's a famous graph of programmer excitement curves floating around on the net, with a peak at "new and shiny" stage.

I at no point said that this should be the overriding factor. I said that the need to consider developers' personal goals is often understated, and is one of many pieces of information worth weighing when making a decision.
There really isn't a Rails vs Node dichotomy, though. More like Sinatra vs Express -- you can write glue code in the Ruby ecosystem as well if that's what you want to do.

You use Rails because you want and understand the magic, not because it's magical. You might be initially allured by the terseness of Rails, but the learning curve of what Rails is doing is why you use robust frameworks in the first place -- because you want shortcuts and optimize away from trivial things like form parameter passing and route generation. Learning what `resources :topics` does is "tedious" in a much different way than the tedium of scoping out:

app.get '/topics'
app.get /topics/:id'
app.del ...
...

Because then you see an npm package like `express-namespaces` that lets you do this:

app.namespace '/topics', ->
app.get '/', ->
app.get '/:id', ->

And after a while, some people agree to consolidate this into:

app.resources 'topics'

And soon a part of the community decides that they might prefer these sort of conventions and it becomes the seed that blooms into a robust framework.

...And then another part of the community will complain that it's "too magical" while I do the Jackie Chan 'wtf' gesture because there's a crystal clear API and they'd rather form a Cloud Chorus against alleged "magic" than humbly accept that they might not appreciate the same things that other people appreciate.
JavaScript and semicolon controversy aside - I'm always happy when I read a post written in this style. It's clear (at least to me) that the author has taken the time to think about what they're saying, and they present clear arguments. I always hope that more people write this way; in the style of what I feel is real discussion.
Whether you're a novice programmer or an expert programmer, using comma-first or comma-last isn't going to bite you in a way that isn't immediately solvable.

Really?

The comma first style makes it less likely that your list will end with a trailing comma, which can cause IE-specific bugs. If you're trying to track down the IE breakage a couple of weeks after you wrote down the code, it can be fun to track down the extra comma. If you don't know that this bug is possible (as I'm guessing you don't), multiply the hair-pulling by 10.

See the cautionary story in http://www.enterprisedojo.com/2010/12/19/beware-the-trailing... for a real life example.

With the comma first style, that bug would never have been introduced. Neat, huh?
Confusing intent and outcome
I'm guessing the HN web server has a particularly narrow interpretation of the HTTP/1.1 spec:

For compatibility with HTTP/1.0 applications, HTTP/1.1
requests containing a message-body MUST include a valid
Content-Length header field unless the server is known
to be HTTP/1.1 compliant. If a request contains a
message-body and a Content-Length is not given, the
server SHOULD respond with 400 (bad request) if it
cannot determine the length of the message, or with
411 (length required) if it wishes to insist on
receiving a valid Content-Length.

In this case Lynx knows HN is a HTTP/1.1 server and so doesn't bother with Content-Length. That makes the server code a more complicated so I guess it just hasn't been coded.
Discussed below. The Scala containers library contains an implementation of Bagwell's HAMT type; which first gained fame in its Clojure implementation. HAMTs have since appeared in many language library suites.
In the case where APIs are not protected, it doesn't matter what the jury thinks, there was nothing for Google to infringe. So there's no need to ask the jury about that and you can have them just assume that APIs are protected, because that's the only time when their verdict will matter.
Hi Juho,

I'm the guy who did this study at Google. I agree with your criticisms that the measurement setup does not reflect real network conditions in all cases. However, we have done a tremendous amount of measurement on real mobile networks as well, and settled on this approach after a lot of iterating and tuning to come up with what (we believe to be) a fairly realistic setup that - most importantly - achieves repeatable results. This was a deliberate tradeoff.

We have measured mobile networks all over the world and observe that the network variation across space and time is incredibly high. It's pretty much meaningless to talk about "real mobile network conditions", since the conditions you measure in an office in Seattle are so vastly different than what you get on a train in Finland or a highrise in New York. The simple throttling we did does, in fact, accurately reflect HTTP and SPDY load times for those specific network conditions, which were meant to be representative of major carriers in the US.

You're right that we did not account for network latency to the origin server, but I would not expect that to skew the results in favor of either protocol, since the last mile is the slow link in this case.

The DNS overhead was an artifact of the test setup, but HTTP and SPDY should have the same number of required DNS lookups in both cases.

Feel free to drop me a line (my contact info is on the original article)!
That's not true at all. The article says that you have three Facebook passwords, not that the passwords are case-insensitive.

The three passwords in question are the password you typed, that password with its case toggled, and that password with the first letter converted to uppercase.

In other words, if your password were "asDF", then "asDF", "ASdf", and "AsDF" would be valid passwords, but "asdf" and "ASDF" would not.

Most likely, hashes of the password you typed and the two transformations are stored separately. Or only the hash of the original password is stored, and the transformations are done as part of the login process.
They are storing it as you entered it in a hash, not storing them as all uppercase or all lowercase. If they stored it as all uppercase, then you could randomly change the case of any letter, which does not work.
Soo... does that mean other platforms also expire when they can't be bothered to support a game? For example, a playstation version? What about guitar hero?

(Why would the servers be required anyways? To stream content? Couldn't content be downloaded on first run (which means you only need to fund a server&pipe big enough for new purchases))
Microsoft says goodbye to Windows Live brand
When two people independently construct the same code with only trivial naming differences, what then? Is that a copyrightable expression or is it an uncopyrightable idea?

The problem I think GP is citing is that it's unreasonable when one piece of code violates copyright for carrying out some function, and another piece of code does not violate copyright for carrying out that function, even though after being run through some automated transformations (for example, an optimizing compiler), the machine code for the two pieces of code is near identical.

One person uses a for loop, another uses do while, another uses recursion. Copyright law doesn't care that they all do the same thing; one could be a copyright violation while the others are not.

If you abstract copyright to apply to the functionality of the code, you turn copyrights into patents. If you don't, anyone can tweak code to be literally different while having the same function.
What is so insidious about ISPs serving ads on un-occupied domains? I can't see who it hurts and seems like a rather clever way to monetize dead space.
My read is that Google is far more likely to die with social.

Social networks have been part of the Internet since before it was an Internet: mailing lists, Usenet, BBS systems, AOL chat rooms, Geocities, Friendster, Grokster, Orkut, MySpace, Bebo, Facebook.... Each has ahd its time in the sun. And then faded.

Of course, single-focus tech and consumer sites have come and gone as well. But sites which serve a clear and persistent service seem to have done better than those which stuck strictly to a flash-in-the-pan concept.
This is it. HN does not have a narrow focus. If it had a narrow focus it would be easier, like on StackOverflow, where mods can kill any question that doesn't fit the narrow focus. But HN is supposed to be a community of things of broad interest to hackers. This is why I'm here, anyway.

So every so often someone posts a "HN is dying because it posted article X which I personally don't like" and it gets upvoted. How annoying. I think this might be the HN substitute for having a downvote article button.

If the community is dying, it's not because of a neat little story about a guy in a cab that a lot of hackers enjoyed.
Rather than asking questions I tried some science. Last time I changed my FB password was roughly 6 months ago and I am only able to get the correct-case password to allow access. I'm not too inclined to spend much more time on this but surely someone who hasn't changed their password in a while can try it out. They can see if the alternate casings work, change their password and see if they work then, etc.
ask about the company culture. they have a really great and interesting one.
Why would they need or want to go public? It sounds like they already have a great product and they're profitable. Do they need to raise money for something in particular?
We wanted to use a real phone to accurately capture the performance of the phone hardware, browser (Chrome), and OS (Android). For example, JavaScript runs much more slowly on most mobile platforms than it does on desktop browsers, and we wanted to ensure our results were not skewed by that.
Given a reasonably sized keyspace (which FB does have) a factor of three should not be a big deal.
Yes it is, but thats where other solutions need to be met.... say a script that de-obfuscates a vanilla binary package so the output is created on the users machine vs being distributed as such. You can distribute the script and leave compliance to the end user.
To their credit, they turned this issue around very quickly. Overall I have to say that Cloudflare is an excellent service.

This event does remind me of the predictable and somewhat obvious question though: do the benefits of a service like Cloudflare outweigh the downsides that inevitably come along with introducing another single point of failure to a website?
> People like to argue against the golden rule, saying that if you are deranged, it gives you license to hurt others.

You are shifting the argument. That has nothing to do with my comment. Straw man fallacy.

> The golden rule was given by Jesus secondary to the command "Love the Lord your God with all your heart and with all your soul and with all your mind."

No, in the christian bible it says a man named Jesus gave a
new commandment. The "Golden Rule" is a generalization made in more recent times to try to find a common ground across religions. And it's very vague as many religions are closer to what's named as the "Silver Rule".

> If you follow both those commands, you'll only do good to your fellow man.

That's not on the bible and even if it were, it's your dogma book. You provide me no proof it is that way. Not even a decent hypothesis.
If I had to put a valid reason to this instead of simply declaring that EA are dicks (which is still true but...), I'd guess that the rights on the songs expired and they are no longer legally allowed to distribute them.

Think about it. It would be even more scummy of them to leave the app up for download with no way to pull the songs required to play the game down from the cloud.

It's shitty either way, especially if you just bought the app but, I don't see a good way out of it.
Perhaps change the title to "CloudFlare was down briefly" because it's not down any more. We were aware immediately that a problem was occurring and fixed it. To quote the people who watch the CloudFlare network night and day: "While tuning Asia performance, an improper router config was pushed, causing our upstream provider to misroute. Pinpointed issue and fixed."

Lots of red faces around the office and people apologizing.
I think you misunderstood his point. He's saying that for Coursera, Udacity, and edX, they need to make a choice of making their courses available, or getting them accredited, but not both. Clearly they have made their choice.
That doesn't include Google's modifications.

From http://lwn.net/Articles/357658/

And there's a lot in that tree. Google started with the 2.4.18 kernel - but they patched over 2000 files, inserting 492,000 lines of code. Among other things, they backported 64-bit support into that kernel. Eventually they moved to 2.6.11, primarily because they needed SATA support. A 2.6.18-based kernel followed, and they are now working on preparing a 2.6.26-based kernel for deployment in the near future. They are currently carrying 1208 patches to 2.6.26, inserting almost 300,000 lines of code. Roughly 25% of those patches, Mike estimates, are backports of newer features.
..
Linus asked: why aren't these patches upstream? Is it because Google is embarrassed by them, or is it secret stuff that they don't want to disclose, or is it a matter of internal process problems?
This is especially frustrating with Socialcam since when I first linked my fb account (on the android app) it said "We won't spam your wall. Promise."

Screenshot: http://i.imgur.com/HPnGn.png
Pinwheel Redesigns
An update on Boston TechStars 2011 class, one year later
More fun with DateTime: the undocumented DateTimeKind value
Technically, "Anonymous Likes" aren't really susceptible to spamming, as through the years Google developed enormous infrastructure to avoid spamming in ad-clicks. The same technology can be easily used for "Anonymous Likes." The decision to eliminate "Anonymous Likes" is not a result of technical needs, it's a decision "from the above" to force a "more social" Google.
imo, their are comparing the hash of the 3 versions against a stored hash. This will help slowing down brute force attacks(http://en.wikipedia.org/wiki/Bcrypt), although it does make brute force attack 3 times easier, since now you can hit the correct password 3 times with the same set of characters.
It's actually much more than 3 times the chance; this rule allows you to restrict your brute force search to only check passwords with no uppercase characters (or no lowercase characters) which reduces the key space for a given maximum password length quite a bit. (e.g., if there were normally 100 characters allowed and n is the max length, taking out 26 characters reduces the search space from 100^n to 74^n - not that an intelligent password cracker would ever try to iterate straight through the actual space of all allowable passwords)
Just thought I'd expand on this part of your comment: "cloudflare.com was giving me a 502 error from ngnix, which indicates a cloudflare-backend problem"

Everything is a backend (ex: your server). Your CF hosted website is a backend to their front end (Nginx). Except the "backend" here is located in a remote network where your actual server is hosted. So it could very well be a routing issue between their network (Nginx nodes) and your server. Hence the 502 (backend unreachable).

Regards
Perhaps there ought to be a single square to represent all languages that aren't traditionally considered functional languages, to represent the influence that functional languages have had on the rest of the language ecosystem. For example, I'd say Erlang's concurrency model influenced both Go and Rust (and Rust would inherit from both SML and Haskell as well).
Wanting to access a website is not the only reason to resolve a domain.
Gaming Customer Service
I can style a whole app with only four hex values and SASS.
Negotiating rights in such a way that leaves you open to this, then selling the app when you know you might have to pull it due to licensing, is not really any better.
Ignoring the security implications for a moment, this is a very nice UX enhancement, I do imagine that it would eliminate the vast majority of the invalid password attempts thus making people's experience much better.

Now, the question is, just how much security are you losing by allowing this? Assuming the passwords are stored correctly my guess would be that passwords that are considered secure already would only be marginally less secure because of this, however non secure passwords (common ones) are a hell of a lot less secure but only in a relative context, they're still just as insecure as the original insecure password.

I'm not sure I articulated this properly so if I didn't let me know.
You are right, but given the fact that most people still use very common words for their passwords, a 3 times increase is a very huge number. A recent story on HN stated the fact that passwords from sites that had their databases leaked, mostly consisted of dictionary based passwords.
He spoke at YCNYC and really hammered on the 'trough of sorrow' where they didn't think it was going to work out. I think there is definitely some inspiring back story there.
If I have a script that is listening for a response to ping or trying to confirm an HTTP request or something, I damn well want to know when the host is unreachable.

I don't want to successfully reach your bullshit ad host. I don't want to get successfully served an ad instead of timing out. I just want to fail.

Any other behavior is wrong.

I assume you ask this honestly.

The problem isn't something like "Oh, hey, well, there's some empty space so let's setup a lemonade stand until someone buys up the property." The address is supposed to be valid, or fail fast. It is of much greater utility to everyone (except the ad farmers) to fail fast.
in that case all variants of passwords would work which does not happen
Bleh, Socialcam is viral spam.
It's funny. I see the clear value in what patrick is doing here. I respect Patrick (and yourself). I just don't like the approach he took. For that it seems I'm being told I'm not welcome.

Perhaps this could be A/B tested.
Princeton Review Founder Launches First Search
Papeles decoración, decoración, papeles diseño
Originales papeles de decoración con diseños de los años 70
finally, Sacramento has opened up to innovation!