skysight-inc/HackerNews huggingface dataset:
As someone who has written his own HTTP client, I think that the author greatly exaggerates the difficulty in doing so. The reason being that he assumes that all clients are meant to be completely fault tolerant. The client that I wrote was used for only a handful of websites all of which had 0 quirks found to date.

However, I still dont get his examples:

> For example: Headers can span multiple lines.

This is by design: "Header fields can be extended over multiple lines by preceding each extra line with at least one SP or HT" [1]. The example he gives does not have the whitespace in front, but that is a particular variation that isnt too hard to deal with.

> The length of a response body is indicated by a mixture of the response code, the Transfer-Encoding header, Content-Length header, Connection header (and the request method).

It has been my experience so far that if there is a content-length header, then that is the length of the body end of story. The only case in which I resort to using the connection header is the one in which there is no transfer-encoding or content-length. I still have never come across a case in which I needed to know the request method to be able to parse the result.

> Get messages can have a body, but not every server knows this.

I didnt know that. I would like to see more information about this too. Still, this is irrelevant when writing a client.

In conclusion, this article points out that there may be a lot of variations between implementation of the HTTP protocol, but I would have liked to know of the actual servers and conditions which cause them to behave that way.

[1]http://www.w3.org/Protocols/rfc2616/rfc2616-sec4.html
I posted this comment about obscenities on another thread recently, but I think it is relevant to this thread as well.

According to Paul Fussell's Class: A Guide Through the American Status System, aversion to profanity is a middle class thing. The upper class[1] do not use euphemisms for profanity or obscenity. Fussell wrote that Jilly Cooper reported "I once overheard my son regaling his friends: 'Mummy says pardon is a much worse word than fuck.'"

I doubt that many members of the upper class (see Fussell's book for a definition of upper class, it is roughly the tastes of "old money" but not dependent upon actual wealth) read Hacker News. It is likely that those who do not object to obscenities such as the word "fuck" are more socially liberal freethinkers who dislike formality. Those who do object are likely to be members of the middle class who believe (foolishly) that in censoring profanities and vulgarities, they are emulating the upper class. The phenomenon of "professionalism" is also a product of the middle class — to the upper class, selling things for a living is distasteful and déclassé. "Professional" language is usually very timid and full of circumlocutions as the primary goal is to not say anything that anyone may find offensive.

[1] http://www.amazon.com/Class-Through-American-Status-System/d...
> Do you accept donations?

> Sure, you can make donation to louis@pentesterlab.com using Paypal. If you don't like Paypal just send a donation to any charity and email me so I will feel good about it ;)

I like this state of mind.
Are there any blogs where an android tablet was used to do actual java development?
I'm very guilty of this myself. I'm officially a loser if I haven't delved into regex within two weeks.
Not exactly a blog post, but might be a good place to start: http://www.spartacusrex.com/terminalide.htm
If you don't want people to tell you that your optimization is premature, then make sure to mention your profiler results.
Considering you're brushing off everything he said and trotting out tired justifications nobody asked for maybe you're just using any excuse - the profanity will do - to justify ignoring him.

Besides, those good reasons aren't.

a) You spent good money, but did you make it a good experience for the user?

b) But usually the app is trash compared to a web browser, and offers a far worse experience.

c) Retaining user engagement is hard when you pop up unrelated nag screens instead of making the user's task easier on your site than your competitors'.

d) I want a website, you want to implant a brain worm.

This is exactly why I would agree with the poster. Tons of entitled nonsense justifying making your users' experience worse - for them.

What sites are you affiliated with?
Khan Academy is pretty successful. Millions of students have benefited from their work, without having to pay a dime.

Sal Khan's vision of what education should be like is spot on and I strongly agree with him. He seems to be sincere about this thing and has received millions in donations.

This is not a company looking for success by means of an 'exit'. They are actually making a difference to millions of students. In doing that they're being successful.

Wish we could see more of this instead of useless, gimmicky stuff.
What was wrong with the blue e?
Effort afoot in court to sue Canadians for illegal downloads
I wonder, is it possible that something like this may happen after beginning of the internet era?

Like this. Year 2050, some guy accidentally discovers an abandoned site, which is created in 2010. There is a blog, which sparks this future anonymous guy's interst. The guy discovers a link to instagram on this , and then finds out that this website was quite popular back in 2010s, but gone defunct in 2020s. The full photo archive is available though. Curious, this guy downloads the whole archive and encounter amazing photo collection of cats and food on this account. The copyright law is different in 2050, so the guy decides to sell pictures on an world-wide digital auction...

Or maybe it will be no different: a real estate agent finds a small box filled with SD cards and then sells it on a local auction.
Yes, you can read Computer Science books by yourself.

