skysight-inc/HackerNews huggingface dataset:
To be honest, it's been a while since I seriously looked at the alternatives on the lowest level, as BSD sockets basically won - nobody's looking at OpenTransport or TLI anymore.

But I do think they're way too overexposed. It's a very low-level system, with lots of related system calls, ioctls etc., requiring the user to do all the error checking, setup and boilerplate. All error-prone, too many L3 addresses passed around and altogether a mixture of several decades of network programming.

Assuming that's all really necessary on the lower levels (don't want to get into that, not my area of expertise), it's still not something a common systems programmer should face. You might know about the details, just like you know about TCP/IP packets, network layers etc, but more 80+ percent of your day job you shouldn't need to care about that. It's like constructing output piece by piece, with print_number(12); print_string(" / 2 = "); print_number(12/2); print_newline(); etc.
Nobody but the most ardent DJB fans would want to do that. But for sockets it's basically expected. Network programming would've needed a printf-style interface from the early days, now it's too late to wrap the basic, the proliferation of incompatible high-perf syscalls didn't help.

I don't want to appear like one of those smug Plan 9 purists, but they did something right. Apart from treating network communication and file systems the same way, they also had some nice wrappers for the lower level stuff, e.g. http://swtch.com/plan9port/man/man3/dial.html

But yes, I'm mainly joking about "bad karma". Getting something right in the first place is hard, and often you don't get second chances.
How much power does the 'king of america' really have? How much do they effect a country through their actions compared to the rest of the political apparatus?
Look at it this way -- now you get to find another new way to easily beat comment spam. And then another. And then another...
Popular RATs Found Riddled With Bugs, Weak Crypto
Remember, HN, that the only way to success in startups is by slavishly following everything successful people do. Sit/stand desks, nerf guns, free food, and voting Obama. You heard it here first.
Awesome - i'll email you this weekend. How is zerocater not in Toronto yet?
Nightmare, onslaught, much more likely, lop-side, huge impact, truckloads of sugar... How can you use such scary descriptions without any giving any evidence backing up what you're saying?
Nope, that's the New York way of pronounce it :)
Wow, an entire other myriad of issues I wasn't even thinking about while commenting. Great points! Funnily enough, you can see some of this in mobile apps already, but it's gotten a lot better over the last 5 years. No search really bugs the crap out of me. It's impossible to naturally discover an app through search. Also, It's like mobile apps are all their own individual walled gardens and interplay is impossible. Links anyone? All this was invented years ago and seems like a step back.
Using a US cash machine when my PIN has 6 digits
> Many people tried to create alternatives, and failed miserably. It works. Don't fuck with it.

Although you made some insightful points here, I swear I'm not kidding when I tell you that I've had people tell me almost the exact same thing about IBM's 3270 terminal protocol.
It's basically an alias for 1.

https://www.google.com/search?q=number+of+horns+on+a+unicorn...

I know there are a ton more phrases that work as calculator aliases, but I can't think of any off the top of my head.
Love the Ketchup chips. <3

Edit:

From Vancover...
Max, I'll shoot you an email, PagerDuty is originally a YYZ startup too and we're at 2nd and Bryant in SOMA.
It might be more accurate to say that mainstream feminists think the idea of "equity feminism" is a made up concept promoted by anti-feminists to try to devalue second- and third-wave feminism.

I wonder why they think that.
Bubble sort is actually extremely useful when temporal locality matters more than absolute sort order.

Example: Games often bubble sort world objects by depth. There is a small performance gain to be had by drawing closer objects first, so that you can depth-cull expensive pixels behind them. Game engines can run several iterations of bubble sort, but stop before sorting the set completely, since the z-buffer will ensure correctness. Over the span of several frames, the incremental bubble sort will achieve a total sort, but the incremental approach bounds cost more tightly. Since the depth of objects only changes relatively when you look around, it's usually a pretty good approximation of "perfect" behavior.
If one were looking to get into Meditation, what is a good way of going about it? Preferably a DIY way if possible, but if a class is really the way to go that's okay.

