Getting randomness from an Apple device with particle physics, thermal entropy - <AUTHOR> https://vault12.com/blog/true-entropy <comment><USER3> I'm not familiar with how the video is encoded, but maybe you have to be careful to make sure that the encoding doesn't introduce correlations between adjacent frames (you can imagine how P or B frames might have correlated noise, for example).

Also, I don't think you'll ever see Cosmic Ray interactions last more than one frame... the time scales for cosmic ray interactions are in nanoseconds, not ms. I suppose electrons could get trapped somewhere and diffuse slowly (that does happen in some CCD's, I don't know enough about CMOS sensors to know if that can happen), but that would happen with bright images in addition to cosmic rays.

In such a small sensor, cosmic rays should be relatively rare. To first order, you can model the number of cosmic rays you see as a Poisson process, which should be a pretty good source of entropy. You can even estimate the rate based on altitude / sensor orientation, etc. However, nearby cosmic ray detectors will detect correlated cosmic rays (from extensive air showers from the same primaries), which might hurt.

<comment><AUTHOR> The key property for crypto randomness here is that these high energy particle events (be that cosmic rays, background radiation, etc) are not just random, but independent from thermal noise. They are few and far between but they affect each sample somewhere. One way or another all that entropy will get hashed, and having even few bits that are contributed by independent phenomena makes final hash extremely hard to attack.

