Online comments hurt science understanding, study finds - <AUTHOR> http://www.jsonline.com/features/health/online-comments-hurt-science-understanding-study-finds-ib88cor-185610641.html <comment><USER2> Does someone have read the original article ? I am curious about how the reader evaluation of potential risk was assessed. Was there a control group which didn't see any comment to compare variance amongst this group to the other groups variances ? How was the sampling done ? Were people with knowledge of science equitably balanced amongst groups ? How many of them was there ? At which level is the variance difference amongst groups significant ? 2000 subjects can lead to average results depending of the sampling.

The jsonline article does quite a lousy job with details.

<comment><USER3> The title of the original article is "Science, new media, and the public" published in the Science Magazine. <https://www.sciencemag.org/content/339/6115/40>. If you google the title you can find the full text.

Here is a detailed article on the same topic > [http://blogs.scientificamerican.com/a-blog-around-the- clock/...](http://blogs.scientificamerican.com/a-blog-around-the- clock/2013/01/28/commenting-threads-good-bad-or-not-at-all/)

</comment></comment><comment><USER4> Interesting.

The fact that people get (strongly) influenced by comments by non-experts is not new and definitely not limited to science. The same holds true (though to a smaller extent) with TV.

Here in France, news shows will typically interview random people on the street on whatever subject they are discussing (politics, science, culture...) and air the 15-20 sec answers to millions of viewers. These people have no particular knowledge but their reaction/opinion is shown at the same level as that of a field expert. Thus conveying far too much weight to their opinion and hurting viewers' understanding.

<comment><USER5> Not only in France. <https://www.youtube.com/watch?v=aHun58mz3vI> (2min English language satire)

<comment><USER6> I remember him saying on the same programme (NewsWipe) that people on the street used to be more serious in their responses, perhaps because they thought the News should be serious and factual.

</comment></comment></comment><comment><USER7> I wonder how this translates to peoples understanding of medicine, and alternative medicine in particular. Those discussions tend to get very heated.

<comment><USER8> Diet specifically, even on HN.

</comment></comment><comment><USER9> Not much worse than being influenced by the articles themselves. Science reporting is just awful, universally as far as I can tell.

<comment><USER10> Youre absolutely right and its not helped by the fact that many scientists are incredibly poor communicators. Its a shame because there is some really interesting work happening in the scientific world which lay people are missing out on.

I just think about the laboratory I work in and professors above me who fail to recognise that non scientific people arnt stupid, they just havent undergone 12 years of tertiary education training to allow them to understand the language of science without a translator.

<comment><USER11> What you say is true. However the often overlooked issue with science reporting is that it is watered down to a point that even basic facts are conveyed wrong

</comment></comment></comment><comment><USER8> "read a balanced news report about nanotechnology"

I would enjoy being able to read the article. If its any good, it would not accurately reflect typical journalist science reporting where viewers are better off reading the comments. If the article is garbage, then it would not accurately reflect nanotechnology, in which case viewers are better off reading the comments. I think this is a pretty big hole in the study, unless the conclusion was determined before the study, in which case they did a pretty good job of manufacturing the selected result.

</comment><comment><USER12> Oh the comments here from readers commenting the comments on the linked description of scientific research that has researched how comments on description of scientific research influences the readers understanding of the sciende in question is gon b gud.

</comment><comment><USER13> I stopped reading comments a long time ago. There's a slim chance they add something to an article, but it's not worth wading through all that garbage to find the one nugget of wisdom. Perhaps they contain some feedback useful to the original author, although personally I've turned them off on my blog long ago.

Edit: Of course HN is special :)

</comment><comment><USER14> I often find myself in the comments looking for sources indicate some mistakes in the article. Can be quite helpful sometimes.

</comment><comment><USER15> And yet, here I am on the comments page.</comment>


Show HN: FileNation – A simple way to send files using IPFS - <AUTHOR> https://filenation.io/ <comment><AUTHOR> Hi! My name is Alex Sicart and I have been working on a new way to send files using IPFS, so that everyone can benefit from this technology. With FileNation you can already send files in a more secure and efficient way using IPFS, a P2P hypermedia protocol. IPFS can save millions in bandwidth, right now FileNation pins files for free.

1 - Go to [https://filenation.io/](https://filenation.io/)

2 - Click on Upload Files button. Locate the file that you want to upload and click open.

3 - Click on "Send Files to" and add the recpient email address.

4 - Click on "Your Email" and add your email address.

5 - Click on "Send".

6 - The file will be added to IPFS and sent to the sender's email, keep page still open until Eternum has finished pinning :)

Try it out and tell me how I can improve it to empower more people with this amazing P2P technology :)

<comment><USER2> This is pretty cool, good job! I have a few questions:

* How long are you pinning files for?

* Is there a maximum size up to which you'll pin files?

Also, a tip: You can speed up your service by exposing the bridge on your pinning node. That way, your files don't have to go from node to node, the end user can just fetch them from your node's local pin store.

EDIT: Quickly skimming your code, it seems like you aren't uploading the files anywhere or pinning at all? Unless I'm mistaken, you're running ipfs-js and instantiating a node in the user's browser, which means that the user will have to keep the browser open for the file to be available, no?

<comment><USER3> I believe they're using Eternum's API to pin the content. I didn't look at the code, but the download link I got in the email is from [https://eternum.io](https://eternum.io)

<comment><USER2> Ah yes, true. I missed that in the code, my TypeScript isn't great. Doesn't the page still have to stay open until Eternum has finished pinning, though?

<comment><AUTHOR> Yes, it should take some minutes! I'll add this to new features. Thanks! :)

</comment></comment></comment></comment></comment><comment><USER4> In your experience, how's the speed with sending and receiving files this way? I have relatively little knowledge about IPFS right now, but the last time I tried to access a site that claimed to be hosted in IPFS (accessing it through a gateway), it was so slow that it failed to load.

<comment><USER2> That is a constant source of frustration for us as well. We've been having problems where nodes intermittently couldn't discover other nodes, so content that was in one IPFS node would be unavailable on another.

I've spoken to a few people from the IPFS team, but they couldn't figure out the cause. Hopefully the next version makes discovery more reliable and fixes this (the files are quite quick to download once peers discover each other).

<comment><USER3> Yeah, I have two IPFS nodes, and had to make sure their swarm was bootstrapped with the IP address of each other. And even then, I still sometimes have to `ipfs swarm connect [ip_address]` after a reboot to be able to discover the content they have pinned.