When you say years of sincere effort, are you talking devoting a full-time job's worth of time, or just keeping a routine?

I've been interested in meditation for a while, but it seems whenever I try and dig around I get completely lost in literature and terms and fail to see a proper starting point. I'm not looking to go crazy, I like the idea of Mindfullness and having a better understanding of how to control the ebb and flow of your thoughts.
There's a ton of frameworks, technologies, whatever out there. They pop up all the time. People are trying them out, simply to try to keep up with the technology, which isn't a bad thing. But, I agree that creating a couple of small projects with some new technology probably doesn't justify you listing it on your resume as a skill.
Seeing one Topic-X post will trigger many people to think, "Oh, and I remember Y-related-to-Topic-X," as well as "Hey, I wonder if I could find out more about Y-related-to-Topic-X," and away you go.

Also, http://www.amazon.com/Bursts-Hidden-Pattern-Behind-Everythin... (even though it is not a great book; it is mediocre IMO).
Smudge, this is awesome feedback. You probably noticed in our comment above we've just launched this week, so this is much appreciated. If you see anything else, feel free to fire away. We'll be working to address these issues this weekend.
I never drink any sugary juices or candy. Eat lots of fruits and veggies, also bread, milk and nuts.

And I have terrible tooth decay.

Seems a bit silly to compare pHs of various junk foods. Drinking a better pH won't make much difference. The problem is a tad more complicated.
They have an effect, but not enough of one to justify the level of collective hysteria we experience every four years.
It's over thinking things that people think about like this is what makes progress difficult... I think.
I just checked Wolfram Alpha and couldn't find the Javascript animation of game of life. Could you link me to how you did it?
Obama is very well in touch with the tech generation. He was the first presidential candidate to really put social media to use and his recent AMA on Reddit shows he is still able to relate. The JOBS Act didn't hurt, either.
When they mentioned that they would open source their code, I started looking at payment gateways that did cool things. Here's my research so far: http://www.geekphd.com/lockitron-selfstarter-us-payment-gate...
"The misconception about meditation is that it requires one to give up everything and sit silently."

How I think it, giving up everything and sitting silently is a form of practice. You cannot be in-present with whatever activity you do if your mental muscle isn't toned for it.
Maybe because breathing is something you are actually doing, while you _can't_ do "cats".

Basically you are fusing something you are doing with your complete attention. And that is on a different level than "cats".
Inception: firewire password bypass for Windows, OSX and Ubuntu login
Since this is the third recent item on HN featuring the impact of branch prediction on code performance, let's make sure we keep our heads on straight: a good algorithm will outperform a bad algorithm that's tuned for branch prediction.

Quicksort infamously abuses branch prediction, yet is still the standard against which all other sorting algorithms are compared. Some work is being done to improve Quicksort's branch prediction performance [1], but that's mostly focusing on choosing better pivots.

A perfect sorting algorithm, something like a very large sorting network, will necessarily make any processor's branch predictor give up and go home -- and that'll still be faster to execute than a naive algorithm tuned for branch prediction.

[1]: http://www.cs.auckland.ac.nz/~mcw/Teaching/refs/sorting/quic...
Forums did more than exist-- they were massively popular. Sure, I don't remember a forum with 1 billion members, but I'm still boggled at the colossal output of some of them. I remember pretty niche topics still with large, competing boards and real-life meetups... all before Zuckerberg even hit puberty. I think the author's point is that the web didn't just magically come alive in 2004, and this is more than true.
That implies great insight into the the problems we'll have. That's usually very hard to predict - else we'd all execute perfectly.

We have to assume we'll overcome obstacles, or we may as well all go home.
Is the implication here that choice is based on who is better for growth?
Nothing to see here. Noob who hasn't really felt the pain of Flash or Shockwave, reinvents it. Seems like HN is more and more full of people that don't really have a clue... :-/
> ... treatment for depression.

