Intel Declares War on GPUs at Disputed HPC, AI Border - <AUTHOR> https://www.nextplatform.com/2016/11/20/intel-declares-war-gpus-disputed-hpc-ai-border/ <comment><USER2> Intel's roadmap is worthless, since they only seem to actually produce a given Xeon PHI SKU for about two years. Nobody -- and I mean nobody -- is happy with Intel's complete lack of availability for hardware replacements as the MIC addons fail. I can only hope the self-booting Knights Landing product is ... stabler.

I am aware of about fifteen different sites that are enacting significant architecture changes as the 5110 supplies dry up and the 7120s are clearly next.

It does not matter which product is technically superior when one of them is literally unsupportable.

</comment><comment><USER3> So.. speaking as someone who does some deep learning (but quite a bit of ML more broadly).

Intel are correct that the memory size on GPUs is increasingly becoming a problem in some complex deep learning models. Having access to cheap(ish) DDR4 RAM using the same programming model would be a big win.

Interestingly, AMD is going after a related market (visualization) which is also very RAM hungry by building GPUs with M.2 SSDs onboard[1]. AFAIK no one has tried these for deep learning.

But within the deep learning community there's a fair bit of cynicism about Intel's claims. Over the last few years they have frequently claimed parity with GPUs... any day now. Yet they keep falling further behind in any useful benchmark.

[1] [http://www.anandtech.com/show/10518/amd-announces-radeon- pro...](http://www.anandtech.com/show/10518/amd-announces-radeon-pro-ssg-fiji- with-m2-ssds-onboard)

<comment><USER4> More memory would indeed be a bid deal for ML applications.

Found this comment useful as it's not clear to me whether the 'Knights Landing' will actually be comparable to GPU in terms of pure grunt.

Then I wonder if Nvidia will respond with more memory on their cards. From my totally uninformed perpective, that would seem easier than the transition Intel are trying to go for.

<comment><USER3> The programming model for GPUs isn't great - since they aren't general purpose platforms you have to keep thinking about moving data around between the GPU memory and the main memory.

Intel could bypass that and end up with an easier programming model. But.. believe it when you see it.

Note that this is almost entirely about deep learning though. Non DL machine learning is mostly done on CPUs at the moment (with a few exceptions) and generally performs adequately. More speed is always nice, but you don't hear a lot of complaints about XGBoost's speed, or FastText, or VopalWabbit, or the various FTL regression algorithms implemented on CPUs.

<comment><USER5> Yes, but deep learning is clearly the future. I'd love to fully unroll my rnns.

</comment></comment></comment></comment><comment><USER6> Intel seems to be taking a long time getting things to market in terms of SKUs that the general developer can buy. This is critical for gaining mindshare for the programming model. Both Knights Landing and the new chips from Altera have failed to materialise into general availability in a SKU priced at <500$. Part of what has made Nvidia so successful here is that the CUDA ecosystem scales up and down their entire product line.

<comment><USER7> > the general developer can buy

Having a non-integrated GPU (i.e. NVIDIA or AMD) in a machine is not a stretch of the imagination these days. This means that any curious dabbler can grab Tensorflow and start learning ML. Over the past few months, I've been seeing exactly this on HN: many developers with ML Show HNs. In my opinion, it is precisely the general availability of ML that has caused this explosion.

As you pointed out, the above scenario falls away entirely under an expensive SKU. I strongly believe that having to buy any specific SKU in order to approach this stuff will spell doom for the tech. If it's not on every SKU down to the Core 2, I really can't see it taking off.

<comment><USER8> Why would na expensive SKU be a problem ? as long as they offered it as a service and they ROI would be significantly better, it would be fine.

<comment><USER3> Because library developers want to have things available without paying by the hour.

Once you have the software, a service is fine. But the ecosystem of tools around NVidia CUDA and CuDNN is there because you can buy a gaming card for a few hundred dollars and hack up libraries you find useful.

</comment></comment></comment></comment><comment><USER9> Interesting article presenting a "war" between Intel CPU and Nvidia GPU.

I'm curious where AMD falls in this war. While it's true GPU can provide really nice theoritical TFLOPS, the cost of moving data in and out of the GPU's memory is a well known issue. This renders GPU much less attractive for real applications.

The reason I mentioned AMD is that I read some time ago about their Heterogeneous system architecture [1]. One of the HSA's goal is to get rid of the particular issue of moving that data. I wonder if this was adopted in any HPC cluster or anywhere else.

[1] [http://developer.amd.com/resources/heterogeneous- computing/w...](http://developer.amd.com/resources/heterogeneous- computing/what-is-heterogeneous-system-architecture-hsa/)

<comment><USER10> Right now AMD is fighting for its life, it's in no position to take on Intel and Nvidia in the HPC space. If their consumer Zen processors flop then AMD will likely be heading for a buyout and/or bankruptcy. Only if both Zen and Vega (their upcoming high-end GPU) are huge successes will they have the resources to mount a serious effort to capture some of the HPC market.

<comment><USER11> > Right now AMD is fighting for its life,

I thought so too, but looking at it stock recently it seems to be doing much better (especially in last year). Not sure how to interpret that. Wonder if it was mostly investors being happy they divested from that ARM microserver company, or there is genuine upswing and increased market share.

<comment><USER12> > looking at it stock recently it seems to be doing much better (especially in > last year). Not sure how to interpret that.

One interpretation: NVIDIA has been doing a very good job of A) pursuing deep learning and B) talking that up on earnings calls. Even if they're not seeing much money from it right now, investors are excited that they might in the future.

This leads some investors and algos to think, "Hey, NVIDIA is doing well, and AMD is nominally in the same business as NVIDIA, so let's buy AMD because it's cheaper and therefore must represent a better value." This drives up the price of AMD stock, which is itself already prone to more volatility because of their lower market cap.

However, they are two fundamentally different companies. I hear a lot about founder-led vs non-founder-led businesses, and AMD vs NVIDIA is a good example of non-founder-led vs founder-led atm. Also, they've done a very poor job with their ATI acquisition. The ATI acquisition is why they even have a leg to compete with NVIDIA in the first place, but that train has basically left the station at this point.

Intel is in a weird position because their market cap is 10x NVIDIA's, so they need markets where they can make literally 10x more money than for NVIDIA to be interested. Victims of their own success, innovators dilemma, etc. Personally, I think that will hinder them because everything they want to try won't be "big enough" while NVIDIA doesn't suffer from that problem and AMD just has no idea what it's doing besides professional supply chain management.

Respect where it's due, Nvidia will win the hardware side of deep learning and fast matrix multiplication for the foreseeable future.

<comment><USER13> Right now the only thing I can see holding AMD back is their lack of vision to drop a bit of cash on a CuDNN equivalent (and the ML framework support for it), especially fast convolution kernels optimised for their hardware. They are waiting for the open source community to do the work for them, but no one is picking it up because it's a lot of work.

A couple of good AMD engineers should be able to knock out fast Winograd kernels pretty quick.

<comment><USER14> Their best bet it to increase support for OpenCL rather than invent something new. And then improve / create OpenCL support for TensorFlow and other popular toolkits.

<comment><USER13> Yes, that would be OpenCL/SPIR-V. But you still need to put in the work to optimise convolution kernels for specific hardware.

