skysight-inc/HackerNews huggingface dataset:
Honestly, I would be okay with plea bargaining if the only bargain that could be offer the DA could make is getting off completely, not a lesser sentence. Perhaps a reasonable fine would be okay if it were enough to teach someone the risk isn't worth the reward, but not so high that it screws them for life or bankrupts them. Either way plea bargains shouldn't involve lots of jail time vs less jail time.
When specifically did you gain the right to not be offended? As far as I'm aware, nobody has any such right.

If you don't like what someone is saying, walk away.
You could improve the usability of this library (or FP in PHP in general), by implementing 'string lambdas' such as those found in Oliver Steele's Functional.js[0], which was a clever, if controversial, workaround for Javascript's lack of a concise anonymous function syntax at the time.

For example

function($n) use ($partial) { return $partial($n - 1) + $partial($n - 2);

could become

'partial(n - 1) + partial(n - 2)'

Compiling the string lambda to a function can be memoized with the string itself as the key (as many regex implementations do with the regex text) so each is only ever compiled once.

[0] http://osteele.com/sources/javascript/functional/
Any docs at all?
I don't see any evidence of an intelligence agency being involved or of the CA being forced to sign the certs.

>ANSSI has found that the intermediate CA certificate was used in a commercial device, on a private network, to inspect encrypted traffic with the knowledge of the users on that network.
Five product lessons
for those interested in C++ based concurrency lib, check out lthread_cpp. It's a wrapper around lthread.

http://lthread-cpp.readthedocs.org
The fact that this is a problem widely felt enough to be reported in the WSJ is a side effect of consumerism run rampant. Advertising campaigns that conflate high resolution with high quality combined with a "you can do anything" attitude have persuaded millions of people that they're great photographers when in fact they're just taking photos and videos which even they will likely never watch.

Don't get me wrong, the technology is great and it's enabling some really talented people to do really awesome things. But those people spend literally years learning to compose shots, and hours after each photo session poring over thousands of duds to find the few gems. The average person isn't doing that. Let's face it, if you want the sunset in Puerto Rico captured in a photo you're better off letting the professionals do it.

There are other definitions of quality. I have a lifetime of photos too, but my lifetime of photos amounts to about 300 photos taken over 30 years. They're not well-composed. A lot of them were shot on crappy hardware and it shows. A lot of them are pictures I didn't take. But every single one of them takes me back to something I care about and makes me smile. My vacation photos are of me and of people I care about, with things we liked.

I don't need cloud storage to sync those 300 photos between my devices. They don't require organization; they're stored by date and time and that's it--I know where every photo was taken and who is in it by looking at it. The photos are stored on my laptop hard drive, a backup drive, and on my personal server. I sync them with rsync but if that didn't exist there are a dozen other ways that would work as well.

If you're not a professional or trying to be one, then the solution isn't waiting to be invented. The solution is to stop taking so many pointless photos. Is sifting through hundreds of photos really improving your life? Do you really care about all of those photos, or could you figure out before you even take the photo which ones you're going to care about?

And taking all those photos has other downsides too that have nothing to do with poor storage solutions. Trying to capture everything for the future prevents people from living in the present. I see people at concerts all the time watching the entire concert through their phones. Are you really going to rewatch that poorly lit video with its shitty sound later? You're damaging a present experience that could be awesome in exchange for a mediocre future experience that might not happen. Not to mention how this affects other people's experience: if you're tall it's not your fault, but if you're holding a phone between me and the artist I paid to see you're being an asshole.

TL;DR: The best way to organize a lifetime of photos is to stop taking ones that don't matter.
It's sort of funny that you're holding rust to a far higher standard than c++ has ever met. A more honest post would say "c++ will continue to be used because c++ is what is used and that's how we like it."
Profound.... very well put.
Yes and no. I really want sophisticated cruise control for driving on the freeway, but for the most part I don't desire it for driving on surface streets. My real dream is that computer-driven cars can help reduce traffic because most slowdowns seem to be caused by human response time and limited senses.
The question was for an example of Apple preventing "a break-out technology" from existing on its platform.
You are right. A few months ago Jawbone UP3 definitely had HRV listed in the heart health features. That's specifically why I was looking to buy it. I guess that's close to impossible with an optical sensor.
You just need to "return this;" for the methods whose result need to be chained.

Example:

var a = function(x){
this.x = x+1;
return this;
}

var b = function(){
this.x *= 2;
return this.x;
}

a(3).b(); //result = 8
I'm not too familiar with Scala nor Akka, but know that Akka uses the actor model for concurrency. How does it differ from Erlang/Elixir?
The Paralysis of Perfect
I don't know for sure but most likely they're doing it for the same reasons they proxy images: Better protection against malware
Source: http://gmailblog.blogspot.com/2013/12/images-now-showing.htm...

Additionally I would assume that they may use the data for analytics and advertising in order to display more relevant ads. Another possibility would be to complement the site data they got from crawling websites.
GvR on gradual typing in Python 3.5
Wu Tang Name Generator
I think this is a rather unfair response. Clearly the interesting question is whether good philosophy has anything to offer. There is bad work in every discipline.
Bitlbee now supports filter channel
For what its worth, it is only MSVC without support. gcc compiler extensions are otherwise still rather portable. To clang and icc at least.
Longer, harder to reason against...

const caps = new Array(26).map((item, index) => String.fromCharCode(65 + index));

Shorter, easier to reason against.

const caps = 'ABCDEFGHIJKLMNOPQRSTUVWXYZ'.split('');
Not everyone is an entrepreneur. We shouldn't predicate scientific progress on the ability of our most brilliant minds to also be brilliant entrepreneurs. It would be a huge disservice to mankind. Some people know how to look at an atom and unlock the universe. How do we change the system to let them do that?
Big cities are the pits at offering these. While they offer a wealth of culture, it's not really culture, it's some simile of something that looks kind of like some interpretation of what the presenter thinks culture looks like... the food, the art, the music. It can be awe inspiring and suck you in. You can get your hands on anything you want at a moment's notice, from fast food to "love" [you know that doesn't mean "love", right?] and anything in between, all you have to do is get out your wallet. Relationships are fast and loose, you barely know your neighbours - if indeed you've ever seen them through the peephole on your door, because lord knows you've never knocked on their door and said "Hey, I'm your neighbour, I just wanted to say hey, here's a cup of sugar". Your shoe box is worth a million bucks, you can stand in the middle of the room and touch both walls without moving. Your bed is hidden in a bookcase because it's the only way you can have living space and a bed. That's a million bucks... for a shoe box because *location, location, location!" For what? Because you can earn more money and climb the corporate ladder... except you get your pay cheque each month and it's all gone because living expenses in the city are through the 36 square feet of roof you can afford.

