Statistical model of IQ test beats humans at the same IQ test - <AUTHOR> http://observer.com/2015/06/artificially-intelligent-computer-outperforms-humans-on-iq-test/ <comment><USER2> Here is the most up to date version of the paper: [http://arxiv.org/pdf/1505.07909.pdf](http://arxiv.org/pdf/1505.07909.pdf)

The questions on the IQ test are very specific. Word analogies, identifying antonyms, synonyms, and which word isn't like the others.

The method they use is similar to word2vec. That is, it does statistics on millions of words and how they occur in sentences to try to create a vector representation of it. These vector representations include a lot of semantic information about the words and what they mean, which makes it possible for the computer to do these tests automatically.

They then compared it's performance on these questions with people they paid on Mechanical Turk. And the computer did better.

This is really interesting that it can beat humans, and shows some understanding of the relationships between words. However it doesn't mean it's intelligent, or even close.

It also doesn't mean IQ tests are worthless. What they measure is variation between humans. People that do better on these questions, also tend to do better on other unrelated exercises. Like puzzles, memory challenges, or even reaction times. That these things are correlated suggests there is some single underlying factor which determines some of the variation of mental ability in humans, and we call that IQ, and can measure it.

However computers have a totally different set of factors that determine their strengths and weaknesses, and applying human tests tells us nothing. It doesn't tell us that the tests are worthless because dumb computers can pass them, because it still correlates with intelligence _in humans_. It doesn't mean the computer is intelligent, because some of the tests might be beatable with clever algorithms like this, that obviously aren't very general.

<comment><USER3> Thanks for the link to the paper. I think the older criticisms still stand:

\- They created their own data set. Instead of a general Q-A system, they may have overfit to this particular task and question types.

\- They set the human intelligence benchmark by using Mechanical Turk. This may not be representative of true human intelligence (given the lower quality of Mechanical Turkers).

As a future work, I hope they look at the work the Allen AI institute is doing with Aristo [1]

There is a current challenge [2] to beat 8th graders on a standardized 8th grade science exam. Here the data set is made by someone else, the questions are closer to real-life questions (vs. simple analogies), progress and results can be compared to other research teams and the human benchmark is set by the actual performance of 8th graders.

For human intelligence, next to accuracy and speed, we also care about simplicity. This system nails accuracy and speed, but it may be beaten by someone who has never read the entirety of Wikipedia. A deep net trained on millions of words and their relations may be too complex for this task (it uses up a lot of energy to train).

As to computer intelligence being different than human intelligence: I once nearly aced an aptitude test where I had access to a search engine. The test involved programming languages I never programmed a single line in. Yet, searching for keywords in the question, combined with keywords in the answers, I could give correct answers, merely by comparing page count statistics. Like the robot in Searle's room, I was merely pattern matching, without a real understanding or insight into the questions asked. The result of my test leaked out on the workfloor, and for weeks I was a headline wonder (having beaten all the senior engineers' scores), without really deserving it.

