SciHub Alternative which actually works - <AUTHOR> https://paperdownloader.cf/ <comment><USER2> The biggest problems my colleagues have with Sci-Hub is 1. the ever changing domain names and 2. the universities adapting DNS blocklist.

I try to make it a habit to bookmark the English Wikipedia page on sci-hub and follow the IP linked there as the most recent.

<comment><AUTHOR> The above site automatically checks for working Sci-hub Links and uses the working link to get the papers.

</comment></comment><comment><USER3> Ironically it doesn't "work" properly on Nexus 6P, with a whole bunch of text and a part of the search bar cut off.

<comment><AUTHOR> You can just zoom out. It 'works' properly on desktop.

<comment><USER3> Funnily enough I tried later on desktop and it kept sending me to a blank page with text saying "WTF dude".

"Works" is certainly an overstatement.

<comment><AUTHOR> papers which are not available/are being downloaded will give that message. You can try after sometime</comment></comment></comment></comment>


Japan to rule out coal-fired plants as international criticism rises - <AUTHOR> http://www.asahi.com/ajw/articles/AJ201903280066.html <comment><USER2> The decision may have more to do with plans to bring back online nuclear power generation capacity that was offline since 2011. Majority of coal-fired power generation capacity was already idle and being mothballed before 2011. Only reason a lot of coal-gen capacity was restarted after 2011 because there was no other option for producing electricity as nuclear power accounted for most of the supply.

<comment><USER3> Which illustrates perfectly well why the idea that wind and solar can deliver our base energy needs just isn't warranted.

It's great as auxiliary powers but not an actual solution.

<comment><USER4> Maybe, maybe not. Different countries have different resources available to them, and we don't know what they tried.

<comment><USER3> We know that Germany who focused on using dolar has failed miserably and we know that france who focused on nuclear hasnt. No modern country get their main supply of energy from wind or solar but have to use coal and oil to make it work. And the countries who boast with using a lot of alternatives also have much higher consumption prices because they are subsidizing their politically based energy policy.

</comment></comment></comment></comment><comment><USER5> So international criticism was a potent enough deterrent in this case that forced Japan to change their policy. It then makes me wonder why Japan hasn't made similar changes in their whaling policy after all the international criticism directed at them. Could it be that we are doing it wrong and when it comes to social issues, criticism is not an effective tool and an altogether different approach is needed?

<comment><USER6> It could be that the world is doing it wrong by eating cows instead of whales. :)

They're direct contributors to global warming and rainforests are being clear cut to make way for pastures. In contrast, the whales that Japan harvests, minke whales, aren't endangered, their consumption has negligible impact on the environment, and they're quite delicious.

I grab whale sashimi whenever I see it at the supermarket and I keep a couple cans in my cupboard just in case I get a craving. I don't eat it often due to the risk of mercury accumulation, but I can't think of a good reason to not eat it every now and then. From an environmental standpoint, it's also preferable to fish, since trawling absolute destroys environments and nets as a whole end up killing a lot of "waste" fish and dolphins that people won't eat. Whaling is targeted and doesn't really have much collateral damage in comparison.

<comment><USER7> > They're [the cows] direct contributors to global warming

It's a popular misconception that cows contribute greatly to the global warming. The general story is that recently a lot of people in emerging countries (and specifically China) have increased their beef consumption and you need more cows for that, and hence more methane emissions from their burps. And since methane is many times more potent than CO2 ... you know the rest.

What people don't take the time to check is if the story is true. The global inventory of cows was constant at very close to 1 billion for the last 45 years [1]. The half-life of methane in the atmosphere is about 7 years [2], so all the burps released by cows today simply replace burps that decayed from cows of decades past. Overall, cows don't contribute to an increase or decrease in the level of methane in the atmosphere.