As long as people understand that what is being treated are symptoms of depression, not the root cause, which is unknown.

I emphasize this because, to a layman, the word "treatment" implies a method that addresses causes, not effects. This is not the case.

If I operate on a patient and remove a tumor, I am treating cancer. If I offer the patient a more comfortable pillow, I am not treating cancer.

The meta-issue here is the degree to which psychological conditions aren't medical conditions (yet) -- with rare exception they don't have identified causative agents, as a result of which treatments are symptomatic, and it's too soon to be talking about treatments (as above) and cures (as in the linked article's title).

Anyone who wants to claim we've either treated or cured depression need only stop the symptomatic treatment and see what happens to the patient.

> If we can find a way to get costs down we absolutely will make medical devices a first-line treatment for mood disorders.

For one definition of "treatment", yes -- symptomatic relief. But not in the general sense.
They appoint Supreme Court Justices. Those appointments decide our constitutional rights for decades or centuries. For that reason alone, it's worth all the fuss.
It's almost precisely a year since they introduced Git support. That's cool.

Part of the history to remember is that Mercurial and Git started at about the same time and on almost equal footing. GitHub was frequently cited at the time as a reason to use git. As in, "yeah git has kind of a crappy interface, but look at how big that community is!" The GitHub team really grabbed the momentum and never let it go. Now git is so common that supporting it is basically mandatory.

But it didn't have to end up that way. In a counterfactual history where the positions were reversed and HgHub and Gitbucket were founded, I think that HgHub would have dominated through a better focus on acquiring a community.
Facebook’s Having Some Issues With Twitter Cross-Posting. Nobody Cares
Network Virtualization in Windows Azure (video)
cool post- my experience with conversion rates in startups is that tracking the changing nature of your audience is really important: early adopters are really fundamentally different from people who want others to test the water. you can kind of see a separation in the vintage chart.
Okay, maybe it was some of that slow-brewing anger that made it to the end of the post. What I don't want fucked with, rather, is a set of very open standards, with competing implementations that already exist for a myriad of different platforms. The standards used to come slow but are now evolving faster than ever, and the implementations update themselves automatically without user interference.

What is wrong with this picture? Really? Are you willing to trade all this away, merely to get rid of the vestigial API cruft, which is mostly already abstracted away by tons of nice tools (coffeescript? bootstrap? etc.)?

I honestly think that it's going to be hard to come up with a better platform since that's a moving target: The web is evolving all the time and is ahead the competition in many respects (see my parent post).

I want to cry when people want to toss this all away when we have it so good right now. I dealt with the web when it was a complete mess. I am thankful for what it is now and the direction it's rapidly moving in.
I think listlife is a simple and efficient algorithm: http://dotat.at/prog/life/life.html

Some years ago I implementend something similiar in javascript: http://pmav.eu/stuff/javascript-game-of-life-v3.1.1/

The benchmark can be really slow in some steps.
I love even now so many people misspell Gandhi. Not a hater, but I want to know if this is the spelling that they teach in particular countries.
We'd love to see you at CrowdFlower. Email forthcoming.
A little-known operator in C++, the "goes to"-operator:

int i=4;

while(i --> 0) { cout << i; }
Will you be bringing poutine?
Maybe it's just me, but over the years Solr and Lucene have become an impenetrable project. When I first started playing with Lucene many years ago it was very simple, transparent code backed by solid and understandable algorithms and data structures. Now of course, it was limited.

But now Solr has absorbed Lucene and it seems to do everything and the kitchen sink. The abstractions in Solr in my experience are mindbogglingly complicated if you want to extend its capabilities, because it does so many things.

