Ethical Questions of Investing in Pot - <AUTHOR> http://dealbook.nytimes.com//2015/01/12/ethical-questions-of-investing-in-pot/ <comment><USER2> > So is cannabis socially responsible or ethically objectionable?

> The nation's biggest banks — JPMorgan Chase and Bank of America — thus far > refuse to allow marijuana companies to set up accounts. Even smaller local > banks refuse to provide services to the industry.

The author seems to have made up his mind already. The reason banks don't allow marijuana companies to setup accounts is regulatory and risk management related, not ethical.

This whole article reads very much like a press release.

> The investment, in a firm called Privateer Holdings .... was heralded as a > watershed moment for the fledgling cannabis industry, accompanied by > positive headlines like the one in The Los Angeles Times: "Venture capital > firm gives marijuana industry a shot of credibility."

> In Silicon Valley, the deal was greeted as the latest disruptive change-the- > world investment.

It isn't until well into the article that the authors notes:

> Legal marijuana businesses raised $104 million in 59 deals last year, > according to CB Insights, a research firm that monitors deal-making.

It seems like the industry has had credibility for a while now.

I think its sad that the NYTime's Dealbook would put out a piece like this.

<comment><USER3> > The author seems to have made up his mind already. The reason banks don't > allow marijuana companies to setup accounts is regulatory and risk > management related, not ethical.

I seem to keep having to say this, but I'll do it again: companies are not bound by ethics or morality. Applying them to a company is inherently wrong because companies cannot have any goal other than shareholder value maximization long-term. Here's why:

1\. Companies are not people, despite what the Supreme Court may say. They are legal constructs built around a set of rules.

2\. Everyone who could potentially represent a company - a board member, an executive - plays a role and can be replaced at any time should they fail to perform their role adequately.

3\. Executives are appointed by the board with one responsibility: to maximize the value of the company. This is the extent of a company's moral obligation: companies have a moral obligation to their shareholders to make money (or at least try in good faith to do so).

4\. Should the board of a company appoint executives with a different goal than maximizing value, the share price will reflect this in the form of a lower value.

5\. Assuming this is a public company, activist investors will accumulate voting shares of a company that is not maximizing its value (or undervalued). The activist investor will then either replace the board members with board members who will appoint executives with the goal of maximizing shareholder value, or they will pressure the existing board to do so themselves. Once the share price has recovered, the investor sells its shares and makes a profit. And the cycle continues.

So the reason banks don't allow marijuana companies to set up accounts is purely risk and regulatory related. If it was a moral decision, well, morals and ethics are different from person to person, so SOMEONE would do it. Or some activist investor would take over a smaller bank and force them to do it.

Individuals can have morals and ethics. If they control a company and choose to enforce their values through their company, well, that's their choice. But if the ownership of the company changed, so would the values.

<comment><USER4> > companies are not bound by ethics or morality.....

There are three mechanisms that can cause companies to prioritise ethics and morality.

1\. The voting public encourage their representatives to change the regulatory environment _based on their morality_. This is one reason why a whole host of unethical companies don't exist. Companies on the margins of morality suffer from extra risk that the regulatory environment will change too.

2\. The customers exercising their personal morality are reluctant to buy from an unethical company, or boycott it, thus affecting the value of the company.

3\. Key individuals find that there are moral and ethical limits to what they will do in pursuit of shareholder value, and they provide enough value in other ways that replacing them would be a net loss for the company (or activist shareholders actually share their views). Deliberately selecting your leadership team for poor ethics is likely to have some downsides too.

> Individuals can have morals and ethics. If they control a company and choose > to enforce their values through their company, well, that's their choice. > But if the ownership of the company changed, so would the values.

Exactly, and individually speaking, in my ethics, in role of voter, legislator, customer, shareholder, employee or executive of a company, morality and ethics certainly do play into my decisions. I believe that it is right that they should, and I expect the same of everyone.

In particular, you say

> [maximising value] is the extent of a company's moral obligation

Which is an assertion without evidence that I simply disagree with. Maximising value might well be what is promised to the shareholders, but it's obvious that just as with all promises there is a context and limits to that. No shareholder would expect the CEO of a company to sacrifice their life if it would increase the value of the company by a cent. Everyone understands that the trust we have that the management of a company is trying to make money for the shareholder exists in a context, and one of the large parts of that context is morality.

Your earlier statement almost seemed to imply that we shouldn't hold companies to standards of morality beyond the law, but that is just giving up. Expecting immoral behaviour from people in particular roles is a self fulfilling prophecy, and poisons the context.

</comment></comment></comment><comment><USER5> One thing that surprised me about becoming an investor is how morally active the investor community is. Before I knew anything about investors, I assumed they were just making ROI calculations.

I don't just mean that they like to invest in upstanding people who treat their employees fairly, because that's also justified economically. I mean that most investors don't invest in things they don't want to be part of, even when they think they'd make money.

For example, most investors won't invest in gambling, penny auctions or payday lending, since those things generally take advantage of unsophisticated consumers and seem like they're net-bad for the world.

On the other hand, it's easier to convince investors to invest in green energy, STEM education, and developer tools because they want more of that to exist and want to be part of it.

Investors cover the spectrum from very conservative to very liberal or libertarian. But whatever an investor's personal beliefs are, they are a significant factor in what they'll fund.

</comment><comment><USER6> No news here. This kind of thing happens all the time already. Catholic teachers pension doesn't want to invest in Budweiser, a Seventh Day Adventist run hospital fund won't want to invest in Tyson etc. etc. etc.

Is it really that surprising that people are choosy about what they invest in, and that translates into professional investors also being choosy (whether on behalf of their clients or themselves)?

