skysight-inc/HackerNews huggingface dataset:
That is not even a problem in python. You've pointed out One strange case with cyclic references, that can be garbage collected by the optional garbage collector that is enabled by default. You can even test to see if there are cycles with the garbage collector and remove the cycles if you want (making it more sane, and deterministic in the process). The linked page even shows how you can detect the cycle with python, and then remove it. So by default this wouldn't be a problem in python. Also, in a production system which actually tests their code for cycles, this would not be a problem in python with the GC turned off.

In practice I've found it useful to avoid many types of weird behaviour that GC systems have. Where you often need to tweak the GC so it behaves nicely with your system. These pathological non-deterministic behaviours are often just not there with ref counting. How many java or rails articles have you seen where they talk about adjusting the GC so the apps don't blow up?

GC is also the enemy of fast. But not in the throughput way that many people measure it. Instead in the latency way. Where if you have GC it can take longer to process a request, due to the non-deterministic behaviour. This is noticeable in many Java systems that stop for a second to collect occasionally. If you're in a real-ish time system, then using GC or allocating memory is slow. If every 100th web request takes 1 second, or you get janky animations, or occasionally take too long to respond to user input, then that is a broken program in those domains.

The linux kernel, QT, and Objective C automatic reference counting are much better forms of reference counting. The CPython one isn't the best, but still does give you some of the benefits. CPython does have memory pools and reference counting, which means if you are very careful you can avoid pathological cases of memory allocation in a deterministic way. You can also more easily manage memory manually if you need to. Since once you remove all references to an object it is free'd immediately. With GC, how do you know the 3GB object is freed now, or in 1 second? Will that cause swapping to happen? What about with the next version of INSERT_GC_LANG that changes the GC behaviour?
Entirely feasible, as far as I know; OS X lets you discover processes and access their devices. OS X, being BSD-based, doesn't have a /proc file system; instead, you have to use sysctl() to get at the data.
http://microformats.org/wiki/h-resume looks good as you can choose how you want to display the data as well as allowing parsing to JSON if you want
This site is gorgeous. There is so much attention to detail. I don't quite understand the barely visible half curves right above the transport row for a particular explorer day.
I found a problem with those is that eventually you have to create a theme by your self. On the other side, if you use wordpress, there are tons of themes/templates to choose.
In order to correlate with heath issues your going to need a standard to work from. Which makes collecting most of this info before 'fit-bit 12.0' or whatever somewhat pointless.

What exercise data can tell you is if your gaining or losing ground. So, if you do 10k in the same time but your heart rate is higher or lower that means something. But it's not going to correlate with a say a 1% increase of diabetes because we just don't run studies with that much detail yet.
Personal health recording systems like this one are most useful for reporting symptoms to health care providers. In the event of a flu or a running injury, I like being able to tell my doctor exactly when, where and how the problem started.

It's also smart to record the data yourself instead of sharing it with a health tracking app. With due respect to those projects, I draw a line at sharing specific and private health information. I've arrived at this personal stance after weighing the benefits of information sharing against the risks of my data being leaked, mishandled or mined.
Can you put this in terms of dollars and cents?

If the two pieces of code are largely equivalent, then your co-worker is wasting a lot of the company's money. If his truly are much better (in a way that matters to the execution of the company's goals), well, then maybe you need to step it up somehow.

I'm not sure why your director is not addressing this, but nothing stops you from doing the analysis and presenting the argument.
Show HN: Node Music Player – an open source web-based music player
Hey guys! For a limited time I'm offering free help with static sites. Don't hesitate to get in touch. Here is starter kit I have so far:

https://github.com/kriasoft/static-site-starter
It was some time ago, but I really enjoyed Immanuel Wallerstein's books on this, "The Modern World-System" volumes 1-3. He's also maintained, for years, an extensive series of commentaries on current events: http://www.iwallerstein.com/commentaries/

There's a book I read around the same time that I often recommend, "The Political Economy of Third World Intervention" by David Gibbs, which cites Wallerstein. It proposes a "business conflict model" of warmongering, and analyzes a shift in US military policy toward the Congo between the Eisenhower and Kennedy administrations. Basically the thesis is that war is no longer country versus country, but Multinational Corporate Conglomorate vs (MNC), and countries sway in alliance to various MNCs.

Its a good read from the perspective of the "World System", the definition of which is a (global) economic system which transcends localized political systems. Prior to the 1500's, most economic trade took place within a common nation/political regime, but starting around then, the "modern" world became a place of extensive economic trade across political boundaries.
Say the blockchain's growing by a gigabyte a month.[1] I don't think SMS can support that much, especially times so many devices. Using a tv signal is more robust - you can support millions of devices, and transient 3G network failures will have less or no effect.

