skysight-inc/HackerNews huggingface dataset:
I am currently writing a client to a synchronized application system, and you only really notice how it’s layers upon layers when you write custom functions to serialize/deserialize primitive data types to a raw socket, and then on the next layer already can just abstract and write objects first to a HashMap, and then use the HashMap serializer for sending the actual object. And then you go yet another layer higher and use reflection to automatically sync method calls.

It’s really crazy to think about it.
Please excuse my ignorance. Is Node required for this to work?
Thanks for the link. It was a great read to understand in more detail what go channels really are from a theoretical perspective and how that could actually be matched within Rust.
Nope! Just plain JS.
Couldn't you request N blocks of bits from every call to read() and amortize the syscall cost?
This is funny, but it's actually more like a programmer's second worst nightmare -- "It doesn't work but it should".

The true worst nightmare is, "it works, but it shouldn't", because that means your whole model of the domain was wrong, rather than some isolated, fixable component.
Why couldn't you patent them? Viral strains have been patented. You couldn't patent the matter, but you could patent the use.

I think your comment around regulations is likely the major roadblock.
Interesting! I thought it had to do with UV reflectivity. Thanks for the link.
This is a very philosophical comment, but I'm not seeing a specific, practical advantage that randomizing on every iteration confers over randomizing on process start.

Can you provide one? (I'm genuinely curious.)
> Has he flip-flopped?

Well... https://www.youtube.com/watch?v=7BmdovYztH8
The author is Israeli; my Hebrew is worse than my Arabic is worse than my Farsi, which is pretty bad, but the grammatical mistakes seem pretty typical of the impedance mismatches between Hebrew and English.
Is there any advantage to randomizing on every iteration over just randomizing a single seed at process startup?

Generating one seed at startup would solve the problem of accidental de facto stabilization of dictionary iteration order while avoiding the issues mentioned in the parent comment.
I mean that at that time non-digital photography hadn't completely died out. I recall watching a TV show comparing digital and film photography's quality.
Gotcha, so it's correct in terms of its meaning, but incorrect in that you're not supposed to use it in this context.
Probably because the GUI's look terrible. It's still an early days project. It will improve.
You'll learn in time. :-)
Great book, and his followup book Dark Sun: The Making of the Hydrogen Bomb is equally good.
... but the US doesnt ?
Japanese workers are offered an average of twenty days off each year and take only twelve, leaving eight unused vacation days lying on the table.

No lie, that's a qualified success: it used to be 14 days offered and 8 exercised in Japan, as recently as a few years ago. (The 2006ish timeframe? Read it in a work-related report. [+])

[+] Proving once again that you can almost never underestimate how bad the Japanese work culture is, the actual stats from 平成19年就労条件総合調査結果の概況 (covering 2006) were, at companies above 1,000 employees, 9.7 days offered and 5 actually used. You might think "Well maybe that's the megacorps being shoddy" but the actual numbers get worse as you go down the size-of-employer table.
Web search 30M rows sub-second, cheaply
UTC does not bear an appreciably worse relationship to my local solar time than GMT. For that matter, at the granularity of seconds my time zone is pretty far off from solar time and 20 miles down the road is about as bad but an hour earlier.

Clocks are useful for coordinating human events. The idea that they have some deep relationship to the cosmos is a conceit as useless as the geocentric solar system model.
> To me, it looks more like "Adding Bittorrent into Firefox is pretty much impossible, where can we start instead?"

Maybe with better browser-native interaction? A house starts with its foundation.

And calling it a torrent client while knowing that it isn't interoperable still leaves a bitter taste with me.

> NaCl & Emscripten should get you some of the way there.

they don't provide sockets or filesystem access as I understand it.
Not sure what you imagine the early 20th century to have been like ... I mean, general relativity just turned 100. Anyways, in terms of our understanding the genetic architecture of even basic traits like height (to say nothing of complicated ones like the morphology of a bamboo shoot) we're practically in the Dark Ages. I know it's a bitter pill to swallow for the "Singularity is near" crowd.
Shocker. They really needed a study to determine this?
Suppose, somehow, you seed your super-duper PRNG with the same value on multiple servers. If you are not incorporating other forms of entropy into your unique IDs, you are hosed.

The cryptographic hash acts sort of like a blender for all your random/unique-ish information sources. Counters/MACs/urandom/times/IPaddrs/etc go in, a nicely mixed value comes out.
I know what javascript engines tout in their feature lists. I also know how javascript heavy websites/webapps behave. They don't inspire great confidence.

The IRC-like chat on Social Savannah will run up your browser memory and until you run out and crash. pdf.js (in firefox), as mentioned, starts sucking down cycles and bytes with just intel reference manuals open.
This seems a little bit speculative. Studies have already shown abnormal HPA axis activity in autism:

http://onlinelibrary.wiley.com/doi/10.1111/j.1440-1819.1984....

(The HPA axis is one of the main modulators of bowel motility).

So basically there is already research showing that the brain is influencing the gut in autism, but the idea that the gut might be influencing the brain in autism is speculative.
That's just scary. It definitely shows how much culture can change/warp our ideas about existence. Although that few days off probably is a significant factor in heightened Japanese suicide rates.
Thank you very much for writing this post! If you could spare even a few more keystrokes, I would be very grateful to read your view of the bar exam and its effect on the overall picture.
In general I agree with you. Your overall logic is another factor in why I left my last job. But again, you don't know me, or my boss, so you are being rather presumptuous and I don't appreciate it.
They don't need to - if they serve the video player (Flash, JS, whatever) over HTTPS, they can then use it to verify the stream.
Can Good Doctors Be Bad for Your Health?
All a UUID is really is an incredibly long random number (at least v4). I'm not sure exactly what you're advocating here.
Please do! you can also find us at contact at getlooksgood.com
You know, I know everything posted on the internet is fact /s... but I really hope this story is true cause it's just crazy.

I mean, who want to think that the main thing that would let you create code is the thing that is infected? And it seems like there weren't any other options for languages (which hopefully weren't compromised as well) so there would be no really getting around it.
The probability of duplicates being low does not mean that you won't get duplicates.