Ask a more specific question: you will be more likely to get a useful answer.
I don't mind Americans being oversensitive to swearing. I can respect cultural differences, and IRL I will usually make an effort not to swear in front of Americans.

What pisses me off however is the judgmental bullshit excuses Americans use for their intolerance, like swearing being "unprofessional" or "childish". Utter nonsense.

Please stop pretending your oversensitivity to "bad words", which in my experience is unique on the planet, has some kind of logical reason, and stop lecturing people about it.

Especially on HN, a place one assumes is mostly visited by well-educated worldly people, such lecturing seems completely misplaced.

If you have an issue with swearing, keep it to yourself. Even grammar nazis are more constructive and useful.
To be honest I might have made a similar comment.

I at least knew my mother. She would take me to bars with her, or leave me with her sister while she went out (but she usually made sure to drunkenly wake me up when she got back to tell me again and again how much she loooooorved me).

Eventually she left me and my siblings and fled to Holland, where she promptly stopped paying child support and started helping to raise the other guy's children instead. Occasionally I would get cards. Even less often I would get phone calls full of guilt and awkwardness.

She's actually on my FB now, but I'm not calling her.

It gets better though, my dad later remarried to someone who means well but didn't exactly contribute to a loving upbringing... but at least she stuck around. But how does Happy "Stepmother's" Day fall into this weekend?

And every single year I get to go through this dilemma anew. Thanks, Hallmark!

So I suppose the point is that for those who do have the doting, loving mother, by all means don't skip out on making that phone call. But not all of us are going to be in that situation, so Ed's advice isn't going to apply to all of us.
Out of his control I think.
They're now installing vending machines for pot in the U.S.
I'm sure many people understand this but I'm going to say it anyway:

People who are anti-GM are skeptical about scientists' ability to predict all the consequences of their meddling in living genes and chemical balance of nature components.

The nature had millions of years of coming up with sustainable balance between growth and death.

I hope no one will argue that many of the priorities in our current scientific environment are short term individual benefits, whether it is political, wealth or recognition.

This is the basis of anti-GM folk mistrust, and not inability to detect that everything is chemicals and cross-pollination is a gene modification as well.
There are many thing in here that are already in functools, itertools (!), or the standard builtins (!!). Please do not shadow builtin names, and consider removing things that are already in itertools, as they will be faster than pure-Python code.
Urdu jokes
If you do get around to writing this up as a sea shanty, please send it my way!
I'm American, and I have no problem with cursing or politically incorrect speech in person with a group of friends, coworkers, or even loose acquaintances. I just don't like it on public-facing (or "customer-facing," although that doesn't apply in this case) media. For me, it's not a question of morality, offensiveness, or corrupting children, but rather of perceived professionalism and legitimacy.
The first half is good advice, but most of the second half is not. It's written completely from the point of view of the client, and a client's interests aren't always in line with yours. Sometimes you'll be desperate to get every single client, but sometimes you want to stay away from potential clients who "instantly move on" just because they don't like something on your homepage.

If I were you, I wouldn't publish my prices online, not even as a starting point for negotiations. If you publish an hourly rate, clients will treat it as an all-inclusive absolute ceiling. If you publish a per-project rate, clients will try to persuade you that their highly customized online store is the same as their neighbor's cheap blog. In either case, the initial convenience that you offered to potential clients will return to haunt you in the wallet for for weeks to come.

The only exception would be for kinds of work that are extremely predictable, like setting up a WordPress blog with basic Facebook/Twitter integration and $XX per additional page. Basically, if you could write a script to automate it and just plug in a design, it's safe to publish a quote. But anything that requires more than dozen lines of custom programming has the potential to cost you countless hours for no additional pay.

> 100% money back guarantee if I didn't like the work

Nope. No money should ever go back from you to the client. If you really want to give your clients assurance that you won't rip them off, set up a few milestones where you agree to present specific parts of the deliverable. If the client likes it, bill them for the next portion of the project. If the client doesn't like it and you can't fix it without significant overtime, terminate the contract right there, the client keeps whatever design/code they paid you to produce so far (even if they think it's shitty), but any money they paid you is nonrefundable. That way, the client only takes a small risk at a time.

> he was willing to look at my code over filezilla first

That would be nice, but you have to word it carefully. Offer to do "free consultations" up to a point, so that you can get a better idea about the scope of the project. But don't do any serious design/programming until the down payment is in your bank.

> Instead of email me link just put the email address so someone can copy and paste.

That's actually good advice. Even better, put up a contact form named "Request free consultation," "Request quote," or similar. (Do this in addition to posting the email address.) Add some sliders or checkboxes if you want to provide estimates for predictable tasks, as mentioned above, though I stand by my opinion that this is a risky thing to do. A contact form is also a nice opportunity to learn how to send emails reliably from a website (no more mail() nonsense), and how to keep all those pesky spammers away from your contact form without hindering usability.
Show HN: My weekend project, Wifi Party -- Share wifi passwords, android app
What the heck can I learn from this?