Meanwhile that guy living on minimum wage out in the country because that's the only job he can get has a shit paycheque that goes just as far as yours which has 2 more zeros on the end, he doesn't have to fight for room on the subway for the hour each way it takes you to get to work, he can drive to work in 5 minutes, his 1,500 square foot house costs him barely anything, it's on an acre of land, he grows all his own produce and has a cow for milk, yogurt and cheese and chickens for eggs. He hunts now and then to put meat in his freezer and needs for nothing. He knows and loves everyone and they all know and love him right back. If he has a fall or loses his job, everyone around him rallies to help him get back on his feet. What happens when that happens to you? [Of course, I don't mean you you, I mean hypothetical you that lives in the big city chasing the dream]
I am genuinely surprised to learn that Rand Paul is not named after Ayn Rand.
The MITM could insert malicious javascript, or delete all your emails.

And PGP doesn't encrypt the subject.
Network Activity and Battery Drain in Mobile Web Apps
I think they should do it at some point. It's just too major of a potential to ignore.
It will iterate just fine, there are no values (undefined) for each `0` through `length-1`

new Array(26).length === 26; //true
Bare branches, redundant males
Please don't mistake my engagement for dismay. I enjoy your analysis.

>> SuperMicro sells a 2U machine with 4 full sized computers in it with 6 drives.

