Social Media Has Failed Its Self-Driving Test - <AUTHOR> https://www.bloomberg.com/view/articles/2017-11-08/social-media-has-failed-its-self-driving-test <comment><USER3> Maybe the author is right - we can't rely on YouTube, Facebook, and AI to police these things, maybe it is the job of the parents to control what our kids see and hear.

There are thousands upon thousands of rendered, cartoon, and live-action videos featuring popular childrens characters like Spider-Man and Elsa that have extremely disturbing themes dealing with punishment, handcuffing/restraint, dismemberment, injections, bodily waste, etc. It seems like they get more and more unusual as autoplay goes on. As a parent they are extremely unnerving and I'll certainly never let young children watch youtube unattended and I warn every parent I know about them.

There are places for curated content and there are content bazaars. YouTube Autoplay is a bazaar. Facebook is a bazaar. Recognize where you are, the motivations of those putting things in front of you and your family, and act accordingly.

<comment><USER4> Is there any reliable body of evidence about what happens to children if they watch content that their parents find unnerving? Do they become sociopaths? Drug addicts? Neurotics? Criminals? Is there any real need for controlling what a child can see and what he can not?

<comment><USER5> I don't think you are familiar with the content. As a parent, I am. We've reported them to YT and they don't act. These are videos that pretend to be about spiderman or peppa pig but involve blood, violence, sexual themes, dismemberment, etc. I understand what you are asking but it's irrelevant here, this isn't an intellectual exercise where we decide "hey, this isn't so bad after all."

<comment><USER6> Sounds like Robot Chicken. Fortunately Cartoon Network firewalls off Adult Swim with an hour or so of King of the Hill or other bland, boring material.

<comment><USER7> No, Robot Chicken is a show that's intended for an adult audience and intended to amuse adults.

This garbage on YouTube Kids is aimed at getting children to watch it and intended to be disturbing to children. The titles say things like "educational, learn numbers" and the channels are called stuff like "Kids TV."

</comment></comment></comment></comment></comment><comment><USER8> The first paragraphs in the app description[1]:

>YouTube Kids has tons of fun and educational videos that are just right for kids. There's also a whole bunch of parental controls that let you create an experience that's just right for your family.

>CONTENT ON YOUTUBE KIDS

>Our app is designed to filter out inappropriate videos for kids, but no system is perfect. If a video that's inappropriate shows up, you have the power to block it, flag it, and bring it to our attention for fast review.

So, it attempts to be "right for kids" and "filter out inappropriate videos". Is that working? I'm not quite sure.

