Firefox 56 supports headless mode on Windows - <AUTHOR> https://bugzilla.mozilla.org/show_bug.cgi?id=1355150 <comment><USER2> I just finished writing an article that explains how to connect WebDriver to Firefox running in the new headless mode on Windows if anybody's interested: [https://intoli.com/blog/running-selenium-with-headless- firef...](https://intoli.com/blog/running-selenium-with-headless-firefox/)

It should be pretty similar on Linux, and probably macOS when it comes around.

<comment><USER3> Great article! I'm the product manager for the headless feature, and I'm unsure why `binary.add_command_line_options('-headless')` doesn't work for you, as the flag does work when invoking Firefox directly:

> "c:\Program Files\Nightly\firefox.exe" -headless

(It also works when Firefox is invoked from a Node.js script in a test suite for a Node.js program that drives Firefox.)

Perhaps this is a Selenium issue?

<comment><USER2> Thanks! That was guess as well, since running the command you posted from cmd does work. I dug around selenium's source code a bit, but decided to take the pragmatic path and use the MOZ_HEADLESS environment variable instead.

</comment></comment></comment><comment><USER4> Is there a linux headless mode already? Selenium chrome driver headless is pretty much useless in linux because important methods like `send_keys` need X anyway for keyboard mappings or something like that.

<comment><USER5> Genuine noob question: could you not use Xvfb?

<comment><USER6> you can, and it worked, prior to availability of headless options(Phantom sucks). However xvfb is yet another dependency that could cause breakage.

<comment><USER7> It also takes a bit longer to start up IIRC, but xvfb + chrome driver on Jenkins definitely works for running tests.

</comment></comment></comment></comment><comment><USER8> It's not very clear how to actually use this in a test environment like Selenium etc. At least with headless Chrome there are libraries now to drive it via the remote debug protocol like [https://github.com/LucianoGanga/simple- headless-chrome](https://github.com/LucianoGanga/simple-headless-chrome)

This feels a little nicer than Selenium as it's one less layer of abstraction.

EDIT: guess from other comments WebDriver is the right method to access.

<comment><USER9> FWIW, from the Chome side, we think there's more power via the protocol rather than WebDriver.

<comment><USER10> Well, yes, a low level protocol is going to have at least the same features as a higher level protocol implemented in terms of it. However I think you should mention the significant disadvantages of using a nonstandard API:

* Doesn't generalise to driving other browsers. Using a standardised API gives you the possibility to run your automation against any top tier browser. If you are testing a website this ought to be a top consideration.

* Uncertain compatibilty story. I assume that the devtools protocol can change at the whim of the Chrome team. Using something standardised means that your tests and client are more likely to continue working.

* More limited selection of clients. WebDriver in particular has a large number of production-grade clients that are actively maintained.

I'm not claiming that WebDriver is perfect; certainly if I designed it from scratch it would look very different. And yes, there is a period of churn as it moves toward being a standard. But I think the advantages of cross-browser support are a compelling reason for it to be the default tool for remote automation tasks that are within the scope of its featureset. By all means, if you have something that cannot be done with a standardized technology look at the proprietary solutions. But I don't think it should be your first pot of call.

<comment><USER11> All of these look like advantages if you're building a monopoly and have a contempt for anything that slows that down.

</comment></comment></comment></comment><comment><USER12> Do you need to use selenium to control Firefox in headless mode or does it have something lower level like Chrome's devtools protocol?

<comment><USER13> 1\. You can use the WebDriver protocol[0] without selenium

2\. Firefox's WebDriver endpoint geckodriver[1] is a layer above Firefox/Gecko's native Marionette protocol[2]

So you doubly don't need to use selenium, you can write your own WebDriver client (which should be cross-browser assuming the browsers either support WebDriver natively or have a WD layer of some sort installed) or you can use raw Marionette (either a hand-rolled client or an existing client)

[0] [https://w3c.github.io/webdriver/webdriver- spec.html#protocol](https://w3c.github.io/webdriver/webdriver- spec.html#protocol)

[1] [https://github.com/mozilla/geckodriver](https://github.com/mozilla/geckodriver)

[2] [https://developer.mozilla.org/en- US/docs/Mozilla/QA/Marionet...](https://developer.mozilla.org/en- US/docs/Mozilla/QA/Marionette)

</comment></comment><comment><USER14> I was wondering if I could use this (using a plugin) or Chrome to generate PDF files on the web server. Most of the PDF generation software out there are quite expensive.

<comment><USER15> Latex is free.

<comment><USER16> Really not the same thing (e.g. pandoc for html -> pdf via LaTeX) as having a webkit based renderer. They do not look the same at all; sometimes it is good to have a LaTeX output but most of the time you are going to want a more accurate representation of your HTML.

<comment><USER17> The original question didn't state that he was starting from HTML. If you want to generate an invoice or such from plain data, then LaTeX seems like a good fit. Rendering HTML is a whole different bag.

</comment></comment></comment></comment><comment><USER18> What are the biggest challenges when implementing headless mode? I'm asking cause this feature took some time to be delivered both in Firefox and Chrome and I always assumed that it should be 'pretty' straightforward to implement. Is it that both engines were coupled with GUI libs?

<comment><USER19> There are a bunch of things which are tied to native GUI libs in ways that make headless a little annoying to implement. Some examples, from memory and looking at the patches/dependencies in the Firefox bugs on this:

1) Theming of form controls to make them look like native widgets.

2) Clipboard.

3) Printing.

4) Fonts and font rendering.

5) General "now it's time to repaint" machinery.

This is in no way an exhaustive list. In practice what you have to do for headless is create the relevant GUI bits anyway, but not actually show them on screen, then deal with whatever quirks your GUI library has when its bits are not shown.

</comment></comment><comment><USER20> How is it controlled when in headless mode? Still via Webdriver or does Firefox support Chrome Debugger Protocol?

<comment><USER13> > Still via Webdriver

WebDriver or Marionette.

</comment></comment><comment><USER21> So I can navigate by cardinal directions now (like scrolling south a bit)?

Joke aside: can somone explain "headless" to me here?

<comment><USER17> When you run the browser, but it doesn't actually display anything on screen.

Uses include rendering a screenshot (e.g. a preview thumbnail) of some website on a server, or running automated UI tests that click around a web app and fill out forms to verify its functionality.

<comment><USER22> Thank you for taking the time to explain. I had the same question.

</comment></comment></comment><comment><USER23> Anyone know if this supports audio playback?

<comment><USER24> Firefox audio developer here. I haven't heard from the folks doing this, and I would have been the person doing the code reviews so I suppose it's left untouched.

Edit: looking at the code, it will work just fine, and that means I can even use it myself to run Firefox's unit and integration tests, I usually use xvfb on Linux.

</comment></comment><comment><USER25> Firefox 55 introduced major changes in the process model. My scrolling on the Mac is slow and not smooth. Others have reported the same. Maybe focusing on stabilizing this big change over one or two releases would be a good thing?