<comment><USER3> Investors of this sort are an extreme minority. Nearly all professional investors are effectively amoral and will do whatever makes the most money (legally - because if it's illegal and you get caught, you lose money).

</comment></comment><comment><USER7> If we don't allow honest, regulated and tax-paying business to provide high quality recreational drugs we are in fact giving an incentive for criminals to fill this market need.

Our dumb war on drugs transfors a public health issue into a public security issue.

Abusus non tollit usum: abuse does not take away use, i.e., is not an argument against proper use.

</comment><comment><USER8> If people are willing to buy, others are willing to make a profit. As people have free will, I see absolutely no ethical issue here.

<comment><USER9> Eh.

One of the many libertarian lies is that all uncoerced transactions are somehow value-neutral. For example, it's certainly a valid question whether it's ethical to support a weapons manufacturer, for example, no matter who's buying.

In this particular case, I think this is an ethical _positive_. I would classify MJ funding as a net good, as it will encourage legalization -- prevent a lot of wasted resources and people.

<comment><USER10> An uncoerced transaction must result in each person getting something _they personally_ value more than what they are giving up or the trade will not take place, meaning that if you measure society by how much people believe they have, all free transactions produce a net gain. That's not "libertarianism", that's just micro-econ 101. (Any who deny the basic correctness of microecon 101 are so far lost to me that any discussion between us is pretty much useless.)

That doesn't mean that if you use another measure that all such transactions have a net positive value to society, though, and I don't feel even remotely non-Libertarian for saying that... where "libertarianism" would come in would be in arguing about what those standards should be and who gets to pick them. A libertarian will be far more inclined to accept the two participant's personal valuation and let micro-econ function with less constraint, but not 100%; 100% would make them anarcho-capitalists, an even rarer breed of person.

<comment><USER11> I think you're misunderstanding what's being discussed. Two people trading money for guns is a net gain specifically for those two people, but is not necessarily a _societal_ gain.

<comment><USER10> Read my message again, more closely.

<comment><USER11> If you're referring to _"...if you measure society by how much people believe they have..."_, I still don't agree with you. Transactions can cause externalities that can be a negative for third parties.

If you're referring to something else, then I'm curious.

<comment><USER10> (X -> Y) !-> X. Or, in English, "Saying if X then Y is not a claim that X is 'true'". So, _if_ you measure society by how much people believe they have, _then_ blah blah blah, is NOT a claim that such a measurement is "correct"... to the extent that a measurement even _can_ be "correct" or "incorrect", rather than "useful" or "useless". Had you kept reading, you would have seen an acknowledgement of that in my next paragraph (which is still there if you'd like to check, HN posts can't be edited after an hour).

Incidentally, it's going to be very hard to understand any sort of serious analysis of anything above the level of brute propaganda if you read (X -> Y) as a claim that X is true... you ought to consider the possibility you've been misreading lots of things for a long time. No sarcasm.</comment></comment></comment></comment></comment></comment></comment>


Ask HN: Should I use my .co domain or my *app.com domain? - <AUTHOR>

Hey HN
I have a SaaS web application on highscoreapp.com which I'm working on - That's fine but after .co domains became available I decided to go after highscore.co.
Which do you guys think is the better one to use? .co is shorter and more precise but .com domains are usually easier to remember.
What are your thoughts? <comment><USER2> For an app I think using highscoreapp.com is fine, but for a true "brand" it might make more sense to use .co.

 _.com domains are usually easier to remember_ \- with Google (or your fav search engine) you pretty much don't have to remember anything.

<comment><AUTHOR> Yes, there's also the fact that it's easier for your regular users to type highscore.co than highscoreapp.com - it's also easier to scan an see what it says highscoreapp almost looks like an anagram when you glance at it.

</comment></comment><comment><USER3> I would go with the .com one. As a second choice you can look into .re, highsco it's still there: <http://www.101domain.com/register_domain_name_re.htm>

BTW: your landing page is intriguing (making work less boring) but not much informative.

<comment><AUTHOR> Thanks, that's a good point.

</comment></comment><comment><USER4> The pink hurts my eyes.

But yea, like pietro said, I'd go with .com or .re</comment>


Sourcegraph Raises $20M to bring more live collaboration to coding - <AUTHOR> https://techcrunch.com/2017/10/06/sourcegraph-raises-20m-bring-more-live-collaboration-to-programming/ <comment><USER2> Sourcegraph CEO here. Thanks for posting!

Here's some more info: [https://about.sourcegraph.com/blog/building-toward- the-sourc...](https://about.sourcegraph.com/blog/building-toward-the- sourcegraph-master-plan/)

Also check out more about our products and try Sourcegraph Server's code search on open-source repositories at [https://sourcegraph.com/](https://sourcegraph.com/).</comment>


The MIT Probabilistic Computing Project Reading List - <AUTHOR> http://probcomp.csail.mit.edu/readings/ <comment><USER2> That will probably take a while.

MIT Probabilistic Computing home: [http://probcomp.csail.mit.edu/](http://probcomp.csail.mit.edu/)</comment>


The Salish Woolly Dog's Hair Was Used to Weave Clothing and Blankets - <AUTHOR> https://www.thecanadianencyclopedia.ca/en/article/salish-woolly-dog <comment><USER3> Some extinct dog breeds are pretty wonky. The Turnspit dog was specifically bred to nicely fit into a kind of hamster cage, so that the dog would power a turning spit for roasting meats. Of course, the dog becoming obsolete led to its extinction.

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

</comment><comment><USER4> Having studied with a Coast Salish weaver, apparently there are some ongoing attempts to (re)create an analogous modern breed of dogs. Of course, the high accessibility and low cost of industrial wool yarn makes that the default for weavers carrying on this technique.

</comment><comment><USER5> There's some really cool clothes and the like at [https://slcc.ca/](https://slcc.ca/) \- Squamish Lil'wat Cultural Centre - <USER2> Whistler BC.

</comment><comment><USER6> > ...cozy sweaters made out of their beloved canine's shed hair.

[https://www.thedodo.com/these-people-are-wearing- sweat-45331...](https://www.thedodo.com/these-people-are-wearing- sweat-453318420.html)

<comment><USER4> Indeed. But it's worth noting that these dogs were prevalent before sheep's wool was introduced to the Pacific Northwest. That's noted above the "extinction" section, but was a driving factor in the breed's decline as well. The industrial revolution aside, the need to preserve the breed's coat qualities for handweavers dropped off due to the introduction of other, superior fibers. Thus the cited cross-breeding with European dogs is very likely just a symptom of the other trends rather than a cause the breed was lost.</comment></comment>


Ask HN: Are you alone in San Francisco on Thanksgiving? - <AUTHOR>

Happy Thanksgiving, everyone!
If you're in San Francisco and alone on this special day, drop me a line. We'd love to have you!
Twitter: @MattMireles Email: firstname.lastname@example.com
My girlfriend is making cranberry sauce, stuffing and sweet potatoes to go along with our gigantic turkey. GautamSivakumar (http://news.ycombinator.com/user?id=gautamsivakumar) of MediSaS (who I first met through HN) will be joining us from England for his first ever American Thanksgiving.
I've been helped by strangers and friends and strangers who became friends. When I was 20, it was the people who picked me up on my cycling/hitchhiking mis-adventure down the California coast and let me stay in their homes on Xmas. When I was 25, it was the New Yorkers who welcomed me into a new city and taught me how to stay safe in my job as a paramedic. When I was 29, it was the entrepreneurs who introduced me to Silicon Valley and showed me how to get from Zero to 1.
And now, I feel compelled to return these favors in some way, small or large.
So...if you're in San Francisco and you need a place to call home for Thanksgiving, let me know. We saved you a seat at the table.
-Matt Mireles CEO, Swig!
SwigMe.com: The Liquor Store in Your Pocket. Get Beer, Wine & Booze Delivered To Your Door in Under an Hour <comment><AUTHOR> Amazed by the turnout. What an awesome thanksgiving!

<http://instagr.am/p/SWvz6dOENk/>

<comment><USER2> That is fantastic. I hope you guys had a blast. :)

</comment></comment><comment><USER3> This is beautiful and shows one of the coolest parts of a great community like Silicon Valley. Thanks for giving back, Matt.

I sincerely hope all of you have a great Thanksgiving!

<comment><AUTHOR> Thanks man. I count myself one of the lucky ones.

</comment></comment><comment><USER4> Matt is one of the coolest people in the Bay Area and it is definitely worth spending the day with him if you're on your own today.

</comment><comment><USER5> I'm not in America, but would really like to know how many people actually asked to join you?

Happy Thanksgiving!

</comment><comment><USER6> It's only a 12 hour drive from Phoenix! I can make it!

(I'm kidding, that would put me in SF around 1:00am -- hanging out in the hackerspace with my girlfriend making stuff instead :) )

<comment><AUTHOR> Do it man! We're in North Beach, near Coit Tower.

See: [http://www.staysf.com/upload/attraction/20080519180416_coit%...](http://www.staysf.com/upload/attraction/20080519180416_coit%20tower.jpg)

</comment></comment><comment><USER7> Bummer. I kind of wish I hadn't agree to go to my gf's family's house. I would rather be nerding out.

</comment><comment><USER8> Very nice of you! on a related note, I'm curious. SwigMe.com seems very interesting, but I would think there are a lot of legal loopholes you need to jump through, no? What happens when teenagers try to order and present a good fake ID at the door?

<comment><USER9> I always thought that you can see fake IDs only on TV.. Do kids in USA really have "fake ids"?

I mean cmon ..this is hilarious

<comment><USER10> Yes, absolutely, and not only in the US.

In Germany the legal drinking age is 16, but you need to be 18 to get into most clubs. When you're 16, you get an ID card in Germany. It's relatively easy to change the birth date on those using small, thin stickers that exactly match the font and background on the card.

<comment><USER11> Wow, is that common where you are? It's been five years since I was a teenager in Germany, but while tons of my American friends had fake ideas, I never even heard of faking your birth date that way. Now, using someone else's ID card was very common.

</comment></comment></comment></comment><comment><USER12> This is truly awesome, it's so nice to see that (although there is at times bickering) the HN community still is alive at heart.

</comment><comment><USER13> Way to go! Good turnout, too!

It makes me sad that all the HN stuff typically appears to revolve around SF and SV area, though. I feel left out. I think the problem is that PG and YC are on that side of the world, and the rest of us get screwed. I'd like to see a map of IPs geoplotted for the last hour, last day, last week, month, year, all time for those hitting HN, those commenting, those with the most karma points, etc. I'd like to feel like it isn't all west coast U.S., NYC, and India.

</comment><comment><USER14> Awesome! That's really cool, Matt. Cheers to helping everyone get a little higher on Maslow's pyramid today.

On that note... Here's a link to donate to the SF food bank's holiday food drive. [https://org2.democracyinaction.org/o/5420/shop/custom.jsp?do...](https://org2.democracyinaction.org/o/5420/shop/custom.jsp?donate_page_KEY=808)

Happy Thanksgiving all!

</comment><comment><USER15> I'm in Santa Clara, (so I won't be able to come up) but I'd like to help out. Any way I can chip in to the meal?

<comment><USER16> do you have a place to eat dinner?

<comment><USER15> Thankfully, I ended up finding a place just less than an hour ago. :)

<comment><USER16> ah, great. We are stil cooking, not ready for about 2 more hours I think.

</comment></comment></comment></comment><comment><USER17> Although im not in san fransisco this post alone made my day!

</comment><comment><USER18> This is awesome. Kudos to you for posting, Matt.

I just moved to the city (it'll be 1 month tomorrow), but luckily I had great friends waiting for me who I'll be enjoying the evening with.

But the awesomeness of this post almost makes me want to join you regardless haha

</comment><comment><USER19> That is super cool. Matt Mireles you have a big heart. You just earned a new customer for Swig

</comment><comment><USER20> Matt is a mensch! Great to see you're continuing to fly the entrepreneurial flag.

<comment><AUTHOR> Thanks Chris. Happy Thanksgiving to you, TK and all the little Yehs.

</comment></comment><comment><USER21> Awww Matt, happy thanksgiving - hope get to celebrate with you sometime!

</comment><comment><USER22> It's a shame this isn't the UK - I'm going to be alone for christmas this year and it would have been cool to spend it with like minded, kind people such as yourself and Gautam.

<comment><USER23> Geekup (blackpool) generally have a christmas meal. It isn't the same but it's as close as your going to get. Good bunch of guys that go from the NW, most of @wearefarm will be there which are based around the corner from you

<comment><USER22> Blackpool is 45 minutes away on the bus - thanks for this, I was really dreading sitting alone at christmas!

<comment><USER23> Give us a follow on twitter @nullUk

There is a preston Geekup to but i'm not involved with it as much as the blackpool one as I work with a few of the people who help organise & run it even though we all work in Chorley.

<comment><USER22> Thats a humongous coincidence, I work at the end of Cowling road just by the Spinners!

The world is such a small place.

</comment></comment></comment></comment></comment><comment><USER24> You're so nice Matt. Big hugs to you!

Sometimes I see random acts of kindness (like yours), and they still surprise me.

I bet every one of us did a few, and received a few.

</comment><comment><USER25> Hope someday, when I visit Silicon Valley, you would host Thanksgiving too. Would love to join you then.

For Now, Happy Thanksgiving from Nepal :)

</comment><comment><USER26> Hey Matt-

I just shot you an email- I'm staying near Height and Clayton, and this is my first Thanksgiving alone- How far is it to North Beach ?

</comment><comment><USER27> Happy thanksgiving to you Yanks from the south. What I find cool is that you say you started your entrepreneurial jaunt at 29. I'm 30 and just taking step 0.23 in my self-employment scheme but I often feel like I'm maybe too old to be trying out for this particular team. It's encouraging that it seems it's never too late to just try building something. So thanks for that :)

</comment><comment><USER28> You are awesome. Cheers from Pennsylvania!

</comment><comment><USER29> Would take you up if I were down there! All the way up in Vancouver, BC but I'll take a raincheck :).

<comment><USER30> I wish I had done this for our Thanksgiving.

</comment></comment><comment><USER31> An especially happy Thanksgiving to anyone here from out of town or away from friends & family!

<comment><USER32> Dood, go to a hackerspace. lots of people having Thanksgiving at Noisebridge and Hacker Dojo, I am sure.

I know it sucks being alone on a holiday, but you know, yer only there by choice. Lots of friendly people here inviting you over.

If yer still depressed Saturday, come to the MADE (Oakland's videogame museum) and play your heart out. <http://www.themade.org>

</comment></comment><comment><USER33> Well done, Matt.

We haven't hung out in a while. Let's get together when I come to SF in January.

</comment><comment><USER34> I am alone but not in SF. It is really nice of you. You are truly having a great Thanksgiving day.

</comment><comment><USER35> This was an awesome event! Just wanted to give a shutout to Matt for hosting all of us. It was great to meet tons of people from around the world who were all in the same position. It really made my day to know this community supports each other so much.

</comment><comment><USER36> Thank you so much for being an awesome human being. People like you are my motivation.

</comment><comment><USER37> This is such an outrageously awesome thing that you have done.

Thankyou.

</comment><comment><USER38> This is beautiful.

I had a short gig in SF earlier this year and finding this kindness would have definitely helped me make my stay there a more enjoyable experience.

Abrazos from Mexico City.

</comment><comment><USER39> I think it's people like you who give me hope about the future of humanity! :)

Thanks and Happy thanksgiving.

PS: I would totally drop by, if i wasn't living about 8000miles away! :D

</comment><comment><USER40> This is just plain nice. It's not often you get to say than on HN :)

</comment><comment><USER41> This doesn't apply to me but this is absolutely fantastic. It's great to see people with kind souls doing nice things.

Happy Thanksgiving.

</comment><comment><USER42> Wow how nice of you. This is why I like HN especially after being pushed around in Walmart :P I would've ping if I was around SF.

</comment><comment><USER43> You've gotta bring swig me to NYC! I'd use it!

</comment><comment><USER44> Too bad it takes caltrain 1.5 hours to get up there from SJ. oh well. Thanksfor the offer and happy thanksgiving

<comment><AUTHOR> We haven't started eating yet. You can make it! If you want, I can pick you up from the Caltrain.

<comment><USER24> Sown, you should go! Matt, you rock!!!!

<comment><USER44> I'd like to but it'll be 4 or 5 by the time I could get there. i'd probably just break their toilet or something on accident, as I'm prone to do at parties.

edit: And yes, Mr. Matt rocks. He even offered to pick me up at caltrain.

</comment></comment></comment></comment><comment><USER45> Wow! I wish I was in SF. Hopefully someone as friendly as you will be doing this in London (UK) next year.

</comment><comment><USER46> Let us know how many people show up!

</comment><comment><USER47> That's very nice of you, Matt. Wish I was near San Fran! Have a great time nevertheless.

</comment><comment><USER48> Matt, thanks for the invite! Although I wasn't there this is really heartwarming :)

</comment><comment><USER49> This is incredible. Great thing you're doing! How about that hospitality. :)

</comment><comment><USER50> If only I am in San Francisco..... Have a great thanksgiving!

</comment><comment><USER51> One more thing to give thanks for is people like you, Matt.

</comment><comment><USER52> An awesome gesture. Happy thanksgiving from Singapore!:)

</comment><comment><USER53> Don't be lazzy make a language like Guido did

<comment><USER9> what? xD

<comment><USER54> Probably a reference to Van Rossum developing python during a lonely christmas.

<comment><USER9> Oh, nice :) Thanks mate

<comment><USER24> LOL!

</comment></comment></comment></comment></comment><comment><USER55> This is by far a great gesture!

Kudos Matt!

</comment><comment><USER56> Great gesture dude. Thanks for giving back.

</comment><comment><USER57> This is amazing. Kudos to you kind sir.

</comment><comment><USER58> Classy move, Matt! Happy Thanksgiving.

</comment><comment><USER59> Super cool man. Have a great holiday!

</comment><comment><USER60> awesome idea! wish i could have made it (even though i'm in another part of the world)

</comment><comment><USER61> good show Matt, way to celebrate the holiday

</comment><comment><USER9> nice marketing..but still remarkable offer one big PLUS</comment>


'No Place to Hide,' by Glenn Greenwald - <AUTHOR> http://www.nytimes.com/2014/05/13/books/no-place-to-hide-by-glenn-greenwald.html?_r=0 <comment><USER2> NYT shows its bias with passages such as

"In one passage, Mr. Greenwald makes the demonstrably false assertion that one "unwritten rule designed to protect the government is that media outlets publish only a few such secret documents, and then stop," that "they would report on an archive like Snowden's so as to limit its impact — publish a handful of stories, revel in the accolades of a 'big scoop,' collect prizes, and then walk away, ensuring that nothing had really changed." Many establishment media outlets obviously continue to pursue the Snowden story."

It's trivial to point to CNN, NBC, CBS, NYT, WaPo etc and show that really they haven't kept up with the Snowden papers in depth and certainly haven't emphasized any of the relevant points in their stories-- for instance, a Google search of "JTRIG CNN" or "JTRIG NBC" or "JTRIG New York Times" comes up with nothing, because they didn't even write stories on that revelation-- perhaps intentionally as a result of collusion with the government to protect the terms of their access to officials. JTRIG was a super-important reveal which was not covered whatsoever by the MSM, and is described as "The scope of the JTRIG's mission includes using "dirty tricks" to "destroy, deny, degrade [and] disrupt" enemies by "discrediting" them, planting misinformation and shutting down their communications." by Wikipedia.

In summary: NYT is wrong when they attempt to defend themselves against Greenwald's claim that they're pro-establishment because they refused to write stories on the most damaging Snowden files.

EDIT: Out of curiosity, I additionally decided to investigate whether the NYT and MSM covered Operation Earnest Voice, the NSA's program to sway public opinion via shilling and sockpuppeting.

They did not cover the story whatsoever. Operation Earnest Voice detailed extensive false-person based propaganda efforts against the US and international public.

The NYT is a joke.

<comment><USER3> Agree with regards to the NYT. I cancelled my subscription when they published a front-page NYT Magazine story on how wonderful Anthony Weiner was, how he had reformed, and that he was a real family man running for mayor of NYC. It was so transparently a propaganda piece that I read it with dismay, seeing immediately that it was nothing but arranged by a PR machine. Then of course just a couple months later we found out that he hadn't changed his behavior one bit. Of course there was no acknowledgement whatsoever by NYT that they'd either been had or that they participated in a thinly-veiled PR strategy.

<comment><USER4> You're assuming that the PR firm put one over on the _Times_ , but it's entirely possible that they knew what they were publishing and were quite happy with it.

Journalists have a term for stories like that one: the "beat sweetener." ([http://www.politico.com/news/stories/0309/19570.html](http://www.politico.com/news/stories/0309/19570.html))

The idea is: journalists need sources to be able to do their job. But sources can be difficult to cultivate relationships with. Enter the "beat sweetener" \-- a completely uncritical profile of a policymaker, written for the sole purpose of buttering that person up so they give greater access in the future to the reporter and/or publication that produced it.

</comment></comment></comment><comment><USER5> It tells all you need to know about the establishment nature of the NYT that Kakutani, in her defense of establishment media against Greenwald's critique, writes:

>"Many establishment media outlets obviously continue to pursue the Snowden story."

Correction - it's not the _Snowden_ story, it's the _NSA surveillance_ story. The story isn't supposed to be about the whistleblower.

<comment><USER6> > that Kakutani, in _his_ defense of establishment media

Michiko is a woman's name.

<comment><USER5> I quickly clicked back to get the author's surname, and didn't pay enough attention. Also, I'm subconsciously sexist and have to make an effort to refer to the unknown and anonymous with gender-neutral pronouns (obviously!)

I'm usually better than that:)

<comment><USER7> Using 'he' as a gender-neutral pronoun isn't sexist, it's English.

</comment></comment></comment></comment><comment> grey-area It's interesting to contrast this article with Greenwald talking about the content of the book:

[http://www.democracynow.org/2014/5/13/collect_it_all_glenn_g...](http://www.democracynow.org/2014/5/13/collect_it_all_glenn_greenwald_on)

The review fails to tackle allegations of economic espionage for the department of commerce, interception of hardware to install backdoors, targeting allies, targeting dissidents not terrorists, and an ambition to collect all the information on the planet.

Given the lack of engagement with the central allegations of the book, and the sniping about his character in this review, I think it demonstrates very well that _media outlets publish only a few such secret documents, and then stop_. The NYT has just occasionally been brilliant in covering this story (mostly when involving Laura Poitras), but mostly has avoided the central issues and has completely avoided challenging the talking points and framing of this story by the administration as about terrorism and a naif who has put the country in danger, encouraged by the 'activist' Greenwald.

</comment><comment><USER8> In this review, the author of a paper that brought you the Iraq war is unhappy with Greenwalds impression of his and similar media properties.

<comment><USER2> On one hand, I think that Greenwald fails to understand the nature of the NYT: The NYT seeks to turn a profit, and they do so via the formation and recapitulation of the most middle ground, most mainstream views and opinions.

On the other hand, this kind of "perfectly normal and always palatable fare for the sake of always being popular" stuff is certainly very weak journalism. They're so low-brow that they can't even write a story that refutes their readership's expectations because they're afraid of losing business. When it comes to the government, the criticism of the NYT will always be pedestrian and surface-level rather than deep. This ends up serving the government because it implies that solutions will also be merely surface-level rather than far-reaching.

<comment><USER7> >On one hand, I think that Greenwald fails to understand the nature of the NYT: The NYT seeks to turn a profit, and they do so via the formation and recapitulation of the most middle ground, most mainstream views and opinions.

Let's make an important distinction here: the NYT does not _merely_ seek to turn a profit. That is, they do not try to cover their operating costs plus some extra percentage. Even at their size, they could engage in responsible journalism and still achieve this goal.

Rather, the NYT seeks to _maximize_ profit, above all else. And, if responsible journalism does not contribute to that goal, then responsible journalism will not get done.

</comment></comment></comment><comment><USER9> How can we protect ourselves from this type of interception? It seems impossible. Why would any non-american customers buy US made devices? Any protections that are added can/will be bypassed if the US gov gets physical access (or even remote).

It seems like our US vendors are going to take a hit from this.

<comment><USER10> Yes, but not immediately, since the NSA thing came as a surprise, so:

a. nobody had a plan to switch at that time.

b. foreign companies did not know they might be able to compete simply for privacy reasons.

I think this will change over the next decade. People move slowly, but now that the trust is lost, it will be difficult to restore, even if the US government would act. (They won't.)

<comment><USER11>
      > b. foreign companies did not know they might be able
      > to compete simply for privacy reasons.

Tell that to employees of companies such as Airbus... They have always assumed that they were under constant attack from government-level entities, with good reason.

<comment><USER12> An exception or two to the rule does not invalidate the rule. Most ordinary commercial businesses using US-made devices or online services don't deal with technology their government considers a national asset, and as a result don't have to be as paranoid as Airbus, BAE, Petrobras, etc.

</comment></comment></comment></comment><comment><USER13> The "uncompressed" pdf link gives me a 500 error, but not this one: [http://glenngreenwald.net/pdf/NoPlaceToHide-Documents- Compre...](http://glenngreenwald.net/pdf/NoPlaceToHide-Documents- Compressed.pdf)</comment>


A GTK+ 3 update - <AUTHOR> https://blog.gtk.org/2018/06/23/a-gtk-3-update/ <comment><USER2> > GTK+ 3 stopped changing in drastic ways, which was well-received, and we are > finally seeing applications moving from GTK+ 2.

It's almost as if devs care more about stable APIs than about endless churn for minor features!

<comment><USER3> I don't know if the GNOME/GTK folks will ever really understand, though. The thing is, it would be OK to have new features and even feature breaks. It's just, every GNOME release had a corresponding GTK release and a number of new things broke in GTK for it. You couldn't use a third party theme without waiting to see what was going to break next. There's no strong guarantees unlike with say, Qt, where generally speaking true API breaks are much rarer.

People probably would've had less trouble and been less upset if Gnome wasn't in a privilege position and had to just be another user in the ecosystem.

<comment><USER4> Number of new things broke == Theming. Which was specifically marked as unstable, together with a reason why it was marked unstable (being reworked with CSS).

Gnome and other apps didn't break, because they weren't concerned about theming themselves.

<comment><USER5> Having a modular desktop environment kind of loses its purpose if a module (theme, extension) can bring the entire user session down.

Just this week, me upgrading a GNOME extension resulted in the user session completely crashing, getting me back to the login screen, and making me lose about half an hour of work.

Now, of course, I could put the blame on the sole developer that developed that specific extension (one of the preinstalled ones in Ubuntu now), but I don't. I blame GNOME that a botched extension update lead to the entire session crashing, instead of doing something normal (like reverting to the previous version and showing "update failed").

<comment><USER6> This fragility is architectural though and possibly even cultural now. People who promote gnome and make decisions adopting it for mainstream distros somehow believe that such poor level of quality is acceptable. It's how systemd got into mainstream too.

<comment><USER3> Redhat has killed the Linux desktop with this kind of mentality. No matter what I do, things are broken nowadays. Wayland was broken promises; most of the same issues exist in Wayland still, except now sometimes pasting crashes my desktop, and I can't take screenshots without the compositor's permission. Systemd actually delivered on some of its promises, but not without some brutal side-effects. Same for PulseAudio really. I don't like using Linux anymore as I did before all of this stuff became basically mandatory.

We did all of this refactoring, rebuilding, and yet... Where's heterogeneous graphics card support? Where's heterogeneous DPI support? Why does multiple desktops still suck? Even using all open source drivers, Linux feels dated and immature at the same time :( I miss feeling like it was ahead of Windows.

<comment><USER7> I haven't used RedHat since they started to charge for it. Fedora 27 was ok.

I think Linux generally works on the desktop. It's true that GNOME 3 is still buggy. I've had Nautilus crash on me while copying files and other horrible things.

Wayland hardly has any apps with native support, it crashes a lot and the hardware support sucks too. Also (afaik) applications such as Wine can never be ported to Wayland.

However GNOME and Wayland are just one bleeding edge.

If you run X with some stable WM or DE, things work so well it's almost boring.

<comment><USER3> Sure. If you run at 96 DPI, with a static monitor configuration, with a single GPU, no expansion cards, with English language only.

However:

\- with multiple GPU configurations, all bets are off.

\- Thunderbolt docks and even the Thinkpad dock can be buggy and cause crashes. I've had a few instances of Xorg crashing on dock.

\- HiDPI sucks. Linux took the wrong approach from the get go. Now each Xorg client has to be DPI aware, but if it isn't, there is no graceful fallback. There's also no easy way to determine what the DPI should be, and any hopes that you can have monitors with differing DPIs is right out. Wayland tries to fix this, but in my experience so far things look blurry and horrible.

\- IME sucks really badly. It almost was good for a bit, with IBus. But now I don't even know what the standard is or how to configure it. How do I even get Japanese IME in KDE? I can get it working in GNOME but good luck getting that to work with apps that don't use GTK.

\- Sleep is still complicated. There are multiple DBus APIs for power management, and they're not compatible. GNOME does OK here. KDE does worse, and I find myself needing custom code to inhibit sleep in some circumstances. Not user friendly, though workable for me.

\- Resume is more complicated.

\- It feels like boot splashes have only gotten worse since the old days. Entering in LUKS keys is still weirdly unfriendly, especially if your boot splash misbehaves.

\- X11 has security issues. No shock there, but it makes application isolation like Snap and Flatpak pointless.

\- Audio can be tricky. I was a PulseAudio early adopter and like it better than raw ALSA since it covers more use cases like Bluetooth and provides some extra features. That being said I've found it can be problematic on a lot of hardware, sometimes I lose audio until I kill pulse and it's hard to debug. Worse, lately some apps are having difficulty selecting their own input/output devices, making conference calls a nightmare.

This is really just the beginning. Windows sucks too, don't get me wrong, but Linux is definitely not "so stable it hurts"

<comment><USER8> > I was a PulseAudio early adopter and like it better than raw ALSA since it > covers more use cases like Bluetooth and provides some extra features.

The last time I had Bluetooth audio actually work, it was before it needed to be routed through pulse. Alsa applications played Bluetooth audio just fine. Then at some dist-upgrade it pulled in a new bluez and that no longer worked, and I literally could not get it working through pulse.

I actually have this experience 100% of the time with pulse: introduce pulse and everything breaks. When things talk to lower level pieces it works fine.

By the way, alsa itself is a little bit of a case study in confusion between api and implementation... My freebsd machines are using the oss audio API with none of the problems that plagued oss on Linux in the 90s.

<comment><USER3> I am aware that there was a bluez-alsa adapter. I am sure it worked, but with pure ALSA there was a lot of issues that made hotpluggable audio devices tricky. I often had to mess with asound.conf and alsamixer to get things working correctly - and that sometimes also meant that I had to restart all my audio-using applications if I wanted to switch.

And all of those problems occurred WITHOUT Bluetooth being thrown into the mix. I had multiple audio devices, including Intel HD Audio, an Audigy LS of some kind, and a USB microphone that presented it's own audio device to the system. (This was a while ago, I have no setups that look like this anymore.) I'd often have the devices come in a different order, and when this happened my mixer levels would be all messed up, and often times if I booted with the microphone plugged in... it'd be the default output device.

With PulseAudio, I have less trouble - things do generally get setup how I expect it, and when they don't I can switch everything at runtime to be correct. It's worth noting that the trouble I have had with stability is heavily tied to hardware. Of course that doesn't mean it's not a PulseAudio issue, but I think a lot of people have trouble that they may not realize is not actually the normal PulseAudio experience. Even latency varies per hardware, in what I can only assume has something to do with how the audio hardware handles timings.

</comment></comment></comment></comment></comment></comment></comment></comment></comment></comment><comment><USER9> I still really prefer GTK2 apps. The GTK3 file picker is awful, and I'm generally not a fan of apps that use the new fancy window borders like gedit.

I'm glad Mate is around to keep maintaining gtk2/gnome2.

<comment><USER10> My gripe with GTK3 are tiny, auto-hiding scroll bars. After a long day at work they become impossible to use even with a mouse. Hitting them with a Wacom is basically impossible.

What's worse is that you can find many different recipes on the web on how to enlarge th scrollbars/disable auto-hide, and most of them don't work or work only some of the time.

<comment><USER11> I agree, they are _obnoxious_ to use as classical scrollbars.

They've also eliminated the ability to incrementally scroll by clicking above or below the bar, now it jumps absolutely to the position you clicked! So when you miss the bar, and it jumps to wherever you clicked, it's unobvious how to get back to where you were before the misfire. No more arrow buttons to click on either. It's an egregious UX regression as a trackpoint-only user.

My impression is that the GNOME devs are all using touchpads and/or scroll- wheels for scrolling now and don't click on scrollbars, so they prefer to not see them and couldn't care less about how hard it is to locate and operate them via clicking.

Supposedly GNOME is the accessibility champion of FOSS desktops, but that might have more to do with the dismal state of FOSS desktops than anything else.

<comment><USER12> There are workarounds for this, e.g. `gtk-primary-button-warps-slider=false` in ~/.config/gtk-3.0/settings.ini

But I agree that it is obnoxious. I still haven't found a working GTK3 theme which is (a) dark (b) not "flat" and (c) has usable scrollbars. XFCE-Dusk is almost there, but seems to have been broken by newer GTKs, so I'm currently using Vertex-Dark.

<comment><USER11> That helps, thanks, though I hear this kind of thing is going away in GTK4. The developers are actively _hostile_ to retaining any functionality unused by the defaults, regardless of how impactful that functionality may be for the minority using them.

I simply don't comprehend how one reconciles that attitude with accessibility needs, when accessibility is inherently giving a fuck about the minority.

It might be a simple matter of scarcity in developer resources. I presume most of the people bitching about GTK/GNOME in forums like these are actually capable of hacking on the project but don't, myself included. So maybe we should just be more appreciative of what we do have, there's nothing to refund after all.

</comment></comment></comment></comment></comment><comment><USER13> As much as I always like GTK2 as a solid workhorse, and GTK3 (although unstable) was adding actual improvements, I lost a lot of faith in the GTK team with their original hare-brained versioning scheme for GTK4. When they recanted that plan and announced that GTK 3.22 would be The Stable Version, I felt a bit better, and honestly it's been pretty great so far.

Going back on that promise and saying that GTK 3.22 isn't actually The Stable Version after all feels a bit like a betrayal... but on the other hand, if gdk_window_move_to_rect() is the function I'm thinking of, all is forgiven.

I was trying to create a custom popup the other day and (thanks to limitations in the GDK API) it wasn't possible under Wayland. Trying to dig into why, I found out that GDK had an API that did exactly what I wanted, which I couldn't use because it was internal and unstable. Assuming that API is gdk_window_move_to_rect(), this is the best news I've heard all day.

<comment><USER14> > ... but on the other hand, if gdk_window_move_to_rect() is the function I'm > thinking of, all is forgiven.

Good news. From the article:

"gdk_window_move_to_rect as public API"

</comment></comment><comment><USER15> For the applications I use, gtk3 did not add any significant improvement over gtk2. Often it was the opposite (goodbye menubars anyone?). It seemed like all my dank gtk themes broke every time there was a minor version bump.

<comment><USER16> And how, if all the menu bars are gone, can these GTK3 apps still waste more screen real estate than when they used GTK2?

</comment></comment><comment><USER17> A post about GTK on HN? I bet the comments section is full of people complaining about GTK and not talking about the post.

<comment><USER18> you read the post? because it's just "hey remember how we said this was the stable version? it isn't now" which couldn't be more perfectly CADT if it tried.

<comment><USER19> And they've changed that policy, on a limited basis, specifically to help out the big projects who are now porting to GTK+3 as a result of that successful stability plan for 3.22.

A project being responsive to the needs of its big users? Shocking and unacceptable.

</comment></comment></comment><comment><USER20> Bring native windows please!

<comment><USER21> Which OS?</comment></comment>


The first step to fixing the Android Marketplace - <AUTHOR> http://fury.com/2010/09/the-first-step-to-fixing-the-android-marketplace-has-nothing-to-do-with-the-android-marketplace/

<comment><USER2> can scandinavians sell apps yet?</comment>


What happens after rich kids bribe their way into college? I teach them - <AUTHOR> https://www.theguardian.com/us-news/2019/mar/25/what-happens-after-rich-kids-bribe-their-way-into-college-i-teach-them <comment><USER2> Entitled and demanding behavior from deeply incompetent undergraduates is also increasingly common at big state universities. We might be tempted to blame a corrupt admissions process for that as well, but it's so widespread that it seems more like a cultural shift. I suppose it could be both -- admissions offices unable or unwilling to resist cultural changes, with the result that academic preparedness is no longer valued in the admissions process.

</comment><comment><USER3> Universities are a business: They want to serve as many customers as possible. To deny someone admission due to poor academics is to deprive the university of revenue.

Similarly if a student were to be an unsatisfied customer (due to low grades), and take their business elsewhere (take a semester off, then transfer elsewhere), it would also deprive the university of revenue.

Far too many students don't come anymore for specific classes, teachers, or degrees. They want the experience, to check a box for their parents and future employers.

Having taught at a univerisity, I experienced much of this first-hand, including the experience of having students grade teachers, and their dissatisfaction with their grades influencing whether a university asked an adjunct professor to return the following semester. Grade inflation is real.

<comment><AUTHOR> > To deny someone admission due to poor academics is to deprive the university > of revenue.

I understand and agree this would be the case for low ranked universities but the article supposedly refers to an Ivy League uni or at least something close. Don't these universities have fixed admission numbers along with the ability to pick from the best and brightest? They don't have to fight for students, students have to fight to get into the uni. In this case it just doesn't make sense to lower the bar.</comment></comment>


The Nonstop, 24-7 CEO Salesman (2000) - <AUTHOR> http://www.inc.com/magazine/20000801/19766.html <comment><USER2> I admire this guy's intensity, but I can't help but think he would do better to hunt down and train clones of himself instead of trying to be the primary sales guy in his company. The sales board showed something like $80,000 in sales he did, but most of that is recurring business. He just gets credit for it (meaning that if he stopped actively selling, the company wouldn't necessarily lose those sales). If he split those sales up among his team and spent his time coaching his staff and finding motivated sellers for his team, I think he could do a lot better (and hit the $100mm mark that he's striving for).

</comment><comment><USER3> Working out in the morning seems to be a theme I'm noticing, as I read these little biographies about how people work. (Or people worth writing about, anyway. :)

<comment><USER4> Yeah and another of those themes is how the founders at id, Microsoft, OSF, Apple and so on used to code the whole night through.

<comment><USER3> Yup. I think that reduces to "focus" as a core value, since it doesn't matter _when_ you do your work, as long as you get it done fast.

</comment></comment></comment><comment><USER5> Seems like a dismal life. It _is_ trinket sales, signifying nothing. It's the kind of work that should be laid to rest at 5 o' clock sharp.

<comment><AUTHOR> ah, but _it's not_. It's what lies behind the trinket sales. The passion for a great product, the passion for making sales, and the passion for success. If things like trinket sales or mundane businesses, we often laugh at in tech circles were just forgot about because _theyre_ trinket sales, we wouldn't have much. Even someone has to be passionate about waste removal, otherwise there would be a whole lot of shit piling up.

<comment><USER6> In the end it's really only about what you have a passion for. If your passion are startups and creating something you can call your own, that's great. If your passion is sales then more power to you. It's different for everyone.

</comment></comment></comment><comment><USER7> This is what it takes to be a success. That simple.

</comment><comment><USER8> (2000)

<comment><USER9> So, there should be a follow-up!

Can anyone spot if he hit his objectives despite The World Changing around him?

<comment><USER10> He isn't at the top of his industry but he seems to be growing:

May 1, 2007 Movin' on Up

The latest issue of Promotional Marketing Magazine-an independent publication dealing with the Promotional Products industry-listed the Top 50 Distributors in America. Just a few years ago, the Cavanaugh Marketing Network was ranked around 75th. In the latest rankings, Cavanaugh has climbed to # 34 the highest ranking of any promotional products agency in Pittsburgh.

<http://www.cavanaugh.com/news.php></comment></comment></comment>


Neural fuzzing: applying DNN to software security testing - <AUTHOR> https://www.microsoft.com/en-us/research/blog/neural-fuzzing/ <comment><AUTHOR> Related paper: "Not all bytes are equal: Neural byte sieve for fuzzing" [1]

[1] [https://www.microsoft.com/en-us/research/wp- content/uploads/...](https://www.microsoft.com/en-us/research/wp- content/uploads/2017/11/neural-fuzzing-mcr.pdf)</comment>


Show HN: Tinder for amazon products (updated) - <AUTHOR> http://www.appshopie.com <comment><USER2> these people act like buying things is a lifestyle</comment>


Open Letter to the Free Software Movement - <AUTHOR> https://www.dyne.org/open-letter-to-the-free-software-movement/ <comment><USER2> > which have shaken the long-standing leadership of the Free Software Movement > and the GNU project.

Only the FSF, not the GNU Project. [https://news.ycombinator.com/item?id=21088690](https://news.ycombinator.com/item?id=21088690)

<comment><USER3> fixed thanks</comment></comment>


The ZUGFeRD and Factur-X Formats for Electronic Invoices - <AUTHOR> https://www.pdflib.com/pdf-knowledge-base/zugferd-and-factur-x/ <comment><USER2> "ZUGFeRD leverages an important feature of PDF/A-3 (ISO 19005-3) which allows to embed attachments of arbitrary types into the PDF/A document"

Oh - you mean I can send documents that have arbitrary payloads to my tax office? That sounds interesting.

</comment><comment><AUTHOR> For some open source implementations see [https://zugferd.github.io/open- source.html](https://zugferd.github.io/open-source.html)</comment>


My Story with Pink Floyd - <AUTHOR> https://tarek.computer/thoughts/my-story-with-pinkfloyd/ <comment><USER2> Did you attend Nick Mason's ongoing Saucerful of Secrets tour? Highly recommend!</comment>


Reclaiming your commute - <AUTHOR> http://42floors.com/blog/posts/reclaiming-your-commute <comment><USER2> I totally agree with the other comments here about safety. Driving is one of the most dangerous things the average person will do every day, and deserves your full attention.

It's fine to make choices for yourself and to accept some risk in your life, but when you are behind the wheel you are making that choice to increase the risk for everyone around you too. You have a responsibility to drive carefully.

Please don't make the roads any more unsafe by doing activities or encouraging others to do activities while driving that may distract them from the task of driving safely.

Find other ways to reclaim your commute such as moving closer to work, working from home on some days or using public transport. Or perhaps stop thinking of your commute as lost time, but time that is spent to enable you to live somewhere pleasant/quiet/cheap while working somewhere that meets the needs of your business/work.

<comment><USER3> As a society, at least in the US, we seem to have decided that audio-only activities are acceptable while driving. I suppose this is because driving mostly engages visual and motor skills, leaving our audio and language processing free to talk or listen.

Listening to audio books or presentations I believe is good. Dictation is probably a fine activity. As soon as your hands start getting involved or you start to look away from the road I believe that safety starts to suffer.

Does anyone have any quantitative data on how common driving activities affect safety?

<comment><USER4> Unless he's recording random streams of thoight then there is going to be a lot of conscious decision making and problem solving involved in authoring a post. Those tasks seem overlap with what he should be doing while driving.

<comment><USER5> I'd imagine that he probably IS recording random streams of thought, and then editing them when he gets the dictation back. Even when I'm talking to friends in the car, I can barely keep a thread of conversation very sensible.

</comment></comment></comment></comment><comment><USER6> This seems like a terrible idea from a safety point of view.

If commute time bothers you, move closer to work, or work closer to home. Use the extra time to blog.

Personally, I'd never work somewhere I couldn't bike to. Its significantly more fun than driving, and I never sit in traffic.

<comment><USER7> what about the sweat?

<comment><USER8> Don't race to work, just ride. Sweat isn't a problem when riding at a calm pace unless you're either in really bad shape, or you have some medical condition which causes abnormal sweating.

<comment><USER9> That's a silly thing to say. Here in St. Louis, for example, we have very hot, humid summers. It's not hard to break a sweat casually _walking_.

<comment><USER8> Fair enough, I hadn't considered extreme heat. So I'll change my assertion to: if you can walk without sweating, you can bike without sweating.

Just to expand on my first comment: I live in the Netherlands. People here bike everywhere. They wouldn't do that if they got sweaty and had to take a shower every time they arrived somewhere.

</comment></comment></comment></comment></comment><comment><USER10> Please don't do this. There are already few enough people paying attention while driving. Just because you are in stop-and-go traffic doesn't mean you can stop paying attention.

<comment><USER11> Some studies say distracted driving is age dependent and I think I heard somewhere else some are just better at multitasking safely, though I don't remember the signs or how to test for this -awesome- traight.

[http://www.mendeley.com/research/effect-cellular-phone- upon-...](http://www.mendeley.com/research/effect-cellular-phone-upon-driver- attention/)

<comment><USER10> That certainly may be true. I'm merely of the opinion that driving warrants all my attention - no matter the traffic conditions. Full disclosure: I do listen to music/podcasts on long trips, so you may consider that I'm breaking my own rule.

<comment><USER11> Off topic completely now. Sorry all.. My post was in defense of distracted driving to give a balanced perspective with some scientific data..

However, I'm as annoyed with distracted driving as ou. I play a small game when driving.. Spot the person on the phone, watch the person next to you at the light and can tell with the head nod to lap that they are texting, especially If under 30. Sorry for the stereotype.

We need some legal paintball guns so we can use on the freeway to tag offenders so those of us that are driving can know where the risks are... And it would be a chance to practice my aim. If more than a few hundred tags, we can then switch to harpoons and the cars will start to look like porcupines.

</comment></comment></comment></comment><comment><USER12> Glad it works for you. However, I would never be able to blog this way. When I blog, it's a continuous iteration of what I have written. I write something, it doesn't make sense, then I go back and make it better. Personally, I would find it impossible to create quality content by just starting to speak out loud.

<comment><USER13> I agree, but I think this could be a good way to get raw material.

</comment></comment><comment><USER14> My daily half-hour bus commute gives me a great opportunity for focused reading time. By making it a habit, I have read through a year's worth of the St. John's College classics curriculum (<http://www.stjohnscollege.edu/academic/ANreadlist.shtml>).

Take the bus if it's accessible to you, load up on some books, and you will love your commute.

</comment><comment><USER11> The reference to <http://www.taskrabbit.com/> was exactly what I have wanted. Thanks for the link.

</comment><comment><USER15> Articles like this are a major reason why I decided to move to New York. Commuting? Sure, but it's also free exercise!

</comment><comment><USER16> I've found that people who multi-task while driving leave lots of room in front of their car so they can pay less attention and are themselves causing more congestion for others. Of which they are usually unaware because they have tunnel vision at the point.

<comment><USER10> Actually leaving lots of room in front of your car (1-2 car lengths in stop- and-go traffic) is very safe and makes traffic flow smoother. It "evens out" the stop and go part of stop and go traffic.

If you have a manual transmission, It's almost mandatory - take a look at large trucks in stop-and-go traffic, they attempt to "idle through" because stopping and restarting a heavy vehicle is fuel-inefficient.

<comment><USER16> And that's not what I'm talking about.

I'm talking about those who leave 25 car lengths ahead of them when traffic is moving so they can text or blog or do whatever is taking their attention off their driving.

How much space they think they need depends on how frequently they decide to look at the road.

<comment><USER10> Wow - that is quite a bit. I've never seen that personally.

</comment></comment></comment></comment><comment><USER17> Know your own limit - I always need 100% concentration while driving, but I found that some people can get away with multitasking.

</comment><comment><USER18> Great, now in addition to people who eat fast food, apply make up, play sing- along, tend to their children, talk on the phone, text message, and nod off in the car, we have to deal with people BLOGGING in their cars?

It's gotten to the point where I refuse to drive anything but a performance car because the kind of shit you have to deal with as a person who actually FOLLOWS the rules requires the ability to accelerate, brake, and handle better than all the idiots on the road who are totally distracted, don't signal or stay in the lanes, and drive 40mph on the fucking highway.

The only way to reclaim your commute is to not commute.

</comment><comment><USER19> Listen to audiobooks. Better than listening to the rubbish on the radio, and no more dangerous. Really good way to do something you enjoy while driving. Find a good book. Either fiction or self development or what ever and I find myself looking forward to car time because I can relax. My audiobook player is the best player for iPhone that I've found. [http://itunes.apple.com/us/app/my-audiobook- player/id4593930...](http://itunes.apple.com/us/app/my-audiobook- player/id459393040?ls=1&mt=8) Let's you play downloaded books.</comment>


Enqueuer: A powerful multiprotocol CLI to test microservices - <AUTHOR> https://enqueuer.com <comment><AUTHOR> It's like postman CLI (use [https://lopidio.github.io/stacker/](https://lopidio.github.io/stacker/) if you want a GUI) for several protocols other than HTTP.</comment>


Ask HN: How much of an impact do you expect from Fed tapering?  - <AUTHOR>

How much of an impact do you expect the ongoing Fed tapering to have on money investment in new startups? So far financial markets aren't taking it well.
But here's what I think will happen:
1) Interest rates will increase steering investors away from risky startup investments and into high IR financial instruments
2) Investment money will dry up in the short term leading to a rough landscape and a tough environment for those needing to raise cash
3) Seemingly good startups (even by toughest critics) won't be able to raise money unless they have a solid business plan
What do you think? Are you worried? <comment><USER2> You are forgetting the lag effect.

It will take a while for this to trickle to the VC market. Consider a situation where most of them have already raised funds. They may become more picky because of reanalyzing long-term effects (shittier IPOs), but they will still have money to invest.

If you are worried, perhaps you should consider the alternate: bootstrapped model.

It seems that even though bootstrapped companies grow much slower, these companies are a lot more healthy and aren't regulated as much by financial markets (no boom or bust models).

</comment><comment><USER3> The whole thing is a head fake. Even more money will flow into the startup world when they ramp up the next level of QE.</comment>


New uTest lets professional testers kick your startup's tyres - <AUTHOR> http://eu.techcrunch.com/2011/03/21/new-utest-lets-professional-testers-kick-your-startups-tyres/

<comment><USER2> Having one of those "You know I had this very idea back in 20xx, I should have jumped on it" moments. Best of luck uTest, I'm glad to see someone had the same vision and executed it!</comment>


Ask HN: What do you think a successor to Google Search looks like? - <AUTHOR> Thought Experiment: let's rethink the search engine. How does a small team of engineers, with tiny compute resources, build a new kind of information-finder?<p>The old model of centralized crawling/link/text-pattern-matching (a.k.a. Google) seems so 1998. So arbitrary, so open to manipulation (e.g. the Boris Johnson story today). I want something fundamentally different, something that takes into the account the sheer size of the internet today. Something not manipulatable by "SEO". <comment><USER2> What if your search engine was just made up of sites you add to a personalised "pool" of sites. This way your news comes from a consistent source and/or your technical questions are answered by your favourite dev community site, etc. Certain sites could be tagged for relevancy around a certain search keyword.

That's my two cents :)

<comment><AUTHOR> I like this idea. You can also start with a pre-populated pool of curated sites for particular topics. You choose these seed pools based on your trust of the curator, which could be a university research department, for example.

<comment><USER2> Exactly what I was getting at :)

</comment></comment></comment><comment><USER3> I don't think it's easy to make such successor. However, I think the best approach into making a better search engine is to start with meta search engine, and collect analytical results of users decisions. At the same time, that search engine needs to develop its own. If you stay with meta engine, not many is going to find it authentic, and it would be a cluster. However when you start as meta engine then you implement your own engine using it, that's when users will be comfortable in using

<comment><USER4> Re meta not being authentic - would you say the same is true for DuckDuckGo?

<comment><USER3> I guess the less harsh word that I wanted to say is reliable.

DDG has it's own community. It's growing, but I don't think it will catch up with google. There are other factors too.

As for authenticity. I think people interpret DDG as unwanted, unfortunately. Because it was frequently set as home page as a bundle. If you search its name, you will find people frequently asking "is it a virus".

It's hard to advertise an engine these days without being viewed as a forced advertising. But there are better tactics like offering incentives.

</comment></comment></comment><comment> pi-squared Think what problem you are facing with the web right now and how you would solve it. Don't solve a problem for a thousand or a million people because all of them will have different problems. Start with you. Do you not like the interface? Do some css play, mockups on gimp or pen and paper.

What are your queries usually? Take a look at your own Google history, find and try to group what you are looking for and what would you ideally find that Google/other search engines don't satisfy.

I understand your desire to do something "revolutionary". But most things are incremental.

<comment><USER5> The current search engine has very limited context (your profile and the sites you visited and the searches you have done).

What if the next incremental improvement is asking you questions about the search to get better context before actually doing the search and giving you a smaller set of usable results?

Just dreaming :)

</comment></comment><comment><USER6> Uh, you might want to look into the disciple of Information Retrieval.

I'm confused by your question: what exactly do _you_ want? It seems like the SEO-story of Johnson caught you off guard, and now you're like "Google search bad". Then: well, what exactly do you know about search algorithms? What better product do _you_ want to develop? Asking HN before you learned anything about Information Retrieval (because that's what it feels like to me) seems inadequate.

<comment><AUTHOR> I don't know what I want. I just know that I don't like the text-matching, machine-learning path that Google has taken. The internet can no longer be distilled into 10 blue links. Maybe.

Thanks for the suggestion about reading up on information retrieval. But maybe the point of this exercise is NOT to use well established methods. I want to rethink the interface and mechanics of search.

</comment></comment><comment><USER7> I don't think it looks like anything. It will sound like something. Think star trek computer.</comment>


Fuck Yes or No - <AUTHOR> http://markmanson.net/fuck-yes <comment><USER2> Mark Manson has written a lot of really valuable advice, including IMO the only dating book you should ever read [1]. He rejects the pickup culture in favor of a more intimate, human approach towards building emotional connections and improving oneself. He's the only mainstream dating coach pushing Dale Carnegie's work [2]. Mark's also big on the anti-pornography, anti-masturbation trend that's gaining mainstream attention [3]. I highly recommend reading his stuff for anybody who's looking to improve themselves, both in dating and in general.

[1] [http://www.amazon.com/Models-Attract-Women-Through- Honesty/d...](http://www.amazon.com/Models-Attract-Women-Through- Honesty/dp/1463750358)

[2] [http://www.amazon.com/How-Win-Friends-Influence- People/dp/06...](http://www.amazon.com/How-Win-Friends-Influence- People/dp/0671027034)

[3] [http://www.reddit.com/r/NoFap](http://www.reddit.com/r/NoFap)

Edit: it looks like this was on the front page, but the _HN is only for programming topics_ crowd seems to have flagged it into oblivion</comment>


The Untold Story of the First Woman to Fly Around the World - <AUTHOR> http://www.buzzfeed.com/amyksaunders/the-untold-story-of-the-first-woman-to-fly-around-the-world

<comment><USER2> Amazing story! Thanks for sharing!</comment>


Dogecoin random block reward NOT actually random and some people are "cheating" - <AUTHOR> http://www.reddit.com/r/dogemining/comments/1x1p76/something_is_rotten_in_the_state_of_doge_mining/

<comment><USER2> I made a graph of the values in the post: [http://imgur.com/a/o4jZt](http://imgur.com/a/o4jZt)

The linear regression has R^2=0,5. It's a low value and the points are not very well aligned.

I think that this is suspicious, but someone has to do a real statistical analysis to be sure that this is a real problem and not an unlucky coincidence.

On the other hand, even if this is not happening yet, it looks like a interesting idea for the bad people.

</comment><comment><USER3> Modifying the reward structure changes the economics of the currency. They are following the incentive structure outlined by the currency's creators. I'm not sure this would be considered cheating...

</comment><comment><USER4> There are a fair number of altcoins with random rewards. I bet similar attacks are possible on them as well.</comment>


Lessons learned from 3 months on YC and 3 years in SF - <AUTHOR> http://peternixey.com/post/14565856457/what-i-learned-from-3-months-on-yc-and-3-years-in-sf

<comment><USER2> Eight years in the SF Bay Area left me with the impression that the people there are, in generally, exceptionally self-involved. It's no wonder that "social" (i.e. self-promotional) media has taken so strongly there.</comment>


Confirmed: Microsoft Will Announce Acquisition of Skype Tomorrow Morning - <AUTHOR> http://kara.allthingsd.com/20110509/microsoft-will-announce-acquistion-of-skype-tomorrow-morning/ <comment><USER2> _"the concept is bigger than just money, including getting access to Skype's 663 million registered users."_

This would indicate that Skype has more registered users than Facebook. Colour me surprised. Although I wonder how large the overlap already is between Skype users and MS Windows users, especially with the recent Skype Mac Client stuff.

<comment><USER3> I was a little surprised, but then talking to people on the phone is much more well- so more likely to get immediate inter-generational and mainstream acceptance than social networking. Facebook is only just gaining mainstream adoption, albeit at a very fast rate.

</comment></comment><comment><USER4> Well there goes any chance of an update to their Linux port :-)

<comment><USER5> also the chance of using skype on linux for much more

</comment></comment><comment><USER6> Main thread already here: <http://news.ycombinator.com/item?id=2530963>

</comment><comment><USER7> Skype never properly worked in Linux, now we also lost the hope -- if there is any -- that it will in the future.

</comment><comment><USER8> I wonder how MSFT stock will react... premarket shows apathy/slightly down (-0.01 (-0.04%) as I'm writing this)

</comment><comment><USER9> There goes the neighborhood....</comment>


Ask HN: Please review my weekend side-project. - <AUTHOR> http://whatkindoffileisthis.com/

<comment><AUTHOR> This is essentially an online version of the unix 'file' utility that I hacked together quickly over the weekend (it actually _uses_ 'file' on the backend).

There are many obvious directions I could potentially take this - for example improving recognition accuracy, suggesting more programs and websites for working with each file type, providing in-page previews of files, etc, etc.

But before I do any of that, I thought I'd just get version 0.1 up and ask for some feedback. Any questions or comments are very welcome. By the way, you need Flash (at least version 10) to make it work.

<comment><USER2> I tried it with an epub file before I read your comment about its mimicking the unix 'file' command, and was disappointed at the output.

I'm in the process of writing a routine for checking the validity of epub files (i.e., to unzip the archive, make sure the required directory structure and xml is there, etc.), and at first glance, that's what I thought your app would be able to do.

<comment><AUTHOR> Yup, that's what I meant by improving accuracy. Unix's 'file' is a good start, but it could definitely be improved on.

<comment><USER2> Well, in addition to epub, it would nice if it could validate other complex file structures, e.g. docx or any of the other OpenXML formats: <http://openxmldeveloper.org/default.aspx>

</comment></comment></comment></comment><comment><USER3> Perhaps you could make money through affiliate marketing. Let's say someone asks what a svg file is. You could provide links to svg->pdf utilities.

</comment><comment><USER4> I gave it a .js~ to see what would happen. And it said: "That file contains ASCII C++ program text"

It should probably say it's a javascript file. Or maybe:"The extension of the file is javascript the content appears to have ASCII C-style syntax...so it probably is indeed javascript." Although worded better. Like someone else said a lot depends on the market you're trying to reach.

</comment><comment><USER5> Have you considered adding a statement about privacy, ie what you do with the file once it has been uploaded? When/how it is discarded.

<comment><AUTHOR> That's a good point (the files are immediately deleted btw).

<comment><USER6> (quoting what you said in another answer):

 _I'm uploading the first 10KB of the file_

Mentioning this upfront would probably help.

</comment></comment></comment><comment><USER7> I can't see a lot of use for this as a webapp.

If I were going to use this, I'd want it where my unrecognized files are. If you could connect this to a right-click in my filesystem, or have it as a browser extension that intercepts downloaded files and tells me what they are (ie: built into firefox's download manager, or the download bar at the bottom of chrome). Or get it to interact with my email somehow. Next to attachments, have a link saying "what is this?".

Not sure if any of those are actually possible, but that would upgrade your side-project from a "cool idea" to something that I would actually use.

</comment><comment><USER8> If it's gonna be aimed at techies, it'll have to be geekier, if it's gonna be aimed at regular humans, it's gonna have to be friendlier (ie. "It's a Visio Doc..." vs "It's a microsoft office OLE doc"). I guess that's the main choice to make as to direction right now.

<comment><USER9> My thoughts exactly. Perhaps it could do both based on extension though, e.g. I doubt you'll find a "techie" not knowing what a .docx is so that info could be something like "This is a Document for Microsoft Word 2007+" Etc, while a rarer or more technical file e.g. .torrent (yes, I know that's not the most technical file extension) would have more specific info.

<comment><USER10> Yup, and thinking in terms of "customer development", perhaps you can share some hypothesis use-case of how a non-techie would use this.

Meaning, in what situations would the non-techie say, "gosh I need to know exactly what file this is?"

<comment><USER9> Well the first thing that come to mind, would be an extension they didn't recognize and couldn't open? Like .ppt but they don't have PowerPoint installed. Of course, this somewhat refutes my earlier comment as well, because most of the unrecognized extensions might be more technical in nature.

Perhaps there should be a top sections with something like: "I like it dumbed down for me: .abc is a abc application file" and a section below that for "I'm 1337, give it to me straight: this .abc file is a windows me executable with blah blah blah..."

Aside from choosing better titles for the sections, that might be more helpful to everyone. All of the file detection only needs to be done once.

</comment></comment></comment></comment><comment><USER11> It needs to have a significant differentiator from just googling the file extension.

<comment><AUTHOR> Maybe that just implies I should aim it at people who don't know what "google the file extension" means? ;)

<comment><USER9> Maybe you hit the SEO hard enough and you are on the receiving end of "google the file extension".

</comment></comment></comment><comment><USER12> If I give it an Office 2007 file, it identifies it as a zipped XML file. While this is technically correct, it's probably not the most useful answer. This can probably be corrected with just file extensions, but looking up XML namespaces would be an interesting idea.

</comment><comment><USER13> Was wondering: Why do you need to use flash for this?

<comment><USER14> Was wondering: Why not use flash for this?

Jeezus, Flash bashing is getting real old.

<comment><USER13> I am not trying to bash flash here... the site seemed simple enough to me to be implemented without requiring flash, and I was curious as I had to click an extra time because of flashblock.

</comment></comment></comment><comment><USER15> i'm not able to have it successfully recognize a file. i sent it a txt file and about 2 minutes later (finally) it returned with "Sorry, couldn't identify that file." ?

<comment><AUTHOR> What version of Flash do you have? Right-click on the button and choose "About Flash".

</comment></comment><comment><USER16> Maybe something useful could be "Fix this 'corrupted' file".

</comment><comment><USER17> hehe I like the commentary. very friendly and responsive.

Whats next on the agenda?</comment>


Board Game Gift Guide 2011 - <AUTHOR> http://boardgamegeek.com/wiki/page/Board_Game_Gift_Guide_2011 <comment><USER2> Pretty good list, I was originally worried if it would be all complex games based on the site it was from.

Blokus is probably the cheapest one on the list, and easiest to find. Ticket to Ride/Settlers of Catan are all around great games (and getting known enough that enough people know how to play them).

In the other section, I can vouch for Dominion (and all it's expansions).

Overall board game geek is a great site to get new challenging (and tons of fun) games. A lot of places I've worked, the geeks had board game nights...

</comment><comment><USER3> Pretty good list overall. And you can always dig deeper at that site for family/children games.</comment>


Dates for Drupal 7 and 8 end of life and Drupal 9 release - <AUTHOR> https://dri.es/drupal-7-8-and-9 <comment><AUTHOR> The tldr is Drupal 7/8 end of life by November 2021 and Drupal 9 released before then.</comment>


Masochism: Write to 1 Master DB / Read from Mult Slave DBs with Ruby on Rails - <AUTHOR> http://www.robbyonrails.com/articles/2007/11/15/master-slave-databases-with-ruby-on-rails

<comment><USER2> Upvoted for the name alone.</comment>


Apple's slide-to-unlock patent held invalid in US - <AUTHOR> http://patentlyo.com/patent/2016/02/federal-circuit-unlock-invalid.html?utm_target/=feedburner&utm_medium=feed&utm_campaign=Feed%3A+PatentlyO+%28Dennis+Crouch%27s+Patently-O%29 <comment><AUTHOR> Note: These are separate from the look and feel case against samsung from design patents.

As a result of this outcome, apple now owes samsung for infringement, and samsung owes apple nothing :)</comment>


Designing a Physics Engine - <AUTHOR> https://blog.winter.dev/2020/designing-a-physics-engine/ <comment><USER2> If you restrict yourself to certain types of objects and environments, you can use totally different techniques.

For a game dev class in uni, I wrote air hockey. This is straightforward because you only have circles and lines, and there's no gravity so objects can't rest on each other. I wrote an event-based physics engine, which exploits the fact that the equations to find the time t of a future collision are closed-form and you can just solve for t. If t is greater than the time to the next frame, just step everything forward; if it's less, step to that collision, then find the next one. Collision response is easy too: just choose a reference frame where one of the pucks is stationary, then solve conservation of momentum and energy.

This excludes some kinds of friction models, but if you choose one where deceleration due to friction is independent of speed (perfectly valid for lowish speeds), you're fine.

Another cool thing about an event-based system is that it makes it trivial to write an AI: just have the system try N moves toward the nearest puck, and run the simulation forward a few collisions to see if any of those moves results in a puck going in the opponent's goal.

</comment><comment><USER3> It's one thing to create a physics engine which deals with a few balls.

But it's black magic to bring if from there to a proper game-ready physics engine which can handle 30 stacked boxes and complex penetration problems.

There is a reason that there are very few physics engines compared to game engines.

<comment><USER4> His engine is doing a pretty good job. I looked at the code and can't figure out how he gets stable multipoint contact for the pile of balls out of that. There's no linear complementary problem solver. There's no elaborate integrator. Yet it's resolving problems where balls are in contact with many other balls, and where many balls are constrained in multiple directions. Naive approaches to that usually go "sprong" and send something flying.

Maybe it's just using a really tiny physics time step. That allows forces to propagate through the whole pile over many time steps.

<comment><USER5> The trick is to only apply positive impulses and discard negative ones: [https://github.com/IainWinter/IwEngine/blob/6f94a946a90db989...](https://github.com/IainWinter/IwEngine/blob/6f94a946a90db989412ff29320a0baeca7a5f8cb/IwEngine/src/physics/Dynamics/ImpulseSolver.cpp#L26) Things will sort themselves out over several frames.

Objects might sink into each other a bit, but that is generally not very noticeable unless you make huge piles of spheres. However, it might quickly become a problem in 2D, since you only need a quadratic number of objects to get a "critical" pile, compared to a cubic number of spheres in 3D.

<comment><USER6> That makes it so nothing explodes, and then there is a second solver that does a small raw position correction after. So it's not lifelike realism, but it works to stop objects sinking into each other too much. There is still a small error though, I'd have to look into more iterations and all that.

</comment></comment></comment></comment><comment><USER7> I was writing my own 3D engine for some time also. I decided at some point I would not venture into physics, that is where I would draw the line.

Then I understood that even doing proper collision detection would mean having to implement some kind of physics in order to do proper frame independent linear interpolation of objects moving in 3D space, in order for the objects not to go through each other if the movement step is too big and also to do proper moving of objects anyway in 3D space, as you can't just expect to linearly transform an object from one place to another, as framerates might wildly differ and the object might go through another if the frametime would be too big for this particular frame we are rendering.

That is where I just stopped, and decided that it was too much work to do anything proper by myself, and gave up on writing my own 3D engine.

I see many people are going through this process, writing their own engines and libraries. Somebody told me when I started I should use an existing engine, but I didn't listen. And that is a good thing, and at the same time, wasting time to do something that could be done using existing libraries or engines.

This is what I feel anytime I see somebody write about them re-inventing the wheels, but I guess it's a process that many choose to go through for learning and fun purposes.

<comment><USER8> > _proper frame independent linear interpolation of objects moving in 3D > space_

Reminds me of another thing - back when I was trying to write my own 3D engine, I've never heard of the concept that you _interpolate physics state between rendering frames_. Something that's considered table stakes today.

When and how did that arise?

<comment><USER9> I've never heard of that either. I thought you were just supposed to fix your physics timestep and sort the graphics out later.

<comment><USER8> From what I vaguely understand, the goal here is to reduce jerkiness if you render faster than you tick your physics. But then I always thought that beyond stability, the other main reason to make your physics time step independent from rendering is so that you can tick physics _more often_ than you draw.

(Thinking about it now, I suppose this trick lets you update physics less frequently than drawing while faking fluid movement, and free up CPU time for other tasks.)

</comment></comment></comment></comment><comment><USER10> I have huge admiration for anyone who manages to implement a physics engine. I've tried to do this twice now (to integrate with my 2D canvas library) and both times I've not been able to solve the collision response part of the system.

Given that I failed my 'A' level maths in spectacular fashion (I honestly don't get integration - it just doesn't compute for me) I'm obviously attempting the impossible here. But I live in hope that one day I will somehow stumble on a solution that looks like its working on screen ... which will be enough for me.

I've tried combining my library with third party physics engines - but that, too, is hard work. The best I've ever managed is with the Matter.js[1] engine but the amount, and complexity, of code needed to create a scene is too much for my tastes[2].

Maybe I'll go back for a third attempt if/when the second Covid wave hits.

[1] Matter.js home page - [https://brm.io/matter-js/](https://brm.io/matter- js/)

[2] Codepen demo - [https://codepen.io/kaliedarik/pen/zYvbwBy](https://codepen.io/kaliedarik/pen/zYvbwBy)

<comment><USER11> The solution is to borrow ideas from those who have done it before.

One idea comes from quake: for collision response, call a function recursively until there's no more collision.

Basically, it pushes you away from a given plane. So the function looks like pushAway(plane, you). If that pushes you into something else, you get pushed away again, recursively.

If you imagine a V shape, the result is that you end up "standing" on the V, because you're getting pushed away from both sides of the V equally.

I'm not sure my explanation is very good, so to simplify: just add recursion, lol. (You'll need to limit the max recursion depth, or else you'll get a frozen game.)

I used to try to solve things from first principles – and it's more fun to do that – but there's no shame in copying the answer. Carmack's solutions tended to be copied from the medical rendering field anyway. :)

<comment><USER10> > The solution is to borrow ideas from those who have done it before.

I've tried that. Open various libraries, go through the code, work out how/where they perform the collision response calculations, trace back the vars passed into those calculations to see where their values get calculated, etc, etc ... and clearly I keep missing some key step or other along the way. I'm either misunderstanding the collision normal, or misinterpreting the collision depth, or my understanding of torque is deeply flawed (very possible, that one) ... frustration builds. Then I blame the engine coders for being too clever with their code and try a different library.

I'll get there one day. Failure is not a disaster!

<comment><USER12> As somebody who also struggles with math, I feel that the problem is it's extremely unforgiving. For instance, when I was trying to write some simple 3d rotation matrices in lua, I kept on getting crazy results just because I'd invariably mix up one cosine with a sine, or a plus with a minus. I don't really have any thoughts about how to get around this though.

</comment></comment></comment></comment><comment><USER13> > Note the use of pointers, this forces other systems to take care of the > actual storing of objects, leaving the physics engine to worry about > physics, not memory allocation.

Based on the access patterns in the code (iterating through every physics object every step), keeping the physics objects behind a pointer is actively cache hostile! If at all possible try to have these objects in contiguous memory.

<comment><USER6> Yeah it's up to the person using it to store them sensibly. I use an ECS so they are mostly all contiguous. I think that the pointer hurts the cache for the fist iterations, but once the whole array is cached I think the pointer becomes ok.

There is still that indirection though :(

</comment></comment><comment><USER14> Fun book if anyone is ever interested: Physics for Game Developers Paperback – November 15, 2001 by David M Bourg

</comment><comment><USER15> I don`t know much about physics engines, but I do know that there are much more sophisticated integrators than x = x + v*dt. For example schemes for gravity that keeps energy invariant.

Are any used in physics engines? I assume yes.

<comment><USER16> The naive integrator you're describing, just taking the differential equations and substituting dt by a small, non-zero time step, is known as the Euler integrator [1]. As you say, this scheme does not keep energy invariant. In fact, energy may grow unbounded if you use it.

The simplest integrator that "preserves" energy is the Symplectic Euler [2] integrator, which reads:

v <\- v + F/m * dt

x <\- x + v * dt

The key is that you use the _updated_ velocity to update the position in the same time step. In this scheme, energy isn't exactly preserved, it varies a little bit from one time step to the next. However, you can guarantee that the energy fluctuations will remain bounded, if your time step is below a (fairly large) critical value.

Reading the code of this blog post, the first version of the Step (at the beginning of the blogpost) uses the Symplectic Euler scheme, and the second version (towards the end) uses the naive Euler scheme. Bullet, a popular physics engine, uses the Symplectic Euler method [3].

A popular, more sophisticated, scheme is the Runge-Kutta integrator, which comes with variants that preserve the energy and ones that don't. The MuJoCo simulator, used in robotics research, uses the Runge-Kutta method [4]

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

[2] [https://en.wikipedia.org/wiki/Semi- implicit_Euler_method](https://en.wikipedia.org/wiki/Semi- implicit_Euler_method)

[3] [https://github.com/bulletphysics/bullet3/issues/2513](https://github.com/bulletphysics/bullet3/issues/2513)

[4] [http://www.mujoco.org/book/computation.html](http://www.mujoco.org/book/computation.html)

<comment><USER6> Oh you're correct, I was trying to make the code more readable for the blog post and didn't even think of that! Thanks for the heads up I would of never caught that, and good info about different integrators, not going to pretend that I knew all of it. It makes sense though because the velocity used for the position would be a frame behind.

I was looking into the Runge-Kutta method, but it looked too complex for what I was doing.

<comment><USER17> Fixed step Rk4 is really not very complex once you understand numerical integration. Not that you need it, plus it will be about 4x slower.

</comment></comment></comment></comment><comment><USER18> Small suggestion: this should be an `Object` method:

``` obj->Force += obj->Mass * m_gravity; // apply a force

obj->Velocity += obj->Force / obj->Mass * dt; obj->Position += obj->Velocity * dt;

obj->Force = vector3(0, 0, 0); // reset net force at the end ```

As in

``` void Object::Step(double dt_s, const vector3& g_mps2) { Force += Mass * g_mps2; // apply a force

        Velocity += Force / Mass * dt_s;
        Position += Velocity * dt_s;

        Force = vector3(0, 0, 0); // reset net force at the end

} ```

<comment><USER19> So that it cannot be inlined and be 20x slower? Not so a good idea for a physics loop.

</comment></comment><comment><USER20> I feel like in this day and age, GPGPUs are underused for this purpose. I've been working on a somewhat simpler problem recently, and eventually realized that you can use GPGPUs for this purpose.

<comment><USER21> For games, gpus are often busy rendering. Parts of a physics engine (integrators mainly) parallelize well, but in my experience, all the rest of the code is very branchy, which doesn't work as well.

<comment><USER20> You are right they are rendering, however say collision detection is comparably less compute heavy than rendering.

I think with ECS, you can avoid a lot of this branching.

<comment><USER21> The basic implementation of GJK is inherently branchy - see [0] as an example. Extracting the contact points is similarly branchy, I'm not sure offhand how that would translate into gpgpu friendly code.

I'm also not sure it's worth it. If you have a small number of bodies, it doesn't make sense to attempt the collision detection on the GPU, the benefit of the GPU is really that it scales. If you _do_ have a large number of bodies, youre likely going to be using lots of your GPU for rendering anyway....

There's also the gameplay side of it - moving the bulk of the physics engine to the GPU will make things like contact filtering, scene querying difficult to do. Gameplay code is usually very straightforward, and adding in complex or async callbacks likely would be met with resistance..

[0] [http://vec3.ca/gjk/implementation/](http://vec3.ca/gjk/implementation/)

</comment></comment></comment></comment><comment><USER22> This is a really well-done video.

But why don't we want plane v. plane? Can't a flat surface hit another flat surface?

<comment><USER23> In geometry a plane extends infinitely far, so unless two planes are perfectly in parallel they will collide. Not too useful for collision detection (but useful for other things).

</comment></comment><comment><USER24> That's a very simplistic "physics engine", that doesn't handle rotational motion at all...

<comment><USER6> Yeah that's why I used spheres :)

I plan to make a part 2 that covers more complex constraint based methods. I'll put rotation in with that.</comment></comment>