Serious question. I didn't see the point of the blog post at all (why I should read it, not why the author felt like writing it).
If no one has ever read the backstory behind this it's actually a good tale.

There was more to the issue than BK simply deciding to drop the free version. The short story behind that one of the Samba authors helped force Free Software along in more ways than one!
This looks awesome.

I'm trying to switch back from Chrome to Firefox, though... Is there an extension (or a set thereof) approaching this one?
I like staying up late. Even on weekdays, I'm usually up until 1 AM or so. On weekends in college, I recall often seeing the sun come up during the summer.

I thought that was fun, but never thought of it as cool. And while I like staying up late, I really don't like being sleep-deprived.

I really despise the culture wherein sleep deprivation is a badge of honor. And I hate the implicit pressure I feel when I am working with people who wear it as such. It's hard to cite studies showing decreased overall performance when you're confronted with, "I've only gotten 15 hours of sleep all week since I've been working so hard!"

I don't know what to do about it though.
DOE says a dongle joke made on campus and overheard is now punishable
Why babies in every country on Earth say 'mama'
Not necessarily. Dell sold Ubuntu laptops that cost more than the Windows one, because they made money by charging software companies to have their software bundled with Windows. There's also the issue of scale- a production run of Linux laptops would sell considerably less than Windows ones.
Fluxbox is my preferred fallback for the "Shit I Broke KDE" failure mode. It's highly recommended for those who just need to open Chrome and an xterm and don't need anything else fancy.
Equate - Clojure fact management library
If sharing this in your organisation is a career limiting move, may I suggest that your organisation is irretrievably fucked (see what I did there) and only cares about superficial garbage. Such organisations are doomed and tend to be stacked with useless ladder-climbers.

My advice; share the article with relevant people if they need education about doorslams. If people complain, tell them that they're shooting the messenger and should pay attention to what they're actually doing, instead of wasting their shareholders' money enforcing bullshit that serves no purpose except for making useless, self-righteous moral defenders feel better.

The ideal solution is to never hire self righteous moral defenders because they actively wreck the culture of organisations. Objecting to swearing is a clear case of intolerant asshats choosing to be offended. To avoid these losers in your company, swear when conducting the interview, and if they're so utterly thick and self-righteous that they show offense, stop the interview immediately and show them the door.

The person a couple of posts back nailed it when they said this:

"His word choices are not hate speech or discriminatory so the fact that they may offend your sensibilities has precisely zero relevance to anything."

... and finally, I thought the article was great. I'm sharing it at work with the product team. Since our product team is free of idiots, I'm pretty sure this won't be a career limiting move.
Can you site a source for "funding through federal and state grants (and for state universities funding through state funds) has been gutted"? I don't think this is universally true[1] and some of it is hidden in the "cut" = "didn't get expected increase"[2].

1) I am fairly sure ND went up

2) MN universities said this for a number of years
0 second visits according to Google Analytics
Contrary to pgrep and pkill, which do the right thing everywhere (as far as I know).
I can't imagine that US students drink significantly more than the average Dutch student. Maybe more but not something like 20% more.

