Did Reddit Boss Coverage Cross a Line? - <AUTHOR> http://www.nytimes.com/2015/07/19/sunday-review/did-reddit-boss-coverage-cross-a-line-ellen-pao.html?action=click&pgtype=Homepage&module=opinion-c-col-left-region&region=opinion-c-col-left-region&WT.nav=opinion-c-col-left-region <comment><USER2> I thought what was particularly problematic about rewriting that piece was that the URL didn't change and people had already linked to it, and implicitly or explicitly approved of the contents of that URL. When it morphed from a news piece to an opinion piece, people who followed 'old' links were cheated because they were not told that they were seeing a story entirely different from what the referrer had seen. This problem isn't addressed in the article, and it seems to outweigh any "cumbersomeness" of putting in a little note saying that a piece has changed significantly.

<comment><USER3> This is a general problem with the World Wide Web. There is no guarantee that the content of a particular URL will remain the same over time, or even that two different users will see the same content at a given URL at the same time. The only way to fix this would be with a content-addressable-store, and that has its own problems (e.g. you can't fix legitimate errors, like typos).

<comment><USER4> > There is no guarantee that the content of a particular URL will remain the > same over time

I don't need or want a guarantee. I expect content to change over time. That's fine.

What I also expect is that the content provider understands the value of preserving previous versions and makes those available. Wikipedia does this well. The entire software suite is designed around this principle.

It is also trivial to implement.

Which leads to the conclusion that those who don't do it are doing so consciously and should be criticized for doing so.

<comment><USER5> > What I also expect is that the content provider understands the value of > preserving previous versions and makes those available. Wikipedia does this > well. The entire software suite is designed around this principle.

Wikipedia does it well for text. Not so well for images. There are many articles with important information in images where viewing an older version of the article shows images incorrect for that version.

For instance, the article on same-sex marriage in the US [1] has for quite a while included a map showing the status of same-sex marriage in each state. When the Supreme Court legalized same-sex marriage nationwide, the map was updated to reflect this--by overwriting the image file.

If you go back and view that page from a several months ago, well before the Supreme Court's ruling, the map will show same-sex marriage as legal in all states.

[1] [https://en.wikipedia.org/wiki/Same- sex_marriage_in_the_Unite...](https://en.wikipedia.org/wiki/Same- sex_marriage_in_the_United_States)

</comment></comment></comment></comment><comment><USER6> Check out this diff that shows the before and after of the article:

[http://newsdiffs.org/diff/934341/934454/www.nytimes.com/2015...](http://newsdiffs.org/diff/934341/934454/www.nytimes.com/2015/07/11/technology/ellen- pao-reddit-chief-executive-resignation.html)

It reads like a different article entirely.

<comment><USER7> Not only does it read like a different article, it _is_ a different article. The diff shows that _every line has been completely rewritten!_

This is a shame, because the original article was actually very reasonable, and seems not to have any glaring inaccuracies.

</comment></comment><comment><USER8> My favorite part about this article is " Ms. Tam said that, in hindsight, "there was probably more we could have included about Ms. Pao and some of her missteps at Reddit." Mr. Isaac agreed: "I wish I had included other reasons behind Ellen's ouster." Those angles have been covered in many other Times stories, both noted. "

I read this as "In hindsight, we could have re-edited the article we already continually edit but we wont." (because doing that now would somehow be wrong?)

The whole thing smells.

</comment><comment><USER9> Kind of reminds me when they intentionally drove around in circles in a parking lot and cranked up the heat to try to kill a Tesla then lied about it and were caught. When did the NYT become gawker level link baiters instead of reporters?

</comment><comment><USER10> This is a nuanced, practiced approach towards ethics in journalism. There are a couple of things I disagree with, but I do agree that there is a place for the Times and other major outlets to do reporting that includes analysis in addition to bare facts, and it makes for a better story. (All reporting includes some sort of analysis, if only through which facts are reported or considered relevant to a story, and which aren't.) I definitely appreciate that the Times recognizes that as part of their mission and is not backing down from it simply because it's worried about readers disagreeing with its analysis.

I would love to see more mainstream consumer discussion ethics in journalism that avoids the fundamentalism of a certain group that has taken up the cause of late. There's a lot to talk about there and a lot of different, legitimate, priorities that can lead to different conclusions. It's an important subject with a lot of depth. Maybe we're ready for that conversation: there's the whole Gawker thing, for instance, and there are many levels to that story (like unionization). Like all complex systems, there's no easy answer.

<comment><USER11> Part of the problem with the Times nowadays isn't just their "value add" strategy of embedding analysis in news articles, but rather how predictable their politics are every..single..time. Even for people with matching personal politics I think it is frustrating to see such a homogeneous, non diverse perspective. It seems forced and I feel like in their eagerness to abandon "commodity news" they are entering a sort of downward spiral in terms of reputation and quality.

</comment></comment><comment><USER12> What's galling about the notice that it's "cumbersome" to leave a note about changes is how widespread the practice is at other publications. I used to write for Wired and if there was a minor change, say mispelling someone's name in the story, we'd add a note to the footer highlighting the change. Same with Slate, a well respected news outlet that will add a footer for minor changes. When rewriting the story wholesale it doesn't seem a stretch to leave a footer, or at least a timestamp that highlights when a story is "complete."

<comment><USER13> Could Wired show a version number with a story? Click it and one could see the various changes publicly published online. Perhaps diffs and comments, like any version control system. It seems one could do much more online than the limited footnote or corrections page we get with print.

</comment></comment><comment><USER14> I'll remember this approach next time I get caught doing something. Vaugely admit that I might have done something wrong and weakly promise that I could probably do better in the future.

<comment><USER15> It's tried and true, and worked for both Reddit and the New York Times.

</comment></comment><comment><USER16> Mixed feelings. On the one hand, the people who complained most loudly about this article rewrite should probably examine their motivations. Because I doubt there would have been this level of scrutiny if not for an ugly undercurrent of anti-feminism.

On the other hand, the article deviated so far from the original just-the- facts version, and the "analysis" was so one-dimensional, that it felt like it veered into Fox-News-for-liberals territory. Which should not be worthy of a pre-eminent news publication.

Perhaps "analysis" at a serious news publication should simply not be written hastily just for the sake of mass click appeal.

At any rate, it doesn't seem like it would have been that hard to throw some opinion piece links or an analysis piece link in the suggested/related section.

<comment><USER17> _...should probably examine their motivations_

This is silly. NY Times is "the paper of record." The blackline of this article shows the entire piece was re-written. They did this as part of an experiment in "propogating" viral content. But "propogating propoganda"like this expressly at odds with being the "paper of record".

</comment></comment><comment><USER18> oh look, a non-apology that says nothing and promises to do nothing different in the future.

<comment><USER10> Only kind of. It's _not_ an apology, nor is it atttempting to be one. It's a statement that they heard the comments, considered the issue, and concluded that they continue to be mostly fine with their approach. A few things they straightforwardly admitted fault for ("Certainly, the headline went too far..."). A few things they say they'll keep under consideration. Many things they defend.

That's a far more useful and respectable thing to hear than a mealy-mouthed apology.

<comment><USER19> But then they didn't go back and edit the things they admitted fault for, yet the excuse for making the faults in the first place, is them reserving the right to edit the story.

</comment></comment></comment><comment><USER20> Framing clickbait as "value-added content" is really beyond the pale.

I was expecting the usual noncommittal response, and I think it's hilarious there is not even a mention here of using technology to show changes while the NYT tells everyone that will listen that they are now embracing the web and all that stuff. Turns out it is all just talk when the people producing the news at the end of the day don't change.

</comment><comment><USER5> There are also a couple comments on the same story from the 15 hours earlier submission: [https://news.ycombinator.com/item?id=9909872](https://news.ycombinator.com/item?id=9909872)

</comment><comment><USER17> Important to remeber that ~50% of ceo's are not "above average".

<comment><USER21> That's unlikely to be correct. Whatever your measurement, the average could easily be skewed towards one part of the population. E.g. including or excluding Bill Gates and other billionaires will change the average wealth.

<comment><USER17> Define unlikely? I mean just as easily the opposite could be assumed.

<comment><USER21> Huh? The likelyhood that an average comes out to divide a population exactly 50/50 seems low. You'd expect it to be off by a point or two, at least. I'm just pointing out that your statement that 50% of X are below average is not usually true. Unless you meant at least 50%. In which case it's a: misleading, B: still wrong.

<comment><USER17> You've simply conflated symbols (ie, ≈ ≠ = etc).

The original uses shorthand "~=" for coarse equality, in lieu of {option+x}.

</comment></comment></comment></comment></comment><comment><USER22> Would love to see a git-based publishing system.

<comment><USER23> Well, there is [https://github.com/creationix/wheaty](https://github.com/creationix/wheaty) .

</comment></comment><comment><USER24> Yeah but this is the NYTimes which has become more about agenda than facts with regards to how women and what occurs to them is portrayed. Combine that with a new certainty that a woman will lead the Democratic nomination and we are facing down years of this. This is how news and politics go bad, they focus on identity than facts. By focusing on the identity of those involved stories will only play out one way as the story was written before it was known.

Horrible article and they really need to have rules in place so that if an article substantially changes the url changes. Rules such as losing or adding a paragraph should suffice as to when a new url is needed. Not changing the url is fine when corrections are made and noted as such

</comment><comment><USER7> Watch the weasels dance: the jig is almost up.

INB4 1000 downvotes from intolerant agenda pushers, sorry you have to read this in grey on grey, it's not my choice.

<comment><USER25> Please don't post unsubstantive comments to Hacker News.

<comment><USER7> Does a comment on this article truly need to be substantive? They took a very reasonable article which was respectful to both Ellen Pao and the Reddit community, and completely rewrote it as an opinion piece.

Now they're defending that course of action while pretending to be concerned about it. I think this can accurately be described as "weaseling". I think it's taking place because people are starting to notice what happens to these articles, which may soon prove dire to the business they've built on these practices.

In other words: "Watch the weasels dance: the jig is almost up.", go read a writing style guide and they'll tell you to cut unnecessary verbiage.

<comment><USER25> > Does a comment on this article truly need to be substantive?

Yes. Just because an article is lame doesn't mean the thread should be.

(By the way, please don't go on about downvoting in HN comments—that's so invariably lame that it has not one but two guidelines against it. Please see [https://news.ycombinator.com/newsguidelines.html](https://news.ycombinator.com/newsguidelines.html). Appropriately enough, they're at the bottom.)

</comment></comment></comment></comment><comment><USER26> > "I don't think it veered into opinion," Mr. Isaac said. "It was analysis, > backed up by reporting, and written under tight deadline." He's probably > right.

The piece opens up by lamenting the similarites between facts and opinions and then sidesteps the issue by calling their opinions "analysis". Clever.

<comment><USER7> Brace for downvotes, your dissent will not be tolerated!</comment></comment>


Remaining Two Character .io gccTLD Domain Names - <AUTHOR> http://pastebin.com/TKvHbSyG

<comment><AUTHOR> After the large discussion about .io being delegated as a gccTLD by google[1], and the subsequent purchase of every single two letter (as in, a-z) .io domain[2], I figured I would put together a list of all free two character .io domains of the form f4.io. The linked list contains all free domains of the form [a-z][0-9].io (as of posting, of course). Enjoy.

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

[2] <https://news.ycombinator.com/item?id=5663755>

</comment><comment><USER2> Just picked up my username. Thank you for this!

<comment><AUTHOR> Sure thing! I ended up picking up a few fun .io domains, so I figured I would give back to the hn community. After how quickly the a-z two letter domains disappeared, I was surprised to see that the majority of letter + number domains were still available. Enjoy t0.io.

Also, for those wondering, not all registrars accept two character .io registrations. Of those who do accept such registrations, the cheapest I've found is gandi at $40/year.</comment></comment>


What are successful startups that CS PhD graduates founded? - <AUTHOR> I'm looking for inspiration and curious to hear what startups, founded by recent PhD graduates, are out there. <comment><USER2> What do you consider recent?

A few that come to mind:

1\. Surreal Vision, Acquired by Facebook. Renato Moreno has a CS Phd from Manchester I believe [https://www.telegraph.co.uk/finance/newsbysector/mediatechno...](https://www.telegraph.co.uk/finance/newsbysector/mediatechnologyandtelecoms/electronics/11634818/Facebook- buys-British-virtual-reality-start-up-Surreal-Vision.html)

2\. Turbo.net (privately held, successful virtualization company). Founder has Berkley CS Phd.</comment>


How Software Will Change Venture Capital - <AUTHOR> https://medium.com/entrepreneurship-at-work/inreach-ventures-fb6b3e20c773 <comment><USER2> I will caveat this and say that I am speaking from an entrepreneur's perspective, and OP obviously has more experience investing than I do, but I am skeptical of taking this line of thinking too far.

There is a problem with this model—and I am not saying it won't work—that VC firms get the best deals by having high deal flow and have a reputation for working supporting entrepreneurs (or in some cases firing the CEO and making the company extremely successful). If you treat the VC market like the stock market, with quant trading firms, you will: (1) miss deals because oftentimes once a company has any visibility it is too late to get in their investment pipeline, (2) make bad decisions because it is hard to extrapolate from very little data.

To your point about no management fees, unless you are independently wealthy, how do you cover costs? I ask not as a rhetorical device, because it is not possible to propose such a thing without a plan, I am just interested to know how you think about it.

<comment><AUTHOR> Let me first thank you for the comment. I try to answer your questions:

1 - RE Software - We have no intentions to transform investing in startups in stock market style investing. As mentioned in the article we use tech in 3 areas one of which is discovery and structure deal flow. We do not believe in automating investment decisions.

2 - Re ZERO management fee - We will announce in few weeks how we made this is possible. I can anticipate that this is a structural chance in the way how we built the firm more than the result of 3 rich boys waking up to the investment fever.</comment></comment>


Ask HN: What is your morning routine? - <AUTHOR> When do you wake up and what do you do to start your day? <comment><USER3> I go to the park nearby for two to three hours the first thing in the morning, where I exercise [1] and meditate. It's been three months. It has changed my life: I get a boost of highest-quality time every morning. I sleep better, I move better, I am in mostly great mood all day because of such a start. I had troubles keeping a habit of exercise and meditation and the switch to this morning routine solved it greatly.

The first 28 days of forming the habit were a bit of a struggle, but together with my wife, we supported each other and eventually went through the whole month. After that I cannot imagine my morning without at least an hour in the park.

The time of waking up varies and depends on the morning temperature and amount of light. In summer we woke at 5-6am (it was warm and light), now it's ~7am (it's getting colder and darker outside).

The book The Willpower instinct [2] influenced me a lot regarding willpower in the morning.

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

[2] [https://www.amazon.com/Willpower-Instinct-Self-Control- Works...](https://www.amazon.com/Willpower-Instinct-Self-Control-Works- Matters/dp/1583335080?tag=duckduckgo-d-20)

<comment><USER4> Yeah it gets way harder to wake up 'early' as the sun starts coming out later. Especially in the PNW when it's straight gray outside in the morning during those seasons.

How do you manage 3 hours at the park?

<comment><USER3> What do you mean by "manage"?

</comment></comment></comment><comment><USER4> Wake up between 5:30 and 7:30, it's harder to wake up on the earlier end when the sun starts coming up later.

I might read a bit while my other half gets ready to walk to get coffee, currently reading "The Worldy Philosophers" on a first generation surface pro.

This whole time my phone is muted, laptop closed.

Now it's hopefully between 7:30 and 8:30 and I have coffee, also I've been experimenting with nicotine gum as a mental stimulant, but I'm not insane - <USER2> don't chew the gum and drink my coffee at the same time, it would ruin the coffee.

Depending on what sort of day it is I will either not work and do whatever I want, currently learning about economics, or I will work - most days I work.

If I am working I work a minimum of 5 hours and try to be done by 3PM, but as of this week I'm going to try to keep my hours around 8 on the days I'm working for at least a couple of months.

Usually I try to begin my work day with Slack notifications snoozed for the first two hours, because 90% of my responsibility is communication at the moment, so distractions are the norm for me if I don't keep them in check.

Someone else mentioned LISP, when I am writing code it's Clojure :)

</comment><comment><USER5> 7 AM: wake up, no alarm most days thank to one very persistent and hungry cat that likes to jump on my head or scratch doors to make noise.

7:02, feed the cats.

7:15, make a cup of coffee at home and have a light breakfast of yogurt, fruit and granola.

7:15-8: is breakfast, coffee and listening to The Daily and UpFirst podcasts

8-10: writing. I need to get writing done in the AM while I'm fresh and other distractions don't leak in.

10-11: shower and work email check-in, get rolling on projects and client check-ins.

11-3: deep client work and/or business development, depending on deadlines.

<comment><USER4> One time we managed to trick our cat for about a month by using a combination of scheduling our brown noise generator to go off and scheduling some holiday lights to come on at the same time, for a noiseless alarm.

Cat would still be sleeping when we woke up and didn't remember she was supposed to be starving to death.

Trick your cat every chance you get, really.

<comment><USER5> Hahah. We've used lightly electrified mat a couple times. Now if we put it at the door the cat just sits quietly across the hall. Don't even need to turn it on now.

</comment></comment></comment><comment><USER6> Wake up at 4 AM. Go directly to my home office and code until 6 AM. Have breakfast with family. Code until 8:30 AM. Sends kids to school. Go on walk with wife, then get showered and dressed for the day, then start all the work that requires communication with everyone else.

It gets me 4 hours of quiet coding in before anyone else is even online and talking, and makes the rest of the work day relaxing because I've usually already accomplished my goals for the day by 9 AM.

<comment><USER7> What time do you go to sleep?

<comment><USER6> Around 8 PM. I know both my waking and sleeping times seem crazy early to some people, but it works for me.

</comment></comment></comment><comment><USER8> I have either of the 3:

1\. Wake up super early (5:45), get a workout in, eat some breakfast. Cuddle. Shower. Drive to work around 9:30.

2\. Wake up around 7, read something positive. Eat some breakfast. Head to work around 9:30.

3\. Wake up at 9, shower. Head to work at 9:30.

</comment><comment><USER9> Usually: 07:00 - Alarm goes off 07:15 - If I exercised the night before I go get dressed(Got very little hair on my head, benefit: No more morning hair) 07:30 - Leave for work

I stopped eating breakfast, I just drink coffee when I feel hungry until lunch around 11:30, doing this I actually feel more energetic.

2-3 times a week I head to the gym before heading to work, this actually is the best routine, you get to work all pumped up, full of energy and your brain feels like it is running on steroids!

</comment><comment><USER10> My kids wake us up around 6.30 - 7.00. Wake, make some coffee, give breakfast to the kids, bring coffee to my wife who is still in bed, hurry the older kid to eat, dress up and not to look social media while doing those things, dress my younger kid and prepare him for the kindergarten while he does everything to make us late (2,5 yo), walk to the kindergarten (10 minutes walk), then walk to the office (25 minutes). No productivity tips here ;)

</comment><comment><USER11> Wake up somewhere between 6:30AM and 7AM w/o an alarm clock. Bathroom trip, weight myself while the water is boiling in the kettle for my hand-brewed coffee. Depending on the day of the week, I had to the gym for strength training. Come home for a shower and a quick breakfast before I head to the office at around 10AM.

<comment><USER12> > weight myself

every day ?

</comment></comment><comment><USER13> 7:15 - wake up

7:45 - stop cuddling my cat and reading reddit and attempt to get up

8:15 - actually get up

8:20 - shower/brush teeth, try to decide if I messed up my beard lines

8:30 - leave for work

Now, I want to change that to something more productive and add some solo jiu- jitsu and mobility work in the morning.

</comment><comment><USER14> 04:30 AM: Wake up, realize I don't have to get up for another 75 minutes

05:45 AM: Wake up, get out of bed

05:48 AM: Try to find a pair of running socks without holes in them

05:50 AM: Put on running clothes

06:00 AM: Start my run

07:00 AM: Finish my run

07:10 AM: Shower, shave and all that stuff

07:30 AM: Practise piano

07:55 AM: Leave apartment to catch my train

08:00 AM: Hop on train

</comment><comment><USER15> 05:30 AM - wake up & press button to make coffee

05:35 AM - open laptop and browse TODO list + important communication to be done

06:00 AM - finished coffee

06:05 AM - shower and change of clothes

06:30 AM - work for ~2 hours on side projects

08:30 AM - family wakes up and we start daily activities

</comment><comment><USER16> Get up around 7.30am.

Practice the piano for 30 minutes.

Quick shower and a shave and then out of the house to get on with my work day.

I started skipping breakfast a while back for diet purposes but I was surprised by how much simpler it made my mornings.

</comment><comment><USER17> M/W/F: Wake up 4:30, coffee, bathroom, gym by 5:30, office by 8:00.

T/Th: Wake up naturally between 4:30 and 5:30, coffee, breakfast, email, forums, run 5k or 10k at ~7:00, transition into working from home.

</comment><comment><USER18> Wake up. Take a big gulp of water from my bedside table. Toilet. Wash face. Brush teeth. Journal. Stretch for 15 minutes. Get dressed. Walk to class. (Eat an apple while walking to class)

</comment><comment><USER19> Wake up 11, work until 5 or 6, repeat.

</comment><comment><USER20> Wake up. Toilet. Weight Self. Shower. Get Dressed. Eat. Walk to work.

</comment><comment><USER21> wake up and stretch 6am

watch netflix to 7am (halt and catch fire currently)

respond to email to 8am

get kids to school by 9am

do stuff to warm up brain to noon (chess or axis&allies)

idle brain, lunch, then cappuccino and tiramisu to 1pm

be very productive to 6pm

</comment><comment><USER22> Wake up at 7AM or so, shower, dress, drive 1hr to work.

</comment><comment><USER23> Wake up

Check plans in Calendar

Take a shower

Take a breakfast

Prepare meals for office (healthy lifestyle :-) )

Pack & go to the office

</comment><comment><USER24> Wake up.

Review calendar.

Check messages and emails.

Workout 5 days per week including cardio and HIIT.

Shower.

Take pills.

Work day starts.

<comment><USER25> What pills?

</comment></comment><comment><USER26> Wake up at 1:30AM. I then do deep coding (Lisp, obviously) for 15 hours. At this point my kids are getting home from school, and I spend 8 hours with them and my wife engaging in wholesome physical activities, finishing off with some exercise and a healthy meal (I only eat one meal a day for IF). Then following this I spend 7 hours carefully studying the latest CS theory, and software. I end with working on my ML side project (I'm making a custom neural network in Rust that automates my day job).

<comment><USER27> I do the same but I also mix it up by running 10 miles every other day during which I reflect on the emptiness of the cosmos and our purpose as a tiny speck of imbued with consciousness but without an essence.

<comment><USER26> I really admire your effort, I've always been a slacker.</comment></comment></comment>


Origami Robot Folds Itself Up, Does Cool Stuff, Dissolves into Nothing - <AUTHOR> http://spectrum.ieee.org/automaton/robotics/robotics-hardware/origami-robot-folds-itself-up-does-cool-stuff-dissolves-into-nothing <comment><USER2> While confessing to being a language lawyer: if an object gains all its immediate direction and energy from external sources how is it not a "puppet"? That is, isn't the expectation at least a tenuous amount of autonomy before it's termed a "robot"?

<comment><USER3> That sounds right. A robot has to sense something in its environment, then control something based on that measurement. Its not a high bar: even your thermostat is a robot.

<comment><USER4> I think it's high time a formal taxonomy of robots gets introduced.

There are humanoid robots, robots that simply do labor, autonomous, semi- autonomous, remote-controlled, etc. Your definition of sensing and control is new to me, personally, but valid of course. There are software robots, and then there are clickbaiters and charlatans making outrageous claims which lose their drama when an appropriate definition of robot is applied... We just need to straighten it all out, organize all of the things!

</comment></comment></comment><comment><USER5> Apart from looking cool, what does locomotion and folding do?

To me it looks not much different from one magnet on the surface and moving one underneath :)

<comment><USER6> it's mentioned in the article, but here all you have to do is orient a magnetic field, not move a magnet. Because of the shape of the robot, it will move in a direction related to the orientation of the field.

</comment></comment><comment><USER7> Given that it is externally powered, where would such a thing be useful today?

<comment><USER8> Today, not very many places. I can imagine a scenario where you want a large group of these to crawl through rubble to find people stuck under it. Most research like this comes with the hope of miniaturizing it enough for medical applications. Imagine this thing, but the size a grain of sand: entering your bloodstream, adapting to whatever task that needs to be done, and when it's finished moving to the stomach to get dissolved. In those applications, using external power makes complete sense, since it's a medical setting anyway, and it provides a great way to keep very fine control.

</comment></comment><comment><USER9> Is it just me or does it seem like the video was altered to make the motion smoother? Maybe it's just a very jittery robot.

<comment><USER10> The article says the magnets pulse at 15 Hz. And most of the video is sped up, so it would look _extremely_ jittery.

</comment></comment><comment><USER11> Anyone ever assembled Ikea furniture? Imagine furniture that assembles itself when you get home.

<comment><USER12> Then it vibrates you to death.

</comment></comment><comment><USER13> Is it just me or did that video look like stop motion? Probably just an illusion.

<comment><USER14> I actually thought it was a fake because of that. Then I read and discovered it's not actually a robot. Just some foil/magnet being driven by several relatively enormous electro-magnets.

</comment></comment><comment><USER15> Promoting the feature that it dissolves in acetone (and one day water) seems like this is being designed with nefarious purposes in mind. A robot that erases all traces of itself after completing its mission.

<comment><USER16> That depends on your perspective, particular since it says in the article "eventually, it'll be doing it inside your body". I believe it's intended for medical use.

<comment><USER17> Yep, once it's done it can just navigate to the nearest acetone reservoir in the body.

<comment><USER18> "Making the entire robot dissolve in water is a bit trickier, but the researchers seem confident that it'll be possible in the near future."

<comment><USER19> But if it dissolves in water how is it supposed to make it anywhere inside your body? There's lots of water in there.

<comment><USER12> Contact lenses are ruined by contact with ordinary water but the saline solution and water in our eyes doesn't ruin them.

<comment><USER10> Same problem, there isn't really any pure water in your body to dissolve robots in either.</comment></comment></comment></comment></comment></comment></comment>


Report Shows Just How Wrong Silicon Valley Is About A Tech Worker Shortage - <AUTHOR> http://www.businessinsider.com/a-brand-new-report-shows-just-how-wrong-silicon-valleys-claim-of-a-stem-shortage-is-2013-5 <comment><USER2> No one is claiming there is a shortage of programmers. The shortage is of really good programmers. These tend to be people who have an innate love of and aptitude for programming. It's orthogonal whether they happen to major in CS in college. (I didn't.)

If the people with the greatest innate love of and aptitude for programming are evenly distributed among the world's population, 95% of them are born outside the US.

<comment><USER3> > No one is claiming there is a shortage of programmers.

Since no one else is challenging you on that assertion, look at the graph on page 3 in the paper published by Microsoft:

[http://www.microsoft.com/en- us/news/download/presskits/citiz...](http://www.microsoft.com/en- us/news/download/presskits/citizenship/MSNTS.pdf)

The lead sentence is:

"The United States faces a growing economic challenge — a substantial and increasing shortage of individuals with the skills needed to fill the jobs the private sector is creating."

<comment><USER4> The second sentence of pg's post is:

> The shortage is of really good programmers.

From your quote:

"... __individuals with the skills needed __"

Compatible statements, no?

<comment><USER3> Given the graph on that page, I wouldn't interpret it way way. At best, it's highly misleading.

I support immigration reform for top talent. I just have a low tolerance for BS.

</comment></comment></comment></comment><comment><USER5> My impression of "Information Science" based on a few bad interactions with people who boasted of having the degree was fairly negative, so I went to <http://en.wikipedia.org/wiki/Information_science> to update it.

My impression just got even more negative. In general the more meta you make your description of yourself, the less likely you are to be doing anything obviously useful.

My view on this particular subject goes farther. If you aren't competent to express your ideas with a database schema, then I don't want you to try to tell me how I should be manipulating the information stored in a database. Because you don't understand what is or is not doable. And if you are competent to write that schema, then you are likely to make yourself useful writing code using it. This goes in reverse as well. Until you've got experience actually using databases as a tool, you're unlikely to design good schemas.

</comment><comment><USER6> Part of the problem is that there's a mismatch between the education being provided and what employers need and want. A brand new Computer Science graduate isn't usually terribly qualified to do what most employers, who hire CS graduates, want them to do, which is to write code and build programs / systems.

Why is this? Well, part of it is because, as always, a liberal arts degree isn't meant to be job training in the first place. This gap is especially pronounced with software people though, since a CS degree can be very theoretical and: A. might teach a lot of "stuff" that most programmer's don't use (or don't use very often), B. doesn't always include enough of the "stuff" that programmer's _do_ need, and C. can be overly general, when "practice" in this field is highly specialized and includes lots of niches.

Another part is because employers don't do enough to fill in the gaps and help train younger employees. Ideally, employers would hire new CS graduates and spend a year or more grooming them, teaching then the specialized skills they need in that specific domain, and helping them ramp up. But American employers are so averse to providing training, taking a long-term view, and "playing the long game" that it's ridiculous.

One thing that might help, would be if more schools started offering a _Software Engineering_ degree in addition to _Computer Science_ degrees, and if more students started choosing the SE degree. But even then, again, a liberal arts degree isn't supposed to be "job training" and the SE degree would still probably turn into more theory and not enough "how to actually build something" than what employers would want.

Net-net, I think employers are going to have to bite the bullet at some point, and accept that you have to hire and groom "green" people if you want to compete. And maybe universities should start offering a few more classes on the "nuts and bolts" aspects of building systems. Perhaps some partnerships between universities and local community colleges could be involved.

No matter what, though, I don't think you're going to be able to look for fresh graduates who, for example, walk in the door knowing Hibernate, Spring, PostgreSQL, Camel, JMS, Lucene, Maven, Ant, JUnit, SAX, JDOM, STaX, JSON, Hadoop, etc. But, unfortunately, employers are largely looking for folks to walk in the door ready to contribute with highly specialized skills from day one.

<comment><USER7> > Ideally, employers would hire new CS graduates and spend a year or more > grooming them, teaching then the specialized skills they need in that > specific domain, and helping them ramp up

Please No. That is what they do in Japan and I'd feel that's the number one reason programmers get paid shit in Japan. They hire straight out of school with no experience with salaries starting at around $30k. At 15 years experience you'll make somewhere between $45k and $60k.

Programmers in Japan make less than flight attendants

<http://www.worldsalaries.org/japan.shtml>

Some people would say that's a reason they're in trouble. As the world switched to software being more important then hardware they didn't switch to valuing those that make software.

<comment><USER8> Programmers get paid poorly in Japan because Japanese culture doesn't respect software. It has nothing to do with the way they are trained.

<comment><USER7> It does have to do with they way they are trained. If you have a culture that highers starting at $30k with no experience that has to affect overall salaries. Why pay for experience when you can just take next years cheap graduates? In fact Japan even goes so far as to not hire programmers over 35. Programmers are considered jobs for people 21 to 35. Just go read some jobs ads in Japanese.

</comment></comment></comment></comment><comment><USER9> I think it's fairly obvious that there isn't a shortage of _applicants_ , but of highly skilled applicants as determined by a somewhat arbitrary and flawed interview process with a strong preference for false negatives over false positives.

<comment><USER10> Sure. Consider incentives though. A false negative is cheap (at most you spent the time interviewing the person), while a false positive is expensive (good luck firing the person in our litigious environment).

<comment><USER11> A false positive is expensive for more than just litigious reasons. Hiring a bad apple can destroy the culture of a small company. As Steve Jobs said, "It's too easy, as a team grows, to put up with a few B players, and they then attract a few more B players, and soon you will even have some C players."

<comment><USER12> Steve Jobs, that noted "good apple" who took advantage of the Woz...

Our Jobs who art in Heaven hallowed be thy name

</comment></comment></comment></comment><comment><USER13> Interesting, the numbers are high enough that it suggests that it would be useful to look into making the market identification of talented engineers more efficient and that building some systems of getting these folks engaged would also improve productivity.

Both of those suggest an organization which hosts contests and events for training would be programmers. An example of a group that does this for business types is DECA [1] which my kids participated in at high school and learned a lot of quite practical business experience. If we could create an organization that had similar sorts of events (DECA does role plays for dealing with work situations and tests to demonstrate general knowledge) We could achieve two things, one we could create visibility for these people to industry who is looking for them, and we could give them confidence and skills they would use in their future employment.

[1] <http://www.deca.org/>

</comment><comment><USER14> There is a real shortage of people willing to work for peanuts.

<comment><USER12> Or remain in their third world country and its attendant corruption and infrastructure.

</comment></comment><comment><USER15> I wasn't sure what "Information Science" was, so I used Google. Cornell, probably an above average department, was the first hit.

As far as I can tell from the course descriptions, graduates of this program are not preparing to invent the next generation of technology breakthroughs: [http://www.infosci.cornell.edu/academics/degrees/ba- college-...](http://www.infosci.cornell.edu/academics/degrees/ba-college-arts- sciences/degree-requirements/tracks-required-courses)

A Cornell undergrad wanting to be a hardcore technologist, would major in "Computer Science" in the College of Engineering. But that would be more effort.

</comment><comment><USER16> Stupid article. The author thinks "Information Science" qualifies as a STEM subject.

<comment><USER17> It does. <http://www.ice.gov/doclib/sevis/pdf/stem-list.pdf> 11.0401

<comment><USER16> While it is categorized there, most IS grads aren't qualified to work in Silicon Valley company engineering departments, or even in most engineering/software dev. departments of non-SV companies. To use IS grad unemployment rates in this argument is arguing semantics.

</comment></comment></comment><comment><USER18> This article is fairly sloppy journalism. It equates what Silicon Valley wants (programmers with strong math/CS backgrounds) with Information Scientists (whose degrees prepared them for academic/archival roles).

From the actual report: "People who make technology are still better off than people who use technology. Unemployment rates for recent graduates in information systems, concentrated in clerical functions, is high (14.7%) compared with mathematics (5.9%) and computer science (8.7%)."

<comment><USER8> 8.7% for computer science is still rather high.

<comment><USER18> Bear in mind these figures are for 2010-2011, when overall figures for college graduates were not great, and a fear of a double-dip recession loomed large.

</comment></comment></comment><comment><USER19> CS grads are educated but not _trained._ The reason their unemployment rate isn't lower is because they haven't demonstrated their ability to build--to translate theory into practice. The ones that get hired are those who can hit the ground running.

<comment> jmcdonald-ut This is why things like internships or personal projects are so important for those pursuing a CS degree. Companies actively recruit from my campus, but lose interest quickly if the only thing you can talk to is your class or homework experience. What I find interesting is that, at least in my area (Utah), internships are readily available.</comment></comment>


When continents break it gets warm on Earth - <AUTHOR> https://phys.org/news/2017-11-continents-earthnbsp.html <comment><USER2> I wonder if the recent increase of ppm of (some) atmospheric greenhouse gases has an equilibrium-shifting effect back that would result in increased disturbances/mini tectonic movements because of pressure against the surface of the earth? Just curious, because it would be neat to know if there is such a link, or even if there is such a link and that e.g. fracking causes more earthquakes because of 'adjusting geological densities' or something like that.</comment>


Virtualenv's bin/activate is Doing It Wrong - <AUTHOR> https://gist.github.com/datagrok/2199506 <comment><USER2> Virtualenv bin/activate isn't doing anything "wrong". It's just not doing it how the author believes is best. Can the whole "You're doing X wrong" meme die already please?

I like the idea though! From what I see so far the author makes a good argument for using a subshell rather than setting and resetting environment variables. At the same time though, I haven't enough experience with his suggestion yet to see the downsides... and there most definitely will be. Why? Because that's programming, man. There's no panacea, no perfect way to do things, no _true_ "best" way to do anything.

So is this the "right" way? Probably not. Better is probably more like it and using that word instead makes you seem, you know, like _not_ cocky asshole (not that I think that about the author at all, just generally speaking).

<comment><USER3> _Can the whole "You're doing X wrong" meme die already please?_

You clicked through to an article you wouldn't otherwise read. The meme persists because it works, and complaining about it just makes it more effective.

(I didn't click through because I don't really care if X is doing Y wrong.)

<comment><USER2> It _does_ work and it makes me hate it even more! Because by the time something really _is_ wrong I'll be immune to the meme and I'll never know what's wrong.

</comment></comment></comment><comment><USER4> The fact that it does _not_ use a subshell makes it useful. You can trivially use it in bash scripts and cronjobs.

<comment><USER5> Why can you not do?:

      #!/usr/bin/virtual-bash my-env

      echo hello

Edit: in fact something like /usr/bin/virt-python my-env is much nicer than /var/lib/my-app/env/bin/python. Basically like virtualenvwrapper but for Python scripts that are not run interactively.

<comment><USER4> I regularly write scripts that involve more than one virtualenv. At the moment this is trivial by just activating and deactivating envs from one script. Starting subshells is complicated because communication into the shell barely exists. Worse than that is that the shebang only supports two arguments and is heavily length limited.

<comment><USER5> Unless you are rapidly switching envs, you could launch the parts of your scripts that operate on different envs as subscripts. Then you can pipe data in and out. Can you provide an example where this does not work?

Point taken on the shebang limitations.

</comment></comment></comment></comment><comment><USER6> Venv is one of the pieces of sanity in the python packaging deployment world and any improvements welcome - this goes on my List if things to think hard about

</comment><comment><USER7> Reading the Google Groups responses, he's officially created a <http://xkcd.com/1172/> situation heh

<comment><USER8> I assume you mean this thread

[https://groups.google.com/d/topic/python- virtualenv/XzI8GStv...](https://groups.google.com/d/topic/python- virtualenv/XzI8GStvKDw/discussion)

</comment></comment><comment><USER9> I handle this issue (and a bunch of other environment variable issues) with a little utility I wrote.

<https://github.com/timtadh/swork>

It basically figures out the pid of your shell and dumps the environment variables into a file in /tmp/swork. Then you make custom activate scripts for all of your projects. It has really helped me deal with a lot of projects. It also has convenience functions for quickly cd'ing to any project.

When you want to get back to the original configuration it simply restores the original environment vars.

</comment><comment><USER10> The approach i use is simply:

        $ cat run
        #!/bin/sh
        . venv/bin/activate
        python main.py

Is this wrong? If so, what would work better?

<comment><USER11> Not wrong, but if you're just running a program under a virtualenv (as opposed to doing shell work), just:

/path/to/env/bin/python main.py

will suffice. No need to create a separate shell script, start a new shell, and activate. Great for cronjobs.

</comment></comment><comment><USER12> I haven't used activate in years, I just call the interpreter directly.

<comment><USER13> Yep. I do mostly Django development and my project template just automatically sets up a virtualenv in a 've' subdirectory and sets the shebang line in manage.py to "#!ve/bin/python". From there, I just run "./manage.py whatever" and I never even have to think about it.

<comment><USER14> that's a good way...since I already use Makefiles to do little tasks in my projects, I end up just setting `PYTHON=.virtualenv/bin/python` and in my targets, using `$(PYTHON)` instead of `python`. Ditto for `pip`, `nosetests`, etc.

</comment></comment></comment><comment><USER15> None of these problems are the kinds of problems I've _ever_ run into. They're entirely a series of what if and edge case scenarios in which virtualenv is _not_ the answer, which is fine. I don't need a tool that can do things I'm never going to do.

</comment><comment><USER16> This is also the same technique I like to use for providing configuration to applications. Basically, write YOUR_APP_ENV=prod or whatever into /etc/environment and then add appenv to PATH which tests against the machine's environment, sets all the appropriate environment variables accordingly and ends with an `exec`. Super nice way to provide shell-friendly language- agnostic configuration.

I used to use `exec env $@` at the end of the script, so that I could `appenv > prod` for diffing, but I actually prefer this articles suggestion: `exec "${@:-$SHELL}"` since you can still `appenv env > prod`, but `appenv` provides an interactive shell by default.

</comment><comment><USER17> But what will be the added CO2 footprint of launching so many unnecessary shells!

Also, I don't like the prospect of having to hit Ctrl-D twice to logout.

<comment><USER18> Then type 'exec inve' instead of just 'inve.'

<comment><USER17> Perhaps that makes sense. Actually I usually type 'workon myproject' (using virtualenvwrapper, because it provides a nice standard location and activation command for virtualenvs), so maybe this could all be transparent.

</comment></comment></comment><comment><USER19> Ah, I like this. I'm going to cavort off with these ideas and put them to good use in my rubygems environment switcher gemenv.

<comment><USER19> ...aaaaand done. At least, the subshell launcher part. <https://github.com/regularfry/gemenv>, if anyone 'round these parts is interested.

</comment></comment><comment><USER20> This is also how all HPC computing environments (such as SLURM, SGE) do it. They simply spawn a subshell for you to work with and do whatever you want to run.

<comment><USER21> As a long-time SGE user you are not describing something familiar to me. Can you describe what you mean more specifically?

</comment></comment><comment><USER22> ...and Python 3.3 just included virtualenv as a standard library...</comment>


More details leak on "Snapdragon 1000," Qualcomm's chip for Windows 10 laptops - <AUTHOR> https://arstechnica.com/gadgets/2018/06/more-details-leak-on-snapdragon-1000-qualcomms-chip-for-windows-10-laptops/ <comment><USER2> interesing. from [https://arstechnica.com/gadgets/2018/06/arm-promises- laptop-...](https://arstechnica.com/gadgets/2018/06/arm-promises-laptop-level- performance-in-2019/):

"ARM's lead processor architect Mike Filippo said that the new design would "do well" against Apple and roughly match the Intel Core i5-7300. That processor is a two-core, four-thread chip running at between 2.6 and 3.5 GHz using Intel's Kaby Lake architecture. With more cache, Filippo says that even i7 parts should be within reach."

on TSMC's 7nm process</comment>


Swift Thinking [video] - <AUTHOR> http://realm.io/news/swift-thinking

<comment><USER3> Most these operator discussions seem to go down the same way: "man you can make some really confusing operators, and I hope that doesn't become a thing... but gee writing == is so much nicer than isequalto and can't beat the + operator when adding things together!". People seem convinced that its all or nothing. Lua has such a nice compromise to this: you _can_ overload +, -, ==, etc using special methods (__add, etc.), and you can't overload or create any new operators. Its a completely controlled environment that disarms the "but what if I want to add complex numbers together!" argument while still removing the temptation to create really absurd syntax (which Swift has taken to the next level with emoji).

<comment><USER4> I for one can't wait to create circular references between objects that then stay alive together for ever and ever using the ❤❤❤ operator.

More seriously, I wonder why user-defined operators are considered any worse than user-defined functions. I mean, I think that they often are, but I wonder why.

Maybe we assume less potential for ambiguity when we read a symbol than when we read a word. The possibility that isEqual: has a bad implementation that doesn't respect transitivity seems more obvious than the possibility that == does.

<comment><USER5> User-defined operators are bad when they betray our expectations of what they should be doing - and by that, I mean if they don't exist in textbooks which are decades/hundreds of years old (and thus, almost universally accepted as part of our languages/cultures), they're gimmicks. That includes =~ for matching regular patterns - nobody would _ever_ expect this to be the case - only someone who has encountered it in an existing language will use it as such.

User defined functions have _names_ that we can understand, because we already share a common language - English. If we started "making up our own words" for functions, then we're doing just as bad as user-defined operators - <USER2> will recognize what the hell we're doing without looking up their implementations. It's like reading obfusticated code, or code in some language you don't know. If every programmer invents his own operators, good luck ever getting shit done - people don't have the time to learn some arbitrary language you conjure up just for the sake of shaving a few characters off code. Nor should anyone need a PhD in mathematics to understand the strange notations in your examples/proofs.

Operators cannot be searched for in the same way ASCII text can - we need specialized search engines which don't ignore characters - and they generally need to be written on a per-language basis to be useful. I think the time wasted doing this far exceeds the benefits user-defined operators provide.

Also, many unicode characters look alike, and it may be possible to utilize this in malicious ways where arbitrary characters may be used - by assuming someone reading/reviewing code will not look up the code points of every character. Having a limited set of characters makes it pretty simple to distinguish each one, unless you have poor fonts and can't make out differences between 1,I,l etc.

Operators are useful for sure, but they're never _necessary_. More to the point, they are _just_ functions - treating them specially is silly, because it's much more useful to abstract over functions of any arity than to abstract over only binary functions.

</comment></comment></comment><comment><USER6> If you watch the video and wondering about the multiple subscripts prepended by '?', this technique is called optional chaining. It also work for properties and methods.

It is kinda similar to how we can invoke methods on 'nil' in Objective-C and not causing any runtime error.

Just stating if anyone is wondering.

</comment><comment><USER7> Interesting that the Apple-provided sample app mentioned around 7 minutes in uses "~=" as a custom operator, given that it's already defined for use with pattern matching (match an input with some sort of pattern), and intended to be overloaded for that purpose. I wonder if this is just an oversight?

<comment><USER8> The pattern matching example he showed from a few other languages uses =~ instead of ~=. This, however, illustrates the potential confusion with operators that appear to be similar at first glance.</comment></comment>


Mobile web apps may be slow because Moore's law is ending - <AUTHOR> http://techcrunch.com/2013/07/13/your-app-is-slow-because-our-world-is-ending/

<comment><USER2> The article is right about Javascript, but wrong about why mobile web apps are slow. Most mobile web apps are not games nor image processing apps, they are simple content sites or form-driven applications that are not CPU bound and don't use a lot of JS. These apps are subjectively slower because of browser layout engine performance.

Even on "heavy" JS apps, I've heard it said they only use 30% CPU. So if 70% time is not spent in JS, even if you run that 30% 50 times faster, at best you get a 42% speedup from 50 times better CPU performance.

I feel the author has caused many to have the wrong take-away message, and the anti-web contingent are lapping it up. Mobile Wep Apps can be made to perform fast today, but it takes way way too much effort to tweak the CSS/DOM manipulations to avoid jank. Consider for example the need to manually "hint" you want GPU compositing by using identity CSS3 transforms.

The rendering engines need to get better with leveraging the GPU and avoiding work when they don't need to.

If you want to see what a herculean effort can achieve, see Sencha's FastBook.

Basically, the author is right, but I think it's a red herring given that when people talk about "slow mobile web apps", 99% of the time, they are not talking about an Instagram written in JS, or AngryBirds in Javascript, but some basic news feed app.

</comment><comment><USER3> Even if you accept that giving web apps 10x more CPU than today they'd be equal to today's native apps (I don't accept this), you must acknowledge you've given 10x more CPU to the native apps too. And clever people will find impressive ways to use that CPU in native's advantage (witness all the neat physics stuff in IOS7).

</comment><comment><USER4> >So Moore's Law might be right after all, but it is right in a way that would require the entire mobile ecosystem to transition to x86. It's not entirely impossible–it's been done once before. But it was done at a time when yearly sales were around a million units, and now they are selling 62 million per quarter. It was done with an off-the-shelf virtualization environment that could emulate the old architecture at about 60% speed, meanwhile the performance of today's hypothetical research virtualization systems for optimized (O3) ARM code are closer to 27%.

Why do you need virtualization if the code is Java bytecode? Sure, this doesn't work for iPhone, but Android should be able to easily change the processor architecture. (If I'm not missing something here). There's already Android-x86 project.

<comment><USER5> Besides ARM and x86, Android also runs on MIPS and PPC.

<comment><USER6> And even for native code, it's generally easy to support multiple architectures (unless your code is arch-specific).

</comment></comment></comment><comment><USER7> The original title is more accurate. This edited one doesn't do the piece justice. He really is talking about the end of an age.

I was expecting some kind of snark, but not this. I'm glad I suffered through the page crashing my iOS browser once.

</comment><comment><USER8> Moore's law won't necessarily be progressing in a steady line. We will probably see more jumps and spikes as technology advances. Do you think computing power will only merely double once we take advantage of quantum computing? No, it will go up orders of magnitude in a short period of time.

Our current progression with silicon based computing is slowing because we're reaching the physical limitations of that technology.

</comment><comment><USER4> One additional point is that even if .js doesn't improve much, mobile browsers can get a lot faster. iPhone's webview is a lot faster than Android's webview, so there's plenty of progress to be made especially with rendering.

</comment><comment><USER9> Ok dudes, enough is enough.

What actual proof does this dude have that pocket-sized computers have reached their limits of performance and memory?

All I see are some carefully selected quotes from some "hardware engineers" who are doing nothing more than offering up their opinion.

An "ex-Intel engineer" and a "robotics engineer" have a single paragraph. Really, this is your research? Some anonymous quotes, probably taken out of context?

> I have consulted many such qualified engineers for this article, and they > have all declined to take the position on record. This suggests to me that > the position is not any good.

Really.

Do I have to go on?

<comment><USER10> >What actual proof does this dude have that pocket-sized computers have reached their limits of performance and memory?

Could you quote the part where the author of this article or the original _Why mobile web apps are slow_ article say that we have reached a hard "limit of performance and memory", because I don't see where they say that at all.

The article I'm reading says this:

 _Unchecked exponential growth has to end sometime, by definition, and this is how it would happen; not with a bang, but with a whimper. We won't hit a wall, we'll just…start…to…slow…down._

<comment><USER9> Fine, I concede the point to you, however, I amend my question:

What actual proof does this dude have that performance and memory of pocket- sized computers have started to slow down?

And how does arguing this point have anything to do with his overall "thesis"?

Forest for the trees, man, forest for the trees...

</comment></comment></comment><comment><USER11> Mobile web apps are slow because of layers upon layers of leaky abstractions and algorithms at each layer that still have a lot of room to be optimized.

If you want a consistent 60 frames a second, you need to architect systems that complete the work that needs to render each frame within 16.6ms. If you can't complete all your computations within 16.6ms, you need to prioritize computations and spread them across frames.

</comment><comment><USER12> It is my experience that the biggest reason for why things are slow is that they need to fetch content from outside it's environment.

I don't know if this affects JS ability to render it but it is at least my experience that JS based apps are simply not able to give me the same non- interupted feel as natively build ones, this includes even apps like RSS readers.

</comment><comment><USER13> Even if this is true, this only spells the end of exponential growth in hardware performance and the start of the more efficient software era. Engineering is all about finding the right compromises to get the job done given a set of restraints. When the HW performance becomes the major restraint then you just have to design around that.

</comment><comment><USER14> Maybe the slowing of this Law, which I am not convinced of per this article, will slow new hardware introduction. If this happens, perhaps this will allow closer optimization of applications to a small, relatively static hardware complement.

</comment><comment><USER15> Phones should be thin clients anyway, the cloud provides the muscle. What use is packing compute into it. You just want it get smaller and zero energy use (using ambient energy for charging).

<comment><USER16> > What use is packing compute into it.

1\. Do computation locally on local data, thus avoiding round-trips to a far away server.

2\. Distribute an app to lots of people without having to pay for a lot of server resources to match, since the computation is done on each user's device.

3\. Enable users to keep more data private, by keeping it on the user's own device.

</comment></comment><comment><USER17> I think it's a favour. Coders shouldn't settle for a mediocre language and a dated platform just because they are ubiquitous.

</comment><comment><USER18> _"in a memory constrained environment garbage collection performance degrades exponentially." The obvious solution, then, is to throw memory at the problem, no?_

Isn't the obvious solution to avoid garbage collection whenever possible? Just consider 'Date.now()' vs 'new Date().getTime()' \- are we even trying? Shouldn't we start considering unnecessary garbage a bug, like a memory leak? That might not change everything, but it surely would help, no?

<comment><USER19> That's an interesting idea, but how does a language distinguish between memory leaks and regular non-leaks? Maybe some kind of metadata that informs the GC about how memory will be used so it can optimize memory usage and issue errors when the code fails to follow these rules?

If we really start hitting these kinds of walls, I think that Javascript subsets (like asm.js) will become more prominent, but it's an interesting idea.

<comment><USER18> Then know that it was your interesting idea, since I wasn't thinking of anything automatic myself :) Maybe is possible to automate things like generating code that minimizes branching, or re-uses objects instead of destroying and allocating them all the time... but it's definitely possible, in some cases at least, to rethink the approach and reduce GC. Especially since there are usually trade-offs (using a fixed amount of memory "just in case" is distasteful for its own reasons), and the programmer might need to make an informed decision.

But people still need to be aware of it first; making new objects for one time use is handy, and the normal way to go about things. It's certainly the default way tutorials tell you to get the time (even in game loops). At least personally, before today I didn't even know about Date.now(), and I never saw a discussion about any of this stuff in regards to libraries (how good or sloppy they are with GC)... it just doesn't seem to be on the radar, outside of gamedev. And by the time stuff gets sluggish by the accumulated little objects here and there, there is no easy fix, other than a whole lot refactoring or rewriting from scratch with it in mind.

</comment></comment></comment><comment><USER20> Performance anxiety for a whole class of devices that DIDN'T EVEN EXIST a few years ago, enabling GIANT NEW MARKETS.

'Our world is coming to an end.' Gotta love it.

</comment><comment><USER21> I think we have another 10 years or so until 2-3nm chips.</comment>


What type of Internet connection for a shared office in NYC - <AUTHOR>

We will be moving into a shared office that is being built out soon in New York City.  The office provider is building out a new floor and they have asked us what type of internet connection setup we would prefer.  I am not a networking guy so I don't know best practices.
There will be about 80 people in 8-12 private offices on this floor.
Mostly tech companies.
I don't think people want to host sites from this location.
What type/types of service would you recommend (t1/t3/oc3/ Metro cat5)?
How would you handle redundancy?
Is it reasonable for each office to get their own Time Warner connection in addition to the building provided connection?
How much should this cost, monthly/capital expenditure?
Thanks <comment><USER2> Ordinarily you would set some sort of budget and back into an offering based on what is actually available.

What carrier(s) currently have service in the building?

Just guessing, you probably want something on the order of a T1 (1.5Mbps) to a business cable type account (2-10Mbps typical), which will be in the area of about $150ish (for cable) to $500+ (for a typical T1 loop+bandwidth).

Unless your Internet access is SUPER critical to your business, redundancies don't make much sense. If you want to cover that contingency moderately cheaply, get a Verizon wireless broadband card ($60/mo) and a router that can do basic failover (Cradlepoint, Linksys, D-Link all have good options). The upside being that if anyone travels, they can take the 3G card with them (obvious risks apparent).

<comment><AUTHOR> Are you talking about a T1 per office? a T1 for 80 people seems way underspecced.

I work at a company of 4-8 people. If the internet is down for an hour, think of the cost of those salaries that is wasted.

Internet access is super critical to our business. I have worked at enough places where the internet was flaky, it is not an experience I want to repeat.

<comment><USER2> No, I was saying a T1 is the absolute low-end of what you'd want to consider for the overall space. And yes, it's not a lot of bandwidth these days, but you didn't say what people would really be doing. A standard tech operation doesn't normally need a lot of Internet bandwidth. You generally can code and test locally and then push code up to a production server. But since every operation is vastly different and you didn't give a lot of detail on exactly what people would be doing over this pipe, I could only give general answers...

</comment></comment></comment><comment><USER3> It depends what providers are already wired into the building; those will be cheap and anything else will be _crazy_ expensive. Business cable would be my first choice followed by Ethernet (Cogent if possible).</comment>


Ask HN: Open-source projects that we never heard of them that become profitable? - <AUTHOR> Hey HN,
Do you know OSS project which are not famous like we already know well (redis,sidekiq ..)
which created by small team or 1 developer and become their main or side profitable income?
Thanks <comment><USER2> Yes. One (one!) gets there primarily via donations. All the rest are operated as small software companies which happen to have a OSS product available.

To the next obvious question "Who are you talking about?", I'm going to demur, because most people making money in OSS, like most making money selling SaaS (or anything else, for that matter), don't really see much value in getting that fact blabbed on the Internets. Information travels at the speed of (your liquid refreshment of choice).

<comment><USER3> Could you expand more on this point? With your background in the space, would be interesting to hear your insights on what proportion of SaaS businesses fall into the secretive vs. "any press or leads are good" categories. And when to go with one strategy or the other.

</comment></comment><comment><USER4> I developed osTicket and we now have a growing profitable business- we have a SaaS offering and provide commercial support to enterprise users.

<comment><USER5> Wow, that's awesome!! I looked up your story and that is awesome too. I would love my open source real estate website builder project ([https://github.com/etewiah/property_web_builder](https://github.com/etewiah/property_web_builder)) to achieve something similar. Hope you don't mind, I've reached out to you via linked in.

<comment><USER4> Thanks - I'll reach back.

</comment></comment></comment><comment><USER6> FreeSWITCH. You can check any opensource telecom tech. Most contributors turn themselves as consultants.</comment>


Ask HN: Scent Sensitivity? - <AUTHOR> I have several people around me who are sensitive to different scents (chemicals and perfume).  When exposed, they experience headaches, and sometimes find it hard to function at all.
I never remember hearing about this at all when I was growing up.  Is this much more prevalent than it used to be?
And if so, why?  Is it because of a change in the chemicals used to create the scents (or the chemicals that the scents are trying to cover up), or is something making people more sensitive than they used to be? <comment><USER2> I find myself completely nauseated when exposed to lavender, so I doubt it's anything to do with the chemicals being used.

For my family (since my aversion is familial), I attribute it to the relatively strong sinus reactions my dad's side has. Whenever exposed to certain strong smells, we start making mucus, and then it collects in the sinuses and causes a major pressure headache followed by mucus dripping out.

I'm guessing it's related to allergies? For us, it's nothing to do with modern times, since I have it, my dad has it, his family did, etc.</comment>


Get a New Nissan LEAF as Low as $11,510 – subsidised by utility co - <AUTHOR> https://cleantechnica.com/2016/12/15/get-new-nissan-leaf-low-11510-incentives-kansas/ <comment><USER2> "Participation is limited to the following eligible groups:

Employees of KCP&L or City of Kansas City, MO: must present proof of employment (such a pay stub)

Customers of KCP&L: must present utility bill"

</comment><comment><AUTHOR> Deal good till March 31, 2017 [http://www.metroenergy.org/index.php/nissan- leaf-2016-group-...](http://www.metroenergy.org/index.php/nissan- leaf-2016-group-buy-draft/)</comment>


Programming as Theory Building (by Naur of BNF) - <AUTHOR> http://www.zafar.se/bkz/Articles/NaurProgrammingTheory

<comment><USER2> Reading this article gave me insight into the interaction that typically occurs in Lisp discussions, where someone will present sample code where they are having a problem and requesting a solution. Instead of getting the answer they expect, what they typically receive is an explanation of why that is not "the Lisp way". On the surface, this looks like nitpicking, but when you look at it from the _Programming as Theory Building_ viewpoint, it is clear that the respondents are more versed in the theory of Lisp and are merely trying to enrich the original requester with the same enlightenment.

In general, I thought the article was excellent, as it voiced many of the ideas that I've seen pg express in his likening of Lisp programming to working with clay, as well as many of my own insights of what programming actually means to me. Unfortunately, it also helps to justify my constant rewriting of my code to make it more elegant, as any mathematician would be expected to do the same. While this may be a good intellectual exercise, it's not necessarily good for getting stuff done.

</comment><comment><USER3> I'm with ya on rewriting code to make it cleaner. Maybe it's OCD, but who cares. It's one of the joys of coding to me. And yeah, sometimes it's costly, but sometimes it's very beneficial, and regardless it's like an itch.</comment>


Of Course Twitter Had to Suspend Donald Trump Jr - <AUTHOR> https://slate.com/technology/2020/07/trump-jr-suspended-twitter-coronavirus.html <comment><USER2> Unbelievable for me, an avid user of USENET in the 1980s who gloried in its sheer freedom to say anything, to see the tech world now cheerleading censorship.

The parallel to the steady stream of articles that disappear on Weixin daily in China is alarming.

<comment><USER3> Eh, USENET wasn't a for profit company. Twitter is a private platform. It's not censorship. They have no obligation to publish anything.

<comment><USER2> Then as a private company let them take full, legal responsibility for their editorial decisions. No reason why the federal government should grant them special status to support a partisan business model.</comment></comment></comment>


Vagrant for fast dev environment setups - <AUTHOR> http://techie-notebook.blogspot.in/2012/12/vagrant-interesting-approach-to-setup.html

<comment><USER2> The most important part of using vagrant, the provisioning, isn't even covered in the article.

A paragraph or link to vagrant's homepage is enough to explain the value. The hardest part is automating the dev environment via chef or puppet, which is where the article should've been dedicated to.

<comment><USER3> There is a link to the Vagrant docs on running chef solo at the bottom of the article. Not sure if it was always there or if it was a response to this comment because the author made no indication of edit or update.

<comment><USER2> That comment was there in the original.

My point was that the provisioning (or packaging of a VM) is the most crucial and discussion-worthy aspect of setting up Vagrant. At least in my experience, that's the hurdle for people to overcome when seeing the value of Vagrant, as they usually already have VMWare or VirtualBox VMs running.

</comment></comment></comment><comment><USER4> Vagrant just allows you to automate setting up virtualbox and running chef inside a vm. You can do the same pretty trivially yourself but why bother when vagrant works.

Where vagrant kinda sucks is when you're using libraries + 'smart' IDEs. I.e you develop locally in eclipse with a maven repo on the VM, or you develop in a python IDE like pycharm with the virtual environment running on the vm. You either have to share 'em from one to the other (which is slow and pretty problematic) or try to keep them in sync (which is also slow and defeats some of the benefit of the automagic dev environment).

IMO, developers benefit from setting up and understanding how their environments work. Make it quick and easy but don't hide it behind an abstraction layer.

<comment><USER5> Although I agree in general, PyCharm has recently been adding explicit support for Vagrant and virtualenv in their latest betas, and it works pretty well.

Basically does what you'd hope. I've got Django installed inside a virtualenv inside a linux Vagrant VM, and PyCharm running on the host OS is able to start a Django server, do interactive debugging, autocomplete function names, install new packages to the virtualenv, etc, etc. It's really just like you'd hope, and in my view just as good as PyCharm pointed at a "native" python/django install running on the host OS directly.

</comment></comment><comment><USER6> What is the problem that vagrant solves, that can't be done without virtualbox on its own, or virtualbox and chef/puppet on their own?

Or lacking that, what does vagrant do so much better than the base tools on their own that you would never want to do without it?

As far as I can see you can do all that vagrant does with vboxmanage, vboxheadless and cloning. I generally ssh into my virtualboxes already.

You could even make an argument against vagrant - if you want to maintain the same deployment tools for vboxes and production boxes, so that you can rehearse/test initial deployment, deployment and recovery on a vbox configured as much as possible as a production box.

I'm more than open to correction or persuasion ...

<comment><USER5> Standardised, platform independent, easy to install and configure tools. If you've got a somewhat complicated dev environment, it's really really easy to tell new developers "look, just install virtualbox, install Vagrant, clone the repo, run vagrant up, and then vagrant ssh". A few minutes later they'll be sitting at an ssh prompt at a fully installed and configured dev server, which is pretty sweet.

Sure, you could do it all with slightly longer and more detailed instructions and more hand rolled scripts, but it would be slower and more fragile. Vagrant doesn't really solve any new unsolved problems, it's just a bit easier than the alternatives.

(Also, I'm not sure I understand your argument against vagrant. Part of the point of vagrant is, yes, to try and maintain the same deployment tools for dev and producton. Why do you think using vagrant makes that harder?)

<comment><USER6> Probably my lack of understanding of how vagrant fits and works. But you wouldn't use vagrant to manage a production server, so there's an inevitable difference there.

<comment><USER5> Not at all!

See, you wouldn't use vagrant to _manage_ a dev server either. Rather, the idea is that, in dev, you use vagrant to provision a VM (or multiple VMs; you can replicate your whole stack with multiple web servers, database clusters, load balancers, etc.) which is as close to your production environment as possible. Then you manage this dev environment the exact same way you manage your production environment - with chef or puppet.

Vagrant is taking the role of Amazon's EC2 control panel or the order form on your dedicated server providers website. And none of those manage the server; that's chef or puppets job. (Although it does have great integration with chef and puppet.)

</comment></comment></comment></comment><comment><USER7> Nothing wrong with Ruby, but are there alternatives which do not require it?

<comment><USER6> If I recall from previous experiments, vagrant's ruby is in its own directory, somewhat but not entirely compartmented off.</comment></comment>


Show HN: UML2 SP: Object-oriented simulation language - <AUTHOR> https://vgurianov.github.io/uml-sp/ <comment><USER2> I noticed that (in firefox nightly), the left side nav bar buttons don't seem to work as buttons. They still require you to click the actual text itself. Just a minor nit

Does this project require use of the StarUML editor?

<comment><AUTHOR> No, the StarUML editor is not required. You can use any UML-editor if it supports uml-profiles (see [https://en.wikipedia.org/wiki/List_of_Unified_Modeling_Langu...](https://en.wikipedia.org/wiki/List_of_Unified_Modeling_Language_tools)).

It is necessary to perform the following steps:

1\. create a profile, for example

Microsoft Visual Studio: [https://msdn.microsoft.com/en- us/library/ee332513.aspx](https://msdn.microsoft.com/en- us/library/ee332513.aspx)

MagicDraw UML tool: [https://community.nomagic.com/uml- profile-t2139.html](https://community.nomagic.com/uml-profile-t2139.html)

Sparx: [http://www.sparxsystems.com/resources/developers/uml_profile...](http://www.sparxsystems.com/resources/developers/uml_profiles.html)

Visual Paradigm: [https://www.visual-paradigm.com/tutorials/how-to-define- cust...](https://www.visual-paradigm.com/tutorials/how-to-define-custom-model- element-properties.jsp)

2\. to create stereotypes using the definitions [https://vgurianov.github.io/uml- sp/metamodel](https://vgurianov.github.io/uml-sp/metamodel)

Thanks for looking - I appreciate your opinion.</comment></comment>


Rlwrap - The Readline Wrapper - <AUTHOR> http://utopia.knoware.nl/~hlub/rlwrap/rlwrap.html <comment><AUTHOR> I just found this and I'm so excited about it that I'm telling everyone in the office. Here is my sqlplus script:

      #!/bin/sh
      BREAKCHARS="()@\"\";''\\"
      exec rlwrap --remember -c -b "${BREAKCHARS}" -f ~/.sqlplus_completion sqlplus $*</comment>


The Ainu, the Indigenous people of Japan - <AUTHOR> https://www.hakaimagazine.com/features/prejudice-pride <comment><USER2> Two thoughts on this:

1) Fascinating story. I had no idea the Ainu existed. Their way of life seems very reminiscent of the Haida and other indigenous peoples of the Pacific Northwest.

2) I thought the author's description of the _iyomante_ was precious and patronizing. TLDR: according to the article, the _iyomante_ is the ritualized slaughter of an adult bear that has been taken from its mother as an infant and raised in confined captivity. It's not a quick death, according to the article:

> At the start of the ceremony, an elder offered a prayer first to the goddess > of the fire and hearth, Fuchi. The elder led the men to the bear cage. They > prayed. They released the bear to exercise and play, then shot him with two > blunt arrows before strangling and beheading him, freeing the spirit. People > feasted, they danced, they sang. They decorated the head and an old woman > recited sagas of Ainu Mosir, the floating world that rested on the back of a > fish.

I get that knowing how this ceremony was carried out is extremely important anthropologically, and there's something to admire in the extent to which the Ainu were connected to the ecosystem in which they lived. That said, I thought the article really went out of its way to romanticize the captivity and torture of a non-domesticated wild animal.

<comment><USER3> It even describes it as "powerfully seductive" which is not how I felt at all about the description. It's above my paygrade to judge another culture. But I felt sorry for the poor bear.

<comment><USER4> That made me laugh and _still_ feel sorry for the bear. Best put ever... "above my paygrade to judge another culture". :-)

Very Star Trek.

<comment><USER5> _Star Trek_ doesn't have paygrades because _Star Trek_ doesn't have money. Try the U.S. military, the stereotype of the corrupt commissioned officer saying things like "Askin' questions like that is above your paygrade, son."

<comment><USER6> I think that is probably more literal than a person should be with a simile, metaphor or poetical comparison

</comment></comment></comment></comment></comment><comment><USER7> This got me into a rabbit hole on Wikipedia about where all the peoples of Japan came from, and what makes the Ainu indigenous. If an indigenous people is the first to settle, not sure the Ainu are clear winners. Lots of dispute about early population dynamics of Japan.

It seems the Ainu are considered indigenous because some have maintained their culture instead of assimilating into the larger group, which is unlike the Jomon and Yayoi people who many believe are the ancestors of modern Japanese people.

<comment><USER8> > If an indigenous people is the first to settle

Not what it means.

<comment><USER9> Japan consists of islands, everybody there came from somewhere else.

This is true in Australia and the US as well, the Aboriginals and Native Americans just came several thousand years before the next waves of settlement.

<comment><USER8> I'm not sure what your point is but I'm just pointing out he's extrapolating from an incorrect definition.

I'm certainly not claiming that 'indigenous' means their ancestors literally sprouted from that ground.

<comment><USER10> Go on then, enlighten us with the definition, and failing that, the most precise definition you can give.

</comment></comment></comment></comment></comment><comment><USER11> This is a pretty good documentary about the Ainu:

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

</comment><comment><USER12> I learned growing up in Japan in the 90's that the Ainu are indigenous people of Hokkaido, the northernmost island in Japan. Okinawa and Hokkaido weren't really Japanese until recently. I think I remember learning that Hokkaido was like Australia, where the mainland sent Japanese prisoners/criminals to or something.

<comment><USER13> The north coast of Hokkaido is home to the Abashiri Prison. The original building was built in the late 1800s by the prisoners, in pretty harsh conditions. We were told being sent there was like being banished to Siberia. It was used for Yakuza and political prisoners.

We were recently in Northern Hokkaido, but didn't have enough time in Abashiri to visit the prison museum. That part of the island is nothing like the rest of Japan.

</comment></comment><comment><USER14> Anyone else first hear about the Ainu through arcade games? I didn't remember which one, but a Google search brings up Samurai Shodown, which looks familiar. The character was Nakoruru.

<comment><USER15> I certainly did. I didn't know that the official Japanese Government didn't fully recognize the Ainu until 2000s.

Samurai Showdown was straight up a 90s arcade game, which arguably means that Nakoruru's placement as a Ainu character would have been before the official recognition of those people.

Nakoruru's moveset revolved around her Bird (either a falcon or an eagle... I forgot exactly), as well as her own dagger style. So it seems like the Ainu are very similar to the Native American tropes (Natural and close to the earth).

</comment></comment><comment><USER16> I only know of the Ainu from the 1993 fighting game Samurai Shodown character Nakoruru [1].

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

</comment><comment><USER17> Interesting article. I didn't know the Ainu still existed as a group.

If you're interested in this sort of thing, there has been more written on the okinowan experience which is similar.

</comment><comment><USER18> Do they have anything to do with Tolkien's ainus?

<comment><USER19> I beg your pardon?

<comment><USER20> [https://en.wikipedia.org/wiki/Ainur_(Middle- earth)](https://en.wikipedia.org/wiki/Ainur_\(Middle-earth\))

</comment></comment></comment><comment><USER21> Animal cruelly plain and simple. This isn't simple killing but torture, the deliberate infliction of unnecessary pain, on an animal. Such rituals are to be studied by academics but not celebrated.

What really gets me is the obvious role this ritual plays. It is a baby- killing game. It is meant to harden people against the slaughter of a being raised as a member of the family. It was raised as more than a pet. Women nursed this animal. Then they tortured it to death. How did those women feel? Watching such things, accepting them as normal, makes killing of friends and family that much easier. This is torture being used to enable more torture and is far from unique. Shall we also celebrate how our ancestors trained themselves to be cruel? Should the British Navy celebrating the grand traditions of whipping sailors?

<comment><USER22> We detached this comment from [https://news.ycombinator.com/item?id=15449966](https://news.ycombinator.com/item?id=15449966) and marked it off-topic.

</comment></comment><comment><USER23> > I thought the article really went out of its way to romanticize the > captivity and torture of a non-domesticated wild animal.

This is how I feel about dog ownership. We take children from their species, sterilize them, and gaslight them into thinking they're part of our family instead. The only reason dogs are domesticated is because we've been inbreeding their species for thousands of years and they literally can no longer live in nature because of how we've bred them. If anything, raising, hunting, and killing an animal is more natural than what we do.

<comment><USER24> I'd highly recommend reading a book like "The Domestic Dog," which was recently updated with a new edition in 2017. It contains all of the latest science and anthropology around the origins of the human/dog relationship.

The tl;dr is that dogs really _do_ identify us as family, and in all likelihood, the first ancestral wolves to become domesticated dogs took as many co-evolutionary steps towards us as we did them.

Humans and dogs have been evolving alongside each other for at least 15,000 years. The sorts of dog breeds that can't survive in the wild (bulldogs, etc.) are a fairly recent innovation in all of that time, dating back to the mid 1800s and the emergence of the modern breeding program.

Dogs like being with us as much as we like having them around. They were the first domesticated species, and they are literally the only mammals we know of who can read human facial expressions and emotions as well as the great apes can. Our relationship with them is a partnership, not an enslavement.

If you want to take issue with the way humans treat animals, there are _so many_ better targets for outrage than our treatment of the dog. Take the cow or the chicken, for instance, most of whom lead a tortured and awful existence and would want nothing to do with us in a state of nature.

<comment><USER23> The reason I chose dogs is because it isn't an easy target.

Another example is Deer. I live in New Jersey and we have an overpopulation of Deer, to which the most common response is that we should cull them so they don't become dangerous to roads. The moral stance would be to design our transportation in a way that doesn't frequently kill other species. Another common response is that the overpopulation will lead to them dying anyway as their isn't enough food to sustain them, so the argument boils down to kill them because they're going to die anyway.

The Ainu people believe that their treatment of bears is just. I'm just pointing out that I'd rather see all of these animals free from human emotional projection.

<comment><USER25> If you had the choice between death from a gun, death from starvation, death from the claw and tooth of a non-human predator, which would you choose?

</comment></comment></comment></comment><comment><USER26> [https://en.wikipedia.org/wiki/Ainu_people](https://en.wikipedia.org/wiki/Ainu_people)

</comment><comment><USER27> Off-tangent incoming:

In my observations (and some bias; I am openly admitting it) which were sometimes reinforced by meeting real Japanese people, most Japanese are xenophobes, racists and very easily collectively agree not to speak about stuff they dislike / feel threatens some imaginary dominance / endanger their prejudices.

For all the glorification the country and its people get around the globe, and for all the romantic blemish their fatalistic and stoic philosophy receives, the Japanese I've encountered and observed remotely are pretty ordinary people with a lot of prejudice and hostility towards foreigners attached.

Not impressed. And this news comes as no surprise as well.

Guess people just love to glorify stuff that's very different from their own, with zero thought if that's actually a good thing?

<comment><USER28> You're not wrong. I believe the effect comes from living in a racially and culturally homogeneous society.

I lived in Japan for several years on and off. Near the end of one of my longest stretches, I clearly remember walking by the glass window of a storefront in Osaka. I saw someone in the reflection that had an absolutely startling appearance, and gasped aloud. Taller, with different hair, eyes, and skin than anyone I'd seen in months. It was me.

The experience of returning to the USA was particularly jarring that time, too. I remember feeling surprised at how fat everyone in the airport was, how there were people with different skin colors everywhere, how loud and lacking in politeness social interactions were. I was born and raised in the USA but there I was, experiencing fight or flight response in completely ordinary situations.

I learned to forgive the Japanese after these experiences.

<comment><USER27> On point, thank you. And pretty good evidence of neural network [re-]training, too.

You know, I couldn't give two shits about xenophobic and racist people like them, really. Let them do that and be happy.

As we say in my country however: "be stupid but get the fuck off the road".

Bad influences on young people from old and prejudiced (and bitter?) people is never good. We need a world with more open-minded people and societies like the Japanese aren't helping matters at all. But to be as objective as possible -- not sure our societies help matters either.</comment></comment></comment>