TF has openCL support in the works, AFAIK outsourced to Codeplay - [https://www.codeplay.com/portal/tensorflow%E2%84%A2-for- open...](https://www.codeplay.com/portal/tensorflow%E2%84%A2-for- opencl%E2%84%A2-using-sycl%E2%84%A2)

Caffe has an OpenCL branch, works on AMD but about quarter of the speed of equivalent NVidia hardware using CuDNN 4/5, mostly due to unoptimised kernels - [https://github.com/BVLC/caffe/tree/opencl](https://github.com/BVLC/caffe/tree/opencl)

</comment></comment></comment></comment></comment></comment></comment><comment><USER15> Intel doesn't have that much of natural room to expand. They completely missed the mobile, Moore law is slowing down, so their edge slowly erodes.

They been talking about killing GPU many years. They been doing it both technical and non-so technical point. E.g. in 2011 Intel paid $1.5Bln to NVIDIA, because the Intel killed NVIDIA chipset business through not so fair licensing practice.

Instead NVIDIA invested so much in the GPU computing ecosystem CUDA. For many early years it was niche, but quickly growing. However, they hit jackpot with deep learning. I wouldn't be surprised that majority of self-driving cars will have NVIDIA chip in it.

<comment><USER16> The only problem with Nvidia, if you look at the entire system, is that they rely on Intel's CPUs for most of the computer systems that they are a part of. Sure, they have their ARM core CPUs that have proven to be decent, but I don't see them blowing anyone out of the water with them. Furthermore, there is no interchanging GPUs, so the only people using Nvidia CPUs are the ones that buy into Nvidia's entire ecosystem, which is necessarily going to be fewer people/groups.

AMD, on the other hand, while fighting Intel and Nvidia for the past decade and coming up short, may be at the horizon of a breakthrough. Only AMD seems ready to find the synergy between CPUs and GPUs. A Zen and Vega combination of architectures could essentially be an Intel i7 top of the line + an Nvidia GTX top of the line. Add some special sauce, and they could really do it.

Nothing that Intel has done in a long time has been impressive, but Nvidia is on fire. AMD's CPUs may help them leap ahead instead of merely catching up (which Vega may do anyway).

<comment><USER17> AMD has been trying to find a synergy between CPUs and GPUs for over a decade. Heck they were the ones who bought ATI! They've been unable to deliver because "a synergy" between GPU and CPU doesn't mean very much.

In the best case, the architecture will be able to avoid memory copies, but although inconvenient, existing applications have been able to pipeline host- device/device-host memory copies, effectively negating the problem.

Even on this limited promise, AMD hasn't been able to deliver.

<comment><USER18> > They've been unable to deliver because "a synergy" between GPU and CPU > doesn't mean very much.

Contrary to what you may believe, that "synergy" does mean a lot, considering that one of the worlds fastest supercomputers does run on Opterons and NVIDIA Tesla cards.

The thing is, high-performance computing is a niche market. Yet typical consumer hardware needs aren't CPU-driven, but GPU driven. Computer games don't take advantage (or need) multi-core CPUs, thus AMD's bet on the 6-core and 8-core AMD FX line didn't paid off as it was expected. Yet, everyone needs a good GPU to run games, and the "synergy" between that the CPU delivers and the GPU processes ends up being the bottleneck in consumer hardware.

<comment><USER17> Except you haven't told me what synergy means. Also the cpus mentioned have fused FP units, meaning their cores are more comparable to Intel's hyperthreads. They often failed to perform at i5 levels, and any small performance increase was offset by higher energy consumption.

</comment></comment></comment></comment></comment><comment><USER19> "Second, with the above notes in mind, remember that Intel's strength even with its own accelerator, is that there is no funky programming model—it's CUDA versus good old X86."

Now, please show us non-trivial use cases where recompiling "good old X86" to Knights Mill architecture yields satisfactory performance?

To get good performance you need to ensure your code makes good use of Knights Mill vector instructions (AVX-512*).

<comment><USER20> Most likely you call BLAS routines for matrix multiply, which use the right instructions. So any code using BLAS (which includes numpy) will run fast.

Using a GPU is much more complex, because it has a separate memory space and you have to copy arrays back and forth. It's easy to lose all your performance gains if you get the array allocation wrong.

<comment><USER19> If you use KNL as an accelerator you got same problem as GPU.

If you're using it in standalone mode then keep in mind that every part of code that is not using AVX runs on slow Atom-like CPU. You have to vectorize code yourself or find a library that did that for you.

Neither of above is close to "recompile good old X86 and run".

<comment><USER21> The argument is that you should be vectorizing your code anyway. You won't see as much of a boost on a skylake as you would on a KNL, but you are still going to see a pretty good boost.

Obviously if your code is completely serial (and arguably bad), you have a lot of work ahead of you. Whereas, if you have been taking advantage of AVX already (or relying on libraries that do), you are basically just going to need to recompile.

Are you going to get peak on a KNL? God no. But if it runs well on a "normal" processor, it is likely to run pretty well on the KNL. Which is a MUCH better foundation to start from than if you are trying to port a code to a GPU

And those tweaks you make to better utilize that KNL? It will probably improve normal perf as well.

It is obviously not as simple as the marketing led us to believe, but it never is. GPUs are a load of toss without a lot of work (and often some creative presentations). But the underlying principle of "Use the same code on both types of processor" does actually hold true as of KNL.

As for performance numbers: Check the presentations from SC as they become available. Multiple outlets have begun to publish, or at least present, these numbers and their experiences using KNLs. I would personally argue that we still have a long way to go, but there is actually light at the end of the tunnel and it does look like there is an actual path now.

</comment></comment></comment></comment><comment><USER22> I'm pretty sure Nvidia is cleaning house with Intel when you compare something like say a K80 vs a Phi. The number of people who can do amazing and wonderful things (and frameworks to support them) with an Nvidia GPU vs a Phi is also dramatically different.

<comment><USER23> nVidia has really hustled to make that happen.

I expressed some vague interest in using CUDA for something and we were offered a demo account on one of their boxes, invited to apply for an academic hardware grant, and pointed at tons of training material (books, a MOOC, conferences, and even some 1-2 day sessions), libraries, and other resources.

On the other hand, my institute apparently has some Phis. I discovered this because there's a small queue with that name on our cluster. I don't think I've ever been contacted by an Intel rep or offered training material--or even marketing material--from Intel, let alone a Phi of my own to experiment with.

</comment></comment><comment><USER24> Nvidia's stock price has tripled from $30 to $93 in the last 12 months, while Intel's share price stayed at $34, exactly the same price a year ago. Although Intel is still a lot bigger, they want a piece of that pie too. That said, the chance for them to win a significant market share is slim. They have failed a few times in entering standalone GPU market. Will this time be different?

<comment><USER25> Nvidia has taken over a newer segment, cars, and they have a stronghold in the HPC market due to the sheer number of academic compute clusters that have based their setups on Nvidia hardware.

Intel has forced Nvidia out of the mobile and lowend/midrange desktop space, eliminating what used to be their bread and butter, so this pivot by Nvidia to markets where they either control the whole stack with their custom ARM cores, or where Intel can't lock them out by getting rid of PCIE lanes like on laptops/desktops (AMD would get subbed in cause PCIE lanes are all that matter) has definitely put them in a stronger position, justifying that valuation.

</comment></comment><comment><USER26> The article mentions that to write for Intels Xeon Phis, its x86. I imagine this is mostly accurate but is creating writing for this as simple as creating another thread? That seems naive

Looked into it, [0] looks like you add some compiler instructures before code you want to outsource to the coprocessor. It doesnt look extreme, mostly naming which variables need to be sent and to where. Ive never worked with cuda so I dont know if its a pain or not. Looking into it, it seems instead of x86 code it is cuda prefixed functions that will offload. Granted, there are speed advantages to having direct accessbto memory, I dont think Api is the biggest selling point.

Im quite interested in seeing if nvidia thinks this is a threat and how they will respond. New systems may stay with nvidia just because the experience and failures have been there. Though if the speed gains are even 25% I would bet there would be a migration

[0] [https://software.intel.com/sites/default/files/managed/ee/4e...](https://software.intel.com/sites/default/files/managed/ee/4e/intel- xeon-phi-coprocessor-quick-start-developers-guide.pdf)

<comment><USER27> Here is the main problem IMO: To get reasonable performance (i.e. comparable to GPU), you need to make use of vector instructions as well. And it's still not easier to vectorize your x86 code rather than to just port it to CUDA. With CUDA you get two parallelisms done in one programming paradigm: Both vector and multiprocessor parallelism just gets mapped to the kernel scatter initialisation, and the kernel itself is just written as a scalar operations plus some index calculations. In terms of readability / ease of use it's [naive x86] > [CUDA] > [performance portable parallelized + vectorized x86]. An if you don't have the last version of x86, which almost noone has, then Xeon Phi will be just as much portation work as GPU, if not more (because Nvidia has a considerable lead in tooling support and has actually even gained more lead since Intel's Phi came out because Intel is just not very agile).

<comment><USER28> _And it 's still not easier to vectorize your x86 code rather than to just port it to CUDA._

This a million times! The SIMT programming model that the GPUs (except Intel's) support so well is way easier to program and parallelize for than the explicit SIMD that x86 requires.

PS. Are you the person that wrote gogui?

<comment><USER27> Nope, but I'm writing this:

[https://github.com/muellermichel/Hybrid- Fortran](https://github.com/muellermichel/Hybrid-Fortran)

</comment></comment></comment></comment><comment><USER29> Though I'm not that expert on this area, can Intel make H/W (FPGA) as S/W commodity by making FPGA design as open source or equivalent unlike other or existing vendors? If Intel can do this, I think in the long term, Intel can re-take their competence.

</comment><comment><USER30> > big plans to pull the mighty GPU down a few pegs in deep learning...will > offer a 100X reduction in training time compared to GPUs...loosely laid down > plans to eventually integrate...hesitant...on when

"Please don't get too far into the OpenCL/SPIR/etc software ecosystem, guys. We will totally lap these GPUs Real Soon Now. And the best part is that it will all be x86!"

I really wish Intel would produce a real GPU with fixed-function parts like the competition (and GDDR5 or whatever's next!). Their most attractive quality is their commitment to the open source world.

</comment><comment><USER31> > 100X reduction in training time compared to GPUs

Sounds great, when will it..

>Intel loosely laid down plans to eventually integrate the unique Nervana architecture with Xeons this week, but was hesitant to put a year stamp on when that might happen.

So their theoretical eventual integration is hypothetically 100x faster than current-gen GPUs?

If they can deliver, great news for deep learning - but this seems like a lot of speculation.</comment>


Yahoo is Number One in So Much More Than Search - <AUTHOR> http://www.nytimes.com/external/gigaom/2009/07/16/16gigaom-yahoos-number-ones-so-much-more-than-search-83599.html <comment><USER2> I honestly can't remember the last time I even used Yahoo. Am I alone in this or is this common ?

<comment><USER3> I use Yahoo finance many times daily, much more often than Google finance or other sites. Yahoo offers real-time update of broad market indices and delayed update of my favorite stocks on their main page, along with headlines and videos of the top business stories. It's a nice information packaging job.

Of course my broker supplies all that data and more, but they don't understand the complexities of corporate firewalls and http tunneling. Not to mention information stovepiping -- you know, one page for news, a separate page for quotes, another page for charts ... Yahoo integrates all that for free.

<comment><USER4> I used Yahoo finance before the market tanked (No, really before, I got out in time). I loved how easy it was to view up to 100 years of history of almost anything. Certainly helped me believe there was absolutely no reason my modest portfolio would grow much further on the stock market.

</comment></comment></comment><comment><USER5> Yahoo! has lost its reputation within geek circles. Google have not only put out really great products, they also go to great lengths to boast about their vastly superior technologies (BigTable, MapReduce), which gets them a lot of (well-deserved) geek love. Then there are Android and Chrome (with V8), both of which are pretty exciting to hackers. Also, Summer of Code, Code Jam etc. get Google a lot of street cred.

So, from a tech standpoint, Yahoo! isn't very exciting. They're still the same old portal website from the 90's. But for the average guy, Yahoo! still gives him what he needs, when he needs it. Non-tech people don't like to hop from one place to another.

I haven't been to any of Yahoo!'s services for over an year now, but that doesn't mean they're irrelevant.

<comment><USER6> I agree with you about the "not exciting" part, but I disagree about their reputation in geek circles - at least "real" geek circles and not just tech digerati that are obsessed only with what is changing and new and what drives traffic to their blog sites.

Yahoo pump out loads of tech stuff all the time - YUI, Hadoop, YSlow, YUI Compressor are all hugely respected and popular tools. They've write articles and published research that are almost definitive references for things like web site optimization. They have a boat load of web service APIs that are used all over the place and some of them are very innovative. It's worth just browsing around <http://developer.yahoo.com/> to see all the stuff they have going.

(No, I don't work for Yahoo or have any association.)

<comment><USER7> Don't forget YQL, the weather APIs, Pipes, and Flickr. I personally think BOSS was a bit mishandled, but it has really great potential, as does YAP/YOS.

Yahoo is one of the largest collection of professional web developers, and they take that seriously. Of course, their money is in Average Joe offerings like News and Frontpage.

I do work for them, and for a developer offering team too boot, so this is quite biased, of course ;)

</comment></comment></comment><comment><USER8> Yahoo has been my homepage since '96. I'm oldschool.

<comment><USER9> Homepage? I don't even have a homepage, just whatever tabs I had open last time.

<comment><USER10> Same here, it's either that or 1 blank tab if I closed all my tabs last time.

</comment></comment></comment><comment><USER11> Maybe I'm a little to obsessive with the original source thing... I was going to complain again about the link being nytimes.com instead of the original from gigaom.com

(From the guidelines: "Please submit the original source. If a blog post reports on something they found on another site, submit the latter." )

But then this really leapt out at me:

 _"Yahoo News is the No. 1 news and information site in the country, with more than 50 million monthly unique readers, ahead of The New York Times network's 45 million."_

Wow, that says as much about The New York Times as it does about Yahoo News. Does the broad readership of the NYT surprise anyone else?

The New York Times certainly was big 15 years ago and by some measures, the number one paper by reputation, but no where near this big. A few things that made me really surprised at 45 million:

1) Like all the other newspapers, it suddenly needs a new business model. Isn't everyone going to blogs, aggregators, and their niche sources for their news? I know part of this is the inability to monetize the online readership in the same way as their traditional readership, but still.

2) NYT is written at a fairly sophisticated level and its liberal slant doesn't really appeal to a lot of people. Its understandable obsession with its hometown, New York City, both draws, but also repels a lot of people.

3) Hey, what 'bout CNN, Fox News, MSNBC, etc? Those seem much more generally appealing than the NYT.

Thoughts?

<comment><USER12> > 2) NYT is written at a fairly sophisticated level and its liberal slant > doesn't really appeal to a lot of people. Its understandable obsession with > its hometown, New York City, both draws, but also repels a lot of people.

About half the country has voted Democrat in the last three Presidential elections. The Congress is now >50% Democrat as well.

Conservative voices are just the loudest and most annoying.

</comment></comment><comment><USER13> Yahoo! still sees itself as a "media company". Poor things.

<comment><USER14> Your patronising tone is a little silly. Newspapers may be dying out, but there will always be a place for "media companies". Few people are willing to depend on Twitter and the blogosphere for news, and Yahoo is one of the few companies that are successfully meeting the changing news needs.

<comment><USER13> I'm not necessarily against media companies such as newspapers. Actually, I hope at least a few really make it, or we're in trouble.

But Yahoo thinks they are a "media company" because they sell banners on Yahoo! Mail (...). And, frankly, I don't see them meeting the changing media needs...</comment></comment></comment>


Google Revamps to Fight Cheaters - <AUTHOR> http://online.wsj.com/article/SB10001424052748704150604576166390281747136.html?mod=WSJ_hp_mostpop_read

<comment><USER2> I think it is admirable that Google is able to look at the long term here.In the short term it is probably not in their best interest to make such a move.

They have a firmhold on the search market, and most of these "spam sites" use Google Adsense to generate their revenue. This means that while Google is improving their search results, and cutting off these spammers, they are also limiting their own revenue generating potential.

But by making this change they are probably going to decrease their revenue in the short term, but improve their search accuracy, and in the long term I am sure this will help them.

I'm wondering what will happen to firms like Demand Media though? Does anyone have any thoughts?</comment>


Nftables code merged, expected in Linux Kernel 3.13 - <AUTHOR> http://marc.info/?l=linux-netdev&m=138203780210029&w=4

<comment><AUTHOR> Nftables [0] comes to replace iptables, ip6tables, arptables and ebtables. It will introduce new common syntax for IPv4, IPv6 and ARP, and it has smaller kernel-mode code.

Its working process is somewhat similar to BPF (Berkeley Packet Filters): the rules are being compiled into byte-code at user-level and passed to the kernel (using the Netlink API) where it is being processed by a state machine.

[0] - [http://netfilter.org/projects/nftables/](http://netfilter.org/projects/nftables/)</comment>


Product Hunt moved from Ruby on Rails to Express/Node - <AUTHOR> Product Hunt is now based on Express/Node (source: Wappalyzer) Why ? <comment><USER2> It seems they are very react heavy, but they also render server side for when js is disabled. I'd imagine the backend isn't an overly complex app so it made sense to just use JS everywhere

</comment><comment><USER3> Wallmart has done it, it's for better performance because of blocking processes as far as I remember from an artical I did read in the past

<comment><AUTHOR> But was it really necessary to switch from Rails to Express/Node in Product Hunt's case ? That's why I'm kind of surprised.

<comment><USER4> I know the CTO of product hunt - he wouldn't switch the tech stack for no good reason. They already used node ~1-1.5 years ago for some parts of the site. I'd guess that they found out that it works good for them and they switch completely over to node, which also removes some rails legacy code they had.

</comment></comment></comment><comment><USER5> Not sure, but guessing that millions of tiny queries are best served with LibUV (Node's underlying asynchronous I/O library)?

</comment><comment><USER6> Rails has just one minor version change for the last half year. Ruby is stucked also. It's becoming boring in the rails world.

<comment><USER7> Rails has become stable or "complete" therefore it does not require so many updates and fixes.

On the other hand it also makes it not "cool" and, as you said yourself - boring.

Node on the other hand has a lots of movement and updates because it still misses some critical features like async/await.</comment></comment>


Homophobia in football, the fan's perspective - <AUTHOR> http://lgbt.forza.football <comment><AUTHOR> I think this is something FIFA definitely should take into account when deciding what countries that can host these tournaments.

Sadly, FIFA is known to have been corrupt when they voted on the 2018 and 2022 tournaments which might explain why these issues wasn't taken into account.

I hope FIFA now has control of their internal corruption so that they can focus on what football is really about, connecting people across borders.

</comment><comment><USER2> Seeing Russia at 47% and Qatar at only 14% is very sad to see. I work at Forza Football who made this survey, and during the survey we received app reviews like this one: "The application is perfect, too bad that ads to promote the LGBT movement appear " Makes you very sad!</comment>


Ask HN: Was The Day We Fight Back Really a Failure? - <AUTHOR>

Several popular HN articles are painting 2/11's Fight Back as a "failure".  However, between yesterday and today there were about 90k telephone calls and 180k emails to our states' representatives.
This seems like a lot to me.
Stop SOPA was labeled a "success" at 7 million emails, and Fight Back was a failure at 180k--
The question is this: Does anyone here know the lower limit threshold response necessary to achieve legislative "success"?  Is there no effect on the legislative process with 90k phone calls? <comment><USER2> I called and emailed my representatives (which included Diane Feinstein whom was swamped with calls). When I looked at the numbers this morning, I felt defeated. It saddened me to see below 100k phone calls. However, I don't think it was a "failure" nor do I think it was a victory. I think this is a good step forward for our voice on this issue. Hopefully our representatives get our message and in return support reigning in the NSA etc.

To be honest, I feel like we lost a while ago and my voice just echos with no response. I don't see social security being there when I retire (I'm 24), I don't see the NSA stopping its surveillance anytime soon, I don't see Americans coming together and dropping this bullshit banter between Left vs. Right and who is wrong.

I think the only way to cleanup this mess would be a revolution (who knows how much that would change). The US Gov't has made it clear that the citizens are now potential enemies and with the agenda they are currently pushing they are creating more enemies here in the states. I am ashamed of my government.

</comment><comment><USER3> One should measure success by the numbers but by the impact.

In my opinion, and that of a whole lot of other people, The Day We Fight Back didn't have the effect a lot of us hoped for. It is up for debate whether this means it 'failed' but it certainly didn't 'succeed'.

</comment><comment><USER4> My impression of the Day We Fight Back was that it was the day a bunch of tech sites put a small banner at the top of their page. And that was apparently it.

A single donation to a PAC would have accomplished more than all 90,000 of those phone calls and all 180,000 of those emails combined.

</comment><comment><USER5> This may be a bit too anecdotal, but I didn't hear about this campaign until a week before it happened. In my opinion, the organizers failed to consider awareness propagation time and as a result TDWFB felt rushed, sloppy, and silly. According to wiki the organizers announced this protest on January 10, 2014 for the day of February 11, 2014. We even saw posts on HN "wishing to add more features" to the Github projects that helped websites easily show their support.

I realize I'm sounding quite negative (sorry), but really this entire campaign should have given itself a bit more runway for prep and awareness. Just my two cents.

</comment><comment><USER6> It was a pathetic attempt. Fighting back against mass surveillance and social pressure is not done by loading third party Javascript and re-tweeting some against-the-system quotes. Emailing your representative? That will show them!

Next time, you go down the street. No sissy parade shit. Full-house attacks on anything against your ideals and rights. But guess what? Nobody will. Or at least not the numbers for it to have effect. Why, you ask? You have been weakened systematically. Uproar is bad. Instead, have some Javascript banner.

Pathetic indeed.</comment>


Mobile Shopping needs to be an Experience - <AUTHOR> http://uservod.com/blog/the-mobile-shopping-experience-why-it-needs-to-be-an-experience/

<comment><USER2> I'm not sure it's the sense that mobile shopping needs to be an experience, but rather marketing IS an experience, it's bombarding your senses with an attempt to make you buy something. If you're looking at your phone for products what do you care more about, bright popping pictures, or whitepapers of details?</comment>


Paris Attackers Coordinated via Unencrypted SMS - <AUTHOR> https://www.techdirt.com/articles/20151118/08474732854/after-endless-demonization-encryption-police-find-paris-attackers-coordinated-via-unencrypted-sms.shtml <comment><USER2> Before we inevitably begin discussing the recent surveillance law, it's worth noting that data collection programs wouldn't have helped, here. I know of no real-time SMS monitoring system that can accurately detect coordinated attacks.

</comment><comment><USER3> seems to be down from here. cached version

[https://webcache.googleusercontent.com/search?q=cache:xaUrkJ...](https://webcache.googleusercontent.com/search?q=cache:xaUrkJBdzV0J:https://www.techdirt.com/articles/20151118/08474732854/after- endless-demonization-encryption-police-find-paris-attackers-coordinated-via- unencrypted-sms.shtml)</comment>


Work in Startups - <AUTHOR> http://workinstartups.com/

<comment><USER2> This gives opportunity to a lot of individuals who wants to share their skills and talent on startups company.</comment>


Knight TV resurrection - <AUTHOR> http://pdp-6.net/knight-tv/knight-tv.html <comment><USER2> I implemented a clone of the Knight TV system in 1979 for the MIT Plasma Fusion Center, where I was Director of Computing. I was also building Lisp Machines at the AI Lab at the time.

<comment><USER3> That's interesting. I was asking MMcM about the Plasma TV yesterday.

It's running on MINITS right? I have been trying to assemble a MINITS but there has been some problem with missing symbols and whatnot.

But maybe it'll work eventually, and then we'll have another nice TV system with SUPDUP graphics and Chaosnet connectivity.

</comment></comment><comment><USER3> Greenblatt's Mac Hack VI with chessboard.

[http://lars.nocrew.org/its/ocm2.png](http://lars.nocrew.org/its/ocm2.png)

</comment><comment><USER4> Author here. AMA!

<comment><USER3> Co-worker here. Doing the PDP-10 side.

</comment></comment><comment><USER5> This is awesome!</comment>


Ask HN: What is the most ergonomic computer setup? - <AUTHOR> <comment><USER2> Ergonomics: an applied science concerned with designing and arranging things people use so that the people and things interact most efficiently and safely (Merriam Webster).

The most ergonomic setup would optimize efficiency and safety. Both of those depend on the kind of work and the person. So there's no "most ergonomic setup," just individual setups intended to optimize either efficiency or safety, or both. The question is analogous to asking "What is the best food?"</comment>


Linux Kernel TCP Implementation Vulnerable to Denial of Service - <AUTHOR> https://www.kb.cert.org/vuls/id/962459 <comment><USER2> Does this happen prior to netfilter? If not,

        iptables -t raw -I PREROUTING -f -j DROP</comment>


Mozilla Announces Deal to Bring Firefox Reality to HTC VIVE Devices - <AUTHOR> https://blog.mozilla.org/blog/2019/01/08/mozilla-announces-deal-to-bring-firefox-reality-to-htc-vive-devices/ <comment><USER2> (this announcement is most likely about mobile vr headsets, not the PC side)

I'm pleased about this because -

1- Firefox Reality is actually "Servo" ie the Rust based browser Mozilla has been developing for years. edit - UGGGH this may not ship with Servo enabled :(

2- This is a stamp of approval from both Firefox and HTC that Servo is ready for consumers at least for this use case (which is very demanding low latency graphics!)

3- Actual Firefox means far higher standards of privacy and integrity then some cancerous Chromium embedded scenario.

I'm concerned enough to think twice about buying anything from Vive mobile because -

1- Their Vive PC software is awful shovelware.

2- It's not clear what the OS environment around the browser would be in an HTC branded mobile headset. If it's a clean version of Android that can be hacked on and replaced then we have something.

3- WebXR/WebVR still has no useful way to actually browse the real web, there is no "HTMLTexture" to allow you to say even look at Wikipedia through a portal. As a result you are trapped in basically WebXR Demo hell...

<comment><USER3> Firefox Reality is the brand we're using for the suite of browser products across VR and AR devices.

Today, Firefox Reality is available for standalone VR devices (like the HTC Vive Focus) and is a native Java application that talks to the GeckoView library, which is made up of components from the mobile version of Gecko, the Firefox web engine.

Firefox Reality for desktop will similarly be based off of the Firefox Desktop product pieces.

Note that there's a bunch of "Servo inside" \- from small Rust components to the Quantum work including the new CSS style system to the forthcoming WebRender component.

I don't have anything to announce today about a Firefox Reality-branded browser based on top of Servo.

<comment><USER4> Probably worth mentioning, Firefox VR is also going targeting Magic Leap: [https://blog.mozvr.com/a-new-browser-for-magic- leap/](https://blog.mozvr.com/a-new-browser-for-magic-leap/)

IMHO the strategy of unlocking a lot of VR and AR content via a browser makes a lot of sense. The ongoing Rustification of Firefox, things like Web GL, WASM, etc. It all makes sense for VR/AR applications to build on that. Solving the empty room problem where there is no meaningful content or where all the interesting content is in somebody else's walled garden is a key challenge.

VR requires a dedicated UX and I can imagine independent hardware vendors are maybe not so eager to e.g. rely on Google for providing them with that UX. Also, Firefox seems to be leading here rather than following.

<comment><USER5> Shameless plug, but for WebXR on Magic Leap github.com/webmixedreality/exokit has been the go-to for a while.

I wrote it because I found browsers too slow to move on features like html to texture (powered by webrender) and multi-site blending, which become quite manageable if the browser core is written in JavaScript.

</comment></comment></comment></comment><comment><USER6> Smart move on Mozilla's part to start working on VR. The desktop browser space has been saturated for so long, but making a bet on a new space might help them get a toehold on a whole new world.

This doesn't mean they are not focused on desktop, but strategically this is a solid bed that may or may not pay off, but will be key for long-term survival.

EDIT: plus having commercial sponsors for the eventual Servo-in-VR (as noted elsewhere, not shipping yet) will be key to getting Servo itself ready for production.

EDIT 2: Can we get material properties on HTML elements please? I want <img>s with bump-mapping and specular highlights. :)

<comment><USER7> While you're correct in your assessment, and I hope this comes to fruition, this same paragraph could have been written about Firefox OS. That said, I'm not a detractor, I wish Firefox OS had _also_ worked out. And I'm certainly very glad that Mozilla is still willing to approach new ideas and markets, even after getting burnt.

<comment><USER8> The FirefoxOS legacy is alive in KaiOS which has 50M+ users now and is growing. Indeed a very poor decision from Mozilla's leadership to kill the effort too soon.

<comment><USER9> I have KaiOS on a Nokia phone that I intended to use for email and 4g hotspot. I didn't expect much but it literally a POS, super slow, impossible to customize (i.e. hotspot quick launch), and no apps in the marketplace. It would be more usable with a pre symbian OS in my opinion. People that rave about KaiOS I figure are like that those that endless recommend SICP or 'Clean Code' as the book of gods and probably never read it.

</comment></comment></comment></comment><comment> loa-in-backup Firefox from what I gathered will be used as the de facto browser in in-VR web browsing. If you read the VIVE promotion article on VIVE homepage you'd know that they are planning a kind of VR metaverse as an interface to the games you play - instead of picking an option from a flat surface you'll "walk" into the app/game. But of course this doesn't change the facts that web is flat so any in-app or in-game web will be displayed in some fashion using the Firefox Reality engine.

<comment><USER10> Second Life has browsers in-world, and they're Chrome subprocesses. These allow you to put any web page on a surface in the 3D world.

Doing a "VR metaverse" is a big job. There are about a half dozen of them now, and they all have tiny user counts.

</comment></comment><comment><USER11> Cool, going to try this on my Daydream setup right now.

Chrome on Daydream presents a super simplified UI. I'd love to be able to open a few tabs, move them around spatially, adjust the size, etc.

There is so much potential for improving browsing experiences in VR.

<comment><USER12> What device are you using? I'm using a Pixel 2 XL and had to sideload it because the Play Store shows it as incompatible. It is broken, though, can't type more than one letter. There's a ton of promise though. I haven't found a _good_ VR browser yet.

Somewhat considering actually working on the project, I know they're on Github but don't know if they are looking for help.

<comment><USER11> Pixel 2 XL also

What else have you tried?

<comment><USER12> Just that. It appears that they are not supporting Daydream View or Google Cardboard headsets at this time. Just standalone VR devices.

</comment></comment></comment></comment><comment><USER13> I don't know. They maybe hope they'll be first on the next big thing which they think is VR. But who knows if VR is going to be big, who knows if it needs a browser and what keeps chrome from eating the cake anyways after Firefox has scoped out the territory.

I think this is a very risky bet unless they make net money on this which they can funnel into more promising projects.

<comment><AUTHOR> You and I have very different definitions of risky :)

Worst case, the effort of a relatively small team has been wasted, and Gecko and Servo will have received a few improvements as a result of their work. Best case, VR makes it big and Firefox is its go-to browser.

Then consider the case where they're not in the VR space early. Best case, they've saved a relatively small team's effort. Worst case, VR makes it big and Firefox is as marginally relevant as it is now on mobile.

<comment><USER13> I don't believe that being early as a browser gives you that much of an advantage in such an unexplored space. Differences between browsers in this space will be big for a while and people will switch back and forth.

Maybe the cost of this project for Mozilla is so small that it doesn't matter, but I think it isn't

Edit: also I said that the bet itself is risky, not that it's putting Mozilla's existence in jeopardy

</comment></comment></comment><comment><USER14> Is this going to be a text-free browser?

Trying to display/read small text in VR really shows up the limitations of current tech.

</comment><comment><AUTHOR> Not quite sure what this means - is Firefox Reality going to be the default browser on the VIVE?

<comment><USER15> Yes. It will be the pre-installed default browser on Vive devices.

<comment><USER16> I still don't understand what this means. It's like saying Firefox will be the default browser of Dell monitors. The HTC Vive is a display.

Unless they're referring to HTC's software suite (Viveport I think it's called), which very few people use because it's some of the worst software I've ever seen. For example, it somehow managed to jam the entire 2.4GHz and 5GHz bands in my apartment while it was running. Not even sure how it's possible to do that by accident.

<comment><USER3> On desktop, it means that if the user chooses to install the Viveport suite, that home experience and the suite will provide Firefox Reality as the default browser.

For all-in-one devices, Firefox Reality will be preinstalled and the default browser.

</comment></comment></comment></comment><comment><USER10> Mozilla needs to focus on their main product. I finally "upgraded" Firefox on an old 4 GB Windows 7 machine. It's bigger, slower, and crashes every time it exits.

<comment><USER17> Hey i am using Windows 7 and Firefox as daily 'driver' here.the lastest firefox is rocking here as i can tell.

</comment></comment><comment><USER18> I don't have a clue about VR stuff, and this is the first time I'm hearing about "Firefox Reality". Why do you need a special browser? What's different about this one?

<comment><USER19> A parallelizable layout engine should make it a lot easier to get the kind of framerate needed for vr. Mozilla have used this as a test-case for Servo. I've previously criticized them for it as an extreme niche market and a diversion from mainstream use cases, but happy to swallow my words if it goes well.

<comment><USER20> I was indeed wondering about how niche this was. Are there any reliable usage statistics for, say, how many people currently use a VR browser daily?

(And to forestall the inevitable comment, I understand the _potential_ of VR, and have since the 1990s VR wave. What I'm wondering about is actual sustained (that is, non-novelty) use.)

<comment><USER21> It's rather chicken and egg at the moment but if you believe in the web and you think VR is an important new medium it's important that the web doesn't get left out of the party.

Something has to be the connecting tissue of the multiverse and we'd better hope it's not Facebook or something equally proprietary.

<comment><USER20> Sorry if I wasn't clear, but the theory that "VR is an important new medium" is exactly what I wanted empirical data to test. I was not asking about potential; I was asking about current sustained use.

<comment><USER21> Yeah. I was trying in a roundabout way to say "Current usage is probably low but this is why I think it's still an important strategic move". It's definitely about having faith in VR as a medium rather than "oh wow. Look how successful VR is already!" \- because it isn't.

<comment><USER20> Thanks, but when I said I was trying to forestall the inevitable comment about potential, it was exactly that sort of faith-based reply I was hoping to avoid.

<comment><USER21> I'm finding it hard to imagine what kind of evidence would be of use in a scenario like this. Some kind of Gartner hand-wavey focus-group thing?

<comment><USER20> You don't have to imagine. I gave a clear example: DAU statistics for a VR browser. Or you could look at basically any successful technology, look at it on the way up, and ask what the early signs were that it was seeing significant use beyond novelty purchase. (That is in Moore's model getting out of the "innovator/techie" market segment and into pragmatic use.)

For literally my entire adult life people have been talking about VR as the coming big thing. I'm 100% over hearing about that, especially in response to very specific questions about actual use.

</comment></comment></comment></comment></comment></comment></comment></comment></comment><comment><USER22> But, why?

<comment><USER23> I'm going to offer a different explanation, but first, the standard one: Mozilla doesn't want to miss a paradigm shift, especially one where the only players currently in it are very proprietary. They learned their lesson with mobile.

One thing that many of us, myself included, are very excited about regarding the Servo/WebRender/Quantum projects is the ability for a fast, parallel web rendering engine to open new possibilities, such as how V8's JIT significantly pushed the envelope of what was possible. Now that JavaScript is acceptably fast, and we have WebAssembly for cases where control over memory layout is necessary, network speeds are the bottleneck of most applications. WebRender's big concept of rendering the entire web at "maximum FPS" is pretty awesome, but it's not pushing the envelope by itself, since framework and application developers have been treating "minimize DOM manipulation" as an important optimization. There's clearly potential with WebRender, but if a majority of used webpages are already rendering at an adequate framerate due to framework- level optimizations (and prior browser optimizations like Electrolysis and Stylo), it may be viewed as superfluous, despite potentially huge advantages.

I think the research in this direction is beneficial, and as a result, I'd like the Servo project to be allowed to continue developing cool stuff. As Servo won't replace Gecko in Firefox, it needs to try more challenging tasks to continue to push its envelope. WebRender has a ton of potential in the WebVR space, since a Web Components-based VR system would rely heavily on a performant DOM. Such a project would push Servo to continue development in preparation for a more functional future web.

<comment><USER24> WR doesn't help much with DOM update related issues, WR comes into play after that, when it's pixel time. WR is pushing the envelope for creative (ab)use of DOM elements as graphics primitives, like in that spinning cubes demo :) but on a more serious note, leveraging the GPU makes a lot of sense because it's been sitting there mostly unused (only used for layer compositing) when browsing, and it's more efficient at graphics operations.

That said, _Servo itself_ has a fresh DOM implementation and I think there was work on making it really fast.

<comment><USER23> In retrospect, you're correct. I should have said "WR reduces the cost of the paint/composite cycle".

</comment></comment></comment></comment><comment><USER25> Why would they deal with HTC and not just Steam in general.

I have had Vive since day 1. I am never touching anything HTC again. I'm happy enough with the device and technology I have- but the HTC software is horrendous and there's no place for it. I've heard just horror story after horror story of HTC customer service / repair, wanting $200 for a new controller etc.

Vive Pro is a complete joke, in price.

HTC hasn't done anything positive since the release of the original vive.

<comment><USER26> You might notice HTC Vive seems to be distancing themselves from Steam, including focusing pretty much entirely on their own Viveport platform. Though I'm not sure why, that seems to be the mentality behind their current direction.

<comment><USER27> To non-gamers, Steam looks kinda wacky - there's crazy popups, really intense graphics, nonstandard UIs, and it has to update most times it launches. It's also blocked on lots of networks - businesses, schools, etc. I personally love Steam and its craziness, but that's the main reason - HTC wants Vive to become mainstream and to capitalize on other uses for VR besides gaming.</comment></comment></comment>


Ask HN: What does $2M dollars get you for a startup? - <AUTHOR> I saw that the Beme social media "app?" took 2 million to start up. I was just thinking, (maybe I'm simplifying the application) if it just records by triggering the proximity-sensor, and say a developer is paid $60,000 which 2 million gets you 33 $60,000.00
Using AWS for storage, maybe press release, etc...
What does 2 million get you? <comment><USER2> they released on ios, android, tablets. Some kind of SEO probably, reaching out to bloggers, etc. Also, that would need to last 2-3 years probably.</comment>


Cable Robot Simulator [video] - <AUTHOR> https://www.youtube.com/watch?v=cJCsomGwdk0 <comment><USER2> This seems like a poor fit for VR motion simulation - actual movement through space is generally unnecessary, you just need to gimbal the platform to simulate accelerations. Actual linear acceleration is of limited value in simulation because you can't maintain that acceleration indefinitely - you run out of room and have to apply an opposite acceleration, which can conflict with the simulation needs.

On the other hand this looks more useful for something like movie making, to throw actors around in front of a greenscreen.

<comment><USER3> I've been working with full motion simulators for the past two years (I even rode that simulator last week at MPI) and I must say that this is plain wrong. This is actually a great fit for VR simulation (see below):

> Actual linear acceleration is of limited value in simulation because...

Linear acceleration is immensely useful for sudden accelerations. Image a sudden linear acceleration (e.g. a racing car accelerating). You cannot recreate this acceleration by suddenly rotating. The angular accelerations would ruin the experience. Rather, you make a linear movement, and THEN you rotate the simulator (if you need to sustain the acceleration).

> you run out of room and have to apply an opposite acceleration, which can > conflict with the simulation needs.

wrong again. If you move the simulator at slow speed, you can actually come back to the optimal position and the subject does not notice it (washout filter [1])

[1] [https://en.wikipedia.org/wiki/Motion_simulator#Implementatio...](https://en.wikipedia.org/wiki/Motion_simulator#Implementation_using_washout_filters)

<comment><USER4> > _Rather, you make a linear movement, and THEN you rotate the simulator (if > you need to sustain the acceleration)._

Am I understanding this wrong or are you saying long accelerations can be achieved by accelerating, turn, accelerating, .... etc? Wouldn't the person wearing VR headset feel the turn?

<comment><USER5> Another way of saying this: we're good at sensing the delta of acceleration, not the absolute acceleration. Also, we tend not to notice small DC values of either acceleration or rotation, so you can manipulate the user's perception.

Someone published a similar hack for full-room VR, showing you can 'bend' someone's trajectory, to create the false sense that they're walking straight when in fact they're curving. In a large enough space you could simulate an infinite hallway (by having the user walk in a circle).

Sorry, I tried but can't dig up the link right now... but it's out there somewhere.

<comment><USER6> [http://cb.nowan.net/blog/2008/12/02/redirected-walking- playi...](http://cb.nowan.net/blog/2008/12/02/redirected-walking-playing-with- your-perceptions-limits/)

I think you were searching for that. It seems it also comes from the Max Plank institute.

<comment><USER5> That's the one. YourGoogleFu >> myGoogleFu.

</comment></comment></comment></comment></comment></comment><comment><USER7> If you like this, lookup "6DOF platform" \- there's an active scene of people who tinker with home-made motion platforms, primarily for simulator games. Some _very_ impressive stuff there, e.g. [http://motionsim.blogspot.ch](http://motionsim.blogspot.ch)

<comment><USER8> I would love to see one of these platforms that's capable enough to feel right when playing Descent.

[0] [https://youtu.be/rrUF8Dz84rE?t=329](https://youtu.be/rrUF8Dz84rE?t=329)

</comment></comment><comment><USER9> The concern I have is that failures in the control software or mechanical failure would have grave consequences. Maybe that's a solved problem and the cable capstans have mechanical arrestors that kick in, etc but the setup looks inherently unstable unless under active computer control (due largely to the crossed cable attach points).

This is quite a bit different than a more typical hydraulic setup where an unpowered/uncommanded state simply leads to the platform settling in a stable configuration.

Having said that: I still want one. :D

<comment><USER10> Around 25 seconds into the video you can see how thick the cable is. I would guess probably an inch thick. With regular wire rope, the breaking strength of that diameter would be in the neighborhood of 80,000lbs[1] with the safe load strength closer to 16,000lbs. I'm guessing with regular maintenance and checking, it would be exceedingly rare to have a mechanical failure.

Additionally, the occupant is harnessed into the chair, bolted into what is essentially a spherical roll cage. Even with failure, I'm guessing there would be a crash but no serious injuries.

[1] - [http://www.engineeringtoolbox.com/wire-rope-strength- d_1518....](http://www.engineeringtoolbox.com/wire-rope-strength-d_1518.html)

<comment><USER9> It's more about how the cable is managed in terms of slack, keeping the cage from flipping over, etc. I agree with you, the cable itself is an unlikely point of failure.

</comment></comment></comment><comment><USER11> Cable Robots are generally a very interesting technology. I wrote a bit about them (eg. for 3D printing, as a crane, etc) a while back: [http://www.hizook.com/blog/2014/07/15/stadium- sized-3d-print...](http://www.hizook.com/blog/2014/07/15/stadium- sized-3d-printers-using-winch-robots-aka-cable-robots-or-rope-robots)

</comment><comment><USER12> I purchased a commercial motion simulator as part of research for a vr tech we're working on and while you can immediately see the potential, it's not quite there yet.

Some resources to share

If you buy a simulator - offsetting to the chair with the rift is a work in progress [https://forums.oculus.com/viewtopic.php?t=7933](https://forums.oculus.com/viewtopic.php?t=7933) \- and not currently supported in the Oculus SDK. I can't find the thread but Oculus has said that's a "future tech" goal.

Excellent thread on currently available options / configurations - [https://forums.oculus.com/viewtopic.php?t=1673](https://forums.oculus.com/viewtopic.php?t=1673)

A great resource with a community of enthusiasts that have tried nearly every sim on the market (racing specific, but still the best) is here - [http://www.isrtv.com/forums/](http://www.isrtv.com/forums/)

</comment><comment><USER13> Multiple computer-controlled winch systems have been used for movie special effects for years. Here's a 2010 system test for a flying taxi, which shows the controller as well as the taxi.[1] Disney's Aladdin at Tuacahn Amphitheater has a magic carpet which flies out over the audience with two performers on it. That's done with four computer-controlled winches.

The robot simulator looks like it's using the same winches Kirby's AFX uses for theatrical work. That's not surprising; few companies make high speed precision-controllable winches rated for human safety.

[1] [https://www.youtube.com/watch?v=VkjM9leyQPc](https://www.youtube.com/watch?v=VkjM9leyQPc)

</comment><comment><USER14> Somehow it reminds me of this: [http://www.youtube.com/watch?v=G-N3XDc-3QQ](http://www.youtube.com/watch?v=G-N3XDc-3QQ)

</comment><comment><USER15> Looks a lot like University of Iowa's National Advanced Driving Simulator NADS-1 [1]. NADS-1 has an entire dome on tracks, hydraulics and a bunch of other cool stuff going on. I guess it's used mostly for research.

[1] [https://www.nads-sc.uiowa.edu/sim_nads1.php](https://www.nads- sc.uiowa.edu/sim_nads1.php)

</comment><comment><USER16> Here's the press release from the Max Planck Institute:

[http://www.ipa.fraunhofer.de/en/cable- driven_parallel_robots...](http://www.ipa.fraunhofer.de/en/cable- driven_parallel_robots.html)

</comment><comment><USER17> I didn't see any Yaw motion in this video. (Rotation about the Y axis.)

Does it support it? Is it not necessary for the motions they're trying to induce? Would you have to make the seat rotate on the platform?

<comment><USER18> I believe with that cable configuration, Yaw motion isn't really possible. I'm sure it would help with motion programming with the VR, but perhaps true Yaw wouldn't be entirely necessary. Good questions though.

For your last question, I do think that's the way they would need to add Yaw if desired. Otherwise more cables and/or a different configuration would be needed.

As an example, check out the robocrane design from NIST: [http://www.nist.gov/el/isd/gantry-2.cfm](http://www.nist.gov/el/isd/gantry-2.cfm)

</comment></comment><comment><USER19> I want one. I'll replace the walls/stairs in my house with this and just zoom exactly where I need to go. Think of the space savings; I could mount my computer 6" from the ceiling!

</comment><comment><USER20> This would actually be dope for flight training. As a student pilot there are some things like unusual attitudes training, that rely on motion to fool the senses.

</comment><comment><USER21> I'd like to know more about the winches, since they aren't made for constant use. They have planetary gears with very high gear ratios, which can overheat if used too long. I believe many linear actuators (with high gear ratios, used to lift beds/tvs) have ~20% duty cycle (use for 2 minutes requires 8 minutes of cool down).

</comment><comment><USER22> it looks really cool, however with cables wouldn't this limit the amount of "instant Gs" you can generate? it seems motion simulators based on pistons would be able to simulate better things like driving on a bumpy road and sudden changes of direction as there isn't the slack of the cable to take into account or the inertia of a large suspended mass (cables are heavy too)

Still given enough space and light enough cables that support enough tension (to minimize slack) it seems this could be scaled up very cost effectively compared to other technologies to enable longer sustained accelerations

<comment><USER23> > slack

why cables are loaded at 1.5tons. Electric motors have incredible torque and those looked like some honking big motors.

</comment></comment><comment><USER24> Hopefully not a completely ridiculous question, is there any chance cable technology like this could be used as public transportation in the future similar to in Pixar's Robots?

<comment><USER25> Come visit beautiful San Francisco! [https://en.wikipedia.org/wiki/San_Francisco_cable_car_system](https://en.wikipedia.org/wiki/San_Francisco_cable_car_system)

I think the wires would get in each other's way if you had pods in the same volume.

<comment><USER24> Ah of course, that was silly of me. I guess I meant suspended cable travel.

<comment><USER26> Sure: [https://en.wikipedia.org/wiki/Ski_lift](https://en.wikipedia.org/wiki/Ski_lift) or [https://en.wikipedia.org/wiki/Gondola_lift](https://en.wikipedia.org/wiki/Gondola_lift)

<comment><USER24> You are right! But it is now apparent that the question I had in mind is completely different from the one I actually asked. nbadg caught on to what I meant which was more along the lines of: could suspended cable transportation be a feasible mode of public transportation in cities?

<comment><USER27> Yes. The biggest benefit is very low ground footprint and highly predictable traffic flow. A few articles discuss it as a reasonable form of mass transit.

[http://urbanland.uli.org/infrastructure-transit/public- trans...](http://urbanland.uli.org/infrastructure-transit/public-transit- takes-sky-cable-car-gondola/)

[http://www.seattletimes.com/seattle-news/commute-by- gondola-...](http://www.seattletimes.com/seattle-news/commute-by-gondola- kirkland-may-be-up-for-the-idea/)

<comment><USER24> This is really cool. Thank you for sharing!

</comment></comment></comment></comment></comment></comment></comment><comment><USER28> Cool, it's the same concept as the NFL skycam! I wonder if there are any practical uses for it, say military or civilian training?

<comment><USER29> Do you get sick from driving a car or riding a bus though? Because I guess you could make the experience to be exactly like that. It's supposed to feel like a normal, natural motion.

</comment></comment><comment><USER30> Very fascinating, but I also feel left out. I get sick just by riding a Ferris wheel.

</comment><comment><USER31> This could make for an interesting Disney ride!

<comment><USER4> Anyone knows scalable it would be? To start, everyone would need a VR headset, not that amusement parks are short on cash

<comment><USER32> with those same cables, they would probably be able to carry hundreds of people at the same time... just make the platform a bit bigger and maybe upgrade the winches.

</comment></comment></comment><comment><USER33> looks like we are getting close to VR with some (unreal) experience

</comment><comment><USER34> It's a holodeck!

</comment><comment><USER35> All well and good with the standard little girl model, but what does this look like with ten fat disney tourists? What would the machinery look like to swing 10 or 50 times the weight? (Same question if this is to be used for flight simulators.) Is there a point at which linear hydraulic actuators are easier?

<comment><USER36> > All well and good with the standard little girl model

"The software developer Maria Lächele from the 8-person developers team at the Max-Planck Institute is seen amongst others as a passenger of the robot."

<comment><USER35> So? She could be the chief engineer, but in the video she is the model, the stand-in, the demonstration person. Call it sexist if you want, but it is standard marketing practice to use young women/girls in promotional vids. Where movement is involved, models with long hair are also preferred as it shows the motion, something that again tends towards young girls. Smaller people also make products seem larger. Where the product involves a seat (cars, air travel etc) a really tiny person makes things look much roomier and more comfortable. Where the action is recorded at a distance people with clear skin but darker lips and larger eyes are more expressive, again trending towards females. Where there is any sort of perceived physical danger you pick models that, rightly or wrongly, are perceived delicate. Use a 250lb Army grunt with massive muscles (of any sex) and viewers might think they also need to be tough to enjoy the product. So this vid is following standard marketing practices in selecting a very standard model.

My point still stands. What would rigging for several non-small people on this thing involve? Looking at the angles on those cables, a 10-fold increase in payload might need a 20 or 30-fold increase in cable strength ... adding weight ... needing stronger cables.

After watching it a couple times more, I'm also interested in how it would handle asymmetric loads. How much before it tips into a cats cradle of wire? Is there any feedback into the system to detect such situations?</comment></comment></comment>


Picking tech for your startup - <AUTHOR> http://blog.opbeat.com/2013/04/26/picking-tech-for-your-startup/

<comment><USER2> I've never understood this "don't obsess about performance at the start" rule.

Is it really that much of a problem spending a few extra hours prototyping different solutions and factoring in performance from the start. Why wouldn't I pick Vertx over Play if it 2-3x faster with similar productivity. That's money not spend on VPSs that can be used for marketing.

Likewise why wouldn't I look at a binary serialization format if it means my iPhone app starts up 5 seconds quicker. Users decide whether or not your app is worth keeping in those few seconds of starting the app. Why not spend time trying to keep them ?

Or as great as PostgreSQL is for single server deployment why wouldn't I look at something easier to manage, trivial to scale and a more agile schema like a DynamoDB, MongoHQ, Cassandra. Especially if I am a single person startup.

I understand about premature optimisation but it seems to make a lot more sense to properly consider your architecture from the start rather than deferring it. Or did we all forget Digg v4 ?

<comment><USER3> Simply because it's never a case of spending "a few extra hours" when learning and evaluating a new tool. There are many "unseen" hours in troubleshooting, monkey patching, and re-evaluation. These are real costs that can be avoided by defaulting to known best practices (at the expense of ultimate performance).

<comment><USER4> Worked with friend on a new idea (while also trying new tech across the board), ended up in this: <http://simondlr.com/post/26360955465/dynamodb-is- awesome-but> When we got traction, we wanted to change databases, but because it was just a weekend hack no one wanted to spend time doing it and eventually killed the app. It was our own doing of course (choosing new tech to work with). But yes. Work with what you know when testing ideas, unless you also want to play with new tech.

</comment></comment></comment><comment><USER5> _When you've got an idea, and a team, and you're raring to get started on hacking for a potential startup, a question that often comes up is, "well, what technology should we use?" (hopefully you've answered the necessary, "what problem are we solving and how are going to solve it" questions first)._

And hopefully, long before that, you've answered "Who cares about this?", "How will I make money?", "Is there actually a big enough market?", and so on...

<comment><USER6> Meh - I'd rather make something that's awesome for myself, then figure out marketing it so other people can benefit as well. I believe that thinking about a market and how to make money first is the wrong avenue to go down if you actually want to care about a product you make.

If I want it for myself, I'll make it. If I think other people will want it, I'll find a way to get it there - either by selling or giving it away. Maybe that makes me a bad entrepreneur, but it means I have more fun in the things I build.

<comment><USER7> You just described the difference between a project and a business. All businesses are projects, but not all projects are businesses. There is nothing wrong with creating projects for the sake of creating projects. But if you are trying to create a business, market and marketing come first and you should consider them way before writing your first line of code.

<comment><USER6> I still disagree. Just because something isn't business viable doesn't mean you shouldn't do it. You should pretty much always do it - then decide if there's a market/think about how to market for it.

A business for the sake of just making a business feels wrong. A business for the sake of making an awesome product feels right.

<comment><USER8> He meant that if your goal is to _make money with a business_ , then you _should_ start with businessy stuff like figuring out if there's a market for what you want to build.

You're free to start a business by building the product of your dreams, but no matter how much you _personally_ like it, there's no guarantee people will pay for it. In other words, if you _want money_ , but start with building a product, you're likely to have a bad time.

But if you just want to build an awesome product, and don't care about whether you make any money with it, then there's no problem.

</comment></comment></comment></comment></comment><comment><USER9> _Ultimately, the most important thing to keep in mind is that your "stack" shouldn't define you._

While I agree with this advice in general, there are cases in which it is advantageous to allow your stack to define you. For example, Jane Street Capital appears to have established themselves as _the_ place to work if you are interested in both functional programming and finance, greatly aiding their recruiting efforts.

Granted, they didn't start out using OCaml; their founders made a switch after the firm had already established itself. However, I wouldn't be surprised if a startup (where the founders have a specific skillset/background) could exploit a similar first-mover advantage.

<comment><USER10> Not to mention that without a lot of ACTIVE effort to make the stack NOT define you it will. The stack will strongly influence who you hire and who you hire will easily come to define you. A bunch of C/C++/Java/Rust/Go folks are going to have a different value set than a bunch of PHP/Ruby/Perl guys. Not to say their isn't overlap in people or ideas, but people who are attracted to similar technologies are often more self-similar compared to people attracted to other technologies. Depending on the problem space a given technology and the mind-sets that come with it by default may be or less helpful.

<comment><USER9> That may be more of a case of the stack reflecting you than defining you. The distinction I'm drawing is whether you allow external perceptions to influence your decision.

<comment><USER10> To try to be more clear, I'll make up an example. Say you as a founder are a Ruby guy, perhaps you value being able to rapid prototype, throw away code, iterate quickly.

Maybe your product needs to be very high performance so you hire a team of C programmers. What you might find is that their idea of iterating quickly is on a different timescale than yours, due to the low-level and unforgiving nature of C perhaps your team tends to be pedantic (by your standards) or correctness/detail oriented (by theirs).

In this situation _your team_ , influenced by _your technology_ choice, is bringing a different value set than your own to the table. BUT this is not (necessarily) a bad thing, if C really is be best tech for your product your team can strive merge both your and their values; however, my point is without you actively trying to do that, your tech just defined the value set, not _you_. (In this case it also _possible_ that maybe Rust or Go would have been better tech, but that is a different conversation)

</comment></comment></comment></comment><comment><USER11> Technology is not important for your startup. Choose whatever you know. Then go from there and fix it when you scale because you've found a market.

About time to market: From my experience (and Reinertsen [1]) time to market is not lost during programming but during the decision phase. Optimize your decision speed (reduce meetings, don't postpone decisions, have a clear decider, know what to decide and what not, ...), not your technology stack if you want to beat others to market.

I did have an offer for some years: Anyone beating a Java (the COBOL of the internet world) stack 5x to market, I pay him $1000. No one did take it yet.

One of my slide deck on the topic:

[http://www.slideshare.net/Stephan.Schmidt/what-everyone- shou...](http://www.slideshare.net/Stephan.Schmidt/what-everyone-should-know- about-time-to-market)

[1] "Developing Products in Half the Time: New Rules, New Tools" Preston G. Smith, Donald G. Reinertsen

<comment><USER12> I'd add one thing, though about an optimized stack for a startup with a lot of unknowns. I've attended a couple hackathons and such and seeing how much traction and how quick small teams are able to piece stuff together with a JavaScript/Node.JS/MongoDB stack is pretty staggering. Not sure if it scales far down the road or what issues people will run into, but having a single language across the entire stack seems to have some productivity benefits. Especially when you have a developer that has to work in two or three of the layers (UI/Server/DB) all at once...

There was some VC around here who talked about the advantage that startups have because they can choose some of these tools to quickly develop in and such...

<comment><USER11> Not sure how Nodejs helps, I agree that Mongo helps, schemaless is easier to evolve from my experience than MySQL e.g.

<comment><USER12> Right now I skip from writing heavy JavaScript in the UI (AngularJS) to writing Python on the server. It's a context switch, how I iterate over collections, parse strings, etc. is totally different. I'm not in love with Node.JS, but love the idea of a single language/code constructs throughout the stack. Especially in a small-team startup environment. Maybe someone can come out with a synchronous server-side JS engine? :)

Just realized that it's also a context switch when I go from Python to Mongo, especially when I'm working in the Mongo shell.

</comment></comment></comment></comment><comment><USER13> Lots of good advice. One nit:

I would change "Don't obsess about potential performance" to "Don't obsess about potential performance except for binary roadblocks".

What's a "binary roadblock"? Something that, when it doesn't run fast, no amount of "tuning" could fix it. You better be obsessing over things like these or you'll be dead in the water as soon as that nasty roadblock manifests itself. Some examples:

      - 2 proven technologies whose combination is not proven
      - bad database structure that doesn't hurt until a query you never planned for
      - bad program structure whose memory leaks don't show without an outlying case
      - lazy code that blows up as soon as programmer #2 "enhances" it
      - shit that works by accident until it doesn't work anymore
      - sleepers than appear to run well until you try to scale
      - structures aimed at incorrect user assumptions

Speed to market is important. Careful thought into what can easily become a roadblock is just as important.

<comment><USER14> As I like to put it, having the ability to optimize isn't considered premature optimization (IMO). Picking a technology because its fast might be a poor decision early on; picking a technology because it has the flexibility to allow you to make it fast might be a great decision.

<comment><USER15> To a degree, this common desire to know the amount of headroom available for optimization was an impetus for our web frameworks benchmark project [1].

Some readers of the results have asked why the tests are so trivial (although the multiple query test is anything but; and we are adding more computationally intensive tests for later rounds).

We chose to start with trivial request types to establish the high-water mark that the platform and framework set. Any given web application built on the framework can only expect to perform with higher latency and fewer requests per second than the high-water mark.

In turn, the higher-complexity request types provide some insight into the converge-to-zero point along the complexity axis. Prior to seeing the data, I think some of us intuitively assume the converge-to-zero point is lower than it actually is, using the all too popular refrains such as "well, the app is always waiting on the database anyway." Yes and no. Certainly database queries are generally expensive. But some frameworks can run twenty trivial queries on a gigabit-connected database and serialize the resulting list to JSON faster than others can serialize a single trivial object to JSON.

Choosing a framework that provides headroom for custom application logic--and having a rough idea of how the platform will perform with your custom logic as demonstrated by representative tests--is a good idea. And it doesn't take a whole lot of effort to do that kind of research now. It's easy to avoid premature scale pain.

[1] <http://www.techempower.com/benchmarks/#section=motivation>

<comment><USER16> The subject was 'ability to optimize' and you have changed it to 'how optimized the framework is already'. Most of one's ability to optimize is not dictated by anything about the framework.

Benchmarks which artificially exclude common optimization techniques are avoiding the interesting question of room for optimization in favor of meaningless pissing matches about 'language speed' or 'framework speed'.

<comment><USER15> Pekk, I appreciate the response, but I don't see it that way. I see an efficient framework as getting out of the way and not consuming too many CPU cycles for its plumbing business, leaving my application with room for me to code quickly and inefficiently then optimize when the time comes.

If I build on an efficient/high-performance framework, I can make sloppy code to start and get the job done fast. When the time comes to optimize, I have a great deal of headroom available. I see this as "ability to optimize."

If on the other hand, the framework (and, as importantly, the platform) is already consuming a great deal of the CPU's clock cycles for things outside of my control, my ability to optimize is greatly diminished. I will run into a brick wall unwittingly erected by the framework and its platform.

If my ability to optimize becomes a matter of replacing core components of the framework with marginally faster alternatives, the experience devolves into a frustrating guessing game wrought with arcane insider's knowledge ("Everyone knows you don't use the standard JSON serializer!") and meandering futile experimentation ("I wonder if using a while loop rather than a for loop would squeeze this request down to 200ms?")

I'd rather know that the framework is designed to give as many as possible of the CPU's cycles to me and my application. I can then be reckless at first and careful when time permits.

Which benchmarks _artificially_ exclude common optimization techniques? If you're referring to ours, please tell us what is on your mind. You brought this complaint up in the comments on our most recent round [1], but didn't follow up to let us know what we did wrong. We are absolutely _not_ interested in artificially excluding common optimization techniques. In fact, we want the benchmarks to be as representative of common production deployments as possible.

[1] <https://news.ycombinator.com/item?id=5590161>

</comment></comment></comment></comment></comment><comment><USER17> points not mentioned...

When making decisions for a library, ask yourself:

1) "What kind of problem is this library solving?" "Can I solve the same problem in a simpler way with less code, and later adopt the library if necessary?" -- Dependencies don't always make your life easier.

2) "Does this library make certain problems simple, and other problems no less hard than before? Or maybe SLIGHTLY harder?" -- Last thing you want is to limit yourself to a subset of solutions. Until you know EXACTLY what the long- term goal is, marrying to something that ties your hands is a bad idea.

3) "Is it magic?" -- This is important. In a startup you don't have time time or resources to just sit down and grok a library. If its too magical then its better to avoid it because when something goes wrong, you will have to either sit down and grok it, or rip it out.

Other bonus points for good decisions:

Break everything, but have the most solid data model possible. Test the shit out of it too.

</comment><comment><USER18> Most new ventures would do well starting with a mature CMS like Drupal, Joomla, etc. They'll get you well down the road to a complete website with the boring stuff like user registration, a built-in blog, templating, SEO, and so on already built in or readily available as an add-on.

<comment><USER16> I don't think it is so obvious that almost everyone should choose to base their projects on PHP. The only time it should be an obvious choice is if you have lots of PHP talent.

</comment></comment><comment><USER19> opbeat.com is one of the coolest startups in Cph for the moment

<comment><USER20> Cph?

<comment><USER21> Copenhagen, Denmark</comment></comment></comment>


Into the lions' den (reddit visits digg) - <AUTHOR> http://blog.reddit.com/2010/07/into-lions-den.html

<comment><USER2> Maybe I'm missing something, but is this really something that "gratifies one's intellectual curiosity"? It's just a photo tour of the reddit team visiting the Digg team.

<comment><USER3> It's the expectation that shit bout to go down.

e-hate doesn't translate particularly into real life aggressiveness. Much like how phone calls often end up friendlier than emails.

<comment><USER4> That's not really a justified expectation, though - the reddit community isn't particularly fond of the digg community, but the developers have never shared that sentiment, and said so repeatedly.

</comment></comment></comment><comment><USER5> It's more interesting to hear about the trip from both sides of the wall:

Reddit: [http://www.reddit.com/r/blog/comments/ct0yz/into_the_lions_d...](http://www.reddit.com/r/blog/comments/ct0yz/into_the_lions_den/) digg:<http://digg.com/tech_news/Reddit_visits_Digg_2>

</comment><comment><USER6> booooooooring</comment>


Stop doing everything yourself - <AUTHOR> https://finotto.org/entrepreneurship/doing-everything-yourself/ <comment><AUTHOR> That's cool! They did it right, because they spent all their time working on the product. What one shouldn't do is waste time doing trivial tasks which would be better outsourced. Glad you liked the article and thanks for sharing the video! Take care

</comment><comment><USER2> Great read. But wanting to do everything themselves, led this duo to create a great innovation. What started off as a search for an easy to use ECG device, that required no help from a medical technician, led these two engineers to develop one themselves.

[https://www.youtube.com/watch?v=qIXFQaKL_F0?=hn](https://www.youtube.com/watch?v=qIXFQaKL_F0?=hn)</comment>


I Stopped a Credit Card Thief from Ripping Off 3,537 People - <AUTHOR> https://www.freecodecamp.org/news/stopping-credit-card-fraud-and-saving-our-nonprofit/ <comment><USER2> > I pulled up the scripts our team had created to programmatically refund all > the fraud victims. "Damn," I thought. "If this script doesn't work exactly > like it's supposed to, there's no telling what could happen."

> [...] Lesson #2: It's OK to go manual sometimes

I'm not going to disagree that SOMETIMES a manual approach is better, but where's the part that validates the decision to the degree that it becomes a "lesson" from the incident? Just the fact that they managed to finish?

<comment><AUTHOR> In my opinion, yes. It managed to solve the problem successfully without the risk of using a script.

</comment></comment><comment><USER3> So why would refunding these transactions render the credit card thief unable to use these cards?

In any case, I'd guess this was traffic from a checker used by multiple people or some market site. Odds are the valid cards were immediately used elsewhere.

<comment><USER4> The refund action included a second action reporting the transaction as fraudulent. Banks treat that as an alarm signifier.</comment></comment>


Security Notification and Linode Manager Password Reset - <AUTHOR> http://status.linode.com/incidents/ghdlhfnfngnh <comment><USER2> _sigh_ not again</comment>


Could smartphones have caused people to ignore a gunman & murder? - <AUTHOR> http://www.cnn.com/2013/10/10/tech/san-francisco-shooter-phone/index.html?c=us

<comment><USER2> I got my very first smartphone last month, I've never been much of a phone person. This is to say that even before I owned one, I've always had ways to entertain and immerse myself in my own world. Especially during large commute times, I used to nap, read books and newspapers, do homeworks.. I'm pretty sure that if such thing happened to me then, I wouldn't have noticed either. This scares me a lot but the base idea, imo, is that people tend to isolate themselves during daily routine, and all assume a safe and sound environment and if such sporadic events happen, none of us really could expect them beforehand.

This is to say (tl;dr), while phoned might have amplified this effect, they are in no way the cause and the article seems to be a bit biased against them.</comment>