The inside story of Bombardier's $4-billion gamble on a super quiet jet - <AUTHOR> http://www.canadianbusiness.com/companies-and-industries/shhhhh/ <comment><USER2> Hm seems still quite a bit noisier than airbus 350 (why isn't it mentioned even once in the article?)

[http://www.youtube.com/watch?v=h3AiGiJgf9Y](http://www.youtube.com/watch?v=h3AiGiJgf9Y)

[http://www.youtube.com/watch?v=_3SMaNrsaoI](http://www.youtube.com/watch?v=_3SMaNrsaoI)

But it's cool we got to see so many first flights this year!

Here is some detail on why it is so quiet

[http://www.flightglobal.com/news/articles/airbus-a350-xwb- se...](http://www.flightglobal.com/news/articles/airbus-a350-xwb-set-to-be- quietest-generation-of-airliner-as-manufacturer-improves-zero-splice-211641/)

<comment><USER3> It's not mentioned because the planes are so different that there is little point in comparing them? A350 is 3x larger, has 2x the range, and is 4x the price. Seems to me that the use cases they've been designed for have to be completely different, and one can in no way be substituted with the other.

<comment><USER4> But the article does say that Airbus and Boeing each had a major project in recent years (A380 and 787) and they're unlikely to have anything major for the next decade. A350 sounds pretty major to me.

<comment><USER5> I wonder if Boeing and Airbus will increase the pace of new plane releases...

The A380 and B787 introductions were very rocky, with delays added to delays added to delays. On the other hand so far the testing of the A350 as been incredibly smooth.

I know that it's too early to draw any conclusion, and that the A350 is still one year from EIS. But when you take into account the actual competence of making a new plane, and how quickly it can be lost, I wouldn't be surprised if the lesson learned is that it is more economical for Airbus and Boeing to release new planes more often...

<comment><USER6> Well, the A350 has a long and painful history, it should have flown for years if customers had not threatened to boycott it. I can't see a fast release schedule, considering the price of developing a new plane.

<comment><USER5> You are right that Airbus had a hard time figuring out which plane to make, rushing a couple of A350 concepts before settling on the so called A350-XWB.

But once it was settled the engineering went smoothly. Or, should I say, has been going smoothly so far.

The skills involved in designing a plane are vastly different from that of figuring out which plane your customers will want 5 to 30 years from now.

</comment></comment></comment></comment></comment></comment><comment><USER7> The former Soviet Union also has a lot of airports that are too close to the city centre to handle noisy passenger air traffic. So there is a huge market in countries like Russia, Ukraine and Kazakhstan, all of which are spread out over great distances. In fact the ability to use a shorter than normal runway would make it possible for many of Siberia's towns to build an airport that could handle the Bombardier jets. And next door to Siberia is China which also has some considerable distances to deal with.

</comment><comment><USER8> Does reduced noise necessarily mean increased efficiency? Short of using heavy sound deadening material, I'd imagine that reducing the noise in an aircraft means saving a lot of that previously noisy energy for useful work.

<comment><USER9> Your inclinations seem right. There is a positive correlation between friction (viscosity) and noise, and also between friction and energy waste. It is in part from that connection that reducing noise would boost efficiency.

</comment></comment><comment><USER10> Gearboxes in the Engines... I cannot quite figure out how that works since they are not driving an axle or anything... are they?

Any aerospace engineers in the house?

On plus side, if they work, more power to them. On the downside, sounds like a maintenance / reliability nightmare in the making.

[EDIT] May be of use: [http://en.wikipedia.org/wiki/Geared_turbofan](http://en.wikipedia.org/wiki/Geared_turbofan)

<comment><USER11> I know this article is focused on noise, but the most important part about this engine is the efficiency. The fuel savings alone from having the high pressure section running at peak RPM in any situation is incredible. Billions and billions of dollars in fuel savings for a modern fleet.

Think of it as an orbital reduction gear more than a transmission that allows two different sections of the same axel to spin at differen speeds.

Checkout fuel burn vs. other engines. [1] The maintenance cost ratios across an entire fleet versus the fuel savings make it an absolute no brainer for regional fleets.

Source: My father a DER at MTU Aero Engines who developed the geared turbofan with Pratt & Whitney. DERs develop and sign off repairs in accordance with FAA regulations. He was also certified is EASA repairs.

1- [http://en.m.wikipedia.org/wiki/Pratt_&_Whitney_PW1000G](http://en.m.wikipedia.org/wiki/Pratt_&_Whitney_PW1000G)

Edit: Double the

<comment><USER12> In this context, I think "DER" means Designated Engineering Representative ([http://www.faa.gov/other_visit/aviation_industry/designees_d...](http://www.faa.gov/other_visit/aviation_industry/designees_delegations/designee_types/der/)). I had no idea, so I had to look it up.

<comment><USER11> That is correct. The short story here is the FAA simply can't keep up with the innovation so they certify a group of people that can certify a repair as safe, and effective. It can than be used, while the FAA eventually full approves the change. The DER assumes full responsibility for the repair, and it's safeness. There have been stressful Christmas eves when approving the duct taping of a loose part of a V2500 so a plane full of troops can make it home for Christmas. Don't worry, it was a single flight one direction approval (but it happens all the time)

</comment></comment></comment></comment><comment><USER13> Large airliners are a big-money duopoly with a US incumbent. A single deal can make or break a project, or a company. I wonder how worried the Canadians are about industrial espionage by the NSA, as may have happened in Brazil and Germany.

<comment><USER14> I assume Canada is spied on, but Canada also appears to be an active spyer. Leaked NSA documents have revealed that Canada has been participating in industrial related spying on Brazil.

[http://www.theguardian.com/world/2013/oct/08/brazil- accuses-...](http://www.theguardian.com/world/2013/oct/08/brazil-accuses- canada-spying-nsa-leaks)

<comment><USER15> It's useful to note that Brazil is home to Bombardier's primary competitor, Embraer. The Canadian and Brazilian governments have both accused each other of subsidies in the aerospace market: [http://en.wikipedia.org/wiki/Bombardier_Aerospace_and_Embrae...](http://en.wikipedia.org/wiki/Bombardier_Aerospace_and_Embraer_S.A._government_subsidy_controversy)

</comment></comment></comment><comment><USER16> I'll be interested in this when (ha) I hear that airlines are using that boosted efficiency to make coach seats more comfortable on the same profit margin, rather than continuing sardine-packing and pocketing the difference. Until then, it's entirely academic.

</comment><comment><USER17> Wow!!

LCD user interface! Fly by wire! Carbon composite wings! Geared turbofan!

We are talking about more than 20 years old technology here. We (in our company) programmed cockpit LCD like 12 years ago or so...

<comment><USER18> That stuff isn't new in passenger airlines? I was under the impression (and seemingly the vast majority of media coverage) that the majority of it has been introduced in the past few years with the A380 and 787. Is that wrong? What company do you work for that was making LCD cockpits for passenger airliners?

</comment></comment><comment><USER19> Argh, Bombardier make me angry! They're probably the main contender for showing how Canada still fails to understand the benefit of free market economics. The main problem here is all this stuff is essentially funded by things pulled out of the ground on the other side of the country, but rather than allowing the market to function you have a class of bureaucrats scratching each others backs in order to pass subsidies off to whoever bought them the best lunch last week or gave them a season ticket to the Canadiens.

That isn't to say there isn't a market for this kind of thing, but if there was really a market Bombardier could have done it properly, even via the stock market. Too much Canadian business is built around exploiting whatever the government is chucking around that week rather than being sustainable.

<comment><USER20> Do you think that Airbus gets no subsidy? Boeing? Embraer?

The aircraft market is global, and I can't fault Canada for supporting Bombardier in a manner similar to how their competition is subsidized.

<comment><USER19> Whether other countries choose to subsidise development in a particular industry is irrelevant, and if they choose to essentially export their money then that's up to them. It's not like there aren't plenty of other things these people could be doing. If you reach the level of China style product dumping then you have a trade war situation and things are different, but that's not (quite) what is going on here, though if Boeing or Airbus gained a monopoly it would sure look like that.

What is really happening is risks are socialised, profits (if any) are privatised.

<comment><USER21> > What is really happening is risks are socialised, profits (if any) are > privatised.

Well not quite, given companies pay tax too. Not only that, but large industries like Aerospace spend money on other stuff. I agree it's clumsy, but it isn't as simple as you put it.

Seems to me with the level of subsidy Boeing/Airbus/Bombardier receive, why aren't they just nationalised.

<comment><USER22> To add to this, aerospace companies contribute plenty to the economy, in jobs, scientific research - much more than most other corporations that are of a similar size.

And speaking as a Canadian, it's nice that we still do have Bombardier, otherwise those jobs would simply go down south (probably the actual talent too). Canada needs to invest in industries other than resources... And of course Bombardier IS profitable (forward P/E of 9.71 on the stock).

</comment></comment></comment></comment></comment><comment><USER23> Shouldn't there always be a manual flying mechanism failsafe in the case of electrical failure? Fly-By-Wire doesn't seem very safe to me... in the same way I have doubts about Drive-By-Wire.

<comment><USER24> Mechanical systems fail too. Cables can snap, gears can shear off, pedals can bend. As long as you require an appropriate level of redundancy, there's no reason an all-electronic plane should be any less safe.

<comment><USER25> As an illustration and to provide some sample evidence for lmm's comment (there's plenty more):

[http://en.wikipedia.org/wiki/Turkish_Airlines_Flight_981](http://en.wikipedia.org/wiki/Turkish_Airlines_Flight_981)

[http://en.wikipedia.org/wiki/American_Airlines_Flight_96](http://en.wikipedia.org/wiki/American_Airlines_Flight_96)

In both of these cases, rapid decompression from a failure of the cargo door caused parts of the floor to collapse and sever or restrict the mechanical cables leading to the aft control surfaces of the plane. Although the American Airlines pilots were able to land the plane safely (they still had some control), the Turkish Airlines pilots were not so lucky.

Furthermore, even mechanical systems are assisted by hydraulics. Hydraulic systems can fail, usually through draining, leaving the flight uncontrollable. So to add to the comments by both lmm and leoedin, safety has no bearing on whether the aircraft is mechanically controlled or electronically. There are also deployable ram air turbines[1] that can provide a small amount of emergency backup power in the event of a total failure of all engines:

[1] [http://en.wikipedia.org/wiki/Ram_air_turbine](http://en.wikipedia.org/wiki/Ram_air_turbine)

</comment></comment></comment><comment><USER26> So much to be desired for design thinking; [http://www.youtube.com/watch?v=QJFUWCyOHIM](http://www.youtube.com/watch?v=QJFUWCyOHIM)</comment>


Ask HN: How is 100 % 13 and Number.MAX_SAFE_INTEGER % 13 just as expensive? - <AUTHOR> Well I lied... It's just under twice as expensive in some rudimentary unit tests I have done on my local nodejs v13 setup here on my laptop...
It takes about 10 milliseconds to execute 1m modulus operations on Number.MAX_SAFE_INTEGER and about 5 milliseconds to execute 1m modulus operations on 100.
But I can't wrap my head around how.
How is it virtually just as fast to find the remainder of such a large and small number in Javascript?
Number.MAX_SAFE_INTEGER is 2^53 - 1 (9,007,199,254,740,991 or ~9 quadrillion). <comment><USER2> See [https://stackoverflow.com/questions/4361979/how-does-the- gcc...](https://stackoverflow.com/questions/4361979/how-does-the-gcc- implementation-of-modulo-work-and-why-does-it-not-use-the)

In brief, if the value being modulo-ed by is a constant known in advance (which is the case you describe), a sequence of bit manipulation instructions that performs the equivalent of a generic modulo operation but faster can be substituted. The length of that sequence depends on the specific constant used.

If the value being modulo-ed by is not known in advance, I'd suspect that all the modulo operations would take the same time because the same sequence of instructions would be used for all cases. The register width for modern computers is 64-bits, meaning that the same sequence of operations on values would take the same time up for values up to a maximum value of 2^64 (unsigned).

<comment><AUTHOR> Thank you so much for that!</comment></comment>


Ask HN: What are the pros and cons of DevOps? - <AUTHOR> I came across this HN post recently
https://news.ycombinator.com/item?id=20668168
> In practice, and talking from my experience, unless you're one of the lucky few this is what it really means to do DevOps in 2019: - Forget what the books said, theory, semantics and idealism. You are a DevOps Engineer, working in a platform specific team.
- You deal with Jenkins or similar, and consult other teams or developers to write scripts for it, or worse, do the work for them since they're too busy doing actual programming.
- You are not allowed to come up with your own abstractions. Proposals to develop anything are automatically declined by your Product Owner, who simply points you to whatever tool with a fancy logo he could find listed in the Cloud Native Computing Foundation.
- You pride yourself for being an engineer, but decisions end up being only made in terms of getting free open source labor and ease up hiring, so you end up doing what everyone else is doing.
- Half of your team co-workers are perfectly fine dealing with churn, software updates and other sort of manual, classic sysadmin tasks.
- You are repeatedly being paged at night for problems that your fellow developers won't feel responsible for. You hear buzzwords and talks about this SRE thing or "you built it, you run it", but it never seems to materialise due to politics.
It used to be a lot of fun back in the day, and a great chance to get paid to solve interesting problems related to system and infrastructure engineering instead of the boring CRUD work that plagued the last decades, but seeing the "App Store" that this turned into, if you are a creative individual with a software engineering background and you're considering a career in DevOps, my advice is to run away while you can.
I wonder what developers are actually thinking about DevOps? <comment><USER2> I agree, in general, it's a relatively thankless job, where you are constantly cleaning up after other people's messes. Many developers don't think how their decisions impact downstream processes, deployment, or operations. You get to fix build and deployment errors all the time, from either your own problems, hardware problems, upstream problems, or other developers on your team. Work is thrown over the fence all the time at you, with no warning.

I don't think there's much need to come up with your own abstractions, and those that do like to write a lot of devops code seem to dig themselves into a hole. Simplicity is key.

It's a lot like development, in all these ways. It's just even more annoying, since people call you when it stops working, rather than just waiting until tomorrow to barge into your office.

It's not just politics that keep people from being responsible for their own messes. It's honestly about ability. Those who can't solve hard problems that pop up randomly are the ones who get to write features, leaving head- scratching bugs to those who have the ability to fix them.

But then again, I might just be feeling jaded today. I'd consider myself both sides of Dev and Ops, and been called everything in between (usually when they try to convince me to take on something).

</comment><comment><USER3> My approach to DevOps has always been to enable the developers and move ownership of remediating broken processes to their responsibilities.

One, it allows them to be more self reliant, have faster feedback on their work. Two, you create visibility into where bugs and issues come from so the responsibility to fix is made clearer. They get the calls late at night if you've done your job correctly. That being said, you may still get called in because you will likely have gained unparalleled insights into the complex interactions not grokked by the developers of one component More often than not, the interaction of services is where things break down.

The goal for DevOps has been to produce systems where developers are more successful and productive. If you start reading I to the cult messages too much, and prioritize process over outcomes, you've missed the point.</comment>


Show HN: The Internet Portal – Warp to a Random Website, Using ICANN CZDS Data - <AUTHOR> https://theinternetportal.net/ <comment><USER2> Not every domain registry's zone files are available through CZDS, unfortunately.

Not every domain listed in a zone file represents a "website".

Choosing a random domain from a zone file and prefixing it with "[http://](http://)" and having PHP send a GET request certainly does not have a 100% chance of returning a web page.

(Might be interesting to calculate the probability.)

Seems like the author is not even filtering out A records corresponding to the NS entries in the zone files, e.g., something like a.ns.domain.tld

Sending a GET request to such subdomains is obviously not going return a web page.

As for clicking the button over 200 million times (assuming the total domains listed in the zone files is 200 million), that might violate the ICANN Zone File Access Agreement. Unless the terms have changed, one of the restrictions used to be against redestributing the data. This project would not be redistribution of the IP address data but if the user logs the names there's an argument it could be redistribution of the name data.

To "click the button" once from the command line

       curl -s https://theinternetportal.net/php/button.php
       echo

<comment><AUTHOR> It's true that this doesn't list all the websites that are registered, nor do all the domains lead to a working website. However, I think that most of the invalid websites are not caused by NS entries. As for the Zone File Access Agreement, it prohibits uses that allow the access of a significant portion of the data. An immense amount of time would have to be spent scraping data to get any portion that could be considered significant.

<comment><USER2> Also, there are alternative, publicly accessible ways to get most of this public zone file data now, so I am not sure that restriction in the access agreement is anything more than an historical artifact at this point.

You could use publicly available scan data for ports 80 and 443 to pare down the list of "websites".

The goal of exposing the non-popular web is worthwhile.

<comment><USER3> You could port scan the entire IPV4 address space(minus all reserved addresses), send a GET request to everyone that responds, filter for valid HTML. It would take no more than 5 hours on a shitty PC, a lot less if you get a small aws instance.

<comment><USER4> Most non-major sites are on shared hosting. Without a host name, you won't get anything useful unfortunately.

<comment><USER2> Most major site are on shared hosting. (Sadly)

</comment></comment></comment></comment></comment></comment><comment><AUTHOR> I started this project after doing some research about how DNS works and learning about the CZDS, where any interested individual can request access to DNS zone files. I realized that I could turn this into a website, especially since I couldn't find anything similar on the internet. I used their Python API to download all the zone files, then wrote a Python script to scrape them into one file with only the domain names. I then stored these in a MySQL database on my web server, and used AJAX + PHP to retrieve and redirect to the domain. One thing I think is cool about this is that it gives you a sense of the websites that constitute most of the internet, not just the most popular ones. And unless you've clicked the button over 200 million times, you are almost certainly going to get a website you've never seen before.

<comment><USER5> Thank you for this.

<comment><AUTHOR> I'm glad you like it!

</comment></comment></comment><comment><USER6> I wonder if it was just chance or due the growth of the internet, but over half the sites I got were in Chinese. I found that really interesting, since the Chinese side of the internet is usually so far removed from the English- speaking world, and we have no idea how the internet is growing or being used over there.

</comment><comment><USER7> Was unconvinced of the value of this until I found I site where my bliss was 100% guaranteed.

[https://brothersetup.online/](https://brothersetup.online/)

</comment><comment><USER8> Most didn't work and when it did well wtf is this [http://ngazzokah.org/](http://ngazzokah.org/)

<comment><USER9> My first reaction was "hey, this is Dutch, I understand this".

Well, the landing page is a very long list of statements about ngazz. Apparently ngazz is, was, remains, excites, grabs by the throat, stirs, laughs, and a lot of other things. One of these "ngazz" is a link to the actual page. It's some small blog/ promo page for ngazz, a band playing a fusion of rock and jazz.

</comment></comment><comment><USER10> I tried literally 20 times in a row with no actual website as a result. Did I get super unlucky or is the web really this rotted?

<comment><USER11> I got 12 sites in 40 clicks, and some of those I still wasn't sure. I think it really is!

</comment></comment><comment><USER12> I did "Jump In"s for about 10 minutes. Thought I'd provide some feedback.

I <3 the idea. I've personally wanted to see something like this for a while as I continuously visit the same 10 sites every day (as do most people).

Some feedback for the next iteration:

\- Maybe ping sites first to see if they're down before jumping? I hit a few 500 and 404s during my jumps. \- Possibly show "content" sites? Said another way - I jumped into a few business pages XD (lawyers, doctors, and such) and those aren't the most interesting.

UX and speed all seem pretty decent. Thanks for sharing

<comment><AUTHOR> Thanks for the feedback! I'm thinking about ways to prevent loading broken websites. I'm not sure it's possible to filter for only a certain type of website though, I think there are way too many sites for that.

<comment><USER13> I would say 75%+ of all the working sites were parked or expired pages. I would suggest to remove or re-redirect any sites that resolve to known registrar parking page IPs (perhaps only assuming if these IPs are distinct from their webhosting cluster IPs, where actual webhosting customer websites might live). That might be a good start to at least prune a lot of the parked sites.

</comment></comment></comment><comment><USER9> I love this type of sites. I tried another some years ago.

After four dead ends and one "under construction" I was brought to [http://chimneysweepnews.com/](http://chimneysweepnews.com/)

This is exactly the type of thing I had no idea existed, have no interest in, but seeing it out there still makes me smile.

</comment><comment><USER14> Many of the sites understandably timeout or can't be resolved, or are just "under construction" or parking pages. However, I did come across this Japanese site: [http://mottainou.com/](http://mottainou.com/)

For some reason the topic, design, and color scheme makes me very nostalgic.

<comment><USER6> For those who can't read Japanese, the site is about a small-scale organic farm in Daisen Town, Tottori prefecture.

</comment></comment><comment><USER15> Very nice, but out of 5 I tried 4 were dead sites, and 1 asked for a login straight away.

Maybe ping the sites and only return active ones?

<comment><AUTHOR> I'm currently working on a way around this similar to what you suggested.

</comment></comment><comment><USER16> I ended up on 8sectnformats.online, which redirects to [https://www.google.com/#spf=1600155592494](https://www.google.com/#spf=1600155592494). I couldn't find anything about them online. Does anyone know what they were?

</comment><comment><USER17> This is fun, my first jump was to a fruit I didn't know existed, and apparently is very healthy. It suspiciously does look 100% like black currant ;)

[https://www.lifebrook.com/tonyd/](https://www.lifebrook.com/tonyd/)

<comment><USER18> They're not related, but the common name for Aronia is chokeberry, which should give you some idea of the unprocessed taste.

<comment><USER17> That doesn't sound really enticing! Chokeberries. Is it weird if I am getting curious about the taste now?

</comment></comment></comment><comment><USER19> I really got my hopes up while [http://alieninterviews.com/](http://alieninterviews.com/) was loading, but alas it was just a parked domain.

</comment><comment><USER5> Half of the sites were basically offline. Amusingly, I found that "Ma' Business Adviser Services DOT COM!" is now available, although it might actually be intended for Massachusetts.

</comment><comment><USER20> I'm surprised at how many Asian gambling websites I've stumbled on. I'd have imagined more pornography.

I guess we need to change the song. The internet is for gambling~

</comment><comment><USER21> I seem to have ended up at a chinese sports-betting site [https://1958abcd.com/](https://1958abcd.com/)

</comment><comment><USER22> How come when I go to the new site, uMatrix lists theinternetportal.net as part of the loading (with an "Other" object)?

Edit: This only happened on the first site.

</comment><comment><USER23> The ultimate rabbit hole. :-) For me it ended up being a good reminder of web design through the years. Even found a real life <marquee> tag.

</comment><comment><USER24> My first result was a Chinese porn website. Thank goodness I'm at home and not at work right now. You may wish to add a disclaimer about that.

<comment><USER25> There already is.

<comment><USER24> Oh, right, I see it now. It wasn't visible straight away on my phone.

</comment></comment></comment><comment><USER26> Cool idea, I did have a little trouble with dead domains, but nothing to drastic.

Also, I love the visual design on your landing page.

<comment><AUTHOR> Thanks! I don't have very much experience with web design, but I did my best.

</comment></comment><comment><USER27> Such a great idea! Reminds me of the internet before bubbles a la physically printed indexes and yahoo directories.

</comment><comment><USER25> I just see a spinning purple saw blade of death, and nothing further happens. Left it for about a minute.

<comment><AUTHOR> Some links won't work, and that's unavoidable. I'm working on a way to redirect to another site if the first one is broken. In the mean time, just press the button again for a new link.

<comment><USER25> Nothing appears to be loading. It's not like my browser is trying to connect to something that doesn't exist. Just tried again a bunch of times.

<comment><AUTHOR> You must click the button each time to request a website. The loading page is just a placeholder, so reloading that page will not bring you anywhere. I'm not sure if that's what you were doing, but hopefully that helps.

</comment></comment></comment></comment><comment><USER28> I rolled the dice three times and got two parked domains and a domain squatter. How was your luck?

<comment><USER29> I found a site that made me think of Microsoft FrontPage: [http://www.bichonfrise.ws/](http://www.bichonfrise.ws/)

HTML 4.01 Transitional and table layouts FTW!

</comment></comment><comment><USER30> Did it a few times, all I got were ads and dead links. Maybe implement a filtering system?

<comment><AUTHOR> Yes, I'm thinking about a way to implement that. It's too many domains to filter in advance, but it might be possible to redirect the user to a new site if the current one is dead.

<comment><USER30> Cool :)

</comment></comment></comment><comment><USER31> Here are my results for 10 tries:

Unreachable/dead site: 6

Domain squatter: 2

Partially broken, but actual website: 1

Working website: 1

</comment><comment><USER32> On my third try I got google.com. What is the chance of that!

</comment><comment><USER33> The internet needs more stuff like this!

</comment><comment><USER34> clicked ten times, not a single porn happened. I'm shocked.</comment>


Using Iframes Sparingly - <AUTHOR> http://www.stevesouders.com/blog/2009/06/03/using-iframes-sparingly/ <comment><USER2> The author rightfully points out that many sites use IFRAME tags for ads, and that can slow down your site.

However, the alternative is to use a Javascript ad tag. I've learned from painful experience that if the ad server doesn't respond to a JS ad tag, the entire page will stop loading until the ad server times out (up to 10 seconds).

I'd rather have a page be 10-20% slower with IFRAME tags than use JS ad tags that are effectively a single point of failure for my site.</comment>


Disney+ Has Less Than 15% of Netflix's Catalogue - <AUTHOR> https://comicbook.com/tv-shows/2019/11/21/disney-plus-library-smaller-netflix-15-percent/ <comment><USER2> Does that matter when most of Netflix's catalog is crap?

The problem with Disney+ is that Disney is taking advantage of the monopoly privileges granted by copyright law to vertically integrate their offerings. If you want to steam Disney media, you do it through Disney+. If Bob Iger thought it was possible to turn a profit by doing so, there would already be a chain of Disney theaters that show nothing but Disney shit, and visitors would have to fight their way through the built-in Disney Store to get to their seats.

Welcome to the Tragic Kingdom. It will only get worse unless we start pushing our elected officials to start enforcing existing anti-monopoly laws.

</comment><comment><USER3> Disney is has larger and higher quality catalogue than Netflix. It's only question of the introduction timeline and how they plan to split or combine them between Disney+/Hulu/ESPN+ They have existing streaming contracts that expire in few years and then everything they own will stream trough Disney.

Disney owns: Walt Disney Pictures, Fox Searchlight, Pixar, 20th Century Fox, Marvel, Lucasfilm, Hulu Originals, ESPN, 50% of ABC and A&E (History network, Vice Media). This means that they have Star Wars, Avatar, Indiana Jones, Alien, Predator, Simpsons, Futurama, Family Guy, X-Files , American Horror Story, Malcom in the Middle, ..

What's even worse for Netflix is that new competitors are still entering after Apple TV+ and Disney+. After WarnerMedia launches HBO Max and NBCUniversal launches Peacock, Netflix has many compeittors with big catalogues and they all pull their shows from Netflix. Basically only Netflix originals will stay with Netflix.

</comment><comment><USER4> It doesn't really matter. Disney wants their piece of that pie, and they have the marketing to get customers. People will buy it, and Disney owns Marvel, Star Wars, ABC, NBC and all their own movies/content.

We went from cable, to paying less for only one or two streaming services, but now people are buying more services (Amazon, Disney+, HBO, Hulu, AppleTV, appleTV, AppleTV and AppleTV) .. it's almost like the a la carte channel pricing people wanted in the 90s, ... but way after people were playing less for just Netflix.

Disney+ isn't going away or going to fail any time soon. It will be interesting if one day we see Olympics only on streaming and not on broadcast at all.

</comment><comment><USER5> Not a fair comparison, actually, when you browse the Netflix catalog you can only find a certain amount of titles, let's say 200-400 hundred movies/series.

This shows better if you use the numbered categories. Not much ago, I went to browse something like "scifi/terror" and just found maybe 16 movies. Other categories offered similar quite reduced catalog.

I'm not in US, but I suspect many customers around the world are looking Disney+ to add a service/more options (and many are already paying at least for two streams).

</comment><comment><USER6> This is irrelevant because a large portion of Netflix's catalog is filler trash. My favorite example of one of Netflix's suppliers is [https://www.gq.com/story/sharknado-atlantic-rim-pacific- rim-...](https://www.gq.com/story/sharknado-atlantic-rim-pacific-rim-asylum- movie-spoof)

Apart from their first party content (of which Disney+ has more to draw from), most of Netflix is whatever they can get on the cheap of the cheap.

</comment><comment><USER7> Too many subscriptions services... back to sailing the seas of piracy

<comment><USER4> I never left. The last time I had Netflix was when they shipped DVDs. I signed up for the two months free, ripped every DVD the day I got it, mailed them back, and canceled before the trial ended. Same with Blockbuster. I have never actually paid for a streaming service.</comment></comment>


Encode arbitrary data into bible verses - <AUTHOR> https://github.com/mbmccoy/voice_of_god

<comment><USER2> [http://www.holyvoiceofgod.com/](http://www.holyvoiceofgod.com/) seems to allow the devil of HTML injection. Only tried with some basic tags.</comment>


The Public Domain C Library - <AUTHOR> http://pdclib.e43.eu/ <comment><USER2> I've found this library to be a great resource for getting implementations of a bunch of simple functions with no strings attached. PDCLib code has made it into most of my toy kernels and the KnightOS libc.

<comment><AUTHOR> Fantastic work on KnightOS! It has been a constant source of teachers complaining to me at school, because students are hacking away building programs to do all their work for them.

I couldn't be happier.

<comment><USER2> That's awesome! You wouldn't believe how much trouble I caused for my teachers in high school, especially the math teachers :)

<comment><USER3> You're not a good student if you never cause trouble for your teachers.

The problem is it takes a good teacher to distinguish between good trouble indicating an engaged student having fun with the material (e.g. a class mate of mine and I went through a phase of handing in homework in non-latin scripts; to our teachers great credit she tolerated Cyrillic, Etruskan and Sanskrit without the slightest complaint) and bad trouble.

<comment><AUTHOR> My high school science teacher took it as I was bored, and gave me open-ended research questions to occupy me.

e.g. Why is the sky blue during the day, and red at sunset?

Though that's much easier to answer today, it taught me some great skills, and how to not be afraid of failure or rejection.

I ended up having some great conversations with the professors at my local universities.

<comment><USER3> Yes, I was similarly lucky for the most part that when I was "causing trouble" it tended to result in further challenges rather than complaints.

</comment></comment></comment></comment></comment></comment><comment><USER4> This is C, not POSIX. POSIX defers to ISO C but has extensions and more strictly defined behavior/return values.

Example (first function I randomly looked at)

remove() - PDCLib won't remove directories or currently fopened files. ISO C doesn't mention directory support and removing an open file is implementation defined. POSIX says it is equivalent to unlink() or removdir() as appropriate.

</comment><comment><USER5> what's the "selling point" here? don't we have quite a few c libraries(glibc, libc-bsd, musl, uclibc,...) already?

<comment><USER6> I liked the fact it has threads.h :)

Most other c libraries don't have it, the few ones that do (musl for example) are linux-only usually...

<comment><USER7> It has a header file called threads.h, but the implementation is just stubbed out unless you have pthreads.h available.

Unless I'm missing something...

<comment><AUTHOR> I think pthread is implemented in /opt/pthreads [0], and I think you're right, looks like a bunch of wrapper APIs.

[0] [https://bitbucket.org/pdclib/pdclib/src/95be959efe2e/opt/pth...](https://bitbucket.org/pdclib/pdclib/src/95be959efe2e/opt/pthreads/?at=default)

</comment></comment></comment></comment><comment><USER8> This site seems to be broken. Clicking on Source link doesn't work.

<comment><USER9> Works for me; it takes me to [https://bitbucket.org/pdclib/pdclib](https://bitbucket.org/pdclib/pdclib)

<comment><USER10> Does it work for you further along? I wanted to peek at source or man of strlen and saw a 404: [http://pdclib.e43.eu/man/#/man/3/strlen.html](http://pdclib.e43.eu/man/#/man/3/strlen.html)

<comment><AUTHOR> Some of the documentation is incomplete, and is based off the man files provided in the source's man3 folder.

strlen is missing, but strdup isn't.

[http://pdclib.e43.eu/man/#/man/3/strdup.html](http://pdclib.e43.eu/man/#/man/3/strdup.html)

Edit: And the source for strlen: [0]

[0] [https://bitbucket.org/pdclib/pdclib/src/95be959efe2ed2f36104...](https://bitbucket.org/pdclib/pdclib/src/95be959efe2ed2f36104ab5cffe9c222972d3e43/functions/string/strlen.c?at=default&fileviewer=file- view-default)

</comment></comment></comment></comment><comment><USER6> Do someone know how easy is to use this in your project without recompiling the OS and whatnot?

I really want some good threads.h implementation, but musl is Linux-only, and the others I found so far are kinda hacky and have some problems here and there. (usually messing up your #defines and #includes in unexpected ways).

<comment><AUTHOR> This still doesn't have great support for Windows, if that's what you're hoping.

Mostly to do with MSVC's odd approach to C99, that having it is nice, but not a goal, so not all supplied functions strictly conform to the standard.

<comment><USER11> The approach is not odd at all.

The future of Windows systems programming is C++ and C support in _Visual C++_ is only done to the extent required by ANSI C++ compliance. And ANSI C++ doesn't require C++ compilers to be C compilers, just to compile the common subset and libraries.

For pure C projects there is the new integration of clang with VC++ backend, or any other C compiler capable of targeting Windows.

<comment><AUTHOR> The clang integration was announced in 2015, so a full 16 years after C99 was finalised.

A C compiler ignoring most of the spec for at least decade seems hugely odd to me.

First and foremost, MSVC is a C compiler, and for a long time was the only one available.

Comparing it's spec support story with GCC, clang, tcc or turboc, and it stands out.

I mean, avr-gcc is designed mostly for use with C++, you're expected to use C++. But it still fully supports C99 and most of C11, with a goal to fix that in the next three years.

It's... Odd.

It may make sense if MS assumes all their developers have no need of the many C APIs they maintain, but it is certainly not the reasoning of many other compilers.

<comment><USER11> > First and foremost, MSVC is a C compiler, and for a long time was the only > one available.

Since when? MSVC doesn't exist, never did, the product has always been called MSVC++.

The only pure C compiler from Microsoft was called *Microsoft C Compiler", and Microsoft was actually the last C compiler vendor adding C++ support for MS- DOS.

> Comparing it's spec support story with GCC, clang, tcc or turboc, and it > stands out.

GCC used to stand for GNU C Compiler, before it got renamed into GNU Compiler Collection.

tcc is a C compiler.

Turbo C was a C compiler, the C++ one was called Turbo C++.

clang always supported C, C++ and Objective-C since the beginning, because C's subset of Objective-C is a 100% compatible with C, which isn't the case with C++.

> t may make sense if MS assumes all their developers have no need of the many > C APIs they maintain, but it is certainly not the reasoning of many other > compilers.

They have assumed this for a long time now, since 2012 actually, people seem to keep not paying attention.

[https://herbsutter.com/2012/05/03/reader-qa-what-about-vc- an...](https://herbsutter.com/2012/05/03/reader-qa-what-about-vc-and-c99/)

<comment><USER12> C++ culture at its worst -- listen to the weekly recommendations of Herb, Scott et al. and you'll be fine. Trust us.

<comment><USER11> C++ culture at its best, fixing C memory corruption and UB errors inflicted into the industry, while providing an upgrade path for saner coding.

<comment><USER13> Thanks, now we know why Windows has such a stellar security record.

Really, talking to C++ proponents is like talking to a wall. C programmers can at least admit failures, grumble about their tools and have diverse opinions.

Not so in C++. Religious adherence to dogma, unwaivering allegiance to conference heroes, unbridled enthusiasm for every new feature seems to be a prerequisite for programming in that language.

And God forbid that there's any self-criticism, ever.

<comment><USER11> C developers don't even care about security, as shown by making the C99 security annex, which was pretty small actually, optional in C11.

Or they just like to wave the amount of CVE exploits that get added daily to the database, as not being a language issue.

<comment><USER14> This is not my experience at all. I've often observed C programmers that were visibly embarrassed if a single segfault -- let alone an exploit -- was found in their code.

I've observed C++ programmers who were completely indifferent to segfaults, shipped 5 more releases with the bug and continued instead discussing their latest abstractions and how awesome and secure C++ is.

Also, for yet another time: The majority of CVE-worthy programs is written in C (for good reasons), why don't you look at Windows instead?

<comment><USER11> > why don't you look at Windows instead?

Because GNU/Linux is even worse nowadays, in spite of joking how Windows used to be, somehow they forgot to follow suit in terms of security.

"Unsafe at any clock speed: Linux kernel security needs a rethink"

[http://arstechnica.com/security/2016/09/linux-kernel- securit...](http://arstechnica.com/security/2016/09/linux-kernel-security- needs-fixing/)

</comment></comment></comment></comment></comment></comment></comment></comment></comment></comment></comment><comment><USER15> This stuff is beautiful.

</comment><comment><USER16> Looks like more code here for abs.c

[https://bitbucket.org/pdclib/pdclib/src/95be959efe2ed2f36104...](https://bitbucket.org/pdclib/pdclib/src/95be959efe2ed2f36104ab5cffe9c222972d3e43/functions/stdlib/abs.c?at=default&fileviewer=file- view-default)

than musl:

[https://git.musl-libc.org/cgit/musl/tree/src/stdlib/abs.c](https://git.musl- libc.org/cgit/musl/tree/src/stdlib/abs.c)

<comment><USER17> Because it includes testcases.

<comment><USER18> You're absolutely 100% correct but to play the devil's advocate, what if he is talking about it being

glibc:

> return ( j >= 0 ) ? j : -j;

Musl:

> return a>0 ? a : -a;

<comment><USER19> It really doesn't matter, the compiler will generate the same code (gcc -S at least does generate the same assembler output for both pieces of code; see: [https://gist.github.com/reidrac/afb89b29228a243954bd51281c39...](https://gist.github.com/reidrac/afb89b29228a243954bd51281c39ee88)).

I guess looking at the definition: [https://en.wikipedia.org/wiki/Absolute_value#Real_numbers](https://en.wikipedia.org/wiki/Absolute_value#Real_numbers) I would say `( j >= 0 ) ? j : -j` is more accurate, although in practical terms is the same result.

<comment><USER20> They'd differ for floating-point NaNs.

<comment><USER3> But the input types here are int's.</comment></comment></comment></comment></comment></comment>


PG's Work Setup - <AUTHOR> http://paul.graham.usesthis.com/

<comment><USER2> Loved this quote:

"I don't know why Apple won't make something in between the Air and an iPhone."</comment>


Google's Self-Driving Cars Have Trouble with Basic Driving Tasks: Report - <AUTHOR> https://jalopnik.com/googles-self-driving-cars-have-trouble-with-basic-drivi-1828653280 <comment><AUTHOR> For me the true ai car potential can only be realized where they are all connected to each other and know what the cars around them are going to do</comment>


Linode down in Newark data center - <AUTHOR> http://status.linode.com/

<comment><USER2> "We have detected a large incoming DDoS attack to our Newark facility. We already have our administrators working to mitigate the attack. We will have service restored as soon as possible."

        [dan@palladium]# traceroute 220.127.116.11
         1  * * *
         2  ae12.dar02.sr01.wdc01.networklayer.com (184.108.40.206)  0.349 ms  0.351 ms                                                                                0.325 ms
         3  ae9.bbr02.eq01.wdc02.networklayer.com (126.96.36.199)  0.951 ms  0.966 ms  0.975 ms
         4  * * *
         5  * * *
         6  * * *
         ...

<comment><USER3> Where is that quote from?

<comment><USER4> Same here, got this reply from support :

"Linode 1 hour ago

Hello there,

We have detected a large incoming DDoS attack to our Newark facility. We already have our administrators working to mitigate the attack. We will have service restored as soon as possible. Please refer to the following page for status updates:

[http://status.linode.com](http://status.linode.com)

If you have any other questions please let me know.

Thank you.

Nick"

</comment></comment></comment><comment><USER4> New response from support :

"Based on the information we had at the time we believed it to be a DDoS attack. We are now aware that it was a power problem affecting our Newark data center. The backup system did not work and we are still looking for additional information from the data center staff.

We will be updating our status page with any further information.

Thank you."

</comment><comment><USER5> Seems like it was caused by a power outage.

      1:09AM EDT (UTC -4): The Newark datacenter has suffered from a power outage. We are working on bringing Linodes back up as soon as possible.

</comment><comment><USER6> As others have mentioned, we've seen reports of network and power outage, and now I've received a notice of hardware failure.

Just when I set up HA load-balancing, the whole data center outage takes it all down for 4 hours and counting.

        Hello,

        The host that your Linode resides on experienced hardware
        failure. As a result, drives are being transplanted to
        separate, known-working standby hardware which we keep
        available in case of events such as this.

        Again, we're very sorry for any inconvenience caused by
        this issue. Please feel free to update this ticket in the
        event that you have any additional questions or concerns.

<comment><USER7> Does Linode automatically check for, detect and replace faulty hardware? Or is this something you have to explicitly ask them to carry out?

<comment><USER6> Normally they just detect it and raise a ticket like this (which happened here).

</comment></comment></comment><comment><USER8> They previously had a message that Linodes would be returned to their previous state. Mine was rebooted. Just FYI. Check your DBs and all that usual stuff.

<comment><USER9> Mine was rebooted 2hrs ago but still cant access it.

<comment><USER8> That happened to mine, too, though not for as long.

I bet they had some host filesystem corruption and they're dealing with it manually.

<comment><USER9> Thanks for the encouraging words ;) Still not up, 5+hrs outage so far... EDIT: it was up, but the network interface was messed up for some reason. Rebooted again and its ok now.

</comment></comment></comment></comment><comment><USER4> Nodes are now being reported as stopped, but can't be started yet.

"An issue affecting the physical hardware this Linode resides on has been detected.

We are working to resolve the issue as quickly as possible and will update you as soon as we have more information.

Your Linode will return to its previous state once the issue is resolved.

Thank you for your patience and understanding."

</comment><comment><USER10> We have tens of servers across 4 Linode data centers. We get hit with both data-center-wide and single-server downtime pretty much on a weekly basis.

In the span of 3 months we had something like 25% of our servers go under "emergency maintenance" downtime. Just part of the ebb and flow of "the cloud", I guess.

<comment><USER11> Wow, that sounds pretty unlucky. Do certain data centers/servers have more downtime for you than others?

</comment></comment><comment><USER12> update: "The Newark datacenter has suffered from a power outage. "

so, no DDoS after all?

</comment><comment><USER13> Is it just me or does it seem like there have been tons of DDoS attacks the past couple months.

<comment><USER14> It sure feels that way, but I don't know if they are just being better reported now. Services to mitigate DDOS have been around for ages, so I imagine the attacks have as well.

<comment><USER15> It doesn't help that every time a service gets hit and the result is a frontpage HN post, more people notice that DoS attacks work for gaining "attention".

<comment><USER3> My understanding is that many recent attacks have accompanied ransom demands.

</comment></comment></comment></comment><comment><USER16> My server auto-rebooted and is back up, and has been up for 30 minutes as of writing (approx 1:00am EDT / UTC -4). Strange that mine is up and fine now, but they haven't updated the status page yet. Maybe mine is an isolated case?

<comment><USER4> Is your node location "Newark, NJ, USA"?

Mine are still very unreachable.

<comment><USER16> Yes, in Newark. I was also affected by this outage earlier. Looks like maybe I'm one of the luckier ones (relatively speaking).

</comment></comment></comment><comment><USER17> I feel like this should be included in every press release post down-time.

"As issues unfold, information changes and speculations can lead to improper actions based on incorrect information."

So very well said.

</comment><comment><USER18> Hanging out on #linode, it appears as if some people's servers are coming back up. This is the second day this week I've woken up to unpleasant computer news :-(

... and mine are back up.

</comment><comment><USER4> Complete blackout for my nodes, can't reach them at all. Even Linode dashboard stats for my nodes are empty starting 11:51.

Almost 30 minutes now, I hope it get fix soon!

</comment><comment><USER19> I have 12 websites there. zomg. Looks like they are alive now, after 2hrs outage. Did someone cut the cable for scrap metal?

</comment><comment><USER20> I think this is the first time I've ever noticed my own website being down.

</comment><comment><USER21> Some of mine back up, others not. Not how I wanted to end my Saturday night.

<comment><USER21> Evidently DC issues are fixed, since some of my servers are up again. Others still down due to (related?) hardware issue. Linode support proactively opened tickets about those that are still down, and upon friendly questioning, expressed a high level of confidence that they'll be back up once drives are migrated to stand-by hardware.</comment></comment>


My Two Years as an Anthropologist on the Photoshop Team (2015) - <AUTHOR> https://medium.com/startup-study-group/my-two-years-as-an-anthropologist-on-the-photoshop-team-e700acb7d3d5#.1vo4fv6rz <comment><USER2> As a lifelong Adobe user, I'd rather hear that Adobe is doing this kind of work at a higher level, that is, studying how users interact with all of their apps as a whole.

Instead of adding art boards to Photoshop, I'd rather see art boards in Illustrator integrated better with PS. And are the art boards in AI still exporting at non-specified dimensions (a very common bug for years)? Fix what is broken before adding features to PS that are already in AI.

Can anyone explain to me why copy/paste tools are different between AI/PS? Just make them the same!

Edit:typo

<comment><USER3> > Can anyone explain to me why copy/paste tools are different between AI/PS?

Because about thirty years ago, someone decided that Photoshop's copy and paste should work one way, and someone working on Illustrator decided they should work another way. They were not even at the same company back then. Now there are people who have those shortcuts carved into their muscle memory, and would holler bloody murder if it was changed. (Or just emit a very loud WTF?!? and hit up the key shortcuts panel to change them back to what they should be.)

</comment></comment><comment><USER4> I just linked to this article in the comments on "Why I turned down $500K and shut down my startup" [https://news.ycombinator.com/item?id=11866868](https://news.ycombinator.com/item?id=11866868) As what the author did is essentially ethnography.

Ethnography is a powerful tool! Talking to your users, and more importantly seeing first hand what they are doing with what you have built can drastically change how you view your application. If you have the ability to get out there and SEE your users in action, do it! It might just change your world.

</comment><comment><USER5> I can appreciate the need for an anthropological point of view when attempting to understand the shortcomings of a process that eluded the standard feedback loop before it, but I'd hope the findings are considered just a piece of the puzzle rather than the last resort for an entire solution.

</comment><comment><USER6> This could do well with a [2015] in the title, please?

Not because it's old and shouldn't be (re-)posted, but to clarify that it might have been here before. I know I've seen it somewhere earlier, and my guess would be HN.

<comment><USER7> Previous discussion, 8 comments: [https://news.ycombinator.com/item?id=9903354](https://news.ycombinator.com/item?id=9903354)

</comment></comment><comment><USER8> If this anthropologist used a wider scope, then the conclusion might have been that we, as a society, need less of Photoshop.

<comment><USER9> Makes me think of a new sub-field: "Prescriptive Anthropology"

</comment></comment><comment><USER10> that would mean listening to the user. unthinkable! me and my co-founded knows exactly what they want.</comment>


New JavaScript: ES7 and beyond - <AUTHOR> http://chrisnielsen.ws/whats-new-es7-and-beyond/ <comment><USER2> I think the vnext stuff is more exciting... object rest/spread, async/await, and additions to objects, let alone decorators being finalized...

These are all really useful features, and I think once they see adoption, that's when Babel usage will finally decline... for now, I can't see myself not using it.

<comment><USER3> I'm waiting for array comprehensions. Thud stuff is going to be just awesome</comment></comment>


Show HN: GraphQL at the Edge - <AUTHOR> https://github.com/stackpath/edgeengine-examples/tree/master/graphql <comment><USER2> So instead of running

      curl 'https://api.sunrise-sunset.org/json?lat=36.7201600&lng=-4.4203400&date=today'

I can deploy a bunch of code and then run

      curl -X POST -H "Content-Type: application/json" --data '{ "query": "{ hello, sun(lat: 36.7201600, long: -4.4203400, date: \"today\") { sunrise, sunset } }" }' <script-url>

Can someone explain why this is useful?

<comment><AUTHOR> Part of the benefit of edge implementations of serverless is that the scripts are deployed globally over a managed network. So deploying on the edge distributes the gateway as close to the user as possible (in this case IXs in major metro areas) and manages all of the traffic routing and loadbalancing. Which _almost always_ improves performance compared to a more traditional cloud implementation</comment></comment>


An iOS App in Assembly (2014) - <AUTHOR> https://github.com/richardjrossiii/iOSAppInAssembly <comment><USER2> Everyone that says "but it's insane to use assembly to write an iOS app!" is both 100% correct and 100% missing the point. It's nice to float around on the surface most of the time and ship useful code, but if you don't spend at least a little of your time digging deep you'll miss out on a lot.

I'd never try to do this in prod, and neither would OP, but it's great to see how it works under the hood.

</comment><comment><USER3> what is more interesting is his other project to make an application in pure C: [https://github.com/richardjrossiii/CBasediOSApp](https://github.com/richardjrossiii/CBasediOSApp). When you are doing cross-platform, you may be more at ease with a few lines of C for some utilities call if you don't want to learn objective C.

<comment><USER4> It's definitely NOT cross-platform. He's just calling the objective-c runtime from C.

<comment><USER5> Maybe I'm reading wrong, but I read it more that if the Objective-C interface is small, i.e. the bulk of your app is cross-platform C, you could easily use C to interact with the runtime.

<comment><USER6> So why not just write the Objective-C part in C rather than calling the underlying machinery directly. It's a neat project to learn the internals, but I wouldn't ever structure a real app this way.

<comment><USER7> If you write part of it in C, then you can reuse that code on another platform.

<comment><USER8> Objective-C is a superset of C though, so you might as well write the platform specific stuff in an .m file rather than messing around with the .c API for Objective-C. :)

</comment></comment></comment></comment></comment></comment><comment><USER9> As I have seen too many times to be surprised now, the source code and setup in assembly is much easier in asm than in higher level languages. Look for "COM programming with assembler" if you are curious. No casting, no bullshit. Just numbers pushed around :)

<comment> yoz-y I dunno. The massive amount of comments necessary to make this code remotely understandable is pretty telling.

<comment><USER10> And in one file there was a magic number #1536 or something, never got explained.

<comment><USER11> Explanation in the form of breadcrumbs:

1\. [https://github.com/kliment/Printrun/issues/619#issuecomment-...](https://github.com/kliment/Printrun/issues/619#issuecomment-102119718)

then

2\. [https://github.com/gnustep/libs- corebase/blob/master/Headers...](https://github.com/gnustep/libs- corebase/blob/master/Headers/CoreFoundation/CFString.h#L78)

</comment></comment></comment></comment><comment><USER12> Disclaimer: There are truly some madmen in the world.

Thought: I LOVE THIS! I would love to see a few more even more complicated examples .. wouldn't it be neat if it turns out that its easier to write apps in Assembly than Swift/ObjC, lol ..

</comment><comment><USER13> I know some people might not like this idea, but I feel more production systems should use _some_ assembly. Although everything is a bit much.

Also of the mindset we should be using more domain specfic languages.

</comment><comment><USER14> It's a cool stunt, but nothing more. The days of using assembly language in everyday business applications are long gone. Questions of portability immediately come to mind, as well as productivity losses relative to other companies/developers who are producing code faster and more efficiently.

<comment><USER15> Well, never estimate the power of "hobby". When announcing Linux 27 years ago, Torvalds said "just a hobby, won't be big and professional like gnu". Now name any device and probably someone has ported Linux to it.

In a similar way, probably old-school asm programmers will gather to write mobile app framework in assembly. You know, HTML/JS/Java/Swift is for sissies.

Of course I'm kidding :p</comment></comment>


India challenges 65,000 H-1B cap in the U.S - <AUTHOR> http://www.computerworld.com/article/3042040/it-careers/india-challenges-65-000-h-1b-cap-in-the-u-s.html <comment><USER2> India gets 2/3 of the visas.

[http://www.bloomberg.com/news/2013-08-20/india-nabs- nearly-t...](http://www.bloomberg.com/news/2013-08-20/india-nabs-nearly-two- thirds-of-u-s-h-1b-visas.html)

India has 1 million people turning 18 every month:

[http://www.nytimes.com/2016/03/06/sunday-review/the-world- ha...](http://www.nytimes.com/2016/03/06/sunday-review/the-world-has-a- problem-too-many-young-people.html)

</comment><comment><USER3> Since the US is increasing it's aid to India year over year to address the growing humanitarian crisis, I suggest a different alternative.

Use the H1-B fees to fund the foreign aid. Call it a 'ship jumper' tax.

In 2013 the government expenditure portion of foreign aid was 2.4BN USD. Divide that 65,000 ways and the fee equals roughly 37K USD per H1-B applicant.

Note: This only accounts for direct government spend. Which excludes NGO, organizational, and individual assistance.

With that in mind, 4K is practically a bargain.

\</comment><comment>----

In all seriousness, how about we address the real issues.

1\. Immigration is not a trade issue, period. Square peg, round hole. Different rules apply.

2\. India is already heavily overrepresented in H1-B issuings. Immigration shouldn't be limited to just those countries who spam the most applications. The US is a 'melting pot' not a 'life raft'.

3\. It's not realistic to expect the US to import the entirety of India's upper-caste.</comment>


Do People View All 360°? - <AUTHOR> https://blog.vrtigo.io/do-people-view-all-360-f60b858059fe <comment><USER2> No suprise here.

Conventional storytelling in visual media is all about directing the viewer's attention to where you want it.

Back in the 1990s I did some work with VRML and found that with the user interfaces of the time the user would usually turn his back to what he was supposed to see and then not be able to find it.

If you wanted to break the "looking ahead" pattern you'd want to design the scene so that important events happen in different places; one thing you will need is good audio cueing, and "stereoscopic" sound in headphones rendered by HRTF won't be good enough -- you probably want 22.4 sound, but a properly mixed 5.1 track and an optimal speaker system might be enough.

Also I have no idea how you light a 360 degree scene, both in the sense of "everything looks good" and "you don't see the lights".

Even in outdoor scenes, Hollywood-quality work requires the use of lights, reflectors and other tricks -- if you use real actors and don't light them well they'll go to the union and complain.

There is a large precedent in video game storytelling but even there, critical moments in the story are usually in cut scenes or rendered using "Visual Novel" conventions.

<comment><USER3> Half Life 2 was really good for telling the story while keeping the player in the action. Even during scenes where characters were just talking to you, you could play with the scenery and move around and pick things up. There'd be several people talking in a room and the game would expect you to turn around to face the person who is talking, then turn back around to see the other person respond.

It was a natural step from HL1 as players became more comfortable navigating 3D game worlds. I'm wondering if they're waiting for that moment in VR before choosing to make another story-heavy game like that.

<comment><USER4> Interactivity, yes. Action, no. Getting locked inside a room or waiting for a progress blocker to be done with is hardly "keeping the action".

<comment><USER5> I think you dont quite remember the context -- before Half Life 1's continuous 3D story telling, games would cut to video to move the story forward.

It was actually a revolutionary new story telling technique at the time that did "keep the action going" because you could explore the room as the characters talked.

<comment><USER4> I was pointing at HL2. As far as I can remember HL1 had like 2 or 3 lock in sequences (besides the loooong intro), while HL2 stops everything whenever someone talks and episodes have sequences that even lock the camera.

Yeah, HL1 was was revolutionary in that regard.

</comment></comment></comment></comment></comment><comment><USER6> Watching video has been a passive activity since its inception (with some modest exceptions). 360 video maintains all that passivity in its filmmaking, but adds an unnecessary and inconvenient (even if cool) piece of interactivity: turning your head. You can't even move around! It's cool, but it's largely a gimmick for most videos as they are now. Maybe filmmakers will develop new techniques for this technology, maybe not.

Games and other similar interactive content seem like a much better use of the technology.

<comment><USER7> As someone who had the opportunity to shoot a few of these last year [0], I wholeheartedly agree. There's so much left wanting out of the experience beyond the gimmick of the wraparound video. And, I'm not sure that films/docs translate 1:1 into VR. As you mentioned, interactive content (and thus new technology enabling this content) seems like a much better bet. You're already starting to see it with frameworks like ForgeJS from GoPro. I'd love to see the ability to export this type of content from the various engines (like Unity) into YouTube/Facebook. The only reason I still feel it's still more than a valid venue for content is the reach and access they've enabled for regular, mobile users as opposed to Oculus/Vive/etc.

[0] [http://robertobrambila.com/projects/gatesnotes-360vr](http://robertobrambila.com/projects/gatesnotes-360vr)

</comment></comment><comment><USER8> 360 will not be the _majority_ of future VR content. 360 is mostly a gimmick. yeah, sure, it is exciting to experience your first 360 video but the truth is that when we are viewing content, there is an intended focal point and plot.

You get higher fidelity content given a smaller space as well. People will choose the higher fidelity option where they are can conveniently view from their couch without turning around. Its a chore. We like to "veg" and just enjoy the movie/game.

Even the entire 180 sphere may be too much. People don't want to have to look straight up or straight down. There will be a sweet spot or "sweet zone" as more content starts to utilize VR devices.

<comment><USER9> Stage plays have some 'research' into this area. People want some separation between the 'action' and where they are sitting so they don't have to move their necks much. This is one of the reasons why the orchestra pit is where it is, acoustics also plays a significant role.

<comment><USER10> Interesting. My experience is hardly a representative sample, but almost all theater I've seen recently has tried to 'break down the 4th wall' (i.e., the invisible one between the actors and audience on a traditional stage). Some examples:

* The play is set in a fancy nightclub, with half the audience sitting on the stage and the actors also moving around the rest of the audience.

* The play is set in a restaurant, and the servers are actors (unknown to the audience until the play starts and your waiter starts participating).

* The play is staged in a large room; the audience moves to different parts of the room, among the set.

* The stage is essentially a long, wide hallway between two long rows of the audience.

On a related note, I've seen many plays where the actors engage the audience members directly, asking questions, having them participate; in one we were the class for a pair of teachers. What I've seen has worked very well; it's not corny or hackneyed, but smoothly integrates with and enhances the performance.

I've seen it so much recently that it can't be coincidence; it must be a trend in the theater.

<comment><USER11> There still tends to be a focal point, in my experience. Yeah they'll force you to look somewhere other than the "stage" (which may, in some venues, be a pretty amorphous thing but is still probably in one general area) to create or break tension, but it's not a constant gawk-fest where you're looking all over the place all the time.

Good theater doing this sort of thing uses it for emphasis. To force attention to shift or change or to make it clear to you that "something has changed".

Likewise, audience participation is there to give the audience the sense of being active participants, but still without demanding too much of them (unless it's really active improv or something). It has particular power, I think, in plays that are somewhat confessional in nature. Drawing the audience in to the conspiracy/shame/excitement is powerful there. But if it's a standard narrative I think it bogs things down a bit.

<comment><USER10> > There still tends to be a focal point, in my experience

Agreed. This one and the others are all excellent points.

In the past I found these endeavors to be gimmicky, but recently it seems like someone has found the winning formula. Despite being completely comfortable in the theater, I still find that the recent attempts have eliminated a last bit of reserve and distance in my mind.

I'd love to know what the new theory is; what is the model or idea that all these productions are embracing? It can't be coincidence.

</comment></comment></comment></comment></comment><comment> martin-adams _We believe the reason why so few people turn around and stay long enough to look behind them is due to stylistic choices made my filmmakers. Most videos orient users at 0° along the y-axis and keep the action focused there throughout the video_

Or they were sitting down?

<comment><AUTHOR> Absolutely this can be a contributing factor. Something we are interested in exploring in the future is "how" people are watching these videos. Are they sitting down, lying down on a bed, turning around in a swivel chair, etc.

However, we did notice that the majority of videos with lots of action tend to center their content at 0 degrees.

</comment></comment><comment><USER12> One rather awesome video you can look at is Senza Peso. It's implemented as a 'game' (though it's completely on rails), and you need a VR headset of course, but it's really well made.

Of course, most of the action still happens in front and to your sides. Not so much behind. That seems like a reasonable compromise with viewer attention, though.

[http://store.steampowered.com/app/496190/](http://store.steampowered.com/app/496190/)

There's a also a 2D opera version of the same concept, which you can find on YouTube. The VR version basically puts you in the role of the movie's (main? viewpoint?) character.

<comment><USER13> Nice! There's also a Squarepusher video that uses the same mechanic: [https://www.youtube.com/watch?v=6Olt- ZtV_CE](https://www.youtube.com/watch?v=6Olt-ZtV_CE)

</comment></comment><comment><USER14> > We believe the reason why so few people turn around and stay long enough to > look behind them is due to stylistic choices made my filmmakers.

I believe the reasons why so few people turn around and stay long enough to look behind them are the same reasons why they don't do so in real life.

Sure, if there are distracting/scary noises behind you you turn around, but otherwise you turn your body and concentrate your attention on something specific. And within that, at the less macro scale you foveate on the specific area of attention (hence their observation about the wider FoV of a headset...which isn't completely well attested IMHO).

So the filmmakers are doing what people do and want.

</comment><comment><USER15> So, basically what they're saying is that 360 content creators aren't making content that utilizes the full space well. People don't want to see a story unfold in 360 degrees, especially if they're sitting.

Not to put too fine a point on it, but we recently created a 360 video of a "Goat Yoga" session. Everyone involved in the yoga was in a circle around the camera with all the goats in the middle. The people watching the video are encouraged to stand at the beginning of the video or follow along with the yoga instruction. There's no narrative and yet we have analytics that show multiple people have viewed the video several times because they are the center of the action and it doesn't matter where they look, they still get a similar, but somehow custom, experience.

</comment><comment><USER16> This doesn't really surprise me. It's a bit like sitting on a tour bus I bet. Most of the interesting things are in the front and to the sides, so almost no one will be turning around, or looking up. This doesn't mean the full 306 degrees shouldn't exist however, just that human nature is always more excited about what's coming up rather than what's behind.

</comment><comment><USER17> It fascinated me to see the data that people average their gaze slightly downward (expected, we are taller than most our prey), and slightly to the right. Do we all have mild torticolis?

People also don't look up or behind them and especially don't look up and behind which is why rides e.g. at Disney leave pretty much all the rigging out in the open above and behind. Which makes the rides extra interesting if you know where to look.

<comment><USER18> I wonder if it's an artifact of the resting sitting position when driving a vehicle.

A dataset of where the resting head position is for people from locales which drive on different sides of the road, and of people with differing hand- dominance would be interesting.

<comment><USER19> Could equally be influenced by UI familiarity - MS Windows, KDE, Android, at least, default to system tray and clock on the right. Mouse hand, or related artefact of dominance of right-handedness ...

I'd expect a lot of VR users to be young gamers who don't yet drive?

</comment></comment></comment><comment><USER20> It drives me crazy to see 360* videos made like they are still flat.

The thing that bothers me the most is hosts that move... I don't want to move my head to watch the show!

Graphics also bother me.

If I had my choice: Minimal on-screen graphics and if any, they need to be duplicated and actually used in a 360* way ("Look behind you to see x") and no hosts, just narration.

<comment><USER21> Personally I think that there needs to be a separate "layer" for UI elements in 360* video encodings.

the whole thing of "show the title in 4 different places around you so you won't miss it" seems like a poor hack, and it feels like being able to include a separate "stream" which will be pinned to your view would alleviate a lot of the problems.

If you want to get fancy you could allow some programmatic interaction between the "view" and the "world" to give some kind of stylistic hint on where the user should look, but i'm not really sure how that would work, and at what point do you stop making a movie and start making a videogame?

<comment><USER20> Yeah, that is the hard part.

I think producers have to rethink it from the ground-up rather than trying to force a model for one format into a new format.

I've seen a few 360* videos that are well-made and were obviously made specifically for 360 but others are just like "We got a 360 camera, then stood in front of it and did the same thing."

</comment></comment></comment><comment><USER22> It's great for sports where the camera is attached to the athlete. For example mountain biking, paragliding etc. Sure, that's a small niche, but 360 isn't useless.

</comment><comment><USER23> Ockham's razor - perhaps people don't look behind them for two obvious reasons: (1) People rarely consume movies standing up (2) since you're not standing up, you'll probably be sitting down in which case craning your neck to see the action all the time is painful. Especially for 'pure movies' where there's no interaction with the scene, I think this is equally as likely as decisions by the filmmakers (in unfamiliar territory).

When I've played with VR at friends' houses, most of the time we've played sitting on the sofa or sat in computer chairs. There's a bit of craning, e.g. when playing flying games, but often you only need to do a bit of left/right head movement.

</comment><comment><USER24> I'm wondering: when recording these movies, where do the director and film crew hide? :)

<comment><USER25> For at least one scene filmed by Jaunt, the director was crouching in a trash can. I think it was for "Kaiju Fury" but don't quote me on that.

Looked for a source to corroborate, but I heard it in conversation with Jaunt people.

</comment></comment><comment><USER26> This reminds me a lot of some of the first home movies that were made, where people would just stand completely still in front of the camera, as they didn't really understand what the new device was capable of.

</comment><comment><USER27> One my favorite 360 videos is this Charity Water short documentary. [https://www.youtube.com/watch?v=nlVIsVfWwS4](https://www.youtube.com/watch?v=nlVIsVfWwS4). Specifically because it's very interesting and immersive to look around.

Another good one is the SNL Seinfeld monologue [https://www.youtube.com/watch?v=6HS9h4xFRww](https://www.youtube.com/watch?v=6HS9h4xFRww). Because of the audience participation you crane your neck around to see who's talking.

<comment><USER28> Charity water is really great, But I wasn't really convinced until I saw this ad [https://www.youtube.com/watch?v=UAldTk8dxPY](https://www.youtube.com/watch?v=UAldTk8dxPY)

</comment></comment><comment><USER29> Last 360 video I watched I turned around and there was nothing there (just landscape and no action or narrative) so not surprised at all. Story tellers just aren't accustomed to using the whole field.

<comment><USER19> It would be interesting if there were an entirely separate scene playing out - but stuff only happening in one place is a limit of physical bodies, surely.

</comment></comment><comment><USER30> Something most people don't realise is these 360 videos are typically Monoscopic. You don't get any feeling of depth because a lot of 360 cameras are a single lens.

I much rather prefer 180 Steroscopic, these are videos that are two videos either Side-by-Side or Over/Under. Then mapped to each eye.

180 fills enough space which is supported by these findings in the post but give you a much better feeling of immersion.

<comment><USER31> It's "easy" for monoscopic because the camera is just a point in the center, but once you add in eye separation it needs to be in a physically different position depending on what direction you're looking.

Conceivably Lytro's light field camera could give you stereostopic 360 video, but the amount of data required for separate eye perspectives in every direction is colossal. The camera apparently captures video at something like 300 GB/s.

[https://vimeo.com/161949709](https://vimeo.com/161949709)

</comment></comment><comment><USER32> Common-sense (WAGging) says that IRL, we don't use a full 360-degree view, either. Maybe in a warzone, where it's a survival trait, but most days, we focus on what's in front of us.

We also use subconscious cues to let us know important things are happening outside of our FOV and forces us to change it. Has VR reached the point where it can make those cues possible?

</comment><comment><USER33> Maybe, one should evoque the possible truth that, how can I say.... well simply that 360° videos are just not needed for tha majority of users. I sure may be wrong but I feel that in the brotwser/or/ youtube, 360° videos are brotwsernkç noonsense.brotwsernk In virtual reamity helmet, I woukd bet a dollar ororbut two for its success, but not my flat...

</comment><comment><USER34> I would also propose that its partially not wanting to get the cord wrapped around my neck.

</comment><comment><USER35> A lot of adult video using this sort of technology often only bothers with 180°. For obvious reasons. But it does also mean that the files (and video frames) can be a lot smaller/better quality.

</comment><comment><USER36> I'm surprised porn wasn't a genre type.. That would have been interesting.

</comment><comment><USER37> _Add a button to quickly do a 180_ so you don't have to crane your neck.

</comment><comment><USER38> I'm developing a 360 degree VR video player for JauntVR, and I've just implemented an experimental "roll-to-yaw" interface based on using the "head bobble" gesture [1] (roll) for turning around (yaw). ¯\\_(ツ)_/¯

It seems to work ok, but I haven't yet done much user testing yet to see if it makes you puke or gives you a sore neck. It's so obvious I wouldn't think of patenting it, and I'd much rather share the idea and benefit from other people's experience.

The jury is still out on whether it sucks or not, and you really have to try it to know what it's like, but I'd appreciate feedback from anyone who's seen or tried anything like that, wants to hack it up and try it themselves, or even links to research, thought experiments or rules of thumb anyone has which might apply.

It's very simple: roll your head to the right to yaw to the right, roll your head to the left to yaw to the left. Of course there is a neutral "dead zone" so you have to roll enough past the threshold to start turning, and the speed you turn ramps up as you roll even more. The ramp can plateau at a maximum speed to keep you from spinning too fast. The range of the dead zone and the slope and plateau of the ramp are configurable parameters, which need to be tuned.

Head roll or bobble isn't a common gesture in my culture, so I thought it would be good to use for turning around, since you wouldn't do it accidentally very often (once it's properly tuned), and it's easily reversible. However the head bobble is more common and has meaning in Indian culture! [2] So I'd like to hear from anyone who bobbles their head on a regular basis!

As well as tuning the ramp parameters, it is possible to filter and debounce the gesture so you didn't turn around accidentally when you bobbled your head expressively.

The roll-to-yaw interface requires more tuning and experimentation of course, but since rolling your head is a much less common gesture than pitching up and down and yawing left and right, it seems useful to use it for turning (yaw) around.

I think it's important to have a way to turn your virtual body around without actually turning your physical body, so you can still comfortably view the entire 360 degrees of immersive video while sitting down or attached to the computer by wires.

Here's one of my favorite papers that has some great ideas about pragmatic issues which apply to all kinds of user interfaces: Buxton, W. (1983). Lexical and Pragmatic Considerations of Input Structures. Computer Graphics, 17 (1), 31-37. [3]

"PRAGMATICS

In examining the two studies discussed above, one quickly recognizes that the effect of the pragmatic level on the user interface, and therefore on the user model, is given very little attention. Moran, for example, points out that the physical component exists and that it is important, but does not discuss it further. Foley and Van Dam bury these issues within the lexical level. Our main thesis is that since the primary level of contact with an interactive system is at the level of pragmatics, this level has one of the strongest effects on the user's perception of the system. Consequently, the models which we adopt in order to specify, design, implement, compare and evaluate interactive systems must be sufficiently rich to capture and communicate the system's properties at this level. This is clearly not the case with most models, and this should be cause for concern. To illustrate this, let us examine a few case studies which relate the effect of pragmatics to: 1) pencil-and-paper tests of query languages 2) ease of use with respect to action language grammars 3) device independence"

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

[2] [https://www.youtube.com/watch?v=Uj56IPJOqWE](https://www.youtube.com/watch?v=Uj56IPJOqWE)

[3] [http://www.billbuxton.com/lexical.html](http://www.billbuxton.com/lexical.html)

<comment><USER39> I'm out of the industry now, but one more intuitive option we implemented was to magnify pan rotations, such that a user only has to turn their head through 120º (tuneable) to turn a full 360º. Thus a seated user doesn't have to strain their neck to get the full experience. Even in immersive VR, we aren't especially bothered by the lack of 1:1 rotation.

<comment><USER38> Wow, eyesee, what you did there looks cool at first glance! Thank you for sharing your idea -- I will try it out and see how it works in different situations.

</comment></comment></comment><comment><USER40> Maybe because it is difficult to rotate one's head for 180°...

</comment><comment><USER41> >VR analytics

Where people look in VR depends on the content. That's all there is to it.

That blog post is terrible advertising for your company, as it shows that you will gladly create bullshit content around a trivial fact to boost sales.

<comment><USER42> I think you just described the content marketing strategy of every company ever.</comment></comment>


Great Companies Obsess Over Productivity, Not Efficiency - <AUTHOR> https://hbr.org/2017/03/great-companies-obsess-over-productivity-not-efficiency <comment><USER2> How does one measure productivity?</comment>