Considering all sources that contribute noise to sensors (thermal, light photons count, high energy particles, shot/RTS noise, and i'm probably missing a few), all with unique distributions and characteristics makes each sample readout very hard to predict.

</comment></comment><comment><USER4> Tangentially, I wonder if most modern smartphone chips include a hardware random number generator, and if that is exposed to userspace?

The iPhone has hardware random number generator, at least: _" The Secure Enclave is a coprocessor fabricated in the Apple S2, Apple A7, and later A-series processors. It uses encrypted memory and includes a hardware random number generator."_

[https://www.apple.com/business/docs/iOS_Security_Guide.pdf](https://www.apple.com/business/docs/iOS_Security_Guide.pdf)

I couldn't immediately find if that functionality was exposed in an API.

<comment><AUTHOR> worth mentioning (that sort of main premise of the article that gets a little bit unnoticed in all the methodology discussion): all existing HWRNG are relatively low bandwidth - because they are bound by physical process, rather then endless spinning up of /dev/urandom. They all have to wait for physics to produce each bit, and existing chips don't have that much "physics" in them.

The main novelty factor of "camera noise HRNG" is that we effectively leveraging 12M micro HRNGs in parallel - thats where that firehose of entropy is coming from.

<comment><USER5> > all existing HWRNG are relatively low bandwidth

The Intel on-die DRNG generator has a cited bandwidth of about 3 Gbps [1]. On my Raspberry Pi 3, it has an on-die generator via BCM-2835. Single threaded testing with dd(1) shows about 1.5 Mbps bandwidth.

Off-chip, using $25 RTL-SDR dongles, you can get about 2.8 Mbps of bandwidth. In fact, if you look at the Wikipedia article comparing HWRNGs [2], you can see that there are a lot of implementations with suprisingly high bandwidth. Some you'll empty your wallet with, others not so much.

The point is, there are plenty of HWRNGs out there with high bandwidth. Whether or not you trust them though, is a completely different matter.

1\. [https://software.intel.com/en-us/articles/intel-digital- rand...](https://software.intel.com/en-us/articles/intel-digital-random- number-generator-drng-software-implementation-guide)

2\. [https://en.wikipedia.org/wiki/Comparison_of_hardware_random_...](https://en.wikipedia.org/wiki/Comparison_of_hardware_random_number_generators)

<comment><AUTHOR> Here is the problem: most of these stats are not what they pretend to be (unless exact circuit / spec is published). Look at low level details of building say avalanche noise source: [http://holdenc.altervista.org/avalanche/](http://holdenc.altervista.org/avalanche/) \- bandwidth is mostly bound by voltage/frequency/sampling resolution - <USER2> often you can trigger entropy event and how many of them in parallel? True result for one AN circuit: 2000 bits/sec.

What a lot of these vendors do is have some physical phenomena on the chip that feeds hardware "whitener" (endless hashing) that responds without blocking to all requests. That's practically hardware version of "/dev/urandom" that is bound only by chip IO - but its completely disconnected from bandwidth of actual "true" entropy phenomena underneath. of course it is still good CSRNG, but its not "true" source. btw nice exception: TrueRNG team are pretty honest providing direct schema - hence the real entropy speed of 40kb/sec.

In short every single entry on that list should be independent inspected down to specs and schema of whitener. If they are not publishing chip spec with exact details I highly highly doubt the bandwidth of "true" entropy events are really approaching GBps - this is the speed of whitener, not of actual generator.

</comment></comment></comment></comment><comment><USER6> Really approachable writing. Fun read!

For people that want to read about other entropy sources: [http://www.fourmilab.ch/hotbits/how3.html](http://www.fourmilab.ch/hotbits/how3.html)

<comment><AUTHOR> Matthew, there is my personal collection of entropy sources for your reference. That stuff is addictive!

\- True quantum source: [http://whitewoodsecurity.com/products/entropy- engine/](http://whitewoodsecurity.com/products/entropy-engine/)

\- Atmospheric noise: [https://www.random.org/randomness/](https://www.random.org/randomness/)

\- Avalanche Effect Generators [http://holdenc.altervista.org/avalanche/](http://holdenc.altervista.org/avalanche/) [http://ubld.it/truerng_v3](http://ubld.it/truerng_v3)

\- Great deck about overall entropy engineering [https://www.blackhat.com/docs/us-15/materials/us-15-Potter-U...](https://www.blackhat.com/docs/us-15/materials/us-15-Potter- Understanding-And-Managing-Entropy-Usage.pdf)

And of course "lave wall" we mentioned just takes the cake: [https://sploid.gizmodo.com/one-of-the-secrets-guarding- the-s...](https://sploid.gizmodo.com/one-of-the-secrets-guarding-the-secure- internet-is-a-wa-1820188866)

</comment></comment><comment><USER7> A question for physicists - how do we know that some process in the nature is truly random and conforms to some ideal probabilistic distribution? The link between math and real world is not clear to me. Thanks!

<comment><USER8> [https://medium.com/@oskansavli/bells-theorem-and- randomness-...](https://medium.com/@oskansavli/bells-theorem-and-randomness- ffe9820c88b) is a good write up of the relationship between randomness and Bell's theorem.

</comment></comment><comment><USER9> Interesting fact: on Darwin, /dev/random and /dev/urandom behave identically; both are nonblocking: [https://developer.apple.com/legacy/library/documentation/Dar...](https://developer.apple.com/legacy/library/documentation/Darwin/Reference/ManPages/man4/random.4.html)

<comment><USER10> RLY? How on earth can a read from /dev/random be non blocking if it does not have sufficient entropy?

My understanding is that /dev/random "promises" to return decent random stuff, /dev/urandom returns decently algorithmically generated random stuff. urandom is good, random is better but finicketty and can sulk for a while.

<comment><USER5> > RLY? How on earth can a read from /dev/random be non blocking if it does not > have sufficient entropy?

In short, to answer your question, I am not aware of any /dev/random that will not block if not sufficiently seeded with enough entropy. Linux is the only kernel where /dev/random always blocks when the input pool entropy estimate is low. This is highly criticized in most security communities.

Mac OS X and iOS have implemented the FreeBSD CSPRNG, of which /dev/random is a symlink to /dev/urandom. The CSPRNG blocks on boot until it's sufficiently seeded with hardware timing events. Once seeded, it never blocks again.

On NetBSD, /dev/random sometimes blocks, although not as notoriously as Linux. However, it will fully block on boot until sufficiently seeded, after which it no longer blocks.

OpenBSD also provides no functional difference between /dev/random and /dev/urandom. Both will block until sufficiently seeded.

As far as I know, on every Unix-like operating system, data is saved from the generator to disk on shutdown, and on boot, that data is read into the CSPRNG as an unpredictable seed. With every GNU/Linux operating system I can think of, this happens as part of the install, so on first boot, the kernel is already sufficiently seeded with random data.

On FreeBSD, this seed is saved to "/var/db/entropy-file". On GNU/Linux, either "/var/lib/systemd/random-seed" or "/var/lib/urandom/random-seed" depending on whether or not you're using systemd. I'm not sure of NetBSD saves a seed to disk or not, as it's been many years since I've last run NetBSD seriously.

<comment><USER11> The saved seed file on OpenBSD is /etc/random.seed . NetBSD has the /etc/rc.d/random_seed service, which uses the same filename as FreeBSD.

</comment></comment></comment></comment><comment><USER12> There can be a few pitfalls here. Assuming that the dark field image of the Apple camera is actually random noise and not some property of the sensor that can vary between images.

Getting the distribution of the randomness can be hard.

<comment><AUTHOR> you are quite correct about this - "lens closed" mode has least amount of entropy by our measure. However its clearly proportional to intensity of light hitting the sensor (and beside natural photon variance of light itself, the shot noise in sensor increases with more light). So in what we call "optimal" conditions - enough light to generate noise, not enough to oversaturated there is plenty of natural entropy coming from the sensor.

</comment></comment><comment><USER13> This reminds me of SID, the custom sound chip on the Commodore 64. It was a hybrid digital/analog chip, so the sound which it produced wasn't consistent between chips due to thermal entropy effects. El33t h4x0rz took advantage of this by making the SID output a bit of white noise into a CPU register rather than the speakers in order to get true random numbers.

</comment><comment><USER14> Alexandre Anzala-Yamajako posted interesting comments on this to [Cryptography] (@metzdowd.com):

> IMO a statistical approach based on taking a bunch of data a saying > essentially "I don t see any signs that it s not random" is not a good > approach for entropy seeding. The example is old but I could give you the > output of an AES in counter mode with a null key and a null iv and no > standard statistical test woud ever show you any defects while you have > absolutely no entropy.

> You case is particularely worrisome for several reasons 1) you use a von > neuman like extractor but you have also shown that your data is not only > biased but also correlated 2) you don t seem have a model of your hardware > source from which you could derive the output distribution 3) you do some > wizardry to remove some correlation but nowhere show or prove that there isn > t more corrolation to be taken care of or how 4) I didn t see in your > document a justification of the fact that the manufacturer of the camera > (soft and hardware) doesn t have more information than you and could > therefore target defects in your entropy management procedure.

> You should have a look at the work of Viktor Fischer, David Lubicz, Florent > Bernard and patrick Haddad. They invested quite a bit of effort to give > entropy guarantees when using very specific hardware device.

Skibinsky subsequently responded:

> Alexandre, thanks for reading and suggestions! I will certainly check out > your references.

> As it is probably obvious from the essay-style narrative, this is not > intended to be a tight scientific paper, just our research log of first > order ideas we coded up for minimal working prototype. You are correct on > #1,#3 - current codebase doesn't addresses these issues. #2 is interesting, > because besides wide variety of camera hardware that model should reflect, > iOS camera parameters present us with an opportunity to create optimal > hardware source. This is far from our area of expertise, so I hope somebody > in open source community will pick it up from here and figure out both > formal model and what physical settings will optimize the source.

> Thanks again for great suggestions, I will further emphasize impact of > correlations & VN sensitivity to non-IID in final section.

> Most likely practical direction of course is simply use universal hash > extractor instead of VN, since it relaxes a lot of requirements.

</comment><comment><USER5> This is really cool. The fact that I can, basically, carry around a TRNG in my pocket is like, the ultimate nerd. Other than reseeding /dev/urandom, I don't really have any personal need for it, but the discussions that can be generated from it could be very interesting.

<comment><AUTHOR> my motivation from a while back was it would be so useful to have something that you can dump few megs of independent entropy into your /dev/urandom right before generating BTC/ssh keys. TrueRNG stick is also good, but just 40kb/sec (i have TrueRNG on cron job reseeding every hour anyway)

</comment></comment><comment><USER15> Wouldn't a lossy JPEG (or HEIC) compression reduce the entropy?

<comment><AUTHOR> That would be correct! However we getting values from raw camera video buffer before any compression takes place.

</comment></comment><comment><USER16> Couldn't you have used more formal methods for spatial autocorrelation?

<comment><AUTHOR> Do you have any references of existing code or research that deals with correlation issues? We considered few home grown ideas (like measuring correlation level in each sample and then compacting a sample by that % before quantizing) but all of them were pretty computationally heavy...

<comment><USER16> I'd just google "spatial autocorrelation correction," the top few hits are good intros. This is a pretty mature statistical field.

Lots of examples in ecology. Most techniques are regression based and pretty doable.

</comment></comment></comment><comment><USER17> > Take two video frames as big arrays of RGB values.

> Subtract one frame from another, that leaves us with samples of raw thermal > noise values.

> Calculate the mean of a noise frame. If it is outside of ±0.1 range, we > assume the camera has moved between frames, and reject this noise frame.

> Delete improbably long sequences of zeroes produced by oversaturated areas. > For our 1920x1080=2Mb samples and a natural zero probability of 8.69%, any > sequence longer than 7 zeros will be removed from the raw data.

> Quantize raw values from ±40 range into 1,2 or 3 bits: raw_value % 2^bits.

> Group quantized values into batches sampled from different R,G,B channels, > at big pixel distances from each other and in different frames to minimize > the impact of space and time correlations in that batch.

> Process a batch of 6–8 values with the Von Neumann algorithm to generate a > few uniform bits of output.

> Collect the uniform bits into a new entropy block.

> Check the new block with a chi-square test. Reject blocks that score too > high and therefore are too improbable to come from a uniform entropy source.

This reads like a highly ad-hoc process with nothing resembling a formal justification for any of its steps; nor its general outline, nor any of the magic numbers used in it. It's unclear what properties are being achieved and how exactly the steps guarantee those. There is no analysis of the predictability of the data by an adversary, either.

What does this get you that SHA512'ing the entire raw image bitmap doesn't? Using statistical tests makes sense to verify that the camera data isn't pathologically anomalous (say, all zeroes or all 255), but I don't understand why this sort of procedure is preferable to using a strong hash function to extract randomness from an image sensor's output.

<comment><AUTHOR> you are completely correct - as I mentioned in the end this would be easier extractor: "Want to relax IID assumptions and avoid careful setup of a non- correlated quantizer? Easy — use any good universal hash function. The only new requirement is that the universal hash will require a one-time seed. We can make an easy assumption that the iPhone local state of /dev/urandom is totally independent from thermal noise camera is seeing, and simply pick that seed from everybody's favorite CSPRNG."

The main reason we went with VN instead of SHA or universal hash is just was more fun thing to build/experiment with. SHA is like flamethrower that will deal with anything you throw at it. VN is far more brittle and you see all mistakes in scenery or generation. Of course then you hash the output anyway before use!</comment></comment>


Will the Ebola virus go airborne? - <AUTHOR> http://www.nature.com/news/will-the-ebola-virus-go-airborne-1.15943 <comment><USER3> I really see the strong, immediate pushback against this idea as mainly an attempt to calm the lay audience. Ebola has been airborne in other species before, and it's very nearly airborne in humans - this is certainly not a virus like HIV where even unprotected sexual intercourse has a low infection rate - we've got a huge number of infected doctors and healthcare workers, and there are calls for this to be treated like SARS:

"Infection control concerning EVD is not working, especially when more than 240 [now 300] healthcare personnel have been infected, and more than 120 workers have died. Guidelines used to control SARS in 2003 should be used, not "contact and droplet protection of 1-2 meters," as is still recommended by WHO.

Personal protective equipment (PPE) for contact and airborne infections should be used because of a) respiratory symptoms, b) a big distance -- up to 9 meters -- for droplets when coughing and sneezing (Bourouiba et al. J Fluid Mechanics 2014;745:537-563.), c) re-aerolization from the environment, bed clothes etc., d) long survival of the virus outside the body, and e) high lethality.

Healthcare workers (HCW) and helpers should be protected with PPE as they were during the SARS epidemic."

[http://www.promedmail.org/direct.php?id=20140914.2773490](http://www.promedmail.org/direct.php?id=20140914.2773490)

The real question is more like, will Ebola mutate to be more airborne than it already is?

<comment><USER4> That's all well and good but a slew of actual virologists disagree with this, citing examples such as no viruses affecting humans ever changing from being spreadable via bodily fluid/direct contact to becoming aerosol. This includes all viruses that have ever been known to affect human beings.

So, yes, while it is theoretically possible, it is extremely unlikely and really not worth discussing because no good can come from it.

<comment><USER5> In a few months it's flu season. A large part of the population will be sneezing and coughing. I don't wish to find out what happens when someone with ebola is introduced in such a system (e.g. infected doctor returning to the west). But your call for silence on the subject is nothing but short- sightedness.

<comment><USER4> It's not my call to make. It's the call of the numerous individuals who are infinitely more qualified than anyone reading and posting on HN. People that work at places like the CDC and have years of training and experience researching the effects of viruses like Ebola. They're all saying not to worry about that.

Even if they strongly suspected it will become airborne (based on something other than theory), do you think they'd just announce it to the public like "oh, hey, btw..."? Can you imagine the hysteria that would cause? Not "a bit" like another poster suggested. The effect of the hysteria could very well be worse than what the virus might cause on its own. It's really impossible to know, that is why we take measures to prevent getting worked into a highly irrational hysteria. These measures would include things like listening to qualified individuals and not ignoring the rational points they are trying to make to you.

</comment></comment></comment></comment><comment><USER6> Often these types of articles go in one ear and out the other of people with irrational fear of the unknown or are incapable of understanding the way a researcher might discuss the topic. I feel this is often the case simply because those spreading misinformation love to use very charged words that incite a lot of emotion while those in authority to speak on the subject use terms with strong meaning in science but have much less impact in regular speech.

This is a good example. The article's quotes use plenty of words like "remote chance" or "highly unlikely" which don't seem to drive home the point that its "so nearly close to impossible its not worth humoring". Meanwhile, New York Time's publishes an article read my many more viewers with comparisons to the Plague, using terms like "hyper-evolution" and really ridiculous comparisons that are just taken out of context for the sake of fear.

Its no wonder you get such "stupid" responses on news article comments, the entire thing is written to rile up readers and get an emotional response while hiding the actual science.

Heck, even reading the two articles side by side you get very different stories of the same event (regarding the Ebola lab tests between Pigs/Monkeys in 2012). On NYTimes they indicate that Pig -> Monkey transference was possible then the Monkeys all had to be euthanized to "contain the outbreak". Meanwhile SA article states that the virus was never capable of going Monkey -> Monkey.

</comment><comment><USER7> > Will the Ebola virus go airborne?

> Experts say the possibility remains remote.

Seems like the article is acknowledging Betteridge's Law of Headlines in the subtitle. Very convenient!

<comment><USER8> Betteridge's Law of Headlines should really be referenced more often with clickbaity titles like this.

<comment><USER9> I wish either the title requirements or HN users with sufficient karma could allow/add a @SavedYouAClick-style tag to these stories that would list on the front page ("Will the Ebola Virus Go Airborne? [Probably Not]"), rather than having the Betteridge's Law of Headlines discussion in every such thread.

<comment><USER8> Agreed, that would be even better still.

</comment></comment></comment></comment><comment><USER10> This article, as well as the nytimes.com op-ed piece, misquote/misinterpret the 2012 Canadian study that supposedly showed transmission from pigs to monkeys via air.

From the text of the study:

"Under conditions of the current study, transmission of ZEBOV could have occurred either by inhalation (of aerosol or larger droplets), and/or droplet inoculation of eyes and mucosal surfaces and/or by fomites due to droplets generated during the cleaning of the room."

Also from the study:

"The experimental setting of the present study could not quantify the relative contribution of aerosol, small and large droplets in the air, and droplets landing inside the NHP cages (fomites) to EBOV transmission between pigs and macaques. These parameters will need to be investigated using an experimental approach specifically designed to address this question."

People need to be careful about how they read these academic articles. The authors of the two aforementioned news articles misinterpreted the findings of the study in a way that supports their personal viewpoints.

I do agree that this issue needs attention, but not misinformation.

Link to actual study: [http://www.nature.com/srep/2012/121115/srep00811/full/srep00...](http://www.nature.com/srep/2012/121115/srep00811/full/srep00811.html)

</comment><comment> chestnut-tree I mentioned this in a previous discussion on Ebola, but thought it might be worth repeating. Last week, the BBC broadcast a generally informative documentary about Ebola. The programme talks to survivors of the virus, to the staff of Médecins Sans Frontières (MSF) treating victims, to Peter Piot, the Belgian doctor who discovered the virus (and established that the disease was not airborne) and the medical staff seeking a cure. There are some harrowing scenes.

For UK viewers, it's available on iPlayer until Friday 19 Sept. 2014 [http://www.bbc.co.uk/iplayer/episode/b04hcthj/](http://www.bbc.co.uk/iplayer/episode/b04hcthj/)

For everyone else, someone's uploaded it to YouTube, although the last 10 minutes are missing [https://www.youtube.com/watch?v=bjuQofIleOg](https://www.youtube.com/watch?v=bjuQofIleOg)

</comment><comment><USER11> Great article. Isn't it obviously that Ebola or any other deadly virus is unlikely to become highly contagious via air simply because we don't see mass airbourn infections very often. (Do we ever see them?) If such mutations were likely, then we would see them. Massive plagues, wiping out something like %50 of the population would be common. There have been mass plagues in history of course, however, they are somewhat rare and often the result of poor sanitation. That's not as much of a problem in the modern world, although the third world still struggles with it. Worse yet, if airborn mutations were likely, then we would probably not see them at all, because evolution would not have brought about highly complex creatures. We would always get killed off by disease before making that far.

<comment><USER12> There are selection pressures against infections that kill the host. That may explain why highly quickly-lethal viruses are rare.

<comment><USER13> This is generally true, though occasionally parasitoid relationships are selected for (where there's a fitness advantage to killing off the host). Though these relationships typically only occur with an r selected host (many offspring, low probability of survival). Thankfully however humans are very heavily K selected (few offspring, high probability of survival).

</comment></comment></comment><comment><USER14> The question of "will Ebola become airborne" is academically interesting, but not particularly relevant. The virus spreads just fine with its current mechanism: when you're excreting loads of virus via blood, saliva, sweat, feces and vomit, "body fluids" becomes a very effective means of transmission.

I live in San Francisco, and I can't tell you the number of times I encounter "body fluids" out in public. Last night, I nearly stepped in a pile of vomit on Market Street. Imagine that the vomit was from a man who recently returned from Nigeria. He'd been coming down with flu-like symptoms, and was on his way to his minimum-wage job as a prep cook, when he felt nauseous and threw up on the sidewalk. But it's a big city, and vomit on the sidewalk isn't uncommon. Nobody notices.

Over the course of several hours, dozens of people accidentally step in the vomit, getting it on their shoes. Some of those people go home, take off their shoes, and touch their face without washing their hands. The virus has now spread to unsuspecting people all over the city. Meanwhile, the prep cook is sweating over a pile of lettuce in a hot, cramped kitchen. His fever isn't helping matters, and it won't be long until he feels ill again, and visits the bathroom. He's supposed to wash his hands before returning to work, but he's not feeling well, so he doesn't do the greatest job. Back to work -- there are salads to prep!

It's the start of cold and flu season, so the dozens of people infected in the last day won't think twice when they come down with a fever. They'll go to work for a few days with what they think is a cold (because most people do, these days), and spread body fluids in all the normal ways that people do: touching their faces, then shaking hands. Touching the office lunch without washing their hands. Coughing. Sweating. Throwing up in the bathroom -- how many people get sick during a workday? How many people disinfect the aftermath with bleach?

It will be a week or more before anyone realizes that there are people dying across the city from what looks like a bad fever -- why would anyone suspect Ebola in the US? By the time epidemiologists become aware that there's even a problem, the virus will have spread to hundreds of random individuals in one of the most densely populated cities in the world....

<comment><USER15> >but not particularly relevant. The virus spreads just fine with its current mechanism

This strikes me as a rather weak argument. Just because something "works" doesn't mean evolution/gene mutation won't find a way to make it work more "efficiently".

I'm also wary of drawing parallels to anything we see in a "modern" country...sure flu etc is contagious too - beyond that they are barely comparable though.

<comment><USER16> I don't think the issue is whether mutation might make it work more efficiently, but the _probability_ that this might happen.

To estimate that you need to understand the precise mechanisms of variability, and the likelihood that the genetic elements that create Ebola symptoms could combine with the genetic elements that make influenza and rhinoviruses so infectious.

Obviously there's no teleology in mutation. But as infected populations increase, so does the possibility of dangerous recombination.

 _How much_ it increases, and whether we're talking about lottery odds, poker odds, or coin toss odds, is something only virologists know.

But apparently there's a second order health problem. You don't just want to minimise the spread for obvious practical reasons - you also want to minimise it because the bigger the infected population, the bigger the risk of dangerous mutation.

</comment></comment></comment><comment><USER17> > In fact, there's almost no historical precedent for any virus to change its > basic mode of transmission so radically.

almost no meaning "just" smallpox?

<comment><USER13> I suspect that this conclusion has more to do with lack of data, than what's actually occurring in nature. Although we've made a lot of progress over the last two hundred or so years in biology, there're still plenty of things that remain unknown.

</comment></comment><comment><USER18> as it is already infectious on the infected fluid contact, it just need to learn to hitch a ride in a micro-drops of fluid people breath out (like the flu virus, though in case of flu the virus learned to make people cough - <USER2> helps to shoot the micro-drops out)

</comment><comment><USER15> At the present rate its going to be a disaster with or without airborne anyway.

</comment><comment><USER19> [https://en.wikipedia.org/wiki/Betteridge's_law_of_headlines](https://en.wikipedia.org/wiki/Betteridge's_law_of_headlines)

</comment><comment><USER20> Are risks ever downplayed due to question marks in headlines?

Have we reached Peak-Betteridge?

Will we be following on after this with the weather?</comment>


Arcadier Marketplace - <AUTHOR> Arcadier Marketplace is a software-as-a-service that makes building an online marketplace simple. Equipped with templates for retail & goods, service booking, and rentals, Arcadier's feature-rich software includes everything you need to get your marketplace up and running within minutes. Enterprise solution and APIs are also available for entrepreneurs or organizations looking for a more customizable marketplace solution. <comment><AUTHOR> Arcadier's website: www.arcadier.com</comment>


Caramella – Photoshop for Bloggers - <AUTHOR> https://caramel.la <comment><AUTHOR> I've tried many blogging platforms, this one is the most impressive of all, what do you think?</comment>


A Spare and Simple Life – Historic Environment Scotland - <AUTHOR> https://blog.historicenvironment.scot/2017/09/spare-simple-life/?hootPostID=628b35092b57bacb6906ef03f09fdfd8 <comment><USER3> _'Now, if there's anything you need, anything at all, just you come to me, and I'll show you how to do without it'_

Class.

Mind you things got grey and boring in the winter in the 60s and 70s - <USER2> that was in a highish density town at 54N not nowhere at 58N. A few bright lights and some bling now and again do no harm.

</comment><comment><USER4> Bit of a tangent but, the delightful animated film _The Illusionist_ features a scene about electricity being brought to the (relatively) nearby island of Iona in 1959.

</comment><comment><USER5> The pictures are perhaps most striking; Uist has essentially gone from a lifestyle that would had been recognisable to the Iron Age, to commmunity- owned renewable energy, within one lifetime.

</comment><comment><USER6> > Sometimes, when a family moved house, they took their roof with them.

<3</comment>


Nintendo and Microsoft team up to promote cross-play, while Sony remains silent - <AUTHOR> https://www.theverge.com/2018/6/21/17488530/nintendo-switch-microsoft-xbox-minecraft-cross-play-marketing-sony <comment><USER2> The issue of Sony disallowing cross-play is not the reason for controversy in this case.

It's actually because logging in to a Fortnite account on PS4 irreversibly locks that account to Sony's walled garden.

I created my Fortnite account on PC and played there. Then I logged in on PS4, and played there. Now when I try to log in on Switch, I'm not able to. Here's the actual error message given:

"This Fortnite account is associated with a platform which does not allow it to operate on Switch. Neither the Fortnite website nor Epic Customer Service are able to change this. To play Fortnite on Switch, please create a new account."

The problem is that even disassociating the account from Sony won't then allow me to use my Fortnite account outside of Sony's walled garden. The account is permanently tainted by PlayStation.

Most importantly, the irreversibility of Sony's taint upon your account isn't disclosed until after the fact. It's a classic anti-user misdeed.

Anyway, Hacker News seems like the right place to ponder SaaSS user account foibles.

<comment><USER3> Getting into even MORE nuance.

Having worked on federated login with Sony, I suspect this "account taint" behavior is because Epic is using Sony's payment platform for loot crates. It's against Sony's policy to be able to pay for things to be used outside their ecosystem...mostly because that opens up a whole can of legal worms. It's for the same reason Spotify subscriptions use in-app purchase but you put your credit card into Uber and Lyft. Allowing cross-play means the in-game items you paid for with loot crates should transfer.

Aha, HN devs say, why don't you just carry a bit with those items that were paid for and hide them on other platforms? This is, more or less, how Blizzard deals with this. However, if that's not how you set it up out of the gate, that can be a painful thing to do retroactively. That's why I feel it's a bit disingenuous to heap ALL the hate on Sony. Epic could possibly work around this.

That said, everything about the account is cosmetic-related. You'll have to start all over getting your John Wick skin...but how big of a deal is that really? It doesn't affect gameplay. That's probably what Epic is thinking.

<comment><USER4> I think its insane how many comments are trying to deflect from the issue. Sony can and should allow users to bring their accounts and purchases with them to and from their platform.

> It's against Sony's policy to be able to pay for things to be used outside > their ecosystem...mostly because that opens up a whole can of legal worms. I > can purchase skins on PC and use them on PS4. So that blows up the legal > argument.

This feels like a weird distortion because its gaming related. For example Apple allows their users to bring kindle books purchased outside their platform even though they didn't get a 30% cut of sales. We would be roasting Apple right now if they were locking it down like Sony is.

<comment><USER3> > For example Apple allows their users to bring kindle books purchased outside > their platform even though they didn't get a 30% cut of sales

They also don't allow you to purchase books within their ecosystem. On PC, you're using Epic's payment platform. Same way you can pay for your kindle books on the web in Amazon's ecosystem and then read them on an iPad.

My point is that weird technical and legal hurdles, when followed lazily, can lead to anti-consumer practices. I don't think it's deflecting from the issue to discuss the underlying technical and legal constraints. It's Hacker News. If you want to rage against Sony for not allowing cross-play go to Polygon.

<comment><USER4> > On PC, you're using Epic's payment platform.

I don't see how this is different from Xbox/iOS/PC/Switch all sharing digital purchases. Sony is the only platform that has "legal hurdles" preventing this?

> My point is that weird technical and legal hurdles

I don't think their are any technical challenges unless you insist digital licenses must be sandboxed. Epic has accidentally removed the technical blocks previously.

> It's Hacker News. If you want to rage against Sony for not allowing cross- > play go to Polygon.

I'm sorry if it feels like I'm raging but I strongly believe users need to fight for fair digital licensing. Sandboxing purchases feels like a fine technical workaround but I'd prefer platform owners change policy to match users expectations.

<comment><USER5> > Sony is the only platform that has "legal hurdles" preventing this?

Not all companies "move fast and break things" in legal matters. We don't know the full circumstances, but Sony may have evaluated the landscape and decided the liabilities weren't worth the potential profits, while Nintendo and Microsoft looked at the landscape and decided that the profits exceeded the liabilities in this case.

It's for the same reason that you find Wells Fargo or Facebook committing transgressions that other banks or social media sites may avoid.

</comment></comment></comment></comment></comment></comment><comment><USER6> The infuriating issue with Sony's cross play ineptitude is that because I cross-linked a PC Fortnite account with my PS4, I cannot use the same account to play on the Switch.

<comment><USER7> Probably worth noting that this is true even if you unlink the account from PSN. Linking the account once blocks that account from other consoles permanently.

<comment><USER8> It's especially ridiculous for those who played the Paragon beta on PS4, as their Epic accounts are still blocked from other consoles even though Paragon has been cancelled and shut down.

<comment><USER9> Do you get a warning when you link your account with Sony?

Why are accounts linked to a console at all? That has nothing to do with cross-play...

<comment><USER10> No, there is no warning when you link your Epic account to your Sony account, as far as I know.

As for why accounts are linked to a console, linking your account means you can have the same friend list across platforms, which makes it easier to play with your friends no matter where you're playing. Also, and maybe more importantly, you have access to all of your cosmetics across platforms.

</comment></comment></comment></comment></comment><comment><USER11> Sony is the king of the console heap so they have no reason to allow cross- play. "Everybody is on PS4, so I need to get a PS4 to play with them" is a huge driver of their sales. That is the moat around their lucrative console castle. There is no way they'd allow a bridge to Xbox or Switch like Microsoft and Nintendo push-- it would only weaken their Sony's position and strengthen their competition's.

Its shitty but the ball is in their court.

<comment><USER12> I think that in any large company in a market leading position with a lot of turnover, it's essentially impossible to convince them to act in their own long-term best interest. Microsoft is acting scrappy right now (because they have to) and Sony is acting like a self-satisfied dinosaur (because no one is going to get promoted for doing anything different).

Sony is thinking short term - "If we open up on Fortnite, we'll sell less content now through our digital store". So no one at Sony is willing to fight for this. It won't make any charts go up for the next quarterly earnings.

But the long-term view is that they are teaching an entire new generation of gamers that "Playstation is the worst place to play Fortnite - the world's most popular game". That is going to be a disaster the next time new consoles are released - just like how Microsoft made similarly dumb moves when they first launched the XBox One.

<comment><USER5> Sony is thinking long term. As is Microsoft. It's short-term to cater to a specific game that happens to be popular today.

In the long term, neither console maker wants cross-platform support. They want to create a situation where everyone has to have both the Sony device and the Microsoft device. That's an equilibrium that both companies are happy with. Pure cross-platform play ends in consumers not needing both devices and hence total sales will drop.

When the "pendulum swings" and Xbox has a dominant generation, expect Microsoft to reject cross-platform play.

<comment><USER10> I don't fully agree that Microsoft would be doing this if they were dominant. Maybe under Mattrick, but Phil Spencer has been making a lot of right calls since becoming head of XBoX, like bringing all their games day 1 to PC and going all-in on backwards compatibility for their 360 and OG XBoX titles. Even their adaptive controller is cool, even if I'm not someone who would use it. I recommend watching his interviews with Jeff from Giant Bomb that he's done every year at E3 to get an idea of his views when it comes to this stuff: [https://www.youtube.com/watch?v=70z2jtcQf4s](https://www.youtube.com/watch?v=70z2jtcQf4s)

Companies change all the time, though. The next head of XBoX could go back to the Mattrick days and completely burn all the good will they have. But, as long as Phil and Nadella are around, I don't think they'll be blocking cross- play anytime soon, even if they do become the dominant platform.

<comment><USER13> I wouldn't be so sure. There has been some talks about bringing Final Fantasy XIV to Xbox & Switch for quite a while, but the condition for that from FFXIV side is cross-platform play like the case is already with PC & PS4 (and previously PS3, latest expansion dropped PS3 support). From sounds of it Nintendo and Microsoft had some issues regarding that.

[https://www.gamespot.com/articles/final- fantasy-14-director-...](https://www.gamespot.com/articles/final- fantasy-14-director-wants-switch-and-xbox-on/1100-6451129/)

<comment><USER10> That's not what I understood from the article you linked. It sounds like the issue mainly stems from uncertainty on whether Square Enix would be able to push a patch out and have it reach all of their player's across platforms at the same time. But Yoshida never points fingers on which of the three is to blame (my guess is Nintendo, they're online infrastructure has never been great).

"One of the issues Yoshida noted, however, was that many companies don't consider how updates to the way online services are operated and regulated can impact an MMORPG.

"Those can become a hurdle when we consider operating FFXIV for an extended period of time," he said. "So when I talk to those first-party companies, I ask them, 'Do you have the capability to prepare for that, do you have the resolve that you're going to make sure to take responsibility and take care of those, do you have that willingness?'

"If we are able to come to some sort of agreement, a handshake so to speak, or if it does end up being that unfortunately we can't do a handshake with Final Fantasy XIV, either way we'll make sure to communicate with our players. But we have been tenacious--we've been trying to keep at it and be persistent about our conversations.""

Considering that cross-play between Microsoft, Nintendo, and PC is supported for multiple games now (Rocket League, Minecraft, and Fortnite), I think it's safe to say that Sony's the one holding back cross-play as a whole. As in to say, even if the above issues were fixed, I wouldn't be surprised if Sony said no anyway.

</comment></comment></comment></comment></comment></comment><comment><USER14> The Switch and XBox One aren't really competitors to the same degree as the Xbox and PS4, and the games in this announcement aren't the sorts of games that sell a particular console. Rather, they're the sort of stuff you can sink time into between your purchases of AAA exclusives.

Annoucing this cross-play is a cheap win-win for both MS and Nintendo: For Nintendo, it solidifies that in the right context, the ultraportable Switch is a comparable platform to the cabinet-bound boxy consoles that are still current in their generation -- a marketing victory that handily exceeds the reputation of its predecessor, the Wii U. For Microsoft, it legitimizes their cross-play message by spreading beyond platforms that they both happened to own, and makes Sony look bad.

<comment><USER10> I think you're underestimating the popularity of Minecraft and Fortnite. There are absolutely people out there who only play Fortnite and nothing else. But you are right in that the Switch doesn't compete with the XBoX the same way the PS4 does (Nintendo consoles always played by their own rules). But Microsoft has already said that they'd be fine with crossplay with PS4, it's Sony holding up the line. Epic already accidentally (or so they say) enabled XBoX and PS4 crossplay once before for a short amount of time [1], so the work is already done, too.

[1] [https://kotaku.com/epic-accidentally-allows-xbox-and- ps4-cro...](https://kotaku.com/epic-accidentally-allows-xbox-and-ps4-cross- play-on-for-1818518611)

<comment><USER15> Why would a company care about people who only play Fortnite? They're not going to be buying anything other than those games, and when the fad dies away, they will too. It's one thing to cater to casual players, who will buy lots of different games, another to Madden/COD players who will buy yearly installments. Pandering to s single fad that will be replaced within a year though is crazy. People will get tired of Battle Royale, just like they did with Hero shooters, and the fads before that.

<comment><USER10> A few reasons:

1\. Because it gets people on their system, who will then buy more games when the fad does eventually die out (which let's be clear won't be anytime soon). If someone playing Fortnite on PC asks their XBoX friends to download and play with them, now a bridge has been formed between the Fortnite only PC player and the XBoX player. It's only a few conversations away from "Hey, I got a 4K TV, let me get an XBoX so that I can keep playing Fortnite and all these other games with my friends."

2\. Because it garners good will. Within the last few years, more and more companies are realizing that doing good by the consumer can still be profitable. Sony's the dominant platform now, but that can change within a year. If Microsoft is over here saying that their games are going to be backwards compatible forever and the consumer knows, through history, that Microsoft allows you to play with your friends no matter where they play, that's a substantial incentive to get the next XBoX over the next Playstation.

3\. Because, and this is the simplest reason, why not? The work is already done, all Epic has to do is flip the switch. It requires no extra work on Sony's end, just willingness to allow their console to talk to other consoles. The way this is going, this is going to be net profit negative in the long run, with more people jumping to XBoX if they know Microsoft plays well with others.

</comment></comment></comment></comment><comment><USER16> One of the great things about Rocket League is the cross play. While, as a PS4 owner, I cannot play against those on XBox or Switch, I am able to play against PC players in addition to PS4. It is always nice increasing the player pool. That said, it is really frustrating that Sony is so stubborn on this issue.

<comment><USER17> I'm excited about the upcoming _true_ cross platform play coming mid July/August.

You will be able to create a new in-game gamertag; it will require re-adding friends but I'm really excited to be able to finally play remotely with my friends!

</comment></comment><comment><USER18> Sony's decision to lock Fortnite accounts on their platform seems to be in direct violation of the GDRP "data portability" law.

the data subject shall have the right to have the personal data transmitted directly from one controller to another, where technically feasible.

Cross-play is a different story though.

</comment><comment><USER19> If anyone is curious, this was Sony's official response:

> We're always open to hearing what the PlayStation community is interested in > to enhance their gaming experience. Fortnite is already a huge hit with PS4 > fans, offering a true free-to-play experience so gamers can jump in and play > online. With 79 million PS4s sold around the world and more than 80 million > monthly active users on PlayStation Network, we've built a huge community of > gamers who can play together on Fortnite and all online titles. We also > offer Fortnite cross-play support with PC, Mac, iOS, and Android devices, > expanding the opportunity for Fortnite fans on PS4 to play with even more > gamers on other platforms.[1]

[1] [https://www.bbc.com/news/technology-44477524](https://www.bbc.com/news/technology-44477524)

<comment><USER20> That's a response that lacks a response. They don't address Switch or XBox cross-play.

<comment><USER21> It's the response of a dominant player.

Microsoft had the exact same stance when they had the 360 while Sony on the struggling PS3 wanted cross play.

</comment></comment></comment><comment><USER22> I see this as the same issue I have with any other Internet platform right now, gaming or not: the relationship is completely backwards. Rather than services _referencing your data_ , for some cryptographically-secure owned-by- you data store, you _give_ them things to store that are entirely outside your control.

And as if that wasn't bad enough, data is typically really expensive (time- wise at the very least) to create. It takes years to build up gaming history, social network points, comment histories and bookmarks, etc. Instead of that being irrevocably _yours_ , instead you're just one forgotten password or inept cloud provider mistake away from permanently losing the results of years of effort.

</comment><comment><USER23> Is it fair to say that corporate self-image concerns seems to drive a lot of the behavior of game companies above and beyond market considerations? I feel like I am often scratching my head at things like this on Sony's or Nintendo's or Microsoft's behalf. For instance, 'The Last of Us' \-- supposed to be a great game, can't play it because it's PS3/PS4 only, not going to buy a console just for this one game, it's 5 years old, would seem like a good candidate for a PC port. And yet, no dice.

(Many if not most of the decisions Nintendo made in the 2000s, particularly around internet gameplay for the gamecube, were equally confusing.)

<comment><USER24> The Last of Us is a game created by Naughty Dog, which is a studio that Sony owns. Exclusives like that drive sales of consoles. If you really want to play it without buying a console, you can use the PS Games-Streaming-as-a-service PS Now and play it from your PC. [https://www.playstation.com/en- gb/explore/playstation-now/ps...](https://www.playstation.com/en- gb/explore/playstation-now/ps-now-games/)

<comment><USER23> wow, big thanks for this, I didn't know about it. I chose a bad example then. I could summon others about the big 3's erratic behavior but anyway...I learned something valuable here, thanks.

</comment></comment></comment><comment><USER25> Sony is the undisputed king of exclusive content. Microsoft really has nothing, and Nintendo lives off of a once per generation Mario/Zelda/Metroid. My guess is that they enjoy their clubhouse, and don't want to invite others to join it.

<comment><USER26> Nintendo is definitely the undisputed king of exclusive content.

Pokemon is the highest grossing media franchise in the world, higher than Star Wars. Mario comes in at number five, putting it above the Marvel Cinematic Universe, Batman, and Call of Duty.

We'll see how things shake out, but I would bet money that Nintendo will still be selling Pokemon, Mario, and Zelda games thirty years from now. I have no faith that Sony will even be making video game consoles at that point.

<comment><USER25> Like I said, beyond the holy Nintendo trinity, Sony has the entire rest of the exclusive IPs.

<comment><USER27> As a fairly on-and-off gamer, I can't really name any exclusive IPs from Sony.

I know Microsoft has Halo, and Nintendo has enough exclusives to make Smash Bros.

I vaguely recall Sony making their own Smash Bros a few years back, but none of the IPs featured in it have had any recent entries, nor are really that prominent.

<comment><USER28> While none of them are as popular as Nintendo's main series, Sony does have rather a lot of notable exclusive IP. LittleBigPlanet, Bloodborne, Uncharted, Ratchet & Clank, Horizon: Zero Dawn, God of War, The Last of Us, Gravity Rush, PaRappa the Rapper, etc.

Halo is popular, but Sony has a much larger portfolio of exclusive IP than Microsoft does right now.

</comment></comment></comment></comment></comment><comment><USER29> Sony is missing out on a partnership with Steam, especially if they would just support Vulkan on PS5. The PS5 could _also_ be a "Steam machine".

<comment><USER24> Why would sony want to cede their own very profitable digital games storefront to valve?

</comment></comment><comment><USER30> Very much relevant: [https://xkcd.com/743/](https://xkcd.com/743/) I'm glad that this is making news, I hope people learn something. Sony lures people with shiny exclusives, don't take the bait or it's only going to get worse.

<comment><USER31> Shiny exclusives? That's Nintendo's specialty.

Mario, Mario Kart, Zelda, Metroid, Pokemon, Donkey Kong, Star Fox, etc.

<comment><USER30> I think Bloodborne, Uncharted, God of War, Last of Us qualify. Hits a different a demographic.

Edit: Guess it's less shiny, more grimy violent third person-y

</comment></comment></comment><comment><USER32> They should start promoting Vulkan for developers.

<comment><USER33> How is this related? It doesn't matter which engine is used in general, the only problem here is Sony. It isn't technical. Fortnite proved it when it 'mistakenly' allowed PS4 players to play with Xbox One players due to a 'configuration issue'.

<comment><USER32> _> It isn't technical._

Exactly. No Vulkan support is the same problem as not allowing cross play - lock-in in case of MS and Sony. At least Nintendo support Vulkan on Switch:

[https://www.khronos.org/conformance/adopters/conformant- prod...](https://www.khronos.org/conformance/adopters/conformant- products#submission_310)

<comment><USER34> Yeah they do, yet is used as much as GL ES 1.0 was on the PS3.

Most Switch games are done in Unity, Unreal, Crysis and a couple of other lesser known middleware engines, taking advantage of NVN.

<comment><USER32> I suppose they might use NVM to interface with Nintendo specific hardware, they don't need it for graphics. So if engine developers are smart, they minimize NVM usage to only those corner cases, since there is no need to reinvent the wheel and duplicate work.

 _> yet is used as much as GL ES 1.0 was on the PS3. _

Any Vulkan based engine can use it. Wasn't there Doom release for Switch?

<comment><USER34> One game among 1165 available titles.

Khronos keeps trying to advocate game developers to adopt Vulkan.

Meanwhile everyone already added DX12, Metal, NVN and LibCGNM to their engines.

Here for your education about game developer culture, Unreal demo at WWDC 2018, and the community live stream done afterwards.

[https://www.youtube.com/watch?v=S48T-cOG0ks](https://www.youtube.com/watch?v=S48T-cOG0ks)

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

<comment><USER32> One that shows proper example, but there can be more, especially if they aren't exclusives. There is no point for developers to waste time.

<comment><USER34> Funny how the whole industry contradicts what you think is so valuable.

<comment><USER32> No industry likes wasting money which you insist it should do, by duplicating work pointlessly.

 _> Khronos keeps trying to advocate game developers to adopt Vulkan_

And you don't like that, since you are a big fan of lock-in apparently.

<comment><USER34> Contrary to you I had the privilege to know the industry from inside a couple of years ago, was an IGDA member, still have some contacts there.

I am a big fan of games worthwhile playing and the related IP produced from them, regardless of the tools used to produce them.

</comment></comment></comment></comment></comment></comment></comment></comment></comment></comment><comment><USER35> The reasons for doing this are great and benefit users but I fear this is the death of the console era. The idea of having different consoles with different hardware and playing people with the same setup is what made consoles unique from PC gaming. In PC gaming you have a standard operating system and you could use a joystick, keyboard, mouse, whatever you want with your setup.

If all consoles inter-operate we have come full circle and are simply gaming against other PC gamers.

<comment><USER36> It makes sense though.

Microsoft already sense this (and have done for a few years now), most of their 1st party titles for XboxOne can also be played on Windows. Going forward it sounds like they want to further employ this strategy to essentially make the Microsoft ecosystem the place to play games whether that be via a console (with its plug and play ease) or on Windows, or streamed to a mobile phone or tablet.

Nintendo are the outlier here though, but it will be interesting to see where Sony is positioning themselves in 5 or so years

</comment></comment><comment><USER37> Nintendo has started to brick the game cartridges coming from consoles that were hacked. So you could buy a game second hand that doesn't work. Nintendo isn't in the clear yet.

<comment><USER38> I'm sure every company has done lots of things various people disapprove of.

This is an article about cross-play and your comment isn't related to that, is it?

<comment><USER37> Well if you buy a used switch game, that has been banned, you can't cross play online with it. You have no way of knowing if that game has been banned either. So it's related to online play.

</comment></comment></comment><comment><USER39> I don't think it's out of line to say Sony understands the platform business better than anyone. And I'm not just talking about console makers, I'm talking about all platforms: iOS, Android, Steam, Facebook, Twitter, etc etc etc.

Sony's first goal every generation since the PSOne has been winning game developers to their side. Game devs like large user bases, but that's only one aspect of why a developer picks a console. Sony's primary focus every generation is to get everything else right: development tools, hardware storage and performance, consistent controller design, software medium, and so on. They've had some misfires here and there (the Cell processor comes to mind), but they typically outperform their competition in all of these categories.

I think it's because Sony knows their customer isn't the gamer, it's the game developer. The game developer's customer is the gamer. Again, user base numbers attract developers, but Sony recognizes that user bases are driven by developer support. It's definitely reciprocal, but Sony's dominance comes from understanding that catering to the developer is paramount. That's why they've consistently created an environment that breeds killer apps. I can't think of another platform maker in the last 20+ years who's been better.

So after 20 years of building up that kind of leverage with developers, it doesn't make much sense to just give part of it away until game developers make it clear they need it.

<comment><USER12> I don't think this is the whole story - or at least not the right strategy for Sony anymore. Sony's PS3 was more or less a market disaster and they were able to claw their way back to #1 by selling the PS4 for $100 less than the Xbox One and taking advantage of Microsoft's terrible, self-centered move of pushing for always-on DRM. Now Sony is making the same kinds of self-centered moves with the PS4 because they are the current leader and feel like they can get away with it.

The tech in these platforms is more similar than it's ever been. The consoles are trending towards basically being stripped down multi-core PCs optimized for video and memory bandwidth - especially now with half-step upgrades like the PS4 Pro and XBOne X. For many game developers building on top of engines like Unity or Unreal, they are no longer specifically designing for XBox or PS4 - they are targeting a common engine platform and then just tweaking the game content as needed to make sure it performs well enough on each platform.

Combine this with the fact that video games cost more than ever to develop and it makes less sense than ever for a 3rd party publisher to target any single platform. In order to recoup their dev budgets and make big profits, they want as huge an install base as possible. Epic would want Fortnite to run on toasters if they though people would play it there. Platform exclusives are essentially a thing of the past except in cases where the platform holder funds the development or owns the IP.

Sony may be the current leader in building first-party, system-exclusive action games to sell their platform, but the number of people who play those games is dwarfed by the mass appeal of something like Fortnite. By gaining the reputation as "the worst place to play Fortnite" (literally the world's most popular game), they are turning off a whole new generation of customers who may swap back to Microsoft when the next console generation hits.

In my opinion, this is nothing but Sony taking it advantage of it's #1 console position to try to force people to give them more money in the short term. I'm sure Microsoft would be doing the same thing if their current market positions were reversed. But I don't think it's good for their long-term business.

<comment><USER40> On top of what you just said, a new console generation will be started (probably) in 2020. That means that both Sony and Microsoft's console hardware sales will reset to zero. If you're looking to buy the next console, will you picking up the platform that locks you into playing only with people on one platform or the platform that allows you to play with everyone? Many people will be buy the next Playstation for the exclusives yes, but Sony's walled garden will give some new buyers a pause.

Sony isn't thinking long term. Either that, or they mistakingly believe that they're crushing the competition due to their business strategy, instead of Microsoft and Nintendo both shooting themselves in the foot. Microsoft will not be making their 2013 mistakes again during the next hardware launch.

</comment></comment></comment><comment><USER41> I am so glad Sony doesn't offer crossplay, especially with PC, for one simple reason: It's nearly impossible to cheat on a PS4 game, and a console ban costs hundreds of dollars, and that protects me from being exposed to cheating; via save files, via video driver hacks, via 'I only use it for development' memory patchers. (Network manipulation cheating still occurs, but that can't be used without other players reporting you, and is an issue on all platforms.)

<comment><USER42> Sony happily permits crossplay _with_ those mustachio-curling memory-patching _dreaded PC players_. Fortnite _does_ allow crossplay between PC and PS4 and Mac and mobile. PC/PS4 crossplay is also available in Rocket League and some other games. The only gate is between PS4/Xbox and PS4/Switch--and both platforms seem very much on par with the PS4 in terms of anticheat protection.

There is no real argument to this except "Sony can be a dick, so Sony will be a dick." You can take off your cape now.

<comment><USER41> I'm glad that Fortnite and Rocket League have found success with crossplay, as that indicates that Sony has made crossplay possible.

I'm sad to see you dismissing "authoritarian control over a platform" as "being a dick", though. I prefer my society less authoritarian and my gaming platforms (and coding guidelines) more authoritarian, but I guess this isn't the right venue to discuss that dissonance.</comment></comment></comment>


Show HN: A place for your referral links - <AUTHOR> https://reaffiliate.net <comment><AUTHOR> Currently, only DigitalOcean, Linode and vultr links are support. Created a trello to track public interest for more links.

[https://trello.com/b/umE6JH0U/reaffiliate](https://trello.com/b/umE6JH0U/reaffiliate).

</comment><comment><USER2> This is fraud for literally every affiliate program.</comment>


GM to build, test thousands of self-driving Bolts in 2018 - <AUTHOR> http://www.reuters.com/article/us-gm-autonomous-exclusive-idUSKBN15W283 <comment><USER2> This is the biggest risk I see with TSLA:

\- Incumbent auto giants entrance diminishing Tesla's margins.

\- Incumbent expertise and brand that diminishes Tesla's appeal.

\- First mover disadvantage: rest of auto industry sees large initial ROI by piggybacking off Tesla

GM can't be the only guys racing to bring Tesla experience to it's existing brand followers. Luxury makers like BMW, Benz will woo the lion share of the market Tesla originally pioneered. First movers rarely do well here unless they've cemented their brand position in the luxury space such as Ferrari, Lamborghini etc.

tl;dr: When the status quo catches up to Tesla, it will put downward pressure. Tesla's winning strategy should be to limit quantity and artificially inflate unit price. It is not equipped to take on dozen automotive brands in the long run.

Please correct me where I'm wrong.

<comment><USER3> Tesla is a vertically integrated company, so they have squeezed all the margins out of their supply chain. The big automakers all share their supply chain and have to feed it with margins at every level. Same story with SpaceX - vertically integrated.

The whole integrated/shared thing has been going back and forth in different industries at different points in time. Apple has been getting more and more integrated recently whereas earlier wisdom in PC industry was to use shared components.

Musk is betting that it's time to integrate the automotive industriy. If he is right, Tesla will balooon to the size of Apple. The electric part is not the most important here.

<comment><USER4> Personally I think Musk doesn't think this way. I think he sees the secondary aspects of Tesla's work on cars (e.g., the battery plants and larger infrastructure of the electric car industry and positioning on standards bodies) as the actual big fish to hunt for.

Tesla cars are nice, but they didn't need to make the entire pipeline. They're doing that because they want to reuse the pipeline and tech in other industries.

<comment><USER5> I believe Musk means it when he says he wants to wean humanity off of fossil fuels. The big fish you talk about are definitely means to this end and not the goal itself.

</comment></comment></comment></comment><comment><USER4> I own a Bolt, and I like it a lot. I have no desire to spend 4x that on a Tesla that is simply overspec'd for a simple commute car. I derive my self- esteem in other ways than fancy cars.

Maybe I should have waited for the self-driving version.

<comment><USER6> > I have no desire to spend 4x that on a Tesla that is simply overspec'd for a > simple commute car

The Model 3 and the Bolt would be similar in costs. Wouldn't it?

<comment><USER4> How long is that waiting list again?

Even if I didn't have some special access due to some relatives, I'd still have a Bolt this month as opposed to mid-next year?

By that time, Chevy will be shipping self-driving ones and according to the article they're going to NOT be doing that as a 40k addon.

I hope Musk has a very strong transition into a strong luxury brand. The simple truth is that there is a massive rush on personal transportation and all the small players are eager to sell to the Toyotas and Chevys of the world. These people are by and large expats from the early self-driving car projects.

</comment></comment></comment><comment><USER7> 'Thousands' is very committed. I wonder if they are doing this to make a statement, or if they feel rapidly scaling up to a thousands strong prototype test fleet is the most effective way to accelerate progress towards market ready L4 robotaxis.

As the analogy goes, just because it takes 1 woman 9 months to make a baby does not mean 9 woman working together can make a baby in 1 month.

Either way, it's very committed. GM isn't fucking around, they mean business!

<comment><USER8> I think it's in the same vein as Telsa's strategy of autopilot roll-out compared to Google's self-driving pilot program. 1000 self-driving vehicles running for 1 month can collect data at a significantly higher rate than 1 self-driving vehicle running for 1000 months.

<comment><USER7> It's the quality of the data and what you do with it that really matters. I think the benefits of crowdsourcing driving data to develop autopilot have been overstated. Waymo has pointed out that they are making the lion's share of their progress testing in simulators, where they can play out every conceivable variation of some strange or difficult edge case in a way that is not feasible in the real world.

One thing you can do with 1000s of fleet vehicles is begin untangling the logistics of running a publicly accessible robotaxi network, which will brings with it a whole new set of problems above and beyond the autonomous os itself.

</comment></comment></comment><comment><USER9> A lot of people here are balking on the price for consumers. Looking it at another way is that the Bolt will be sold to ride sharing companies at 100k each and they would buy it in a heartbeat.

<comment><USER10> 100k is the most generous interpretation of "6 figures". Would ride sharing companies still buy them at 350k each? At that point it may take 5 years to break even compared to having a human driving a 35k car

<comment><USER11> Probably, people are expensive. Minimum wage + employer taxes for a 25 year old in the UK is roughly £78,000 for 24 hour coverage assuming no overlap and no illness, no hiring cost, no management.

I'd be interested to see what TCO they'd need to have to no longer be cheaper.

<comment><USER12> TIL: Minimum wage for a 25-year-old is ~30% higher than for a 20-year-old in the UK.

<comment><USER13> I've never understood this. Hour does a under-25 need less as a basic income. They have the same costs and are giving up the same time.

It's really wrong IMO to value 16-25yo lower when considering _minimum_ wages.

</comment></comment></comment></comment></comment><comment><USER14> >"If you assume the cost of these autonomous vehicles, the very early ones, will be six figures, there aren't very many retail customers that are willing to go out and spend that kind of money," Ableson said.

"Tesla Narrowly Misses 80,000-Vehicle Sales Goal in 2016"

[https://www.wsj.com/articles/tesla-misses-its-2016-sales- goa...](https://www.wsj.com/articles/tesla-misses-its-2016-sales-goal- despite-27-fourth-quarter-rise-1483479562)

<comment><USER15> Well for GM, 80k cars doesn't move the needle.

GM sold 320k cars in December 2016 alone.

[https://www.wsj.com/articles/auto-industry-poised-to-set- ann...](https://www.wsj.com/articles/auto-industry-poised-to-set-annual-sales- record-1483541246)

<comment><USER14> None of those 320k cars GM sold have autopilot hardware sending data back to the manufacturer for self-driving algorithm refinement. All of those Tesla vehicles do (Autopilot 2 hardware). New Teslas are delivered every day that accelerate the rate at which Tesla collects autopilot data.

Hence the comparison.

EDIT: [https://electrek.co/2016/11/13/tesla-autopilot-billion- miles...](https://electrek.co/2016/11/13/tesla-autopilot-billion-miles-data- self-driving-program/)

"Tesla has now 1.3 billion miles of Autopilot data going into its new self- driving program"

There's a reason Tesla picks up the tab for your vehicle's machine to machine cellular connection. And why it connects to wifi when you're at home.

<comment><USER15> I think you're missing the point that a car manufacturer does not care about autopilot for autopilot's sake. They care about the feature in so far as it can drive sales and revenue.

Think about it this way: Companies like Google or Amazon don't launch products just because the tech is cool or innovative. They only launch products that can become $1B+ drivers of revenue for them.

(fwiw I am not the one downvoting you)

<comment><USER13> >Google or Amazon don't launch products just because the tech is cool or innovative. //

That is a thing though, have cool stuff that serves as advertising to showoff your company as being cool & cutting-edge.

Amazon gets a lot of mindshare out of echo beyond the raw value accrued through sales IMO.

</comment></comment></comment></comment></comment><comment><USER16> >"If you assume the cost of these autonomous vehicles, the very early ones, will be six figures, there aren't very many retail customers that are willing to go out and spend that kind of money," Ableson said.

Oh well I guess it will be a few years before I can recline and take a nap in my robo car while in traffic

<comment><USER17> You'll _never_ own a robo car, Uber and Lyft and Tesla and GM will.

<comment><USER18> Why not? It's a technology problem and technology almost magically gets cheaper over time. I don't see why it won't eventually be like all the other required safety features (airbags, ABS, etc).

If you live in the middle of SF it might sound silly to own an autonomous vehicle, but if you live out in rural Sonoma County it is going to sound a lot less silly. I frequently go out to the mountains and I doubt I'm going to want to call an Uber to load all my camping gear into and be gone for a week.

<comment><USER19> I live in the suburbs and I go on road trips all the time with the family.

About half of my neighbors own RVs.

Self-driving vehicles would be a dream come true.

<comment><USER20> Furthermore, if it's your own vehicle, fully autonomous mode under certain pre-defined conditions and roads can still be a huge win. But that constraint makes the same vehicles basically uninteresting as a shared vehicle taxi service for the near term.

It's great that all this work is being done but IMO summoning Johnny cab to take you home from a bar in SF is decades away.

</comment></comment></comment></comment></comment><comment><USER21> I have question given that 2018 is the date to deploy test vehicles how much time do they need to their tech operationally mature?

I see in the article that they acquired a self-driving tech startup but that doesn't say much about how much experience that start up brings, and it not like there's many veterans in this field.

Will they be playing catch up with Tesla, Google et al for years to come or will the tech soon start becoming commoditized?

</comment><comment><USER22> I agree with the folks who see this as a serious risk to TSLA. If you've driven a Model S or Model X you know that the design, the software and the performance are insane, but the fit and finish (especially of the interior) is like a 1980s Cadillac. When BMW and Benz start making EVs, TSLA is going to be pushed hard and could likely end up becoming a software or powertrain T1 supplier.

<comment><USER23> 1\. People are not going to avoid a tesla on the basis of a slightly crummy interior, they sell based on virtue signalling. 2\. The mass produced version of the Tesla is yet to be revealed and it may have a better finish so this may be a moot point anyway.

</comment></comment><comment><USER24> I picture thousands of Bolts rolling off the assembly lines one by one, and autonomously driving themselves to their assigned dealers.

</comment><comment><USER25> Yet they probably don't even encrypt their app's user credentials, as most of the big car makers seem to be doing:

[https://securelist.com/analysis/publications/77576/mobile- ap...](https://securelist.com/analysis/publications/77576/mobile-apps-and- stealing-a-connected-car/)

Good luck to the beta testers buying them.

</comment><comment><USER26> This is more a comment on TSLA than GM, but I still feel it's relevant given the competition between the two.

I don't understand the Gigafactory, from a capital allocation point of view.

Geographically, it's not near any major lithium, cobalt, (economical to extract) rare earth, etc deposits, and it's not in a traditional manufacturing area. Maybe they're getting a sweet tax deal. There are a number of tangential benefits, like heat recycling, solar availability, USA made (given the currently protectionist administration, but that could change in less than 4 years, max 8) etc, but I'm not sure these benefits outweigh the cost of being so far from raw material and export lines.

Obviously, the Gigafactory makes batteries, a technology which improves at an unbelievably slow rate compared to virtually anything else. However, battery research is an intense area of research focus, and the whole factory is one Nobel from becoming obselete, barring (probably expensive) retooling. A game changing improvement is not a matter of if, but when.

TSLA's bet is that this does not happen until they've paid off the asset. If you makes batteries as a core business, investment in facilities is the cost of doing business. If you make cars, it's a silly and imprudent experiment in vertical integration. Why bet the farm when you can pay marginally more for your batteries and cement the luxury market you already own? Batteries are a commodity, and at TSLA's scale, they surely can negotiate a good deal. Realistically, TSLA's target market is fine with absorbing a 2 or 3% increase in battery cost that a 3rd party supplier would demand.

Given the investment in vertical integration, it seems TSLA is trying to go after the low/mid-market. Why beats me -- razor thin margins necessitate scaling incredibly quickly. They are taking an incredible risk for meager rewards in fiercely contested territory. Contrary to what most outlets will tell you, Ford/GM/Japanese automakers are not stupid. Slow, yes, but not stupid. They will move quickly to shred TSLA in the low end market, assuming they recognize the threat. Not only that, but they take on comparatively little additional risk in doing so, outside of product development costs. They don't need to build assembly lines, factories etc, because they already exist. Even if one mfg misses the electric vehicle trend, it's highly unlikely 6 of them will.

That's all, and I'd really like a counterargument.

<comment><USER27> I heard Elon say that if they were to produce 1M cars per year, they would need to consume all Lithium-Ion batteries produced in the year 2014. Obviously there will be more batteries produced in 2020, but Tesla's fate would be at the mercy of the battery producers, which could collude to drive the price of batteries.

For better or worse, Tesla is hell-bent on vertically integrating every single aspect of production. I believe they might be working on software that will allow them to stop relying on NVDA's chips for self driving as well. "First principles" business model will make or break Tesla/Elon.

</comment></comment><comment><USER28> "Bolt"? They really couldn't name it something more identifying and clever than the self-driving bolt?

I came here thinking they were attempting some way to make things self assemble. "It's a self driving bolt. You don't have to use a screw driver to screw it in it does that itself."

Besides, GM building a self driving car feels like letting the people who make plastic grocery bags make doors for safes or something. Sounds dangerous and it just sounds like it'll cause the name "Bolt" to stand for "run away suddenly out of control."...

<comment><USER29> Bolt is their electric model. They are adding self driving tech. Why rename it?

<comment><USER28> I kind of covered my personal answer to that in my original comment.

It also annoys me that companies name things common English names because that makes it hard to search for things. "Chevy bolt loose steering" "bolt bolt size trunk latch" "bolt size for tires"

Ultimately, it's obviously a battle that I'm not going to win because I'd prefer everything just have a GUID so I can easily identify exactly what I have. "The Chevrolet B0F30517-BAFE-43EB-BA62-1832AC5272F7"

Lastly, I know it's been a common theme for a long time but it just seems to keep getting worse. Apple Ping. Chevy Bolt. Chevy Volt. Chevy Spark. Many different products called Hydrogen etc. Rust. I know of at least 2 products called Go. It just wouldn't be difficult to change spelling or do something clever instead of just taking direct, common dictionary words and grabbing them for your product.

<comment><USER30> Search engines easily handle things like [Chevy bolt] once they become popular enough. [chevy bolt size] in google already shows me stuff related to the Bolt.</comment></comment></comment></comment>


Wikidata makes Wikipedia a database. Let the fun begin - <AUTHOR> http://www.theregister.co.uk/2016/02/25/wikidata_turns_the_world_into_a_database/ <comment><USER2> What fun? The chance to spread detetionism, notability, and reverts to another project? More alphabet soup bureaucracy?</comment>


Flying to the moon gave us teflon - <AUTHOR> https://medium.com/coinmonks/flying-to-the-moon-gave-us-teflon-f1749a5e5c57 <comment><USER2> I am a French old timer, at the time of the moon landing I was 11. It was something huge for me and as a much older person I visited several times the Cap Canaveral, Kennedy Space center and one time Houston' Johnson center.

But no Nasa, did not invented Teflon nor popularized Teflon. I remember ads for Teflon frying pan at the same time as the Apollo program. There is nothing unusual about it. Teflon was invented in 1938 more than 30 years before Apollo's moon landing. And there were mass market Teflon frying pan starting from 1956, the NASA did not even existed at that time.

[https://en.wikipedia.org/wiki/Frying_pan#Non- stick](https://en.wikipedia.org/wiki/Frying_pan#Non-stick)

<comment><AUTHOR> The article actually says that NASA didn't invent Teflon. The fact that Teflon pans were in ads does not invalidate the claim that NASA popularised it though.

This of course follows the point of the article amazingly well: Crypto developers didn't invent zero knowledge proofs, but they are bringing them into the mainstream and making them more available general software development.</comment></comment>


About Those New CrunchPad Pictures - Arrington's take - <AUTHOR> http://www.techcrunch.com/2009/04/10/about-those-new-crunchpad-pictures/

<comment><USER2> if they aren't planning to release, why do they already have packaging manufactured?

<comment><USER3> Packaging is part of the package, so to speak.

In other words, it's a part of the ownership experience and part of what people pay money for.

</comment></comment><comment><USER3> WebKit! Nice!</comment>


Why inheritance sucks - <AUTHOR> http://ducktypo.blogspot.com/2010/08/why-inheritance-sucks.html <comment><USER2> I strongly disagree that "code reuse" is a reason to use inheritance in C++/Java. Composition nicely solves that problem. In fact, I would argue that someone who believes code reuse is an appropriate reason to use inheritance does not understand OO programming as well as they believe.

<comment><USER3> This. In fact, a friend of mine swears by writing C++ in a style called "snippets" --- meaning, whenever it makes sense to do so, he writes new functionality as a single header and cpp file that has no dependencies whatsoever on other headers, etc, then open-sources it so that anyone can add the same functionality to their own C++ projects by just dropping in the code. A math lib, for example.

<comment><USER4> Aren't those also just called "functions"? In this case one function per file?

<comment><USER3> No. As soon as your function has a dependency on anything else whatsoever, it can no longer be copy-and-pasted into another project

A snippet consists of functions which accomplish a specific task. The important part is that the entire snippet is a single cpp and a single header. No dependencies.

<comment><USER5> That's a function with no dependencies. Still a function.

<comment><USER3> .... Something is obviously being lost in translation here.

There are certain programming problems which can be solved once and used forever. The problem wouldn't necessarily be considered a single function. However, it isn't a massive problem either.

My friend solves these problems by creating a single .cpp and a single .h file. The .cpp is the implementation; the .h file defines the interface. He calls this a "snippet".

Now, the power of the snippet is that you can simply copy the .cpp and .h into _any C++ project anywhere_ and it's good to go. There is no tweaking, include'ing, anything. It just works.

This code can then serve you for the rest of your life, regardless of what project you are currently working on. You can say "I've solved that problem before", and be able to spend literally 30 seconds implementing it into your current project, because all you have to do is drag'n'drop two files.

<comment><USER4> I get the distinction, and its a fair one. Although, I don't get how snippets could be useful. Especially in C++. It seems like for almost anything interesting I'm going to want a dependency on the standard library or Boost or the CRT.

I could imagine some snippets that don't take any dependencies, but they are pretty few and far between. Do you have pointers to some of the more interesting snippets he's posted?

<comment><USER3> Yeah, check 'em out: <http://www.amillionpixels.us/sourcecode.htm>

There are surprisingly many useful snippets. For example, a single header and source file for an entire, complete A* pathfinding implementation! That's a massive timesaver.

<comment><USER4> In a lot of the ones titled snippets, I do see dependencies. Some to Windows DLLs and some to the CRT. But they're relatively self-contained.

Cool stuff. Thanks for the link. Although I'd still call them functions. :-)

</comment></comment></comment></comment></comment></comment></comment></comment></comment><comment><USER6> This is rather well studied subject - but this article does not add anything to the discussion. It talks a lot about names not much about their meaning. The only explanation he gives for the advantages or modules over classes is <blockquote> In Ruby you don't declare your types, so you cannot get ambiguous instance variables: if you have two instance variables with the same name in different modules, then they're the same instance variable. </blockquote> as if this kind of unification of variables would obviously solve anything.

Despite linking to the Wikipedia, he also does provide the right definition of the diamond problem: <blockquote> This is the dreaded "diamond" problem that C++ programmers learn to fear: if your class has two superclasses that both define an instance variable named x, then you can have a hard time specifying which x you're using. </blocquote> Where is the diamond here?

<comment><USER7> Regarding the diamond problem, I think he means that in the event of multiple inheritance, your class heirarchy would look like this:

      Object
       / \
      A   B
       \ /
        C

Where A and B are parents of the class C. In most OO languages there will be an implied parent of A and B, like Object.

</comment></comment><comment><USER8> I was hoping to see a good article about inheritance vs. object composition.

Although Ruby's "modules" are indeed preferable to inheritance they are usually as inappropriate as inheritance.

To my experience, object composition solves most of the design issues in a more elegant way. And I wonder why this is still so less understood by most programmers. It isn't even particularly new. Even the good old GoF patterns recommend object composition over inheritance, especially in their Smalltalk examples.

(In their book, they demonstrate each pattern in a static (C++) and a dynamic (Smalltalk) language, so Ruby programmers should have a deeper look at the Smalltalk part of the book, rather than imitating the C++ variants of the patterns.)

<comment> loup-vaillant I think the reason people prefer inheritance is because it gives them the illusion that their code is simpler. They don't see the huge interfaces implied by inheritance because they are implicit.

Composition, on the other hand, is explicit. When you use it, you notice the complexities. That gives you an incentive to simplify your design, which makes you write _actually_ simpler code.

<comment><USER9> The other reason as I see is some quite weird perception that OOP == inheritance.

<comment><USER10> OOP is different things to different people. While I agree with you that OOP != inheritance, I believe that polymorphism ∈ OOP and inheritance is a part of polymorphism.

<comment> loup-vaillant I don't follow you here. Are you saying that inheritance is mandatory to OOP? (I don't agree nor disagree. I'd just like to know what you mean.)

<comment><USER10> I am not saying that inheritance is mandatory to OOP. I think "mandatory" is too strong of a word here. As I said, OOP means different things to different people and I am okay with that.

Speaking for myself, OOP is a way to orchestrate programming on a large scale. To grow software without growing the frequency, severity, and difficulty of bugs and without growing costs associated with new features is the desired result. Component-ized architecture takes great steps to achieve this result. For this reason, I view OOP as being some combination of: message passing, encapsulation, and polymorphism. I do not believe this is a complete view of OOP, nor that there is no viable alternative view of OOP.

</comment></comment></comment></comment></comment></comment><comment><USER11> Old joke in my office:

Q. What is the object oriented way of getting rich?

A. Inheritance

(its a Friday :))

</comment><comment><USER12> Neat. This style of code reuse is a lot like perl6 roles ([http://search.cpan.org/~rkinyon/Perl6-Roles-0.01/lib/Perl6/R...](http://search.cpan.org/~rkinyon/Perl6-Roles-0.01/lib/Perl6/Roles.pm)) or haskell typeclasses: instead of describing how objects fit into a taxonomic hierarchy, objects or typeclasses are described by what behaviors they fulfill. For instance, in haskell a Complex type has an instance of Num in order to define numeric operations like (+) and (-). The emphasis is on what something _does_ rather than on what it _is_.

<comment><USER13> >instead of describing how objects fit into a taxonomic hierarchy, objects or typeclasses are described by what behaviors they fulfill.

Can't this be said about Java interfaces too?

<comment><USER14> Yes and no. Java interfaces are a very degenerate case of roles. They provide no default behavior (a few constants notwithstanding), they are special cases in at least part of the type system (declaring a class does not also declare a role), and I know of no good way to handle conflicts when implementing multiple interfaces with overlapping requirements.

</comment></comment></comment><comment><USER15> why is this being upvoted</comment>