[1] I estimated. http://blockchain.info/charts/blocks-size
In addition, correctness and security should always be prioritized ahead of portability. It does no good for software to be portable if that just means it's incorrect and insecure on more platforms.
Good point expliciting the "paradox". But I don't think we need to change the definition of AI, or to add a definite purpose. Currently, "successful" AI systems are indded systems with a purpose: cheating some human judges into beliveing your a boy in a chat, wining a Jeopardy game, detecting cats in video. Well done. But lame. With a purpose you get working systems, but you don't get what we expect when we say we want an AI.

If you defined the purpose to be to execute any order given. by a human, it would be very nice, but it still wouldn't be enough.

Perhaps the purpose would be to find out why we built them? In a way, it's a paradoxical question, like whether God exists, or why we are here? I guess it would do, as a purpose, to obtain the wanted AI. I'm not sure it would help the engineers to build it, having such a purpose.
On a general note, how do meta analyses handle publication biases? For example, this study used 343 studies to derive their conclusions. But what if there were 5000 studies which showed that organic and non-organic food have no differences, but were not published or peer reviewed because they were deemed "not interesting"?
After someone asked for it in /r/haskell I added a link to the complete code for this post.

https://github.com/tel/tel.github.io/tree/master/public/code...

Thus far there are no dependencies on outside libraries (though eventually I'll have to use `containers`) so you can just drop it into GHCi and play around!
"Werror is a guarantueed build break whenever the build is tried on a system the original developer had no access to."

Yeah, if your program uses undefined behaviour or your cc is crazy. I think the point is to catch undefined behaviour and make sure it isn't ignored.
Ask HN: What SaaS should we build for our internship training program?
We have 8 interns to our company and I have to introduce them in web development. I want them to build this while I provide guidance.
Hacker calls me and says he tapped my phone. WTF?
I called him back and no answer. I tried to reset my phone and it says "error". I also cannot turn it off. What is going on?
The restaurant might identify a problem - few minutes longer serving time than 10 years ago caused by mobile usage.

Restaurants want to guide people to not use mobile phones less in NYC restaurants.

People use mobiles less = less time spent on serving them and quicker customer rotation.

Restaurant saves up to 5 minutes per customer which equals to higher profit margins.

Campaign is successful, marketing company responsible for it gets paid huge chunk of money as those few minutes in top restaurants is worth gold.

If this is the case you might notice soon in NYC newspapers/NYC food guides articles about culture in restaurants.

I have been doing "shadow marketing" for 7 years and such a strategy seems like a very good way to actually do this. It dosent seem to be effort of just one restaurant.

I am not saying this sound impossible - I am saying this sound extremely stretched - instead of 40 minutes we are talking about probably 5 minutes top unless they are Hard Rock Cafe which is 100% tourist oriented.
Coffeescript is just javascript with syntactic sugar on top. This library provides sugar for multiline strings.
The Tahitian Village subdivision in Bastrop(!), TX.

http://www.tahitianvillage.com/index.html

Admittedly, the only real remainder of the Tiki lifestyle are street names and the styling of the HOA building.
In the US there is an official organic certification program.

You can't just call something "organic" and get away with it. It actually has legal specifications.
I used to assume I was going to do everything in Linux and Windows. It was easy to find stuff to do. I realized I was not going to have drivers and be a conventional operating system.

I did work on things which add value.

The first 20% of the effort gives 80% of the function. I am working on polishing.

It is harder to know what to do than to do it. I am managing and marketing.

I have been finished for a couple years. When I think of an improvement or quality, I do it.

I don't know what to do. I have to find stuff.

The bigger concern is I am in jail. Nothing matters until I get out of jail. I'll just talk with God.

It's done.

I fixed a bug. It raised a question -- do I need my fancy click-on-free-form-icon code? It's neat but bulky. I could do without, but I like it. This is a management decision. It would be friendly to GPUs to get rid of it, but I hate GPUs. Fuck-em. I dig-in and make mine so it cannot be stolen. Nobody can change the resolution.
Which app do you use, may I ask?
Again quite a poor press release for a university.

* Antioxidants have lost a lot in recent studies in terms of supposed health benefits. Mentioning antioxidants without reference to today's antioxidants and health research is implying a not-proven health benefit of organic food for antioxidants, while the health benefit can only soundly be expressed for the lower levels of pollutants.

* There is no link to the paper or a preprint of the article.

Apart from this, it is great to know that organic food is less polluted than conventional food (and it would be great if we got those numbers down for conventional food as well).
This is an area where the compiler and programming language communities often seem to be talking past each other. In the post you linked, Weeks is talking about CPS and SSA as the datastructures manipulated by optimization algorithms. CPS is interesting primarily as a language in the formal sense of assigning semantics to programs. Whether you choose to represent those programs naively as a tree structure or with an efficient graph representation as in SSA, you're still using CPS.

This paper is really good because, unlike a lot of compiler literature, it treats both semantics and term representation.
Plenty were planned. They were organized by VCs, who pushed this scheme on their portfolio companies. Heady times...
Well, actually, that's what the LibreSSL guys are doing. Removing tons and tons of backwards compatibility crap

http://opensslrampage.org/
I didn't find this very readable, so I've added formatting.

https://github.com/pflanze/slides-djb-20140710/blob/master/s...
Same question that I asked previously on that thread, how do you find places to rent that's not Airbnb?

(cool blog btw!)
It does seem kind of odd to criticize the release for having -Werror on by default and also for having a fallback if /dev/urandom is unavailable.

In the former case they are sacrificing portability for increased confidence of correctness, and in the latter they are sacrificing confidence or correctness for increased portability.
You demonstrate my point well.
Was this not one of the things you critisized openssl for?

ie falling back on braindead methods when sane ones failed.
Cool stuff!

This concept is pretty much how I started with SockJS. I realized that by using the iframe/postmessage it is possible to get decent "realtime" in all the browsers. For example Opera had EventSource but it didn't support cross domain. But it did support iframe/postmessage....

To make things even more exciting the iframe was loaded with proper (third party) cookies, so it is theoretically possible to use cookie-based authorization (at least to some extent).

Cookies are also required in long-polling scenarios to get sticky sessions, think: JSESSIONID.

But the problem is browsers nowadays block third party cookies and CORS just works, so there is _no_ need for the postmessage hack. Sadly...
LibreSSL is lacking features such as ALPN and they've removed many constants, changed function definitions in subtle ways and modified header include dependencies. The result of this is that it definitely isn't a drop in replacement for OpenSSL. Then again OpenSSL usually isn't a drop in replacement for OpenSSL between versions either so they aren't doing a terrible job.

Most of these could be easily worked around with a few #ifdefs but they've also managed to make that a bit problematic by reusing the OPENSSL_VERSION_NUMBER macro without providing some sort of complementary IS_LIBRESSL flag. Fortunately OpenSSL hasn't hit version 2 yet so the version numbers don't overlap at all.
The final section on the wikipedia page for "Iron Dome", has a few citations questioning the effectiveness of the system. I have no idea how accurate those sources are.

Even if those criticisms are incorrect, there are still blindingly obvious countermeasures that could be fairly easily be installed into the rockets that would reduce the effectiveness of Iron Dome.

So this success if it exists, could be short lived.
Hmmmm... So, for every thousand rockets 100 land. If 100 rockets landed in NYC or London, it would be a tragedy. Up the amount of damage per rocket, and things get even uglier more quickly. I'm not really sure why the author thinks one side is winning some sort of public opinion war because they other side is more effective at defending themselves.

At any rate, solving peace in the Middle East isn't going to happen on HN, so perhaps we should skip the topic?
I won't argue that point since I generally agree, but ask yourself this:

0. sshd will fork() and chroot() into /var/empty. After the fork(), you can't use the entropy you have because it's shared with the parent (i.e., it's not "entropic").

1. Where should it get entropy from?

2. Where does OpenSSL get entropy from in this case?

Anyway, I don't even work on portable libressl because I don't want to deal with shit like this, but I think the quoted text erroneously gives the impression that /dev/urandom isn't used. I wanted to correct that impression.
It does fail if there is not enough entropy.

> An error occurs if the PRNG has not been seeded with enough randomness to ensure an unpredictable byte sequence.

https://www.openssl.org/docs/crypto/RAND_bytes.html

But there is also this:

> Pseudo-random byte sequences generated by RAND_pseudo_bytes() will be unique if they are of sufficient length, but are not necessarily unpredictable.
Not necessarily. If the installer of the machine checks that it downloaded the "real" blockchain, it would be expensive to forge new blocks to send to it.
C# isn't really my cup of tea, but I've had reasonably good luck running (well-written) third-party C# code on Linux and OS X using Mono. What are some of the issues that make this reckless?
Dozens of people are being killed and someone has the nerve to right about one of the country'so PR problem. This doesn't belong on HN. I'm usually open to interesting non-hacker relevant articles but this is nothing but propaganda. The remark that Israel is only attacking terrorists is particularly ignorant. It was reported yesterday that out of the 100 dead Palestinians more than half were women and children.
You're just encapsulating reality properly. Laws go with what they go with, they're like a part of specific things.

For example, if it were impossible to create laws regarding traffic signs, it would still be possible to achieve a similar 4-way intersection, with cars stopping for each other - it would have to physically prevent passage from one side to the other, alternative the open direction, like gates or whatever. Can you imagine if that were at every intersection?

Or you can just put up 3 lights on a timer, and a bit of law and add it to the list of stuff the system handles.

So complaining about "laws for every little thing" is a really poor way of looking at things. What maritime traffic laws apply to you? or hazardous waste laws? or commercial construction laws? or banking regulation laws? etvcetc.

One answer is "all of them" but the other is "none of them". They're really part of that aspect of activity, not really part of one long codebook of everything you have to obey all the time.

You can go weeks without even thinking about the law. But if you start do something regulated you haven't done before, it might be your first thought. This is as it should be - the law is like an API for a friendly reality.

Just look at places with total lawlessness and lack of rule of law. That is not a preferable starting point for any project or endeavor you might conceivably participate in.
Anand, you beautiful, brilliant bastard. That site looks awesome beyond compare. Awesome job.
For what it's worth, having worked with Anand, I don't think 1200+ commits suggests it's input manually (you can see on the about page a list of some of the APIs it's pulling data from), I think it more suggests that Anand likes to commit a lot when he's building something. And for good reason, it's been really cool to check out historical revisions and see how a design changed at every step.
how does that work?

if you give people the facility to hide and commit crimes than you are helping people hide and commit crimes - even if your initial reason was to aid political dissidents who don't want to be found, rather than pedophiles, murderers and other assholes...

arguing for tor is extremely hard because its much more useful for getting away with bad things than anything else...
"If you do not forward this to at least 10 restaurant suppliers, your business will fail."
2012 was a long time ago. Seriously. Would you use un-patched software from 2.5 years ago? I wouldn't. Science can move fast too. Relying on old data is foolish when there's a lot more newer data that can be analyzed.
> They advocated a free market system on the premise that it was the best way to handle this complexity, not on the basis that it doesn't exist.

They shifted simplicity from society to the individual. So if the social was complex it was nevertheless based on a the motives of simple individuals.

That is, people are selfish rational actors. The problem is that they arent. Libertarian models of humans are incredibly simplistic.
Custom Select Elements
There's a difference between the creator of a software system and who actually adopts it and advocates it in practice.

Yes, git did originally come from Linus and the Linux kernel development community. But since then, their original use of it has been eclipsed by the larger and more vocal GitHub/Ruby on Rails/JavaScript segment of software developers. The fact that both groups use git does not mean that they're otherwise connected in any way. Traits (such as the propensity to be a hipster) specific to one of the groups very likely do not apply to the other.

Many of these GitHub/Ruby on Rails/JavaScript people do advocate very loudly for git's use everywhere, even in situations where it is not the best choice, or even where it's obviously a bad choice. Some of them have elevated git from being a tool to a quasi-religion. They've done this with some of their other "chosen" tools, too, so it's not just limited to git.

They do make the git community as a whole look quite bad. But they're obviously very distinct and separate from the Linux kernel developers who created git. The two distinct groups should obviously not be confused.
This is insane! Amazing work dude. Btw. love the UI/UX.
I believe the team doing this believes those should be fixed when they happen and so they consider them bugs.
They usually have a definition for the kinds of studies they'll use. For example, they might say "only studies of this size betwee these years that measure this thing". I'll bet if you read the full analysis, you'll find something like that in it.
When is the GC activated exactly? When there is not enough memory available. This is the problem, because depending on the data the program is processing this changes.

So if you run your program with different inputs (why would you run it if the inputs are always the same?) then the GC will be activated in entirely different parts of your program!

This makes it non deterministic because objects in OCaml can destruct at different times in your program depending on the inputs. With reference counting, they are destructed at exactly the time when they have no references.

With OCaml GC, the code can run in a different order depending on the GC variables and depending on the program inputs.

The bug in the original article was caused because the GC was finalising it at a time the author did not consider. Probably because the code assumed reference counting behaviour of finalising when there are no references.

"OCaml's automatic memory management guarantees that a value will eventually be freed when it's no longer in use, either via the GC sweeping it or the program terminating"

So, it can guarantee your object will be freed... but only when the program terminates? That's not a very strong promise.
>to grapple with and produce satisfactory outcomes.

What qualifies as "satisfactory" is where things get complicated. For Friedman, satisfactory is maximizing shareholder value. That goal is much too narrow for a well-functioning society. Markets serve society, society does not serve markets.

Optimizing for Friedman's definition of satisfactory puts many important things on the backburner: environment, quality of life, social justice, good communities, social programs, health, worker rights, etc.
Try using QQ to talk to Chinese people and you'll quickly become aware. Tencent has made the "interesting" design decision to have you perceive other people's messages in the font of their choice, not your choice.

Presumably not an issue for real Chinese people, but it can give me difficulties.
I sold surveillance cameras when I was in University and had a customer build something similar to a GoPro using a bullet camera, a portable mini-dvr and battery packs. I don't recall the quality being very good, but he was an interesting guy!