>You can put 12 cores in that

In fact, the quad node contains 4 motherboards. Each motherboard supports 2 processors. So that's 8 processors in 2U, or 4 processors per U.

Each E5-2600 processor could support 8 'real' cores, or 16 Amazon Virtual cores. 4 * 16 = 64 Amazon cores in 1RU.

I agree that our math won't be right, and I think you're in the ballpark. But, the densities can be 'hella' higher than one things with modern gear. It's only 70W for the 8 core processor at 1.8ghz, 135W for the 2.9Ghz version, so if we do 4 processors per rack unit, that's "only" 540W per rack unit. 60 Rack units is 32KW/RU - which is a lot but not impossible. I'm gently simplifying by assuming 0 watts for the rest of the chassis, which is approximately reasonable if you're building a CPU farm.
Programmers don't seem to have a problem automating aspects of their own jobs. Efficiency for it's own sake is a motivation.
It's arguable whether Winforms, WPF, and other parts that are very heavily Windows dependant bits of the .NET Framework are that important for open source development.

Even if they did open those, they're of very little use outside Windows platforms without a huge amount of work to remove how tightly they bind to the windows APIs. There's much better alternatives if you want to do UI cross platform (or just 'not windows').
Of Phishing Attacks and WordPress 0days
I'm going to hope it is a New Zealand sports merchandizing startup.
If only. Even something as simple as this, where x and y and a are floating-point values:

if( a == x/y )
assert( a == x/y );

Is legally allowed to trigger (!). Worse, it's also legally allowed to not trigger.

That's right. The above can be legally compiled to always trigger, or never trigger, or even to sometimes trigger (although this is rare in practice).

Why? C / C++ allow floats to be stored with excess precision. And they lose that excess precision when spilled to RAM. And GCC isn't deterministic. So x/y may be pulled out as a common subexpression and spilled to a register after the first usage, and it triggers. And then the next time it isn't, and it doesn't. (Effectively, the difference between this:

temp = x/y
if( a == temp) {
spill(temp);
assert( a == temp );
}

and this:

temp = x/y
if( a == temp) {
assert( a == temp );
}

Yes, it'll (generally - though the standard doesn't dictate that it will be!) be deterministic in terms of always with a given example in an single binary triggering or not triggering, but that is irrelevant, as binaries aren't cross-platform and you aren't always loading exactly the same binaries of the dynamic libraries you've linked to.

You can (most of the time) work around this by manually setting FPU precision (note that you need to change the precision of both the mantissa and exponent, as otherwise you can still end up with issues). (Except that you, in C++ at least, have to work deep magic - you have to set it before main even runs, because you can end up with problems with static initialization otherwise.) And in the process losing compatibility. And finding that random code you call occasionally resets things. Or random code you don't call (a classic example: the printer driver!). And using exactly one of float or double throughout. And hoping that none of the libraries you use ever resets FPU precision for anything, or uses the other of float or double itself. (And hope that your OS properly saves / restores the FPU everywhere, though this has largely become a non-issue).

And, worst of all, you've got to hope that the compiler performs constant folding with the same level of care as you've just taken.

Look at these:

https://gcc.gnu.org/bugzilla/show_bug.cgi?id=323

https://gcc.gnu.org/bugzilla/show_bug.cgi?id=37845

http://yosefk.com/blog/consistency-how-to-defeat-the-purpose...

http://gafferongames.com/networking-for-game-programmers/flo...

http://www.yosoygames.com.ar/wp/2013/07/on-floating-point-de...
Composite images of sun's corona during a total solar eclipse (2009)
I think you miss the pint slightly. Tons of musicians make great music, but the supply of good music is much higher than the market for listening can absorb. I have friend sin bands that play great music. They will never make it big because they're in such a crowded field only dumb luck or sheer brilliance will make them be picked up by the market.