[1] [http://beef2live.com/story-world-cattle- inventory-1960-2014-...](http://beef2live.com/story-world-cattle- inventory-1960-2014-130-111523)

[2] [https://phys.org/tags/methane/](https://phys.org/tags/methane/)

<comment><USER8> Methane doesn't have a half-life, but you are correct it doesn't stay around forever. In about a decade it will react to become carbon dioxide and water vapor, which both contribute to warming themselves.

Scientists know this when they state that over a 100 year period, methane traps 32 times more heat than CO2 [1]. This is the number widely cited. Over a 20 year period it is even worse: 104 times greater! Considering we are trying to drastically reduce the human contribution to global warming over the next 10 to 20 years, methane is a great thing to focus on.

Other thoughts:

It is interesting that the cow population only increased 35% since 1960 according to that source. But what about the methane per cow? Some quick searches suggests the slaughter age may have decreased from 3 years to 15 months during that time. They are growing much faster, fed grain that leads to the methane burps. At a minimum several times more emissions per cow.

CO2 only sticks around for 100 years, by your line of reasoning we should just shrug that off too?

[1] [http://science.sciencemag.org/content/326/5953/716](http://science.sciencemag.org/content/326/5953/716)

<comment><USER9> That is interesting. So if cows are slaughtered at 15 months instead of three years, methane per cow life time has been cut by more than half. So we could have twice as many cows with the same methane output, right? Something doesn't seem right about that though...

</comment></comment></comment></comment></comment><comment><USER10> Meanwhile, across the East China Sea, China is building 50 GW of coal generation. [https://mobile.reuters.com/article/amp/idUSKCN1R9003](https://mobile.reuters.com/article/amp/idUSKCN1R9003)

<comment><USER11> The US has one third the population of China, and has been bringing up ~100GW of natural gas power plants/year over the past ten years. Which produce as much CO2 as 50 GW of coal power.

Today, the US has has ~1300GW of coal, and ~1400GW of natural gas. China has ~1000GW of coal, and 700GW of natural gas.

We are, quite literally, the pot pointing fingers at a kettle.

</comment></comment><comment><USER12> Japan couldn't care less about international criticism. They're as mercenary and as negligent as some of the worst countries in the world. But they do have Shibuya, and an interesting culture, which is very distracting from this core conclusion.</comment>


OWC Aura Pro SSD for Retina MBP: Maximum Speed, Great Upgrade - <AUTHOR> http://www.macobserver.com/tmo/review/owc-aura-pro-ssd-for-retina-mbp-maximum-speed-great-upgrade <comment><AUTHOR> Much faster than stock SSD, better capacity, minimal hit on battery life. It's a great alternative for those planning to purchase the $500 512 GB Apple SSD upgrade.</comment>


Mathematics for Machine Learning [pdf] - <AUTHOR> https://mml-book.com/ <comment><USER2> I am taking CS 236 (Deep Generative Models) at Stanford and this course really helped me a lot in reviewing the math I needed for the class. This is because the chapters focus on the concepts and ideas you should know, so you don't have to waste time learning everything there is to know about linear algebra and convex optimization, but the essentials for machine learning.

</comment><comment><USER3> How would you compare this book to the first part of "Deep Learning" book (by Ian Goodfellow, Yoshua Bengio, and Aaron Courville)? [https://www.amazon.com/gp/product/0262035618](https://www.amazon.com/gp/product/0262035618)

<comment><USER4> I feel obligated to interject here as I have not read the book OP linked to but I have attempted to read the paper weight calling itself a book that you linked to.

I have it right here actually. It's basically total trash. They claim to show you how to do the math but at the very best all they do is restate random formulas without any explanation. It's not even good enough to serve as a refresher if you know the math. It relies very heavily on you mentally decompiling mathematical notation. I can't believe I got fooled into buying that book.

If you just want to learn the math there's no easier way than to pick up some math books from half price books. They're $10 a pop. It's an affordable way to learn at your own pace.

<comment><USER5> As a counterpoint, I have the book and found it to be really helpful.

<comment><USER6> I enjoyed the book, but have a background in this area.

I was amused by the suggestion that computer science undergrads could handle the book, as clearly the authors and I have met _very_ different computer science undergrads.

<comment><USER7> The Courville, Goodfellow and Bengio book is definitely suitable for undergraduates. In my current job, we often have new junior level (bachelor's grads) ML hires work through that book and present chapters in the team reading group. In my experience both as a TA in my PhD program and in industry, that book is fairly easy to read through for anyone with solid understanding of linear algebra and vector calculus, which are freshman / sophomore level college math courses.

<comment><USER4> Here's a photo of a random page.

[https://i.imgur.com/vv1CRLv.jpg](https://i.imgur.com/vv1CRLv.jpg)

You can trust me when I say the entire book is about as unreadable as that and often worse. I'm not afraid of math either. But the book certainly is not teaching anyone anything.

<comment><USER5> I am astounded by how you continue to insist that the book doesn't teach anyone anything, when I have already stated that I learned something from it! And of course the book has equations in it. What did you expect?

<comment><USER4> What did you learn from it?

None of my math books are as obtuse as it is. The equations are presented on their own without explanations. On that page alone they're using quite a bit of mathematical notation that I, at least, have never seen before and I suspect it's largely unnecessary.

What did I expect? I expected a book that explained the concepts in plain english as well as mathematically. I expected the authors to be mature enough not to heavily decorate every single equation with as much mathematical notation as possible. Sort of like how bad coders make their code hard to read. That's the vibe I'm getting from the book.

<comment><USER5> I learnt eigen decomposition, Hessians, PCA, backpropagation, CNN, dropout, maxpooling etc.

The page you linked above is the derivation of PCA using linear algebra.

First part derives the encoding matrix from the decoding matrix. 2nd part derives the encoding matrix by minimizing the L2 norm.

If you find the math too heavy, you should take Andrew ngs course at Coursera (not his Stanford lectures, which follow a pattern similar to this book). Or pick up any book targeting programmers, machine learning for hackers etc.

</comment></comment></comment></comment></comment></comment></comment></comment></comment><comment><USER8> Previous discussion from April 2018: [https://news.ycombinator.com/item?id=16750789](https://news.ycombinator.com/item?id=16750789)

</comment><comment><USER9> Id be useful to have a "math for programmers book" that uses pseudo code instead of math notation. I studied math notation in 8th grade and then forgot about it.

<comment><USER10> "Coding the matrix" was the breakthrough for me in grokking linear algebra, and this is what it does. Things are explained in terms of matrices and the mathematical transformations, and then explained in terms of python data structures and a loop over the elements. And most of the examples are computer science, like rotating images.

<comment><USER11> I remember this course when it first came out, but didn't go through it since I didn't actually know how to program/code back then. Should I just buy the paperback off Amazon?

<comment><USER10> I didn't even know it was a course, I just got the book on Kindle. But I'd say go for it - as the other commenter said, it's cheap, and it doesn't require much coding knowledge, and it even explains most of what you do need to know if it's new to you. The real breakthrough is implementing the transformation in terms of fairly simple loops - which as a coder worked well for my brain. A non-coder might not find the advantage as big as I did, but I certainly don't think someone who can pick up some basic coding would struggle to understand what is being taught.</comment></comment></comment></comment>


No, Dammit, This Is Not The iPad Mini - <AUTHOR> http://mikecanex.wordpress.com/2012/10/09/no-dammit-this-is-not-the-ipad-mini/

<comment><USER2> I think the author forgets the point of such posts is link bait anyway, to attract hits and ad revenue...

<comment><USER3> Yeah. They're not getting paid to report news. They're getting paid to bring in eyeballs.</comment></comment>


Start up India: Webcast [video] - <AUTHOR> http://webcast.gov.in/startupindia/ <comment><USER2> Narendra Modi's announcements and #StartupIndia policy pointers:

1\. Compliance regime based on self-certification. Labour laws – no inspection for 3 years

2\. Startup India hub – single-point contact ('friend, mentor, guide')

3\. Mobile app to be launched on April 1: registration of startup company in one day | Also portal for clearances, approvals and registrations

4\. Fast-track mechanism for startup patent applications

5\. Panel of legal facilitators for startups to file IP (patents, designs, trademarks) – costs borne by gov

6\. 80% rebate on filing of patent applications by startups, as compared to other companies

7\. Relaxed norms of public-procurement for startups. No requirement of turnover or experience, but no relaxation of quality

8\. Faster exits for startups (Insolvency and Bankruptcy Bill), eg: wind up within 90 days

9\. Fund of funds – initial corpus – INR 2,500 crore, later on 10,000 crore

10\. Credit guarantee fund for startups

11\. Tax exemption on capital gains

12\. Tax exemption to startups for 3 years to promote growth

13\. Atal Innovation Mission:sector-specific incubators, 500 tinkering labs, pre-incubation training,seed fund for high-growth; PPP model being considered for 35 new incubators; 31 innovation centres at national institutes, 7 new research parks like IIT-M. 5 new bio-clusters

14\. Innovation Core Programs for school students in 5 lakh schools

15\. Annual Incubator Grand Challenge to create world class incubators in India

16\. National and International Startup Festivals to provide visibility

Via YourStory ([http://yourstory.com/2016/01/start-up-india-live- coverage/](http://yourstory.com/2016/01/start-up-india-live-coverage/))

<comment><USER3> Why should people's tax money go to opening businesses. Fuck that! And You're giving them easy exit and shit, so they can totally screw up the money. I know that 99% of startups fail, and thats horrible, and that should not happen.

Why should people's tax money pay for IP rights and shit. This is totally brutal for Indian people. Their tax money should be used for roads, security and other critical shit. After thats done, they can open startups themselves. And Government should keep thier hands out of business.

<comment><USER4> India has a huge population and there is a shortage of jobs. Rather than job seekers, India needs more job creators. This initiative will give people incentive to take up entrepreneurship.

<comment><USER3> There are lot of people who are simply overworked. We don't need more jobs, just good labor laws.

Unemployment is usually kept high by having some workers overworked. This keep labor costs low. Also increases the costs of things so that employment becomes necessary. Oldest trick in the BOOK.

There is no way that everyone in a country will be working. Governments can't ensure that everyone has a job. Government's job is to build the Infrastucture and providing basic services.

<comment><USER5> i completely agree with you. I know how much teachers are overworked for every public activity. elections to census etc..this initiative going to help huge for tatas/birlas/ambanis. India still need critical infrastructure, education, health, helping majority (60-70%) of the people to bring out of poverty by providing them to succeed in agriculture. why not india become the hub for food rather than killing the seed by giving away rights to foreign companies like monsanto! So unfortunate!

</comment></comment></comment></comment></comment><comment><USER6> For someone who doesn't know much about the Indian Startup scene, is there tech coming out of India worth keeping an eye on?

<comment><USER2> There are many. I can list few:

[http://www.greyorange.com/](http://www.greyorange.com/) limeroad.com [https://www.oyorooms.com/](https://www.oyorooms.com/) paytm.com flipkart.com snapdeal.com

</comment></comment><comment><USER7> You need Cash/Caste to succeed as an Entrepreneur in India;</comment>


Baby Neo Is Bitcoin's First 'Undocumented Human' - <AUTHOR> http://cointelegraph.com/news/113688/baby-neo-is-bitcoins-first-undocumented-human

<comment><USER2> The first undocumented human is a lot easier to find on the web than I am.

<comment><AUTHOR> well he is undocumented not anonymous :)</comment></comment>


Bandwidth and privacy proxy from Mozilla - <AUTHOR> https://wiki.mozilla.org/Mobile/Janus

<comment><USER2> "Increase user privacy" by tunneling everything through the same proxy? I'm not so sure about that ;-)

<comment><AUTHOR> Submitter here. Depends if you trust the proxy. From the document it looks like connections to the proxy uses SPDY so it will be encrypted, so it increases user privacy in the sense that there won't be any plain text traffic between you and starbucks wifi.

There's an experimental addon for this [https://addons.mozilla.org/en- US/android/addon/janus-proxy-c...](https://addons.mozilla.org/en- US/android/addon/janus-proxy-configurator/) . I tried it but the stats always say nothing is proxy'ed. I haven't checked if that means nothing is proxy'ed or just a stats bug.</comment></comment>


Surprise Fujitsu Releases 64-Bit ScanSnap Manager for Older Scanners - <AUTHOR> https://tidbits.com/2020/07/27/surprise-fujitsu-releases-64-bit-scansnap-manager-for-older-scanners/ <comment><USER2> Nice, I guess. I gave VueScan my money about six months ago. Works flawlessly with my ScanSnap S510Ms.</comment>


From Apartment, to IPO, to a $3 Billion Valuation - <AUTHOR> http://mixergy.com/rajeev-singh-concur-interview/

<comment><USER2> This is about Concur. They have an incredible story, but they don't get much attention because they're in the business-to-business space.

If they were a consumer company, they'd probably get daily articles and blog posts written about them.</comment>


NASA Can't Explain What Made This Strange, Deep Hole on Mars - <AUTHOR> http://www.sciencealert.com/nasa-doesn-t-know-what-made-this-deep-hole-on-mars <comment><USER2> I'm no expert, but that looks like a gas pocket of some sort ruptured, created a cavity and collapsed in on itself. Kind like those methane craters in Siberia.

</comment><comment> Black-Plaid This looks like it has to be a collapse of some void below.

There's no ejecta around the crater, or any of the other impact signs.

</comment><comment><USER3> Cool image. Im guessing some more alien conspiracy theories will arise from it.

<comment><USER4> Alien deep pit mining...?</comment></comment>


Computer literacy in a 1969 British school - <AUTHOR> https://www.youtube.com/watch?v=f1DtY42xEOI <comment><AUTHOR> The title doesn't really give enough information about what's going on in this short, 7 minute, video.

It opens with the complex set of operations to just turn on the computer.

Then we see a class of (approx) 27 boys who are acting as registers and adders who are simulating a computer.

We see a simple game, and printer output.

One of the older children has written a programming language -minigol- for the machine to make it easier for the younger ones to use because assembly language is going to be too hard.

There's a little bit more information in this book extract:

[https://books.google.co.uk/books?id=Dhk9wHXfQMkC&pg=PA301&lp...](https://books.google.co.uk/books?id=Dhk9wHXfQMkC&pg=PA301&lpg=PA301&dq=miniGOL+programming+NELLIE&source=bl&ots=JSBHJLb4S6&sig=43ni_h89aG2-pxSgcEKd5qhBuII&hl=en&sa=X&ved=0ahUKEwjF14HpqKTUAhUMKcAKHRpVC70Q6AEIKDAA#v=onepage&q=miniGOL%20programming%20NELLIE&f=false)

The computer is an Elliot 405 (a 1959 machine); the school is Forest Grammar School. They got the machine in 1965 from Nestlé.

[https://en.wikipedia.org/wiki/The_Forest_School,_Winnersh](https://en.wikipedia.org/wiki/The_Forest_School,_Winnersh)</comment>


Julius Caesar's Greatest Military Victory [video] - <AUTHOR> https://www.youtube.com/watch?v=SU1Ej9Yqt68 <comment><USER2> And this is exactly how history should be taught. Very interesting.

And it doesn't look expensive either. Could be done in a couple of days.

</comment><comment> e-xcavator I little different perspective

[https://www.youtube.com/watch?v=Ut9GdMywFj0](https://www.youtube.com/watch?v=Ut9GdMywFj0)</comment>


Ask HN: Any entrepreneurs on HN who launched themselves from a F1 or H1B VISA? - <AUTHOR>

I have mostly been a lurker around here for a long time learning from the valuable experience of a number of people here. I have read numerous startup stories but after a short discussion with my friends during lunch, I thought of one thing: Why don't I read stories from student-turned or employee-turned (H1B sponsored) entrepreneurs?
I am curious to know whether an international student (generally on an F-1 VISA) or someone on a H1B VISA (employed by some company after graduation) can do a startup.
Any information on the following would be awesome:
Question 1: Can someone on a F-1 or a H1B VISA start a startup and still own it? If not, what can be done?
Myth 1: I heard that unless you are a citizen, you cannot own a company.
Question 2: Can someone on an F-1 or a H1B VISA raise seed capital from VCs?
Myth 2: I heard that VC's don't really bother with people on these VISAs.
Question 3: Can we apply for a patent on an idea that we came up with while still being a student or employed by a company.
Myth 3: I heard that the company or the university will take ownership of the patent if you apply for one while still working for them even though you did not use any of their resources.
If you are an international (student)/(employee on a H1B visa) and you recently had a startup experience could you kindly write down your story and some thoughts on the above questions? This would help not just me but a number of other people who are facing a similar situation.
I did my homework and came across the following link. While it is an awesome post, the author's experience is a little dated. Not really sure if anything has changed since then
http://www.k9ventures.com/2009/09/my-story-and-support-for-the-founders-visa/ <comment><USER2> Myth 1: Non-citizens can own American companies (this is true in most developed country)

Myth 2: There are a number of British startups which moved to the US after raising American financing (YC has a number of these). Typically this involved the US incorporated company applying for visas for the founders. So not having a visa that lets you work for the startup doesn't necessarily preclude you from raising financing with the assumption you'll be able to get an appropriate visa after.

Myth 3: Depends on your contract with your employer/company. Check it for details.

<comment><AUTHOR> 1 and 2 are awesome. Thanks a million for this information. Regarding 3, I will do some more digging and update my post.

</comment></comment><comment><USER3> On Myth 3, it depends on the contract, which in turn depends heavily on the state. In some states, an employer can ask you to sign a contract agreeing that anything you invent while employed with them is their property, and in such states, it's very common for employment contracts to do so. In other states, there are legal limits on what kinds of intellectual-property assignment clauses can go in an employment contract. Here's the relevant section of CA's code: [http://www.leginfo.ca.gov/cgi- bin/displaycode?section=lab...](http://www.leginfo.ca.gov/cgi- bin/displaycode?section=lab&group=02001-03000&file=2870-2872)

</comment><comment><USER4> I think the only requirement is that you can not work for the company that you own on H1B visa. If you think what's the point of creating a startup for which you can not feed your blood and sweat to grow it...go figure...

<comment><AUTHOR> @askar: Not a problem at all. I am only concerned about seeing my idea out there :) Thanks for the input.

</comment></comment><comment><USER5> Any news on the startup visa or EB-6? How long does it take to get approved? It will help so many entrepreneurs if this new visa was passed, instead of the current EB-5.</comment>


YouTube Killer Gets $100M in Funding - <AUTHOR> http://mashable.com/2007/08/09/youtube-killer-funded/

<comment><USER2> Providence Equity Partners? $100m? This doesn't sound like a startup. And that means they won't get startup quality people to work on it. And that means they are doomed.

<comment><USER3> Doomed? No way! They'll get the very best consultants money can buy to build an enterprise solution that will leverage their strategic advantages.

It'll be enterprise!! It can't possibly fail, and I'm sure they have the powerpoints to prove it.

(having worked for banks/government... I can imagine how the $100 million will be spent... and I can only laugh).

<comment><USER4> lol, I can picture it as well... it brings to mind that memorable quote from the movie Contact:

"What's the first rule of government spending...? Why buy only one when you can have two for twice the cost?"

This entire venture feels like the startup equivalent of Gigli: it seemed ridiculous before it was released, and even more ridiculous afterwards.

</comment></comment></comment><comment><USER5> Large corporations are not entrepreneurial, it's not in their nature. They're already throwing government-like money at it.

<comment><USER6> Microsoft is a large corporation..Go ask Netscape , Wordperfect ,Lotus 1-2-3 etc whether Microsoft is entrepreneural or not.

<comment><USER7> I'm not sure those are examples of entrepreneurship as much as ruthless competitiveness. At least one of those defeats was proven to be done illegally. They're all over a decade old.

You ask Google, Apple, and Ubuntu whether Microsoft scares them.

<comment><USER8> I think he was being facetious.

<comment><USER6> I actually was not. Whether or not you approve of MSFT's tactics, you really can't accuse them of not being able to respond to market challenges. Google may not be scared of them, but I would personally rather take my chances against NBC (for example) than go head to head with MSFT.

<comment><USER8> In that case I agree with staunch, I don't think we share the same definition of entrepreneurship.

</comment></comment></comment></comment></comment></comment><comment> mark-t You know, if they keep giving YouTube free advertising, they'll never kill it. Just look at cereal killers.

</comment><comment><USER9> Fluuuuush.</comment>


The GitHub Availability Report - <AUTHOR> https://github.blog/2020-07-08-introducing-the-github-availability-report/ <comment><USER2> > We strive to engineer systems that are highly available and fault-tolerant > and we expect that most of these monthly updates will recap periods of time > where GitHub was >99% available.

So that's them striving for two nines most of the time, which seems to be a fancy way of saying one nine. Be careful you're not setting the bar too high!

<comment><USER3> That doesn't seem to be what it's saying. Wording is unclear, but it seems to be saying that _for the incidents recounted in these updates_, most of the time the GitHub service itself will be 99% available. That's not the same as saying they only strive to make GitHub 99% available at all times.

<comment><USER2> Hm. Not sure I see that. The updates are monthly, so the period of time they're recapping will be the last month. And they're expecting that on "most" recapped periods the availability was >99%. I.e. they also expect to have months where availability is <99%.

</comment></comment></comment><comment><USER4> Three out of four times MySQL was involved.

<comment><USER5> I think the hosted SQL model may be fundamentally flawed when you are trying to do something as complex as what GitHub is doing. You are basically saying "Here, MySQL/Postgres/Oracle/et.al., I trust you with 100% of my replication & persistence logic. Good luck optimizing all that SQL!".

I have started looking at tying together clusters of business apps that each have independent SQLite datastores using an application-level protocol for replication & persistence (over public HTTPS). This allows for really flexible schemes which can vary based upon the entity being transacted. With hosted SQL offerings, you are typically stuck with a fairly chunky grain for replication & transactions. If you DIY, you can control everything down to the most specific detail.

For instance, when going to persist a business object's changes, you can have a policy configured that reflects over the type and determines how many nodes need to be replicated to and which ones should replicate synchronously vs asynchronously based upon it. Log entries may only be async to 2 nodes, but you may decide that any accounting transactions should be replicated to 2 near nodes synchronously, with 2 more far nodes being async.

Additionally, you could inspect various business facts in the entity (or session related to the transaction) in order to determine ideal persistence strategy. One powerful example here could be to use a user's zip code to determine the geographically-ideal node to store the primary replica of their account & profile data. This could allow for lower latency access for that specific user.

<comment><USER6> > I have started looking at tying together clusters of business apps that each > have independent SQLite datastores using an application-level protocol for > replication & persistence (over public HTTPS). This allows for really > flexible schemes which can vary based upon the entity being transacted. With > hosted SQL offerings, you are typically stuck with a fairly chunky grain for > replication & transactions. If you DIY, you can control everything down to > the most specific detail.

Ugh, I'm totally going to sympathize with whoever eventually joins your company after you've left who has to own this.

<comment><USER5> I don't think I have provided enough contextual details in order for this type of conclusion to be reached.

I'd be happy to offer a hypothetical if you are interested in debating the merits of my approach.

</comment></comment></comment></comment><comment><USER7> I don't understand the first one:

        a shared database table's
        auto-incrementing ID column
        exceeded the size that can
        be represented by the MySQL
        Integer type

Followed by:

        GitHub's monitoring systems
        currently alert when tables
        hit 70% of the primary key
        size

So why was there no alert?

<comment><USER8> More importantly, why is their ID type small enough to where this is even a possibility?

<comment><USER9> The "default" is a 32 bit int, large enough for almost 4.3 billion records. That is enough for the vast majority of tables, and going to a 64 bit int has some performance implications, which at GitHubs scale is absolutely something they need to take into consideration, just as they should have with the table size.

</comment></comment></comment><comment><USER10> Yes, a lot of down time for sure, but each of these is quite an unexpected edge-case. I wouldn't think that many of these issues would be reoccurring as they have added regression tests and process in place for each.

<comment><USER11> Yep. And several of them seem like issues that would be very difficult to reproduce outside of production (e.g. overflowing primary key index), so it makes sense that they were not caught earlier

<comment><USER12> It's actually an error I've seen multiple times in the past, and I'm not even working with databases full time. I do think it's surprising that no one had thought of implementing at least checks for these conditions.

<comment><USER13> Yeah, I think most people who touch/interact with backend/database code, even if not actually backend/DB developers, have a reaction nowadays to seeing auto-incremental IDs because it's famously hard to scale to any distributed architecture + introduces issues when you hit the limit.

Projects started in the last three years that I've collaborated/been part of have all ditched the auto incremental IDs.

<comment><USER14> Auto incrementing integer ids have some very desirable properties though. Not sure what you replaced them with.

<comment><USER15> Something I see more and more is a primary key based on guid/uuid;

I'm not fully aware of the merits of either approach, so I'm just putting the info I have at hand out there.

</comment></comment></comment></comment></comment></comment><comment><USER16> A couple of observations:

It seems that MySQL seems somehow connected to all the outages, especially the unexpected crashes.

>GitHub's monitoring systems currently alert when tables hit 70% of the primary key size used. We are now extending our test frameworks to include a linter in place for int / bigint foreign key mismatches.

In 2020, should we have Integer(32-bit) primary keys anymore? I think at this time, everyone should just go with BigInt or UUID for primary keys/foreign keys, and basically not have running out of key space be an issue you have to worry about.

<comment><USER17> I always use

        UUID PRIMARY KEY DEFAULT uuid_generate_v1mc()

In Postgres. It will give you UUIDs and the larger keyspace, without being excessively random (they're basically almost sequential). I do this _always_ , even if the table has other int columns that look like friendly values that could be used as PKs. Some time in the future they _will_ ruin your day.

<comment><USER18> Isn't UUID discouraged for a PRIMARY KEY pertaining indexes?

What would the B+Tree look like for over 2 billions UUIDS where there is no order within? Also, the cache locality problem.

<comment><USER19> This is why GP wrote "It will give you UUIDs and the larger keyspace, without being excessively random (they're basically almost sequential)". The main point for not screwing up the clustered index is the "almost sequential" part.

</comment></comment></comment></comment><comment><USER20> Good on GitHub for being transparent. That said, I hope they return to being a more reliable platform soon

</comment><comment><USER21> Everything is easy and obvious in retrospect. If you wonder how they missed something as simple as PK size.

As part of maturity model, every product should have periodic milestones base on their scale where engineers should reassessment their infrastructure and the choices they made earlier. But, you can always overlook things unless you have a checklist for everything.

</comment><comment><USER22> > GitHub's monitoring systems currently alert when tables hit 70% of the > primary key size

This is interesting. I wonder if they query the key size every N seconds as part of their monitor, or if they report the key size to the monitor on write.

<comment><USER23> We have a similar setup that just queries for the auto increment value every X period of time, creates next to zero additional load to do so.

<comment><USER22> Thanks.

Yeah that seems sane. The odds of you exceeding your monitoring threshold in 1 interval seems close to impossible too. Such as going from 70% to 100% in 30 seconds or whatever your monitor interval is set to.

</comment></comment></comment><comment><USER24> I'm curious about how Github generates 32 bit IDs in a distributed system.

</comment><comment><USER25> The last one is really funny to me in a slapstick way and anti-flapping sounds like a really appropriate term.

</comment><comment><USER26> I am wondering if Github ever consider switching to Postgre?

</comment><comment><USER27> facebook can learn something from github

<comment><USER28> External production systems depend on GitHub. For FB - it is fine to fail from time to time. Users will be even more productive :)

<comment><USER29> External production systems unfortunately depend on FB too as we've seen with all the iOS apps crashing due to issues with FB's iOS SDK.

</comment></comment></comment><comment><USER30> In other words, so many outages are happening that we're only going to write about it once a month.

</comment><comment><USER31> Interesting...

</comment><comment><USER32> Who doesn't think to use bigint for their auto incrementing IDs in Rails? This seems like it should be a non-negotiable for a company of scale such as GitHub.

</comment><comment><USER33> I wonder whether these problems are caused by bureaucratic and incompetent developers, poor SQL engine or both.

<comment><USER34> Bureaucratic and incompetent engineering management is more likely than bureaucratic and incompetent developers.

<comment><USER35> They're the same thing.

</comment></comment></comment><comment><USER36> I'm the VP of Engineering from PingCAP.

As a devoted customer and a big fan of GitHub, it's devastating to see service interruptions and our business impacted by these problems; as the team behind TiDB, we (PingCAP) believe there is something we can do to help solve the database high availability and scalability problem. We would like to propose the database team in GitHub to consider the TiDB platform. TiDB and TiKV can work as a scale-out MySQL and it has been battle-tested in all kinds of hyper- scale scenarios.

Additionally, just in case you didn't do this, we also recommend GitHub considering the Chaos-Mesh project ([https://github.com/pingcap/chaos- mesh](https://github.com/pingcap/chaos-mesh)) to do Chaos Engineering. Chaos Mesh was our internal chaos engineering platform and we open-sourced it on Dec. 31, 2019. It can be used for simulating different kinds of failures including network partition, flaky disk, node outage. You can easily use it to simulate failures in a test environment and confirm that the high availability works as expected.

<comment><USER13> If you read the published report, you'll see that only one of the issues are actually related to scalability in any way (and most newly created projects learned their lesson of not using auto-incrementing IDs for many reasons). The same goes for many companies, the downtime is not because of any scaling issues but rather maintenance, code deploys or other things where humans are involved.

So while the reward of you promoting your product on HN can be high, unless it's very specific and actually solves their need, it just looks spammy.

<comment><USER37> The big problem that I took away from the availability report was the one where they lost acknowledged writes. They might not need the scaling, but they do need the ability to lose the leader without losing writes. (It would be preferable to reject the writes and become unavailable rather than to acknowledge writes only to discard them minutes later. No external API user can handle the case where "Github acknowledged my writes, and I read them back, but now they're gone". But they can handle "Github returned 'service unavailable' when I made a write".)</comment></comment></comment>


Tesla retroactively extends free unlimited Supercharging to all current vehicles - <AUTHOR> https://electrek.co/2017/05/20/tesla-free-unlimited-supercharging/ <comment><USER2> It's really amazing that a company which is losing money, but valued at 50B, is somehow giving away free electricity not just to Model S's but now to the whole fleet of Teslas on the road.

Here's hoping for the Model 3 launch at 35k base, still</comment>


Ask HN: How can I make use of 6 months to prepare for the next batch of YC app? - <AUTHOR> <comment><USER2> Have your watched every video produced by YC? I've applied this last round and if I get in, I'm pretty it was because these videos helped me write a clearer and more concise.

Even if I don't get in, these videos have taught me enough that I've made more progress and insight on the last two months than arguably in the last year. I cannot recommend watching and rewatching these videos.

Also, you can still apply now, even if it is late. You know that right?</comment>


Creating a low-latency high-availability network for voice calls - <AUTHOR> http://www.whispersystems.org/blog/low-latency-switching/ <comment><USER2> Not enough detail here, but I'm surprised when I see the terms "voice" and "TCP" together. Do they use TCP to set up the call, then UDP to handle the audio?

Edit: Yep, they use UDP for the audio: [https://github.com/WhisperSystems/RedPhone/wiki/Signaling- Pr...](https://github.com/WhisperSystems/RedPhone/wiki/Signaling-Protocol)

<comment><USER3> With the traditional VoIP stacks, yes. There are two components to making phone calls: messaging and media. The messaging part sets up and tears down calls. The media part passes the audio.

I'd imagine they're doing the same.

<comment><USER4> but typically you use something that can have at least some intelegent behaviour like RTP not UDP. Why did they choose that when literally every other pure VoIP service uses RTP ?

<comment><AUTHOR> We use RTP (actually SRTP and ZRTP), but the transport is still UDP.

</comment></comment></comment></comment><comment><USER5> The next problem will be when they get to having large numbers of servers in a region.

Then two problems will manifest themselves.

1) The client will take long enough to work through the list of servers that the wrong server is chosen simply because the connection is initiated first.

2) This design has all servers seeing all calls. The load represented by all the TCP connections hitting all of the servers will consume more and more of a server.

Neither is a problem you can solve by adding more servers. In fact, they are made worse by adding servers!

However, if you're charging per call, that's what they call a "good problem to have".

Nifty solution to the problem though.

<comment><AUTHOR> Agreed. We haven't run into this yet (and aren't charging at all, this is an OSS project), but I think that would be the point where you have to do one of two things:

1) Architect your DNS response to include a small sample of the total result set for the region, where the sample includes at least one switch from each micro-region.

2) Break down and introduce load balancers, so that there's on load balancer per micro-region, which fronts all of the switches within that micro-region.

Fortunately an individual switch doesn't really do much (just shovel packets around), so the number of simultaneous calls a switch can handle is high enough that redundancy is more about availability than load.

<comment><USER6> I don't see how the license the software is released under is related to how much you charge to use the service...?

<comment><AUTHOR> Fair enough, I should have been more specific.

I was trying to imply that this is not a for-profit project, but you're correct, that's not what a software license communicates.

</comment></comment></comment></comment><comment><USER7> The server architecture is nice but my favorite part is the simple signaling protocol, as opposed to SIP or any other overly complex (for this use case) telephony signaling protocol. Nice work.

</comment><comment><USER8> i'm confused (which is not too surprising as i am no expert on this). why can't they hole-punch through nats? then they would avoid the extra bounce- through-server latency and would hugely reduce the load on servers. i thought that was how skype worked, for example.

(i realise this doesn't stop their "fastest first" idea being useful - i got kind of sidetracked by the explanation of how servers are used near the start of the post).

[ah, ok. thanks for the explanation.]

<comment><AUTHOR> Your NAT traversal strategy is limited by the type of NAT being employed. Traditionally, the worst case scenario for NAT traversal is "symmetric NAT."

Symmetric NAT means that each tuple of (source_ip, source_port, destination_ip, _destination_port) gets its own unique (external_ip, external_port) tuple. This is bad because it means that STUN is ineffective: your STUN server will see a different external port than what your actual destination would see.

Mobile data networks are actually _worse_ than symmetric NAT. Not only will your external port change based on your target, but your external IP likely will as well.

This makes NAT traversal, AFAIK, basically impossible.

<comment><USER9> And there's no real reason to do it either given the availability of global IPv6 addresses and any of the free tunnel brokers/teredo/etc, other than the simple lack of adoption/momentum. Most ISPs will need a push, but from an infrastructure perspective it just boils down to a new gateway router or a firmware upgrade. It doesn't even need replacing the end-user equipment if ISPs simply set up a tunnel server for their own customers as a transitional measure.

</comment></comment></comment><comment><USER10> So it's basically a very pragmatic tradeoff for getting 80% of the value of geo-based DNS with only 20% of the effort.

Nice work ...</comment>


Focus On What Matters Or Sleep Alone - <AUTHOR> http://www.jjude.biz/2013/05/focus-on-what-matters-or-sleep-alone/ <comment><USER2> This person measured the wrong thing, determining in the process both why what he measured was useless and what he should have measured (things directly related to income), and somehow learned the lesson "measurements are useless"? :(

</comment><comment><USER3> Amusement: So Indian - use of 'MNC', equation of enslavement therein with success.

Summary: Back-slapping traditionalists meet cold reality.

Takeaway: You can't tell the future, so don't lock yourself in to a single high-risk decision! (Or a socially mandated view of 'acceptable' or 'successful')</comment>


Ask HN:  How Can I Make My Facebook App Better - <AUTHOR>

http://www.facebook.com/apps/application.php?id=375391472244<p>I'm a student at the University of Arizona and I made this Facebook app.  I'm looking for a serious critique please help.  Also I made a site for it oinkypig.com any suggestion on that also would be nice. Thanks <comment><USER2> How do you rate? I didn't see where you could rate the games. If you could use javascript to change between the game types that would be better then a postback. Also, it is prolly better to use an IFrame instead of FBML for speed.

</comment><comment><USER3> Change your development platform.

Facebook has made itself very unpopular as of late.</comment>


Ask HN: How do you like your Surface Book? - <AUTHOR> I heard good things about hardware and not so good about software. I have a MBP 2017 and I don't like it, so I am thinking about getting a new working machine.<p>Is Surface Book a good choice? Do you regret getting it? <comment><USER2> They've been showing up in my circles a lot recently. I work in the public sector and we're pretty much all windows, and that's sort of the problem with it. Or at least my problem with it. It's genuinely a great device, I'll admit that I'm not a Mac power user as such, but the trackpad feels on par with my Mac and the keyboard and screen are better. The fact that it also doubles as a mbp and iPad Pro for things like note taking makes you wonder why it's not made by Apple. It's windows though, and I realise that I may be one of the few people who doesn't like windows 10, but I just don't. I can't put my finger on it exactly, I even like CMD and powershell as is, but it just doesn't sit right with me for some reason.

I'm personally regretting getting a MBP 2018, but the resale value is still so high that it will be able to pay for most of the XPS that I'm considering replacing it with. I'm just really worried that Ubuntu won't be able to plug and play with my 4K monitor.

If you don't mind windows, however, I think the surface books are everything the mbp ought to have been by now.

</comment><comment><USER3> A few years ago, I was holding out for a new MBP for ages, and when it didn't come I decided to bite the bullet and buy a Surface Book.

I own the first-gen Surface Book, and it's probably the best laptop I've ever owned, Windows or otherwise. The keyboard is great, the screen is fantastic, and while the trackpad isn't as good as the MBP it's a close second-place.

The touch-screen and pen are nice, and they work well, but I never use them. I'm not much of a tablet guy anyway, so it was never going to appeal to me like it would to others.

In terms of OS, Windows continues to improve while OSX deteriorates. I used to do a lot of work with .NET, so my opinion is probably biased, but I'd consider Windows to be a better development platform than OSX, especially with WSL. It's still a pain in the ass with some languages like Ruby, but it gets better every year, and if OSX continues to get worse I can see people ditching it and going with Linux or Windows.

<comment><USER4> > but it gets better every year?

Also, can you say how/why it is getting better?

<comment><USER3> Safety. I always use my dad as the perfect metric for this, because he fits the elderly tech stereotype perfectly. I can give him Windows or OSX and he'll usually butcher them into a mess. Their Mac is an absolute mess of toolbars and bloatware, whereas the Windows machine has zero issues after several years.

Speed. Windows always used to have issues with installs getting slow over time. I've had the same base installation of Windows 10 on my Surface Book and it's as fast as it was the day I bought it, despite several hundred gig sitting on the hard drive, numerous VM's, and several IDE's.

Stability. My Surface Book hasn't crashed in years, and my other Windows 10 machines have crashed so infrequently that I forgot what a BSOD looked like nowadays.

Cleaner UI. I think toolbars are still a bit of a mess on Windows 10, but they dud a good job to get away from the mess that was Windows 8, and I'm yet to meet someone that struggles with Windows in the same way they struggle with other OS's.

These aren't headline features, but they're the key points where Windows improves and where OSX seems to struggle. I still love the OSX UI, but I fear that we're not far away from things becoming more iOS friendly on the desktop, and parts of that fantastic UI being torn down.

</comment></comment></comment><comment><USER5> It depends on how you'll use it.

The mechanism to detach the screen is not really reliable. It may work without issue 90% of the time but knowing that there's a 10% chance that I'll have to deal with some annoying bug means that I usually avoid using it.

Taking notes with the surface pen works great and is a huge convenience but if the goal of your notes is to learn something, pen and paper work better (bonus: reviewing physical notes gives you a break from the screen).

If you take away the detachable screen and the digital notes, you're left with an overpriced laptop.

With that said, I can't say that I regret owning one. I've used it for university, for work and for some light gaming.

I would also say that it works great for travelling (slim, light weight, good battery life, comfortable touch pad, etc.)

</comment><comment><USER6> I have the first gen Surface Book for home after replacing an old Macbook and I like it. The pen feature, battery life, and the OS are all great, with the following caveats

\- It's the only device I've ever cracked a screen on. There's a vertical crack from the bottom of the screen to the top, which I attribute to some kind of weight on the laptop in my bag since there's a gap between the keyboard and screen when closed.

\- My WiFi chipset required me to disable an advanced TCP setting (offload? Can't recall, found in a forum) in the registry to not crash my WiFi router or slow it down to 3Mbps

\- Periodically my laptop will crash while sleeping (maybe it's going to hibernation? Haven't dug too hard) and prompt me with Bitlocker recovery every time.

</comment><comment><USER7> I have a SB2 since ~ half of the year. It's beautiful machine, but I would definitely not buy it if I would have to travel with it pretty often (fortunately, I work remotely).

My story is that I was a linux user, who switched to OSX, then gone back to linux and recently, thanks to WSL (linux subsystem for windows) I can still work comfortably in the environment I like.

Btw. windows surely has changed since I was working on it last time in the long run (for the better!)

</comment><comment><USER8> awful, if you've used a macbook before you might hate this, i do. the keyboards is crap, the mouse pad is not as responsive ... just not worth the money, i'd rather get half the RAM and compensate with being super productive.

</comment><comment><USER9> I have been thinking of one for a while now. But I love OS X over windows so I am not sure how I would go. It's been a while since I have been on a windows machine.</comment>


Ask HN: Please explain to me how structs work in C - <AUTHOR>

Hi,
C newbie here. I'm trying to dig into C so I can do more things other than just web development, like Linux kernel development or systems development.
Rust also looks promising, but I'd like to learn C first.
I already got pointers, or rather, some of it:
http://sprunge.us/DcWS?c
However, I'm still not sure about structs, anyone please?
Book suggestions are also welcome. <comment><USER2> Structs can be looked at like any other collection of data items grouped together under a specific name. Different languages call the grouping by different names: so you might find amongst the languages words like:

COBOL - record, SQL - row, Excel - row, C - struct, etc.

If you only know Java, a (very) rough 'n' ready conceptualization might be an object that has data items, but no methods at all.

A struct pointer will point to the start of each struct only, and incrementing the pointer will point to the start of the next struct in the array (if one exists). Within that struct the separate field will be only pointed to by a '->' thus 'str_pointer->item0'.

Note also that you can use the name itself of the struct (which in reality is also a pointer, but is usually not considered as such), in this case the item is selected by using a '.' thus 'str_name.item0'

The biggest problem I had in learning structs was the difference between the '.' and the '->' syntax. I already knew what a record or a row was.

</comment><comment><USER3> Have you tried looking at "Learn C the Hard Way"? Here's their section on structs:

[http://c.learncodethehardway.org/book/ex16.html](http://c.learncodethehardway.org/book/ex16.html)

</comment><comment><AUTHOR> Thanks.</comment>


Ruby and C (Part 1) - <AUTHOR> http://www.rubyfleebie.com/ruby-and-c-part-1/ <comment><USER2> He doesn't really get into much useful detail here, instead saying he'll go into more detail in part 2. This was written a year ago, and he posts in the comments that he might someday post Part 2, but at this rate, I wouldn't hold my breath. Anyone have a better reference for actually working with c and ruby?</comment>


Cable companies funding fake consumer groups to attack net neutrality - <AUTHOR> http://www.engadget.com/2014/06/06/cable-companies-alleged-to-astroturf-net-neutrality/

<comment><AUTHOR> I changed a bit the original title (/are reportedly//) because it was bigger than 80 characters.</comment>


David Lee From SV Angel: "Foursquare Is One Of The Most Misunderstood Companies" - <AUTHOR> http://techcrunch.com/2012/11/28/david-lee-from-sv-angel-foursquare-is-one-of-the-most-misunderstood-companies/?utm_source=feedburner&utm_medium=feed&utm_campaign=Feed%3A+Techcrunch+%28TechCrunch%29&utm_content=Google+Reader <comment><AUTHOR> Ugh, I hope this isn't an indication of any trouble they could be having raising. The explore function could be moved a bit more front and center, they have incredible data to go head to head with yelp.</comment>


Unusual applications of Bayesian reasoning [pdf] - <AUTHOR> http://omega.albany.edu:8008/ETJ-PDF/cc5d.pdf

<comment><USER2> ET Jaynes is the best! Read the whole book!

[http://bayes.wustl.edu/etj/prob/book.pdf](http://bayes.wustl.edu/etj/prob/book.pdf)

<comment><USER3> It's certainly worth looking at. I personally find Jaynes's acerbic commentary entertaining, although I imagine it grates for many. His overall view of probability is satisfyingly coherent, but I do not consider myself sufficiently expert to assess whether it is meaningfully better than the alternatives. And there are places where I believe he is just wrong, e.g. he seems to reject Bell's inequality and view quantum probability as just another case of limited information.

There are also times, like in the chapter linked in the parent, where his zeal is bothersome. He begins the discussion of ESP by saying it would be too dogmatic to assign a probability of 0 to ESP. But, when faced with the evidence, he just throws in a bunch of other possible hypotheses that can explain it:

 _Therefore, this kind of experiment can never convince me of the reality of Mrs. Stewart's ESP; not because I assert Pf = 0 dogmatically at the start, but because the verifiable facts can be accounted for by many alternative hypotheses, every one of which I consider inherently more plausible than Hf, and none of which is ruled out by the information available to me._

Of course the choice of priors for those other hypotheses were subjective, and there's no limit on how many other hypotheses one might add to explain away unpleasant data. This strikes me as more rationalizing than rationalist.

<comment><USER4> Really? Do you actually think that Jaynes is being unreasonable when he assigns ESP a prior that is lower than "has some sort of trick" or some other thing that generally turns out to be the explanatory factor for a magician?

He's saying that ESP is an unlikely explanation. He's saying that it is Probably Something Else. The experimental data cannot distinguish them. That's why it's not compelling. It has very little to do with rationalization. It's a terrible test.

<comment><USER3> No, clearly the underlying mechanism that he describes is good. However, as he admits in the passage I quote, he is so unconvinced by the possibility of ESP that no tests of this sort could ever convince him. The issue isn't just that naive tests of ESP are easily cheated, either, because you can apply the same logic to more stringently controlled tests.

It just seems more honest to me to admit up front in this situation that you cannot be convinced of ESP (give it prior probability of 0) instead of playing these games to essentially shift the "dogmatism" onto the choice of alternative hypotheses and their prior probabilities (which seem chosen to enforce a posterior probability of ESP of ~0.)

<comment><USER4> Look. I'll explain it really simple. He's saying it has to be > 0, because he is unwilling to rule out ESP as a logical possibility. If he assigned it 0, no matter how good the experimental design was, and no matter what the test was, he would be unmovable from this position. 0 is forbidden if you want to accept it as a possibility. This is why he says this. He also is being honest about his appraisal of the general likelihood of ESP. It's very low. He doesn't bother to explain how low because it turns out it's IRRELEVANT.

You literally have to believe ESP is the most likely explanation among all the usual alternatives ALREADY in order to think it was ESP after ingesting the data, because the data in this test is not EVIDENCE for ESP, because P(E|sort of works ESP) and P(E|one of the assistants wore glasses and Stewart could see some reflections) or whatever your remotely plausible alternative - all look pretty identical.

It is not evidence, in the sense that you cannot do 500, 37,100, or a 1 million card guessing attempts in this setup with this level of detail and expect it to shift belief of a rational agent. The ratio between the priors of the usual suspects is going to look the same as your ratio of posteriors between all the hypotheses after the test.

In order to convince someone of ESP rationally, you need to demonstrate that it is extremely difficult to cheat under the test conditions, in the sense that P(E|trickery) goes down.

Your alternative theory ISN'T the null hypothesis. It's a garden variety non- magical trickster, which exist in great numbers, whereas nobody has yet seen even a single instance of ESP as it is normally meant.

<comment><AUTHOR> > It is not evidence, in the sense that you cannot do 500, 37,100, or a 1 > million card guessing attempts in this setup with this level of detail and > expect it to shift belief of a rational agent. The ratio between the priors > of the usual suspects is going to look the same as your ratio of posteriors > between all the hypotheses after the test.

Exactly. When you suspect that the evidence is biased (or in other words, generated by a process _other_ than genuine new physics or supernatural activity), more iterations of the process cannot give you much more evidence. What more iterations does is reduce _sampling error_ from random variation, but it does nothing about _systematic error_. The idea that you can run a biased experiment 1000 times and get a much more accurate answer than if you ran it 10 times is an example of what Jaynes calls 'the Emperor of China' fallacy, which he discusses in another chapter (I excerpt it in [http://www.gwern.net/DNB%20FAQ#flaws-in-mainstream- science-a...](http://www.gwern.net/DNB%20FAQ#flaws-in-mainstream-science-and- psychology) ).

That this is so surprising and novel is an interesting example of a general problem with null-hypothesis testing: when a significance test 'rejects the null', the temptation is to take it as confirming the alternative hypothesis. But this is a fallacy - when you reject the null, you just reject the null. There's an entire universe of other alternative hypotheses which may fit better or worse than the null, of which your favored theory is but one vanishingly small member.

What is necessary to show ESP specifically is to take all the criticisms and alternatives, and run different experiments which will have different results based on whether the alternative or ESP is true. (The real problem comes when it looks like the best experiments showing ESP are at least as rigorous as regular science and it's starting to become difficult to think of what exactly could be driving the positive results besides something like ESP: [http://slatestarcodex.com/2014/04/28/the-control-group-is- ou...](http://slatestarcodex.com/2014/04/28/the-control-group-is-out-of- control/) )

</comment></comment></comment></comment></comment></comment><comment><USER5> That chapter was very interesting... until I got to this:

"Scientists can reach agreement quickly because we trust our experimental colleagues to have high standards of intellectual honesty and sharp perception to detect possible sources of error. And this belief is justified because, after all, hundreds of new experiments are reported every month, but only about once in a decade is an experiment reported that turns out later to have been wrong."

Er.. what?

[http://www.plosmedicine.org/article/info%3Adoi%2F10.1371%2Fj...](http://www.plosmedicine.org/article/info%3Adoi%2F10.1371%2Fjournal.pmed.0020124)

"Why Most Published Research Findings Are False"

(Ok, so Ioannidis' article was written a year later than the book, but that's a pretty nasty blow to the argument.)

<comment><USER5> A second problem...

"As a simple, but numerically stronger example illustrating this, if we toss a coin 1000 times, then no matter what the result is, the specific observed sequence of heads and tails has a probability of only 2^−1000"

No... if you toss a coin a thousand times, the probability of observing the exact sequence you just observed is 1. It will ALWAYS happen (that's what probability 1 means). Yes, if you had an independent specification for the sequence (like writing it down before tossing the coin, or converting the binary representation to ASCII and discovering it spells "Kilroy was here") then the probability would indeed be 2^-1000; but that would be a different case.

<comment><USER4> It's actually not a problem. You can come up with any number of hypotheses about coins. Some of them take the form, "This coin will produce <some specific output> in the next 1000 typical flips". That hypothesis and others with similar, more complex form, like the pair of hypotheses that predict flip 1001 after the same first 1000, GAIN CREDENCE when you perform 1000 flips that conform to them. Others of the similar form lose it. Other hypotheses of wildly different construction, like, that a coin is more or less fair, lose and gain credence according to whether or not they predict the observed result.

The fact that you didn't write a hypothesis down before you did the test has very little to do with whether or not the data supports the hypothesis. Hindsight bias matters, but only as far as it corrupts your experience. The machine with the infinite library of coin-flip-hypotheses updates just fine.

On a side note, coins are not fair, in general, and Jaynes actually goes into some detail about the process of cheating at coin flips.

</comment></comment></comment><comment><USER6> "Unusual", really?

<comment> loup-vaillant Unusual at the time. It surprised me, but I was reading LessWrong for 2 years before I read this, and have internalized the notion that probability theory is basically universally applicable.

But back then when Frequentism dominated, I believe we tended to limit probability theory to reproducible experiments.</comment></comment>


Show HN: FullStory – Private-by-Default Mobile Analytics - <AUTHOR> https://bionic.fullstory.com/private-by-default-mobile-analytics/ <comment><USER2> The kicker for this is whether the user is in control of the amount of masking going on or not.

If the app maker is in control, and the user can do nothing but use the app or not, then while the new defaults are better than nothing, I will continue to have all known FS domain names blocked on my devices / not use said apps at all.

Can the user permanently set and forget a "I don't care if the devs want analytics, they aren't getting them from me" flag in the app? If yes, good. If yes by default, better.

Can the user see what the analytics wants to unmask? If yes, good. Can they permanently make surgical tweaks to the unmasks to not unmask certain fields? If yes, better and impressive.

Edit: the wireframing and reconstructing from xaml views is quite the technical innovation, better than screenshots indeed.

<comment><AUTHOR> We offer a small level of control via the FS.consent API that we have available across platforms ([https://developer.fullstory.com/consent](https://developer.fullstory.com/consent)), but at this time the app maker is really in control.

I'd love to have us give better controls to end-users -- we're still investigating ways for users to better control things like that on their own devices. The web makes this a bit easier with adchoices (ie: setting cross- domain cookies opting out) and the ability to more easily block domain patterns with browser plugins.

We have an internal team that is dedicated purely to privacy innovation and I'll bring this up with them.

> Edit: the wireframing and reconstructing from xaml views is quite the > technical innovation, better than screenshots indeed.

Thanks! This took us a _long_ time to get right, as you can imagine.

<comment><USER3> Seems simple enough: To turn on any analytics users should be redirected from the app to the webpage. Anyone that doesn't go there and turn it on should have it off no matter what the app developer does. But I'm guessing you don't _really_ want to make it a user choice.

</comment></comment></comment><comment><AUTHOR> Hey all - we've been working on a brand new approach to mobile analytics and session capture for the last 4 1/2 years. Our team is ultra-focused on building something that we can be comfortable with using in apps on our own devices and we're very happy with the balance we have struck.

This blog post scratches the surface on the approach we're taking and how we've balanced privacy and fidelity.

The product page has some additional info as well:

[https://www.fullstory.com/mobile-apps/](https://www.fullstory.com/mobile- apps/)

Happy to answer any questions about how we are doing this, how we're putting privacy first, or technical questions. Some other folks from the team will be around as well.

<comment><USER4> There is a demo request form, but no information on whether it's generally available. Is it?

<comment><AUTHOR> It is generally available, but we're throttling new customers while we scale up as the privacy features require a slightly higher level of hand-holding (we'd rather launch slower than risk someone accidentally capturing sensitive information).

</comment></comment></comment><comment><USER5> Apps should prompt me for my permission to share any analytics data if they want to claim that they are "private-by-default". It would be nice if FullStory also provided first-class example UIs to app developers to help them correctly obtain user consent while locally buffering tracking events in the background.

I helped build a product for site owners that automatically quarantines tracking events (including FullStory) for replay with consent at a later time[1]. This product enables sites to include scripts with potentially risky privacy implications like FullStory without ever having to worry about unconsensual PII data emissions. Blog post coming soon!

1\. [https://transcend.io/consent-manager/](https://transcend.io/consent- manager/)

<comment><AUTHOR> Very cool! We support the ability for app and web developers to enable a mode like this using our shutdown ([https://developer.fullstory.com/stop- recording](https://developer.fullstory.com/stop-recording)) and restart ([https://developer.fullstory.com/restart- recording](https://developer.fullstory.com/restart-recording)) APIs.

The documentation doesn't specify this (yet), but no data leaves the device if recording is shut down.

</comment></comment><comment><USER6> love fullstory - great atlanta company, and i know a bunch of people that work there are stellar! an issue i've had with them is the cost is very high in comparison to other products in the space.

something that is interesting to note is how similar to UI is to their competitor LogRocket. I don't know who copied who (or maybe they both copied someone else?), but the similarities in look and feel were very uncanny

<comment><USER7> LogRocket (~2016) is much younger than FullStory (2012) - as an aside, though, I didn't find their UIs to be that similar.

FullStory feels like its UI has certainly received more thought and care over time, whereas LogRocket is full of lots of new bells and whistles, but they're still sorting out how to put the experience together elegantly. LogRocket has this problem because they're building features so quickly (though I'm sure a couple good UI/UX hires could help with the UI keeping pace with features).

Agreed on price, by the way! We were happy with the FullStory product and don't utilize LogRocket's additional dev tools, but switched to LogRocket due to cost.

</comment></comment><comment><USER8> I love that it starts off with "I've worked with some of the best engineers in the world" — do they really need that much pampering, or is there a ranking list that I missed on?

<comment><USER9> I dunno, personally I enjoy working with Matt and like that he feels this way about us. FWIW I don't really believe it's even possible to rank people based purely on talent. I worked with some _incredibly_ talented engineers in my time at Mozilla and I came to realize that we all have our specialties and we work best by using our individual skills to work together. (I was a little fanboy-ish about working with Brendan Eich when I started but had my "aha" moment when he started asking me toolchain questions. :)

<comment><USER8> I am happy to hear that: maybe I am just too much of a cynic and appreciate more "real praise" (for particular accomplishments) vs "empty praise" — I understand it could be just me, even in establishing what's real or empty, so whatever works for you :)

</comment></comment></comment><comment><USER10> Finally a privacy-aware digital experience product for mobile apps!</comment>


A Nazi Interrogator Who Revealed the Value of Kindness (2014) - <AUTHOR> https://psmag.com/social-justice/nazi-interrogator-revealed-value-kindness-84747 <comment><USER2> Almost all professional criminals know the antidote for this kind of interrogation. Military must know it too.

You don't talk with the interrogators at all (except name, rank, serial number, and date of birth). If they interrogate you 8 hours per day, you stay mum. No friendly chatter, nothing.

<comment><USER3> > Almost all professional criminals know the antidote for this kind of > interrogation. Military must know it too.

Military interrogation is very different from criminal interrogation. The goals are different on both sides of the table. As a general rule, captives in a military setting are more concerned with the lives of others than their own. The opposite is true in a criminal situation. This changes the tactics dramatically.

Example: your squad is captured behind enemy lines. Two of your guys are severely wounded. Your captor asks you for some information that you know is unclassified in exchange for medical care for your buddies. Do you stay silent?

Before anyone says "they have to give medical care because of Geneva", remember we live in the real world.

<comment><USER2> Professional criminals in criminal organizations almost always do this.

It's mostly futile to try to interrogate members of Hell's Angles for example. The shut up and do the time.

Most low level criminals are criminals because they have drug/alcohol dependency, neurological problems, etc.. that lead low impulse control. They are easier to deal with.

</comment></comment></comment><comment><USER4> Point 4 has an intriguing modern analogue: the overwhelming desire many (most?) of us feel to correct someone who makes a factually incorrect statement on the internet. Perhaps the monkey is genetically hard-wired to be a smart-arse.

<comment><USER5> > Perhaps the monkey is genetically hard-wired to be a smart-arse.

I think it is more about smart people being somehow able to see the pointlessness of the status game with materialistic objects, but somehow not how they're playing the same game with knowledge.

On the other side smart people can be quite insecure about their smartness, that they might not be as smart as they think. So correcting others on the internet might be a way to quieten these insecurities.

<comment><USER6> My take is that it's simply satisfying and addicting.

I managed to partly wean myself from this only by realising that people are rather interested in reinforcing their opinions than facts.

<comment><USER7> > addicting

addictive.

... yes, apparently you are right.

<comment> pure-awesome Actually, addicting is considered an acceptable form of the word; [https://english.stackexchange.com/questions/20327/whats- the-...](https://english.stackexchange.com/questions/20327/whats-the- difference-between-addictive-and-addicting)

...wait a minute.

</comment></comment></comment></comment></comment><comment><USER8> There was a hearing about torture (I think it was in the US Senate). An interrogator who was said to be highly effective was answering questions. A senator asked something like:

"Torture has been used since mankind has been around, it must be pretty effective."

His response was something like:

"No it is just EASIER to hit someone, not more effective."

<comment><USER9> Torture is the best tool if you're trying to get an easy scapegoat.

[https://9gag.com/gag/4856078/cia-fbi-kgb-vs- rabbit](https://9gag.com/gag/4856078/cia-fbi-kgb-vs-rabbit)

Based on studies like the one described in the article, there are much better tools than torture if you're actually trying to extract useful information.

<comment><USER10> Did you just link 9gag as if KT was a reputable source?

<comment><USER9> It's a political cartoon that shows that shows how torture is used. I didn't cite it as a research paper. The studies I referred to were described in the main article

</comment></comment></comment></comment><comment><USER11> The most important theme in Dale Carnegie's _How to win friends and influence people_

If you ever want to influence some one, ever want to hold some one in your spell and have them totally in your control- _Please show genuine interest and let them do all the talking_. There are anecdotes going back to the life of Abraham Lincoln and other people. If you ever want to get people do things for you, and like you. Let them talk, show genuine interest, and do not correct or interrupt them. Even if they are just plainly speaking wrong things.

Everyone in the world wants an audience to perform in front of and receive applause. For some its playing piano, sleight of hand, singing, acting and for almost every one its just talking.

I'd like to believe that list includes criminals, and prisoners of wars etc too.

The most important rule of Influencing people. Be presentable, and likable. But remember influencing is about the people you are trying to influence, not yourself. The more you make it about them, and the more you make them feel special the more obligated they feel to help you.

<comment><USER12> Ah. There is someone I know who when we talk, just listens and acts very interested, but never really engages with what I am saying or argues his own opinion. I think I understand why now.

But while he makes excellent initial impressions, this behavior has become infuriating and very off-putting. Such behavior might work for shallow relationships but it is no good if you want a relationship with depth.

<comment><USER11> Letting the other people do the talking doesn't mean turning totally mute.

You need to keep the other person busy by providing them topics to talk about themselves.

</comment></comment></comment><comment><USER13> For an example of this, see this article about how OPP interrogator Jim Smyth used a non confrontational approach to extract a confession from a Canadian serial killer.

[https://www.ctvnews.ca/a-deeper-look-into-the- interrogation-...](https://www.ctvnews.ca/a-deeper-look-into-the- interrogation-of-russell-williams-1.565832)

There is also a video of the whole interrogation, but I don't recommend watching it, it contains disturbing material, and for me it lingered in my mind for days.

</comment><comment><USER14> > If we include virtual interactions, the range of people a person interacts > with each day continues to grow. This essentially means that the number of > opportunities to "simulate" strategies for interacting with others continues > to grow. If being nice is the winning strategy in modern society, then the > increasing number of interactions will increase the speed at which people > "learn" to adopt this strategy.

I'd certainly like this to be true, but the past couple of decades have shown that unmoderated internet fora can tend to get pretty toxic, so it's hard to be so optimistic. Part of this could probably be explained by algorithms promoting contentious content for page views. But such toxicity was also present before the rise of modern algorithmically controlled news and social media, such as USENET newsgroups in the 90's and early 2000's.

<comment><USER15> The good news is that the toxicity rarely carries over to "real life", where people lose their anonymity and can be held accountable for their interactions. Most people that are toxic in both ecosystems would be toxic in either regardless. Of course, the exceptions become news fodder ("he was a good boy until he learned how to internet", etc.).

</comment></comment><comment><USER16> I think this technique will work if the victim does not expect interrogated by this approach. So, for example a terrorist group notorious for beheading victim, by contradicting themselves and use a friendly approach, then it will work.

For example for police force, they cannot play too tough due to law restriction, then those really bad guys basically don't give a fuck, so it may not work.

<comment><USER17> Yes, there are big differences between interviewing a police suspect and interrogating a prisoner of war. For example, the police suspect may be worried about going to prison if they say the wrong thing, or being murdered if they betray a colleague, while that hardly applies to the prisoner of war. Also, the police suspect is typically speaking in front of several witnesses while being (visibly) recorded.

By the way, if someone working for the Luftwaffe during the second world war is a "Nazi interrogator", then presumably any RAF people being interviewed would be "Tory airmen".

<comment><USER18> The UK was not a totalitarian state whose most important and well-known characteristic was absolute control by a single political party.

<comment><USER19> Still, there seems to be no evidence that he was a Nazi. My country was also under the control of a fascist party during that time, yet it was a conspiracy of soldiers and low-rank officers that brought it down.

<comment><USER18> My point is that "Nazi interrogator" just means he was an interrogator for Nazi Germany, since it's that country's defining charteristic.

<comment><USER20> Beware imprecise language: Germany has not had a Nazi state since 1945, and is not anything like that. Also, there were SS officers and German military officers, and they were not the same.

<comment><USER18> All the more reason that calling this guy a Nazi interrogator is useful and reasonably correct! If you called him a German interrogator you'd have no idea what era he from or what role he might have played. The phrase "Nazi interrogator" tells us immediately that he was an interrogator for the German government somewhere between 1933 and 1945.

<comment><USER21> How about "Wehrmacht conscript?" That's extremely precise and accurate.

<comment><USER18> Seems good as well. The Germans didn't reuse that name after the war, so it works.

</comment></comment></comment></comment></comment></comment></comment></comment></comment><comment><USER22> Kindness and caring is probably more effective than anything else, no matter what you want to achieve. And ethically way superior.

It is however of course considered devious to use it with any ulterior motive in mind - especially when directed against the interests of the object of kindness.

Warfare characteristically leaves many ingrained moral truths in the dust.

<comment><USER23> > Kindness and caring is probably more effective than anything else, no matter > what you want to achieve

How so?

<comment><USER24> Well, I can easily imagine that it could be literally impossible to break a sufficiently determined person, if someone doesn't want to speak then they will endure incredible amounts of torture without breaking. History is full of examples like this. But if you spend the same time befriending them and making them feel like they are on the same side as you....then it's hard to imagine it couldn't lead to a positive outcome.

<comment><USER23> > I can easily imagine that it could be literally impossible to break a > sufficiently determined person

Yes I agree and the recent report on the CIA shows some evidence for that [1].

> But if you spend the same time befriending them and making them feel like > they are on the same side as you....then it's hard to imagine it couldn't > lead to a positive outcome.

This I have a harder time believing, and besides this article, I didn't know of any evidence.

[1] [https://www.amnestyusa.org/pdfs/sscistudy1.pdf](https://www.amnestyusa.org/pdfs/sscistudy1.pdf)

</comment></comment></comment></comment><comment><USER25> Post WWII, Scharff emigrated to the US and worked as an interrogation instructor with the USAF, due to the respect US Army Air Force aircrew exposed to him had for Scharff during the war when Scharff interrogated them.

In the last decade plus of conflict, within military circles, Scharff's book has been consistently brought up whenever the topic has covered things like waterboarding and enhanced interrogation techniques.

Scharff's book is excellent and plays to our natural human need for compassionate and empathetic human connection.

It's worth mentioning that while Scharff's techniques have been proven to be very effective and useful for long-term interrogation there is still a place for "shock of capture" tactical questioning.

By that I mean in the period immediately following the capture of an enemy combatant there is an opportunity to apply psychological pressure(fear of implied threats, etc) and attempt to extract useful information without violence(they are now captured so the duty of care for them is on their captors), before they transition into longer-term incarceration and professional interrogation.

</comment><comment><USER26> This gives me the idea for an "escape room" type of game, which would involve the subject taking a vacation for up to 2 weeks to participate in the game.

The business gets them into a room and interrogates them about a pre-arranged secret. Something awkward or embarrassing (but obviously not criminal or dangerous/harmful, etc).

If they give up the secret, intentionally or inadvertently, then the business gets their money (a lot).

If not, the subject walks away having paid a nominal fee, with a certificate and bragging rights, and can use the remaining days to enjoy their vacation or go back to work.

</comment><comment><USER21> The title should more accurately be "A Wehrmacht Interrogator.." There was no evidence that Scharff was ever a member of the Nazi Party. In fact, he was a conscript as well as married to a British South African and his father was a decorated Prussian officer (the old Prussian military tradition secretly despised the Nazis.)

</comment><comment><USER23> > Participants in the experiment were given a story...The interrogations were > done by phone...

Interesting concept, but far from a realistic interrogation environment.

</comment><comment><USER27> Matthew Alexander employed similar methods and was able to track down Abu Musab al-Zarqawi

[https://www.npr.org/2011/02/14/133497869/one-man-says-no- to-...](https://www.npr.org/2011/02/14/133497869/one-man-says-no-to-harsh- interrogation-techniques)

</comment><comment><USER28> I see this often: journalists use the word "Nazi" when they should have said "German". "Nazi Germany" refers to the period of time when Germany was ruled by the Nazi party. A Nazi was someone who belonged to the Nazi party. Many germans, including soldiers, did not. I see no evidence that Scharff was a Nazi, so why label him one?</comment>


Tegra K1 Glass Fracture Demo [video] - <AUTHOR> https://www.youtube.com/watch?v=YGPK__0Vnz0

<comment><USER2> And apparently Acer is about to ship a Chromebook with the K-1 as the graphics card: [http://gizmodo.com/acer-chromebook-13-hands-on-gaming- guts-i...](http://gizmodo.com/acer-chromebook-13-hands-on-gaming-guts-in-a- chromeboo-1619231489)

</comment><comment><USER3> Mildly related, in comparison an example of what a desktop gpu can do: [https://www.youtube.com/watch?feature=player_detailpage&v=i8...](https://www.youtube.com/watch?feature=player_detailpage&v=i8hSZGTXTx8#t=214) (warning, loud)

<comment><USER4> Quite impressive. Here is a blog post about the techniques used in this demo: [http://directtovideo.wordpress.com/category/compute- shader/](http://directtovideo.wordpress.com/category/compute-shader/)

</comment></comment><comment><USER5> For me it would be have been more interesting to see one object shot at multiple times from different angles and velocities.

</comment><comment> josh-wrale Looks good, but some of the physics are off. The objects aren't sliding or tipping upon impact.

</comment><comment><USER6> The interesting part here is that this in on a mobile SoC, not a desktop GPU.</comment>


Missoula Floods - <AUTHOR> https://en.wikipedia.org/wiki/Missoula_Floods <comment><USER2> I first learned about these floods at the natural history museum in Missoula just last month. Biblical in proportion. Giant glacial dams letting loose and sending out an order of magnitude more water than the amazon basin at speeds of around 80mph, relocating 50 cubic miles of land. Amazing.

<comment><USER3> I learned about the floods at Dry Falls, in central Washington, where you can look out the window of the little visitor center and see the cliff formed by the largest waterfall known to have existed in all of Earth's history. It was an amazing sight, and the whole landscape I had been driving through all day suddenly popped together in a new way. I've been back through the scablands many times since, both hiking and driving, and it's amazing how you can just _see_ the shape of those ancient water flows on the land once you know what to look for.</comment></comment>


GitHub Nomic Game #3 - <AUTHOR> https://www.jefftk.com/p/nomic-game-3 <comment><USER2> I admit I had never heard of the game before, I'm trying to reason about how the game would work in person beyond 'give me infinity points'. Has anyone got any links to actual playthroughs?

<comment><USER3> [https://agoranomic.org](https://agoranomic.org) is one of the biggest and longest lasting games of Nomic.

If you proposed a rule change that gave you infinite points, the other players would vote it down, because it's easy to see that that rule rewards you at their expense.

You can land self serving rules though, you've just got to be sneakier, and slip them in as loopholes or the like.

<comment><USER4> My god, this all seems so complicated.

[https://www.mail-archive.com/agora- firstname.lastname@example.com/m...](https://www.mail-archive.com/agora- firstname.lastname@example.com/msg09256.html)

<comment><USER5> To be fair, we're in the middle of a big mess right now (we discovered a bug in a definition used by many rules, which means that many things don't work; we're working on a retroactive fix). That sort of mess happens every year or so.

(But then, Agora still is really complicated.)

</comment></comment></comment></comment><comment><USER4> I was one of the players in this super fun experiment, and one thing I didn't expect was how quickly things seemed to move.

I have no idea how other online Nomic games work in that regard; someone posted a link to a mailing-list version, and it seems like it would be nearly a full-time job keeping track of everything.

<comment><USER6> If you are speaking of Agora, the traffic is pretty low nowadays. The main difficulty is getting up to speed with the huge backlog of "jurisprudence" accumulated over the decade long game...

<comment><USER4> Are there any games running out there that are explicitly timeboxed?

</comment></comment></comment><comment><USER7> Nomic sort of reminds me of Mao, except rule changes are done by the winner of each round and nobody knows what the rules are (obviously this is rife for abuse, so there's usually a gentleman's agreement to not break the rules too badly).

</comment><comment><USER8> Why did he push the branches one at a time?

      for i in {1000..2000}; do
        git checkout testing-$i
        git push
      done

can be rewritten as

      git push origin testing-{1000..2000}

which also avoids the useless checkouts.

</comment><comment><USER9> I love it! I think I might pitch this as something to do with coworkers under the guise of learning more about CI tools.

We already use Jenkins, but the SRE team manages it, so us programmers don't get to play with it too much. This could be a great excuse for tinkering with the more integrated offerings from Github/Bitbucket/Gitlab.

<comment><USER9> My mistake. It appears that Github still doesn't have any first-party CI offering. I must have confused it with the other two.</comment></comment>


Mach-O Tricks [pdf] - <AUTHOR> http://iokit.racing/machotricks.pdf <comment><USER2> Another interesting fact: Mach-O also specifies "fat" or universal binaries, which are just a packed collection of Mach-O binaries with a special header and magic value (CAFEBABE for big-endian, like a Java classfile). The loader reads this special header, seeks to the right cpu(sub)type, and the rest is the same as a "thin" Mach-O.

Source: I wrote a Mach-O parser for the Homebrew project[1].

[1]: [https://github.com/Homebrew/ruby- macho](https://github.com/Homebrew/ruby-macho)</comment>


Show HN: Storyline iOS app launched - <AUTHOR> https://itunes.apple.com/app/id1191799866 <comment><AUTHOR> We just released Storyline, a storytelling app that lets you collaboratively create group videos. If it sound interesting, why not give it a try - we would appreciate to have a few opinionated users giving us feedback. :) Thanks!</comment>


Remember UReddit? Its next evolution, Open Compass, has started a Kickstarter - <AUTHOR> http://www.kickstarter.com/projects/1918344721/open-compass

<comment><USER2> Love the concept, but I don't think you need 14 grand. You already have a huge fanbase, and I'm willing to bet developers would love to help in building the platform.

<comment><USER3> I think there's a tendency to underestimate the cost of large scale projects. Even a relatively 'simple' enterprise site can run a few thousand dollars, just to cover a single designer and programmer's wages. Factor in the cost of the hiring process, and the cost of building infrastructure (neither physical servers, nor VPS, nor PaaS are cheap), and it's a very reasonable amount.

The point of his Kickstarter is to convert that fanbase into fungible resources. Not every UReddit user is programmer, and of those, even fewer have free time or the motivation to help out. This way anyone can contribute, even indirectly. Moreover, have you ever worked on a large scale project? Having lots of people involved is horrible. Something like this shouldn't have a team of more than 3-5 people to start. Even GitHub only has 15 people on their entire website team.

Source: I work at a design firm.</comment></comment>


Will $4-a-gallon gas ignite an electric-vehicle frenzy? - <AUTHOR> http://venturebeat.com/2011/03/09/gas-electric-vehicle-frenzy/ <comment><USER2> I'm curious how higher gas prices are really going to drive alternative fuels. If gas prices go so high that alternative forms of transportation are needed, that will also constitute a massive switch in infrastructure. With gas prices being so high, every facet of the industry will be facing higher costs from transportation.

People will start feeling the pinch from their own transportation along with food and other items as the industries shift the costs to the consumer. In every corner of the market, high gas prices will have an effect, so how is that the market will become ripe for electric cars if for starters, the cars are still expensive (most people needing loans ), and prices for everything are going up?

The idea that there is some golden era when gas hits 5-6$ a gallon and electric gets a large chunk of the market just seems absurd.

<comment><USER3> _The idea that there is some golden era when gas hits 5-6$ a gallon and electric gets a large chunk of the market just seems absurd._

I'm sure there's a price per gallon where it makes sense to replace a working and fully paid vehicle with an expensive new vehicle which costs less per mile in fuel costs alone, but it's certainly not $4 per gallon.

</comment></comment><comment><USER4> Why would it now, when gas prices hit higher than present in 2008.</comment>


Building product like a pirate - <AUTHOR> http://www.astronomer.io/blog/building-an-unforgettable-product <comment><USER2> > "He understood deeply how to delight them, because he had spent significant > time with them. That's what it takes to be empathetic"

A vastly underappreciated truth of empathy

</comment><comment><AUTHOR> I tried to give a meaningful headline here. Sometimes challenging on story posts — feel free to give suggestions of a better one.</comment>


Karma Go – How It Works - <AUTHOR> https://yourkarma.com/how-it-works <comment><USER2> How how I despise pages that hijack the keys I usually use for navigation and "re-purpose" them to something else. Immediate negative feelings and bad karma.</comment>


The "don't be evil" line has finally been crossed - <AUTHOR> https://www.reddit.com/r/Cyberpunk/comments/6sw3v0/is_refusing_to_train_algorithms_for_war/ <comment><USER2> From the comments. On mobile so can't test. Anyone know if this is true?

"You could always just waggle your mouse around for a second before clicking the "I am not a robot" checkbox to skip these almost every time." gdog2406

</comment><comment><USER3> The captchas trains AI to recognize the shape of helicopter. "Select all humans in this picture" captchas will be hard, but "select friendly helicopter to add to set {excluded shapes} " for targeting seems not. Its because set {humans} are diverse set of shapes and helicopters are static.

</comment><comment><USER4> Yeah, I don't like being tricked into helping kill people.

<comment><USER5> Any action you take can help it.

Even not choosing increases the odds that the responses it does get are correct.</comment></comment>


Show HN: Free New PR Tool (Mashup of Reddit, Quora and HARO) - <AUTHOR> http://ghacklabs.com/ <comment><USER2> Looks interesting Luke. If it gets the traction it deserves I think this could become a very valuable tool for both content creators and people who want to offer their insight.</comment>