This is true for cryptographic hash functions, yet in practice no one has a problem with using them for identifying files etc., because their output space is so large as to make the chance of a collision sufficiently low. I'm almost willing to bet that even for ones which are cryptographically insecure like MD5, and for which colliding pairs can be easily deliberately created, there hasn't been a truly accidental collision.

(Fun experiment to try: hash all the files you own, and then compare byte-by-byte the ones with the same hash. Try a few different cryptographic hash functions. If you do find accidental collisions, you've just experienced an event far more improbable than winning the lottery; and if it's SHA1, SHA256, or bigger, it's worth publicising this event.)
Having worked in this area the problem is even worse as phage will be regulated as a biologic which is way worse than your typical small molecule drug.

I should point out that you can become allergic to phage just like anything.
I don't really care that much about my tone, especially in this case. My constructive criticism is not all that constructive: Stop. As I said elsewhere is is not a new idea but it is still a bad idea and a broken implementation.

As for software trends: all hope is lost.
sort of reminds me of that torrenttornado javascript extension by one of my favorite Mozilla add-on developers

https://addons.mozilla.org/en-US/seamonkey/addon/torrent-tor...
Wait - for "fail fast" reasons, we're going to do something important every few thousand years, instead of about once a year?!
I am not sure the days off to hours per week ratio for a sane life..

I.e. I hear 12 days off and I shrug. I hear 18 hour workdays and never seeing your family and my jaw drops.

I think if I worked 20h weeks, 0 days off would be okay. You never get THAT burned out over a week that the weekend can't cure you.

But if I worked 80 hour weeks, I would need 30 days off per year to stay long term sane.
With a surface area of 181 sq. km * 1 meter thick = 181,000,000 cubic meters. I'm seeing numbers like $20/ton for sand and rocks and there's not quite 2 tons of sand / cubic meter, giving $7 billion in materials, or $100K/person or >50x the GDP.

Plus transport costs, which I can't even begin to estimate.

And that's mostly just to cover the estimated sea level rise since the 1950s. It doesn't handle 3 meter waves from the recent storm events.

And of course this doesn't change the decrease in rainfall.
For the love of Zeus... it's called git, use it!
for stuff like this you can use Lua, what is the main difference with the solution exposed on the post?
Yeah...I would have compiled the code on a different machine then wiped the original machine if it had clearly been hacked.
Please just use 32 bytes from /dev/random by default. If it shows up in profiling data, then think about inventing something else. It likely won't.
I worked for a Swedish company. Because of holidays, vacation leave, maternity and paternity leave, and sick days, there were employees of the company that I never saw. I'm not saying it's a bad thing, but it took quite a while to get used to it.
Will AI bring us utopia or destruction?
For anybody wondering: Joe Hellerstein is a professor at UC Berkeley:

http://db.cs.berkeley.edu/jmh/

I'd say he's best known for work on database systems and distributed systems. ( I haven't heard the term Progressive systems before, but it seems related to the idea of logical monotonicity from his work on Bloom, which is super cool: http://bloom-lang.net/calm/ )

[Edit]

Here's a note on Progressive systems from https://sites.google.com/site/progressive294/ -

'''We seem to be at a turning point in data-centric systems, with an emerging design pattern that we can call progressive systems. In a progressive system, data is accumulated monotonically without mutation; the "state" of the system is often nothing more than the current result of an expression (or "view") over the accumulated state.'''
Start with researching visa laws. H1B is a very common way to come into US for work. EU has alternatives. Note that these visa require BS degree.
As to what to write in your resume there are much better guides online than anything I'd say.
You might start by changing "rid" to "out" in your title. At first, I thought you wanted to get rid of HN.
Why didn't you just answer the question? Which small software are did you use to post your comment? Why be so vague?
Of course, that makes perfect sense. It is the number of days off being so low combined with things like this: http://money.cnn.com/2015/03/09/news/japan-work-salaryman/ that make me truly concerned. The combination of hours and lack of days off surely takes a toll on mental health and productivity.
I can't teach anyone anything. I have neither the knowledge, skill, temperament, or desire. People will continue to implement things in a browser, poorly, and there is not a damn thing I can do about it.

> or they wouldn't have upvoted the story to #1

The cynic in me says that happened because this is "X in Y lines of javascript, in the browser!". The one thing that is guaranteed to catch the attention of people here is reinventing the wheel--poorly.
These are invaluable and belong in an FAQ or similar, linked from each HN page, alongside the Algolia search and other archive review interfaces.
thanks, i've changed
This was my group's senior project. none of us are working on this anymore.
Do they have any way to figure in the part where salarymen often work Saturdays?

If you add in the shorter weekends, I'm not sure if you even get to the equivalent of zero days off.
I doubt that anybody will help you here. This website is filled with affluent first-worlders (many of them ivy graduates) that live inside their silicon valley bubble. Their rent price is probably several times your salary.

These people prefer not to care about people that were not so lucky with their country of birth.
This might get more traction with a less obscure title.
Since the files are public, static encryption wouldn't do any good - the attacker could still build a database of hashes of all encrypted files, and then identify what you downloaded. What they really need is to sign the files, to avoid tampering.

TLS actually supports this, using a NULL cipher - you can make a regular HTTPS connection where the domain is verified and the data is protected from tampering, but everything is in clear-text. Alas, browsers don't support this configuration, since it's usually used by mistake or as an attack.
I like timeline.com and nextdraft.com a lot. They both have apps for iOS.
Also consider changing "this country" to "my country" or Turkey.
No, that cannot be guaranteed. Equidistribution in 52 dimensions requires necessarily a minimum state size of 52 log_2(52) bits, which we don't even have. Even if we did, it could not be guaranteed anyway.

You have already covered the distinction between guaranteed equidistribution and not, so I don't think there is much to add there. I do think the concern is mostly academic, since the difference between a subsequence that doesn't exist and one that will never be reached before the universe collapses is irrelevant to the user. I will note that Richard Brent, someone who is much better qualified than I to discuss this, has argued against the usefulness of equidistribution: http://maths-people.anu.edu.au/~brent/pub/pub240.html
Not only that, in Asia they work longer hours too. When I visited Japan, I noticed rush hour in Tokyo would start round about 6pm and would go on until 10pm.

Compare that with London, starts around 5pm and pretty much everyone is dispersed by 7pm.
Windows is actually very modular; even the kernel is designed in a micro-kernel style even though it all runs in ring 0. There are versions of Windows with no GUI.

Every other comparable operating system is in the same order of magnitude in the size of the code. The attack surface for any large OS is going to be about the same.
Or for those who like explanations from secondary sources:
http://c2.com/cgi/wiki?TheKenThompsonHack
Not working at all is the inevitable (awesome) future of humanity.
Yes, because the alternative is racism.
i'm not sure about put my credentials in here, or should i ? listing my dev skills etc.

i never heard about that BS Degree requirement on visa's which i don't have. i dropped out from university, Bachelor of arts in the last year.damn!
Yes. But mostly they're married at this point.
> In Solaris, orphans are adopted by the kernel and init(1M) can be restarted upon a failure condition. Some BSD flavors have procctl(2).

Neither of which provides the same semantics as PR_SET_CHILD_SUBREAPER.

Unless your desired target platform already has equivalent functionality, "porting" can't happen. It's easy enough to look at individual features and say "Solaris has something kinda like that" or "FreeBSD has something kinda like that". But Linux has quite a bit of functionality with no functional equivalent in other OSes. (And, conversely, some other OSes have functionality with no equivalent in Linux.) And I don't think it's unreasonable to make software that uses the full functionality of a target platform, rather than a less capable subset that can be made to work on other platforms.

> Polling-based interfaces can work, since a port does not have to be completely equivalent in terms of benchmarking,

Race conditions that cause you to miss events aren't OK, though. And even in terms of benchmarking, once people are done complaining about portable software, they complain that it doesn't run well on their platform. And most of the time they don't blame the platform for that.
Eh, if inflation is high and the business is a real going concern (not completely useless and corrupt malinvestment) then you can get away with this. It's a dangerous game though.
Not necessarily. Orthochromatic ("correct colour"), or ortho, materials were actually improved-spectrum materials that were sensitive well into the yellow-green. Prior to that, film and paper were really only significantly sensitive to blue/ultraviolet or "actinic" light. Getting to panchromatic ("all colours") was indeed significant, but ortho was advanced technology at the time. (And yes, being able to see what you were doing in the process room was a Good Thing™. Also, rubylith for masking.)
I wasn't referring to the performance cost of randomizing itself, but to the fact that randomization can affect the performance of whatever it is you're measuring.

For example, say you want to benchmark a function that extracts the keys from a map into a slice, and then sorts it via quicksort. Quicksort's performance is affected by the initial ordering, so different runs of the function will behave differently. Was this run really faster, or did I just get lucky with the order this time?
i don't know, i thought maybe the developer brotherhood could help me. but i never think with your perspective. And yes we're not lucky about our birth country, there are worst places out there but we live in a shit hole.
Sadly, skills won't make any difference if you don't meet requirements for visa. You could take your time and get relevant degree though (anything CS related should work).

Also you can play DV lottery. It's a small chance (1.5%) but still larger than zero.
On Windows at least I had no trouble getting many hundreds of MBs/sec out of the default CSPRNG (which uses AES CTR or something like that) - even with small calls. (A customer was insisting that generating 16-byte IDs this way was too slow for production apps and was shown to be incorrect.) It'd be surprising if other OSes weren't around the same level.
So it would appear, according to the man pages: http://linux.die.net/man/7/tcp

In quickack mode, acks are sent immediately, rather than delayed if needed in accordance to normal TCP operation.

So "normal TCP operation" is to delay ACKs "if needed". Not sure if "needed" is the right word to use, but whatever.

Looks like RHEL has a system-wide fix: https://access.redhat.com/documentation/en-US/Red_Hat_Enterp...
I mean, who want to think that the main thing that would let you create code is the thing that is infected?

I'd wager that people who work with esoteric embedded toolchains develop an instinctive distrust in that layer.
Indeed, regulations will have to change before phage therapy is used. This should be done.

Re allergy: cite? It's of course possible to be allergic to other components of phage preparation, but I don't think anyone is allergic to the phages themselves. Many people are allergic to antibiotics, particularly those in the penicillin group.
wait, (correctly) anticipating the result of a study is racism?
this reminds me of http://ipfs.io/ although IPFS doesn't run natively in the browser (it's a go app) and has much wider objectives (ie. the whole web site is loaded from the swarm, not just specific media objects, and it is trackerless, essentially).
Meh. You should just use all of that random unique-ish stuff to properly seed your PRNG. You're trying to improve the generator "randomly," which is generally dangerous and can be counterproductive. Better to rely on sound theory and good practice / keep it simple. Leave all that craziness to the kernel entropy pool and just use it as a seed.
> But forcing the use of epoll instead of an existing abstraction like libevent means that now epoll is added to the list of things that must be implemented.

Only if you care about being compatible with Linux. There's a 100% Linux-compatible kernel already available, though. :) And any platform that wants 100% compatibility with Linux could always run it through virtualization.

I'm not saying portability is always a bad thing; far from it. It's also not always a good thing, though. And there's something to be said for the mindset that any time spent on portability is time not spent making the best possible program for the only platform you care about.

Some programs should be portable. It's awesome that Firefox, Libreoffice, and other user-level software runs on Windows, for instance, to introduce people to FOSS and make it easier to switch platforms later.

On the other hand, quite a bit of low-level or server software just doesn't make sense to run elsewhere, especially now that virtualization exists. At some point, it seems like the simplest portability layer is a copy of a Linux kernel and a way to run it on your target platform.

> I could go through my code and change all the open(O_CREAT) calls to open(0x200) because that's the same thing. And then none of that code would work on linux, where O_CREAT is 0x40. Would that be an improvement?

No; that wouldn't be an improvement even for code that only needs to run on one platform, because O_CREAT produces more self-documenting code.

On the other hand, you could write all your code using openat and friends, and never call chdir, which can make software that otherwise had to worry about the working directory much simpler. That may be an improvement, even though that code then won't run on arbitrary POSIX OSes.
no. it stops being perjury when the agreement of all parties is that his testimony was truthful enough.
Once that you start using version control systems, this shouldn't be a problem.

A real nightmare for me was when I inherit a bunch of code full of uncommented regular expressions
I wouldn't bet on that.
Help Us Crash the SuperBowl 2016
There's a sense in which even antibiotics are beholden to globalization, same as the rest of us. No species will survive unless it can maintain some sort of formal truce with the global corporations.
This video was shot in Detroit. It is our hope to win, as a percentage of our winnings will go toward renovating the church this video was shot in. We want to see Detroit turn around! Not to mention, would love your support. Let's crash the super bowl together! Please rank our video 5 stars, and share it! It would mean a lot to us.
To use the YC/dev culture to your advantage you have to play your cards in a smart way. Make yourself a name (make a cool html5 website promoting yourself as a professional). Make trendy silly things in javascript, post 'em to github, to show HN. Get upvoted. Comment, gather karma. Don't show your depressive attitude to people, it turns them off (because it reminds them about their privilege of being born into a wealthy country).

Basically read this guy http://www.kalzumeus.com/2011/10/28/dont-call-yourself-a-pro... and follow the clique.

You can make it if you try hard enough.
How did you end up switching from networking to animating falling bodies? What are you doing these days?

I wish you hadn't signed your comment, so we could have had the "I am John Nagle" moment when someone inevitably tried to pedantically correct you. :)