So the point is that - even if people in academia are producing brilliant, applicable, great research, the truth is that academia produces more supply,than the market can bear. In such a case, it's like great musicians - most will have to be overlooked and only a tiny few will make a difference, either through brilliance, dumb luck or evil plotting.
Raspberry Pi [1] is probably the closest thing to an heir apparent...

[1] http://en.wikipedia.org/wiki/Raspberry_Pi
Thanks for the feedback! I;m using the concept of security deposits for now, so a hold is placed on the renter's credit card. It's all under the good-faith of neighbors.

Working on a more sustainable insurance plan that'll be included as part of our service. If not, why not just go and knock on your neighbor's door yourself right?
No. We're not. We're trusting math.
This is what a South African year 12 math literacy exam covers
F**K. The Game. A card game that makes you smarter by swearing at your friends
Where are you based? Can you include your email please?
> You could read them, and if you don't like them, stop reading them.

The snark isn't necessary. It's probably safe to assume I had set up a thing which would inject into my news feed comments above a certain threshold for certain users in threads I might not come across otherwise -- since that's exactly what I was doing.

I don't read HN threads very often anymore. Something about too many people trying to out-snark other people without breaking the rules of decorum here made it feel too skeezy.

Damn, now I'm doing it too. That's the other thing -- my mood in general has improved a lot ever since I stopped being a very active HN user a year and a half or so ago.
Is there any other reason to use a tool like this other than eliminating branch misprediction?
> When I see a brand name mentioned randomly in an arricle, I wonder who paid for it.

Yes, much of HN seems to think this is an insightful practice. That's all I have to say about that.
Wow, that is hugely different from my experience at UBC CS. I graduated in 2011, when did you finish?

"The loss of community with the rest of your class" - I didn't notice much community to begin with. It's a big program and a big school and people don't always take courses in the same order. Plus, the majority of people in CS were in co-op and my friends were often off on co-op at the same time as me.

I've also noticed a huge difference in job outcomes after graduation for people staying in Vancouver. Employers here seem a lot more likely to hire someone with coop experience.
Notetracks: Collaborative Note-Taking App for Audio
Nowadays, most of them do. Romney had the funky R that you probably forgot about: https://en.wikipedia.org/wiki/Mitt_Romney_presidential_campa...
https://nextdoor.com/jobs/

Alternatively you can email julie@nextdoor.com
I wonder if there will be any improvement if the Go code is compiled with GCC.
Thanks for the feedback!

To answer you first questions, it's aimed towards both known and unknown neighbors. We'll have soon the ability to show you which neighbors you have friends or friends of friends in common so you can opt for those only. How do you know you're getting the stuff back is by security deposit right now. Working on a long term more sustainable partnership with an insurance company and include it in the service fee.

Decided to go with the first. We're two developers mainly, it's been free to develop in our free time, why not build and let the market talk to us! It is exactly what we're doing, by trying to show it off a bit more to the community.

Lastly, all it takes is passion for what you're doing. Dedicating some nights of "oh crap it's 3 am I need some sleep" but you just can't stop coding. As long as you remain passionate and focused, you'll achieve it! We did this in barely 3 months 10-20 man hours a weekend. With all the free-for-startups infrastructure and tools we have today it's amazing how fast you can prove concepts.
It seems that the author has overlooked the option of staying in Waterloo and working for one of the many companies that are actively looking for talented students.

Edit: I was a UW co-op student and did all my terms in Waterloo.
Got it. queued != blocked
Thanks!
I've read the Apple Watch will have this feature built in.
Your anecdote is good to keep in mind, I learned something. While I don't think the US has any auto-cut places (oh the liability!), we certainly have had infomercials selling vacuum haircutting machines for a while[0]. I'm not sure they've made a huge dent in the beauty industry to date.

Beauty is not an industry that a bit of tech pixie dust will magically transform. Haircuts aren't just a utility, they're a personal statement and a piece of one's identity. And as a previous poster indicated, it's also social and cultural. Plus the variety of people's hair and variety of desired cuts make it an incredibly complex and fine motor skill, one that robots will suck at for a very long time. And people rarely know exactly what they want when they go into a hair salon, so there's a service component there too. Beauty just isn't ripe for disruption because people and culture are so involved.