Edit: what I meant: students drinking much seems to be universal. Pretty sure that German and Belgium students do the same. International students also party often but that might purely be because they are abroad.
Do you have this in mind? (http://www.youtube.com/watch?v=O0D0E42AA4I&t=22m18s)

Some context: (http://www.youtube.com/watch?v=O0D0E42AA4I&t=16m30s)
Looks like he posted this around 9pm Saturday night. Glad to see he is using his own findings.
Defending the Internet at Scale
Nexus 7 3G bought outright entirely separately to any plan or network carrier. Tethering is entirely disabled and many forums confirm this.

And while I theoretically could I am not going to install a "cracked" version of Android from a l33td00d7 user on a php forum just to get a fundamentally basic and useful networking feature which is present in other installs of Android and which there was no reason to turn off. The whole point of buying a Nexus device was to get away from the crap modifications (like the constant nagging, with a loud beep, to update the "Facebook integration" stuff from my phone's manufacturer which can't be turned off) and lack of basic updates on non-pure Android devices. I wanted a pure Android experience, one of my strong desires was to use it for tethering, Google promised a pure experience and it was a deception (can't remember if it was actually stated somewhere in the fine print, but I certainly read loads about the specifications before purchase and didn't see any mention of it).

It's a disgrace and, along with a series of other pointless Apple-like restrictions worming their way into Android, it confirms Google is fully prepared to cripple things in the name of profits. And it's not even their own profits in this case, it was likely done at the behest of carriers and hugely damages what Nexus was supposed to be about and their brand, so it's even crazier.

So while Canonical might try to put Amazon integration into the Unity bar, they know that you have to be able to turn it off or they will lose their users. The people at Google on the other hand know they can get away with it, although they might lose a few power users (post hoc, after taking their cash and disappointing them) they'd get a few more tie-ins with carriers, so they did it. What bugs me is that lots of people here work for Google and like to think of themselves as hackers fighting the good fight at the "do no evil" company. No, hackers don't ship devices with basic networking features crippled whilst pretending it's a restriction free device.

I can't wait to wipe Android off my Nexus 7 once there is a robust Ubuntu release for it, and my next phone almost certainly won't be Android.
If this is true:

> The average, middle class person thinks about education as an expenditure, not an investment

Is it a state-occupied (compulsory) education system that does so? IMO, it is. For example, many(most? vast majority of?) people go to college to get a diploma, not to get actual education. The system sucks and doesn't deliver any actual value(in terms of knowledge or personal growth, not in terms of signaling to the market), so no wonder that people don't view education as an investment.
Using Golang as an example of real world regex performance is borderline dishonest. Their regex engine is notoriously unoptimized and is not intended to be a strong point of the language.
Moving from a pair of 21" monitors to a 10" tablet screen with attached, terrible keyboard seems like a effort in trying to find a painful development environment.

There's been a large amount of research done on dual monitors and increased screen space and the effects on productivity - throwing that all out because it feels good seems like a ridiculous idea, let alone the ergonomics of hunching over a small screen.
Fancy brand jewelry and Costume jewelery from Paris
Putting it in embedded devices only became possible about two years ago, no?
>The Americans, by contrast, seem a lot more upset about the swearing. I wonder why that is?

Some cultures apply morals in their actual life choices, where other cultures apply them in their pretend politeness. Some of them seem to believe that being nice equates acting nice. But acting is deceit and manipulating, hence by definition not actually nice behavior.

But they do mean well, its just that they focus more on the symbolism of "good" behavior, than the reality of it. And thats generally the pattern: cultures that focus strongly on symbolism will also strongly apply morality symbolically. For example: americans worship their flag, but hate their government.
Many HN readers are guilty of contributing to this problem. Instead of complaining about the site having a naughty word in the name, you should be quiet and rethink what you've done.
Planning Ahead Of Everyone Else To Win
Beside Terminal IDE (which is open source and a great package for VIM users) there is:

- AIDE https://play.google.com/store/apps/details?id=com.aide.ui...

- Sand IDE https://play.google.com/store/apps/details?id=com.jimmychen....

I used Terminal IDE on my Nexus 7 (yeah, too small for actual work) before and with a physical keyboard connected it comes with everything needed to create, build, pack and install Android apps, including native development in C/C++.
For me (echoing some of what gnosis has stated), the real value that HN brings is the discussion. Frequently, I find the comments, insights, opinions, and tangents elicited by HN submissions to be more interesting and thought-provoking than the submissions themselves. I typically browse through the discussion a good bit before ever clicking through to the article/site which initially drove the discussion. There are plenty of "show-and-tell" mechanisms on the Web. What sets HN apart, in my mind, is the round-table that develops in response to a lot of those submissions.
So it should be possible to use this as a bootstrap theme for a phonegap app? I've been looking for something like that.
I can see this really catching on, it would be really handy in quite a few situations.
hahaha this video made my day. it's incredible funny. I can't wait for the next smartphone with a 96 cores APU haha.
Prototyping them in the IDE is pretty damn easy tbh..and you've done some of the work to build them.
Android apps found on Google Play download spyware
There's a lot of truth here but the article seems to overstretch at times. The benefits of TDD are many, and I don't understand the logic of refusing to use a GPLv3 component because you're worried about GPLv4.
Moving from 11" laptop to a 'retina' 10" tablet however is actually an upgrade screen estate wise.

I can see the appeal of multiple big screens, but that has never worked for me. I spend much time on the road, and want to have the same working environment in the coffee shop as I have in the office.
A while ago I considered getting a similar setup for traveling, but I am now very happy I did not: I've spent quite some time traveling lately, and finding good reliable wifi has been a constant battle. (Southern and East Europe)

If I had to be connected to get work done, I'm afraid I wouldn't have been able to get very much done.
Historically hasn't this always been the case? I thought it wasn't until recently when college became a at least remotely affordable option.
Their story checks out.

Using google translate, I can't find a single language that does not have a 'mama' or something very similar.
Reliable WiFi is indeed a problem, but in most European counties a prepaid 3G SIM costs maybe 10-15€ and works well enough with MOSH.
Really liked this article. I'm curious about the professional QA – how did you find the tester, and what sort of things did you ask him to test?