[1] [http://allenai.org/aristo.html](http://allenai.org/aristo.html) [2] [https://www.kaggle.com/c/the-allen-ai-science- challenge](https://www.kaggle.com/c/the-allen-ai-science-challenge)

<comment><USER4> To add to your second point, Andrew Gelman had some blog posts earlier this year detailing the challenges of doing online surveys, where he used simple questions that respondents "should" have been able to answer in a survey and found that a fair percentage >10% answered some of these simple questions wrong. I am assuming there is no incentive for answering more questions correctly so it's possible that some respondents may have answered blindly to finish quickly leading to lower scores.

</comment></comment></comment><comment><USER5> "The researchers had the deep learning machine and 200 human subjects at Amazon's Mechanical Turk crowdsourcing facility answer the same verbal questions. The result: their system performed better than the average human."

Mechanical Turk represents the average human?

And did they just ask the Turk subjects whether they had a bachelor's or master's degree or not as proof that they had bachelor's or master's degrees? Could you count on that being accurate?

<comment><USER6> If you match up the best AI systems against the bottom 25% of the U.S. population, the humans won't come out looking too smart. AI might still fail the Turing test at least some of the time, but it's getting a little scary.

</comment></comment><comment><USER7> The point of an IQ test is to measure _g_ , or general mental ability. In other words, if a computer can test well on one IQ test, it may also test well on other IQ tests, since it should be _general_. Otherwise, it's a domain- specific ability for a specific IQ test, which wouldn't be as interesting.

If a system could perform generally well, then the implications are astounding. It could imply general analogizing capability. It would also mean AI came way faster than anyone thought.

<comment><USER8> IQ tests may be designed to measure g, but that doesn't mean they actually do. The best thing we can hope for is that a test _correlates_ with g. But for every finite test it will be possible to find an algorithm that will produce high marks without requiring general intelligence. In the specific case outlined in the article it's clear that they only found a method to answer a very specific type of test.

(And all that's assuming something like g even exists.)

<comment><USER9> > But for every finite test it will be possible to find an algorithm that will > produce high marks without requiring general intelligence.

if you didnt know what the test was, then this procedure of using a "specific" algorithm is not distinguishable from general intelligence!

</comment></comment></comment><comment><USER10> It was amusing to see the quotations from Wikipedia articles (which I have worked on) that appear in the authors' paper without any citation to Wikipedia. They have made some effort to look up the background of IQ testing, to the extent of cribbing from some Wikipedia articles, but their citation of the actual peer-reviewed psychology literature on IQ testing is all but nonexistent (they cite mostly machine-learning papers), and as several astute comments point out, training a machine (or, for that matter, a human being) to perform specifically well on the specific item content of a test does NOT raise the inference that the specially trained human or machine is generally smart at whatever else the test-taking-trained human or machine does.

Another serious objection to the study, also brought up in some previous comments, is that IQ scores are norm-based scores (they compare test-takers to a general population, not to criteria of correct or incorrect answers), and it is very likely here that the Mechanical Turk recruits found for the study are NOT a representative sample of the relevant population of human beings for comparison to the machine's performance.

But my most serious objection to this study, among several, is that the item content chosen for this study was not even items professional developed and pains-takingly tested item by item by psychologists for inclusion in an IQ test battery, but rather the kind of dreck usually found in unvalidated online IQ tests, which are simply parlor games and should not be taken seriously. The study to a very great degree demonstrates the well known computer science principle "garbage in, garbage out," and does regrettably little to advance the literature on artificial intelligence.

For readers who would like to read some of the legitimate psychology research literature on IQ testing, I strongly recommend the Wikipedia article "IQ classification," which has a better bibliography (by far) than any other Wikipedia article about IQ testing.

[https://en.wikipedia.org/wiki/IQ_classification](https://en.wikipedia.org/wiki/IQ_classification)

</comment><comment><USER11> I don't think machines will ever achieve human like intelligence in the current paradigm. A very basic property of the human intelligence is that there's just one program (learning algorithm, if you please) that is capable of learning all activities, such as playing chess, playing the guitar, solving math problems etc. We are born with this program and our life is a learning experience. On the other hand, computers have separate programs for different activities. A chess playing computer can only play chess. A machine capable of verbal reasoning (as in this article) is capable of only verbal reasoning. I do not think human like intelligence can be achieved by simply assembling these separate programs together, but this is just my humble opinion or intuition.

<comment><USER12> Your general sentiment was true with old-school AI that was just exploring trees of options and intelligently pruning branches. However, for quite some time now we've moved beyond that and into areas that are promising for generalization.

You may want to explore the work that DeepMind[1] has done. They're starting with simple universes (Atari games), but have developed a single program that can learn to play dozens of different games without having ever been told the rules. They learn by trial and error (specifically, Q-learning[2]) and rely only on reading pixels and knowing the current score. They learn fairly sophisticated behaviors and ultimately learn to play these games at levels far superior to what humans can achieve.

Many people are now trying to generalize these results to more realistic worlds, such as 3D games. And ultimately to agents that interact with the real world.

[1] [http://deepmind.com/](http://deepmind.com/) [2] [https://en.wikipedia.org/wiki/Q-learning](https://en.wikipedia.org/wiki/Q-learning)

<comment><USER11> I am aware of DeepMind. It is surely a step in the right direction. However, while model independent reinforcement learning is one part of the puzzle, the other (and equally important) part is transfer of knowledge between agents (most human learning happens via interaction between a teacher and a student). I would really love to see some progress in that area.

</comment></comment></comment><comment><USER3> Please change the link.

This one serves up a malicious advertisement to mobile users in certain regions (whatsapop browser hijacker with vibration and redirect).

<comment><USER3> For the security people at ad networks: The URL was

      whatsapops.com,

the mobile device was Android latest, the region was The Netherlands. It's not a virus on the device itself:

\- No app installs since setting up the device a year ago.

\- A lot of internet forum chatter with people using clean factory resets and getting the same problem.

Next to mining for phone numbers, they try to sucker you into installing a 12 Euro a week app. Very similar to the porn-redirects ads from DoubleClick that were plaguing mobile devices and tablets around 2012. This page also abuses the vibrate API and was successful in disabling the back key by working with a redirect-chain.

Related: [https://productforums.google.com/forum/#!topic/adsense/KV1nv...](https://productforums.google.com/forum/#!topic/adsense/KV1nvWPVyAc)

</comment></comment><comment><USER13> "but the machine built for this study actually outperformed the average human on these questions."

A subtle but key statement in the article. If the models are trained for the test, we're essentially looking at a standard machine learning problem, albeit with very modern techniques (word vectors, deep nets, etc). The point is that all of these are optimized towards a goal. In this case, the goal is the IQ test.

This is not close to being an intelligent being the way humans are. Candidate optimizations you can say humans are 'trained' for might be survival, finding meaning, reproduction, etc. All of these goals are extremely broad and abstract, especially in the context of computers.

I'm not saying this article is sensationalist, but it may be perceived sensationally. This article merely notes a predictable progression in artificial intelligence.

</comment><comment><USER14> "intelligence level between people with bachelor degrees and people with master degrees"

This is pure nonsense. Average IQ raises with years spent in education[1], but the distribution is still bell-shaped, just shifted to the right ever so slightly.

It sounds like the editor feels real good that they belong to the class of educated = high IQ people, or real bad, that they didn't get the next-level degree, and got stuck stupid. Disastrous belief either way.

[1] [https://brainsize.wordpress.com/2014/06/02/iq-years-of- educa...](https://brainsize.wordpress.com/2014/06/02/iq-years-of-education/)

</comment><comment><USER15> I'm uncomfortable with research that merely states "we threw some Turkers at it". In my experience they are overall reliable, but there's no data on what qualifications (if any) the jobs were assigned, how much was offered, how long was given to complete the test, etc. It could be that some of these humans were actually by bots themselves, if insufficient controls were put in place.

[http://turkernation.com/showthread.php?21352-The-Myth-of- Low...](http://turkernation.com/showthread.php?21352-The-Myth-of-Low-Cost- High-Quality-on-Amazon-s-Mechanical-Turk)

<comment><USER3> An interesting paper at NIPS aims to combat the lower quality of Turkers with gamification. Instead of yes/no answers they offer a choice of: absolutely sure, yes, don't know, no, absolutely not. Monetary reward is doubled if they answer a question correctly with a high certainty, and it is zero'd when they are wrong.

[http://arxiv.org/abs/1408.1387](http://arxiv.org/abs/1408.1387) "Double or Nothing: Multiplicative Incentive Mechanisms for Crowdsourcing"

</comment></comment><comment><USER16> I wonder if IQ tests (already discredited as far as I'm aware?) become considered less interesting/relevant in the same way chess has lost some of its lustre once computers exceeded human abilities? Eventually the only things humans will have to distinguish themselves is _religion_ and incompetence. I'd love it to happen in our lifetimes to be able to see what real AI does. Maybe it's just as likely as judgement day is that we simply ignore each other...

</comment><comment><USER17> Headline: AI outperforms humans on IQ test

Reality: AI scores >100 on IQ test

It's technically correct because it does beat humans on average, but it reads very differently.

<comment><USER18> Actually, it's even less dramatic:

Headline: AI outperforms humans on IQ test

Reality: Trained machine learning algorithm scores better than the average untrained human.

If the Mechanical Turks were allowed to take versions of the test as many times as the AI was before the final test, the human average would be significantly higher.

</comment></comment><comment><USER19> Word analogies are the simplest problems on an aptitude or iq test, and are really just vocabulary questions in disguise. I think this result shows the limited usefulness of such questions in measuring intelligence rather than showing that the researchers' approach is a way to create AGI.

</comment><comment><USER20> Until AI can move the boundaries of science/art/philosophy etc without massive direction from humans some of our jobs are still safe.

I would not be so smug however as I expect programming to be one of those jobs AI will become better than the human at within the next decade.

</comment><comment><USER21> I think that if you had a person with average IQ spend time studying vocabulary, they would get a significant boost on an IQ test as well.

</comment><comment><USER22> Watched Ex-Machina recently and I've got to drop it here:

I would not be wooed until the AI successfully seduce the human subject(s) involved.

<comment><USER23> And I would add, "human subject that knows they're talking to a machine."

Also hopefully a machine that's being treated humanely so as not to start the robot uprising, or some skynet biz.

</comment></comment><comment> li-ch If people are trained with the correct answers of IQ tests, they will get better scores.

</comment><comment><USER24> suggested title: 'statistical model of IQ test beats humans at the same IQ test'

<comment><USER25> Ok, we'll go with that for now. Thanks!

</comment></comment><comment><USER26> "IQ-test-taking computer outperforms a sample of humans at IQ test."</comment>


128 Words to Use Instead of "Very" - <AUTHOR> http://theveryposter.com <comment><USER2> Scam</comment>


ARobots - a robot programming game in 8086 assembly - <AUTHOR> http://programminggames.org/ARobots.ashx

<comment><AUTHOR> This old forgotten programming game stole my Friday afternoon! I'd be happy to run a tournament if anyone's interested :-)</comment>


Another way to fund your startup - <AUTHOR> http://www.scrapages.com/scraps/show/196 <comment><USER2> I would not recommend this. 200 hours writing a business plan that you could have spent building version one? This is the way startups would begin life in the Soviet Union, if it still existed.

Business plan contests are only good if (a) they take near zero time (i.e. you simply submit a business plan you've aready written) and (b) the judges are people you want to impress.

<comment><AUTHOR> While that might be true I firmly believe that writing the plan helped us to have a much better focus for our application. Also, the 200 hours was for both writing the plan and building the prototype.

</comment></comment><comment><USER3> for bay area folk interested in seeing what a Bplan competition is all about, the final presentations for the UC Berkeley Bplan is Thursday, April 26th.

learn more at: <http://bplan.berkeley.edu/>

a nice thing about this event is that the judges are top Bay Area VC's.

</comment><comment><USER4> Interesting story - voted up.

I can't help myself, though: the trophy (at the end of the story) looks like it could have been a urinal from the original star trek series.

<comment><AUTHOR> Our initial reaction was to fill it with beer. ;)

</comment></comment><comment><USER5> Lots of companies in Cambridge, UK, start up from business plan competitions. Sure, the really top entrepreneurs may turn there noses up at such competitions but the rest benefit so much and more people understand the start-up process. Also the sponsors love it and provide food and wine for the networking events. Then the Mums and Dads also read about start-ups in the news and people everywhere are more supportive of entrepreneurship

</comment><comment><USER6> Congrats, that's a great story.</comment>


The End of Blu-ray - <AUTHOR> https://www.zdnet.com/article/the-end-of-blu-ray/ <comment><USER2> My main problem with streaming is limited access to older movies, and many streaming services are focusing on shows rather than features length films, so I can't reliably get recent films either with my subscription services. To watch a film, it's essentially pay-per-view for everything, and there's not much of a discount for the incomplete collection of older films that these services have.

I was promised that going digital would mean I have access to everything all the time, but that just hasn't been the case. I still have a decent bluray collection, and I sure hope that Samsung leaving doesn't foretell the the of the format.</comment>


Issues with corporate censorship and mass surveillance - <AUTHOR> https://trac.torproject.org/projects/tor/ticket/18361 <comment><USER3> Sites routed through CloudFlare are practically unbearable to use over Tor and ReCaptcha 2.0 has actually made things worse. The new challenges take more time to solve and most times you're required to complete multiple challenges before being accepted.

I'm glad to hear that this is being worked on, but I'm pretty pessimistic that there will be a good resolution. There seems to be a fundamental conflict of interest between preserving anonymity and being able to identify potential abuse. As CloudFlare grows and absorbs more and more of the Internet, the inconvenience and potential for tracking will only increase. The problem is really more of a structural one than a technical one - this is what happens when one entity controls vast portions of the infrastructure of the Internet.

<comment><USER4> I'm hopeful. The more we do abuse detection by intelligent means the more we are able to spot abuse without using CAPTCHAs or other tools like that. We are about to allow our customers to whitelist Tor so that sites that want an immediate solution for Tor users can disable the CAPTCHA check.

</comment></comment><comment><USER5> Forget Tor, what about VPNs and shared networks? CloudFlare has a great way to make the web unusable. The number of small blogs that seem to use it has become infuriating.

I typically browse via a VPN, and CF present their capture blocking on every CF site visited. This wouldn't be too bad, but the captcha is often infuriating and the CF page + capture is consistently one of the slowest loading.

Lumping every user of a VPN or shared network in with the spammers is short sited, and "allowing customers (of Cloudflare presumably?) to whitelist" rather than presenting any possible solution _for the innocent browser_ is typical of what the internet has become.

If someone is on a large shared network - VPN or university NAT, someone _will_ have virus, spam or other crap on their machine. There needs to be a solution that ensures the other hundreds of people on that net can be minimally impacted. Perhaps a way to captcha ONCE per xx hours as a browser, rather than 5x in 5 minutes as is often the case now.

It's got so annoying I find myself wishing someone made an Adblock filter list for CF sites.

<comment><USER6> Why forget Tor?

<comment><USER5> OK, that was careless writing. Better would be "Of equal importance". Net result right now is Cloudflare is equally unfriendly to both classes of users.

I'd imagine the solutions similar, though someone on Tor would probably care far more about using a CF cookie for captcha bypass solution than someone on a large NAT.

</comment></comment></comment><comment><USER7> I'll just leave this here: [https://github.com/DonnchaC/cloudflare-tor- whitelister](https://github.com/DonnchaC/cloudflare-tor-whitelister)

with a simpe cron job like this ^ you can benefit from cloudflare without blocking TOR.

btw cloudflare if you see this. I suspect you could make all of this drama disappear in an instant by adding a convenient firewall control panel option called "whitelist TOR". Then all of the grumbling would be redirected towards the individual websites who neglected to apply this option.

<comment><USER4> _btw cloudflare if you see this. I suspect you could make all of this drama disappear in an instant by adding a convenient firewall control panel option called "whitelist TOR". Then all of the grumbling would be redirected towards the individual websites who neglected to apply this option._

You mean the thing I said we are about to do both in this thread and in TFA? :-) We are going to allow customers to do that. Very soon.

<comment><USER7> sorry for not paying attention. _high five_

one other thing since you're here: you could have a second button: whitelist the top 20 most popular private VPN services, and college dorm NAT environments.

I know that sounds annoying because it's not a simple task to compile and maintain such a list, but I suspect it's the kind of work that a single non- technical intern could have as a partial responsbility. If you left this control in the "allow" position by default then I bet these VPN providers would start policing their own networks as a means to win your blessing to stay onto the whitelist.

Then consumers would have a better idea about which VPN providers are respectable at least in terms of whether or not they nix the most obvious forms of breach attempts/scanning emanating from their nodes. That may sound far-fetched, but I just wanted to throw it out there.

</comment></comment></comment><comment><USER8> I'd like to see a better solution for CF/Tor interactions but, to be perfectly honest, Tor is too small a portion of CF's user base for them to put serious effort into this and the fact their solution is more of the same seems to largely reinforce this point.

I honestly refuse to use them when I have a choice in the matter because I don't have much faith in the dark mass of data that they have access will be used correctly. The fact they need to be called out publicly by the TBB team pretty much reinforces this belief.

<comment><USER4> The problem is that there isn't an easy solution to this. We have made efforts to make things better for Tor users (see my comments in the linked ticket above) but at the same time there is abuse coming from Tor which we have to deal with and we see the amount of abuse increasing.

As I said in the linked thread we are about to allow our customers to whitelist Tor exit nodes so that Tor users do not get challenged when coming from an exit node that's been used for a lot of abuse. That will allow any customer to decide what's appropriate.

<comment><USER9> There's no easy solution because Tor refuses to do anything that would allow for anything that works within current technology. This is not a new problem. If the Tor guys really want to stop being frozen out of large parts of the internet they need to

1) Tackle abuse

2) Go work for one of the large networks for a while so they see things from the other side, and then do a lot of research until they find a solution they know can make everyone happy.

In fact Tor have repeatedly gone for solution 3:

3) Attempt to publicly shame employees of big networks and get them to lower their abuse defences by implying they're idiots who hate privacy, whilst simultaneously demonstrating little understanding of what abuse teams have to deal with. This never works.

Tor is a trivial fraction of anonymised traffic to most major networks (VPNs are far more popular). It can be banned entirely with ~zero impact on any large business. Taking approach (3) just annoys the employees and makes them less likely to want to donate free engineering time to the Tor project (because that's effectively what they want/need). We can see this clearly happening on the linked thread.

E.g. comments like this one:

 _It 's also unreasonable to maintain a "reputation" for a Tor exit node._

... just send a powerful message that Tor isn't serious. Sorry for the harsh words, but I've been round the block on this one too. Tor want to run a network that ignores abuse yet is openly welcomed by the worlds biggest content providers. Not gonna happen.

<comment><USER10> I grew up in a country where the Internet was censored and I have been a Tor user since the days of the dangerous toggle button in Firefox. So it's been like 7-8 years? I hope I can offer a counter argument.

This is not "business" as much as it is about CloudFlare centralizing the Internet around them. We should speak up against it and rightly so.

When I started using Tor, it was the only way I could access the free Internet. You mention VPN, VPNs may be popular but not everyone can pay for them or afford them or even has a credit card in many countries. With CloudFlare running on many websites, it has become impossible to read any content on them because the CAPTCHAs are impossible to solve or are a nuisance (who has figured out what a street sign is?). And while Tor gives users to access the internet freely for zero cost, CloudFlare is helping doing the opposite of that.

And please suggest what should an open network do about abuse and rather, why should they be the ones doing anything about it? Not to mention, what kind of abuse would reading an article constitute? I am not even logging in, just reading stuff has been made impossible due to CloudFlare.

<comment><USER9> I have the utmost respect for people fighting censorship, whether they're on the inside breaking out or on the outside breaking in.

But the idea that only Tor can be used to fight censorship is a false equivalence. If you look at the usage data for e.g. Turkey when they stepped up censorship a few years ago, Tor usage increased a bit, but it was a tiny amount compared to HotSpot Shield (a VPN product). Most users evading censorship in places like China or Turkey are happy to trust the VPN provider in return for superior performance or app compatibility, because they know little VPN providers aren't going to snitch them out.

Yes, normally people have to pay for VPNs whereas Tor is free. I think it'd be great if there was a collaborative network of people who donate their bandwidth to a kind of decentralised VPN (single hop, authenticated, with abuse checks, unlike Tor). But ultimately running these sorts of networks takes effort and time, and most organisations don't have access to the various grants and such that Tor has.

 _> please suggest what should an open network do about abuse and rather, why should they be the ones doing anything about it_

Keep it under control, same as all other networks are expected to do. There are all sorts of networks that range from very closed (e.g. university networks) to very open (e.g. open signup clouds, Google, Microsoft email networks etc). But none of them have a get-out-of-jail-free card, not even the biggest.

Why should they be the ones to do anything about it - because that's how the internet works. If your network spews abuse onto the platform then it's gonna get blocked and blacklisted. If you don't want your users to all be lumped in the same bucket, then you have to do the differentiation yourself.

The linked thread already explains why simple GET requests can be problematic all by themselves.

</comment></comment></comment></comment></comment><comment><USER11> Just tried to browse with the TOR browser my websites (funlabo.com, defouland.com, stratozor.com) which have "Essentially Off" firewall settings on CloudFlare: I was indeed greeted by a bit annoying Google Captcha for each domain.

That said, I am thankful for the services provided by CloudFlare, notably on the performance side and you do have an option "Off" for this if you pay for an Enterprise plan. I still recommend them.

<comment><USER12> So if I'm understanding this correctly, CloudFlare offer free CDN and DDoS protection services to websites on the (unmentioned) condition that they make those sites essentially unusable over Tor? Wow. No wonder the Tor developers consider this an attempt to enable mass surveillance.

<comment><USER13> They're not unusable, it just becomes a bit more inconvenient to use them. In my experience, you need to solve 2-3 captchas per site per new circuit (i.e. every 10 minutes, IIRC, although TFA mentions this might have changed recently).

Exit node IPs end up on a _lot_ of block lists. This is not specific to CloudFlare. It's in the nature of a project like Tor that some of its users use it for things like comment spam, which is one of the things CloudFlare tries to block. This might very well be what most of their customers want - <USER2> _lot_ of non-CloudFlare sites block exit nodes completely. They're also adding a whitelisting feature for those who want to disable those features for Tor users.

</comment></comment></comment><comment><USER14> Great to see this issue finally being tackled head on.

<comment><USER15> Why would someone put a tor server behind cloudflare in the first place? If you are using cloud flare, you are using it to protect yourself from abuse (DDOS, etc). Doesn't allow GET requests mean you can DDOS things behind cloudflare then?

I'm skeptical that cloud flare can somehow be roped into 'corporate censorship' \-- they IMHO clearly were not founded or intended to enable some sort of nefarious intent. Quite the opposite in fact.

TLDR: The title of this article is dubious or even trolling

<comment><USER6> Running an onion service behind CF (apart from being basically impossible) would lose many of the useful features of onion services. The topic being discussed is accessing clearnet websites hosted behind CF using Tor. Speaking personally, I've had to solve endless amounts of Captcha _every fucking day_. It actually makes me reconsider how important the site I'm trying to view is, because CF is trying to make it hard for me to read information anonymously.

<comment><USER14> Ditto

</comment></comment></comment></comment><comment><USER16> FYI - I am behind a corporate firewall and this article got blocked

<comment><USER6> It's on the Tor project bug tracker. It's unlikely that your company would support you downloading Tor inside your network.

</comment></comment><comment><USER17> I would encourage Tor users blocked by CF to use archive.org or archive.is save functions instead of solving captchas and teaching Google how to be more human.

</comment><comment><USER18> This selectively applied XKCD is relevant [https://xkcd.com/1357/](https://xkcd.com/1357/)

</comment><comment><USER19> What about a proof of work when coming from tor as a method to fight DDoS?

<comment><USER6> Tor circuits are not cheap.

</comment></comment><comment><USER20> __It 's spelled Tor, non TOR __</comment>


Only 21% of companies care that you're working too hard - <AUTHOR> http://blog.rypple.com/2010/10/only-21-of-companies-care-that-youre-working-too-hard/

<comment><USER2> There's a weird dichotomy here between startups and established companies. The hivemind says that the more hours you spend on your startup, the better. If you have 16 waking hours a day, nobody would tell you to spend just 8 of them on your startup. Yet if you work at an established company and your day is longer than, say, 10 hours, you're doing it wrong.

Brutal hours produce burnout, and I suppose the idea when doing a startup is to work hours that you know will eventually burn you out badly, but just hope that your company makes the big time before then. But in a bunch of ways, especially if you're going for a lifestyle business, that doesn't seem advisable.

<comment><USER3> Out for a pleasant walk, I stroll. On an afternoon's hike, I stride and sweat. Between classes on opposite ends of campus, I run. To catch a departing bus, I sprint.

Not everything has to be sustainable. Know the differences, know your limits, be judicious about what you sacrifice for, have good reason for what you do. It's not that sprinting is always bad, it's that trying to sprint 3 miles is bad.

</comment></comment><comment><USER4> _taking actions to reduce stress due to excessive workload and long hours_

That's not really caring that you're working too hard, or trying to fix the problem that you're working too hard. That sounds like trying to make you less angry about working too hard.

</comment><comment><USER5> _only 21% of companies take actions to reduce stress caused by excessive work._

21%? I would have thought the number was less than 10%.

I would say that 95% of companies take actions to _increase stress caused by excessive work_ by letting people overpromise on deliverables.

</comment><comment><USER6> maybe a list of such companies should be published - to let prospective employees know where their long term health would be taken into account :)

</comment><comment><USER7> If only 10% of all companies work employees too hard, that means we're achieving 210% care-i-tude!

Seriously, though, a lot of companies may discourage people working longer than 9-5, which accomplishes the same goal but would be "uncaring" by your definition.

</comment><comment><USER8> I think working on your startup are hours spent working towards a greater potential outcome than hours spent working in a corporation. There's more of a reward (sometimes) to starting your own company.

</comment><comment><USER9> This is an illustration of Sturgeon's Law.</comment>


Malware That Lives in MS Windows Register Value - <AUTHOR> http://www.kernelmode.info/forum/viewtopic.php?f=16&t=3377 <comment><USER2> Is there a link where one does not have to register for a forum?</comment>


Plan 9 from Bell Labs (1995) [pdf] - <AUTHOR> https://css.csail.mit.edu/6.824/2014/papers/plan9.pdf <comment><USER2> Any Plan 9 discussion should also consider the actual end of the road, Inferno and Limbo.

[http://doc.cat-v.org/inferno/](http://doc.cat-v.org/inferno/)

[http://www.vitanuova.com/inferno/](http://www.vitanuova.com/inferno/)

<comment><USER3> If those are the end of the road, how would you classify [http://9front.org/](http://9front.org/) ?

<comment><USER2> A project that ignores the actual work that Plan 9 authors did to improve distributed OS programming by keeping alive a middle stop on the train ride instead of the final destination.

For example, Rob Pike was quite unhappy to give up on Alef for Plan 9, and finally realized his ideas with Limbo.

[https://en.wikipedia.org/wiki/Alef_(programming_language)](https://en.wikipedia.org/wiki/Alef_\(programming_language\))

[http://doc.cat-v.org/plan_9/2nd_edition/papers/alef/](http://doc.cat-v.org/plan_9/2nd_edition/papers/alef/)

So worshipping Plan 9 while ignoring Inferno is doing a disservice to their authors contribution to distributed computing platforms.

<comment><USER3> ace. thank you for the clarification / insight :-)

</comment></comment></comment></comment><comment><USER4> I want 64bit inferno. Maybe I should work on it.

I believe someone did some work but I'm having trouble finding it. Also they may have replaced Limbo with Lua (or maybe I just smoked too much of the good stuff).

<comment><USER5> Perhaps you would be interested in Harvey OS[1] which implements Plan9-like operating system in 64bit environment.

[1]: [https://harvey-os.org/](https://harvey-os.org/)</comment></comment>


Hands-on with Jolla, the Nokia that could have been - <AUTHOR> http://www.theverge.com/2013/11/29/5156446/jolla-smartphone-hands-on-preview

<comment><USER2> I don't need Google's Nexus 5 and I think Jolla does deliver some unique advantage: standard linux underpinning.

A more soft reason is: it's not closed down as the iPhones and also not the one Google ring which collects everything.

It will be my next phone (but wonder how that works for them, coming from WebOS and Lumia800 ... ;)

</comment><comment><USER3> The reviewer seems very quick to dismiss the gesture based UI. His primary complaint seems to be that navigating it doesn't work the same as existing smart phones. Any HN users have any experience with it who could comment?</comment>


TechCrunch40 - <AUTHOR>

Is anyone else going to TechCrunch40?<p>I can't wait. 40 demos in two days! Not to mention hundreds of hackers, investors, and press all in one place. <comment><USER2> I am.</comment>


Ask HN: Architectures for Non-Object Oriented Software - <AUTHOR> I work mainly with object oriented software and so have seen a great many number of posts about MVC, MVVM, VIPER, etc. architectures. What are the popular architectures for non-Object Oriented software? <comment><USER2> OTP application.

And I don't see anything especially wrong with MVC in non-OOP languages.</comment>


Show HN: Tuneful – Music Discovery - <AUTHOR> https://www.tuneful.app <comment><AUTHOR> Hi guys,

This is a side project I made for fun. It's basically "Tinder for music". It works by selecting a playlist to establish a baseline for the type of music you're interested in. As you swipe, it shows you more music based on what you've liked so far.

It uses the Spotify API under the hood for track recommendations.

Let me know what you think!</comment>


Why Wikipedia will not & should not use YouTube - <AUTHOR> http://www.gwern.net/Wikipedia%20and%20YouTube

<comment><USER2> So far the H.264 fans have been beaten back as well (because we are vicious statists who hate your convenience). The IETF WebRTC meeting ending inconclusively was helpful here.

The WMF does have a YouTube channel, FWIW: [https://www.youtube.com/user/WikimediaFoundation](https://www.youtube.com/user/WikimediaFoundation)</comment>


The strangest things archaeologists have found on the ancient Silk Roads - <AUTHOR> https://arstechnica.com/video/2017/10/the-strangest-things-archaeologists-have-found-on-the-ancient-silk-roads/ <comment><USER2> The comment / disclaimer is fun to read.</comment>


Ask HN: What are your favorite sci fi audiobooks? - <AUTHOR> <comment><USER2> Those are nice imho (and well-made): [https://fourble.co.uk/podcast/starwarsradiodrama](https://fourble.co.uk/podcast/starwarsradiodrama)

</comment><comment><USER3> Pandora's Star - Peter Hamilton Judas Unchained - Peter Hamilton Hitchhikers Guide to the Galaxy - Douglas Adams

</comment><comment><AUTHOR> Excession by Iain M Banks narrated by Peter Kenny.

</comment><comment><USER4> Vernor Vinge's Rainbows End

</comment><comment><USER5> This is really weird, I've been working on and literally just posted my list on my blog, favorite 100 SciFi books of all time, I set it up so you can vote for your favorites too. Any feedback on the list and/or site would be much appreciated :)

[http://www.audiobookreviews.com/scifilist.php](http://www.audiobookreviews.com/scifilist.php)</comment>


Ask HN: Protocol Negotiation in Intergalactic Computer Network? - <AUTHOR> A while back, I remember reading how back when they were working on the Intergalactic Network under Licklider, etc., one of the problems they tackled was how to have two computers negotiate a common protocol to communicate with each other. The problem, if I remember correctly, was framed as a first contact scenario of two alien civilizations.<p>I have now forgotten where I read this and can't find any resource on whether they made any progress in this field. Any one has any idea what I am talking about here? Are there any publically available records of how much progress they made, which parts of the problem they were able to solve and what were those solutions? <comment><USER2> I'm not sure if it has the one you're alluding to but there's a list of projects on this page: [https://en.wikipedia.org/wiki/Delay- tolerant_networking](https://en.wikipedia.org/wiki/Delay-tolerant_networking) and an alternative here: [https://en.wikipedia.org/wiki/Sneakernet](https://en.wikipedia.org/wiki/Sneakernet)

<comment><AUTHOR> Thanks, but the problem was about figuring our a common language. They didn't expect all computers to understand the same protocols and so wanted to make something adaptable. I think Smalltalk, etc. came from that same philosophy.</comment></comment>


What is Drip Marketing? - <AUTHOR> https://zapier.com/blog/drip-marketing-campaign/

<comment><USER2> Thanks for sharing this. Looks really useful since I'm working on a drip email campaign. Have saved it in pocket for reading later since its so long! I've also signed up to GetDrip recently, its pretty good to use for drip marketing.

</comment><comment><USER3> It's one thing to have the Google Brigade defend their corporate parent's every move on HN. But these kinds of posts bring out the hucksters to plug their products, and that's (arguably) even worse.

Nothing against the content itself - it looks like a great article - it's the shilling in the comment section that ruins it.</comment>


Microsoft can't speak straight any more  - <AUTHOR> http://www.joelonsoftware.com/items/2008/01/29b.html <comment><USER2> It's surprising to hear Joel say something negative about MSFT.

<comment><USER3> I think Joel is pretty fair when it comes to MSFT. Sure he's an alum but he's not a fanboy by any means. He uses MSFT technologies because he knows them best and it works best for his business.

<comment><USER4> I suspect the grandparent post was being a little sarcastic. My impression of Joel's opinion on Microsoft is that it's gone downhill after his time there. Note that I'm not implying Joel thinks it's _because_ he left, just that the essays of Joel's that I've read seem to show a consistent dissatisfaction.

<comment><USER3> OK, I was just confused because I had also noticed that consistent dissatisfaction and couldn't tell if I was crazy or if elgringo was being sarcastic. Thanks for letting me know I'm not the only one!</comment></comment></comment></comment>


Julian Assange: Wikileaks to release 'million more files in 2013' - <AUTHOR> http://www.bbc.co.uk/news/uk-20806355

<comment><USER2> While I'm generally supporting Assange in his mission, I do wonder what good has come out of the released cables and other documents so far. Have there been any policy changes anywhere as a direct result of the leaks? Until now it seems like wasting taxpayer's money on making dubious sexual assault charges an international diplomatic issue and possibly unconstitutional torture of a whistleblower are the only effects that ripple through the media. Am I missing something?

<comment><USER3> A number of relevant disclosures are listed at <http://www.salon.com/2010/12/24/wikileaks_23/> .

I don't know how one could argue that, e.g., releasing cables showing the Afghanistan war is "unwinnable" (a la Daniel Ellsberg), showing the deep hypocrisy and corruption of many governments (e.g., the Saudi rulership), and the bullying of all sorts of governments into falling in line with American military and economic interests isn't a "good".

If there haven't been any visible policy changes by the US government, then perhaps it's because such a change is not easily to connect directly to Wikileaks. Of course, it could be that Robert Gates is correct in saying claiming that consequences for US foreign policy (from the leaked diplomatic cables) have been "modest". If true, that is unfortunate, but surely not the fault of Wikileaks?</comment></comment>


Notes on Programming in C – Rob Pike (1989) - <AUTHOR> http://www.lysator.liu.se/c/pikestyle.html <comment><USER2> >Rule 5. Data dominates. If you've chosen the right data structures and organized things well, the algorithms will almost always be selfevident. Data structures, not algorithms, are central to programming. (See Brooks p. 102.)

I came to the same conclusion, after a while. In the end code is there to process data. (there is meta programming and things like state machines but most programs do hold data in some kind of structures to be processed)

>Simple rule: include files should never include include files.

Yes, please!

<comment><USER3> >>Simple rule: include files should never include include files.

> Yes, please!

Let's say I have a C++ class defined in a header that uses std::string. So I require that anyone who uses my header already has <string> included in version 1.0.0. Then, in version 1.1.0, I added to the class in the header so that now it requires std::map. If the caller doesn't have <map> included, there will now be a compilation error! How is that better than simply including string and map in the class header itself?

<comment><USER2> Because then people know what they are using. And that is more valuable then fixing simple compiler errors.

I'v seen programs that have an "uberinclude", usually named "common.h" or something like that, that includes not only standard libs but also other headers. It is horrible. There is no way to understand what code written with that mind-set is doing, other then slaving over a notebook trying to make sense of it. Granted all encompassing/nested headers don't mean unreadable code. But from my experience with my own code, clear and separate headers (including standard ones) make me write clear and separate .c files.

<comment><USER3> Yeah I agree splitting functionality into separate headers is a good idea. But I feel like the rule "don't include headers in headers" is good advice in lots of situations.

Redis is often thrown around as an example of an excellent, clean C source code base. Look at server.h. It has 34 include statements. Would you rather that every C file that includes server.h have to include these 34 files before including server.h? Seems insane to me.

[https://github.com/antirez/redis/blob/unstable/src/server.h](https://github.com/antirez/redis/blob/unstable/src/server.h)

<comment><USER2> >Redis is often thrown around as an example of an excellent, clean C source code base. Look at server.h. It has 34 include statements. Would you rather that every C file that includes server.h have to include these 34 files before including server.h? Seems insane to me.

Good point. This is exactly why _I would_ want that, yes.

<comment><USER3> Do you know of a large C (or C++) open source project that follows the rule of no headers included in headers? I'd like to take a peek at its source.

<comment><USER2> Having looked around, no. LibPNG seems to keep it at a minimum, though.

Guess i'm the only one doing that. (and i have no problems)

</comment></comment></comment></comment></comment></comment></comment><comment><USER4> Most of the advice holds true, but there's one bit you should happily ignore: don't uglify your code with external include guards - that is put your include guards in the included file.

Modern compilers perform include guard optimization: [http://www.bobarcher.org/software/include/results.html](http://www.bobarcher.org/software/include/results.html)

There is one exception to this rule which I think still holds true: MSVC doesn't perform this optimization correctly, perhaps due to its love affair with precompiled headers.

I personally prefer solving that issue with pragma once, as I find the risk of having an include guard name clash higher than the chance of having two the same file accessible between to different hardlinks or copies, let alone compiling anything on network share. It's also a lot more readable.

</comment><comment><USER5> Lots of good advice from a long-time programmer ([https://en.wikipedia.org/wiki/Rob_Pike](https://en.wikipedia.org/wiki/Rob_Pike)). I have bookmarked these notes before, because his simple but effective tips resonate with me. From the article:

> Algorithms, or details of algorithms, can often be encoded compactly, > efficiently and expressively as data rather than, say, as lots of if > statements.

I have read elsewhere about moving your code complexity to your data. But I can't find that other article. It's hard to find mention at all of this strategy. But I have found it to be true. Moving details from PHP into the database results in shorter code overall. The first example that comes to mind is replacing a bunch of if-statements with one or more columns in the database, like for some kind of categorization.

<comment><USER6> > I have read elsewhere about moving your code complexity to your data. But I > can't find that other article.

[http://www.catb.org/esr/writings/taoup/html/ch01s06.html#id2...](http://www.catb.org/esr/writings/taoup/html/ch01s06.html#id2878263)

ESR actually references Pike's "Notes on C Programming".

</comment></comment><comment><USER7> These are instructive to look at now. Important to recall the '1989' date of course, but with hindsight...

I love Rule 5 ("choose the right data structures and the algorithms will almost always be self-evident"), especially when combined with STL and strong typing. There is a degree of irony in taking this advice from Pike, given the design of Go.

Much of the material on complexity assumes you are hand-coding things from scratch. I am happy to take on complexity (as long as I understand what I'm getting into) from well-designed libraries rather than building something "simple and robust" from scratch. The statement about binary trees vs splay trees is illustrative; unless I need to see the bare data structure again I would much rather take on something from the STL, complex or otherwise.

<comment><USER8> STL is exactly those simple data structures referenced in this article. For a long time it didn't even have something as basic as a hash table.

</comment></comment><comment><USER9> Generally speaking all this stuff is good, but I'd add that his note on Include files is dated and I wouldn't recommend it anymore. Any compiler worth half its salt at this point will recognize the include guard pattern and not parse though include'd files multiple times, so the worry about wasting tons of time due to that pattern is largely gone.

The big problem with what he's suggesting is that if you're designing a fairly big system with lots of decently small headers (Which is generally good - simple headers with easy-to-read APIs are good), you'll end-up with a crazy number of include's in every file - and if you change something to use a new dependency, then you'll have to change every location it is include'd in as well. There is something to be said about avoiding things like circular dependencies, but this requirement really doesn't make it any harder for that to happen, and just creates more problems and annoyances - it is not a very scalable solution.

If you look at the Linux Kernel source (Which is arguably one of the largest and most successful C programs) each source file has at around 10 to 30 include's at the top (Or more in some cases), and that's _with_ the headers including other headers. If instead Linux had taken the approach Rob is recommending, that number would probably be a magnitude larger and extremely hard to manage even if they combined a bunch of the headers they have together to reduce the total number (Which, again, I would consider a huge anti- pattern).

<comment><USER10> I think I agree that includes-within-includes are probably a necessity.

But I am not that it allows things to be broken into "simple headers with easy-to-read APIs". That is true for headers that are small and only #include system headers and other basic dependencies. But if your own code has a nest of interelated headers, then a single big header file is probably easier to read.

<comment><USER9> Well I mean, perhaps I should have clarified, "simple headers with easy-to- read APIs" has to be looked at on a case-by-case basis and what makes sense. I would argue that as a general rule it is what you should aim for if possible (And I find it is possible in a lot of cases, and that if it's not things may be getting a bit too interconnected), but you're right that there are situations where things are a bit too complicated to split-up easily so a single header for multiple things makes sense. I think that if you're constantly in that situation though, you should reevaluate how you're designing your components and headers.

</comment></comment></comment><comment><USER11> This seems clearly dated. For example:

> For example, binary trees are always faster than splay trees for workaday > problems.

I assume by this Pike means unbalanced binary trees (if not, then red-black trees are decidedly _not_ simpler than splay trees, especially if you need to delete). In that case, I don't really believe it. Nobody uses unbalanced binary trees anymore for good reason: they have awful performance when you do something as simple as inserting keys in sorted order.

</comment><comment><USER10> I'd like to see Pike vs. the MISRA guidelines ([https://en.wikipedia.org/wiki/MISRA_C](https://en.wikipedia.org/wiki/MISRA_C)). Rob's notes here are not about the kind of safety critical, hopefully small, programs that MISRA claims to improve.

It would be interesting to hear his thoughts about just those kinds of programs, and whether pointers and function pointers are still helpful.

<comment><USER12> It's useful to apply the Steve Yegge political axis metaphor[1] here. C forces a fairly conservative approach because it stocks a full arsenal of footguns. Pike and most of the early Unix guys, though, are about as liberal as they can be within C's constraints. MISRA, on the other hand, is Idaho survivalist camp conservative.

Both parties have good reason for their ideologies. Early Unix programs were tiny enough that it was easy to keep an entire applications' rules in your head and take full advantage of them. So it makes sense to play fast and loose. MISRA-compliant systems, OTOH, are developed by large teams where no member understands the whole system, and the consequences of getting something wrong are measured in attorney man-years.

[1] [https://plus.google.com/110981030061712822816/posts/KaSKeg4v...](https://plus.google.com/110981030061712822816/posts/KaSKeg4vQtz)

</comment></comment><comment><USER13> Hmm, I wonder why this is hosted by Lysator (a student association at Linköping University in Sweden), does anyone know?

<comment><USER14> Lysator has been around since forever. The English information page [1] says it was founded in 1973. I remember it from the early days of the Internet and possibly even from Usenet days.

Among other things it has a large repository of historical documents and papers on C programming and standardization dating back to the 1980s. See [2].

For what it's worth, I bookmarked the latter link in 2001.

[1] [http://www.lysator.liu.se/english/](http://www.lysator.liu.se/english/)

[2] [http://www.lysator.liu.se/c/](http://www.lysator.liu.se/c/)

</comment></comment><comment><USER15> Nobody's ever gonna convince me that "maxphysaddr" is a good example of a well-named variable.</comment>


Air traffic system failure caused by computer memory shortage - <AUTHOR> http://www.reuters.com/article/2014/05/12/us-airtraffic-bug-exclusive-idUSBREA4B02320140512

<comment><USER2> This is part of a system the FAA has been trying to replace (unsuccessfully) since at least 1990: [http://www.ainonline.com/aviation-news/aviation- internationa...](http://www.ainonline.com/aviation-news/aviation- international-news/2013-10-02/eram-development-reminiscent-failed-aas-program)

(The AAS often appears in software engineering classes as an example of a classic "train wreck" project)

</comment><comment><USER3> Sounds more like a bug rather than a lack of memory to me ...

 _The flight plan did not contain an altitude for the flight, one of the sources said. While a controller entered the usual altitude for a U-2 plane - about 60,000 feet - the system began to consider all altitudes between ground level and infinity.

The conflict generated error messages and caused the system to begin cycling through restarts._

<comment><AUTHOR> They didn't have enough memory to cope with an infinite number of inputs.

Obviously a hardware problem...

<comment><USER4> is there a plane that flies at infinite altitude?

Is there an aircraft of concern to the FAA that flies above FL1000? One or two historic flights have been that high, so raise the ceiling to 150,000'

still not infinite.

<comment><USER5> Yeah, let's hardcode a maximum altitude somewhere deep in the code and be completely surprised when, a couple of years in the future, newer, higher- flying planes/shuttles disappear from the system.

<comment><USER6> Well, considering that altitudes above FL1000 have been, for the last 60-odd years, considered to be outside the FAA's jurisdiction... what is the problem exactly?

<comment><USER7> One presumes they still need to know the location of those flights to deal with them descending into the range of altitudes used by commercial aircraft.

<comment><USER8> No commercial aircraft operate at such altitudes. No, seriously: you run out of air for air-breathing engines above FL600 (the SR-71 flew at FL800 _very fast indeed_ partly because it needed to go like a bat out of hell to keep enough airflow through its engines: and because it was able to go that fast due to there not being much air up there to produce drag), and the turbofans used on commercial airliners rapidly run out of wheeze above FL400.

The only civil aircraft that ever flew above FL500 were Concorde and the Tu-144, neither of which are in service. But they didn't fly at supersonic speed and high altitude in crowded airspace -- simply because getting an SST up to altitude and speed takes several minutes, a couple of hundred miles, and a prodigious amount of fuel. To say nothing of the sonic boom issue, which basically limited supercruise to over-ocean flight.

While there's been a lot of hot air about supersonic bizjets over the past two decades, so far nothing's escaped from the CAD package much less gone into flight testing.

So what you're asking for is for an FAA system to be retrofitted to handle _exotic_ military requirements, future space shuttles, and a class of commercial aircraft that would not operate in that flight regime within a couple of hundred miles of any airport.

<comment><USER9> Funnily enough, I understood UK ATC service was provided to FIR FL245, with basic service UIR FL660.

</comment></comment></comment></comment></comment></comment></comment></comment><comment><USER10> A perfect example of why embedded or safety-critical systems should never dynamically allocate memory from a common pool.

Such systems should always preallocate fixed-size heapsfor each subsystem, each of which can then dynamically parcel out pieces of their own heaps if necessary. This helps limits the damage of any memory leaks in the system.

</comment><comment><USER11> So much talk about Snowden, and then a newspaper reveals how to trigger a software bug than can shut down the entire air traffic control system for a large segment of the US. This is a genuinely damaging revelation, even if some critical details are lacking. Curious that the government is not up in arms about it.

</comment><comment><USER12> Having worked on ATC, this really does sound like a software bug. Fixing such a bug on a delivered system would require an immense amount of costly testing. Adding memory is the cheap option.

The other thing to consider is that some of these systems are rather old and could easily have less than a gig of ram.

<comment><USER13> That sounds very worrying. The fact that this issue occurs shows that they didn't prepare for OOM conditions, and another issue could easily cause a different OOM condition they didn't prepare for. It's not inconceivable that there could be an issue which gobbles up an amount of memory you throw at it. It is a tragic irony that the fact that testing is costly may be the very reason this condition was not tested for.

<comment><USER13> I can no longer edit. "an amount" should be "any amount".

</comment></comment></comment><comment><USER14> Lack of constraint leads to infinite search space. Sounds like constraint programming.

</comment><comment><USER15> _said Dan Kaminsky, co-founder of the White Ops security firm and an expert in attacks based on over-filling areas of computer memory._

That sounds more like buffer overrun than OOM. One is a Heartbleed-class vulnerability, the other is a pretty straightforward DoS situation. But of course why would we expect Reuters to be able to distinguish between the two...

<comment><USER13> That's irrelevant to the rest of the article, it's only how his expertise is characterized.

</comment></comment><comment><USER16> I would guess that it was some form of an numeric overflow, signed/unsigned issue or out of bound array access, because the only abnormal thing here is U2's altitude.

<comment><USER13> Have you read the article? The cause is explained quite explicitly, and it was the very absence of the altitude not any of the things you mention.

<comment><USER16> > very absence of the altitude

And? Consider what this means exactly and how come the system saw the plane but didn't record the altitude.

</comment></comment></comment><comment><USER17> What's the point of flying the most stealthy plane on earth if you have to register a flight plan ?

I thought such a plane would be 100% autonomous and be able to "see" and avoid other planes.

<comment><USER18> > flying the most stealthy plane

A U2 is not at all stealthy. You must be thinking of some other plane.

> if you have to register a flight plan

It's not a military operation in a foreign country, it's a routine flight in the home country.

> I thought such a plane would be 100% autonomous

The U2 was made long before such computers existed. They do have drones now.

> and be able to "see" and avoid other planes.

It wasn't the plane with the problem, it was ground control.

This must be a world record: A faulty assumption in every single sentence!

<comment><USER19> _" It's not a military operation in a foreign country, it's a routine flight in the home country"_

Is it worth asking, at all, _why_ we're flying a military reconnaissance aircraft back-and-forth over Los Angeles?

<comment><USER20> Atmospheric studies? Training in commercial environments? To see what happens? Because they can? Sekrit stuff?

If there's an actual military mission for any military plane that requires it to fly over or through a commercial area, wouldn't you prefer that pilots and ground operators already know how to do that?</comment></comment></comment></comment>


San Diego lab discovers COVID-19 vaccine in 3 hours - <AUTHOR> https://www.cbs8.com/article/news/health/coronavirus/coronavirus-vaccine-san-diego/509-e18e37f6-347c-4b08-ad33-910968abb04f <comment><USER2> This smells of #fakenews. Can anyone confirm/deny? No comments or feedback shown on website listed. Inovio Pharmaceuticals created a vaccine that is going through pre-clinical trials.

<comment><AUTHOR> I'd bet the headline is overly optimistic but if you watch the video it is representative of how this stuff is done (source: I am not a biologist but do bioinformatics work at UH Cancer Center and like to spend time in the wetlab observing the bench scientists doing this type of work).

It's at the very least impressive how they can go from sequence transmitted over the internet to synthesis and testing on animals in hours. That's the kind of integrated process we need to have to beat things like this.

I'd be (very pleasantly) surprised if the vaccine turns out to be effective, but this is still worth a watch for the process that they are doing. If you are not in the field this gives a decent sense of what it is like. (Caveat: I've only worked in one lab, so for all I know both mine and this one are far behind the times in terms of cutting edge, but it seems legit to me).</comment></comment>


Ask HN: How to find a marketer? - <AUTHOR>

I see a lot of posts on HN about how a non-technical marketer or domain expert should go about finding a programmer to help them build a product. I'm in the reverse situation. I've built what I think is a solid niche product, but I need help developing a promotion strategy to get the word out to my target market.
My product is an iOS app called Pro Golf Scout. It provides results, stats, player performance trends, and detailed player comparisons for the PGA and European tours. It's targeted at fantasy golfers, sports bettors, sports journalists/bloggers, and other serious fans.
Due to its focus and the value I believe it can provide to people in this niche, I've priced it relatively high at $4.99. So far sales have been lackluster, hovering around 1-3 per day after 3 weeks. Given that so far my promotion efforts have fallen mostly flat, it means the majority of these sales have come from either organic app store traffic or word of mouth.
My strategy so far has consisted of emailing bloggers in the space to try to get them to review the app and trying to participate in relevant forums/discussions, but this hasn't gotten me much response or attention.
I've also done some targeted facebook mobile advertising, but I haven't seen a reasonable ROI. My click through rates are decent (2-3%), but install rates are extremely low (1% at most).
I don't have a lot of cash to spend, but I do have a small budget for advertising if I can find an approach that's +EV, and I'm willing to share a significant portion of revenues with a partner (either an individual or organization) who can help. I don't think this app is going to make millions, but I do believe that it's a solid app that offers good value to a decent-sized niche and that there's a good potential revenue stream there if it can get enough exposure to get the ball rolling.
So, any thoughts on how to find marketing help? <comment><USER2> The type of marketer you are looking for is not interested in the small dollar opportunity your app could provide. However, there is still a lot of low hanging fruit that you can pick yourself even if you are "not a marketer."

1\. Do you have good product / market fit? Are you currently engaging with your users and potential users? What do they say about your app? Does it do what they think it should? Interview them with questions from survey.io. Listen to their feedback based on the "very disappointed" framework by Sean Ellis. Iterate the development and feedback cycle as needed. Now that you have a good product, go to step 2.

2\. Get your app out there. Who are your niche market influencers? Identify top forums, bloggers, tweeters and offer them FREE app downloads. Make sure to ping them multiple times over several months (hey, this is a problem and I developed this app. update: I have these users that love this feature. update #2: You can track all golfers for the Masters tournament coming up. etc etc). Identify who your top competitors are, and find out if you can advertise with them. Since this is a niche product, mass marketing is not an option. Facebook ads (and paid advertising in general) usually doesn't start out profitably. It takes a lot of time, trial and error, and advertising spend to figure it out. Golden Nugget: use Google Alert and specific key phrases that identify new users / influencers. So for instance, if you set up an alert for 'Phil Mickerson', add the blogger/tweeter to your drip email campaign, and leave a relevant comment.

3\. If you are serious, keep going and learn along the way. At your current phase, consistent drips to influencers are probably your best bet.

One final note, you may be better off approaching this as a learning experience rather than a business.

<comment><AUTHOR> Thank you for the great advice. I really the like the Google Alerts idea.

I'm definitely treating this more as a learning experience. It started out as a project for learning iOS development and has become a project for learning to market a niche app. But I'm also wondering if I can turn it into a project for learning how to delegate the marketing side of things to someone who understands and enjoys it, since even though I thoroughly grasp its importance, I find it tedious compared to development work and have a hard time motivating myself to put in the time required vs. say starting to build another app.

</comment></comment><comment><USER3> In your case, I would try content marketing. Create a blog with short, but smart analysis made using your app.

Kissmetrics' blog style: <http://blog.kissmetrics.com/>

Two or three posts a week, several tweets a day always re-announcing all your posts; posts not dated, looking like a library of expert essays; post with lists and "definitive guides".

I am studying to become a growth hacker, if you want to talk, contact me.

<comment><AUTHOR> Thanks, this sounds like a great idea. I'm going to start on this right away.</comment></comment>


Jean-Paul Sartre Had a Bad Mescaline Trip (2018) - <AUTHOR> http://www.openculture.com/2018/07/jean-paul-sartre-bad-mescaline-trip-hallucinated-years-followed-crabs.html <comment><USER2> Phillip K. Dick also had some bad drug trips and they led to a very long, successful, and prolific career as an author of somewhat psychologically disturbed sci-fi. I love watching the movie version of his book "A Scanner Darkly" because it does a good job of describing the way in which people suffering from the early stages of amphetamine psychosis act and think. The book is even more vivid.

<comment><USER3> Some of Dick's most effective "bad trip" novels and stories are:

Faith of Our Fathers[1]

Lies, Inc[2] (which takes a while to get rolling, but if you bear with it your patience will be rewarded).

Ubik[3]

The Three Stigmata of Palmer Eldritch[4]

If you enjoy these sorts of stories, give them a try. You won't be disappointed.

[1] - [https://en.wikipedia.org/wiki/Faith_of_Our_Fathers_%28short_...](https://en.wikipedia.org/wiki/Faith_of_Our_Fathers_%28short_story%29)

[2] - [https://en.wikipedia.org/wiki/Lies,_Inc](https://en.wikipedia.org/wiki/Lies,_Inc).

[3] - [https://en.wikipedia.org/wiki/Ubik](https://en.wikipedia.org/wiki/Ubik)

[4] - [https://en.wikipedia.org/wiki/Three_stigmata](https://en.wikipedia.org/wiki/Three_stigmata)

<comment><USER4> The Three Stigmata of Palmer Eldricht is absolutely terrifying. I had nightmares about it.

Palmer Eldricht is definitely the scariest villain of all time for me.

</comment></comment></comment><comment><USER5> I have it from a very well regarded French philosopher who knew Sartre personally that he took mescaline a lot, hence his prolific productivity, and that he would specifically inject into the thigh. There's some philosophy gossip for ya hn :)

</comment><comment><USER6> It reminds me of the story of the pencil:

too cool to do drugs

cool to do drugs

to do drugs

do drugs

drugs

([https://boingboing.net/2014/02/25/the-story-behind-the- too-c...](https://boingboing.net/2014/02/25/the-story-behind-the-too- coo.html))

This famous writer may have been negatively affected by drugs, but then they show the cover of his book with crabs. Maybe not the best message to sent around.

</comment><comment><USER7> I would definitely enjoy a Very Bad Trip spinoff with Jean-Paul and Simone as main characters.

<comment><USER8> FYI it's called "The Hangover" in English. Yet another film title that was translated from english to english for foreign markets

<comment> V-2 It was creatively translated as "Kac Vegas" by the Polish distributor.

("Kac", originating from German "Katzenjammer" and pronounced roughly like "cuts", therefore kind of rhyming with "las" in "Las Vegas", stands for "hangover" in Polish).

<comment><USER8> Not bad! A lot better than Very Bad Trip</comment></comment></comment></comment>


$87 M. News Corp. Backed Startup Shuts Down Before Launch - <AUTHOR> http://www.betabeat.com/2011/12/31/to-oblivion-and-beyond-wait-no-just-oblivion-87-m-news-corp-backed-startup-shuts-down-before-launch/

<comment><USER2> I think this is less a story about a failed News Corp. ambition and more a story about how the music and telephone industries have developed first rate competencies at stifling innovation.

Hearing stuff like this makes me really sad for the future of the Internet if everything new & exciting will need a gatekeeper or two to sign off on it.

I don't know how viable the business model was, or why they needed $87m to prove it wasn't viable, but I can't help but think that we would have had services like this 10 years ago (okay, 5 maybe) if media and networks weren't so tightly controlled.

Thank god for the Open Internet 'cuz the closed one doesn't seem to be doing much...

<comment><USER3> Just think how far that $90MM would go at other companies in the same space.

<comment><USER2> heh - yeah, that's like 10-20 startups worth of cap! ;)

<comment><USER4> Or 1.5 Color's worth.

<comment><USER3> So in an age where C-level executives have to be paid some higher amount in order to attract "the best talent", BO and Color and their $150MM wasted dollars would seem to provide an object lesson to the contrary.

</comment></comment></comment></comment></comment><comment><USER5> How much of the $87M went toward legal fees? Lots of negotiation here. The technology is trivial by comparison.

Thinking out loud...

Has any publisher managed to control their content in the digital age?

Academic publishers still manage to keep their content under control. How?

The cost of a subscription is exorbitant. Only large entities can afford it.

The large entities, e.g. universities or large firms, pass on the cost to their customers, e.g. students or clients/customers.

There's also the small fact that the content is not marketed heavily and in high demand among the general population. Unlike music.

Perhaps music should only be marketed to customers who can afford it: large entities.

It wouldn't stop piracy by individuals but it would ensure the existence of some customers who were willing and able to pay, and to refrain from piracy.

Imagine a situation where working for a large firm or attending a university gives you a temporary subscription to a vast catalog of not only academic journals but also major label music. It would be a huge perk.

Yes there would be piracy, but the large firms would have an incentive to try to stop it. They know who their employees and students are and could no doubt do a better job preventing piracy than the RIAA lawyers have done. Whatever might happen, the labels would still make money from exorbitantly-priced subscriptions.

Nah, it would never work.

</comment><comment><USER6> The most telling comment is this one:

"Beyond was always a tremendously grand ambition as the advances required by the record labels and music publishers were substantial"

.. because there were no tech advances required; the only 'grand ambition' was getting the record labels to listen to reason - which they apparently didn't

<comment><USER7> It's actually a lot more complicated than that. The record labels listened -- there were multiple news reports of them signing deals with the labels... the labels were actually excited at the idea. The problem was that not only did they have to deal with the labels, but they had to deal with the publishers, each individually. And there's a lot of freaking publishers. To top it off, they also had to convince a carrier to purchase the product, which would mean either they lose revenue or pass the extra $60 on to the consumer, risking lost sales.

They had to change/convince multiple businesses to conform to this new business model, and that's why it was such a grand task -- each one had its own, different risks, and it was up to Beyond Oblivion to convince them the model would work (which it would). The labels themselves were just a small piece of that very large puzzle.

Michael Robertson (mp3.com guy) recently posted a great article (although I can't find it) about the challenges of an online streaming service which summarizes the above a lot better than I said it, plus goes into further detail.

EDIT: Found it. [http://gigaom.com/2011/12/11/why-spotify-can-never-be- profit...](http://gigaom.com/2011/12/11/why-spotify-can-never-be-profitable- the-secret-demands-of-record-labels/)

</comment></comment><comment><USER8> How did it take $87 M for this idea to fail?

If the real challenge was getting everyone to agree why did it cost so much?

<comment><USER3> Less than 2 years.

</comment></comment><comment><USER9> This is a perfect example of why Avichal Garg's post was spot on: [http://avichal.wordpress.com/2011/11/14/build-something- peop...](http://avichal.wordpress.com/2011/11/14/build-something-people-want- is-not-enough/)

This company was certainly building something that people might want, but failed to see if the roadblocks that had stopped similar efforts before them had been removed. They should have been able to find out how much work, money in the form of advances, and relationships they needed to even come close to pulling this off far before they ever raised so much money. The fact that they took $87M and anyone gave it to them without this analysis is just sad.

<comment><USER3> $89MM. The $10MM in 5/2010 was series B, they got $2MM before that.

</comment></comment><comment><USER10> Sad news. My neighbor was one of their developers. I couldn't believe it when he told me he was looking for a new job. Sounded like it came as a big surprise.

On the same note, I know a guy looking for a new gig. Anyone hiring? :)

<comment><USER11> Yes. :)

<comment><USER10> What's the best way for him to reach you?

</comment></comment></comment><comment><USER12> Considering they didn't even manage to seal the deals, where did all the money go?

<comment><USER13> From what I understand, a lot of the raised money was for the advances required by the various labels in order to close the deals so I'd imagine a lot of money was returned to investors once it was clear the deals wern't going ahead.

There's a bit more on the story here: [http://musically.com/2011/12/31/beyond- oblivion-shuts-down-b...](http://musically.com/2011/12/31/beyond-oblivion- shuts-down-before-ever-launching-commercially/)

</comment></comment><comment><USER14> Good, I hope all these failures lead to Murdoch's downfall and bankruptcy.

<comment><USER3> Reflect on the saying, "more money than God."

<comment><USER15> Yes, this isn't the first and won't be the last time a News Corp backed venture sucks up a load of cash and closes down before launch. About a year ago a News Corp project running in London that had about $40 million odd sucked into it was shut down before launch. For a company that size, it's not a huge investment.

</comment></comment></comment><comment><USER16> was all of the 87 million used?

<comment><USER7> No</comment></comment>