Once they're connected, however, I haven't had any performance issues unless I was using IPNS. Though I only use IPFS to host static sites ( [https://ipfs.poeti.codes/ipns/dreams.poeti.codes/](https://ipfs.poeti.codes/ipns/dreams.poeti.codes/) )

<comment><AUTHOR> So, in a private ipfs network (connect to other peers who have a shared secret key) [https://github.com/ipfs/go- ipfs/blob/master/docs/experimenta...](https://github.com/ipfs/go- ipfs/blob/master/docs/experimental-features.md#private-networks). All the IPFS nodes are connected by default? Each peer pin files from other peers?

<comment><USER2> No, if I understand correctly, he just bootstraps the nodes from each other, making sure they are initially strongly connected. I tried that too, but it didn't reliably help the problem.

<comment><USER3> Yep, precisely! And if I'm having peer discovery issues with just two nodes, I can't imagine what you guys are having to go through. :/

For the curious: you'd run `ipfs id` on the nodes to get their addresses. Then you'd run `ipfs config edit` on them and add the other node's address to the bootstrap section. [https://github.com/ipfs/go- ipfs/blob/master/docs/config.md#b...](https://github.com/ipfs/go- ipfs/blob/master/docs/config.md#bootstrap)

But yeah... They'd still mysteriously not connect to each other at times.

<comment><USER2> Yep :( It's pretty disheartening to work on a product for some time and have the underlying technology just not work up to your standard.

Hearth is basically hit and miss for that reason, sometimes files show up right away and it's amazing, sometimes they time out and it's useless. Very frustrating, and there's absolutely nothing we can do about it.

<comment><USER5> I haven't looked at IPFS in depth but could this be because both the nodes are behind a nat and they need a relay node?

<comment><USER2> No, at least one wasn't. Plus, this happened even when they were directly connected.

</comment></comment></comment></comment></comment></comment></comment></comment></comment><comment><USER6> Shameless plug: this is pretty similar to my [https://filemap.xyz/](https://filemap.xyz/) in its purposes and in the usage of IPFS and eternum.io, but Filemap kinda uses geographical locations instead of emails to "send" the files.

</comment><comment><USER7> Their blog has more information about how it works: [https://medium.com/filenation](https://medium.com/filenation)

Currently the "About" link goes to Github, which I found odd...

</comment><comment><USER8> How private are files "sent" using this method? Doesn't the pinning node broadcast its hashes to the network?

<comment><USER9> I suppose a quick lookup to keybase for a gpg key (as it already asks for email), and then encryption with:

[https://github.com/openpgpjs/openpgpjs](https://github.com/openpgpjs/openpgpjs)

Would be one approach. Or, as a link is sent "out of band", I suppose one could simply provide a symmetric key in the email. Not as secure - but might be sufficient.</comment></comment>


The Myth of the Startup Miracle  - <AUTHOR> http://foundread.com/2008/03/25/the-myth-of-the-startup-miracle/ <comment><USER2> its funny; im reading "founders at work" - and it seems all startups have that "miracle" / I would call it a tipping point; for google it was their first 100k investment. For many people it is the point at which you get others behind you on your idea.</comment>


Ask HN: Starting an agency rather than a start-up - <AUTHOR>

People name their company after an idea/product rather than start an agency and work on the primary product in as much capacity but leave an option to take some extra work that might come in handy, either as financial windfall or experience wise.<p>What are your thoughts on this? <comment><USER2> I've run my core business as an agency over the last few years and I have to say that it really gets in the way of trying to do your own products. The problem is that even the smallest client tends to require handholding, and the key to being a good agency is that it really is a service driven business — so it tends to be a real time sink.

Unless you have clients who don't care or don't need handholding (which is very rare) running an agency can eat up your life. The problem is that then when you do to do a product you're constantly in stop-and-restart mode.

You might want to think of having another option: Like working for a client project, banking as much money as you, and then live off of that while you do your product.

<comment><AUTHOR> Thank you for your own story.

I have some ideas written down that could be executed simultaneously (with the right staff) so an agency type of business crossed my mind.

Especially one product is designed (sorry for being so vague) in a way that could attract a few companies to do a buy-out. How is it with that if a product was done by an agency rather than a startup (in traditional sense)?

<comment><USER2> I see what you're saying: So it's that you want to hire an agency to build a product!

It would hard to have an agency build a product that you would flip like a real estate deal. The problem is that an investor isn't buying the product, they buying or investing in the team that made the product.

</comment></comment></comment><comment><USER3> This is what I do. I bootstrap my business through contract work while building my own products.

I agree with michaelpinto though, clients do sometimes really get in the way as there can be lots of meetings, phone calls, e-mails and Skype conversations before work even commences.</comment>


Real-Time Web Technologies Guide - <AUTHOR> http://www.leggetter.co.uk/real-time-web-technologies-guide <comment><USER2> Describing Socket.IO as "WebSockets, Fallback-support" seems a tad brief. It does heartbeats, reconnects, multiplexing and more. It also seems to be the De facto framework for do-it-yourself real-time webapp communication, something worth mentioning.

<comment><USER3> Most of the sections are brief and the core focus is keywords, although I understand some more information would be beneficial. Since the guide is getting a bit of traffic at the moment I'll try to find some time to update it, add more technologies and provider better overviews.

</comment></comment><comment><USER4> Got a small hosted EventSource service in beta. It's also available on Github for selfhosting. Handles browser fallbacks, reconnects and authentication.

<http://www.eventsourcehq.com>

[Edit, might be better to include the link :)]

</comment><comment><USER5> It's not a hosted solution, but SignalR requires even less work to setup than some of them: <https://github.com/SignalR/SignalR>

<comment><USER3> Yep, SignalR is a self hosted solution and I've added it into that category. Microsoft backed so it'll probably become the core offering for self hosted IIS solutions. I'm interested to see some benchmarking done with it to see how it, and more importantly IIS, deals with concurrent connections.

</comment></comment><comment><USER6> What about 0MQ and MQtt? Both of those are "realtime" solutions, and can also be integrated with devices, like phones (Facebook Messenger, for one). 0MQ has flashsocket support, too.

</comment><comment><USER7> I cannot wait until malware authors start utilizing this functionality. They can create back doors using a regular browser/website's APIs so no firewall could possibly catch it! It's exciting to see browser technology catch up to the needs of criminals.

<comment><USER3> Realtime web browser technology has been around for over 10 years; HTTP Polling, HTTP Long-Polling, HTTP Streaming and now WebSockets. Connections can only be established between the client and server if various security restrictions and policies are met (See CORS and the WebSocket protocol).

<comment><USER7> This still seems like a much easier method to tunnel arbitrary data and perfect for malware tbh. Just open a socket and go. I don't see any mechanism to prevent an infected site (the majority of malware passes this way) from pushing JS, opening a socket and going to town.

</comment></comment></comment><comment><USER8> Please can you explicitly list the technology of each solution?

<comment><USER3> The list is on my site (just found the HN thread). How would you like to see the list improved? My plan is better categorisation and improved (or actually add) descriptions.

<comment><USER8> To be fair, most of the solutions do list which language they are developed in, but some don't; just be nice if they all listed it.

<comment><USER3> Will do my best to update ASAP.</comment></comment></comment></comment>


3 reasons why tech valuations aren't as outrageous as some think - <AUTHOR> http://features.blogs.fortune.cnn.com/?p=15768&preview=true

<comment><USER2> Funny how there is no disclaimer that the writer stands to benefit by saying that.

""Scott Kupor is the managing partner and chief operating officer at Andreessen Horowitz,""

CNN this is what we call sales literature or propoganda.

This isn;t some kid of balanced article that is randomly presented.

The more insane the valuation the less real work Kupor has to do and the earlier he can retire.

It's naked self interest not economics.</comment>


Show HN: Increase conversions with targeted copy - <AUTHOR> http://dyno.io?v=hn

<comment><USER2> Hello. Me and my friend build this in last couple of weeks. If any one have questions or any kind of feedback, feel free to write a comment or send us an email.

</comment><comment><USER3> Great idea! Will use this for my FB Ads!

</comment><comment><USER4> Looks nice, will give it a spin!</comment>


Ask HN: Does anyone know what is happening with AeroFS? - <AUTHOR>

Does anyone know what is happening with AeroFS? I got into the beta (or alpha?) and things seem to continue to work but the company has been extremely silent. Just wondering if this is a dead-end or not. <comment><USER2> I think they are still going strong. (I'm friends with one of the co- founders.)</comment>


Old Internet Files - <AUTHOR> https://rscott.org/OldInternetFiles/ <comment><USER3> Hah, there's my domain, from 1996:

REALMS.ORG

Admin: Diederich, Dana email@example.com (601)374-6510 ...

I actually started the process of acquiring realms.org in 1994. At the time, you sent an e-mail to 'a guy' in DC. It took some time, but I finally got it registered in 1995. It was, of course, a free service.

</comment><comment><USER4> Seeing "domain-contacts.txt" reminded how much simpler the internet used to be. Imagine not being afraid of giving out your contact info to the whole internet!

I'm not sure if the people who participated at the time would ever have imagined the need for whois anonymizers and weird tricks to keep your email address from being picked up by robots and spiders.

<comment><USER5> > Seeing "domain-contacts.txt" reminded how much simpler the internet used to > be. Imagine not being afraid of giving out your contact info to the whole > internet!

ARPA (well, the ARPANET NIC at SRI) maintained a printed book of everyone (who wanted to be listed) on the ARPANET: name, phone number, mail address, physical address. The first one was about 1/2 an inch thick, the second one (around 1978 or 79?) about twice that...and then after that they gave up. I think I still have mine someplace.

(ARPA changed their name to DARPA at some point for reasons unknown to me)

<comment><USER6> here's a copy of HOSTS.TXT from 1982 and 1983:

[https://emaillab.jp/dns/hosts/](https://emaillab.jp/dns/hosts/)

and from 1985: [https://emaillab.jp/pub/hosts/19850322/HOSTS.TXT](https://emaillab.jp/pub/hosts/19850322/HOSTS.TXT)

</comment></comment></comment><comment><USER7> Ah, I remember when you could get a full list of com domains from the Internic. Hell, I remember when SRI-NIC.ARPA was a root name server. I forget exactly when they stopped the ability to ftp that.

Interesting looking at the COM zone for August 1995 and June 1996. In August 1995, bulletproof.com, foolproof.com, and fool-proof.com were all registered - but not proof.com. Proof.com was registered February 3rd, 1996 (I applied for it the same day but didn't get it, they must have beat me by an hour or two). By June 1996, not only were all the above registered in the proof.com namespace, but also babyproof.com, birdproof.com, crashproof.com, cyberproof.com, digitalproof.com etc.

Of course if I knew back in February 1996 how valuable good .com names would be in a few years, I would have registered a bunch more.

<comment><USER8> You can still access com.zone [1], you have to fill a form and have a phone call with verisign and you get access to a good old FTP with a daily dump.

Some other TLDs gives access through Centralized Zone Data Service [2]. Some deny access, like ca.zone.

But I get what you mean, it was really publicly available.

[1] [https://www.verisign.com/en_US/channel-resources/domain- regi...](https://www.verisign.com/en_US/channel-resources/domain-registry- products/zone-file/index.xhtml)

[2] [https://czds.icann.org/en](https://czds.icann.org/en)

</comment></comment><comment><USER9> should these be shared with the internet archive?

Would be interesting to fill in the gaps for different countries - <USER2> still has plenty of people around that probably have relevant files from the late 80s / 90s (if they went searching)...

<comment><USER10> You can easily submit a link to the archive with a simple url call: [https://web.archive.org/save/https://rscott.org/OldInternetF...](https://web.archive.org/save/https://rscott.org/OldInternetFiles/)

As a bookmarklet:

javascript:void(window.open('[https://web.archive.org/save/'+location.href));](https://web.archive.org/save/'+location.href\)\);)

</comment></comment><comment><USER11> I like how basic his website is. Simple and familiar.

<comment><USER12> this trend is coming back in the design world as brutalism (in the same vein as brutalist architecture).

this site has a lot of examples: [http://brutalistwebsites.com](http://brutalistwebsites.com) (HN is actually one of the examples listed)

<comment><USER13> I don't think that's the same. The website linked by this post has barely, if any, design (in form of CSS or otherwise) at all. It's not "brutalist", it's whatever the default browser layout and settings are.

That's how the web and HTML used to work: Focus almost entirely on content, semantic markup, the browser mostly decides how to present that information to you--along with your personal preferences.

So "brutalist" design does not apply, because there is no (visual) design involved.

<comment><USER12> > It's not "brutalist", it's whatever the default browser layout and settings > are.

Exactly. Just like brutalist architecture, an interior might expose a steel frame and the pipes, brutalist websites expose the HTML and base structure. Not all brutalist sites are completely stripped down this much but they have elements and expand on it.

<comment><USER14> There are definitely similarities between brutalist architecture and brutalist web design, but it's more of a comparison rather than an over-arching design principal.

Brutalist architecture was largely driven by enabling concrete technology. Concrete was previously used as a purely structural element, but as it advanced, architects realized it could be used as an aesthetic. IMHO, I believe that when these architects built these buildings, they were aiming for something more human, like shaped clay, but their efforts simply failed, and they created something entirely different. In fact, there was never any coherent brutalist architecture "movement", most brutalist buildings were deemed so long after they were built, largely because they appeared foreboding, intense, and used large quantities of concrete. (yes, there are plenty of "brutalist" buildings that don't heavily rely on concrete, but there's no question that many of the most famous buildings do so).

So I don't think brutalist architectural design necessarily means exposing the "base structure". I would not consider the pompidou center as brutalist.

Brutalist web design is also foreboding and intense, but that is really the end of their similarities. Many brutalist web designs intentionally create a disjointed feeling, overlapping text, mismatched fonts, large variations in color and font-size, are intentionally used to create a particular feeling of haphazardness and authenticity. I don't think brutalist architectural design carried that same intent.

</comment></comment></comment></comment></comment><comment><USER15> Don't know why I didn't register until 1997, but I guess by then it'd grown way too big to keep casual copies lying around.

</comment><comment><USER16> I was surprised to find my name in the "contacts" list. I guess I'm KK35. Is that a WHOIS thing or something?

</comment><comment><USER17> It would be fun to run a mini web crawler against these old domains, and see if any are still hosting circa 1990s content.

</comment><comment><USER18> SOUP.ORG in the first domain.info file ... anyone know what that was? It now redirects to an actual soup place.

<comment><USER19> Check out the guy who still owns milk.com:

[http://milk.com/value/](http://milk.com/value/)

Jesus.com was once owned by a guy who offered "Showers with Jesus" (he had long hair). ... or was it baths with Jesus. It was one of those.

</comment></comment><comment><USER20> Ah. Hello.com

If only I had kept that.</comment>


Autoscaling for Digital Ocean? - <AUTHOR> I've started a thread at Digital Ocean. I want to implement such a system (I could not find any). Any questions, recommendations, "don't invent the wheel" comments?) Does any DO customer need such a tool?
I am not a DevOps guru, but it seems like an interesting project. AWS costs almost twice more than analogous DO servers, but AWS has way more features.
DO community thread: https://www.digitalocean.com/community/questions/autoscaling-solutions-for-digital-ocean-are-there-existing-solutions
Of course it will be open source. <comment><USER2> At clanofthecloud.com (Gaming backend as a service), we needed to implement autoscaling for DO, in node.js. We used consul.io for service discovery. CPU load was used as the central metric, and each service instance would store it in consul.io. We then triggered the creation/destruction of instances with thresholds.

In the end, we only used it for our sandbox environment, as the production env runs on bare metal (more capacity, cheaper at scale, easier on admin).

So I'd say, from our experience:

\- DO's API was quite easy to work with

\- consul.io was used as a reliable distributed source of information, for leader elections and health monitoring... Changing the autoscaler configuration in consul.io produced immediate results like starting/stopping new instances... Cool "remote control" effect ;-)

\- haproxy/nginx load balancers use consul.io templates to update their configuration

\- our autoscaler was HA, through a leader election. The instances managed themselves (no single point of failure). There were at least 2 instances running.

\- you should expect a few "surprises" if you're running consul.io on Digital Ocean, heartbeats are delayed quite often (depends on datacenters), which makes failure detection hard

\- and of course, we used DO custom images to start new instances

<comment><USER3> > you should expect a few "surprises" if you're running consul.io on Digital > Ocean, heartbeats are delayed quite often (depends on datacenters), which > makes failure detection hard

isn't that true for any CP store in any "cloud" provider?

<comment><USER2> I'd say it's more true of cloud providers who don't schedule your VM for 15+ seconds, from time to time.

As I said, we've deployed our production environment on bare metal (in reaction to this exact problem...)

</comment></comment></comment><comment><USER4> Everything you need is there. Floating IP's to do HA at the front. Use something like HA proxy and monitor whatever it is you need such as response time from the backends. Once that passes a limit call a script to poke the API and provision you a new node. You could use something like Ansible to provision the node and then place it in to load balance.

</comment><comment><USER5> One thing to consider is that DO is really, really good at vertical scaling. You can have about 1 minute or less downtime on an instance (basically boot time) to restart it as a bigger instance (RAM/CPU) as long as you don't grow the HD at the same time.

This is counter to most horizontal scaling strategies but it's really about the same. When you add more servers you're essentially just adding more CPUs and RAM via VMs. Being able to do it on the same machines minus any configuration time or provisioning time is really slick (especially for DBs).

Setting up a load balancer in front of a few instances that could take advantage of rolling vertical scaling would be a spin on autoscaling that played to one of DO's real strengths.

<comment><USER6> That looks nice until it doesn't work. We regularly see 30 minute event processing when doing flexible upgrades of Droplets (and the same when scaling back down). It's not safe, since the resize isn't guaranteed to be fast and you have no way to abort it once it's started. Sounds good in theory, not reliable enough to use in practice.

<comment><USER7> Isn't this what the flexible IP is for?

You create a new droplet concurrently the one running and then flip the IP to point to the new droplet. No downtime.

<comment><AUTHOR> You have to have the a server with the same configuration or a snapshot or provision a new one...

</comment></comment></comment></comment><comment><USER8> Sounds like a fun project (and totally doable)! :)

If I were you, I'd make heavy use of ansible, or something similar, for provisioning:

1) folks are familiar with it 2) could make it cross-platform more easily 3) well, no reinventing the wheel.

For example, Ansible has ec2 module [http://docs.ansible.com/ansible/ec2_module.html](http://docs.ansible.com/ansible/ec2_module.html) where you describe an instance and the number of them that should be running. So if you have 3 instances running and wish to have 5, it does the magic and spins up new ones. Then, you can add them to a load balancer. Maybe there's something similar for DO already?

The way I see it is that it would poll if scaling conditions are met and execute ansible playbooks if they are, and then some web interface to set the conditions / view the scaling logs / current status.

It can turn out to be a very entertaining and educational side project :)

If you decide to do it, drop me an email - something I would be happy to brainstorm and discuss about :)

EDIT: It could also be used not only for autoscaling but also for self- healing. If some instance crashed and is not responding anymore, then spin up a new one.

<comment><USER9> I've build setups like this with Ansible, but the more I use Ansible, the less likely it is that I'll consider it for future projects. I find it a lot less painful to write code to do these things directly than wrestle with Ansible. E.g. the amount of pain I went through before realising that the EC2 module at the time messed with whitespace in the user-data (great when you're transferring yaml... one more reason I detest significant whitespace; but the irony of this breaking in a tool written in Python was not lost on us), for example.

<comment><USER8> I guess it depends on the use case. If all you want to do is to make sure that, for example, all web servers have the same version of nginx, php and sync the configs of these services, I think ansible is a great tool and writing code to do that would definitely qualify as 'reinventing the wheel'.

I wouldn't disqualify the tool for a problem in one of the modules either. Bugs happen :)

</comment></comment></comment><comment><USER10> It wasn't clear to me how to autoscale with DO either. That's why I ended up using Google Cloud Engine. It's not exactly cheaper than AWS, but the pricing model for discounts is WAY simpler at least. It also doesn't have the feature set AWS does, but it does have most of what you'll need like a load balancing service.

<comment><USER9> The pricing for GCE is the most convoluted I've ever worked with... And it's still 2-3 times more expensive than alternatives like DO or dedicated hosting.

A lot of the time when people want auto-scaling, the thing that strikes me is that most of them wouldn't have _needed_ auto-scaling if they picked a cheaper provider to beging with. Often they could pick a dedicated provider, spin up 3 times as much capacity and still pay less.

</comment></comment><comment><USER11> My 2 cents: Build an independent autoscaling tool that abstracts over the differences between clouds because:

1\. Even if DigitalOcean is the best cloud provider today -- I'm not saying it is or isn't -- the probability it is the best that will ever be is approximately zero. The landscape changes. Heterogeneity among cloud providers is increasing and anyway latency will always be a function of the physical location of data centers where the data is sharded.

2\. It's the right alignment for an open source project because it is driven by the broad interests of developers rather than the narrow needs of a single company. DigitalOcean may change its pricing policy. It may cease to exist. It may make breaking API changes. All for legitimate business reasons orthogonal to those of particular developers. If their autoscaling code is platform independent, then that's not a crisis.

Good luck.

<comment><USER12> Yes, and libcloud is pretty good for abstracting providers: [http://libcloud.apache.org/](http://libcloud.apache.org/)

</comment></comment><comment><USER13> We made GitLab Runner Autoscale [https://gitlab.com/gitlab-org/gitlab-ci- multi-runner/issues/...](https://gitlab.com/gitlab-org/gitlab-ci-multi- runner/issues/318) that can automatically spin up more droplets via Docker Machine to run your CI tests. We use it ourselves for GitLab builds (up to 100 machines) and enabled it for all GitLab.com users. For more information see the announcement [https://about.gitlab.com/2016/03/29/gitlab- runner-1-1-releas...](https://about.gitlab.com/2016/03/29/gitlab- runner-1-1-released/) Feel free to ask questions.

</comment><comment><USER14> I too have wondered more or less the same, though I have yet to build any projects that need to scale so I haven't turned it into an actual concern for myself as of yet. Hoping you find a solution and share it in here so those of us like me who are curious can learn. It might end up being a mixture of solutions. I can only remember an open source interface that managed multiple cloud providers, not sure if it did any autoscaling, was posted on HN and that's all I remembered, somebody open sourced it but it's description was vague as hell.

Edit:

Commented more.

</comment><comment><USER15> We have an auto-scaling feature in private beta over at [https://www.tilaa.com](https://www.tilaa.com). Drop us a line if you want to test! Ask for me (Dennis) if you need implementation assistance.

You can either use VM snapshots or our metadata service (cloud-init compatible) to provision new instances automatically. We also have an API, but you don't need it for autoscaling.

We're a European cloud provider (based in the Netherlands) and don't have PoPs in the US though.

</comment><comment><USER16> I wrote this last week, might be relevant

[https://github.com/lxfontes/droplet-lb](https://github.com/lxfontes/droplet- lb)

</comment><comment><USER17> "AWS costs almost twice more than analogous DO servers, but AWS has way more features."

When you us AWS you are paying for more than just a cheap VPS, which essentially is all DO is. It's comparing fast food to a fancy steak house. You can get meat at both, but at one side its microwaved. Not to say DO isn't great, it gets the job done and provides a valued service, but your money gets you what your money gets you.

<comment><USER9> When you use AWS you pay extra for the fancy steak. But you pay steak prices even if what you buy from them is a cheap burger.

It's really hard to find scenarios where AWS isn't ridiculously overpriced.

Consider that Digital Ocean is _also_ an expensive alternative, but I deploy caching proxies for some clients who for various reasons insist on using AWS on DO because you can save lots by deploying droplets on DO to cache rather than pay AWS bandwidth costs for all your traffic, for example (you serve more than 1-2TB a month out of AWS you can start saving money that way).

</comment></comment><comment><USER18> The cloudhero CLI can be a very good option for this. [https://cloudhero.io/cli/](https://cloudhero.io/cli/) (pip install hero)

It would allow you to add nodes with the packages that you need extremely easy. In one or two hours a cron could be made that adds and removes nodes as needed.

It is not a magic bullet solution but it fixes 80% of the problem with 20% of the effort.

<comment><USER19> I've used their API to deploy a scalable docker cluster.

Basically, my docker cluster starts from 3 nodes and as the cluster gets filled with containers I automatically add new nodes on Digital Ocean to increase the cluster capacity.

Our team worked a day to make it happen but we got excellent support from the team.

</comment></comment><comment><USER20> Varnish and the d-o API (?)

There are more options, but I think I could go that one.

You can scale compute power... the main issue is... how do you scale bandwitch at digital ocean?

<comment><AUTHOR> I don't know. But I'll figure it out (I hope).

<comment><USER21> Keep us up to date!

</comment></comment></comment><comment><USER22> I will look into Kubernetes.

I believe you will need just a very thin layer on top of it to add droplets and you can call it done.

</comment><comment><USER7> Cloud66 and Tumtum (now Docker cloud) works with DO. Not open source and not free but a solution nonetheless.

</comment><comment><USER23> Need as well. Go for it! Make it open source and paid for turn key! I'd pay for that

</comment><comment><USER24> I would pay for this - email in my profile, let me know when you launch.

</comment><comment><USER25> Need it too!!!

</comment><comment><USER26> I do not believe that a price difference of 100% would be enough to make such a project interesting. Why not build something like this for dedicated boxes from hetzner, ovh ...

I don't have a clue how much harder this would be, but a price difference of about 300% looks much more interesting.

<comment><USER26> Could those downvoters explain their downvotes please? He asked for an opinion.

Seriously, building a AWS clone on DO infrastructure is just not possible. Even if it would be it would actually be more expensive in the end as AWS for small to medium projects. If you using AWS you do not only pay for one virtual server, you are paying for a infrastructure. You would have to replicate parts of this infrastructure, which would require a few separate servers and you couldn't share those costs with other users.

Using DO instead of dedicated servers for this would be like building a Uber competitor using the Uber API.

Edited: I overlooked the fact that at least neither Hetzner nor OVH do provide a useful (for this project) way to order a dedicated server via the API. They do offer an Order API, but the spin up time is too long.</comment></comment>


The Loss of First Check Investors - <AUTHOR> https://techcrunch.com/2017/12/04/the-loss-of-first-check-investors/?ncid=txtlnkusaolp00000602 <comment><USER2> Ha, article commenter suggests that angels have shifted to investing in crypto instead of startups. I'm curious if there's truth to that...</comment>


Fact-checking chatbot "Meiyu" shuts down dubious family texts - <AUTHOR> https://www.wsj.com/articles/know-it-all-robot-shuts-down-dubious-family-texts-11551370040 <comment><USER2> "Clyde Lin was scolded by his uncle after the 39-year-old pilot brought Meiyu into the family chat group late last year. "Who is this?" Mr. Lin said his uncle demanded. The family group contained too much personal information to give access to a bot, Mr. Lin said his uncle said."

His uncle is 100% correct. Adding a bot to a conversation thread is very likely literally connecting a hose up to your family discussions and sending all of them to a random startup. You wouldn't add in a random human fact- checker, and even with the illusion that the only entity reading your texts is a robot, there's no guarantee that will always be the case.

"Ms. Hsu, the developer, said Meiyu isn't designed to collect personal data on users." 1) objectives change, 2) ownership changes, 3) it very likely collects personal data whether it's meaning to or not. Brilliant. I literally could not think of a better target for a state actor than something like this, which could give pretty deep insight into what people are thinking about you when they talk privately.

<comment><USER3> > isn't designed to collect personal data on users

Is that the same as "doesn't"? And does that apply to all the other components that get access to the chat logs it sends back home?

<comment><USER4> I can't help thinking of the DoD's definition of 'collection', where gathered data has to be processed and analyzed to count as 'collected'. Even if the bot doesn't do anything more sinister than phone home with error logs to help fix bugs, that should still be viewed as compromising the identities and message contents of everyone participating in the chat.

<comment><USER5> > where gathered data has to be processed and analyzed to count as 'collected'

I thought even then they didn't count it as "collected" until a _human_ sees the result.

So they could ~~collect~~ record all your conversations, ~~analyze it with a computer~~ have a computer analyze it, and then then only have a human look at it if they think they will be able to justify having collected it.

<comment><USER4> > _I thought even then they didn 't count it as "collected" until a human sees > the result._

Yeah, I was never quite clear on whether it meant "scraped for data" or "scraped for data and then that data was used". I tried to look it up before I posted, but since "we don't collect..." seems to have been a lie under any of those definitions, I'm not convinced it actually had a clear 'technical' meaning.

Of course, if reading algorithmic output without specific records doesn't count as seeing the data, there's always the possibility that info is making it all the way to the 'trigger a drone strike' step without ever being "collected"...

</comment></comment></comment></comment></comment><comment><USER2> > In a nation with long-held Chinese traditions of etiquette, however, Meiyu > is proving to be socially inept. Online chat groups often comprise several > dozen extended family members. Openly disputing facts with elder relatives > is considered bad behavior.

To heck with "Chinese traditions", "openly disputing facts with elder relatives" does not go down great in the West either, unless you've got a particularly feisty uncle who likes political debates.

Literally my first thought on seeing the headline was "wow, sounds like a great way to get disowned" and that was me projecting my American context onto it.

Have these people never heard of the phrase "pick your battles"? A bot has no tact, and will pick fights with fairly trivial nonsense and deeply problematic lies with the same assiduousness. Lots of things are not, strictly speaking, true. Not all false beliefs are damaging in the same way. Being technically correct is the worst kind of correct.

<comment><USER6> >Openly disputing facts with elder relatives is considered bad behavior.

I was envisioning the opposite - like posting anything critical of the government's handling of Tiananmen Square would have your little uncle spybot posting "corrections" to the chat explaining the government sanctioned view.

</comment></comment><comment><USER7> Current top comment on the WSJ:

===

The examples given are "contrarian bot" rather than "fact checking bot."

e.g., "The doctor quoted in this post does not have proper qualifications." Fine, but that doesn't mean he's wrong.

e.g., "The internet has a lot of information on drinking water. Doctors say not all of it is credible." No kidding. But this doesn't mean "stay hydrated" was bad advice.

I'm having difficulty finding the value of something like this is. I suppose if you're too timid to push back against other people it might be nice to have a bot to do it. Like the example where it's culturally inappropriate to push back on your elders, so you introduce a piece of software to contradict everything they say.

Fine, maybe that feels good in a strange way, but it seems dysfunctional, passive aggressive, and unproductive. The bot isn't giving advice, it's just saying "that's YOUR opinion" to everyone else's advice

===

<comment><USER2> I've known people with the same conversational style as this bot, and they are absolute hell to talk to unless you decide to gamify it and play with finding the least objectionable thing they could find fault with.

<comment><USER4> I'll bet treating this bot as a gatekeeper would actually be pretty interesting - try the same claim or story repeatedly and see what you can do to sneak it past.

\- Can you find the same stuff on a more-reputable site? (Perhaps the bot doesn't know about those "user blog" sections sometimes hosted under news-site domains?)

\- Can you find a different attribution for the same quote that doesn't throw a 'credentials' flag? (Perhaps _less_ information is better, because writing "a doctor said" will impede checking up on the speaker's credentials?)

\- How about just contorting the phrasing of sentences until the bot can no longer extract anything useful about their meaning? What does it do with double negatives and nested clauses?

I don't want this bot in my group chats, but I could imagine using it as an adversary to refine a trolling bot. If you wanted to train up a realistic version of Shiri's Scissor, this might be an effective way to craft posts that are especially hard to refute.

</comment></comment></comment><comment><USER8> Outline link: [https://outline.com/https://www.wsj.com/articles/know-it- all...](https://outline.com/https://www.wsj.com/articles/know-it-all-robot- shuts-down-dubious-family-texts-11551370040)

</comment><comment><USER9> Hi I'm author -- comments on HackerNews are more trenchant especially for tech aspect.

1\. both auntie "Meiyu" and "CoFacts" are open source projects, we share the source code on GitHub.

2\. can't disagree the search results might be manipulated, but for now, there's just limited volunteers to "clarify" most of rumors on CoFacts.

3\. Logs: that's a certain point. Since I deployed this project on Heroku (which remains limited logs) I still have no time to format the logs. this comment about log storage makes sense to me, I won't rebut this point of view is nothing to me, it matters,will update it for sure.

I think wsj actually skip most of background of why we do this. Since not only Taiwan's election has been effected by deliberatedly manipulated rumors, endless medical misinformation. furthermore, most of medias own strong biases in Taiwan, everyday these's (even quite rough) fake news, bombing everyone's brain day after day until you give up to clarify anything.

And these medias own resources, centralized to publish fake news, to fight with them in fact is quite hopeless, unless we try to decentralized our information, allow everyone got the chance to verify these and speak it loud.

So Meiyu, imo at least it clarifies rumors / misinformation for you, and repeat it tirelessly. It's annoyed for everyone I can totally understand (That's another reason I name it as Auntie "Meiyu" by very common senior generation name, I'd like This tiny service becomes a bit heartwarming and friendly), but we must go for it. nor only someone's life / health would be misled by misinformation, but even our island would be ruined by elaborate politic rumors as well.

</comment><comment><USER10> To the person using this to avoid confrontation: adding a bot that responds 'false' is at least as confrontational as you replying that same way.

<comment><USER11> It's a joke character trait from The Office, in bot form.

Or [https://i.kym- cdn.com/photos/images/newsfeed/001/191/035/135...](https://i.kym- cdn.com/photos/images/newsfeed/001/191/035/135.png) in bot form.

I get the noble cause to combat false information right at the roots, especially when people are too polite to do it themselves, but making a bot to be rude and obnoxious for you is still rude and obnoxious.

</comment></comment><comment><USER12> Whats even more brilliant is that someone could potentially influence massive amounts of people with this. If you hear something on the TV you're be pretty skeptical, but when it comes from someone you love then it gets interesting...

very interesting..

They could make people believe that WW2 never happened or some other garbage. It all depends on who'll be verifying whats true and whats not.

</comment><comment><USER13> I think that people suggesting their own variants on cold-treatments is a way for them to show they care.

"Drink a lot of water!" "Put on socks before you go to bed!" "Netty pot!" "Drink lots of tea!" All of these are kind of common knowledge. I think the act of encouraging people to rest up and take care of themselves is just a generic way to show you hope they get better. And maybe, if they really are so sick that they aren't thinking clearly, it'll then serve as a reminder to get some tea.

</comment><comment><USER14> Cool! I hope it is going to became available in more languages! It would be nice, however, if you could customize its manner and its level of skepticism (i.e. I'd prefer it not to claim anything false unless it's scientifically proven false and it can link to the proof, e.g. in my opinion "the doctor's qualification is questionable" is not a sufficient reason to dismiss an idea).

</comment><comment><USER15> Who needs thoughtcrime police when you can turn family against each other!</comment>


Google to move into building designed by Frank Gehry in Venice Beach, CA - <AUTHOR> http://latimesblogs.latimes.com/technology/2011/01/google-moving-into-binoculars-building-designed-by-frank-gehry-venice.html

<comment><USER2> I lived a few blocks from there for a couple of years. it's an awesome area to have an office.

Trivia: just a few hundred meters down the street is the clown building where the bus blows up at the beginning of the film Speed.

</comment><comment><USER3> This is right next to our house! If anyone wants to break bread in the neighborhood with a couple of bootstrappers, email is in my profile.

<comment><USER4> I live on Main Street just a few blocks north. It's great news for the neighborhood and should hopefully result in some great new restaurants and shops opening up in the area. I might ping you at some point.

</comment></comment><comment><USER5> That building looks less like EMP or Guggenheim Bilbao style Gehry and more like LA public library style Gehry.

</comment><comment><USER6> What teams are located in Venice Beach?</comment>


Wikileaks latest insurance files don't match hashes - <AUTHOR> https://np.reddit.com/r/crypto/comments/5cz1fz/wikileaks_latest_insurance_files_dont_match_hashes/ <comment><USER3> I think until there is satisfactory evidence that Assange is safe and still behind the wikileaks web, social media properties, etc. we should assume that they have been co-opted.

Publishing the hashes is meant to serve as a canary for this exact class of concern.

Furthermore we have not seen any public appearances from Assange since his Internet access was cut, nor has anything been signed with his pgp key.

edit: upon further consideration there might be alternative explanations, but we would still need more evidence furnished to believe wikileaks sources credibly. No explanation or acknowledgement has been provided for the checksum mismatches.

<comment><USER4> There was an attempt on assange in August. Some guy scales the wall, trys to get in the embassy. Luckily guards noticed him and warded the assailant off, didn't catch him. Assanges lawyers drop dead. John Kerry visits with authorities blocks from the embassy. Same day, bunch of security contractor vehicles outside, along with police. Internet in panic. Periscope live streams show up but after the cars are gone. Next morning, no word from assange, no journalists, just periscope streamers. RT.com shows up and covers the story, also reveals that the UK froze all of their bank and credit assets that morning. Wikileaks tweets possible warning shot at Kerry, tweets pre- commitment for several dumps, including one with Kerrys name in the title. Dyn DNS goes down, taking down access to twitter, word is assange has no internet still. No periscope streamers in 5 mile viscinity starting that day, lasting 3 days. I tried with proxies and tweeting at past streamers, no luck getting anyone to stop by. When DNS comes back up, there are over 20,000 tweets about Assange, the embassy, proof of life, etc, 4 different tweet templates, tweeted by thousands of accounts, two of them were videos of assange in the window from 2012. Was impossible to find anything relevant on twitter, like I had previously been doing, because there were too many bullshit tweets. Since then, 4/8ch investigation threads have been deleted repeatedly. 100 pages of investigation purged, and the archive.is backups of all of the wikileaks/4ch stuff were also deleted.(they endlessly load now). I only started looking into this, because I noticed the weirdest change in tone from the wikileaks twitter. That afternoon, the wikileaks account started tweeting in response, very informally. Something they had not done at all since I had been following them. They also took a distinct anti-hillary position, and even said yes we have a position. Absolutely no proof of life. Also that same day, wikileaks tweeted that 14 other people who work with assange/wikileaks, had lost internet connection, and their phones went out as well. Since then nothing at all meaningful has been dumped. I also think it is safe to assume he is no longer in control.

</comment></comment><comment><USER5> I thought this was an interesting comment in a related r/bestof thread: [https://www.reddit.com/r/bestof/comments/5d37lj/wikileaks_la...](https://www.reddit.com/r/bestof/comments/5d37lj/wikileaks_latest_insurance_files_dont_match_hashes/da1hihn/)

<comment><USER3> This 8ch.net thread also has some good technical analysis: [http://8ch.net/tech/res/679042.html](http://8ch.net/tech/res/679042.html)

might have nsfw ads watch out

<comment><USER6> more details surrounding Assange and the struggle the past month - <USER2> lawyer suicide, fonky WL twitter, and police forces confiscating phones.. [http://survivalacres.com/blog/julian-assange-is-probably- dea...](http://survivalacres.com/blog/julian-assange-is-probably-dead- captured-or-escaped/)

</comment></comment></comment><comment><USER7> Besides "Assange was assassinated by Hillary Clinton and Obama", are there any other actual theories?

<comment><USER8> Rescued from his captivity by a grateful Putin? If we want to speculate wildly.

Which would mean that the KGB had conducted a fairly elaborate operation on British soil, something that would be inconvenient to air. So, Assange as a public figure would still be history, if that's the case.

</comment></comment><comment><USER9> I weep for the US if they stooped so low as to take him out. Democracy is dead

</comment><comment><USER10> Does Wikileaks periodically obtain new insurance files?

If not, how can they guarantee that the information/evidence contained therein is current enough to generate high impact?

Times change, and some of us once thought a businessman with a questionable past and unsavory connections would never be elected president. Which is to say: what the public gets outraged about today may not be much of anything tomorrow.

<comment><USER11> Good point, reminds me of this segment in an Adam Curtis documenatary titled "Oh Dear": [https://www.youtube.com/watch?v=wcy8uLjRHPM](https://www.youtube.com/watch?v=wcy8uLjRHPM)

Basically the idea behind it is that this temporary empathy, followed by apathy and inaction by us after events is a political construct, to prevent the emergence of mass movements.</comment></comment>


Ask HN: JavaScript blob compression - <AUTHOR> I need to compress a blob of binary data in JS before it gets sent to a compute engine. Iv'e checked out GZIP.js and JZIP.js but I don't think they do what I want to do. Any ideas? <comment><USER2> [http://nodeca.github.io/pako/](http://nodeca.github.io/pako/) [http://pieroxy.net/blog/pages/lz- string/index.html](http://pieroxy.net/blog/pages/lz-string/index.html)</comment>


Indian rupee to get unique symbol - <AUTHOR> http://beta.thehindu.com/news/article114001.ece <comment><USER2> I think they should just go with the "chakra" (wheel) that they have on the Flag since it would be easy to write/draw as well.

</comment><comment><USER3> <http://bit.ly/7mQgyt> ?

</comment><comment><USER4> It would be a good idea to be a variant of the 5thpillar logo. <http://india.5thpillar.org/~pillar/india/ZRN>

</comment><comment><USER5> Will it be an R with two lines drawn through it?

All good currency symbols are letters with two lines drawn through it.

<comment><USER6> Nope, that's for the Ruble.

</comment></comment><comment><USER7> What's the point? IMHO, INR is a perfectly unique and well understood way of calling the Rupee.

</comment><comment><USER8> Yeah, good luck getting that into fonts.

<comment><USER9> € got there.

</comment></comment><comment><USER9> I remember a while back hearing that the Russians were going to introduce a rouble symbol, in the belief that this would make the rouble stronger and more stable.</comment>


'Whoever leads in AI will rule the world': Putin to Russian children - <AUTHOR> https://www.rt.com/news/401731-ai-rule-world-putin/ <comment><USER2> Having spent a long time doing data analysis, now called data mining, I recognise that there will be lots of benefit to those doing it but not for those whose information is being used.

AI won't fly. But we will build tools that will fool people into thinking it exists. The problem that exists is that the correlations being made are as shaky as the lack of foundations in the veracity of the data being mined.

Dystopian future is already here and has been for decades. We are only just seeing it now. Recklessness and a lack of understanding the past will ensure that the majority of people will simply fall into place. Fear is the marketing game now, by corporations and governments and others.

Ruling the world is a catch-cry for those who, in the main, only care for themselves and their own.

</comment><comment><USER3> How prescient.

Why do you think the Bigs are doing what they are doing. Its cyberpunk dystopia for everyone! YAY!

The cyber-wars have been going on for quite a while - with "conventional military theater" happening 'top-side'... Duqu, Stuxnet, etc..

\--

Now we are managing the mind-set of the people (russian collusion, political circus via nascient (in the long term) technical services - Twitter, FB, Et Al.)

Look at Reddit - Winning Hearts and Minds has never been more controllable.

AI is the platform on which the efficacy, expediency and expanse of the future will be manipulated.

I dont see anyone building an AI to "make the world a better place" just yet....

/ __ _summons blood-boy_ __

<comment><AUTHOR> What surprised me most about this article is that as far as I'm aware, Russia is so far behind the forefront on machine learning research that hearing Putin speak on this subject is like hearing the president of Portugal say it.

I'd bet a rent check on China having strong AI before Russia any day.</comment></comment>


Nude.js | Nudity detection with JavaScript and HTMLCanvas - <AUTHOR> http://www.patrick-wied.at/static/nudejs/ <comment><USER2> Now if only they would make one that detected violent and hateful content.

You know, things people should _actually_ be concerned about children seeing.

<comment><AUTHOR> you're right but how would you define violent and hateful content? it's not easy. ok, somebody could build a neural network and train it with typical violent content, but violence has too many types

<comment><USER3> > you're right but how would you define violent and hateful content?

For one subset of violence, gore pictures, you could identify body parts (already solved) then look for what appears to be wounds using color changes and edges.

That's of course one small part of the concept of violence - you're totally correct in stating this is difficult.

Also hateful is more objective/political so I don't think we have much chance there.

</comment></comment></comment><comment><USER4> Even a really close up picture of a face will be seen as nudity. Trying to detect a body (or parts of a body) and determine how much skin is visible would probably be a better approach.

Also quite relevant is this site: [http://www.yangsky.com/researches/physicallinguistics/PLUnde...](http://www.yangsky.com/researches/physicallinguistics/PLUnderstand/humanbody/humanbody.htm) Besides a "breast detector/nipple detector" he also created a couple of weird detectors like a "cowgirl sex position detector" among others. (The link is sfw, the individual detectors are not)

</comment><comment><USER5> Slightly off topic, but does anyone know of a server-side implementation of the same concept? I've been looking for a good one.

<comment><USER6> I wonder how much work it would take to run _this_ server side on node.js. It has a canvas implementation.

<comment><AUTHOR> if anyone goes for a node.js implementation I'd offer my support on it

</comment></comment></comment><comment><AUTHOR> The algorithm is mostly based on this paper: <http://www.math.admu.edu.ph/~raf/pcsc05/proceedings/AI4.pdf> but there are some steps open. I've implemented this algorithm because it's not as hardware intensive as the usual nude detection algorithms (such as searching for specific body parts)

</comment><comment><USER7> Interesting concept.Scanning through the code, reading just the comments, it seems to base the nude-not-nude decision by the amount of skin shown.

Hmm.. I guess it depends on what your definition of nudity is.

<comment><USER8> Yeah, the code looks like it determines based on what percentage of the image is "skin". The demo page gives a rather close-up shot of the upper-left of a woman's shoulders/chest. What if someone zooms out a little bit? In my tests it is not doing very well if the subject is not taking up the whole image.

Perhaps a better approach would be attempting to characterize certain features, like nipples/areola or buttocks. That definitely sounds like it would require more intensive processing, though, and be highly dependent on the angle of the image.

I don't really know much about image processing and computational analysis, I just like to pretend I know things.

<comment><USER7> Also, you'll need to figure out if the person in the photo is a girl or guy. :)

</comment></comment></comment><comment><USER9> > _The detection algorithm runs at the client_

Thank you. I really want Firefox to be even slower running unnecessary JavaScript.

<comment><USER2> I'm not sure why this is downvoted. It runs _really_ slow on firefox...

<comment><USER9> Sadly, everything runs real slow on Firefox. I'd be using Chrome if it had Ad Block Plus.

<comment><USER10> It does. Search the chrome extension library.

</comment></comment></comment></comment><comment><USER11> Wonder what came first, the clever wordplay or the actual feature. Really cool stuff though.

</comment><comment><USER12> I couldn't help but click on the message :D

pretty useful concept, i must say...

<comment><USER3> That makes sense: the girl isn't nude. She has a black area over her nipple. If that's detected as nude, a small bathing costume would also be 'nude'.

</comment></comment><comment><USER13> If you opt out of the nude.js, the pat-down bot gets to fondle your dangling pointers.</comment>


Amazon.com website goes offline - <AUTHOR> http://www.bbc.co.uk/news/technology-23762526

<comment><USER2> Is now when we put on the tinfoil hats and start saying things like:

        They were adding prisms to their fiber line so they can spy on us

      Amazon joins Prism

      This week in the news: NSA backdoors NYTimes, Google and Amazon</comment>