[1][https://play.google.com/store/apps/details?id=com.google.and...](https://play.google.com/store/apps/details?id=com.google.android.apps.youtube.kids&hl=en)

<comment><USER9> This essay[1] by James Bridle points out that YouTube Kids' algorithmic filtering is failing. Thousands (millions maybe) of videos are uploaded containing violent and disturbing imagery and tailored to match the search inputs of children. The entire article is quite interesting.

[1]: [https://medium.com/@jamesbridle/something-is-wrong-on-the- in...](https://medium.com/@jamesbridle/something-is-wrong-on-the- internet-c39c471271d2)

<comment><USER10> The linked article and NYT report would really benefit from some statistical reinforcement. Some of the videos that the two posts show are indeed disturbing, but how many of these are there actually? Bridle's point was almost more aesthetic, pointing out the crudity of animation which is a widespread problem.

That said there is a MASSIVE difference in a poorly animated earworm like the "Finger Family Song" and Chase from Paw Patrol being decapitated in a strip club, which is a rarity.

<comment><USER11> It has also been repeatedly pointed out that the YTube reporting system to takedown inappropriate content consistently fails.

Plausible scenario is that it fails is that they assign a few human reviewers, and set the threshold of reports required so that those humans aren't overworked. Then they make the erroneous assumption that their staffing for the task is adequate and that items falling below the reporting threshold must be fine. Wrong.'

</comment></comment></comment></comment><comment><USER12> I'm repeating much of what I wrote on a previous thread about the same topic as I think it's relevant here too.

I believe the discussion here about parenting is a diversion from the real issues at play.

This is not a 'won't somebody think of the children moral panic'. Instead, we're feeling a foreshock of the problems we're going to experience, caused by the unintended consequences of the systems we have built - and what that means for us as a society.

YouTube videos for kids is a lighthearted entry to the subject - we could be discussing news, porn, education, whatever, and the problems and implications would be broadly the same.

The key issues raised here are: * The 'delamination' of content and author and how that affects the awareness and trust of its source. If, for example, a scientific paper and a bunch of woo is presented in the same way who can tell which is more legitimate? 'Just teach critical thinking', or 'it's called 'parenting'' are not acceptable solutions as by the time enough people have been taught to provide herd immunity we will have long since succumbed to this pandemic of bullshit.

* '...the impossibility of determining the degree of automation which is at work here'. If both humans and machines are creating content tailored for every possible niche, interest, fetish and keyword combination, and algorithmic personalisation makes it possible to exist entirely within our own personal tag clouds what does it mean for us as a society, which requires a basic set of shared values to function?

Junk content and the pandering to base instincts is not new, but our ability now to automate the creation and dissemination of such content to pander to every possible interest and combination of interests at vast scale is new - and we do not yet have the cultural toolkit to deal with it.

I wonder whether in a few years time, once we've really felt the impact of all this, people will look on today's enthusiasm for putting 'social' in everything with the contempt and horror we do with last century's enthusiasm for putting radium in everything.

</comment><comment><USER13> "Anyone who has ever given an iPad to a small kid knows the kind of thing children find on YouTube before they're able to type: Toy unboxing and nursery rhyme videos, official and pirated cartoons featuring popular characters like Peppa Pig. It's up to parents, of course, if they are okay with their child getting engrossed in these (we took the iPad away from our four-year-old daughter because we noticed consuming the content made her reluctant to learn to read and irritable when the tablet wasn't within reach). But the stuff Bridle found was arguably worse than what I'd seen before my wife and I made the decision."

Something Neal Stephenson remarked in Diamond Age: this kind of tech is not a substitute for parenting.

</comment><comment><USER14> Sort of like complaining that romance novels provide an inaccurate model of human relationships...

Social media (even YouTube) is mostly intended to entertain. If it turns out to be bad at other stuff, well, that just means we have to create systems that are. Super popular web sites are not going to be any more socially constructive than the sort of magazines you find at the checkout aisle of a grocery store. Nothing has really changed here.

</comment><comment><USER10> Regulating tech co's is one approach, another is trying to create new social norms around the use of these platforms. My Facebook feed is almost entirely pictures of friend's babies and announcements about local events. That's because I've curated my feed and deliberately not liked any news sources. Some friends and family share their opinions and stories, but even during the election, it was pretty limited. It's tempting to create a new federal apparatus to regulate these tools, but what's really lacking is the common sense found at a dinner table "No talk of politics or religion."

</comment><comment><USER15> It's interesting reading the comments to see how one proposed "humanly curated" alternative (PBS kids) has been discarded as "not being free" yet people are up in arms that Youtube Kids is not using humans to curate their videos. These 2 requirements are in contradiction. I don't know if it's even profitable to have a lot more humans reviewing Youtube Kids videos while keeping the service "free" (ad based) but even if we assume that may still be profitable it's pretty clear it will be significantly less profitable then it is now which means that Google (a company not known to be shy from shutting down services with tons of users) may simply shut it down and move to do something else where they can get higher profit.

If the market/technology does exist where someone else could do a better job then there would be many alternatives, it's not like Youtube Kids has some lock in mechanism.

PS: the self-driving moral decision comparison in the article seems baseless, I very much doubt anyone developing self-driving algorithms are considering "moral decisions", there is no moral decision to be made, the car will try to stop (in its lane) as fast as it can if it detects an obstacle, it won't try to swerve (after performing some imagined moral decision algorithm) because that would be illegal and it potentially increases liability of the software manufacturer.

</comment><comment><USER16> The assumption in all articles of this variety is that media consumers are either incapable of or not motivated to evaluate the veracity of content placed in front of them. This, rather than the ethics of 'media company X' seems to be the issue worth considering.

<comment><USER17> The target consumers in this case are small children, that they are incapable of evaluating the content placed in front of them is exactly the point.

<comment><USER18> No, it's not. The author used the blog post as supplementary material, but like Steve Jobs the author also had the common sense to take away his child's access to electronic devices for reasons outside of the content. More generally, when somebody is too young to consent to something - the decision their rests with the parent. As the author alludes to, this is mostly done just to silence the kids up rather than enrich their development. I think the content here is far less concerning than this increasingly common 'tablet- babysitter' behavior.

</comment></comment></comment><comment><USER19> I don't understand the point of this article. I found Bridle's original piece to be much ado about nothing. He basically complains about algorithmicly generated content being too "weird" for kids then does English lit style analysis looking for malicious undertones in said content. I didn't agree with it at all but at least it was an original blog post that was trying to make a point.

This Bloomberg piece on the other hand simply links to Bridle's blog and says "Yeah! What that guy said!". _Really_ thin "content" imo.

</comment><comment><USER20> > we took the iPad away from our four-year-old daughter

Not referring to the person of the author, but people use tablets and phones as stand-by buttons for their kids. However much active the kid might be, they get parallised watching cartoons and whatnot. But in a recent interview with a local doctor from a working-class neighbourhood where I live, he was referring how excess use of this is causing kids to suffer from under-developed motor skills (Evrensel.net on the _Esenyalı_ neighbourhood).

</comment><comment><USER21> As of 2015, there were 576,000 hours of video uploaded to YouTube per day. As of 2014, Facebook users generated 4 petabytes of data per day - four billion gigabytes of photos, videos and text. Does anyone believe that it's feasible to manually review even a significant fraction of that content?

Social media is media, but it's also social. A lot of people are trying to apply the standards of traditional media to something that's fundamentally different. I'm not sure where on the spectrum social media lies between "private conversation" and "network TV", but I don't think that we can exactly apply the social norms of either.

The vast majority of people would agree that some degree of monitoring and censorship is necessary for the prevention of crime. Beyond that, I think we simply have to accept that some amount of content on social media might offend us.

Social media is created by people with a very diverse range of beliefs, opinions and standards of decency, so it's unlikely that we'll establish a universally agreeable set of standards. Social media companies have a limited ability to control the content on their sites reactively or via algorithms, but it's logistically impossible for them to consistently enforce their terms of use across all content.

Many voices in the traditional media would have us believe that occasional offence is a fundamental flaw in social media, but I think that's a bogus narrative.

[https://www.statista.com/statistics/259477/hours-of-video- up...](https://www.statista.com/statistics/259477/hours-of-video-uploaded-to- youtube-every-minute/) [https://research.fb.com/facebook-s-top-open-data- problems/](https://research.fb.com/facebook-s-top-open-data-problems/)

</comment><comment><USER22> If you don't want your children to be addicted to that content then don't give them access to it in the first place.

Maybe people willfully choose fake news on Facebook because they're tired of the fake news the mass media broadcast.

"Oh but those are wrong choices and somebody needs to put a stop to it!"

This is just a push for autoritarianism. No thanks.

<comment><USER23> Your post history would suggest you're a troll, so I'm downvoting this comment, but additionally, you're mingling a bunch of complicated ideas and prescribing a broad generalization.

We live in a market-driven society, people are free to choose to consume what they want to consume (as you point out) but that doesn't give carte blanche to the producers in the marketplace to do whatever they want in the name of ad revenue. When it does reach a tipping point, as I think we're seeing with this Medium article, regulation will start to come to a niche industry that had previously operated under the radar. Especially when human health consequences are involved, the government steps in to ensure protection to its citizens (and its most vulnerable members, children).

If you really are upset that you won't be able to view algorithmically generated children's cartoon videos stuffed with tropes and keywords that exist for no other purpose than to make money, I'm concerned for your wellbeing.

<comment><USER22> So personal responsibility be damned. Lets just have the government determine what is good for us and what is not.

<comment><USER24> I'd rather the elected government do it rather than an unaccountable multinational corporation. What do you think "relevance" algorithms are other than some company determining what is good for us and what is not?

Edit: P.S. Where was the personal responsibility of Facebook after they were caught peddling propaganda placed by foreign actors? As I recall it took a lot of arm twisting to get them to admit there was even an issue.

<comment><USER22> The difference is choice. Companies can offer whatever they want and it's up to me to decide whether I consume their products and services or not.

Government on the other hand makes the decision and forces it on everyone. Not just those who elected it, everyone.

Edit: as for the foreign propaganda, how many nations and what interests were/are they peddling? If it's already illegal then sure, it should be forbidden from the network. If it's not, then I'm fine with it.

<comment><USER24> > The difference is choice. Companies can offer whatever they want and it's up > to me to decide whether I consume their products and services or not.

Please, tell me how I can escape Google? God knows I've tried - I have a Fastmail email account, I use DDG, and I stick to Apple hardware. That doesn't change the fact >90% of advertising I see on the open web is still "suggested" for me by Google's algorithms, that my employer uses Google Apps and Google Drive for just about everything, that many links I encounter on social networks are AMP, and that most of time I need to verify I'm not a bot I'm filling in a recaptcha.

Saying I have a choice not to use Google is only true in the academic sense. It's theoretically possible, but not without extreme effort and probably not without finding a career outside of the tech industry.

<comment><USER22> You can choose to switch jobs and not use the internet :p

What you don't have is the power to make others choose what you'd want them to.

</comment></comment></comment></comment></comment></comment></comment><comment><USER18> I find it quite ironic that the author at one point complains of misleading tags being used in titles to generate clickbait (or 'searchbait') in an article that awkwardly shoe-horned in "self-driving" into a couple of sentences to artificially generate additional clicks. It's currently the "top story" on Google from Bloomberg for "self driving."

Actually ironic is not the most accurate word. It's _telling._ This is another article which is essentially a call to censorship. And what's to be censored? Well like most of these articles, that's not really discussed beyond whatever the author happens to disagree with. You see, jamming in misleading tags to produce hits isn't a problem when it benefits the author or their publication, but when others do it? Oh, it's time for a _serious conversation_ now.

</comment><comment><USER25> The only solution is to opt-out. There's no other solution.

That said, there is a role for government regulation. Specifically, to break up monopolies such as Google.

Then, when there is proper competition, you have some freedom to choose the platform that's policed by algorithms that you agree with.

</comment><comment><USER26> The article ends with

> A step back to assert human control -- even if it cuts into the tech > companies wide profit margins -- is overdue indeed.

The author seems to think these problems cannot be solved with technology. Maybe they think that, or else Facebook, Twitter, et. al., would have solved it already?

I think that it is far more likely that our society directly incentivizes the companies to _not_ solve the problems. That is why they are not solved. Because we lavish them with money to leave them unsolved.

Legislate that political news must be regulated. Legislate that companies that exert social control over a population, like Facebook, must do so responsibly. Don't just tell them that humans must curate all content. That won't work. Humans are too expensive and corruptible anyway. The solution is structural in society just as the problem is. Take away the profit incentive for big tech firms to cheat and feed lies, and our society will improve directly in line with what the author probably wants.

<comment><USER27> > _Legislate that political news must be regulated._

This is not as simple as it sounds, of course, because the _regulators_ would also have plenty of incentives for bad behavior.

I actually think that government regulation can be tremendously useful in certain circumstances. But it's not a magic solution, and you have to be clever about it. In the particular case of political news, the potential downsides of giving too much power to regulators are at least as dangerous as giving too much power to Facebook or Google.

</comment></comment><comment><USER28> Where are these examples of poisonous kids cartoons?

</comment><comment><USER29> Filter bubbles have always been an issue. This is not a new problem. Traditional media has the exact same problem.

<comment><USER30> The trouble with a comment like this is that, by merely venting and not teaching the reader anything, it's no better than what it's complaining about.

It's extra work, of course, to put substance behind what you're saying, and that isn't always an option. But refraining from posting is.

</comment></comment><comment><USER31> I wonder to what extent this YouTube Kids stuff represents a "moral panic" \--- oh no, look at the depraved things our children are watching! And they are TEACHING an ALGORITHM to learn that LIVE CHILD ACTORS should be made to act out even more depraved versions of these things to get more page views!

Versus a real problem -- oh shit, we accidentally created a brand new Internet where there are no more editors, everyone is free to find their own content democratically, hooray, but some of the people we put in charge of creating that content are hyperactive amoral entities.

I know a bunch of Facebook employees have this view of the whole "filter bubble", "fake news" situation which is, more or less -- Deal With It. The news feed algorithm is here to stay, it's the new printing press, editors are obsolete, and everyone gets to decide their own truth now. That view is evinced ambivalently at e.g. [https://www.wired.com/story/the-solution-to- facebook-overloa...](https://www.wired.com/story/the-solution-to-facebook- overload-isnt-more-facebook/) .

But I'm not sure how that view copes with the YouTube monetization model which .... starts with children's videos ... goes to ad revenue ... and leads to children being videotaped apparently in real distress for money.

Here are 2 points of reference:

(1) YouTube channel "DaddyOfFive" had 750,000+ subscribers and featured what was fairly clearly child abuse ("pranks"). Somebody finally thought it might be a good idea to report this to authorities and the father lost custody of some of the children. [https://www.washingtonpost.com/news/the- intersect/wp/2017/04...](https://www.washingtonpost.com/news/the- intersect/wp/2017/04/25/the-saga-of-a-youtube-family-who-pulled-disturbing- pranks-on-their-own-kids/)

(2) The comment at [https://news.ycombinator.com/item?id=14910125](https://news.ycombinator.com/item?id=14910125) links to an article at [https://vigilantcitizen.com/moviesandtv/something-is- terribl...](https://vigilantcitizen.com/moviesandtv/something-is-terribly- wrong-with-many-kids-videos-on-youtube/) which provides some evidence that toddlers' content preferences are influencing the creation of new content which involves, as part of making the content, putting children in distress. This seems to cause actual measurable harm to children.

The news.ycombinator comment said in part :

> The feedback loop is so tight that many of the creators have converged on > designing some of the most visceral (and disturbing) material that appeals > to kids at a reptilian level. Think about how genuinely weird little kids > are. Sometimes they do stuff that would be scary if it wasn't just a minute > of innocent pretend and a toy. Stuff like kidnapping each other or > performing surgery on each other. Well, now there are hundreds of thousands > of YT videos illustrating that kind of material in fine detail. Many of them > have millions of views.

And the sample videos' captions include:

> Many videos feature the girls screaming or crying their heart out. In this > video, this girl has something in her mouth that tastes horrible … And she's > forced to keep it in her mouth … And she doesn't seem to be acting.

> Here, a girl takes something from the toilet and force feeds it to the other > girl. She doesn't like this.

> In another video, a creepy dude with clown makeup barges into the girls' > house and starts grabbing them while the girls scream and attempt to resist > him.

Is this wrong? Should this not be happening? Is this anything but a natural effect of the 2010-2011 "filter bubble" and the 2016 "fake news" phenomena?

</comment><comment><USER32> Social Media has failed.

<comment><USER33> Social Media has succeeded in its primary mission: to make money.

</comment></comment><comment><USER34> TLDR the inevitable opinion piece using FUD about social media to make the BUT THINK OF THE CHILDREN!!! argument against free speech.

<comment><USER23> Serious question: What kind of speech is being censored here? There is no conceivable message behind these videos, it's a cash grab, that is the point of the article.

</comment></comment><comment><USER35> Perhaps the author does not understand the logistical nightmare of having human moderators manually approve all content.

Further, the fact that YouTube, Facebook, et al. Have failed to police content to the author's satisfaction is not indicative of a failure in AI - <USER2> when these corporations are effectively incentivized by view counts and advertisement _not_ to remove these videos.

In short, YouTube's failure is not a valid indicator of the effecticeness of AI in general.

<comment><USER36> > Perhaps the author does not understand the logistical nightmare of having > human moderators manually approve all content.

Pretty sure he does, from the OP:

> A step back to assert human control -- even if it cuts into the tech > companies wide profit margins -- is overdue indeed.

The tech companies use these algorithms because they're cheap and they're good-enough _for their profit-making purposes_. If Google's algorithms can't keep _YouTube Kids_ kid-friendly, then they need to hire the human moderators to make up the difference or kill the product (because it's false advertising).</comment></comment>


Apple Has 'Just Weeks' to Solve iPhone 8 Touch ID Dilemma - <AUTHOR> https://www.macrumors.com/2017/07/11/apple-weeks-to-solve-iphone-8-touch-id-dilemma/ <comment><USER2> Risking dropping a genuinely useful feature for an engineering vanity project just to mark the 10th anniversary of a product feels very Tim Cook's Apple to me.

As Marco Arment put it on the ATP (ep. 229) podcast

>In so many recent Apple product developments, because so much of the low hanging fruit of modern hardware has been picked already. We are so often having to make progress only by making certain things worse or by giving up certain things we're not quite ready to give up yet, and we do this in order to get the new hotness.

<comment><USER3> I agree with both the ATP guys and Gruber that I seriously doubt we're this close to production and Apple doesn't have this locked down. It was probably locked down quite a while ago. The hardware is almost certainly finalized.

Could there be an additional face-unlock feature in the software? They can decide on that much later. They could push it back (like Portrait mode in 10.1).

But I expect the hardware design is finalized.

</comment></comment><comment><USER4> interesting if they implement facial recognition eventually how would this boost the acceptance of this technology as a whole. Reading a lot about it and even participating in testing (like my bank is testing some sort of biometric authentication on me) feels like people are not yet comfortable with yet and far away to compromise it...</comment>


Suburbs rethink mass transit to court millennials - <AUTHOR> http://www.washingtonpost.com/local/trafficandcommuting/yearning-for-car-averse-millennials-suburbs-turn-to-transit/2015/03/29/cb916cd8-d259-11e4-8fce-3941fc548f1c_story.html?tid=pm_local_pop_b <comment><USER2> >> Researchers say they're intrigued that millennials' aversion to driving and owning a car has endured even since the recession ended.

This is a direct response to the above quote.

Every time I read one of these articles I'm surprised that the rise of smart phones isn't cited as a contributor to this change of preference. Every minute I'm driving is a minute that I am disconnected from the internet. Constant connection is arguably a bad thing, but I'm pretty much addicted, and I would bet that everyone else is too.

Of course there are many other contributing factors to my preference for mass transit over driving. My perceptions that inform my preference (whether true or not):

* Cars are simply not safe. It isn't just that I'm worried about getting hurt in an accident. I don't want to be responsible for harming someone else. * Many forms of media have constantly reminded me as I grow up that cars are bad for the environment. * Cars are incredibly expensive. If I never buy another car, I could easily afford a small house with the money I will save over my lifetime. In addition to the car, I have to pay for gas, insurance, and maintenance.

However, in the end, I still have a car. I have a car because my city's public transit is still slow and unreliable. It is getting better. And I use it quite a lot to get to things in the interior of the city. My car gets me to the events I go to on the edge of town, and it covers me when I need to get somewhere in the middle of the night, when the bus isn't running.

I'm not sure how similar I am to other millenials, but these are the things I think about when I see a quote like that.

<comment><USER3> Every time I see one of these articles, I get confused. I have to wonder what mysterious world they live in.

There are many reasons I don't use a car (I own one; I rarely use it). They're all touched on in here. But beyond a shadow of a doubt, the number one reason: fuck. traffic. FUUUUUUUUCK. Traffic.

Traffic infuriates me. It's filled with people who drive unsafely. It's filled with people who drive too fast. It's filled with people who drive too slow. It's filled with people who don't understand left hand vs right hand lanes. It's filled with people who can't read street signs or don't know where they're going. It's filled with pedestrians who think they can dart out between parked cars whenever they feel like it. It's filled with cyclists who ride too aggressively. And, most importantly, it's filled with a billion other cars.

I went on a day trip to Berkeley -> Monterey last Saturday. Google maps said "116 miles, 2 hrs 10 minutes". Door to door it was 4 hours 15 minutes. An average speed of 25 mph. On a fucking freeway rated 70. This is insanity.

Even ignoring the fury, how does anyone plan their life when traffic can swing so wildly. How does anyone get to work on time and not get fired when LOL TRAFFIC YOU'RE NOW AN HOUR LATE.

Public transit might be dirty and smelly and crowded and out of the way. But I also know that, pending someone suicidal, I will always get to work at the same time.

Is traffic that much different everywhere else in the country?

<comment><USER4> In a mid-sized American city, I prefer to cycle since downtown and the inner- ring suburbs have 15-20 minute bicycle trips. My wife and I split a car.

Traffic is not as bad as the worst places: you can drive most places in town within about a half-hour. But when you have to run a couple of errands in the car-centric suburbs, that time piles up quickly. Try to run 2-3 errands in the suburbs and you're spending hours driving. It's horrible.

Of course, we have no light rail and the buses are really slow. Cycling is the main viable alternative.

<comment><USER5> Unfortunately, cycling gets you sweated and crumpled, and that makes itself a non-starter for a lot of jobs, unless at the destination you have access to showers and a change of clothes. Cycling is however an option for many other mobility needs.

</comment></comment></comment></comment><comment><USER6> I'd argue that the ideal of not owning car is more tethered to the lack of medium-to-high paying jobs for a huge swath of the population in the United States. I find the idea of millennials not driving simply due to aspiration sets a little nauseating, as depending on how you're slicing the age cut off, I'm part of "this generation".

Owning a car is very expensive and out of reach of fair number of people. Even driving a modest economy car, between parking ($150 monthly downtown in my city) , my car loan ($200 mo.) and good insurance ($200ish mo.) + gas ($60ish) means I'm out $600+ of income. That's $7200 yearly without maintenance. That's as much as many people's rent in many places. I'm privileged enough that I can afford this without seriously impacting my lifestyle, and I have a sinking suspicion that if more millennials could, they'd also be car owners/drivers. With the average income per person, at $26,000, owning car is nearly out of reach.

However, I suppose I shouldn't look the gift horse in the mouth. Giving more mass transit options for work is certainly a good thing.

<comment><USER7> _I 'm privileged enough that I can afford this without seriously impacting my lifestyle, and I have a sinking suspicion that if more millennials could, they'd also be car owners/drivers._

At 34, I'm at the upper end of the millennial age range, and I have had a car for the past decade. But I'm paying about $500/month extra rent for the privilege of living close to mass transit, and if it could efficiently get me everywhere I needed to go I would ditch my car in a heartbeat.

Or to put that another way: I would _pay extra_ for the privilege of not owning a car. I suspect that in Vancouver at least, 20 years from now the strongest predictor of car ownership will be "too poor to live close to mass transit".

<comment><USER8> >20 years from now the strongest predictor of car ownership will be "too poor to live close to mass transit".

I'm sure most people on here realize this, but European cities are the opposite of US cities - poor people live in suburbs outside the city, living in the city is desirable.

If you think the debate over gentrification is interesting now, just imagine what it will look like in US cities where this flip-flop takes place.

I live in the Twin Cities, MN, and see this happening to Minneapolis-St Paul as they seem to be going through this right now

<comment><USER9> Unless mass transit were to become more convenient than point to point transportation via automobiles I can't see this happening. Those who can afford it will almost always value the convenience and privacy allotted by automobiles. In Europe, the cities were originally built and designed long before automobiles, trains, and streetcars and the resulting layout results in a denser environments where mass transit works better.

<comment><USER10> "In Europe, the cities were originally built and designed long before automobiles, trains, and streetcars and the resulting layout results in a denser environments where mass transit works better."

Bucharest (Romania's capital) was a typical European city like that you're describing, but it was heavily reshaped (especially in the 1977 quake event) and is continuously worked on both in access infrastructure (extending and improving) and real estate development, and they somehow manage to keep it both automobile friendly and convenient for the the rest. The automobile possession here gets more of a whim than a necessity, as the public transportation covers literally everything, even at night! This isn't that much a mater of how things tend to fit naturally, as it is cultural. I get the impression that in USA they go lengths to keep things in a state where you have to need a car.

</comment></comment></comment></comment></comment><comment><USER11> The first suburbs were built around the public transportation option of the time, streetcars. It's a shame that most cities threw that away when cars appeared.

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

Ignoring the implementation detail of the street car form, the fundamental idea of designing a suburb neighbourhood around major transit nodes, with some light commercial at the core stops makes tons of sense. Walk or bike 5-15 minutes to the transit node, get on transit, get to town. No car necessary.

<comment><USER12> This is more or less how Copenhagen is built. It's most famous for the high degree of biking in the city (~50% of people living in the city proper commute by bike), but if you take the metro area as a whole, it's surprisingly sprawling. Of 1.5m total people, only about 500k live in the city, and the other 1m live in the suburbs, which spread out to a surprisingly large radius considering that it's not that large of a population (the outer suburbs are about 40-50km from downtown).

However that quite geographically large sprawl is _mostly_ channeled along five main corridors [1], with a fairly fast commuter-rail system serving as the backbone of each corridor. That allows having large expanses of single- family homes, but still good transit access.

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

<comment><USER13> That's also how Westchester in NYC is built. Lots of little suburban towns built around Metro North stations.

</comment></comment></comment><comment><USER14> It will be interesting to see how millennials preferences change once they have kids. I lived for a few years in a large city without a car, and loved it. However, once you have kids, things change. Kids often have lots of accessories that you don't want to be dragging around with you everywhere (stroller, diaper bag, toys, books, etc). A car is a great place to store those. Kids also result in more multi-stop trips that aren't necessarily on the Metro lines.

I think millennials probably won't adopt their parents' car-based solutions to these problems, but what they do choose will be different than what they're choosing now.

<comment><USER15> It's not just he car... most of these cities are not affordable to live in when you have kids. A 1 or 2 bedroom is fine for a young & single worker or a young couple. But bigger apartments have been converted into dorm style living in many cases since rents have shot through the roof.

Many cities like Boston, NY and SF are trying to add affordable housing but that seems to be either a few units for very low income people or micro-units that are just a couple hundred square feet. Unless you make a huge amount of money I think most families get pushed to the suburbs to try to find somewhere they can afford to live.

I'd like to see better designed suburbs that combine dense larger housing with public transit to connect the suburb communities with each other and the city they encircle. We need a size of home between the micro-apartment and the 2 million dollar mini mansion.

I'd love to be able to take public transit into Boston from my place in the suburbs but train stations only have a few dozen parking spots and the bus service is limited to the city areas. So I drive for now.

<comment><USER14> >I'd like to see better designed suburbs that combine dense larger housing with public transit to connect the suburb communities with each other and the city they encircle.

This is a good point. Even if we increase public transit, almost all of these plans only improve connectivity between the suburb and downtown. When you need to get from one suburb to another to see a friend from work or school, that can take hours, even if both families are close to transit. Increased options between suburbs is important too.

</comment></comment></comment><comment><USER13> It's really interesting to see companies like Apple and Google double-down on faceless suburban office parks while the rest of the country is moving past them.

<comment><USER16> I remember taking the light rail everyday in North Sunnyvale on Java Drive a few years ago, and wondered why companies like Google, Facebook, etc didn't move over there-there were so many vacant buildings, all next to VTA light rail. Apple's campus has mediocre bus service (VTA 55), Google's has practically none I can think of (piss poor location for transit) and FB is banking on the unicorn-like hope of revitalizing Redwood Junction and building a Caltrain spur.

I bet dollars to doughnuts most people who work at big name tech companies in Santa Clara County, and who actually live in Santa Clara County, drive to work.

<comment><USER17> Has there been any actual public discussion about revitalizing Redwood Junction? I mean, there are literally train tracks running from the Redwood City Caltrain all the way to Facebook. Curious what the main obstacles are.

<comment><USER18> The various public agencies involved are restarting a project to bring commuter rail service to the area: [http://www.greencaltrain.com/2015/02/dumbarton-policy- commit...](http://www.greencaltrain.com/2015/02/dumbarton-policy-committee- seeks-project-restart/)

The project was originally intended to connect Redwood City Caltrain to Union City BART in the East Bay, but the (partial) funding was redirected to the San Jose BART extension. There was no real chance of the project being built before now anyway; rebuilding rail bridges is pretty expensive.

</comment></comment></comment></comment><comment><USER19> Millennials is trending hard: [https://www.google.co.uk/trends/explore#q=millennials](https://www.google.co.uk/trends/explore#q=millennials)

It's hard to see why - I see a lot of pretend statistical articles on the subject but nothing validating that this group is actually any sort of cluster.

It's also interesting that when they talk about millennial, commentators are usually not talking about poor people. They mean middle class kids. I guess it's good clickbait for ads because it's a category that could describe anyone with monies children.

</comment><comment><USER20> For what it's worth, I'm moving from Europe to a very car-dependent city (San Diego) and desperately trying to find a neighborhood where I and my wife will at least not need _two_ cars, and ideally none. It's a hell of a sprawling city. Bankers Hill or Little Italy seem like good choices but the jets are damned loud.

A suburb with good train/trolley service would be fairly appealing. I won't pretend to like National City or El Cajon (I don't), but at least Mission Hills is an option. However, Mission Hills hates bicyclists and opposes bike lines, so I'm trying to avoid that area out of principle.

<comment><USER5> For places like San Diego (sprawled and in a climate without snow), in the worst case you can opt for a motorbike or a scooter. That will give you mobility and avoid some of the car's drawbacks. It would be better if you won't have to own any transport though.

<comment><USER20> I suspect we're going to wind up as a 1 cheap car (for long out of town trips) + 1 electric bicycle household. I can deal with that. Even if we're near the trolley, it barely goes anywhere. Alternately I might see how life is relying on car2go and then decide whether I really need to own a vehicle. I really, really don't miss having a car.

</comment></comment></comment><comment><USER21> It's not just millennials: As suburban boomers age, more of them won't be able drive due to health reasons. My hope is that self driving cars and better planning can help us rethink things.

<comment><USER22> We don't need driverless cars, we need carless drivers. Urban densification, not self-driving Ubers.

<comment><USER23> Never going to happen. Self-driving cars will always be cheaper than rebuilding a non-insignificant amount of the US.

<comment><USER24> Growth is geometric. Whatever has come before is the smaller part of what we will need in future. We're always, constantly rebuilding a non-insignificant amount of the US.

<comment><USER23> Want to make a long bet? You're counting on enough economic activity in the suburbs to drive the growth needed to revamp urban planning in those areas. With an aging populace in the US, we're hard pressed to pay for our existing obligations, let alone rebuilding communities on a massive scale.

<comment><USER25> The article weaves a story out of some incremental light rail in areas where it makes sense. But that's a long way from transforming what suburbs (and even sprawling cities) look like on a broad scale. IMO autonomous vehicles that can really replace car ownership are a long way away but mass transit planning is a long time horizon as well. And if/when they do arrive it's almost inevitable that they'll make driving more attractive, not less.

<comment><USER23> > IMO autonomous vehicles that can really replace car ownership are a long way > away but mass transit planning is a long time horizon as well. And if/when > they do arrive it's almost inevitable that they'll make driving more > attractive, not less.

The problem is that you can approach self driving cars in an incremental way, while light rail is extremely expensive upfront.

I don't have time at the moment to go into detail, but look at the Greenlight Proposal in Pinellas County (Florida). It was advertised as a light rail/bus transportation network overhaul, and it was downvoted due to being too expensive (while adding extremely minimal taxes to cover it).

[http://www.psta.net/plansandreports.php](http://www.psta.net/plansandreports.php)

</comment></comment></comment></comment></comment></comment></comment><comment><USER8> What I find most interesting in this pushback against cars and suburbs is just how temporary the criticisms of them are.

We are on the verge of having self driving electric cars and most of the complaints about suburb life will seem silly.

<comment><USER11> Self driving electric cars will have little effect on traffic congestion. If the region is completely car-centric in its design, with a weak public transit system, you'll still have traffic jams and lengthly commutes.

The only difference is that the single people in the cars can look at their phone instead of looking at the bumper infant of them.

<comment><USER26> > Self driving electric cars will have little effect on traffic congestion.

Are you sure? It seems like it would definitely have a decent impact on traffic in certain situations, like those traffic jams that are only caused by people slowing down too early and speeding up too late, compressing the traffic.

I believe a lot of problems of traffic could be fixed with self-driving cars, especially if they worked together.

Certainly you'll never make certain cities free of traffic congestion, but I think a lot could be done in smaller cities and suburbs.

<comment><USER27> Actually, I think the biggest market will be china, where mega cities like Beijing are incredibly congested without much more room to build anymore roads. The gov might just say: self-driving only inside the 5th ring, and the traffic would be much much better, even it just applied to limited access ring roads (though I bet they would do arterials also).

</comment></comment></comment></comment><comment><USER28> My whole line of thought on this subject changed when we decided to have a child. I am/was an enthusiastic user of public transportation, but the idea of trying to have a baby and not be able to get around on precisely my own terms (that is, on my own schedule, and with the burden of stuff my little family requires to be clean and comfortable) seemed absurd to me and now, though I still take the train to/from work every day, the idea of not having a car seems untenable.

<comment><USER5> The alternative of car ownership is not necessarily the reliance on public transportation. Having no need for public transportation (in the context of parenting), like having close-by all that you'd need is even better than having a car.</comment></comment>


Ninth Circuit Sends a Message to Platforms: Use a Moderator, Go to Trial - <AUTHOR> https://www.eff.org/deeplinks/2017/04/ninth-circuit-sends-message-platforms-use-moderator-go-trial <comment><USER2> I think this is a win for free speech in a sort of backwards way...</comment>


ABI vs. API (2004) - <AUTHOR> https://lists.debian.org/debian-user/2004/02/msg00648.html <comment><USER2> Best and short explanation I've ever read.

It's a pity that Colin Watson left Debian's Technical Committee ([https://lists.debian.org/debian- ctte/2014/11/msg00052.html](https://lists.debian.org/debian- ctte/2014/11/msg00052.html)), but his blog is still worth reading: [http://www.chiark.greenend.org.uk/~cjwatson/blog/](http://www.chiark.greenend.org.uk/~cjwatson/blog/)

</comment><comment><USER3> Great resource about C++ ABI compatibility (what changes ABI, what doesn't, and how to change code without changing ABI):

[https://community.kde.org/Policies/Binary_Compatibility_Issu...](https://community.kde.org/Policies/Binary_Compatibility_Issues_With_C%2B%2B)

</comment><comment><USER4> Having maintained a C++ API and ABI based on implementation inheritance with virtual functions, I have deep respect for both kinds of compatibility. Someone even used placement new to put objects with vtable pointers in shared memory, expecting destructors to work in a different process!

Check out the "fragile base class problem" some time for more things than can go wrong.

Something that want made explicit: If you support closed source, shipping binaries, then the ABI can't change, or you break all compiled binaries users have installed. If rebuilding the world from source is an option, changing the ABI is an option.

(Introducing a new ABI for new subsystems is still OK - hence renaming libc when it changes)

(Say what you want about Microsoft, but COM solved that problem pretty well in the '90s...)

<comment><USER5> > _If rebuilding the world from source is an option, changing the ABI is an > option._

It's an option ... but not a very good one.

It tends to create an unstable environment that requires a centralized organization just to keep it working, precluding a healthy diverse software ecosystem.

This is a major reason why it's very difficult to distribute binary packages when operating externally to the distribution packagers, and why commercial software distribution on Linux is a massive pain in the ass.

</comment></comment><comment><USER6> The ultimate guide on writing shared libraries, ABI compatibility, etc, is this document written by Ulrich Drepper: [https://www.akkadia.org/drepper/dsohowto.pdf](https://www.akkadia.org/drepper/dsohowto.pdf)

</comment><comment><USER7> Hmm. I've always understood 'ABI' to mean something like 'the conventions for turning an API into machine code'. So the fact that floating-point arguments go on the stack is part of the ABI, whereas the fact that some function takes two floating-point arguments is part of the API. This seems to be the meaning used in the System V Application Binary Interface [0].

[0] [https://www.x86-64.org/documentation/abi.pdf](https://www.x86-64.org/documentation/abi.pdf)

</comment><comment><USER8> 30 years ago, this article could have mentioned the OSI model ([https://en.m.wikipedia.org/wiki/OSI_model](https://en.m.wikipedia.org/wiki/OSI_model))

Although desribed in terms of networks, it is flexible/abstract/content-free (1) enough to describe communication between software components on a single machine.

An API describes what programs/libraries say to each other, an ABI is a lower layer that describes how they should do that. I would place them on levels 4 and 3. Level 2 is the hardware in the CPU, level 1 are electrons moving through tiny wires, but one can change that to something different (light flowing through fibers, a human keeping track of state on paper, etc) without affecting ABI nor API.

Looking at this this way, it is clear that there are levels above an API. For example, one could place the semantics of the API (you can only close a file that is open, free memory you allocated, etc) at level 5.

(1) I think it is a mix of these, but feel free to pick an adjective you like.

</comment><comment><USER9> That's why developing with shared libraries is such a PITA. Got to preserve those precious ABIs.

<comment><USER10> What exactly do you mean by PITA? In most cases in my experience, you have two very simple choices - 1. don't modify the existing API / public structures as you change things and the ABI will stay safe; 2. just change things and bump up major number when necessary.

The third way of carefully doing only additive modifications to the library to preserve ABI even over upgrades is hard - that's true. But I don't think it's needed that often once most of the features are in. And again - it applies only if you've got some really popular software that gains anything by doing it this way, rather than just bumping up the version.

<comment><USER9> What I mean is that in addition to rules of the language I program in (say C or C++) there is another bunch of seemingly arbitrary rules that I must constantly be aware of to ensure nothing breaks. Rules like "don't reorder fields of structs" or "you can add new methods to a class as long as they are not virtual. and sometimes you can add virtual methods too as long as they end up at the end of vtable".

How do I ensure that I conform to these rules apart from being disciplined about them? If everything compiles, am I good? No! If everything links, am I good? No! Depending on linker options and the nature of incompatibility the program using incompatible ABIs can blow up at runtime or just silently corrupt data.

And don't get me started on the venerable "pimpl idiom". A page of boilerplate just to ensure the most basic thing.

Hope that clarifies my short sentiment a bit :) I agree that once you grasp the rules following them is not that hard but it is just another bit of incidental complexity that we agreed to maintain.

<comment><USER11> C++ ABI compat rules _really_ hurt when they prevent you from evolving a library in a sensible way. Say that you really need to add a method to a virtual class. Unless you planned ahead by adding placeholder methods, you're SOL. What a lousy design constraint!

This problem is solvable at the language/runtime level by resolving vtable offsets at runtime, but that doesn't help the existing C++ userbase.

<comment><USER12> It hurts so much that the boost people decided they wouldn't even bother trying.

</comment></comment></comment></comment></comment><comment><USER13> In my opinion, with every change in ABI, the build system should transparently update all binaries. The only thing the developer should notice is that the build takes longer.

<comment><USER14> That means the build system has access to all source code of all binaries compiled against it. That is doable within projects (make dependencies), and within centralized open-source distributions such as Debian (through archive rebuild triggers).

But it is impossible in general.

<comment><USER15> Wouldn't there be idioms in the assembly which represent compatibility with the old ABI? Couldn't you translate those directly in the assembly without having to re-run the compilation?

ABI describes things like how the stack works, but at the assembly level the only stack is the one you implement, which is generally compatible with an ABI version.

<comment><USER14> Not easily. What you are describing is annotating every entry point in a library with symbol tags, and annotating every function call with the same symbols. It basically requires you to have another JIT compilation phase or runtime library to resolve function calls. We do have examples of that (e.g. .net assemblies), but it requires a lot of infrastructure to support it.

And there's still more than one stack implementation choice at the assembly level. For example, what is the correct order for passing parameters on the stack? What is the memory alignment for off-size stack parameters? Is the caller or the callee responsible for reclaiming the stack space at function completion? How are function return values passed back?

</comment></comment></comment></comment><comment><USER16> Can someone explain how the changing of a dependency abi breaks things both at compile and run time?

<comment><USER17> A good recent real life example of this is when the POWER architecture moved to Little Endian. The API's stayed the same (think GLib C API), but LE introduced a new ABI where registers (ie r12) which had a specific purpose in BE changed in LE. This all has to do with linking/compiling.

At runtime if you're reading/writing to memory you had to ensure that you read and write using the same "stride" ie reading and writing back in 32bits is fine, but if you read in 32bits do some transforms in a register and write it out in 16bits you'd have to make sure the internal register BE representation and the written out to memory LE representation made sense.

The GCC and other compiler guys can give you lots of war stories about SIMD (VMX/VSX on POWER)

Anyways, just something I thought off the top of my head :)

<comment><USER16> Thanks. I've been reading up on OS Dev and static and dynamic libraries and have been trying to wrap my head around why an ABI change could blow things up.

</comment></comment></comment><comment><USER18> very tenuously related, but I forgot that Ian Murdock died over Xmas. crazy. any updates on what happened there?

</comment><comment><USER19> One of the worst design decisions of Unix to fundamentally separate the source from the binaries. And Debian and those of their ilk had to make it worse with that -dev package nonsense.

<comment><USER20> Unless I misunderstand you, I thought the exact _opposite_ was true: The separation of source from binaries is what made UNIX a success. When C was designed, it allowed one to take the source from one machine to another, disregarding the underlying machine architecture.

<comment><USER21> I assume (presume perhaps) they're a windows user and the -dev mention is more for the case where debug symbols and packages are separated from non debug binaries.

I only know that windows does something different more akin to debug symbols in each binary by default with chicanery to not have it impact things in the general case. But I'm not a windows programmer this is about as much as I know about windows in that regard.

<comment><USER19> Never been a Windows user or programmer, but like you I've heard they do quite a lot of clever stuff under the hood. Probably a lot of VMS heritage, another system I've never had a chance to use but heard good things about. But every version I've tried since Windows 3.1 has had an abysmal user experience, so I've never once considered switching.

And that leaves no current viable alternatives to the Unix-like systems. Sad, really.

</comment></comment></comment></comment><comment><USER22> how different is ABI from XPCOM? Wasn't xpcom had the same goals to provide binary compatibility?

<comment><USER23> ABI is not a specific technology in the same way 'API' is not. So the ABI doesn't have any specific goals, it's just something that emerges when working with dynamic linking.

</comment></comment><comment><USER24> A decent explanation, but one part strikes me as odd:

> Changing a library's API in a backwards-incompatible way is in general bad > form because it means that developers of programs using the library have to > change their source code to port the programs to the new library. However, > it does happen sometimes in the case of major libraries, such as some of > those in GNOME and KDE.

So only the big guys are allowed to break the APIs? Really?

<comment><USER25> Nothing in that comment said you can't do whatever you want - it said, quite specifically, it's bad form to do it, and then explained exactly why that was the case.

Plenty of libraries break API/ABI all of the time. Notoriously FFMPEG was/is terrible about it. But depending on libraries that are hugely unstable in this way is terrible, so in most cases, people go out of their ways to avoid doing so (most frequently using another library, or in harder-to-avoid cases creating an interposer library to smooth out the instabilities of the underlying library).

OSS developers probably know more than anyone in the world that the most expensive thing to do in software engineering is maintaining a piece of software as time moves forward. Anything that makes that job more difficult needs to have an enormous upside to make it worth while, and in almost every case, using an unstable library is just not worth the extra maintenance costs attached.

<comment><USER24> All true, but for some reason he sees the major libraries as a different beast and I just don't see why, which is why I wrote it strikes me as odd.

<comment><USER26> I think you are interpreting it as "Major libraries are allowed to do it sometimes."

I think what he meant to say is "Even major libraries do it sometimes." It is already understood that minor libraries do it.

</comment></comment></comment></comment><comment><USER27> I think you should indicate that this is a off-topic discussion from 2004 debian user mailing list somewhere in the link title.

<comment><USER28> "Off topic" to what? The title chosen here matches the contents it links to.

<comment><USER29> Probably [OT] in the original title means "off topic" but I don't know why we should care about this here.</comment></comment></comment>


Stop Paying For SSL Certificates You Don't Need - <AUTHOR> https://www.tinfoilsecurity.com/blog/stop-paying-for-ssl-certificates-you-dont-need-openssl-ca-tutorial-guide-how-to

<comment><USER2> OK, I'll bite. This article offers _terrible_ advice, especially if the reader is a neophyte who thinks they are a hacker:

* barely mentions operational security

* nothing about potential costs or risks

* no scoping of the CA certificate

* bad recommendations for key lengths

* only an off-hand mention of CRL publication

* no mention of intermediate CAs

If it was just some guy saying, "hey, here's how you set up your own toy CA without having to read the crappy OpenSSL manual pages, but don't use it for anything real because it isn't safe from anything other than the most trivial attacks," then I wouldn't even bother to down-vote the thing. Instead, it's some guy saying, "hey, use your toy CA for real stuff" without the attendant cost-benefit analysis that includes scenarios like "my toy CA got hacked and issued certificates that caused one of my customers to get hacked, and now my customer is suing me for negligence."

Not only is this person wrong, but their advice will make the Internet less secure. I'm no fan of X.509 PKI (that Mozilla ticket about Honest Achmed really tickles my funny bone and not in any of the ways that make me laugh), but I'm not about to second-guess the kinds of heavy-duty security engineering that goes into running a real, live root CA.

</rant>

</comment><comment><USER3> If you're going to roll your own CA to secure your infrastructure, get in the habit of also creating your own intermediate authority, esp if you're going to do some minimal client certificates. Then you can keep your root ca offsite and never used. IF your stuff get's compromised, then it's a matter of revoking all of your intermediates certs rather than starting over with a completely new CA.

<comment><USER3> So for example.

We have a root ca for everything. Then created an intermediate for the infrastructure (posgtres, etc). We also created an intermediate just the API, from which we issue client certificates for API access.

This is just for securing the connection to allowed users. Once connected via a client cert, they still have to do the proper auth with OAUTH, etc on top of that. Should the intermediate or client certs get compromised, we reissue an API intermediate, and new client certs. All of course, on top of OAUTH revoking, etc.

</comment></comment><comment><USER4> This sentence is not anywhere near close enough to the top:

"This CA isn't going to be trusted by your website visitors, but your infrastructure can trust it as long as you keep it safe. "

In other words, this doesn't mean you can buy a single cert and then go around creating new certs for your other domains and subdomains. You're still going to need to pay for those.

</comment><comment><USER3> Good article, if for no other reason than the internet is littered with "self signed certificates are bad", which is true for most scenerios except for those pointed out in this article.

</comment><comment><USER5> The only reason I've personally bought an SSL certificate was to make the payments page of my website PCI compliant. Pretty sure this doesn't get me around that.

More people do need to know this kind of stuff though; I'm using it at work to great effect.

</comment><comment><USER6> I'm waiting for the widespread adoption of DNSSEC so we can just start adding TLSA records with the public key fingerprint. Yes, it means you have to trust whoever has access to create DNS records, but you already have to trust them.

</comment><comment><USER7> It seems like a false economy to bother with the hassle of setting up your own CA, whose certificates will raise alerts in most browsers, considering that you can get an SSL certificate for $9 from cheapssls.com.

</comment><comment><USER8> Or join cacert.org and use the web of trust.</comment>


Spotify Debates Removing Joe Rogan Episodes for Alleged Transphobia - <AUTHOR> https://www.businessinsider.com/spotify-report-joe-rogan-transphobia-fight-employees2020-9 <comment><USER2> This just further exemplifies the entire issue with podcast exclusivity deals. At this point, shows like JRE are signing away the independence that typically comes with podcasting.

I wonder how this will change Rogan's show going forward, he might be more gunshy about having Alex Jones on for 5 hours if Spotify can come in at any time and censor his content.

<comment><USER3> Joe explains in episode 1520 ([https://youtu.be/j9NeQTkJjIs](https://youtu.be/j9NeQTkJjIs)) (not time- stamped...)

That all he was saying is if you transition from male to female AND you are going to fight females, you should have to tell them, because there are physical differences from maturing and muscle mass by growing up with testosterone. They speak of a fighter who did this and did not tell their opponent and really messed them up in an unfair fight. Joe has no problem with fights like this, as long as the opponent knows that they will be fighting someone who has transitioned.

But leave it to the rapid response media culture to overlook the truth and base decisions on clips and outrage by the few. I started paying for Spotify just for Joe. If they censor more, I'm going to cancel. Wish Joe went independent so I could support him without the corporate taxes and tainted leadership...</comment></comment>


A Computability Proof of Gödel's First Incompleteness Theorem - <AUTHOR> https://medium.com/cantors-paradise/a-computability-proof-of-g%C3%B6dels-first-incompleteness-theorem-2d685899117c <comment><USER2> While I applaud the effort to recast Godel's proof in computational terms, I think this author makes a horrible mess of it. The core idea is extremely simple, particularly in today's world: strings of symbols can be re-cast as numbers (and vice-versa), and rules for manipulating those symbols can therefore be re-cast as arithmetic. The mapping between strings of symbols and numbers is called an encoding. Godel's original encoding relied on exponentiation of prime numbers, and that produced one particular set of mathematical operations that mapped onto the formal rules of Peano arithmetic. Nowadays we can simply encode symbols as ascii or unicode with the obvious translation into numbers and arithmetic, and that produces a different set of mathematical operations that map onto the formal rules of Peano arithmetic. All the rest, all the heavy lifting, is just cranking out the tedious details of what those mathematical operations actually are, but none of that is necessary in order to understand the core idea of the proof.

<comment><USER3> That's the core idea of the proof inasmuch as parsing is the core idea of writing a compiler. Once you get that part out of the way, the incompleteness theorem is a clever diagonalization argument (and is a consequence of the Lawvere fixed point theorem).

The way it all sort of works is:

1\. A mathematical theory is called _consistent_ if there is some model of it, a self-consistent set M of all mathematical objects for that theory. For example, a model of the natural numbers would be {0,1,2,...}, but there are other models too.

2\. By some parsing method, we can encode every "first-order definable" (akin to "computable") statement and function as an element of M itself. Let (M -> M) denote the set of definable functions; by picking out an element nil from M, we can think of such a function as being a boolean-valued function, where like Lisp we say nil is the unique false value, everything else is truthy.

3\. Since everything is encodable, there is a function print : (M -> M) -> M and a left inverse read : M -> (M -> M). (I imagine parse errors just return the constant-nil function.)

4\. We can define lots of useful functions, like not, where not(nil) = 1 and not(x) = nil for all x != nil, where 1 is anything that's not nil. Another is iff(x,y) = (not(x) == not(y)), that is, whether both inputs are truthy in the same way.

5\. An interesting function you can define is provable : (M -> M) -> M, which takes a function f and returns whether or not M contains a proof that f is non-nil for all inputs. This takes a bit of implementation, but it's not too hard.

6\. Now to set up diagonalization. Define f : M -> M by

       f(x) = print(lambda _ -> not(provable(read(x)))
                                iff (forall z -> read(x)(z))).

7\. Lawvere's fixed point theorem (with respect to the read function) implies there is some element phi of M such that f(phi) = phi; this should be compared to the problem of quine construction, and you can in principle write phi down. Let g = read(phi). Then to both sides, feed in phi, apply read, then feed in any input (doesn't matter what; might as well use nil):

       g(nil) = not(provable(g)) iff (forall z -> g(z)).

8\. This g(nil) is the "Godel statement." If provable(g) were true, then there would be some input x such that g(x) == nil, which contradicts the fact g is supposedly provable. On the other hand, if provable(g) were false, then (forall z -> g(z)) would be true, so provable is not able to prove all true things (it is incomplete).

The way this is summarized is: either the theory is inconsistent (there is no model) or it is incomplete (the provable function can't prove all true things).

The way this ends up working in the mathematical landscape is that, if there is any model at all, there is more than one. (Something is provable if and only if it is true in all models -- Godel.)

<comment><USER2> > this diagonalization argument is the core idea

No, not really. I mean yes, it is, if you're a mathematician. But no, it's not, if you're someone who needs to have binary encoding explained to them, which the original article attempts to do. (And if you're a mathematician you don't need Godel's theorem explained to you at all.)

Here's how I would go on with the exposition:

A formal proof is a sequence of strings, each of which can be derived from the set of strings that precede it in the sequence according to a set of rules. There is a particular set of rules called Peano arithmetic (because they were invented by a guy named Peano) that are so far mankind's best attempt at encoding the fundamental properties of the natural numbers. Ideally, a string in a formal proof under the Peano rules should correspond to a true statement about numbers, and conversely, every true statement about numbers should have a corresponding proof. But it turns out that both of these cannot be simultaneously true. In particular, we can prove that if all strings in proofs correspond to true statements about numbers, then there must be true statements about numbers that cannot appear in proofs.

Godel's original proof involved constructing a number N whose corresponding string essentially means "The string corresponding to N has no proof." Describing how N is constructed is tricky, but since we know about the halting problem we can prove this result in a much more straightforward way: suppose that we _could_ prove any true statement about numbers. Consider an arbitrary program P. That program can be encoded as a number N. So the statement "The program corresponding to the number N halts" is a claim about numbers. It is either true or false. If it is true, then by our assumption we can prove it, and if it is false then its negation is true and we can prove _that_. So now all we have to do to solve the halting problem is to systematically search through the space of all possible proofs until we find a proof either of "the program corresponding to the number N halts" or its negation, at which point we will know whether or not P halts, and so we have solved the halting problem. But we already know that we can't solve the halting problem, so our assumption that all true statements about numbers can be proven must be false.

<comment><USER3> I find computer scientists have a stronger grasp on encodings than mathematicians, who tend to get bogged down in these details due to lack of familiarity. With what I wrote up, the point I failed to make is that it comes down to some cleverness in how you mess around with read, eval(=provable), and print. That is, follow the Lisp way and think in s-expressions.

I was responding specifically to

> All the rest, all the heavy lifting, is just cranking out the tedious > details of what those mathematical operations actually are, but none of that > is necessary in order to understand the core idea of the proof.

The thing I'm taking issue with is calling parsing the core idea, with the rest "just"[1] being tedious details, where, as someone who has done some PL implementations, the parsing seems to me to be the tedious part. It's an important idea that's essential to the proof, but, again, that's like saying parsing is the core problem in writing a compiler (or that writing read is the core problem in implementing a Lisp interpreter). This is not exactly evidence of any kind, but notice your whole final paragraph is a diagonalization argument, and it is longer than the first paragraph of your exposition, which quickly explains how strings can represent logical statements and proofs.

Maybe this is a synthesis: the core idea is that you can write an interpreter that takes an encoding of a logical statement and returns whether or not it is provable. Since the interpreter is itself a logical statement, you can apply a diagonalization argument to produce a true statement that refutes its own provability. (When I say the core idea is the diagonalization, I mean both the interpreter and the fixed point finding. When you say the core idea is encoding, I suspect you might mean more the interpreter than how your comment reads to me.)

By the way, with the halting problem argument, it seems like if you're very careful you can write out an explicit Godel sentence, like what the Lawvere fixed point theorem would provide. I'm sort of curious what it would look like, rather than your recipe for how to construct it. (I also wonder what the shortest Godel sentence is. But only as much as I wonder what the shortest quines are.)

> "The string corresponding to N has no proof"

Small correction: it's that "N being true is equivalent to N having no proof." If N is false, then it is provable (bad), so if things are consistent it must be true, hence unprovable. It's interesting that N is a true statement.

[1] I have a banned words list in my office; one entry is "just" because of just what it lets you sweep under the rug.

<comment><USER4> Assume the layman has been informed that first-order mathematical theories that admit of quantifier elimination (Presburger arithmetic, Euclidean geometry, real closed fields, abelian groups, random graphs, etc.) are complete and decidable.

From the layman's perspective the question then is: WHY is Peano Arithmetic incomplete? What does it add to the mix that makes it categorically different from those other axiom systems?

ENCODING power is the answer; that is, the expressive capacities of PA versus these other systems. In particular, PA is expressive enough to encode itself via Gödel numbering -- and hence construct "the Gödel sentence". Once you have the Gödel sentence, the consequences re: diagonalization/self- reference/Lawvere (depending on your background) are readily understood.

So to my mind, the layman would be more puzzled by the differing expressive powers of formal languages, and why _exactly_ they lead to differences in provability. E.g., is the defineability of exponentiation a prerequisite to linguistic self-encoding? What's the relationship between quantifier elimination and self-reference? To what extent does a robust concept of 'infinity' play a role. Etc., etc.

<comment><USER3> A similar question is why are some Turing machines universal and some aren't? Or, more generally, why can you prove some Turing machines halt on all inputs and for some you cannot?

I think what you mean by "encoding" is what I mean by "being able to write an interpreter." It's not hard to encode mathematical statements as real numbers in the axioms of a real closed field, which someone outside the theory is easily able to decode. However, the fact the theory is complete implies there is no way to write an interpreter within the theory.

There are other kinds of interpreters you might be interested in. For example, one that determines absolute truth of a statement, that is, the truth of the statement in the "Platonic universe," whether or not it is provable. You can still apply the usual kind of argument, if such an interpreter existed, to generate a sentence that is true iff it is false.

I imagine a heuristic sort of issue is that to write such an interpreter you need to be able to encode environments (like in a Scheme interpreter), but the set of possible environments is too big in a Russell's paradox sort of way. In model theory, they call such a function, when restricted to a particular model, a _truth term_.

> expressive enough to encode itself via Gödel numbering -- and hence > construct "the Gödel sentence". Once you have the Gödel sentence, the > consequences re: diagonalization [...] are readily understood

I don't really understand you here: a diagonalization/Lawvere-like argument is how the Gödel sentence is constructed in the first place.

</comment></comment></comment></comment></comment></comment><comment><USER5> Gödel's Proof, by Nagel & Newman gives a good explanation for the semi-layman or undergrad coming across this for the first time.

Before picking up this book as an undergrad in pure maths, I still had romantic ideas about a separate platonic universe and the divine authority of mathematics to explain all human thought.

This book, along with studying the various geometries, each with a different choice of axioms not necessarily based in 'reality', destroyed the majority of that romance.

<comment><USER6> Godel was himself a Platonist and didn't view incompleteness as a refutation of Platonism, rather as a restriction on the avenues of human access to mathematical truth.

<comment><USER5> I don't view it is a refutation either. I meant that the proof destroyed the greater feeling of romance I had towards mathematics.

</comment></comment></comment><comment><USER7> For me the easiest way to prove Gödel first's with perfect rigor, without bothering with numberings (but using computational undecidability) is here [http://users.utu.fi/jkari/automata/fullnotes.pdf](http://users.utu.fi/jkari/automata/fullnotes.pdf) (Section 4.10)

<comment><USER8> You can access directly the relevant section[1] using the `#page=` directive. See here[2] for a full list of parameters you can use.

[1] [http://users.utu.fi/jkari/automata/fullnotes.pdf#page=134](http://users.utu.fi/jkari/automata/fullnotes.pdf#page=134)

[2] [https://www.adobe.com/content/dam/acom/en/devnet/acrobat/pdf...](https://www.adobe.com/content/dam/acom/en/devnet/acrobat/pdfs/pdf_open_parameters.pdf#page=5)

</comment></comment><comment><USER6> My favourite proof of the (Second) Incompleteness Theorem is the semantic proof due to Jech/Woodin: [https://andrescaicedo.files.wordpress.com/2010/11/2ndincompl...](https://andrescaicedo.files.wordpress.com/2010/11/2ndincompleteness1.pdf)

It is easiest to think about in terms of set theory, but it is possible to formalize it in a fragment of second-order arithmetic that is conservative over PA (and this conservativity is provable in PA itself). The beauty of this proof is that it first establishes semantic incompleteness without formalizing a proof system; the connection to syntactic incompleteness only uses the Completeness Theorem, which is of independent interest.

</comment><comment><USER9> Is this a correct (over)simplification of the theory: there's not enough information in a system that on its own can describe it's correctness? I know this is a very naive and maybe incorrect interpretation of it, but I think this theorem is so important in so many ways, it should be used more in layman's discussions, even though I understand that it's easy to misuse it etc.

</comment><comment><USER10> The result in the Medium article applies only to a theory whose theorems are computationally enumerable. In computer science, we need theories that axiomatize subject matter such as natural numbers and computation up to a unique isomorphism so that the objects being axiomatized are characterized precisely. Such theories have induction axioms with _uncountable_ instances. Consequently, the theories have _uncountable_ axiom instances and their theorems _cannot_ possibly be computationally enumerated although each proof can be computationally checked for correctness.

Therefore, a _more general proof_ is needed to prove incompleteness. Such a proof can be found here:

[https://papers.ssrn.com/sol3/papers.cfm?abstract_id=3459566](https://papers.ssrn.com/sol3/papers.cfm?abstract_id=3459566)

</comment><comment><USER11> "semi" rigurously is what spooked me. The thing with Gödel's proof is that it is very hard to do rigurously...

<comment><USER12> I went through it the first time by reading over Computability & Logic (5th edition) [1]. I'd love to go over it again, and would recommend it to anyone interested who has a few weekends to invest.

[1] [https://www.goodreads.com/book/show/1556746.Computability_an...](https://www.goodreads.com/book/show/1556746.Computability_and_Logic)

<comment><USER13> The third edition is the best

<comment><USER14> Why?

</comment></comment></comment></comment><comment><USER15> There's another paper called "Incompleteness Ex Machina" with several proofs of both the first and second incompleteness theorems.

[https://arxiv.org/abs/1909.04569](https://arxiv.org/abs/1909.04569)

</comment><comment><USER16> The article claims, "Given that some sets of strings are decidable, it stands to reason that other sets of strings are not. "

How can a string not be decidable?! Just search for the string in the set. It is either there, or not there.

What an I missing?

<comment><USER17> You can have a infinite set of finite strings, for example {"1", "11", "111", "1111", "11111", "111111", "1111111", "11111111", ...}

<comment><USER16> Is having an infinite amount of strings the only reason for the claim?

Infinity breaks a lot of things. Infinity isn't even real. So I'm not sure this counts. It seems like the article would have mentioned infinity if that were the reason for the claim. It seems like Enumeration fails for an infinite set too.

<comment><USER18> Infinity is the only reason: all finite sets of strings are decidable, simply because you can just keep a list and see if a string is in there. Important to mention that there are decidable infinite sets of strings. For instance, deciding whether a string contains only ones is easy, even though there are infinitely many such strings and you couldn't write all of them down.

A lot of these ideas don't require any actual "realized" infinity, however. For instance, there are infinitely many natural numbers, but natural numbers themselves are still finite. You can write a program that prints every number at some time in the nearby future (ignoring physical constraints), even though there is no point in time where it will have printed all numbers.

If you want to take away infinity, you have to draw an arbitrary upper bound somewhere, since unbounded things are infinite. Drawing that line is fairly arbitrary since there is no reason why things should no longer work if you add just one more.

<comment><USER16> Did Godel say infinity is the reason too? Thanks for the response, I don't remember reading about infinity being the reason.

Off topic: Still, you'd run out of matter in the universe (that you could use for ink), before you wrote down a finite amount of numbers while ever reaching a percentage of infinity. That's how unreal infinity is in my mind.

I know the concept of infinity is useful in math, and in this incompleteness theorem, it seems like infinity is the very reason not all truths are provable. But I thought Godel's incompleteness theorem would apply to physical reality, but since infinity doesn't exist in physical reality, I'm not sure the incompleteness theorem would apply to physical reality. Hmmm

Also, didn't Godel show his theorem to be informally true by stating, "This sentence is inprovably true."? There was no infinity invoked in that sentence.

<comment><USER18> Diagonalization arguments (which are used in Gödel's theorem) do require some infinity.

If there were only a finite number of such "True, but unprovable using your current proof rules" sentences, then you could simply add those sentences to your list of proof rules and there would be nothing "True, but unprovable" anymore. For Gödel's theorem to work, you need at least an infinite supply of those kinds of sentences.

Also here there's no need to actually write down all of them exhaustively. It's just important to be able to find "yet another one" whenever you would like to, which requires an inexhaustible supply.

<comment><USER16> "which requires an inexhaustible supply. "

But this is how you can stress the theorem. I know it will take a long time, so consider a universe where only 1000 bits of matter actually exist, then try to use the theorem and you won't have enough ink to even hold the theorem, and sets in memory. It's the same for our universe, just with more bits.

"you could simply add those sentences to your list of proof rules " Thanks, for responding. Do you mean axioms? I don't understand why that would be a solution. I'll have to read Godel again.

<comment><USER18> Yes, strictly speaking that's true, but then if the universe were slightly bigger, or you used a different encoding, you'd get different results. It feels kind of arbitrary to stop thinking about what would happen if the universe contained just one more bit.

Philosophically, I think it's also more interesting that Gödel's theorem would continue to produce such sentences, regardless of how large our universe happens to be. You could never have a universe that is so big that it could contain all Gödel sentences, even if our universe were bigger. This is a much more fundamental limitation.

Gödel's theorem gives you a sentence S where you can prove neither S nor its negation from the current axioms P. Of course, if you then add S (or its negation) as an axiom, then you CAN prove it. But then Gödel's theorem will just give you another sentence S', ad infinitum. You can never win this game.</comment></comment></comment></comment></comment></comment></comment></comment>


A Decade of Urban Transformation, Seen from Above - <AUTHOR> https://www.nytimes.com/interactive/2019/12/27/upshot/america-from-above.html <comment><USER2> NYT's "interactives" features are an excellent example of presentation directly thwarting reader utility.

There's a classic format for side-by-side image comparison. It's called "side- by-side image comparison".

Display both images (or all images in a series), and allow the reader's eye to move between them at will, picking out differences and similarities.

By scroll-hijacking and overloading, this is defeated. I cannot toggle between images, and instead have to scroll up some indeterminate and majickal amount before ... I'm parked several paragraphs or images above, or my viewing position simply jumps randomly about the page.

Some designer is having a fun time, but this is too clever by half.

Please stop.

<comment><USER2> Just to be clear: the article and analysis are interesting.

The presentation detracts massively from them.

</comment></comment><comment><USER3> American Exurbia/Surbubia reminds me of this song by Malvina Reynolds

Little boxes on the hillside, Little boxes made of ticky tacky Little boxes on the hillside, Little boxes all the same,

There's a pink one and a green one And a blue one and a yellow one

And they're all made out of ticky tacky And they all look just the same.

And the people in the houses All went to the university Where they were put in boxes And they came out all the same

And there's doctors and lawyers And business executives

And they're all made out of ticky tacky And they all look just the same.

And they all play on the golf course And drink their martinis dry And they all have pretty children

And the children go to school, And the children go to summer camp

And then to the university Where they are put in boxes And they come out all the same.

And the boys go into business And marry and raise a family In boxes made of ticky tacky And they all look just the same,

There's a pink one and a green one And a blue one and a yellow one

And they're all made out of ticky tacky And they all look just the same.

<comment><USER4> I'm an urbanist and hate this sort of condescending BS.

Like, sure single family homes in suburbia tend to look the same. You know what also looks the same from the outside? Apartments. Literally all you can see for each one is a window and maybe a balcony, and they all look identical.

The problem with American suburbia is not that houses are similar looking, or that the people in them raise families, go into business, or go to university. The song seriously reads like r/im14andthisisdeep material.

<comment><USER5> >Like, sure single family homes in suburbia tend to look the same. You know what also looks the same from the outside? Apartments. Literally all you can see for each one is a window and maybe a balcony, and they all look identical.

It really kind of depends. People focus on the "And they all look just the same" element of the song and glance over the fact that they're "made of ticky-tacky."

In an urban setting large solidly built structures slowly form accretions and extensions to them that slowly help a neighborhood develop character and personality over time. Large apartment blocks that don't permit something like that, as you see in lots of East Asian countries where they had to throw up tons of housing REAL fast, can also end up looking really bland and dehumanizing.

But then you go to a place that has had time to really develop character as multiple generations of residents have written over them without ever fully erasing what came before and you end up with beloved urban centers like New York or Paris.

The suburban development model doesn't really allow for that. The houses can get extensions in theory, but often deed restrictions or HOAs insist on things adhering to specifically defined code about how they can look and what they can do. The conformism is a willful aesthetic choice rather than just a pragmatic shortcut.

<comment><USER6> Grown 'organically' within constraints of geography, climate, and local customs over large times vs. industrially stamped out mass products modelled after contemporary design fads.

</comment></comment></comment></comment><comment><USER7> I'm from Minnesota originally and still have family there, so I visit regularly. It looks both the same and very, very different from when I lived there. It almost feels like an alternate reality. I grew up primarily south of the river in what would probably have been considered exurbs. There were farms and vast areas of undeveloped land. They're all quite suburban now (a lot of this was happening when I was growing up) and the populations have exploded.

This same thing seems to have happened in many other cities around the U.S. as indicated by the 'bullet wound' pattern all over the map.

</comment><comment><USER8> [http://archive.md/NrnL8](http://archive.md/NrnL8)

(Doesn't have the 'after' images though.)

</comment><comment><USER9> Just don't try to scroll back to see any of them again, or you will end up somewhere else on the page.

</comment><comment> cia-killer Soccer, Baseball, Basketball being replace by Asian sports. Should be titled The Great Replacement.

</comment><comment><USER10> Which is more likely to end the suburban madness: land war / security breakdown or carbon tax?

<comment><USER11> High cost of fuel to income ratios. People aren't going to give up single family detached homes with garages and yards until they have to. And they're sure as hell not going to vote for it.

Alternatively, sufficient numbers of people stop having children altogether, and then don't mind living in dense cities.

<comment><USER12> I'd advocate for the opposite... I think everyone should own an acre or two, planted with as many trees as possible to stave off climate change.

There are many more mental health issues in densely populated areas, much less biodiversity, more pollution, etc.

>Alternatively, sufficient numbers of people stop having children altogether,

We tried that, it was called billed as a "aging population crisis" and used as justification to import millions of people from other failed countries into the US.

<comment><USER13> Lots of people living far away from each other - this is the recipe for mental health issues related to loneliness. Young people are voting with their feet by moving from such areas to urban areas and they're staying there.

<comment><USER12> I'm one of those people.. and I hate it in the city. But I like making six figures and that's not currently possible where I'm from originally.

>mental health issues related to loneliness

Citation? It's a fact that urban living is associated with higher levels of mental illness, not just conjecture.

<comment><USER14> I don't have a citation for loneliness per se, but suicide rates for young people are much higher in rural areas, "even after controlling for a broad array of county-level sociodemographic, economic, and health care system characteristics."

[https://jamanetwork.com/journals/jamapediatrics/fullarticle/...](https://jamanetwork.com/journals/jamapediatrics/fullarticle/2195006)

Of course, there's always the issue about whether suburbs and exurbs count as rural or urban, which leads to people talking past each other.

<comment><USER15> I can't see where they controlled for distance needed to travel to reach emergency departments after a suicide attempt. I'm sure they did, because it's a pretty big factor for how many people die from some methods, but it would have been nice to see this more clearly described.

<comment><USER14> Well, even if that accounts for part of the effect, it's still a benefit from urban living!</comment></comment></comment></comment></comment></comment></comment></comment>