An Old Idea, Revived: Starve Cancer to Death - <AUTHOR> http://www.nytimes.com/2016/05/15/magazine/warburg-effect-an-old-idea-revived-starve-cancer-to-death.html <comment><USER2> This is one of the best newspaper science articles I've ever read. It's a survey of the landscape, talks to a wide variety of experts, and modulates expectations for some miracle cure while still laying out the possibilities that could come from this approach.

Very good read!

</comment><comment><USER3> A family member of mine was diagnosed with metastatic cancer and told to get her affairs in order. She went on a strict no sugar diet. 5 years later, she has no sign of cancer.

Of course, she also had standard surgery and chemo. But I wouldn't be in the least surprised if the no sugar diet slowed the cancer down enough for the chemo/surgery to be more effective.

<comment><USER4> My car broke down the other day and I immediately started doing my prayers and sacrifices to the car healing gods. 2 weeks later, my car is running smoothly with no signs of issues!

Of course, my mechanic also replaced the engine, but I wouldn't be surprised if my process helped.

<comment><USER5> That's why 'smart people' advise to do both; try something you believe in (it helps if you believe) but do it next to regular treatments. Replace the engine and pray at the same time. Praying doesn't hurt although it won't help because of the praying (if there would be a god, it is well accepted that he doesn't listen to individual requests; you get your chance in heaven) but because of the faith/believe you have which somehow makes you stronger.

BTW: Is that sugar as in all sugars or refined sugars? Not eating 'sweets' is not a bad idea anyway no matter if it helps against cancer or not. Just like not eating massive amounts of meat and exercising. It might not help you achieve immortality but it can't hurt. And no it does not 'remove all fun from life'.

<comment><USER4> I don't disagree, but I think _other people_ looking at the situation should be able to distinguish the two.

<comment><USER5> Yes, and it should be told to them correctly. Saw a lot of people die by picking the alternative way only...

<comment><USER3> I was careful to point out that she did not eschew the standard treatment, and followed all of her oncologist's advice.

</comment></comment></comment></comment></comment></comment><comment><USER6> This is probably why cannabinoids are likely to have a synergistic effect in treating some (but not all) cancers when used in concert with immunotherapies and chemotherapies... The cannabinoid receptors connect into the akt system and modulate cell energy use. In vitro, some cancer cell lines are eradicated by cannabinoids, probably in vivo it's more complicated but weakening the cells probably helps.

<comment><USER7> Interestingly, cannabinoid antagonists also show some preclinical success.

<comment><USER6> that also makes sense. If you tweak finely tuned energy use in either direction, then things will break.

</comment></comment></comment><comment><USER8> I was recently shocked and practically offended to read guidelines on what to eat while undergoing chemo[1]. It was a high-sugar diet, basically (milkshakes were _encouraged_!). I couldn't imagine anything worse than shocking your body with radiation, and then providing cancer cells with all the sugar they need for growth. Hopefully the ideas in this article start to affect public health policy and guidelines.