I have yet to look at 4.0 but I hope they have removed as much as they have added. I think if the focus for the next release of Solr was to remove lots of unused, poorly factored, or complicated features it would be a huge benefit to the project.
What happens when computers are cheaper than Legos?
That makes me want to own 222.173.190.239 or 177.107.0.181, just to link to them in hex. If only browsers would keep that in the address bar.
In 1994 my typing class was still using Apple II's. I didn't appreciate it at the time, but I find it quite impressive that I was using the same computers in my senior high school class as my 1984 1st grade computer class.
On the other hand, quicksort scans memory in-order. Random access to memory is much, much worse than bad branch prediction. Using a heap in merge sort, for example, screws with both branch prediction and memory access.

For sorting, if you're minimizing the number of comparisons, the result of each compare should be random and independent of all others. So the only way to have "good" branch prediction when sorting an array of random numbers is to do lots of extra, superfluous compares, e.g. using an O(n^2) algorithm instead of an O(n log n) one.

The base case for std::sort in glibc is insertion sort. It's used for less than 6 elements. Nice and linear memory access patterns.

Martin
Have a look at this other answer by LarsH: <http://superuser.com/a/486904/99285>. I think it is a much better more in-depth answer than the accepted one.
I think you exaggerate. Most of these discussions are not about empirical studies but about opinion pieces.
A Startup Finds a Better Way to Mine Your Facebook Past
Short term, it probably does make things worse. There are studies about limited willpower, like when you measure the patience of people by having them performing a chore, the control group have more patience than the group that where explicitly forbidden to eat that cookie over there.

But doing it every morning is different. First, by making it a habit, you don't need as much willpower as you did the first times. And if it trains willpower, then the long term result will likely be better than doing nothing.

Similarly, when you exercise in the morning, it leaves you more tired for the rest of the day. Your muscles may even ache the following morning. But do it every (other) day, and it (i) won't be that tiring, and (ii) you'll be in better shape anyway.
Hmm, you're right. My thinking was, "if we know enough about the structure of the problem that we can make sure we're guessing right much more than half the time, we can probably turn that into a better O()", which insertion sort as an example doesn't really violate per se - it is possible to trade off that knowledge for better asymptotic complexity, but clearly the claim wasn't quite right as broadly as I stated it.
This week in Scala (12/10/2012)
Thanks for the question. I started with DIY meditation. I got a couple of books, mainly the techniques were repeating some phrase, focusing on the breath etc. This was okay for me to start. But I have been working with a teacher for about 12 years, which really helped. There are lots of different types of meditation, some with religious or spiritual undertones and others that are completely outside all that. Find a style that you vibe with based on what you think/believe and run with that.

By "years of sincere effort" I mean practicing daily. 20-30 mins is probably enough to start. I would compare it to playing an instrument. Daily practice is pretty essential.
Considering the spelling (apparent) in his footnoted reference, one surmises it is a (meaningless) typo.
Would be interesting to see how a bubble-sort algorithm on an ARM CPU would perform with and without conditional execution.
I actually use bubble sort early in development when the items to be sorted are complex. Its inefficiency means that most items will be compared against most other items so this will help catch any problems in the complexity of the items and their ordering.

Far more efficient sorting algorithms do not behave very well if the comparison functions give wrong answers and this can be especially difficult to detect.

The bubble sort then helps with the test suite - you can compare the results from the brute force bubble sort against the optimised sort that your framework/language provides.
How do you change the perceived social status of a job? For example, could you change garbage disposal into a high status job? Or maybe some jobs are simply inherently low status, and being in direct contact with oily machinery (or confusing computer code) will always be among those jobs...
Nice job. I think some good next steps would be speed controls and the ability to draw/erase by clicking and dragging.
The mindfulness, which I called meditation below, is sort of a way to say that you - any average individual - can get on the path of blissfulness without waiting for, or waiting to start the path of meditation (of your example).

It really all boils down to each individual and their capacity of how they wish to learn.

Some people can easily start the meditation (of any type beginning with what the author describe in the source, of breathing exercises) to mantra meditation to anything else. However, if the above methods does not come easily to you, you can still meditate by being in here-now (what you describe as mindfulness).