I think this is similar to the soylent discussions. Food-as-utility people think its great, but food has cultural value far beyond calorie intake. So its found its niche among products that already existed (sans tech pixie dust) - the nutritional shake market.

90% is an order of magnitude off in my opinion. But I agree that a place that offers reasonable hair cut for cheap is what many people would want, so I do look forward to your future where that is offered!

[0] http://www.flowbee.com/ http://www.haircut.com/ http://www.aircut.com/
Back in the early 90s, I was working in a Sony plant in Singapore that produces CRTs. It's a fully automated plant and my section are in charge of making the famous Trinitron apperture gril.
Anyway, I still remembered there was once a group of Japanese craftsman came to visit our plant.
And some some of my colleagues were assigned to attach with them and learn.
These craftsman turn out to be ladies (wow!) and they showed us how to do some of the work manually (WTF!) and the skills they have really put to shame the local guys, we stand and watch and totally stunned.
The crafmanship and professionalism in their skill is truely awesome.
There are plenty of examples of regulators acting abusively or in bad faith. They can get away with this because there are no repercussions.
Looks exactly like R Studio... but browser-based.
For the curious, they're referring to L-dopa.

http://en.m.wikipedia.org/wiki/L-DOPA
Some of us have been using indexes since 1896 or so. http://en.wikipedia.org/wiki/Edge-notched_card
I find it frustrating that this is both the thread with the most upvotes since "The sad state of sysadmin in the age of containers", and the most active thread, and yet it's not even on the front page. (#43 for me)

HN seems to be a bit overzealous in penalizing the numbers of comments. If that's the reason for it being so far down. But regardless of the reason I've largely switched to /active as my default page. Far more interesting content, at least to me.
Have you considered releasing your code under the GPL?

A lot of your concerns are shared by other people in the free software community. Ideally the solution to these kinds of problems would be decentralized, as a centralized server creates some issues: a) it requires you to acquire and maintain a server and b) it is susceptible to abuse[1]. But there are some technological issues remaining to be solved before decentralization is really available. I think federated systems like this--where multiple people connect to the same server but anyone can spin up their own server--are be a good stand-in for the present.

[1] https://www.gnu.org/philosophy/who-does-that-server-really-s...
Nice work! I have some suggestions for future improvements:

- Your CPUCycle class doesn't actually do backoff. atomic_thread_fence(m_o_relaxed) is a no-op, and at least one compiler (recent clang versions) will optimize the loop away entirely. You can fix by reading from a volatile variable inside the loop.

- Similarly, nanosleep on linux will busy-loop instead of returning to the scheduler for small delays; this seems not to be the goal for some of the backoff schemes

- The BoundedQueue assumes that a futex call functions as a "full memory fence". I'm not terribly familiar with the linux kernel internals, but I don't believe this to be the case. On Power, for instance, it appears to not always generate a sync instruction, instead using lwsync or isync. I haven't looked at the queue closely enough to tell if this poses a correctness issue, but it definitely looks weaker than atomic_thread_fence(m_o_seq_cst).

- The SpinLock uses a test-and-set loop; test-and-test-and-set will often scale much better because of the reduced cache coherency traffic required.

- Similarly, using NoBackoff as the default backoff strategy seems to impose a likely performance penalty on users who aren't familiar with the need for backoff.

- The FutexLock code looks a little screwy to me. Why backoff if you're likely going to do a futex operation anyway? Why is the Lock()'s unconditional discarding of the exchanged value safe? It seems like you have the potential for missed wakeups. But it's late and I'm tired, so I'm probably just missing something.

I don't mean to be critical, it's just that code reviews only ever contain nits. I'm excited that somebody is working on locking primitives that are more efficient than glibc pthreads (whose performance I'm not a huge fan of).
Spritesmith now supports retina sprites