Of course headless is also needed as the PhantomJS solution is not maintained anymore since April. See discussion here: [https://news.ycombinator.com/item?id=14105489](https://news.ycombinator.com/item?id=14105489)

</comment><comment><USER26> It is good to see some competition, I would hate to see automated tests being done purely in Chrome simply because it is the simplest browser to setup in headless mode.

</comment><comment><USER27> But can you really run windows headless? I thought even the Server Core and IoT versions wanted some sort of GPU even just to display a blue/blank screen.

<comment><USER28> IoT Core has a headless mode. I don't think it can run Firefox though... UWP apps only.

</comment></comment><comment><USER29> Does that mean we'll soon have an alternative to ElectronJS / NWJS based on Firefox ? (Positron :p ?)

<comment><USER30> It already exists: [https://github.com/mozilla/positron](https://github.com/mozilla/positron)

<comment><USER31> Checked. Discontinued. It used to be prism or something but that was discontinued years ago.

The sometimes really make it hard for us fanboys (prism, Brendan and uncertainty about the future of extensions) :-|

</comment></comment></comment><comment><USER32> Are there some examples available for this? I would love to replace some of my PhantomJS stuff

</comment><comment><USER33> Great! This will help us run selenium tests much faster.

</comment><comment><USER34> Please don't forget about Linux

</comment><comment><USER35> "headless"

Poke me when there are no X11/Qt/GTK/whatever dependencies at all - that is headless.

[https://packages.debian.org/stretch/firefox- esr](https://packages.debian.org/stretch/firefox-esr)

<comment><USER36> This got down voted a lot but GTK is really a pretty painful dependency in many situations (especially gtk3)

Not that Firefox itself is particularly lightweight.

<comment><USER37> Why?</comment></comment></comment>


On the Foundations of Geometry by Henri Poincaré (1898) - <AUTHOR> https://archive.org/stream/jstor-27899007/27899007_djvu.txt

<comment><USER2> For those that care about philosophy of science and mathematics, Poincare` wrote a few excellent short books/long essays. In particular, he has some very interesting books about the psychology of mathematical researchers and the role of intuition.

[http://www-history.mcs.st-and.ac.uk/Extras/Poincare_Intuitio...](http://www- history.mcs.st-and.ac.uk/Extras/Poincare_Intuition.html)

</comment><comment><USER3> > Our sensations cannot give us the notion of space. That notion is built up > by the mind from elements which pre-exist in it, and external experience is > simply the occasion for its exercising this power, or at most a means of > determining the best mode of exercising it.

Can somebody explain what is meant here?

<comment><USER4> You need two eyes for depth perception. Neither individually can tell you location, your mind figures that out by combining inputs. If you move your arms and feel something near you, you still don't know where it is until your mind relates it to other things your mind knows are near (or other parts of your body). The sensation itself only provides information on existence, the mind pieces together location. On the other side of experience, external actions are entirely an effect of internal processes. Essentially, the mind is a black box puppet master and the body is the puppet.

(I haven't read the passage, but that is my interpretation of your quote. I always enjoy Poincaire's musings on the mind, they resonate strongly with my own.)

<comment><USER5> _You need two eyes for depth perception._

This is false, you can get plenty of depth information from a picture or even better a movie which is not stereoscopic.

<comment><USER6> Is that because the movie or picture are similar enough to the experiences we previously had with our eyes?

<comment><USER5> People born with one good eye still generally develop depth perception. There is a lot of research into this topic, [https://en.wikipedia.org/wiki/Depth_perception#Monocular_cue...](https://en.wikipedia.org/wiki/Depth_perception#Monocular_cues) has a good list of things that work just fine with one eye. But, it's not obvious how much of these are learned vs instinctive.

</comment></comment></comment></comment></comment><comment><USER7> Why are you linking to an OCR of a scan? Link to the main page, where multiple formats are on offer:

[https://archive.org/details/jstor-27899007](https://archive.org/details/jstor-27899007)

The main page even has a rather nice viewer to view the document in your browser.

</comment><comment><USER8> Oftentimes stuff on the front page is posted as part of a recognizable cluster of activity, but if that's the case with this submission I can't figure it out. Can anyone help?

EDIT: Meaning, there's a theme; or one post comments on another post, or provides background with which to interpret it.</comment>


Ask HN: Where can I learn about fourier transformations? - <AUTHOR> I've been looking for a easy to understand explanation but couldnt find any. Dont care which one. <comment><USER2> I highly recommend these videos:

[https://xiph.org/video/](https://xiph.org/video/)

They don't directly explain the Fourier transform but watching them will give you important background that will help in understanding the Fourier transform.

</comment><comment><USER3> A decent primer can be found at [http://www.thefouriertransform.com/](http://www.thefouriertransform.com/)

</comment><comment><USER4> The nature of it is not meant to be easy, sorry

</comment><comment><USER5> What is your learning level and dominant modality? What is your background?

<comment><AUTHOR> I'm a compsci undergrad currently, wouldnt say I'm bad at math wouldnt say I'm particularly good(thus the question), I can teach myself some math but it takes a lot of time and a lot of stress (which I'm trying to improve).

<comment><USER6> You can learn it from your university's EE department.

<comment><AUTHOR> I was looking for an easy explanation so I can be prepared to learn and study it.</comment></comment></comment></comment>


Ask HN: Help us with our app plan - <AUTHOR>

Hi HN,
I developed a social app with a friend of mine on both Android and iPhone called Taza, tazaapp.com, it's a bridge between Facebook and whatsapp, or you can think of it like Google+ for mobile phones that works only with your phone contacts.
We started like everybody else, with our family members and friends, but we did a trick this time we didn't tell them that this is our app, we just told them about it and how it's better than the messenger apps as the "groups" creation is easier and the threads are way more organized.
The plan worked and they loved it, we told them that it is ours after a few weeks :). So that gave us a good indication that the app is fun to use, and most importantly, it's solving a problem that all the messenger apps are having, which is the pain of having hundreds of messages  if not thousands) in a group chat and you have to catch up with everybody whenever you turn on your phone.
Now we started our marketing campaign and we reached ~800 users and the reviews are good so far, but it seems that the adoption rate is slow, and as you all know with this kind of applications, word of mouth is really key. Now my questions are:
1- We are focusing on one market and it looks like our message is working, we are spending ~$1 per day to get the word out, is that a good thing?
2- What's the best way to quickly educate the user about how to use the app?
3- Is it possible to ask for a seed fund at this stage? <comment><USER2> I ran into a similar issue with my app Storyweave (www.getstoryweave.com). There seems to be a wall after your friends and family get tapped out.

The advice I've received is that at this point, you need to build some social features into your app that allow users to share the app with other people automatically. This involves:

\- Sharing content to other social media platforms (e.g. post this photo on FB or Twitter) \- Inviting friends in the app (e.g. find friends from your Facebook or Twitter followers list, and/or invite your friends using your contacts \- Etc. Etc.

Happy to chat with you about this more.

<comment><AUTHOR> That would be great, I added you on linkedin just now so we can chat.

</comment></comment><comment><USER3> What do the current users say they like about the app? What do they not like?

Communication stuff is an strongly viral scene, why isn't it spreading that way?

How are users using your app in a way you didn't expect? (This can indicate your core idea is good with just a little tweak to it... read about paypal's pivot in jessica livingston's book)

<comment><USER4> I'll look into your questions. We've been through them. However, it's useful to mention that the app is solving a simple problem that might need a lot pivoting.

<comment><USER4> Just adding a correction to the previous comment I made, the app is solving a problem we are facing in our personal interactions and might _NOT_ need pivoting.

</comment></comment></comment><comment><USER5> You want a faster growth rate.

Read some Andrew Chen, also read the story of how Facebook grew initially, and watch Peter Thiel talk about monopolizing a small market.

It's a social app, so it is about people having an audience curated for the content they share, with that audience being curated by ( presumably ) their "family and friends" from real life.

So the growth rate is going to be slower than say, an app that is targeted at students at a single university ( do you know why ? ).

Your site says the app is secure, this is a big claim to make these days, and perhaps unnecessary. If you are going after people who want "secure" apps, perhaps that is a useful target to focus on ? However, if you are not really 100% committed to making it a reliably secure way to share things, why even make that claim? It may complicate your message. Privately may be what you are aiming for, and then you can explain it does privately differently to other things like Line, FB or WhatsApp.

Speaking of explaining how things are different, telling your people how your app is different to the apps it is most similar to ( such as perhaps ) LINE, WhatsApp, FB, is something which may influence your peoples' choice to use your app over something else. What would make someone switch from FB to Taza? From WhatsApp to Taza? From LINE to Taza?

"Social network" apps are the original kingmaker app, and one of the things that means is there are a few monopoly players to distinguish yourself from. What makes your product different? Why will people in your market use it over the other players?

If you are going for seed funding I guess the answer to the above two questions is important, and the answer to a third is also : Why did you make this? Did this arise out of some personal thing you were trying to solve, something deeply motivating for you, and you found a solution didn't exist, and you built one? It works to consider what is the basis of your motivation to make this product. You can "ask for" funding at any stage, the "possibility" of asking is always your choice, so nothing is stopping you from asking. Whether you get funding depends on what you say and show the people you ask for that funding.

The best way to educate the people about how to use your app is for those people to educate each other. Just like you did with your initial launch group, you want other people to recommend that app to their friends, and show them how to use it and so on. Ideally, the app should make it simple and easy to use, and people shouldn't be "astonished" by its behaviour.

An answer to your first question really works to come from you guys. If it "looks like" your "message is working", what does that mean? What are you measuring, and what does that suggest to you that contributes to you saying it is working? It is from this data collection and line of reasoning you will be able to conclude whether the results you are getting work for you or not.

Finally, what is the hook, the thing that makes people really hungry to use it initially? I guess the hook for facebook was "the person in my class is on there, and I can see more about them". I guess the hook for tinder was "I can possibly find people to date", I guess the hook for LINE and WhatsApp was "I can text people for FREE". What is the hook for Taza? is a question it may work to consider.

<comment><USER4> Thanks! Regarding the aforementioned two questions about "What makes someone switch from FB to Taza" and "What make your product different"

We've went ahead and created simple tutorials and we are experimenting with different approaches to get them to the users while keeping those short and the user interested. Apparently, from our own observations, there's an "Aha" moment the user would reach after a very little education. After that point, the user becomes more of an advocate (or she's not convinced for totally different reasons)

As you've seen on our site, we tried to keep the messaging to the minimum as well, because too much information confuses the users. There's a trade off between explaining everything and giving them enough "hook" to look into the app and figure things for themselves.

We still trying to strike a balance between these things.</comment></comment>


Tennessee legislature boldly sets the science clocks back 150 years - Suraj-Sun http://blogs.discovermagazine.com/badastronomy/2012/03/22/tennessee-legislature-boldly-sets-the-science-clocks-back-150-years/

<comment><AUTHOR> I don't see anything inherently objectionable with the language of the bill.

"...helping students understand, analyze, critique, and review in an objective manner the scientific strengths and scientific weaknesses of existing scientific theories...."

Being able to openly and freely criticize scientific theories is at the core of how science works these days.

As for teachers using this law to teacher creationism, hopefully anybody from an objective perspective, with the aid of the scientific method and recent scientific findings, can come to the conclusion that the current definition of creationism is not possible.

<comment><USER2> It's important that you indoctrinate people as young as possible, so that these objective perspectives never get a chance to take root. Churches only have them for a day, but schools have them for five.</comment></comment>


Show HN: A quiet social network (in the making) - <AUTHOR> https://www.quidsentio.com? <comment><USER2> I'm curious if you think social networking might affect the way people journal. I'd be a little concerned that people might try to post things they think others will find interesting.

Interesting concept anyway, I'll be following along!

<comment><AUTHOR> Thanks. I do expect people to behave differently when posting something that friends will see -- actually I think I hope so. But also, I also hope that the kind of public post on Quid Sentio will be very different than the kind of post on Facebook, Twitter, Instagram etc

My challenge is to create a UI good enough to make it clear for the user when they are posting only for their own journal and when they are posting for friends.</comment></comment>


How to reach students w/ offline marketing - <AUTHOR> http://bjoernw.com/2010/03/offline-marketing-that-reaches-college-students/

<comment><USER2> Amazes me so much how the more popular college clubs can be based on how frequently they serve free food.

"All you have to do is sponsor some food, or send them some free products and they will love you."

<comment><AUTHOR> Even actually good events need to offer something to get students to come out - at least in colder climates.</comment></comment>


StatusPage (YC S13) Lets Anyone Communicate With Customers About Outages - <AUTHOR> http://techcrunch.com/2013/07/16/statuspage-lets-anyone-communicate-with-customers-about-errors-and-outages/ <comment><USER3> Boom! Me and a number of my colleagues here at New Relic love this - <USER2> status page via StatusPage.io at [http://status.newrelic.com/](http://status.newrelic.com/) is super-awesome.

<comment><USER4> The SSL errors could freak a few people out who don't know what's going on:

      status.newrelic.com uses an invalid security certificate.

      The certificate is only valid for the following names:
        *.statuspage.io , statuspage.io

<comment><AUTHOR> Agreed, appreciate the heads up - looking into now

</comment></comment></comment><comment><USER5> Well done guys! Having played with it early on, I can see that you've done a lot to make it even easier to use. I love the custom metrics too, we'll be looking at how we can incorporate some of our info into our page soon.

<comment><USER6> Thanks!

</comment></comment><comment><USER7> Looks totally great! We're using pingdom and were considering using their status page, but it is not customizable enough. For example, we want to show availability, but not response-time. This seems much more flexible. Will definitely look into this.

A couple of questions/comments:

* On the demo/video on the home page when you add an incident, the popup modal says "Report Report New Incident" (report appears twice)

* I'm not sure I understand the pricing, even after reading the FAQ. It says "What is a subscriber? A subscriber is somebody who gets email, SMS, or webhook notifications about your page. They can sign up to be auto-opted-in to all notifications, or on an incident-by-incident basis. Note that notifications are optional.". Can I have a status page, but limit how many subscribe to it? or not allow any subscribers at all? Does RSS count towards the subscriber limit??

Otherwise, great job guys. Will try to give this a spin soon.

</comment><comment><USER8> I have to say, the introductory tour of the StatusPage app is probably one of the best I have ever seen. I plan on lifting a bunch of ideas from it for our own new intro to Segment.io — really nice work to whoever was involved with it. Makes getting setup ridiculously trivial.

<comment><USER6> Thanks! Hope it works well!

</comment></comment><comment><USER9> Great work guys. I'm sure you've heard a hundred times that this idea is too small or too something, but it is executed super well. Hopefully we can get our own moved over from Google Sites (yikes).

<comment><AUTHOR> Much appreciated, let us know if we can help out with the migration.

</comment></comment><comment><USER10> Can StatusPage.io, when it detects an outage, _automatically_ have traffic routed to a static "emergency mode" page such as was discussed here ([https://news.ycombinator.com/item?id=6033147](https://news.ycombinator.com/item?id=6033147)) a few days ago?

<comment><USER11> Are you asking about us having an outage on our site, or you having an outage on your site? If the latter, you could definitely set up a redirect like the mentioned article to forward all of your traffic to your status page. We'll be doing a similar integration with Heroku for their maintenance and error pages.

<comment><USER10> Right, I'm asking about us, as a prospective customer, having an outage on our site.

I only skimmed (and bookmarked / todo'ed) the "emergency mode" article. I haven't dug into it yet. Maybe it's not much work, but in the spirit of offloading the status page work to a SaaS provider such as StatusPage.io, I wondered if StatusPage.io couldn't also allow me to cross "set up an emergency mode site" off my list by solving the whole site-down communication problem at once.

</comment></comment></comment><comment><USER12> Their website loads so slow, I'd almost consider it to be down... Besides that, looks pretty great. I very much like the notification options on the status page!

</comment><comment><USER13> This company will be bought by New Relic in 3... 2... 1...

</comment><comment><USER14> Looks amazing guys, public metrics looks like a really killer feature. Hope to be able to afford to spend $80/month on this in the future!

<comment><AUTHOR> Thanks! Let us know if you sign up in the future and we can be helpful at all. Will have some more features coming down the pipe built around Public Metrics as well.

</comment></comment><comment><USER15> Woah this is actually a pretty brilliant idea. Could make for a decent SaaS with a nice income as well. Keep it lean guys!

<comment><AUTHOR> Thanks seivan - if you sign up for an account and have any feedback for us, feel free to send it my way

</comment></comment><comment><USER16> A couple weekends ago, I drove with my two young children to a restaurant 20 minutes from our house only to learn that it, a mom-n-pop operation, was closed for a couple of weeks. I suppose I could have called ahead to confirm my presumption that they were open, but I didn't learn about this "planned outage" until I saw the 8.5 x 11 sign on the door. Apparently, they closed for a family vacation.

It would be cool to have some sort of proactive notification when the many assumptions I make about the world around me become incorrect. Take a person's work commute as an example. Presumptions include road availability, public transit timeliness, lack of major events causing traffic delays, sufficient fuel in one's vehicle, the line at Starbucks being reasonable, no horrible weather forecast which would require bringing an umbrella along, etc. Imagine an app which invoked a bunch of figurative assert statements on the presumptions we make daily in life.

I'm posting this here simply because it entered my stream of consciousness when I saw the headline. At first, I thought that "real world" status is un- related to the problem StatusPage solves. However, sending notifications to customers upon an outage is a step closer to my handwaving above. Take as an example the availability of employee VPN access. How many times have you gone home early presuming that you would be able to work later in the evening and later realized that you can't kick off that build, etc. While learning that the VPN server is down doesn't help you do your work, you probably are more likely to find that your co-worker is still at the office at 7:00 PM than three hours later. Maybe you would have been lucky enough to learn about the outage before you left the office.

One problem I see is that being alerted about every presumption violation would be annoying. I'd like to infer intent somehow. "I'm going to work today" implies a lot about what's important for me to know. Being informed about "outages" certainly would be an incentive to put a zillion things on my calendar. What if you were planning to see a band at a bar next Thursday, and adding the event to your calendar somehow allowed proactive notification in case of cancellation?

We take it as a given that life will surprise us with disappointments, but this condition might only be the result of historically high costs of sending and receiving notifications. Does anyone remember phone trees? Watching the TV to learn of school closings? Making detailed logistical plans about how to meet-up with friends (along with various contingencies) in the days before mobile phones? Technology replaced these annoyances, and there's no reason to believe all progress has been made. I want the absence of notifications to imply that life will abide by my presumptions.</comment>


Initial Git commit. – c01efc6 – rust-lang/rust - <AUTHOR> https://github.com/rust-lang/rust/commit/c01efc669f09508b55eced32d3c88702578a7c3e <comment><AUTHOR> With the Alpha coming out today I thought it would be fun to take a look at the first ever commit to Rust, made 4 years 6 months 24 days ago.</comment>


Can I get some YC.News love for My Facebook App? - <AUTHOR> http://apps.facebook.com/iwantone/ http://apps.facebook.com/iwantone/ <comment><AUTHOR> This app allows you and your friends to vote on Amazon stuff.

</comment><comment><USER2> hi</comment>


Node.js is forked to Ayo.js (pronounced like "IO") - <AUTHOR> https://github.com/ayojs/ayo <comment><AUTHOR> Reasons for fork:

"Repeated ToC violations by an authority figure went unaddressed."

[https://twitter.com/alicegoldfuss/status/900109726872068096](https://twitter.com/alicegoldfuss/status/900109726872068096)

Not sure what ToC is, but the alleged violations appear to be of Code of Conduct.

Alleged violations are described here: [https://twitter.com/ohhoe/status/899748838302302212](https://twitter.com/ohhoe/status/899748838302302212)

Most links are private, but here are the public ones:

[https://twitter.com/rvagg/status/887652116524707841](https://twitter.com/rvagg/status/887652116524707841)

[https://twitter.com/rvagg/status/887790865766268928](https://twitter.com/rvagg/status/887790865766268928)

[https://twitter.com/captainsafia/status/887782785221615618](https://twitter.com/captainsafia/status/887782785221615618)

[https://twitter.com/nodebotanist/status/887724138516951049](https://twitter.com/nodebotanist/status/887724138516951049)

<comment><USER3> I don't see anything wrong with the tweets. I don't think Rod is a bad person, he's been involved with Node.js for years.

Try working on an open source project for 5 years and then we can talk about altruism.

<comment><USER4> I don't think there's anything wrong with the tweets too. And it seems the Node Technical Steering Committee had similar thoughts, since they rejected the proposal of expelling Rod.

<comment><USER5> The 60%/40% split on both proposed sanctions indicates that the TSC had no simple unified view of the type you infer.

<comment><USER3> Some people think and others just react, it's good to know that the majority of people on the Node.js technical committee are thinkers.

<comment><USER6> Wow, that's an incredibly rude and narrow-minded comment.

<comment><USER4> Why "rude"?

<comment><USER7> It's rude to suggest that the Yes-voters are non-thinkers.

</comment></comment></comment></comment></comment></comment></comment></comment><comment><USER8> The way this fork has been presented clearly indicates this fork has no future.

If you indeed have problems with the way nodejs is run, the first thing you do with a fork is present it upfront in your fork, with some idea on how you're going to go forward. All you see here is one issue potentially discussing some bad policies or people. wishy washy.

And discussion in another thread is almost satirical -- discussing "lifetime" of a benevolent dictator "for life". [1]

There's no clear leadership or goals for this fork.

[1] [https://github.com/ayojs/ayo/issues/2](https://github.com/ayojs/ayo/issues/2)

</comment><comment><USER9> They're flipping out because of a tweet, and all it had was a link to an article against codes of conduct.

"Additionally he discussed private information from the moderation repo in the public thread, which is explicitly against he moderation policy".

I don't like such secrecy. What's going on in there? Wasn't community so important, why can't we know?

So what if that guy doesn't like CoCs? It is _fine_ for people to have other opinions. This is another case of people over reacting over small stuff like it happened with Brendan Eich or Douglas Crockford.

Oh gee, some people need to chill out.

<comment><USER10> While I definitely see where you are coming from, simplifying people's emotional reactions to things to "some people need to chill out" belittles their feelings in a way that isn't helpful. We can support folks who are being attacked unfairly (as @rvagg appears to be from a cursory review of the "evidence" against him) without belittling those who feel maligned.

<comment><USER11> Until you realize the same people that are crying out now have been doing this before. Kas Perch, one of the agitators,

[https://twitter.com/nodebotanist/status/887724138516951049](https://twitter.com/nodebotanist/status/887724138516951049)

used the same tactic against Crockford last year (Nodevember conf), also without any concrete evidence other than "he made me feel bad." If you go through regular tweets of the other heckers like Kat,

[https://twitter.com/maybekatz/status/900414216888139776](https://twitter.com/maybekatz/status/900414216888139776)

they're breaking their own CoC daily, but that's apparently fine because hating on white/men/straight/christian is considered PC.

Why do you give these sick people lee way is beyond me. They are bullies and they should be recognized as such.

<comment><USER12> > They are bullies and they should be recognized as such.

100% agree. I've had to previously block both of these users you mentioned for harassment over Twitter.

It got to the point where one of them started taking out of context screenshots of my Twitter stream and attempting to rally other SJW twitter users to send harassing messages to me.

I did my own research weeks ago and found that Rod didn't do anything wrong. If anyone finds evidence to the contrary, please let me know.

</comment></comment></comment></comment><comment><USER13> Line that stood out to me: "Rod retweeted in support of an inflammatory anti- Code-of-Conduct article"

If you're not 100% onboard with the politics, you're a horrible person.

<comment><USER14> While I agree with this specific point, it seems that was the "least worse" of that person's actions.

<comment><USER15> Could you please provide examples?

<comment><USER14> [https://news.ycombinator.com/item?id=15079139](https://news.ycombinator.com/item?id=15079139)

<comment><USER15> So this person's crime was being against CoCs? I seem to remember the Ruby community being similarly against this...

</comment></comment></comment></comment></comment><comment><USER16> The issues page says it all: [https://github.com/ayojs/ayo/issues](https://github.com/ayojs/ayo/issues) . This is not a software project. There will be no actual code written.

<comment><USER17> Indeed. I had a look at all the brouhaha on the node.js github yesterday (I love me some open-source soap-opera drama, especially when it involves non or barely-coding SJW's - it's my guilty pleasure) and had a quick look at the commit histories of the most vocal "This guy has to go!!!1!" proponents - <USER2> code-to-noise ratio is unsurprisingly low.

</comment></comment><comment><USER18> I'm sick of all this _drama_ that people create around this bullshit around _wrongthink_ and the like.

Didn't they ever learn as kids sticks and stones may break my bones but names will never hurt me?

Surely, in OSS tons of people are going to have different opinions about many things, as long as they are respectful who cares what they think?

Seriously some people in this world need to eat a bag of concrete and harden the fuck up.

<comment><USER17> ooh, are you saying that random people don't have a right to _feel safe_ when voluntarily interacting with others online? Get ready for the angry hordes....

<comment><USER18> People shouldn't be harassed online, but they should be open to having their ideas, thoughts and beliefs challenged in a respectful way.

<comment><USER17> _People shouldn 't be harassed online, but they should be open to having their ideas, thoughts and beliefs challenged in a respectful way._

My point was based on sarcasm :) Reading all the noise on GH yesterday, those most vocal in having this guy kicked out are also screaming loudest about the "need to feel safe" \- for me, this usually induces a gag reflex:

\- "I am going to find where you live and do something nasty to you" <\-- threat to safety \- "I am not sure about the value of a CoC" <\-- not a threat to safety

In my personal view, all these fucking "name and shame" SJW's that sit on their high fucking horses _judging_ people are a shameless pack of vicious fucking bullies, shrouded in virtue-signalling.

If somebody goes around in projects making threats or being grossly offensive in a general sense of the word, by all means address the situation. However, this situation - like countless others - is simply a concerted bullying effort.

I am not involved in node.js in any way, and stay very, very, fucking far away from any kind of open source participation after going through something similar with Sun and OpenOffice.org many years ago but this kind of bullshit makes me rage.

<comment><USER18> Sorry, I knew you were being sarcastic. I responded because I wanted to pre- empt potential down voters.

I agree with what you said above. Most people who bleat about safe spaces are the kind you need a safe space to get away from them.

</comment></comment></comment></comment></comment><comment><USER19> This is probably the best possible course of action at this stage, even if I'm extremely skeptical about the longevity of the fork. The ideal scenario is to compartmentalize people who can't get along, like you would in a workplace - having two separate forks that absorb each other's changes is not too far off from that.

There's another reason too; there's a theory going around that there's a sizable pool of potential competent contributors who are currently staying away from the Node.js project (and other projects) because they feel excluded (and this is commonly used as an argument as to why policies need to be changed). This fork is going to show whether that group of people really exists; if it does, then the fork will thrive, but if it does not, then it will die.

I don't think there's much to do about this now other than wait and see it play out. The results of this fork will become obvious soon enough, and it seems that this at least will get everybody off each other's backs for a while.

EDIT: Also, let's dial down the vitriol in this thread a little. There's no point in getting outraged over something that'll resolve itself.

</comment><comment><USER20> Open a perfectly fine PR that fixes/accomplishes something but prefix PR comment with: "Hey guys,"

Sit back and watch as you're bombarded with threats and comments about being pro-rape, a straight white male and the like

<comment><USER21> I've faced this exact scenario a few months back when I asked some questions on Preact's Gitter. Pathetic. English is not even my first language, I swear I didn't know I'd be offending someone by saying "hey guys" :/

<comment><USER15> It seems that as much as Silicon Valley preaches about being inclusive, they have a strict american-centric view of absolutely everything.

I'm also not a native english speaker and it feels like I'm walking on eggshells constantly.

<comment><USER22> Especially since in other countries, terms like guys aren't so heavily gender- specific.

</comment></comment></comment></comment><comment><USER23> Make sure you use proper [1] CoC next time you start new project. Proper as in not easy to abuse for political reason or just because some SJW decided you are wrong.

[1] [https://github.com/fantasylandinst/fcop](https://github.com/fantasylandinst/fcop)

</comment><comment><USER24> The more I code, the more I appreciate projects and languages that are not based on a democratic committee and have a consistent unique single minded vision.

I'd rather stick to a language/framework that aligns with my own preferences, than stick to one that tries to please to a large group of people.

I feel this is the major problem with Javascript, Node, etc.

<comment><USER4> People using node.js and not wanting this kind of bullshit should go on github and open an issue to _remove_ the CoC. I would back it up for sure.

<comment><USER24> The code of conduct is unrelated to what I'm talking about.

I'm criticising design by committee.

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

</comment></comment></comment><comment><USER25> For those asking what the reason of the fork is it looks like it has something to do with a code of conduct violation by one of the node developers that the steering committee voted to ignore. I have no idea what the story behind it as it doesn't seem like anyone has actually published the full story.

Regardless of the reason, this seems like a premature announcement of the project. There isn't a roadmap, list of distinguishing features, or the guiding principles. More information is definitly needed here.

<comment><USER26> Yes. Anyone can "fork" any code for any time and reason. Anyone can _announce_ that they're doing it.

What makes this newsworthy? Is it a _credible_ fork? What's the reason for the fork? Who is contributing?

> Current Project Team Members

> To be written

Hmmm.

</comment></comment><comment><USER27> Newest development: [https://github.com/nodejs/board/issues/67](https://github.com/nodejs/board/issues/67)

"We don't like the outcome, so we have to change the rules." Please note that @ag_dubs that started the shit stirring after Rod's post sits on that board and was part of that decision. Still we don't know what Rod did to her in the first place.

</comment><comment><USER28> The previous fork was successful because a lot of the developers went with the fork and it was fulfilling an unserviced need in the community for a node built on newer versions of v8. Does anyone know if this fork has much of a chance of survival?

<comment><USER29> didn't follow the node development closely, what was this fork?

<comment><USER30> It was called io.js.

<comment><USER31> And this one is pronounced the same way?

That won't be confusing in conversation.

</comment></comment></comment></comment><comment><USER32> First: I like the name!

That said, it is a bit unfortunate to fork or at least to try to fork a project like Node.js over these reasons. Although it is quite likely that the fork was mainly created to pressure the Node-devs to remove rvagg from the project after all.

What puzzles me: Even if we agree that rvagg violated the Code of Conduct, I am not sure that this should be enough to remove him from the TSC (Technical Steering Committee). Here are the alleged violations, so that you can decide for yourself: [https://twitter.com/ohhoe/status/899748838302302212](https://twitter.com/ohhoe/status/899748838302302212).

<comment><USER33> "Rod should have predicted the kind of response this tweet received"

I was on the fence until I hit that part. The tacit admission that they're holding him responsible for what other people are saying on Twitter is all I need to know. They wanna feel like righteous warriors defeating evil.

<comment><USER34> Heads I win, tails you lose situation. If you say something uncivil, you are guilty. If you are perfectly reasonable and somebody trolls and curses you out on twitter, you are still guilty, because you "should have predicted" they'd do that if you disagree with them.

</comment></comment></comment><comment><USER35> Since the comments say this is probably due to political reasons, I feel like this fork would mean a lot more if it included contributions that were rejected by nodejs as well as a communitity of contributors to keep this fork active.

</comment><comment><USER36> If we applied this CoC to Linux, Linus is probably long gone by now.

<comment><USER37> There was a CoC on Drupal and surprisingly it wasn't until a few months ago it became a serious issue. Sometimes people can put the smarm aside and be legitimately helpful.

</comment></comment><comment><USER38> I've been clicking around on twitter and github for five minutes and there seems to be zero specifics about what actually happened.

What's with the secrecy? Not saying this is a non-issue, but the best way to present your issue as a non-issue is to be this vague about what you're complaining about.

</comment><comment><USER39> Would you rather use good code by a shitty person or shitty code by a good person?

<comment><USER40> Good code. Shitty people are replaceable. Good code are priceless.

</comment></comment><comment><USER41> Are they seriously forking the project because they don't like one person involved in it?

<comment><USER42> And that the rest of the community is supporting his alleged abusiveness (e.g. by voting to keep him on board). It's not just because they dislike him, it's because the community in general seems fine with his kind of behavior.

Not that I am supporting it, just explaining why in their view this is bigger than just him.

</comment></comment><comment><USER43> Blog post: [https://medium.com/@mylesborins/effective-immediately-i- am-s...](https://medium.com/@mylesborins/effective-immediately-i-am-stepping- down-from-the-nodejs-tsc-3df37c6ccbae)

</comment><comment><USER37> Every time I see something about NodeJS, an image of a flaming dumpster overflowing with left-padded trash comes to mind.

I've never seen a technology deep sixed not by its technology, but by its politics and ideology.

</comment><comment><USER44> Node.js can, of course, merge in any changes of merit that this fork produces. Especially since the fork isn't for technical reasons they are unlikely to diverge in fundamental ways... Atleast until the fork is abandoned entirely for providing no value over node.js -- especially if they don't keep up with the upstream progress.

<comment><USER45> And, of course, so can the fork with all changes of merit that the mainline project produces. In the end, the decision between the two will be based on momentum and politics (as in: will the fork produce enough shiny Medium posts and HN buzz to get people to switch to them, or pressure Node into backpedalling and getting rid of Vagg?), unless the fork actually can't find enough competent technical people to just keep track of and merge the mainline changes.

<comment><USER44> I was assuming the fork wouldn't consume code from the project that they disliked for political reasons, since it would indicate an admission that the main-project was being successful and executing with their current policies and staff.

</comment></comment></comment><comment><USER36> > Humans are more important than APIs and Benchmarks.

[https://github.com/ayojs/ayo/blob/zkat/values/VALUES.md](https://github.com/ayojs/ayo/blob/zkat/values/VALUES.md)

</comment><comment><USER46> What, again?

<comment><USER47> If it ends up having a similar impact like IO.js, I would say, why not. Fork it every other month, I wouldn't care.

If this is less "technical issues need to be resolved and we need to be agile" and more "I hate the other person so I won't work with him/her" though, then it would just cause problems all around the community.

</comment></comment><comment><USER48> rvagg responds:

[https://github.com/nodejs/CTC/issues/165#issuecomment-324798...](https://github.com/nodejs/CTC/issues/165#issuecomment-324798494)

</comment><comment><USER49> This literally already happened once over a minor argument and a week later they got back together. Why...?

</comment><comment><USER50> Also related to this: [https://medium.com/@mylesborins/effective-immediately- i-am-s...](https://medium.com/@mylesborins/effective-immediately-i-am- stepping-down-from-the-nodejs-tsc-3df37c6ccbae)

</comment><comment><USER51> Specific issues causing Ayo's creation: [https://thenewstack.io/node-js- forked-complaints-repeated-ha...](https://thenewstack.io/node-js-forked- complaints-repeated-harassment/)

</comment><comment><USER52> I have yet to find any good reason for this fork, but I wish the forkers all the best. If they can actually make something better, I'm sure we'll switch. Until then I see no reason to not support Node.

</comment><comment><USER53> What's the reason they forked/main difference from Node.js?

<comment><USER54> From an issue:

> I'd be open to re-merging if and when the problems plaguing Node.js are > resolved. Problematic people removed; use of "policy" as an excuse ended; > power structures reorganized to emphasize community over tech. So far though > it seems like there's little desire to fix these problems from those with > the power to do so.

<comment><USER17> _emphasize community over tech_

...speechless.

 _client:_ Why is there only clear text and flashing ads on my screen?

 _developer:_ Oh, yes - we implemented the new ayo libraries!

 _client:_ This looks like shit. Give me my site back!

 _developer:_ but, you don't _understand_! The new libraries are great, they emphasize community over tech!

 _client:_ [......]

 _client:_ [calls her P.A.] Richard, go find me a new tech team.

</comment></comment></comment><comment><USER55> We are fixing too many problems by forking, please stop!

</comment><comment><USER56> What is the reason for the fork ?

<comment><USER57> SJW rage, it seems.

</comment></comment><comment><USER58> Here we go again... ?

Then again, this doesn't seem anywhere near as crazy as the IO.js days.

</comment><comment><USER59> Why not Aye.js? IYKWIM

</comment><comment><USER60> Aye! Oh!

<comment><USER61> Ever since SCSI I can't say that anyone will have success trying to encourage people to pronounce their project names in a certain way.

Good luck to them though and anything that improves the node space is welcome in my book. Forks included.

<comment><USER61> Relevant wikipedia article:

> Almost a full day was devoted to agreeing to name the standard "Small > Computer System Interface", which Boucher intended to be pronounced "sexy", > but ENDL's Dal Allan pronounced the new acronym as "scuzzy" and that stuck.

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

<comment><USER37> Scuzzy has more character to it.

I'll never pronounce GIF as JIF though.

</comment></comment></comment></comment><comment><USER57> Sounds like BS.

Possibly relevant:

Eric S. Raymond: Why Hackers Must Eject the SJWs (2015)

[http://esr.ibiblio.org/?p=6918](http://esr.ibiblio.org/?p=6918)

<comment><USER62> Good christ, I can't believe I'm responding to an ESR blog post, but this "djangoconcardiff" account joined Github [1] the same day every comment in that thread was posted… which was, by the way, _months_ after the DjangoCon in Cardiff wrapped up. How do people not see that whole incident as the bad-faith troll that it clearly is?

[1]: [https://archive.is/UDFZt#selection-193.0-193.16](https://archive.is/UDFZt#selection-193.0-193.16)

<comment><USER57> It clearly is bad-faith. Is it just a random troll? Not likely, since there are several other similar incidents.

</comment></comment></comment><comment><USER63> Oh good, I'm glad these SJWs won't be involved in Node.js anymore. Thanks!

<comment><USER64> Amen

</comment></comment><comment><USER65> Brace yourself. SJWs are coming after software projects this year.

<comment> amiga-workbench I'm pleasantly surprised PHP has remained largely SJW free, probably because it's not trendy.

I imagine microcontroller software development stays free of them too, largely because of the barrier to entry.

<comment><USER4> That's why I think entering development should be harder. This "everyone can code" trend only resulted in worse job candidates and a lot of people doing politics instead of coding.

<comment><USER65> I think that is wrong way to think about it. If, say, we do enforce some "barrier to entry", it would probably be some education and certification to be eligible for software development. The SJWs will make sure that they will be prioritized to be eligible for those certificates, even if it means to change the eligibility criteria to do so. And then they can basically use it to kick everyone out of software development, except for SJWs.

I think we should keep it as it is and wait it out. They will find something else in a couple of years and move on.

<comment><USER4> I enforce a "barrier to entry" myself when I interview someone though. If they're less than highly competent, I don't allow them to join the company I'm interviewing for. Others have this mentality of "letting everyone in, we'll train them later", especially if doing so serves other (non-technical) political or social agendas.

</comment></comment></comment></comment></comment><comment><USER66> He seems like a candidate for being a douchey provocateur. Tech-libertarian too?

It's hard enough having the JS community taken seriously with the zeitgeist framework changing too quickly.</comment>


Which GPU(s) to Get for Deep Learning - <AUTHOR> http://timdettmers.com/2014/08/14/which-gpu-for-deep-learning/ <comment><AUTHOR> This has been discussed before, but I think the recent updates are of interest to enough people that submitting again is justified.

<comment><USER2> Yeah, the June 25th update is pretty extensive. Thanks for submitting this.</comment></comment>


Chinese police swoop on $7.6 Billion 'record-breaking online Ponzi scheme' - <AUTHOR> http://www.scmp.com/news/china/economy/article/1908003/chinese-police-swoop-hk59-billion-record-breaking-online-ponzi <comment><USER2> Not surprising, if they even managed to run fake banks(0)..

0\. [http://www.bbc.com/news/blogs-news-from- elsewhere-30932424](http://www.bbc.com/news/blogs-news-from- elsewhere-30932424)

</comment><comment><USER3> Silly question here, why were the account books buried instead of burned? Do the books have any use in future if they never got caught?

<comment><USER4> Why even have records in paper?

<comment><USER5> You can't run a ponzi scheme without records the accounting skills needed to run one successfully are probably greater than the ones needed to manage an actual investment fund.

<comment><USER4> Actually, you don't need anything more than basic bookkeeping skills. What surprises me is that it is an online ponzi scheme and yet they maintain records on paper. This does not add up.

<comment><USER5> Again you don't run a ponzi scheme on that scale using "basic bookkeeping skills", you need to be a heck of an accountant to make sure that you have enough cash flow to pay out returns and make enough legitimate investments and constantly keep the money moving to make it appear that it's still there.

If you just base you ponzi scheme on I take 50% of every new payment and give out the previous 50% to my previous investments it won't really drag on for longer than couple of months, not to mention that you actually need to generate allot of financial traffic to both draw people in initially and keep the authorities of your back.

The reason ponzi schemes tend to snowball like this is because they run exceptionally well many of them have actually made some decent return on their investments (not anywhere near the actual percentage needed to balance out the "management costs" ofc) a good ponzi scheme is almost indistinguishable from a legitimate investment fund, they'll make tons of trades, constantly move money around and keep large cash flows on hand to make it look like all the money is still there, make regular payouts, and "silence" any panicked investor who wants to cash out early.

<comment><USER6> Those are usually not as hard as they sound.

<comment><USER5> I don't know defrauding 1000's of people for years while keeping everyone in the dark including most if not all of your employees and making yourself look like a functioning legitimate business as far as casual financial inspections go sounds pretty hard to me, at least as hard as running an actual investment fund.

Regulators probe the market constantly if your trades don't add up at all you'll get caught in a minute lasting years and managing to steal 100's of millions or even billions of dollars doesn't seem something anyone could just pull off, I think you underestimate the intelligence and skills required to run these sort of scams.

</comment></comment></comment></comment></comment></comment></comment><comment><USER7> Chinese people have amassed a lot of wealth but their investment options are very limited. Hence the Chinese stock market bubble, property-building bubble and Ponzi schemes.

<comment><USER8> I think the problem is, there simply is no venue for them to invest in. Real estate and the stock market, as you mentioned. The only other places would be commodities, which are tanking.....due to demand falling off in China.

What do you do when there is nowhere to invest your excess funds? (not rhetorical) You either invest in riskier asset classes, or you don't need to generate as much income (work less perhaps?)

</comment></comment><comment><USER9> How can one China Ponzi sheme have $7.5 billion, but the the best ponzi sheme to date, bitcoin, market cap only stands at like $5 billiion?

<comment><USER10> Bernie Madoff stole $18 billion in his ponzi scheme.

</comment></comment><comment><USER11> reminds me of wcm777

</comment><comment><USER12> That's a horrible site on mobile... it tries to do some weird app loading thing, wants to consume additional local storage while a percentage counter slowly climbs one percent per second with no content visible.

Better link: [http://www.dailymail.co.uk/wires/ap/article-3425972/China- co...](http://www.dailymail.co.uk/wires/ap/article-3425972/China-company- accused-fleecing-investors-7-6-billion.html)

<comment><USER13> First time I've ever seen Daily Mail cited as 'better link'

<comment><USER12> Yeah, I know... but in this case it's almost infinitely better. There were others but Daily Mail had a few more images included in the article, and since the content is from Associated Press anyways I didn't think people would mind. However, my comment stands at -3 so lesson learned: everyone hates the Daily Mail site. :)

</comment></comment></comment><comment><USER14> The China's own ponzi economy will be mirroring the collapse of Ezubo .

"So in two short decades, China has erected a monumental Ponzi economy that is economically rotten to the core. It has 1.5 billion tons of steel capacity, but "sell-through" demand of less than half that amount.... The same is true for its cement industry, ship-building, solar and aluminum industries—to say nothing of 70 million empty luxury apartments and vast stretches of over-built highways, fast rail, airports, shopping mails and new cities.

In short, the flip-side of the China's giant credit bubble is the most massive malinvesment of real economic resources—-labor, raw materials and capital goods—ever known"

China's Monumental Ponzi: Here's How It Unravels [http://davidstockmanscontracorner.com/chinas-monumental- ponz...](http://davidstockmanscontracorner.com/chinas-monumental-ponzi-heres- how-it-unravels/)

<comment><USER15> That's not a Ponzi scheme; that really doesn't have _anything_ to do with Ponzi schemes, I wonder why you even bring it up?

<comment><USER16> To shit on China? It's _de rigueur_ these days...</comment></comment></comment>


Two Cybercrime Rings and Eight Defendants Indicted for Digital Advertising Fraud - <AUTHOR> https://www.justice.gov/usao-edny/pr/two-international-cybercriminal-rings-dismantled-and-eight-defendants-indicted-causing <comment><USER3> The interesting thing about ad fraud is the people that lose have no ability to police the problem. Ad networks get paid for fraud. Intelligent ad buyers that use cost-per-acquisition targeting, don't care because they just bid lower if the traffic is a mix of fraud.

The losers are unsophisticated ad buyers such as the brand advertisers that use ad agencies to fill their ads with garbage traffic. Proctor and Gamble has recently figured that internet display is pretty much worthless. The other losers are legit publishers. I am perfectly happy to pay $0.50 a click with half the traffic being fraud, as I am willing to pay $1.00 a click for legit traffic from legit publishers. I get the same result, buy my money gets split 50/50 between legit publishers and crooks.

I am mostly a dev, but have bought more than $1M in advertising on multiple platforms. The biggest joke I have ever seen was AppNexus. It was like 70% or more fraud, and it was the most obvious crap imaginable. For instance, all clicks coming from 8 month old user agents for evergreen browsers.

Google Adwords and Double Click have been mostly clean. I'd say 85-90%. I do see stuff that is obvious bullshit from time to time, and it goes away pretty quickly and but Google doesn't refund the money. I don't really care... they make it so we can police it pretty well. Facebook ads are completely clean, but they don't run a network.

The simple rule for picking a ad platform is: if it isn't loaded with performance advertisers (CPA), then stay the hell away.

<comment><USER4> >Ad networks get paid for fraud

Ad networks value proposition is give us money and an ad and your revenue will rise. If there's fraud that just dilutes the effectiveness of the proposition. Eventually poor quality networks die in the same way that the market winnows fertilizer etc. There is no free lunch

<comment><USER5> Assumes attribution, which is a hard problem. If I can't measure whether a digital ad campaign (in your case) increased revenue than I can't select for best performing network. Attribution is also gamed and complex (last click, cookie stuffing, modeled, outright fraud, etc)

</comment></comment></comment><comment><USER6> The most interesting part for me: "Furthermore, the defendants leased more than 650,000 Internet Protocol ("IP") addresses, assigned multiple IP addresses to each datacenter server, and then fraudulently registered those IP addresses to make it appear that that the datacenter servers were residential computers belonging to individual human internet users who were subscribed to various residential internet service providers."

That's... really smart. A lot of companies use services like MaxMind to do this. I wonder how difficult it is to get a GeoIP data correction request approved: [https://support.maxmind.com/geoip-data-correction- request/](https://support.maxmind.com/geoip-data-correction-request/)

<comment><USER7> Scamming at that level requires so much skill and hard work that you have to wonder why they don't start a legitimate business to make more money with less risk? I suppose for some it's just for the thrill.

<comment><USER8> I think because it's a different type of risk. With your own business the risk is that you fail and don't make money. With a scam you can make a bunch of money for a long time before the risk of being caught ramps up. You're quickly (relatively) rewarded instead of agonizing over whether or not you will be.

<comment><USER6> Well, they all live in Kazakhstan and Russia. It may not be so easy to convert talent into legitimate business success, particularly when "cybercrime" (god I hate that word) is often encouraged in places like Russia so long as it targets non-Russians.

<comment><USER9> I don't think people in civilized countries even remotely understand the level of desperation poorer people from those countries go through. VICE's documentary about krokodil is actually quite good. Except when people watch it they think it's about someone particularly far away from the average - <USER2> it's not.

The chance of getting a visa to move out or starting a business, which can only be oriented towards civilized countries if you'd like to make any money at all... Is particularly low.

IT is one of those areas which you can still learn particularly well without any access to textbooks or academia.

</comment></comment></comment></comment></comment><comment><USER10> > _the defendants leased more than 650,000 Internet Protocol ("IP") addresses_

That's... a not-insignificant number of IPs to have. I wonder how many different blocks were used and across which RIRs?

<comment> ryan-c It was actually well over 800k.

Here's a list - note that many have been reassigned: [http://methbot.s3-website-us-east-1.amazonaws.com/IPs- CIDR.t...](http://methbot.s3-website-us-east-1.amazonaws.com/IPs-CIDR.txt)

</comment></comment><comment><USER11> Haha,this is kovter. It's a slick malware,always found the infection interesting. It's fileless and uses javascript to start mshta which executes powershell from the registry and so on. It was one of my favs, happy-sad they took it down.

</comment><comment> ryan-c Some technical details: [https://services.google.com/fh/files/blogs/3ve_google_whiteo...](https://services.google.com/fh/files/blogs/3ve_google_whiteops_whitepaper_final_nov_2018.pdf) (note: I work for White Ops)

<comment><USER5> By chance do you know if/where the collected 3ve js code will be published? I'm specifically interested in looking at their js property patching

<comment> ryan-c I don't think it's being published. The snippets in the paper were obtained from process memory dumps by folks reversing the malware, so we don't really have a good clean copy - just fragments.

<comment><USER5> Interesting. Well if it ever gets published would love to see it! We have our own js to help us model 'unique voters reached' and as one piece of fraud reduction toolset (in addition to 3rd party providers). The given example in pdf (maxchannelcount) is actually one piece of entropy we collect.

Now I'm thinking through this example,I'm going to try and test for these monkey patched methods (not sure if can do it, but maybe md5(toSting) compare to major browser native hashes?).

Sounds like you work for a verification vendor, if so have you had success with detecting these 'monkey patches'?

<comment> ryan-c I work for White Ops, which could reasonably be considered a verification vendor, though we prefer to be known as a security company.

As you can imagine, specific techniques used for detecting fraudulent monkey patching (or even whether we attempt to do so) aren't generally something I can talk about.

That said, there are a few slides about the cat-and-mouse games of .toString() here (starting about page 20): [https://rya.nc/shmoo17](https://rya.nc/shmoo17) [PDF]

In short, using .toString() will find naive monkey patches, however it can be overridden to varying degrees of cleverness.

<comment><USER5> Of course they already thought of that lol. I really love the cleverness of this 'game.' I probably spend far too much time tinkering with our own js measurement script for how small we are but it's kind of addictingly fun.

Are you involved with sales or just engineering? My work email is in my profile I might drop you a note though I am just guessing your product is too expensive for our clients (mostly political campaigns).

<comment> ryan-c I'm a researcher - I don't actually see your email in your profile, you have to include it in the about text if you want it to be seen. I can put you in touch with the right person in sales if you contact me (my personal email is publicly visible).

<comment><USER5> it's dillon @ 4degre.es

</comment></comment></comment></comment></comment></comment></comment></comment><comment><USER12> "Ad Network #1 rented more than 1,900 computer servers housed in commercial datacenters in Dallas...spoofing more than 5,000 domains...leased more than 650,000 IP addresses...$7 million in ad fraud"

"Ad Network #2 carried out another digital ad fraud scheme...botnet...more than 1.7 million infected computers...download fabricated webpages...$29 million in ad fraud"

</comment><comment><USER13> Using your malware botnet to click on fake ads and generate 27mln in actual ad rev is pretty damn crafty.

Only part I'm unclear on is whether they were actually operating the network/marketplace, or just falsifying the publisher and user parts of it. Sounds like the latter, in which case, I wonder which ad networks got gamed.

</comment><comment><USER14> What impresses me is that three of them have already been arrested in various countries, I wouldn't have expected such effective international cooperation between intelligence/police services considering the countries they were arrested in aren't exactly closely tied to the US

<comment><USER15> The cynic in me says that this is because they weren't just hurting the interests of the U.S. government - they were hurting the interests of the largest mega-corporations on the planet.

</comment></comment><comment><USER16> Is there an easy way to check if your computer is compromised and is part of a botnet?

<comment><USER17> It depends: you need to rely on an IoC to notice a piece of malware. This is typically a signature, a direct communication with a known C2 or a malicious URLs, a hash, ... Beyond the most simple techniques, I'd mention traffic monitoring and analysis (especially traffic flow analysis) and behavioural analysis.

However detecting a dormant botnet isn't easy nor simple. e.g.: DARPA (via HACCS) awarded a $1.2m contract to build a system that can automatically pinpoint botnet-infected devices. [https://www.fbo.gov/?s=opportunity&mode=form&id=72de4936f6f4...](https://www.fbo.gov/?s=opportunity&mode=form&id=72de4936f6f4d88cc838a624c1157f26&tab=core&_cview=0)

</comment></comment><comment><USER18> I am curious if we'll actually see any extradition from any of the involved countries.

<comment><USER19> I would imagine Estonia will cooperate as US is pretty much the only reason Russia is not taking it over.

</comment></comment><comment><USER20> > This kind of exploitation undermines confidence in the system, on the part > of both companies and their customers," stated FBI Assistant Director-in- > Charge Sweeney.

Haha! What on Earth is "the system"?! Did he really say that? Bad criminals spoiling our nice advertising system.

</comment><comment><USER21> > _the FBI executed seizure warrants to sinkhole 23 internet domains_

Sinkhole?

<comment><USER22> Route them to nowhere. In particular, route them _not_ to servers controlled by the criminals.

<comment><USER23> Actually they get routed to servers operated by security companies that log incoming connections. This information is then shared with internet providers and corporations to help disinfect the end users machines that are trying to coordinate with the botnet.

<comment><USER24> Do they call up customers telling them their computer has been infected with a virus? I am suddenly terrified that some non-zero percentage of those spam calls may actually be legit, and that I may need to treat every one of them as authentic (until they ask for teamviewer).

<comment><USER25> Yes, you may certainly receive a call or email. I've been on both the sending and receiving end of those while working infosec at different companies.

</comment></comment></comment></comment></comment><comment><USER26> In my mind, "normal" digital advertising only barely escapes the definition of fraud.

<comment><USER27> Who doesn't love to be manipulated constantly?</comment></comment>


UK police 'raid' embassy to take Assange - <AUTHOR> http://www.smh.com.au/opinion/political-news/uk-police-raid-embassy-to-take-assange-20120816-249pe.html

<comment><USER2> I'm getting the feeling that this 'controversy' is mostly media hype.

Each outlet mentions this 'threat' to enter the embassy, but do we really believe that it is just a coincidence that this 'threat' would come on the day that the embassy announces if it will grant Assange political asylum?

If they don't grant him asylum, he may be forced to leave the embassy (I suspect), and therefore the UK has the right to arrest him after he leaves.

This doesn't make sense...</comment>


Workers of the world unite on distributed digital platforms - <AUTHOR> https://aeon.co/essays/workers-of-the-world-unite-on-distributed-digital-platforms <comment><USER2> I advocate for platform cooperativism and workers self-organization and this article is still terrible. Every single technical reference is wrong and the level of confidence in the blockchain is way beyond what is reasonable at this time.

At some point I was expecting some comment on Comrade Elon Musk, the Lord and Saviour of the proletariat.

</comment><comment><USER3> "And contracting costs are likely to fall markedly thanks to the advent of blockchain protocols"

I really don't see any evidence of this being true in general...

</comment><comment><USER4> Really wish this article wasnt full of crypto psychobabble because the cooperative business structure has real teeth, both as an alternative fundraising/equity structure for tech companies and for regular, everyday businesses across the US. Establishing clear ownership structures among workers in a way that allows them to have a voice in company operations and share in the profits is the most democratic mode of capitalism and clearly fairer than the oligarchic form of capitalism we're living in now. I wish more startups considered this path.

</comment><comment><USER5> I am sympathetic somewhat I suppose, but they seriously downplay the issues with blockchains, including the Ethereum "hack" (which IMO was the system working as designed although not intended). The various cryptocoins are not decentralized, in fact, we have had a couple of articles posted here lately about 51% attacks on a number of coins, so how are they the decentralized future as the article puts it?

</comment><comment><USER6> Are we seeing the outline of a new class struggle? Rentiers owning platforms that allow the gig economy to function being organised against on whatsapp?

</comment><comment><USER7> Co-operatives have been around for a long time outside of the software world. The low level problems are being worked on right now with DAOs, but it will take a while longer.

If you take the D out of DAO, then the high level problems: fairness and trust, can already be worked upon.

Are there any organizations that have tied software decision making to the existing legal system?</comment>


Fraud caused disappearance of 99% of Mt. Gox Bitcoins - <AUTHOR> http://the-japan-news.com/news/article/0001825662 <comment><USER2> From all the theories I've seen, the most likely to me is that this was a business that slowly drifted into a whirlpool of fraud and insolvency, probably starting with good intentions.

Most likely, they had a hard time maintaining the right ratio of bitcoin/yen/USD to match the reality of their customer's deposits (through incompetency) and got hit hard when the "wrong" price fluctuations occurred... when this happened, and in which direction the fluctuation happened, I cannot say.

After that, they were deeply into a fractional reserve situation and thought "hey, we own a large part of the Bitcoin market, we can probably play the price a bit to make our customers whole again, without anyone knowing what had happened."

In this way, they gradually drifted from "cutting corners and doing the ugly things required to keep a business afloat" (aka mild, veiled fraud) into outright fraud.

<comment><USER3> Your theory seems reasonable to me, and I know you're not defending them, but ...

How difficult is it to keep the right amount of bitcoin and USD in deposit? It seems pretty simple to me. Customer deposits $1.00, then I keep $1.00 in deposit in my business account. Customer deposits 1 bitcoin, I keep one bitcoin. The account for customer deposits will only ever be touched by automated systems processing these transactions.

If I'm charging fees as part of depositing/withdrawing/trading currencies or BTC, then those fees are immediately swept into a separate account, the entirety of which is revenue. Kept strictly separate from deposits. I'd regularly audit both accounts to confirm that the dollar amounts of each deposit/withdrawal, as well as total, match the records of actions in my systems.

Mt Gox only ever handled about 40 trades per second. Seems like you could keep everything balanced with a typical database, using transactions to implement atomic trades / deposits / withdrawals. Perhaps interfacing with money transmission systems is slightly more difficult, but once a transaction has reached the point of having probably-completed, you initiate the transaction to modify the customer's balance of bitcoin and currency.

So I guess I'm agreeing with you that if they failed in this way, they must have been incompetent.

P.S. I'm just making all this up. I've never worked in payments or accounting. I expect a good security or finance auditor could suggest much better controls. I'd pick up an "accounting for dummies" book and learn about the basic control principles used in accounting to prevent fraud. Perhaps I periodically download statements from my bank, print them out (or receive them in the mail) and audit those records against my own systems, by hand. Do the same electronically on a continuous basis. Set up an off-site write-only logging system to capture all transactions, and regularly audit to ensure that the system logs match bank transaction logs.

<comment><USER4> _How difficult is it to keep the right amount of bitcoin and USD in deposit? ... P.S. I 'm just making all this up. I've never worked in payments or accounting._

Mt. Gox had a financial control problem less complex than that faced by the typical supermarket. A supermarket has cash going in and out, multiple cash registers, multiple cashiers on different shifts, credit cards, checks, benefit cards, and automated checkout lanes. That's just the front side - there's a comparable operation at the back, where merchandise comes in and is accounted for. A big supermarket has a higher transaction rate than Mt. Gox did.

If a $10 bill goes missing in a supermarket, the management will know at the end of the day, and will probably be able to figure out where it went. This is routine cash control. It's a solved problem.

Mt. Gox had no financial controls; we know that from press reports. None. They don't even seem to have had a general ledger. This is rare in real businesses, but it's common in fraud schemes. Fraudsters don't want accounting controls, with everything they're stealing on the record.

Anyway, on Jan 3, we'll hear more. That this story came from the Tokyo Metropolitan Police is significant. The police haven't said anything until now, except that they were investigating. That silence has ended. Arrests may be announced. There's a good chance that Mark Karpeles is about to experience the standard 21-day interrogation used in Japan.

<comment><USER5> Just curious, searched and couldn't find anything meaningful, what is the "standard 21-day interrogation"?

<comment><USER6> To make a long story short: the general standard of Japanese policing at present is quite similar to the prevailing standard of US policing in the 1950s. The primary investigative tactic is coercing confessions, and I do not use the word "coercing" lightly. Japanese cops can jail someone on suspicion of wrongdoing for 20-something days prior to having to bring a magistrate into the picture, during which time they're routinely physically and emotionally abused and made to think that signing whatever the cops put in front of them will be the quickest way to end the ordeal.

<comment><USER7> Doesn't this get abused heavily?

<comment><USER8> It is systematic abuse; I'm not sure it makes sense to talk about it being abused...

<comment><USER9> Indeed. Japan is a police state. A remarkably polite one, but things at this level are done for the convenience of the police, prosecutors and judges (at least prior to adding juries to the system, but I'm quite skeptical how that'll turn out for quite a while). Closing cases is more important than finding the real criminal, and atrocities like their handling of the Aum Shinrikyo cult suggest they're not so good when put to serious test.

<comment><AUTHOR> "Atrocities like their handling of the Aum Shinrikyo cult"? Are you referring to the guy falsely blamed for the Matsumoto attack? The police are indeed likely to blame for leaking his name to the media, but he was never even formally charged, much less convicted:

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

The investigation of the Tokyo sarin attacks, on the other hand, seems to have been carried out pretty much by the book and I'm not aware of anybody outside the tinfoil hat brigade who contests that they got the right people.

<comment><USER9> _After_ the sarin attacks, they did a good job. I'm referring to the multiple times they dropped the ball prior to that point, which among other things allowed the sarin attacks to happen. Their screwup on the Matsumoto attack is an obvious example; they they harmed an innocent in an incorrect focus on him is in a way much less important than letting the culprits later do _much_ worse.

</comment></comment></comment></comment></comment></comment></comment></comment></comment></comment><comment><USER10> Well this could be interesting if it's more than hype to sell more paper.

Karpelès having quite a trail of fraud and misconduct, I'm curious to learn the results of the Magic The Gathering Online Exchange investigation.

For those who don't know yet about the past of Karpelès, he started his career when over a disagreement with his employer he moved some of the company's clients' data over to his own servers, redirected a company domain towards one of his then resigned from the company. When the company confronted him, he refused to give back what he took and offered to buy the domain he stole, so the company went to court with Karpelès admitting he did it to the police but telling a different story on his blog [1]. With Karpelès not appearing at the audience because he had left the country he got sentenced in 2010 to 1 year of prison and 45 000€ in damage [2].

This is only part of a trail of lies, deception and fraud from Karpalès for his personal profit that has started to surface, we know have a blog he made in 2006 where he confessed of getting caught for a youth error of doing bad things with online payment systems for 2 years[3] or how he used lies to get money for a job he didn't do[4].

Of course that doesn't mean he did stole the coins, that's why I want to know about the investigation.

[1]: [https://web.archive.org/web/20070630213730/http://www.magica...](https://web.archive.org/web/20070630213730/http://www.magicaltux.net/blog/2006/11/23/105-le- point-sur-2006-eurocenter-portha-ff-st-etc)

[2]: [https://www.documentcloud.org/documents/1238981-img-20140720...](https://www.documentcloud.org/documents/1238981-img-20140720-0001.html)

[3]: [http://web.archive.org/web/20140302234940/http://blog.magica...](http://web.archive.org/web/20140302234940/http://blog.magicaltux.net/2006/02/12/pensees- nocturnes/)

[4]: [https://www.cryptocoinsnews.com/exclusive-tibanne-co-ltd- sen...](https://www.cryptocoinsnews.com/exclusive-tibanne-co-ltd- sentenced-2013-mark-karpeless-lies-new/)

<comment><USER11> It's astonishing that financially minded people, used to doing due diligence for potential investments in their day jobs, would trust a company with their own personal money without digging into its founder's backstory!

<comment><USER12> Most (all?) of that material was in French, which seems to have been a surprisingly effective barrier. (French proficiency is not terribly common in the US or Japan; and how many people are _so_ paranoid about random counterparties that they will hire translators to go through everything any of the counterparties have ever written looking for red flags? Have you ever done that?)

I don't recall even the Mtgox haters bringing up any of the French backstory until not long before the end.

</comment></comment></comment><comment><USER6> I'll try to find a print copy when the Yomiuri hits news stands on the 3rd and post the gist of it, but don't get your hopes up on this shedding a lot of light on the story.

<comment><USER13> Please, and thank you! I've been avidly following every piece of news about Mt. Gox, so it would be great to hear a translation of the news story. It probably won't have any new details, but I'm very interested to know how Japan feels about the situation. A translation of a printed story might not be the best way to find that out, but at least it's something.

</comment></comment><comment><USER14> It's almost like people with no education or training and a history filled with criminal activity can't be trusted to run financial institutions.

It's almost like there is a great irony in the fact that people who mistrusted government run banks sought an anonymous unregulated cryptocurrency and then immediately got ripped off because it's anonymous and unregulated.

<comment><USER15> > government run banks

What's one of these? It's the other way round - banks run governments.

<comment><USER16> Should probably be read as government-regulated instead. For some value of "regulated", anyway.

</comment></comment></comment><comment><USER17> This is still a mystery? I thought it was widely accepted that Karpeles stole the money for himself to buy Starbucks.</comment>


The Demiurge's older brother - <AUTHOR> http://slatestarcodex.com/2017/03/21/repost-the-demiurges-older-brother/ <comment><USER2> Obligatory link to Unsong (by the same author): [http://unsongbook.com/](http://unsongbook.com/)</comment>


People who use spaces over tabs apparently make more money - <AUTHOR> http://www.businessinsider.com/programmers-who-use-spaces-get-paid-more-than-those-who-use-tabs-2017-6?utm_content=buffer69968&utm_medium=social&utm_source=facebook.com&utm_campaign=buffer-ti <comment><USER2> The problem today is that various editors allow you to configure tab size. If you configure editor to put spaces in when tabbing, you always have control over what you see. If you configure editor to put in tabs, change to another editor or give to a different person using a different tab size and the format changes dramatically.

I regular deal with code from a specific project, in which different files can use different tab sizes as well as a mixture of tabs and spaces (dependent on who has worked on the files). As a matter of course, I set the tab size to 8 for any file that has tabs and convert to spaces before setting my tab size back to my preferred size.

One subsidiary task I have for this project is to modify the UI editor for the project to handle the conversion of spaces and tabs according to your preferences. While saving any system files in the project lead's preferred style.

<comment><USER2> I should make a point here that it should be irrelevant as to whether or not your preferred style is tabs or spaces or a mixture of both. The underlying storage and the UI should handle this independently of your settings so that all see it in their preferred style.

</comment></comment><comment><USER3> I am looking for the announcement of a genetic link in this debate.

</comment><comment><USER4> Long live spaces!

<comment><USER5> Proof that spaces are an evil plot used by fat cat capitalists to grind the working class under their heel! Down with spaces!</comment></comment>


Edison: The worst fisherman that ever lived - <AUTHOR> http://www.productiveflourishing.com/the-worst-fisherman-that-ever-lived/

<comment><USER2> Edison is notably overrated. While he does deserve some credit, his approach to R&D was infamously brute-force. Tesla noted, "If Edison had a needle to find in a haystack, he would proceed at once with the diligence of the bee to examine straw after straw until he found the object of his search. I was a sorry witness of such doings, knowing that a little theory and calculation would have saved him ninety per cent of his labor." He also infamously took credit for the inventions of his employees--the long and impressive list of things Edison invented is really a long and impressive list of things invented at Edison's lab.

While it's hard to argue with success, not every successful man should be a figure of unquestioned admiration. Edison was famous in his day, and remains famous today, because he had the best PR and marketing in the business.

<comment><USER3> PR and marketing is an important part of the discovery process. Unless you get your discovery in the market and build a business around it their is no discovery. Tesla made great discoveries but he was not a good marketer.

<comment><USER2> Westinghouse _was_ a good marketer, however, so Tesla did not need to be.

</comment></comment></comment><comment><USER4> Claiming that Edison invented the phonograph, the motion picture, and the electric light bulb is like claiming Steve Jobs invented the MP3 player, the GUI, and the mouse.

<comment><USER5> Sadly, basic history is not taught with much subtlety. Your children's children may one day be taught this as truth.</comment></comment>


Sky - Open Source, Behavioral Database - <AUTHOR> http://skydb.io

<comment><USER2> Demo doesn't work, BUT I'm thrilled someone came up with such a database: I can clearly feel the need for it! You did a great job, I'll definitely give it a try.

</comment><comment><USER3> Heads up: Demo doesn't work. I get a sinatra error:

Errno::ECONNREFUSED at / Connection refused - connect(2)</comment>


UofA scientists develop memory that could exceed hard drive capacity 1000-fold - <AUTHOR> https://globalnews.ca/news/4347953/university-alberta-scientists-memory-space/ <comment><USER2> When will I be able to buy this?</comment>


Mailbox - <AUTHOR> http://www.mailboxapp.com/about/

<comment><USER2> At first I though it was .mail (<http://dotmailapp.com/>) materialising, but this looks interesting. Got in the queue with ~350,000 ahead of me, great.

</comment><comment><USER3> Don't bother. The site says available on the iPhone, but it's not. You can download the app and do nothing with it. It's just linkbait to pad numbers.</comment>