The point is, that we don't have to be dogmatic about meditation and everyone can easily and equally get on the path of bliss and self-improvement in all walks of life.

For far too long, the traditional culture has sort of relegated the arts and artists to the lower pole of meaningful life. What is being suggested here is that either you can plainly observe the sun rising, or you can take pride in your singing or painting....all of these artistic self-expressions give you containment which leads to blissfulness...something an average meditator of various type would achieve by sitting idle or concentrating as their practice.

The more one stays in here-now, the more the mind sheds the distractions, the more there is bliss.
Agreed. The post wasn't meant to suggest anybody should go and optimize! Just that simple looking code can be tricky/interesting.

Also, even artificially skewing the pivot in quicksort as suggested in the paper you reference doesn't work except on /very/ long pipeline machines, because it worsens cache performance & increases instruction count. Also, even then, it's expensive to randomly sample to generate a skewed pivot (a cost they negelect in that paper, assuming it is free)
Give them hell for all of us who've been subsidizing their bloatware all these years! Love it.

I wish some well-financed Mac devs would build a Photoshop/Fireworks killer....
Mozilla Details How Firefox 17 Will Block Old, Vulnerable Versions Of Flash
You're basically making a non-refutable argument since anyone who responds to you here is going to be an HN commenter whose experience is disqualified by your premises.

At least provide some data to back up your claims.
Take screenshots or print the pages. They don't need to look at the code to review the copy. Change the mindset to look for solutions rather than problems.
I'm gonna wake up and get flushed out a sewer pipe, aren't I?
I treat laundry lists of "requirements" like these as "nice to haves" unless they are accompanied by some indication that they are putting their money where thier mouth is. For example, if the ad is accompanied by a salary range 50% more than "normal" then it shows that they are serious about finding "unicorns".
> if you ever have to socialize with them, you'll know what views to express.

I really hope you didn't mean that in the completely pathetic way that it sounded. Group think is a great way to fit in but certainly isn't a good way to stand out.
Your first sentence seems to imply that you believe it to be true. I think there are already a lot of IT companies with normal employees, but they still don't attract a lot of women (I have worked in several of them). I therefore don't think your assumption is correct.
So you manage outsourcing? Might I recommend saying that? I've noticed throughout the comments that you tend toward drawn out explanations. Make it simple and then people will fill in the missing details. If they miss a few, no worries, because they get the gist. You don't need to give them all of the details up front, because that makes it complex, hard to understand and boring. Try and fill in as many details as you can with imagery and the structure of the site.
I think he's sort of joking.
> But in your original post you are doubting that meditation has these benefits at all.

I am arguing there is no basis for the claims of specific benefits. I never disputed that meditation clearly does something. It's just not clear that something is at all meaningful, or lines up with the article's motivations.
Well, only for the last couple years, really - they got acquired fairly recently.
More tools besides ping used to support this. I distinctly remember that a RedHat upgrade broke acceptance of "1.2" in tools like ssh as an IP address and demanded 4-octet addresses sometime around 2003.
I have a Galaxy Nexus. It is too wide to operate with just one hand.
Uh, no. Legally, a startup is simply any new business, whatever goals the business is trying to accomplish. The startup period is the period during which the business is setting itself up prior to begin its normal intended business operations.

The term "startup" derives from the tendency of technology based companies to remain in this "starting up" period longer than companies in most other domains. It has somehow been romanticized as a term exclusively belonging to tech.

After all, if "startup" only meant a business trying to solve a unique problem, then Twitter, Facebook, and even Google never were startups, because communication, social networking, and search were not unique problems when those companies were formed. For that matter, AirBnb and Uber would not be startups, as FRBO's and charter car services are solved problems.
Thinking is hard. Group think for the win!!
Hacking away on travel
I find it interesting that your metric of smart is whether or not someone has knowledge of the Game of Life.