1: [http://www.guysandstthomas.nhs.uk/resources/patient- informat...](http://www.guysandstthomas.nhs.uk/resources/patient- information/cancer/diet-and-chemotherapy.pdf)

<comment><USER9> Depending on the tumor, feeding it well may increase its sensitivity to chemotherapy.

On the other hand, I've read recently that fasting improved chemo tolerance because it puts healthy cells at rest while the cancerous ones are oblivious to the reduced calories intake... Not sure if it is universal. Such an early study was likely targeted a specific kind of cancer.

<comment><USER10> Well the article tried to stress that what they wrote about didn't apply to all cancers.

Also, seem to me the basic complication of dealing with cancers is that anything that will kill a cancer cell is likely to also kill healthy cells. So inversely, whatever you do to keep the patient alive is likely to also exasperate the cancer problem.

</comment></comment></comment><comment><USER11> Tim Ferriss had Dr. Dom D'Agostino on his podcast late last year[1], where they talked about this subject in-depth. I thought it was a fascinating conversation and a great introduction to the topic.

[1]: [http://fourhourworkweek.com/2015/11/03/dominic- dagostino/](http://fourhourworkweek.com/2015/11/03/dominic-dagostino/)

</comment><comment><USER12> I've read in multiple places that biohackers are using Intermittent fasting as a way of preventing cancer.

By making sporadic (eg. once a month) fasting periods of 12h to 24h, they expect to starve cancer cells in their very early stages (basically using the underlying principle of the article).

I would be extremely interested in seeing a study of the incidence of cancer in people doing Intermittent fasting vs general population.

<comment><USER13> _By making sporadic (eg. once a month) fasting periods of 12h to 24h_

Uh, any adverse effects if you increase that frequency? Because I reach a fasting period of 12h almost every day...

<comment> nommm-nommm Most people do I imagine. If you eat dinner at 6pm and breakfast at 8am that is a 14 hour fast.

<comment><USER14> Mmmh... lunch?

<comment> nommm-nommm Lunch isn't usually eaten in the middle of the night.

<comment><USER14> This was edited. It used to be in this order: breakfast at 8am and dinner at 6pm.

</comment></comment></comment></comment></comment></comment><comment><USER15> Dichloroacetic_acid [https://en.wikipedia.org/wiki/Dichloroacetic_acid#Cancer](https://en.wikipedia.org/wiki/Dichloroacetic_acid#Cancer)

Can't be patent protected, hence clinical trials are very difficult (to fund) but are under way for limited applications: [http://www.ncbi.nlm.nih.gov/pubmed/24297161](http://www.ncbi.nlm.nih.gov/pubmed/24297161)

The mechanism of action targets the unique cancer cells energy metabolism.

<comment><USER16> And here's a review (although old) of the literature on the link between dichloroacetate (DCA), glucose, and cancer:

[http://www.ncbi.nlm.nih.gov/pmc/articles/PMC2567082/](http://www.ncbi.nlm.nih.gov/pmc/articles/PMC2567082/)

</comment></comment><comment><USER17> It is not only glucose that cancer cells can become addidicted to, but also amino acids. Often the cancer cells can overcome a lack of glucose by using an amino acid. An idea that was explored too soon (i.e. before we knew which cancers this would work on) was starving the cancer cells with multiple nutrient withdraws.

</comment><comment><USER18> TL;DR: Cancer cell live on glucose... keep levels down

<comment><USER19> Simple-minded. That may slow, delay or avoid run-away growth & metastasis (of many not all cancers) but not any&all unwanted growths, because blood glucose never can go to 0. Cancer cells once sufficiently isolated from the immune system also love glutamine, other amino acids and vitamins. How long do you want to restrict all those? Ever heard of cachexia? With no food coming in, nutrients from the blood get scavenged by the baddies as bodily reserves are depleted. What then?

</comment></comment><comment><USER20> At least do not become a fat fertile ground for it.

BTW, in developing world with traditional simple, not processed foods and setting in a tribal culture eating habits rates of cancers are way lower (and no, it is not because lack of diagnostic tests).

</comment><comment><USER21> Such a method may also force the cancer to evolve to survive under such stress.

</comment><comment><USER22> So would a ketogenic diet be effective then?

<comment><USER23> Needs more studies. Armchair analysts find it intuitive though, but we don't know for sure yet.

<comment><USER24> This is the best way to describe just about any diet or exercise ideas floated on HN.

<comment><USER25> People also tend to very much forget that cancer is not a disease, but a _class_ of diseases. Not all cancers will respond equally to the same treatments.

<comment><USER26> Can you give an example of a disease that responds equally to the same treatment in all people?

<comment><USER25> I'm not talking about across different people; I'm talking about different types of cancer.

The causes and treatments for lymphatic cancers are different from lung cancers are different from breast cancers are different from prostate cancers are different from brain cancers are different from liver cancers, ad infinitum.

<comment><USER19> Well there must be _some_ things they all have in common. Anaerobic environment I thought, is that still the case? No transport of oxygen via iron possible, in my layman's memory?

<comment><USER27> Like saying suffocating in vacuum and suffocating from oxygen substitution in an enclosed space (like by inert gasses) is equal. The causes are different enough that different solutions are necessary.

<comment><USER26> I don't see how this analogy works at all? In either case a space suit works doesn't it?

Anyway, this whole "cancer isn't one disease" meme is best depicted by the bottom right panel of the second section of this comic: [http://www.phdcomics.com/comics/archive.php?comicid=1162](http://www.phdcomics.com/comics/archive.php?comicid=1162)

It looks just like the "string theory landscape", next you will be told that we need to stop worrying about comparing predictions to evidence when it comes to cancer research. Just wait a few years/decades.

[https://www.quantamagazine.org/20151216-physicists-and- philo...](https://www.quantamagazine.org/20151216-physicists-and-philosophers- debate-the-boundaries-of-science/)

<comment><USER27> Can you fit the space suit? (maybe I should have said something about small spaces).

Just because there's a shared behavior there's no guarantee there's a shared cause or mechanism. And even when there are, the environment can make any given solution unusable.

<comment><USER26> I can't think of any disease where we can't come up with such examples (indicating that the same treatment can't be used in all cases).

<comment><USER27> Yep. For example, there's people so strongly allergic to medicines that normally would be the default choice for curing a variety of diseases, making them unusable for these people.

Then there are even more "fun" special cases of simultaneously occurring diseases where the cure for one makes the other disease more dangerous.

But the point regarding cancer is that it just really ISN'T a single disease. That's like calling rockets, hot-air balloons, airplanes and helicopters the same thing. Sure, they all fly, but the mechanisms for them all are drastically different.

Cancers are the collection of diseases which causes cells to replicate uncontrollably.

<comment><USER26> >"But the point regarding cancer is that it just really ISN'T a single disease."

No, this is just a recent meme people started repeating because it said in a documentary or something. It is just as much "one disease" as many other medical issues grouped together as "one disease".

It is an awful meme too, because it discourages looking at commonalities and gives poorly performing researchers an excuse for not figuring anything out. Both of which slow the process of understanding cancer.

<comment><USER25> I have no idea which documentary you're referring to, but the idea that cancers are a class of different diseases with differing mechanisms isn't exactly fringe.

I mean, here's Harold Varmus, former head of the NIH and a Nobel Prize winner for his work on cancer research:

"What we've learned can be grouped into three categories. First, we've learned that cancer is not simply a single disease that affects many parts of the body. It is not, for example, a "war on cancer" as a single enemy. It is many different diseases with common themes that can cause different kinds of disorders in many of our organs. These include mutations in many different genes, changes in essential cell functions, and unusual interactions with the cellular environment in which tumors grow. We need to study each of these areas separately."

[https://www.nlm.nih.gov/medlineplus/magazine/issues/winter13...](https://www.nlm.nih.gov/medlineplus/magazine/issues/winter13/articles/winter13pg2-3.html)

<comment><USER26> Sorry, see here: [https://news.ycombinator.com/item?id=11718642](https://news.ycombinator.com/item?id=11718642)

</comment></comment></comment></comment></comment></comment></comment></comment></comment></comment></comment></comment></comment></comment></comment><comment><USER28> Cancer cells need to be isolated to starve them; That's the difficult part;

<comment><USER19> I think for many/most of them the key thing is that they need some 20x the amount of glucose than normally oxygenated cells. So they're actually supremely inefficient in terms of energy. What's the problem then? They just won't die off normally via programmed-cell-death (apoptosis) or autophagy or immune system attack, but keep replicating. Blood sugar levels may modulate rate of growth and metastasis, but since blood sugar can never go too low, that's only part of the picture.

</comment></comment><comment><USER29> I am very sorry for your loss.

my (armchair) analysis on cancer treatment - i) chemotherapy, in vacuum, most likely does considerably more harm than good, ii) sugar feeds cancer cells, iii) essential to feed body nutrients from a variety of sources (all must be plant based and non-processed), iv) it is likely a prudent investment to engage in holistic treatments such as being immersed in positivity and fulfilled environment and ingesting plant products with powerful healing properties known to locals across the world.

Having said all this, it is difficult to say no to conventional treatment and to MDs working at prestigious hospitals when the life of your loved one is at stake.

I have multiple cancer patients in my extended family, and this is in a family that lives on a south Asian diet (with all kinds of spices and turmeric, lots of vegetables). the cancer epidemic is extremely scary, and makes me feel vulnerable with my life - regardless of how knowledgeable I try to be on the subject.

My belief is that we must approach cancer as we have approached infectious diseases such as measles and whooping cough. We must identify carcinogens in our environment (this may be physical and spiritual), and take serious steps to remove them from our social construct.

<comment><USER30> I am sure you mean well, but you need to be better informed about biology. Table sugar is not the greatest thing in the world for our bodies, but your body needs certain kinds of sugars to function. Glucose is how your brain is powered. Sadly there is no evidence that restricting sugar would retard cancerous growth. Yes, there are toxins in our environment. Going past that to things that affect cancer is a huge step. Just like we don't worry anymore about a black cat crossing our path, we should use science to inform our ideas about medical treatment.

<comment><USER31> The brain does need some glucose to function, but the bulk of its energy need can be met by ketones. After adapting to this energy source the need for glucose is low enough that it can be met entirely by gluconeogenesis (making glucose from proteins and fats). Humans can survive on a zero carbohydrate diet with no cognitive impairment.

<comment><USER19> > making glucose from proteins and fats

plus recycling of pyruvate/lactate/some-such

</comment></comment></comment></comment><comment><USER32> Just a plug for /r/ketoscience.

</comment><comment><USER33> A friend of mine (she is a microbiologist, let's call her Lucy) was diagnosed with Uterine cancer. Oncologist told her they have to remove her womb, otherwise she'll die in a couple weeks. She decided to avoid "traditional treatment". Instead, she shared her issue with various professors from the university she is working at. One of the professors (another friend of mine) advised her to go to the Republic of Peru. He gave her contacts of his friend who's already been there and suggested to talk to him first. Lucy got in touch with this guy, he convinced her to go and in a week or so she was already in Peru.

In Peru, Lucy met some sort of a shaman. He wrote down her a list of things she must eat and things to avoid. This list also contained some herb, that she had to eat during the 2-3 months she was there.

After a few months, she got back home. 6 months after - no cancer. Year after this all happened she was dancing at my sister's wedding, healthy and happy.

Now as for the Peru guy and the friend of my friend who been there :) He had a brother. They both got cancer. One of the brothers decided to go with traditional treatment (radiation and all that). The other one went to Peru.

Long story short: the one who picked traditional methods died many years ago. The other one (who convinced Lucy to go) - completely recovered.

As far as I know, overall treatment was less than $5,000. If I'm not wrong, this was including rent + air flight.

I must add, that Lucy lost 45 pounds within a year. During my sister's wedding, she was only eating some oceanic fish and rice.

Edit:

This is just a short story from people I know in person. All of them are scientists working at university, doing researches on molecular genetics & microbiology.

I'm not even sure the guy in Peru was a shaman. That's just how I called him here. I just don't believe he was a real doctor. The gist of the whole treatment was fasting, not a herb.

<comment><USER34> One of the worst things about cancer is hearing stories like this all the time. It's really unhelpful and very draining to have your body undergo hell and your mind besieged by well=intentioned idiots telling you to expel toxins/ pray the cancer away/ stop eating this.

<comment><USER33> Agree. Maybe this is all a coincidence they both survived and the other guy passed away. Have no idea. Shared what I know. Nothing less, nothing more.

<comment><USER4> You don't really _know_ anything of value about this though. Are you an oncologist? Did you see her scans and test results? Have you been to her follow ups? Talked with her doctors? Do you even know the name of this magical herb that cures cancer but has somehow eluded the attention of thousands of researchers desperate to save hundreds of millions of suffering people, including their own loved ones?

<comment><USER33> Ryan, there is no magical herb. The gist of treatment was fasting. I have no idea what kind of diet it was. Do you want to know more? I can ask her details and the other guy who survived by sticking to the same diet.

<comment><USER4> I want to know whether they're dedicating their lives to winning a Nobel prize and saving billions of lives with this magical cure. If not, why not? They had fatal cancers cured in just a few months with no treatment, and then just went back to work and forgot about it?

Also, if the essence is fasting, why did they need to go see a shaman in Peru?

<comment><USER35> The problem is that medical science today isn't equipped to prove/disprove this kind of medicine. All that would happen if they could convince anyone to even believe the story, which I highly doubt, is one study would be conducted.

The scientists would ignore all the diagnosis and individual examination the shaman did, and the study would probably have the participants take a specific amount of a single specific herb on a single specific schedule. Basically, they'd take all the complexities of the alternative medical system and tried to distill it down to a one-size-fits-all regimen.

Then, after it undoubtedly showed no effect, they'd proclaim the shaman is a fraud and that nothing he does really works.

I mean, really, are you going to sit there and tell me that its more logical that _all_ the alternative medical systems developed over thousands of years are bullshit, than the possibility that modern medicine has gaps covered by these other medical systems, that can't/won't be filled using the scientific method, wrapped and perverted as it is by the hubris and single-minded culture of the doctors and scientists using it?

<comment><USER4> So the only kind of "science" that could prove this works is to layer on so many confounding effects and other variables that it'd be impossible to tell what, if anything, is happening.

Gee, I wonder why rational people are skeptical of that.

And to answer your question, no, I do not believe that alternative health systems "developed" over thousands of years work. If they work, then they're medicine. We only use the term alternative health to define things that are too magical to have their effects show up when studied using the scientific method. And barring the ability to collect some reliable data on their efficacy, then yes, they're bullshit by default. What other reliable framework for evaluating them could I possibly have?

<comment><USER36> We have to come up with something rigorous to deal with these sorts of things. Whether you call it "science" or not we still have to come to grips with "weird shit".

I know a guy. He's a healer. He can do things that Western science has absolutely no idea about. In point of fact several people who were diagnosed with cancer have worked with him and afterwards were no longer diagnosed with cancer.

This is factual.

Yet good luck getting people in general to take this seriously. No one wants to hear it. My mom's neighbour had breast cancer, she beat it with conventional medicine, more power to her. But she refused even to think about anything outside of the established system. For her it worked.

Personally, I'm very frustrated. I come from a strongly scientific background, so when I meet a person who can fucking cure fucking cancer I would really like to see the scientific establishment take that seriously.

But whatever. I can take some consolation that at least my family and I don't have to worry about cancer, even if I can do nothing to change the zeitgeist of society.

For those of you wondering why this guy wouldn't try to spread the word, well, first of all he does! He talks to anyone he meets and is not shy about it at all. The limiting factor is the people who don't want to hear about crazy shit.

(P.S. If _you_ have cancer and want to talk to my healer friend I can put you in touch. He's in Europe now and kind of retired, and I haven't spoken to him in a year or so, but if you truly need help and feel that this guy is "the one" you can contact me and I'll see about putting you in touch.)

<comment><USER4> _This is factual._

Well, no, it's not. From my perspective, this is yet another random anecdote from the Internet. It's no different to me than someone saying they can turn base metals into gold, hear the voice of God directly, or travel to alternate dimensions.

And even from YOUR perspective, you have no idea what's fact and what's not. Apparently this healer is so powerful that your family need not worry about cancer. But I suspect you have little hard evidence of any actual healing, no proposed mechanisms that make any sense, and no ability to reproduce any of this.

The amazing thing about the scientific method is that it gives us a framework to separate claims from reality. If you have a better framework then please share it. But there seems to be little value to a framework built on "I know a guy, trust me." We had that for thousands of years. Health care under such a framework was pretty rough.</comment></comment></comment></comment></comment></comment></comment></comment></comment></comment>


Show HN: Emails that Self-Destruct and Notify You When Read - <AUTHOR> http://www.ghostmailapp.com/

<comment><USER2> I'd be leery of this.

Once someone sends me an email, barring any prior agreement, it's mine. I may not own the ideas therein, but I certainly can claim enough ownership that the sender destroying the email irrevocably, without my consent, should raise some flags.

I'm seeing parallels with those useless "this email is confidential, private property, etc." footers that people stick on their emails.

</comment><comment><USER3> It's called a screenshot. Even my mother knows how to make one – it's built into OS X, Windows, iOS, and Android. So really this is a step backwards from the "light the paper on fire" level of security 007 had back in the '60s.

</comment><comment><USER4> Not sure what you guys are defining an email as these days, but all I get is the following text:

"NOTE: This email's content (shown below) will self-destruct after being viewed. -Sent w/ ghostmail <[http://www.ghostmailapp.com/>](http://www.ghostmailapp.com/>)

And nothing else. Plus when I re-open the message I get the same thing.

<comment><AUTHOR> What email client are you using? Are you rendering the html in the email? There should be an image displayed below that text.

<comment><USER5> You may want to read through this - [http://www.campaignmonitor.com/resources/will-it- work/image-...](http://www.campaignmonitor.com/resources/will-it-work/image- blocking/)

Not loading remote images is a norm for email clients.

<comment><USER6> Bit more than just 'not loading' — certainly any email I receive that attempts to load remote resources is presumed to be malicious. (In this case, that presumption is correct.)

</comment></comment></comment></comment><comment><USER7> I see some criticisms (that I agree with) of the "security" model here.

Implementing the self destruction protection on the client is problematic (even in the case of SnapChat) because the end user is in control of the client. So if users are motivated enough they'll be able to circumvent any protections you implement.

The nice thing is that most users are not motivated enough to do what's necessary to retrieve the self-destructing messages. It's a lot easier to save the message when sent to a web client but it's still beyond the ability of most users.

So no these applications aren't providing real security but it's close enough for the types of messages that I assume people are sending.

</comment><comment><USER8> This has been done before, in many variations. There's always a way for the recipient to save a copy. At least this scheme doesn't require special client software.

Note that this depends on the recipient's email client making a request for the image, which, thankfully, most clients provide a way to turn off.

</comment><comment><USER9> It's an interesting concept, and I will always give a lot of credit for the sheer act of building something. But talk to us about the need and the use case here. Snapchat I understand -- but is there really a big need for self- destructing emails? If anything, the real problem in the email space is long- term storage and management.

I see the email space and the SMS/text space diverging into very separate use cases: email for long form communications that, if anything, are to be saved and filed; SMS for short-form communications that are disposable (literally, in the case of Snapchat, or figuratively). I get that there are long-form communications that are sensitive, and that we sometimes wish wouldn't stick around forever. But what proportion of all email conversations do we think this use case represents?

<comment><AUTHOR> You bring up a valid concern - I'd say that this isn't something that you'd use all the time with your email, but it has its time and place (just like off-the-record gchat), and when it is needed, it really comes in handy.

</comment></comment><comment><USER10> This has been done several times. The first that I can remember was "Disappearing Inc" <http://www.wired.com/science/discoveries/news/2000/02/34171> IIRC they were shut down by the feds/spooks.

<comment><USER11> Nah, they changed their name to Omniva and used their technology for corporate email/document management (read: delete those emails before they are subpoenaed). Then they were bought out by Liquid Machines, and the product lives on as Liquid Machines Email Control.

I think the money just wasn't there for public use.

</comment></comment><comment><USER12> Use case: when you don't want your email hanging around on the other guys server. Ex. sending credit card information to a hotel. You want them to get it, ie. you trust them enough, but you can't trust their email security for the next 4 years.

Think how someone like General Patreaus could have benefited! He trusted Broadwell (perhaps his main mistake), but unfortunately for him the email hung around long enough for the FBI. :))

Also, docs say email is destroyed as soon at is read. No 7 days (couldn't find that).

</comment><comment><USER13> This wording suggests you keep the contents of the email around. I would clarify that:

 _the server makes a note not to supply that image ever again_

<comment><USER14> How does the wording suggest that? All it implies is that an image identifier is maintained, and once viewed, it's marked as stale and never served again.

<comment><USER13> Exactly. If the whole point of the app is that the email is deleted as far as the recipient is concerned why not delete it from the server too? If you're never going to serve it again, delete it. Then you definitely can't accidentally serve it (or nobody can compel you to provide access to it).

The wording could be more precise.

</comment></comment></comment><comment><USER15> Related: <https://onetimesecret.com>

(I am unaffiliated, just like this service.)

<comment><USER16> Thanks for the mention.

<comment><USER15> oh hey, you did blamestella as well? nice work!

<comment><USER16> Thanks. I appreciate it!

</comment></comment></comment></comment><comment><USER17> The only use case I could think of was those ATM Pins that you receive which always say "destroy this letter after you memorize your pin". So you could email a pin/some sort of sensitive info and have some level of safety.

Obviously the person can choose to save the image but you could also not destroy your ATM Pin Letter and/or even photocopy it.

<comment><AUTHOR> When a landlord is doing a credit check, you can also send your SSN with some peace of mind.

<comment><USER18> Wouldn't that fall under the "seriously sensitive information" that is recommended not to be sent? From the FAQ:

"That being said, you should always be careful. We recommend you do not send any seriously sensitive information through Ghostmail and refrain from corresponding with people you do not trust."

That being said, congrats on building something. I still haven't gotten that far.

<comment><AUTHOR> Agreed, I seriously wouldn't recommend sending that information online at all, but the unfortunate thing is that some people send it through email anyway. A more appropriate use case would be to send a secret that isn't damning, but that you'd just prefer wouldn't stick around in someone's inbox.

</comment></comment></comment></comment><comment><USER19> Couldn't you just save the hosted image before it disappears? I don't see the value in this?

<comment><AUTHOR> You could also record all of your phone conversations and copy all of your off-the-record gchats into text documents, couldn't you? The point isn't for this to be absolutely foolproof, but rather that when you have a somewhat sensitive conversation with someone you trust, you can have some peace of mind that there won't be a hard record of what you are saying.

</comment></comment><comment><USER20> This service converts your email into an image. You can save a copy of the image, and keep it forever, even though the mail will disappear. It's novel, but I'm not sure I see use-case for it.

<comment><AUTHOR> Think about gchat's off-the-record feature. Anyone can copy and paste an entire conversation, but the thing is, most people aren't motivated enough to copy every single one, so you have an added element of safety. Further, everyone I use ghcat off-the-record with is someone I trust - I just don't want a copy of the chat sitting in their email.

</comment></comment><comment><USER21> Does this mitigate screenshots in any meaningful way? And how does it address browser caching?

<comment><USER22> It's just text in a remotely hosted bitmap. No logic, no protection.

</comment></comment><comment><USER23> Rendering text as a hosted bitmap that can be viewed only once. Cute. But what is this for?

<comment><USER24> One word: Discovery

As in, "Whenever we are sued, we have to undergo Discovery, and they find all those email we really wish had never seen the light of day..."

<comment><USER23> As in, "Dog ate my homework"? That should work with feds, no problem.

<comment><USER25> "Not only did we not know that we were required to retain these emails, we went out of our way to ensure they /couldn't/ be retained. Whelp, oh well!"

</comment></comment></comment></comment><comment><USER26> This is such a cool idea. I would email my number to random girls I met on a Friday night haha... "hurry up and save my number orrrrrrrr I will disappear" lol

Nice execution.</comment>


Ex-Digg Engineers Launch "Well," A Social List-Making App - <AUTHOR> http://techcrunch.com/2012/08/27/wells-social-list-making-app-thinks-outside-the-to-do/

<comment><USER2> This is actually a really interesting idea. While it appears (from the vid) to be really "to-do" listy... the concept that sparked it "why dont I know all the things my friends want to do?" is a powerful base...

I have a range of lists for things i recommend to people: best date places, best dance spots, best bathroom, etc...

This is something inherently social and as long as the UX is great will be really popular.</comment>


Dear Tech Industry: Please Stop Bullying Us - <AUTHOR> https://www.linkedin.com/pulse/dear-tech-industry-please-stop-bullying-us-greg-leffler <comment><USER2> Too late, people who know better are the minority.

</comment><comment><USER3> Obligatory

[https://xkcd.com/743/](https://xkcd.com/743/)

<comment><USER4> Too bad people who prefer open source for philosophical/ethical reasons are still treated like trash.</comment></comment>


Rewriting RubyGems.org Git History - <AUTHOR> http://blog.rubygems.org/2015/02/01/rewriting-history.html

<comment><USER2> Obviously I'm not in their place, but in hindsight, my first thought when reading their initial issue was "Why not make a container that serves the minimal subset of Rubygems stuff necessary to bootstrap Rubygems, and use that as a source in the event that the main side died and needed to be kickstarted again.

Docker itself used a similar strategy for their build process: the recommended build process uses containers to build the Docker binary, so they made a precompiled binary available that was crafted "the hard way" that could then be used for running the saner build process.

<comment><USER3> The point that they want to track the versions of gems rubygems.org depends on in a VCS and track the dependency for each version of rubygems.org. You can build a container that includes those, but then you'd have to keep the container in a VCS - that's obviously possible but tangential to the problem.

</comment></comment><comment><USER4> It would be really helpful to go into some detail on the steps taken to clean up the git history.

<comment><USER5> It isn't what they did, but my recommendation for most such use cases is the BFG Repo-Cleaner: [https://rtyley.github.io/bfg-repo- cleaner/](https://rtyley.github.io/bfg-repo-cleaner/)

Don't be deceived by the "java" invocations, it's written in Scala, so it's HN-approved!

</comment></comment><comment><USER6> The-other-good-DVCS-that-everyone-almost-forgot-about, Mercurial, has exactly two solutions to the problem of overly large repos which, I presume, contain a lot of BLOBs.

First is Streaming Clones[1], whereby Mercurial server just takes all the files from the repository and transmits them over the transport connection, significantly decreasing TTFB.

The second is Largefiles extension[2], which turns Mercurial into more of a CVCS, but allows for efficient storage and retrieval of large binary files.

[1]: [https://hglabhq.com/blog/2014/6/20/working-with-mercurial- ov...](https://hglabhq.com/blog/2014/6/20/working-with-mercurial-over- unreliable-connections) [2]: [http://mercurial.selenic.com/wiki/LargefilesExtension](http://mercurial.selenic.com/wiki/LargefilesExtension)

</comment><comment><USER7> I find it funny that the problem was they didn't think enough people know about the `--depth 1` flag to git clone, so the solution is to use submodules (which far fewer people know how to use properly).

<comment><USER3> You can check for a missing submodule (folder) in your setup script and print helpful advice, but you can't do the same for the large repo: the damage is already done by the time you get to print instructions. In this case things are even easier: the submodule is just a backup for the thing that bundler will do anyways when running "bundle install".</comment></comment>


Facebook : Breaking Ground on Our First Custom Data Center - <AUTHOR> http://blog.facebook.com/blog.php?post=262655797130 <comment><USER2> why prineville, oregon?

<comment><USER3> Data centers are typically built near cheap energy sources.

Read this for more on the data centers energy efficiency: [http://blog.oregonlive.com/siliconforest/2010/01/facebook_to...](http://blog.oregonlive.com/siliconforest/2010/01/facebook_touts_energy_efficien.html)</comment></comment>


China is not the source of our problems – corporate greed is (opinion) – CNN - <AUTHOR> https://www.cnn.com/2019/05/26/opinions/china-is-not-the-enemy-sachs/index.html <comment><USER2> Because China lacks its own greedy folks and America is the birthplace and only stronghold of greed. Never is China's history have there been humanitarian violations. That's only happened in Western cultures. Philanthropy is a widespread, embraced philosophy in China and is completely rejected and even frowned upon in America.

Kind of CNN's take in a nutshell at this point.

<comment><USER3> Yikes. That's a strawman if I've ever seen one.

<comment><USER2> Not if you've been following cnn for the past 5 years. I quit following them about the beginning of the year and this article shows nothing has changed.

</comment></comment></comment><comment><USER3> Exactly. The difference between China and the US is that China has a government that is willing to reign in its companies for the benefit of its people.

It's surprising to me how most Americans will admit that the US is poorly governed, and yet it's so hard for many Americans to consider that China might just be better governed.</comment>


Volkswagen's US sales go up in October, despite diesel emissions scandal - <AUTHOR> http://www.theverge.com/2015/11/3/9663734/volkswagen-diesel-emissions-scandal-october-sales-rise <comment><USER2> There is a lot of latency when buying a new car; it's likely that a lot of people already had committed, and perhaps quite a few called back their dealer and got as nice 'panic' discount...

It's likely there will be a fall, but it'll take a little while to show...</comment>


Google makes BigQuery available in Sheets - <AUTHOR> https://techcrunch.com/2019/04/10/google-makes-the-power-of-bigquery-available-in-sheets/ <comment><USER2> All this fancy stuff, but where's my Sets at? Google took down the website like 15 years ago. I used that thing _daily_. Then they put it into Google Sheets. You could type "apple" then "pear" then "orange" and then select cells, drag, and you'd get a list of fruits! Some you never heard of before!

I looked around and Google has a patent on it, and seemingly no public implementation. This makes me super sad because I honestly considered Sets one of the most useful exploration and ideation tools ever created.

BigQuery in Sheets, cool I guess? I want Sets back.

<comment><USER3> Try this:

[http://wordgrabbag.com/](http://wordgrabbag.com/)

Here is Google's Patent:

[http://patft.uspto.gov/netacgi/nph- Parser?OS=pn/7,350,187&RS...](http://patft.uspto.gov/netacgi/nph- Parser?OS=pn/7,350,187&RS=PN/7,350,187&S1=7,350,187.PN.&Sect1=PTO2&Sect2=HITOFF&d=PTXT&f=G&l=50&p=1&r=1&u=/netahtml/PTO/search- adv.htm)

<comment><USER4> that's the same functionality, but the results are not as good.

I put in: fat obese porcine

I get: wild-type hyperactive amnesic misshapen narcissistic slimy cancerous motile putrid gravid

</comment></comment></comment><comment><USER5> For all the complaints about spreadsheets, attempts to replace them and such... They are a very reslilient paradigm.

The way the paradigm and learning curve work just seems to work for a lot of people. I reckon it's still the most popular plaform for coding, data engineering, analytics & data science... using liberal definitions for all those terms.

It also seems like something that's in google's wheelhouse.

<comment><USER6> Earlier this week, someone was passing this tweet around the office, which I believe captures the cold truth succinctly:

> _" All enterprise software competes with Excel._

> _All productivity software competes with emailing things to yourself. "_

[https://twitter.com/pavelasamsonov/status/110653418815977881...](https://twitter.com/pavelasamsonov/status/1106534188159778817)

<comment><USER7> This is disappointingly true.

You'd think we would have come up with better answers. I'm constantly looking for ways to better manage bug tracking, todo lists, and even managing job searches and professional networking, because I'm still not really happy with anything I've found.

As I bounce back and forth between different tools, I always land back on just using Excel or Google Sheets. I'm never entirely happy with those either, but I find that they're no worse at the job than the dedicated tools.

<comment><USER8> Have you given notion a try? It sort of feels like one of those tools that are so general they can actually compete with spreadsheets and emails and simple lists. And pretty user-friendly to boot. I have started using it for more and more simple lists and other personal stuff.

<comment><USER9> I just looked at notion, and it's unfortunately not general enough to warrant making a version that works on a non-mobile device. I'll check it out when I can use a version on my desktop (or at least on the web).

<comment><USER10> Notion has MacOS and Windows versions:

[https://www.notion.so/desktop](https://www.notion.so/desktop)

</comment></comment></comment></comment></comment></comment><comment><USER11> I wish spreadsheets didn't get as much unnecessary hate as they do. They are a pretty great tool, and can do almost anything. They are to finance/accounting guys as shells are to many of us.

<comment><USER12> My hate for spreadsheets come from working in institutions that copy/paste around hideous VBA infested sheets for metrics/reporting instead of using a database.

There is a lot of painful excel abuse in business.

<comment><USER13> Most of the time that happens because the internal tools/databases built or maintained by IT are unusable or just don't do the necessary reporting. Most companies don't have in-house dev teams that are capable of building usable business-relevant tools.

</comment></comment></comment><comment><USER14> Googles own blog [1] announcing the feature for G Suite Business, from back in January. This is a great feature that I have been searching for, for a long time.

[1] [https://cloud.google.com/blog/products/g-suite/connecting- bi...](https://cloud.google.com/blog/products/g-suite/connecting-bigquery-and- google-sheets-to-help-with-hefty-data-analysis)

<comment><USER15> That looks different. The Data Connector, which you linked, lets you write a query to BQ and have the results in Sheets. Connected Sheets sounds like it's actually a front-end to the underlying data.

Notably, the Data Connector has a row limit of 10,000 results, while the Connected Sheets claim to surpass the regular row limits of Google Sheets in general.

</comment></comment><comment><USER16> How does pricing work here? Say I have a pivot table on underlying 10TB data. I share the sheet with 10 people, each one refreshes it 100 times a day. Do I pay for each data refresh, ie 10TB * 10 * 100= 10000TB/day, that would be $50000/day if I read the pricing table right. Can someone more familiar with bigquery verify that?

<comment><USER17> That depends on how many columns your pivot table uses. Less columns = less data = lower price. If the implementation is smart enough it could use BigQuery partitions for further cost savings.

<comment><USER16> Is the data size calculated based on raw data on which queries operate (for example all transactions with amount column), or on query result size (for example sum(amount) -single row) ?

<comment><USER15> BigQuery bills based on amount of data read. BigQuery is a column-store database, so a read will always touch every row of a table, but only the columns actually used. So e.g. "SELECT * LIMIT 1" will read the entire table, while "SELECT SUM(transaction.total)" will only read 1 column out of potentially hundreds. The latter query will be billed identically as a filtered query like "SELECT SUM(transaction.total) WHERE transaction.total > 10." Filtering on a different column will be billed more, because it needs to read the second column as well, regardless of how many rows (if any!) contribute to the result set.

Idiomatic BigQuery will make use of partitioning, so that a large dataset will span multiple tables in a way that you only read the tables of interest. (E.g. the Google Analytics integration partitions by date, so reporting on 1 month of data will only read 30 tables out of the 1,500 you might have.)

<comment><USER18> It's worth noting that depending on the amount of Data you capture in GA, each date table could be anywhere from 1s to 10s of GBs, and it can get pretty pricey to query from those tables.

<comment><USER19> 1s to 10s of GB is pretty much nothing in BigQuery-land. (unless you are using them in production, which as noted elsewhere is a bad idea)

Especially with column-based querying and partitioning.

</comment></comment></comment></comment></comment></comment><comment><USER20> Similar functionality called PowerPivot/PowerQuery[1][2] exists in Excel. It's hands down one of my favorite things to use Excel for, and also one of the least understood/known features by most Excel users.

I can't wait to see how Google's flavor of it for Sheets works.

[1] It's officially called "Get & Transform" now, but when it came out one Excel 2010 it was called PowerQuery, and still gets referenced that way everywhere (including the official help docs).

[2] [https://support.office.com/en-us/article/get-transform-in- ex...](https://support.office.com/en-us/article/get-transform-in- excel-881c63c6-37c5-4ca2-b616-59e18d75b4de)

<comment><USER21> This was one of the things I missed when moving from Excel to Sheets and led to me building [https://seekwell.io](https://seekwell.io). It lets you grab data from your database and drop it in Sheets using just SQL (Postgres, MySQL, SQL Server and Snowflake).

We've also built a full SQL and Python IDE with a shared code repository, but solving the simple problem of "write SQL -> get data in a Sheet" was where we started.

</comment></comment><comment><USER22> I've had trouble getting more than 10k rows in google sheets. It will be interesting to see how well this works.

<comment><USER23> I have a couple sheets that are very close to the 2 million cell limits, in which almost every cell either does a vlookup or is being queried or is displaying some Google sheet SQL result.

Sheet takes time to load but still works fine!

<comment><USER24> Boy, I'm not sure quite why, but the idea of a spreadsheet with nearly 2 million cells stresses me out...

Why that over a DB?

<comment><USER25> Spreadsheets are a DB. Do you mean over a DB server? Or a relational DB? Or a DB without a bundled Model view controller?

</comment></comment></comment></comment><comment><USER26> I've tried using the current version of Sheets App Script for some advanced business functionality, but it's horrendously slow - taking over 10 seconds to loop over just 5000 rows. And they're using an ancient version of js, making development annoying.

I really hope that this announcement would herald a renewed interest on their side in improving Sheets as a whole.

<comment><USER27> Yes, I found it much faster to do everything in memory, minimizing the number of reads/writes.

And it was a bit of shocker writing es5 js again.

</comment></comment><comment><USER19> It's worth noting that there has been a Sheets connector for BigQuery since January, although only for G Suite customers: [https://cloud.google.com/blog/products/g-suite/connecting- bi...](https://cloud.google.com/blog/products/g-suite/connecting-bigquery-and- google-sheets-to-help-with-hefty-data-analysis)

This announcement seems like an expansion on what's above (e.g. pivot tables). I've tested what's above for my org and there's a lot of promise. (only criticism is creating formulas in the query don't work automatically since they are returned as Text cells; workaround is to cast as Automatic)

</comment><comment><USER28> Last time I checked, it was still hard to get a Google CloudSQL DB into BigQuery, so I'm surprised they did the sheets integration first. We used a third party that just copied data from our CloudSQL to BigQuery.

<comment><USER29> Yea this is surprisingly annoying. I did CloudSQL -> csv -> dataprep -> bigquery. For about 10 tables with ~20 columns each.

A job that should be less than an hour took over 6 hours due to various annoying datatype issues.

Another interesting thing is that BigQuery doesn't have Full Text Search so you need to go back into postgres or use elastisearch to use FTS which is beyond annoying.

</comment></comment><comment><USER30> If you find this interesting you should take a look at [https://www.sigmacomputing.com/](https://www.sigmacomputing.com/)

</comment><comment><USER31> I wish Google would let individual users upgrade to GSuite Business to try these tools, rather than forcing the whole organization to upgrade. The pricing model is impractical.

<comment><USER32> I use GSuite as an individual. I just had to use a personal domain and forward my other account to it.

<comment><USER31> Yeah, but I really want to use it in my organization. It's too expensive to upgrade for a single user.

</comment></comment></comment><comment><USER16> How's bigquery performance in comparison to clickhouse? When is it worth switching from one to the other?

<comment><USER33> BQ is considerably more performant.

<comment><USER34> This is uninformed and unsubstantiated.

The answer depends massively on the intended use case.

<comment><USER16> What are the use cases where one would shine and the other wouldn't? I'm interested in real life usage of any of those on >100 GB datasets.

<comment><USER35> With bigquery the cost is per query. If you do a "SELECT * FROM AAA" you'll pay whatever the size of the table AAA is, price being 5$ per TB.

If you do a "SELECT field1, field2 FROM AAA" you'll pay only for the total size of field1 and field2 rows.

So you usually want to use BigQuery in situations where you don't need to query data all the time, but rather a fixed number of times a day.

Now about performance: BigQuery queues queries, so you don't have a guaranteed time. It can take a couple of seconds before your query starts running, it can take longer. If you need something that responds in < xxx ms, BigQuery is not it.

But the queries themselves are fast. If you need to query across petabytes of data, as a simple BigQuery query will gladly run on however many dozens or hundreds of instances it needs, at no additional cost for you (since you only pay by the size of your data queried).

It's really a great example of serverless. You can run your query across 100 instances, but you only use those instances for a few seconds.

<comment><USER36>
      > SELECT * FROM AAA

Can't think of a realistic use case where such a query would be appropriate, even from just the performance standpoint. In fact, for a very long time the internal counterpart of BigQuery didn't even support "SELECT star", and nobody complained too badly. If you'd like to give Google a gift, however, sure "SELECT star" all you want. :-)

      > "SELECT field1, field2 FROM AAA" you'll pay only for the total size of field1 and field2 rows.

Moreover, if you also use a WHERE clause, you'll pay even less.

<comment><USER37> This can happen in data cleaning/loading where you load unclean data into a table that is ready for analysis. I have loaded data through staging tables regularly. There may be multiple stages.

Another example is materialized view creation. It's common for these to scan large quantities of data to compute aggregates.

<comment><USER36> That's not the recommended way of loading data into BigQuery, though.

[https://cloud.google.com/bigquery/docs/loading- data](https://cloud.google.com/bigquery/docs/loading-data)

</comment></comment></comment></comment></comment></comment></comment></comment><comment><USER38> Cool. I wonder when they will shut it down.

I largely ignore Google products announcements these days. Why bother getting excited about things that won't last?

<comment><USER39> This is getting tired and adds nothing to the discussion.

<comment><USER40> If one is not familiar with Google's background on the matter, it's the number one thing they should know.

<comment><USER41> No, the first thing you should know is that Google consumer products are not Enterprise features.

<comment><USER42> Is Sheets consumer or enterprise?

<comment><USER43> Sheets integration with bigquery that has an enterprise pricing plan is enterprise.

There's also a decent argument to be made that sheets is an enterprise product too. It certainly is for enterprise customers.

Disclosure: I work in Google Apps, but not on sheets or docs.

</comment></comment></comment></comment></comment></comment><comment><USER44> > The beta of connected sheets should go live within the next few months.

In case anyone's looking for it, there's the buried lede. Whenever Google announces something like this, don't hold your breath. Remember that robo- calling assistant they demoed awhile back? I remember that should've gone live within a few months, too.

<comment><USER41> Why do you spread such negativity if you haven't even fact checked that what you're saying is true?

<comment><USER45> That's the quote from the article. Do you have any additional info on when that would become available? The link from another reply is completely unrelated, as of writing this.

<comment><USER46> It's already working on Pixel devices in the US. Source: I used it.

<comment><USER45> Sorry, just to clarify, is that BigQuery integration into Sheets your are talking about? Can't find it in the web UI.

<comment><USER46> No I was referring to the robocalling feature. It's an actual product now.</comment></comment></comment></comment></comment></comment>


The Search for the "perfect" Advent Calendar (involves Python and Processing) - <AUTHOR> https://blog.jgc.org/2018/12/the-search-for-perfect-advent-calendar.html <comment><USER2> This is more or less a discrete version of a 2D low discrepancy sequence, which is often used for choosing different colours.

The best known solution is plastic numbers. I expect you could use something like that here rather than brute force.

[http://extremelearning.com.au/unreasonable-effectiveness- of-...](http://extremelearning.com.au/unreasonable-effectiveness-of- quasirandom-sequences/)

<comment><USER3> Although using a low discrepancy sequence (eg Halton, Sobol, R2) might be a good starting point, these sequences are designed to maximize the distance between points assuming that the left-and-right edges wrap, as well as the top-and-bottom. As it seems that the OP does not require this condition, I wold presume you get better solutions which involve lots of going to and from the far-left to the far-right, etc..

(Ordered dither matrices might offer another good starting point.)

<comment><USER2> Yeah that's what my "more or less" was referring to...

</comment></comment></comment><comment><USER4> This is a fun problem to play with. Like others, I've been trying the general approach of generating random configurations, then iterating by swapping pairs of elements (each time choosing the pair that yields the best local improvement).

Lowest value found, has vertical symmetry (notice how (1,24), (2,23), (3,22), (4,21) and so on are paired)

      [[14  7 19 12  5 17]
       [21  9  2 24 22 10]
       [ 4 16 23  1  3 15]
       [11 18  6 13 20  8]]

      375.923809971073

Highest value found, has rotational symmetry (see how the path from 1-24 is almost like a squished Hilbert curve)

      [[ 6  7 10 11 23 24]
       [ 5  8  9 12 22 21]
       [ 4  3 13 16 17 20]
       [ 1  2 14 15 18 19]]

      529.6200384399018

Code is at [https://gist.github.com/jffry/fab43b5b65499c3f513fea70159780...](https://gist.github.com/jffry/fab43b5b65499c3f513fea701597806b). Probably full of new-to-Rust mistakes, so please let me know where I've strayed from the light if you're particular about Rust!

As mentioned elsewhere I'm very curious about how this generalizes to grid sizes other than 6x4

<comment><USER5> Noticed that my best was almost horizontally symmetrical apart from two slots - except swapping those slots changes the score from 375.99867 to 376.19293. Most perplexing.

</comment></comment><comment><USER6> This is good, but it bugs me that the "perfectly ordered" calendar doesn't have the worst score. Maybe consider the calendars tiled on an infinite grid? That way 5 will be one right and one down from 4, instead of four left and one down. Maybe even shift the next line up, so 4 is next to 5...

<comment><USER4> I'll toss my hat in the ring for maximizing the measure instead of minimizing it

      "Cortex"

      [[ 6  7 10 11 23 24]
       [ 5  8  9 12 22 21]
       [ 4  3 13 16 17 20]
       [ 1  2 14 15 18 19]]

      529.6200384399018

The path traced from 1-24 is rotationally symmetric and folds up in on itself sort of like a Hilbert curve.

And now I'm curious how this problem might look for other MxN aside from 6x4

<comment><USER6> I think you nailed it, it seems to me that a Hilbert curve will always have the maximal score.

</comment></comment></comment><comment><USER7> Just a quick note to say thanks for posting this: I've had great fun exploring it: it's a simple puzzle to understand, yet harder than it first appears, and a low barrier of entry thanks to your posted code. Genuinely interesting seeing the symmetry appearing in the low-scoring solutions, and also an element of friendly competition and shared discovery as we post our scores. Cheers!

</comment><comment><USER8> The perfect advent calendar already exists

[https://adventofcode.com/](https://adventofcode.com/)

</comment><comment><USER9> I was hoping for a bit shuffling approach that elegantly fills the rectangle in some quasi-random order.

EDIT: Played around a bit myself, here's a quite pleasing order I came up with:

      1   9  17  24  16   8
      5  13  21  20  12   4
      3  11  19  22  14   6
      7  15  23  18  10   2

Python snippet here: [https://pastebin.com/XNvjEmxc](https://pastebin.com/XNvjEmxc)

<comment><USER10> The funny thing about this one is while it mostly satisfies the constraint of not having consecutive numbers too close, it has a very obvious pattern to it. A nice example of overfitting, perhaps ;)

What additional constraint could you add to shake this up? Perhaps a rule that, as well as number adjacency being penalized, adjacent distances between consecutive numbers also get penalized?

<comment><AUTHOR> It doesn't score very well on my metric. Not badly but not well.

        [[ 1  9 17 24 16  8]
         [ 5 13 21 20 12  4]
         [ 3 11 19 22 14  6]
         [ 7 15 23 18 10  2]]

        400.634917287

Compare with this one found using the 'genetic algorithm':

        [[ 9  4 18 10 15 20]
         [16 21 12  1 22  7]
         [ 2  6 24  5 17 13]
         [14  8 19 11 23  3]]

        386.229085028

<comment><USER5> Best I've found (with a random shuffle of the numbers every 5M swaps) is (score verified with `advent.py`):

             [[11 16  8 13  2 20]
              [18 21  5 24  7 15]
              [ 3  9  1 19 22  4]
              [14 23  6 17 10 12]]

             382.46224448143795

<comment><USER7> That's a lot of swaps! I played around with a simulated annealing approach in my lunch break which consistently gets down to 383.xx with about 10000 swaps, or 379.xx in 100000 swaps. I've yet to tweak the annealing parameters to see if I can get down to (or beat) the 378 example in the article.

It's basically the same as the swap() function in advent.py except you sometimes allow swaps that result in worse scores according to an ever- decreasing probability ("temperature"). The added controlled randomness allows you to break out of local minima at the start and hone in on the local optimum towards the end.

EDIT: after a little tweaking of the temperature schedule I got 377.59 after 10K swaps.

<comment><AUTHOR> Interesting approach. Can you share your code?

<comment><USER7> Sure. My best so far is:

        np.matrix('12 19 6 14 4 9; 8 17 1 24 22 16; 21 3 23 2 20 11; 15 10 5 13 18 7')

which has a score of 376.899. This was produced in 20K swaps with the line:

        best, score = anneal(n=10000)

which was then further refined with:

        best, score = anneal(start_temp=0.2, advent=best, n=10000)

where anneal() is defined here: [https://pastebin.com/xBVGJfQd](https://pastebin.com/xBVGJfQd)

The score() function is a bit slow at the moment. If I get some time later, I might see if I can speed it up a bit, which will allow for some faster experimentation.

EDIT: replaced code with pastebin link to save space in comments

<comment><AUTHOR> Thanks. That's great.

<comment><USER11> My best so far, but not using the improvements above, just small tweaks to the code from the blog post:

      [[ 9 15  4 20  6 12]
       [18 23 11  1 22 17]
       [ 7  2 16 24  3  8]
       [13 21  5 10 19 14]]
      376.364049355

<comment><USER5> My Go code, slightly tweaked from the pure random approach, got this one:

        [[17 11  6 19 14  8]
         [ 4 22 24  1  3 21]
         [ 9 15  2 23 12 16]
         [13 20  7 18  5 10]]
        375.998672775885

<comment><USER7> Ooh nice! That's the first one I've seen below 376.0

I've gotten close, but not cracked it yet. I was wondering if anyone would break the 376.0 barrier!

<comment><USER5> I'm wondering if vertical symmetry might be involved (and a way of optimising future efforts) - plotting the journeys of the top three on this post definitely seems to imply that.

[https://rjp.is/calendars/topthree.png](https://rjp.is/calendars/topthree.png)

Compare and contrast the original set from @jgc's article:

[https://rjp.is/calendars/originals.png](https://rjp.is/calendars/originals.png)

<comment><USER7> Thanks for keeping track. Quite fascinating how algorithms employing so much randomization can arrive at such structure and symmetry.

Finally got a < 376.0 from my own code using simulated annealing method...

375.998672775885

      [[13 20  7 18  5 10]
       [ 9 15  2 23 12 16]
       [ 4 22 24  1  3 21]
       [17 11  6 19 14  8]]

...only to realise it's the same as yours, but with the rows reversed! Rather surprised, but I now wonder if there is only a small number of very-low- scoring solutions. So perhaps this is less of a coincidence than it first appears.

I'm now using a much more aggressive temperature drop-off to find decent candidates early, followed by a tempering phase to search for nearby solutions, and a final cool-off to refine the final answer. I'm still using only random pair swaps in Python, so probably wasting a lot of cycles, but I'm still quite surprised how quickly it converges to some pretty decent scores. Beyond that I'm just going to try lots of random starting layouts.

I'm interested to see if my method can find any of the other posted solutions or (fingers crossed!) any new ones, but I may need to crunch through a lot more candidates... I will have to translate from Python into something faster to up my game!

<comment><USER5> Not entirely scientific but starting from the trivial 1-24 board, I did 100M random swaps (in Go, keeping all of them, takes about 4 minutes) and counted how many scores were in each bucket of 10 (ie 370-379.99, 380-389.99, etc.) Having done this a few times and never got anything in 37, I'm thinking the number of solutions below 380 must be relatively small, yeah.

        37	0
        38	2377
        39	1103812
        40	16535778
        41	39376324
        42	29525491
        43	10609914
        44	2394340
        45	395239
        46	51463
        47	4880
        48	363
        49	19
        50	0

</comment></comment></comment></comment></comment></comment></comment></comment></comment></comment></comment></comment></comment></comment><comment><USER12> Why not leave out "max -" and maximize instead of minimize?</comment>


Google Launches Plugin That Fuses Microsoft Office With Google Docs - <AUTHOR> http://techcrunch.com/2010/11/22/google-launches-plugin-that-fuses-microsoft-office-with-google-docs/ <comment><USER2> If you upload a complex Word document to Google Docs, Google will make some simplifications to the document.

How does this manage the mis-match between Office and Google features? What if I do something in Office that cannot be synced to Google Docs? Surely all this passing through Google Docs will strip the Word-specific formatting out?

I think it's a great step, but it's not going to be anywhere near WYSIWYG.

<comment><USER3> I tried to address this in the article, but it's a little confusing.

If you and a coworker are both editing a document using native versions of Office, then the changes should sync seamlessly.

If you create a document using Office, then sync to the cloud, then edit that document using a Google Docs web-based editor, it _should_ look right, but there may be some fidelity issues. However, any changes you make WILL NOT be saved to the version of the document that was originally created in Office. You can still save this as an Office Doc using the export feature, but it breaks the syncing.

</comment></comment><comment><USER4> This is how this cloud thing is supposed to work. Microsoft please note this.

<comment><USER5> <http://skydrive.live.com> ?

Doesn't it already work this way? Specifically, I can create and edit office documents using Microsoft's web-based editors, and then open the documents in my local editors and when I hit save they save back to "the cloud."

What else needs to happen?

<comment><USER6> I give props to MS for its progression, but MS's web-based editors just can't compare to Google's. Some of them require Silverlight plugin. Also, its word- processing editor cannot do concurrent editing in its web app.

Also, this is surreal, but if the documentation is to be believed, this new Google plugin supports more versions of MS Office than MS's own cloud apps do.

<comment><USER7> > Some of them require Silverlight plugin.

Silverlight will improve the experience, but is not a requirement.

> this new Google plugin supports more versions of MS Office than MS's own > cloud apps do.

It's a mixed bag. Office 2003/2007 can't save to Skydrive, but this Google plug-in can't do document co-authoring (the merge story with this plug-in isn't pretty).

</comment></comment></comment></comment><comment><USER8> This is probably the best thing from Google in a long time.

<comment><USER9> What about Google Voice? Launched in 2009. Guess it depends on your definition of a long time.

<comment><USER10> Google Voice is about half a product in my opinion. Once they actually integrate VOIP calling on my mobile I'll agree.

<comment><USER11> Also support for those outside the USA (I'm aware of why it's taking a while, I'd still like to use it though).

</comment></comment></comment></comment><comment><USER12> _"Once you've installed it, you'll notice a new ribbon toward the top of the Office UI, which gives you a Google Docs link for the document you're currently working on..."_

Does _anyone_ care about screen real-estate anymore? :(

<comment><USER7> FWIW, the Office Ribbon scales UI pretty well (considering how much stuff is on there). I haven't tried it, but I imagine that it's just another tab on the ribbon.

Bonus points if the tab only shows up when you're working on a document saved to Google Docs.

</comment></comment><comment><USER13> Excellent, a built in internet-backup. Perhaps this could affect companies that offer cloud-based backup solutions?

</comment><comment><USER14> Great news! Hopefully not too off-topic but doesnt "Google Cloud Connect for Microsoft Office" sound like such a Microsoft name? It's just missing 'Live' or something to make it complete.

<comment><USER11> In my opinion, if you're creating software that's living inside someone else's software it's easier for users (and to some extent it's polite) if you follow the parent software's approaches and style.

</comment></comment><comment><USER15> No Office for Mac support :(

<comment><USER16> This seems odd. Didn't Google ban the use of Windows by their employees awhile back?

<comment><USER17> Why would that matter? The largest single part of the market is Office for Windows, so that's what they targeted first. Google employees are likely using Google Docs for most things, anyways.

</comment></comment></comment><comment><USER18> Link to Google's official announcement: [http://googleenterprise.blogspot.com/2010/11/bridge-to- cloud...](http://googleenterprise.blogspot.com/2010/11/bridge-to-cloud-google- cloud-connect.html)

</comment><comment><USER19> Only supports Windows unfortunately. Actually I've been moving more and more to not using Office and going straight into Google Docs, but there are times when Office is still better. Hope they create a Mac one soon

<comment><USER4> I really hope that _somebody_ gets around to implementing a grammar checker in their document editing tool at the level of Office. I don't use it terribly often, but I notice it when it's not there in competing products.

</comment></comment><comment><USER20> So the web app/client is not The client that rules them all. Native client does have its place and is growing without a doubt.

</comment><comment><USER21> This is pretty slick and too bad I don't use Word anymore. That said, besides the obvious PR hit that Microsoft takes with this kind of stuff I'm unsure how many people will be using this. People on this site who use Word might, but the everyday users of Microsoft products won't even know this exists.

</comment><comment><USER22> Cool. But in my opinion, what matter the most is the conversion of files between Office and Google Docs. As a student (who have to submit paper in .doc or .docx), I have to buy Office because I can't be sure that the conversion will be fidel enough.

</comment><comment><USER23> In my opinion all office apps will suck until they agree on something. Even different versions of the same office suite cannot work together,

</comment><comment><USER24> Is there something similar for OpenOffice?

<comment><USER25> This <http://extensions.services.openoffice.org/project/ooo2gd> which in my experience is a bit pants.

<comment><USER26> Sorry, I forget: does "pants" mean "good" or "bad"? I know I've heard it before.

<comment><USER27> Depends on the context. If you're saying something that's meant to impliy a positive connotation then it means something good. Otherwise its bad. That's how I differentiate.

<comment><USER25> I've never heard it used in a positive way. I certainly meant it negatively here.

</comment></comment></comment></comment></comment><comment><USER28> This is certainly a good news for both Microsoft and Google.</comment>


'Perhaps we now have the link between vaccination and autism' - <AUTHOR> http://www.dailymail.co.uk/health/article-5133049/Aluminium-vaccines-cause-autism.html <comment><USER2> PubMed Sept 5, 2017 "RETRACTED: Subcutaneous injections of aluminum at vaccine adjuvant levels activate innate immune genes in mouse brain that are homologous with biomarkers of autism."

[https://www.ncbi.nlm.nih.gov/pubmed/28923356](https://www.ncbi.nlm.nih.gov/pubmed/28923356)

</comment><comment><USER3> Why is this even posted here? An article at the Daily Mail, which either makes or repeats intentionally inflammatory and startlingly misguided conclusions about a paper related to aluminum accumulation in the brain.

Like why even dignify this conspiracy bullshit with a post? These people rushing to implicate vaccines don't seem to have a problem with aluminum foil and aluminum cans holding their food.

</comment><comment><USER4> Would be really great if there was a link confirmed by science

<comment><USER2> Because you believe it already (without scientific evidence) and you want to be right?

<comment><USER4> Because it would be a way of breaking the current believe/not believe division and civilised way forward. Something like: you were right that something was wrong with the vaccines but in general they are good thing, we can solve the problems and move forward. No more religious wars.

<comment><USER3> lol if you think the "religious wars" would end. You can't reason someone out of a conclusion they didn't reason themselves into.</comment></comment></comment></comment>


Format Python Code Using YAPF - <AUTHOR> https://leimao.github.io/blog/YAPF-Quick-Tutorial/ <comment><USER2> I've used Yapf for a year, then switched to Black when it appeared.

Seriously, use Black. I my experience, and to my taste, it works perfectly all the time, and the result is beautiful.

It's also pep8 compliant, for the parts of pep8 that are concerned by a reformatter.

<comment><USER3> Black produces code with more lines than yapf. Sure sometimes yapf makes very weird decision (especially when using a dictionary litteral as an argument to a function) but at least it does not use 4 lines for a list with 2 items that could have fitted on one line.

<comment><USER4> I'm pretty sure Black doesn't do that, it will fit them onto a single line if possible, then it will move the kv pairs onto their own line, and failing that, one kv pair per line. In any case, I'm fine with more lines. Clarity is much more important than minimizing line count.

<comment><USER5> I've seen Black do this (the dict needs to be too long to inline):

      call(
          {
              "key": "value",
              "key": "value",
          }
      )

<comment><USER6> yeah, can be annoying, but also encourages this, which is nice when the number of values grows:

      items = {
          "key": "value",
          "key": "value",
      }
      call(items)

it's a bit annoying with exception messages, but again, writing long args before works great, and i've become a fan of this (unintended?) nudge:

      if error:
          raise ValueError(
              "Lorem ipsum dolor sit amet, consectetur adipiscing elit. Maecenas vel ligula nec eros finibus metus."
          )

      if error:
          msg = (
            "Lorem ipsum dolor sit amet, consectetur adipiscing elit. "
            "Maecenas vel ligula nec eros finibus metus."
          )
          raise ValueError(msg)

just to be clear, i don't think working around a formatter is good. in this case, i feel like the uncompromising rules were exposing a bit of an anti- pattern. obviously, your opinion on this may vary wildly.

<comment><USER7> This puts the lie to the common claim that formatters end formatting decisions. Actually they only move the problem from "how shall I format my code" to "how shall I write my code so that I will like the way my autoformatter formats my code".

<comment><USER4> You misunderstand the point of formatters. They aren't meant to automate your personal preference; they automate a standard format so your team doesn't have to waste time deciding on and enforcing a coding standard and so you don't have to manually implement the standard. Implicit in using a code formatter is the decision to stop navel gazing and put the team first.

</comment></comment></comment></comment></comment></comment></comment><comment><USER8> I dislike a lot of black decisions and still use it for everything.

My aesthetic taste is less important than getting things done.

If you are not using it, stop arguing and nit picking about your preferences, we, as a community, have more important things to do. It will hurt only a little, I promise.

<comment><USER9> My team has a handful of junior data scientists that really don't have a lot of experience of coding "well". Black was super helpful in 1, getting people used to decent coding format and 2, removing any effort or discussion around formatting in PRs. I added the formatting to pre-commit and the rest is effortless.

</comment></comment><comment><USER10> The only successful formatter are ones who don't have any knobs to tune. The reason a formatter exists is to make all codebases look consistent, not to cater to your personal style.

This is one area Golang got it right with gofmt.

<comment><USER11> This is the reason we switched to black for Python about a year ago. There are no options to tweak. At first I had to deal with a lot of complaining developers, but now everyone got accustomed to blacks formatting style and we moved on.

<comment><USER12> It has questionable default of 88 characters per line, which is configurable. I wish they chose 79 characters as PEP8 suggests.

<comment><USER13> That is one of the few things you can set, put it in your pyproject.toml, done.

Oh you don't have a pyproject.toml? Well then we have a different problem :)

</comment></comment></comment></comment><comment><USER14> We used YAPF[0] before we used Black[1]

I really liked it, a lot. What set Black above is it is most of the decisions (if not all, really) makes is how we setup YAPF anyway. I do think it does some small things better, like reformatting function arguments in certain cases (as is highlighted elsewhere in this thread)

If you need configurability, YAPF is the best choice, in my opinion. We still use isort though, because it sorts imports in a much more readable way.

I just wish I could find a suitable replacement for C# development. StyleCop is okay, but I find we have to use `<NoWarn></NoWarn>` .csproj settings on so many little rules and it doesn't auto format (in as so far as I can tell). If your editor supports it, it will use it as a formatting source of truth, though. I just want something that also has a runnable console binary we can use in CI. Maybe I haven't looked at it closely enough.

[0][https://github.com/google/yapf](https://github.com/google/yapf)

[1][https://black.readthedocs.io/en/stable/](https://black.readthedocs.io/en/stable/)

</comment><comment><USER15> I use black and couldn't be happier. Very fast and produces very readable code.

</comment><comment><USER16> Some editors or IDEs have pretty good automatic "formatting as you type" systems that can largely remove the need for stand-alone formatters for new code.

Sometimes you can convince them to processes an existing file as if it is being typed in and so apply the "as you type" formatter, effectively giving you a stand-alone formatter.

I used to do this with Emacs for C formatting. I don't remember how since I'm a vim user who only figured out enough Emacs for this one thing, and it was a long time ago, but I remember it worked very well. The Emacs C "as you type" formatter was very configurable and I was able to make it almost perfectly match my employer's style.

How's Emacs "as you type" Python formatting?

</comment><comment><USER17> I thought the community standardized on black

<comment><USER18> Black is just slightly too opinionated. It gives you configuration options for benign things such as numeric separators, but it flat out refuses to allow tab indent, which a fairly significant part of the python community uses.

I tried to PR a --use-tabs flag but the PR was rejected without comments. Had to fork Black to be able to use it. Tan is a drop-in replacement that allows --use-tabs (and use-tabs = true in pyproject.toml).

[https://github.com/jleclanche/tan](https://github.com/jleclanche/tan)

<comment><USER19> The reason Black is fast becoming standard is precisely _because_ it is so opinionated. Like the other code formatters that have successfully become 'normal', such as gofmt. An option means that there isn't a standard, but several standards. And the people pushing Black in their projects see the benefit of a global standard, even though it is rarely 100% _their_ personal preferences. It is a consensus.

<comment><USER18> Prettier is more widespread than black, is very opinionated, and still has an option for tab indent. This is a strawman.

<comment><USER19> Prettier's opinion then is that tabs are irrelevant to the formatting. Which is probably fine for the all the languages Prettier seems to support. Unlike Python, where tabs vs spaces matter. Mixing tabs and spaces is a problem, and a formatter cannot automatically support both or risks changing the meaning of code.

<comment><USER18> I don't know how you arrive to this conclusion… prettier never mixes tabs and spaces, it would be a bug if it did. And there's no meaningful difference _between_ tabs and spaces in Python either. Python has significant indent stops, that's all.

Furthermore, prettier has a python plugin which does support tabs.

</comment></comment></comment></comment></comment></comment><comment><USER20> A bad formatter is worse than no formatter, and unfortunately YAPF proves this out in my experience, being unstable, inconsistent, and tricky to configure.

Black however could fall into this category of worse than no formatter. On my team we have a strong style guide with a lot of well-reasoned, detailed, and consistent rules. One of the main differences to other style guides is that we design our style to make review easier. One of the primary ways of doing this is minimising diff noise.

While Black's vision is to reduce diff noise and design for easier review through a consistent style, it creates more diff noise and has a less consistent style than our style guide, and so we've had many discussions internally about whether it's right for us.

I have no doubt that Black is better than weak/no style guide, and for open source projects the automation it brings would absolutely be the right choice. I just wish it was better at what it sets out to do.

Edit: to address some of the questions raised:

\- Yes Black does save time over code review picking on style details, but we already have automated linters for most things we'd raise about style anyway, which negates some of the time saving.

\- The easiest example of where Black differs from our style guide and falls down on its promises is formatting lists/function calls/definitions.

For example:

      foo = [bar, bar]

When reaching the line length limit, we will turn this into:

      foo = [
        bar,
        baz,
        quux,
      ]

However Black will format this first as:

      foo = [
        bar, baz, quux
      ]

Only when it goes on a few more characters does it then format into the way we'd go straight to. This means that there's more diff noise more of the time, and when reading code there are 3 forms of this construction that one must be aware of, rather than the 2 forms that we have, meaning the code is less consistently formatted.

This is picky, yes, but the point of Black is to be picky, and in a team where we can have a very good shared understanding of a style, and where we do already have that style, Black is much less convincing.

<comment><USER21> I have hated every single formatter I've tried, other than Black. It seems to be the only one that's not just trying to put style into PEP8 compliance, but also keep it readable and maintainable.

I'm also curious about the issues you've had with it.

<comment><USER22> The outout of Black is PEP8 compliant, just not what flake8 _think_ PEP8 mandates.

<comment><USER21> Weird. I also use flake8 and the only mismatch between the two has been the default line length of black, which I changed to 79. All is good now.</comment></comment></comment></comment>


Important Security Announcement from PagerDuty - <AUTHOR> https://www.pagerduty.com/blog/july-2015-security-announcement/

<comment><USER2> Andrew Miklas wrote in a comment: _The attacker gained unauthorized access to an administrative panel provided by one of our hosting providers._

There have been several breaches in the last months where this was the main cause and it's something almost impossible to defend against – unless you're running your own datacenter hardware, which is very hard to get right.

Few providers properly secure their control panels with 2FA, even though these admin panels are an attractive target and almost always provide full access to the system.

<comment><USER3> Even 2FA as commonly implemented is kind of a bullshit solution (it's once per 30 days, it's not on every transaction, it's not specific to the transaction, there's no enduring log, no concept of segregating various types of action, no concept of callback auth/validation, often not multiuser/shared credentials, etc.)

Consumer-style 2FA protects somewhat against brute force, against password reuse by users who just don't care, and against theft of a whole password list. It doesn't actually protect the protected resource very much.

</comment></comment><comment><USER4> "Both our salts and pepper are 40 characters in length and are randomly generated."

From their CTO (on Disqus in response to my question):

"The salt, pepper, and password were concatenated together to form the string that was in turn passed to the hashing function."

[http://3v4l.org/cE359](http://3v4l.org/cE359)

40 + 40 + strlen($password) > 72

Uh-oh.

<comment><USER5> > 3v4l.org

PHP. This is a known weakness in PHP's bcrypt implementation. From Wikipedia, "Many implementations of bcrypt truncate the password to the first 72 bytes." I would hope that they're using a competent implementation that either supports longer passwords or throws an error if it's asked to hash a longer password.

Besides, bcrypt takes the salt as a separate parameter anyway. So it doesn't really make sense in context that the salt, pepper, and password were concatenated and passed _to bcrypt_. Perhaps he was talking about the SHA-1 stretching; perhaps they hash the passwords with SHA-1 before passing it to bcrypt.

I don't think we know enough to conclude that they were definitely doing it wrong, but it would be nice to know more details about the algorithm, though.

<comment><USER6> > PHP. This is a known weakness in PHP's bcrypt implementation. From > Wikipedia, "Many implementations of bcrypt truncate the password to the > first 72 bytes." I would hope that they're using a competent implementation > that either supports longer passwords or throws an error if it's asked to > hash a longer password.

Actually, it's a known weakness in BCRYPT. PHP did not implement bcrypt, it was ported in via crypt(3). Meaning that ALL versions of bcrypt have this issue.

Some implementations error on > 72 bytes, but NONE of them accept longer passwords.

> I don't think we know enough to conclude that they were definitely doing it > wrong, but it would be nice to know more details about the algorithm, > though.

Given what has been shared so far, there's enough signs pointing that the chances are pretty high they did something wrong. 40 byte salt? Bcrypt only supports a 128 bit salt. So either they did something silly custom (at which point it's no longer bcrypt), they aren't actually using bcrypt, or they did something silly like concatenate the salt + pepper + password and pass it to the password field.

</comment></comment></comment><comment><USER7> I appreciate the level of detail that PagerDuty went into with this announcement.

I presume they wanted to have all of the facts before they notified customers, but it is totally unacceptable that they waited 3 weeks to notify me about an incident with confirmed external intrusion and confirmed theft of customer data (including my own).

<comment><USER8> Well, what could they do? Surely we can't expect them to contact us in a timely manner via email, SMS, and/or push notification.

</comment></comment><comment><USER9> It took them 21 days to announce this? It's a in-depth post and kudos to them for that, but I'd also like to know _when_ the actual intrusion was (on July 9th when they detected it? Months before?)

<comment><USER10> The email I just received said:

> Within hours of the start of the intrusion, we were able to detect and > remove the attacker, and shut down the attack.

<comment><USER3> Who cares? It was compromised, and customers weren't notified for 21 days.

If this were some highly regulated banking/securities/government system, 21 days MIGHT be ok for public notice, but not for an infrastructure tool with highly technical users.

People get hacked (not good), but responding badly is the true badness.

And now additionally we're in WTF hell because no one knows if linode was compromised meaningfully (again), or if it was just a PagerDuty credential which got compromised.

<comment><USER11> PagerDuty use AWS and Linode, be interesting to see which one was responsible.

[https://support.pagerduty.com/hc/en- us/articles/202830570-Wh...](https://support.pagerduty.com/hc/en- us/articles/202830570-Where-is-PagerDuty-hosted-)

<comment><USER4> According to Julius Kivimaki (whom has hacked Linode countless times, including under the Hack the Planet hacker collective), Linode is pretty much an open door for blackhats.

<comment><USER12> Beat me to it.

</comment></comment></comment></comment></comment></comment><comment><USER13> This is why PagerDuty needs a decentralized solution for customers. If products like Chef can have both Hosted Chef and Chef Server and Atlassian can have both both Hosted and Self-hosted options there's no reason they can't have the same so you don't have to put your employees potentially sensitive on-call and server incident alert history in one basket.

</comment><comment><USER14> I'm happy with OpsGenie [0] - not so expensive, fully-featured, and now - safer compared to the overpriced PagerDuty. OpsGenie first implemented push notifications while PagerDuty was relying on people not knowing the competitive landscape and had a web-based Android app with SMS for years. OpsGenie innovates now and PagerDuty follows. Research and don't go with the flow!

[0] [http://opsgenie.com/](http://opsgenie.com/)

<comment><USER3> I love OpsGenie too, but this isn't really the best place for that discussion. Maybe you should write up your positive experiences with OpsGenie as a blog post and submit it to HN; particularly in the context of how to set up a notification system for ops, rotation, etc.

<comment><USER14> I will, but what's interesting is that I keep getting bugged by PagerDuty sales people and today, just before I read this, I got an email with their "improved" pricing and "improved" service! Had to vent out, sorry!

<comment><USER3> My problem with OpsGenie is yet another company monitoring critical infrastructure, often for customers using AWS, which is itself built on AWS. Sigh.

<comment><USER7> All of these services seem to take the same approach: AWS US-East, maybe use two availability zones, call it a day.

PagerDuty had to learn this lesson the hard way (circa 2012), as they were entirely in US-East during the catastrophic AWS outage in June. They proceeded to go offline along with a lot of their customers, who subsequently were not alerted.

Multiple region redundancy is not trivial, but it would certainly be a little higher up on my to-do list if it was basically the entire value proposition of my service. I was a little suspicious of PagerDuty's operational chops before, but now I simply don't trust them.

<comment><USER15> They are multi-region: [https://support.pagerduty.com/hc/en- us/articles/202830570-Wh...](https://support.pagerduty.com/hc/en- us/articles/202830570-Where-is-PagerDuty-hosted-)

<comment><USER7> They are now; as I mentioned, they had to learn that lesson the hard way in 2012.</comment></comment></comment></comment></comment></comment></comment>