404: Disney Scrubs Winnie the Pooh Off the Internet - <AUTHOR> https://web.archive.org/web/*/https://winniethepooh.disney.com <comment><USER2> The site redirects with javascript based on the location you view it from. You can see the redirect table in the source.

<comment><USER3> For those of us on mobile, is it feasible to paste the source here?

<comment><USER2> Here you go: [https://pbs.twimg.com/media/EGfd3mTVUAA98k2?format=jpg&name=...](https://pbs.twimg.com/media/EGfd3mTVUAA98k2?format=jpg&name=large)

</comment></comment></comment><comment><USER4> Site works for me. It appears to be a dynamic JavaScript redirect in certain countries:

        Disney.redirect = new Disney.Rdr({
            "can:qc": "http://www.disney.ca/",
            "usa,gum,pri,asm,vir,mnp,can": true,
            "bel": "http://www.disney.be/winnie/",
            "bgr": "http://www.disney.bg/disney-knigi-i-spisanija/",
            "cze": "http://www.disney.cz/medvidek-pu/",
            "zaf": "http://www.disney.co.za/winnie-the-pooh/",
            "bra": "http://www.disney.com.br/winniethepooh/",
            "dnk": "http://www.disney.dk/peter-plys/",
            "esp": "http://www.disney.es/winnie-the-pooh/",
            "fin": "http://www.disney.fi/nalle-puh/",
            "grc": "http://www.disney.gr/winnie-the-pooh/",
            "hun": "http://www.disney.hu/micimacko/",
            "isr": "http://www.disney.co.il/winnie-the-pooh/",
            "nld": "http://www.disney.nl/winnie-de-poeh/",
            "nor": "http://www.disney.no/ole-brumm/",
            "pol": "http://www.disney.pl/kubus/",
            "prt": "http://www.disney.pt/winnie-the-pooh/",
            "rou": "http://www.disney.ro/winnie-de-plus/",
            "swe": "http://www.disney.se/nalle-puh/",
            "tur": "http://www.disneyturkiye.com.tr/winnie-the-pooh/",
            "jpn": "http://character.disney.co.jp/winnie-the-pooh/",
            "chn": "http://www.dol.cn/minisite/winnie/",
            "kor": "http://www.disney.co.kr/",
            "twn": "http://www.disney.com.tw/pooh/",
            "hkg": "http://www.disney.com.hk/characters/",
            "sgp": "http://home.disney.com.sg/characters/classic/winnie-the-pooh/pooh/",
            "mys": "http://home.disney.com.my/characters/classic/winnie-the-pooh/pooh/",
            "rus": "http://www.disney.ru/pooh/",
            "col,ven,ecu,pry,ury,chl,per,bol,mex,cri,dom,slv,gtm,hnd,nic,pan,blz,arg": "http://www.disneylatino.com/winniethepooh/",
            "bhr,egy,jor,kwt,lbn,omn,pse,qat,sau,som,are,yem,dza,mar,tun": "http://www.disneyme.com/winnie-the-pooh/",
            "ita,vat,smr": "http://www.disney.it/winnie-the-pooh/",
            "aus,nzl": "http://home.disney.com.au/disneyfilms/winniethepooh.html",
            "gbr,irl": "http://www.disney.co.uk/winnie-the-pooh/",
            "deu,aut": "http://www.disney.de/winnie-puuh/",
            "fra,glp,mtq,reu,hti,myt": "http://www.disney.fr/winnie-l-ourson/"
        }).run()

In some jurisdictions (Quebec, Korea, Hong Kong) it redirects to a generic landing page, but in others it goes to a country-specific Winnie the Pooh page. Interestingly, in China it appears to redirect to "[http://www.dol.cn/minisite/winnie/"](http://www.dol.cn/minisite/winnie/"), although I cannot access that page from where I am (Canada).

EDIT: Note that the redirects for Quebec, Korea and Hong Kong are not new. They were all there in earlier pages, e.g. in September 2013: [https://web.archive.org/web/20130914105628/http://winniethep...](https://web.archive.org/web/20130914105628/http://winniethepooh.disney.com/)

<comment><USER5> They seem to all end in 404 for me (Sweden). Maybe they are just in the middle of redesigning the homepage?

<comment><USER4> The redirects themselves haven't changed for 6 years, so they've probably suffered from link rot. Disney historically appears to have let individual country-specific sites manage themselves, and only more recently moved to unify them which probably broke all the links.

So yeah, they are definitely in the middle of redesigning all of the country sites.

</comment></comment></comment><comment><USER6> I am not sure why we are allowing China to censor the internet. The internet was designed to route around damage, which in this case is the prohibition of free speech. Despite what a despotic regime would prohibit.

<comment><USER7> China is not censoring anything. American companies are trying not to offend them.

<comment><USER8> What spineless imbeciles are at the head of these companies? Removing Winnie the Pooh? It's like living in an absurd Monty Python sketch gone haywire.

<comment><USER4> Beloved as Winnie may be, he probably hasn't generated substantial revenue for Disney in a long time. People are only noticing that he's missing from parts of the Internet now that there's focus on him, but the reality seems to be that his internet presence has been fading for a long time.

</comment></comment></comment></comment><comment><USER9> Site seems up for me [https://winniethepooh.disney.com](https://winniethepooh.disney.com)

<comment><USER10> Swedish 404 for me.

<comment><USER11> Also in Belgium as it redirects to Disney.be/Winnie which does not exist

</comment></comment></comment><comment><USER12> I wonder if this means efforts to release my family's IP from Disney would be more likely now.

I'm a cousin so I'm less directly involved, but the Milne's have been trying to get Pooh released to the Public Domain for years.

</comment><comment><USER13> Only one comment so far in this thread has mentioned the obvious timing: Winnie the Pooh is often used to poke fun at Xi Jinping, and as the Hong Kong protests have started to garner more attention the CCP is starting to pressure more companies to censor undesirable content.

</comment><comment><USER14> It works for me from my VPN sites in:

US, NL, IN, AU, JP

It fails from my sites in:

NO, HK, CN (Shanghai; redirects to the HK domain), SG, IL

In many of the failing countries, it simply turns into a redirect to the country-specific Disney domain, but Norway and HK get not-found messages after the redirects, and the Singapore domain doesn't load at all.

(I couldn't test my Canada VPN site, as my corporate VPNs stopped connecting, presumably due to some sort of rate limiting.)

</comment><comment><USER15> Winnie the Pooh is still visible from America.

</comment><comment><USER16> What?

<comment><USER17> Winnie the Pooh is a tongue-in-cheek monicker for Xi Jinping. While it's banned behind the Great Firewall, it _should_ be available outside China. But, outside China, the link now redirects to a generic regional Disney site.

Nowadays, anything that upsets the Chinese government seems to be out of bounds for large corporations. It's always about profit and reputation.

Edit: redirection through JS is in place for some countries: [https://news.ycombinator.com/item?id=21211422](https://news.ycombinator.com/item?id=21211422)

Way simpler than editing DNS zones.

<comment><USER18> Seriously, even if someone doesn't like South Park (I'm more of a Rick and Morty type) you/we all have to watch South Park - Band in China. A very simple way to describe how China is playing this game (and we let them win).

<comment><USER17> > (and we let them win)

That's indeed the key point. While the Chinese government can censor whatever it pleases and enforce any policies on its citizens, it's up to US corporations to decide whether they want to keep in line with them.

For what it's worth, corporations will be gradually replacing public institutions and governments in a few decades from now (at most in a century). Not by coups, but by making them largely irrelevant in everyday life.

Democracy will then be as archaic as monarchies.

<comment><USER19> And governments will do victory laps about protecting free speech, while the tyranny is outsourced to corporations.

<comment><USER20> That's the point of (politicians) supporting mega corps. When only a few mega corps determine if you have a job and therefore can buy and survive they can indirectly control the masses.

</comment></comment></comment></comment></comment></comment><comment><USER21> Works fine in the us right now

</comment><comment><USER22> But what was the problem with Winnie the Pooh? Who is offended by it so much to require a complete removal?

</comment><comment><USER23> Seems up for me but redirects to Disney Korea's site because I'm in Korea.

</comment><comment><USER24> Where are you that it's 404ing? Works fine for me in Japan.

</comment><comment><USER25> Works fine for me in the US

</comment><comment><USER26> Whomever said they didn't know how World War III will be fought has their answer: Censorship and tariffs.

It has begun, and it's not nations versus nations, it's corporations versus citizens.

<comment><USER27> I feel like World War III was economic, and China already won.

<comment><USER26> Rich people won. The peasants lost.

As it should be, eh?</comment></comment></comment>


To save lives, SF will close Market St. from 3rd-8th street to private vehicles - <AUTHOR> http://hoodline.com/2015/06/safer-market-street-plan-sparks-opposition-from-uber-hearing-to-be-held-tomorrow <comment><USER2> In SF, cars vs. everyone else captures a surprising amount of political energy. As someone who has lived in a variety of cities and suburbs, but SF for the past 3-4 years, SF remains excessively car-friendly at the expense of pedestrians, bicycles, public transit, and non-car-related uses of public space. Fortunately the voting population and the political class are slowly pushing the cars out (the "saving lives" rhetoric is a smart strategy and not invalid, but there's more to it than that - the future prosperity and quality of life in the city depends on curbing private auto ownership and use). Prohibiting private vehicles on Market St. is a no-brainer.

What I'd like to see is a kind of congestion pricing, eg. a $1000/year permit to operate a car in the city, with vouchers for low-income drivers. (I would pay this myself; I walk, take transit, cycle, drive, and take cabs in the city in that order of frequency)

<comment><USER3> We're a very long way from congestion pricing. We don't even have the simplest of toll schemes yet. It would be trivial to establish a toll on the eastbound Bay Bridge, for example, or to raise the westbound toll, but we haven't done it. It would be a matter of a little bit of paint to extend the existing carpool hours on car-choked freeways, or to establish new carpool lanes. Removing street parking spaces remains highly controversial. This city is a long way from congestion pricing.

<comment> jon-wood London managed to go from nothing to congestion charging, although I wouldn't say its made a huge difference. The roads in central London are still hideously dangerous, especially for cyclists.

<comment><USER3> Well, TfL does claim that congestion is down about 30% versus predicted congestion, or about 10% versus baseline congestion since before the charge. I know cycling is still perceived as dangerous there but according to the numbers, fatalities per cyclist journey are down significantly since the congestion charge began. If you think London cycling is dangerous I invite you to join me in San Francisco for some perspective.

</comment></comment></comment></comment><comment><USER4> I've lived in SF for over 20 years.

Nobody actually wants to drive downtown, but public transit isn't good enough to reliably use it from large parts of the city.

This is typical nanny state SF government.

They ban things instead of coming up with better solutions.

(Yeah I don't think for a minute this will stop at market street.)

</comment><comment><USER5> I love that uber feels entitled to get the same deal as taxis. Wow. Like zero self awareness. Pay for medallions, get regulated, and all the other business that come with being a taxi and maybe you too can use the taxi lanes. Such BS.

<comment><USER6> Not sure I agree. Whatever reason the city has to allow cabs on market should equally apply to uber or other mass transit. The reason they want to allow cabs could be because it optimizes transportation for the residents of the city if there is less car owners and more shared vehicles. That would apply to uber as well. It could alternatively be that the city believes professional drivers (those that do it for a living) are safer drivers than the average car owner. This would apply equally for uber as well. I can't think of a reason that the city would want to allow taxis but not ubers to use market.

In fact the only thing I can think of is that the city actually supports the crazy medallion monopoly we've built which is insane.

<comment><USER7> My guess would be enforcement. How do you identify uber drivers? If I sometimes drive for Uber but am not currently driving for them what stops me from putting up my amber sign when I drive there?

<comment><USER6> Those pink mustaches and glowing blue uber signs probab eliminate 90% of the fraud. Couple that with a few sting operations once every 6-12 months and I doubt there would be much fraud.

</comment></comment></comment></comment><comment><USER8> No, SF is not closing Market St. They're restricting turns onto it. You'll still be able to drive from Van Ness to the Ferry Building if you want to. Or take the trolley line.

Of course those are some of the most dangerous intersections in the city. The druggies cross Market there, between the 6th St corridor and the Tenderloin. There are too many people crossing the street in that area who have impaired basic pedestrian skills.

<comment><USER9> Even today you cannot drive from Van Ness to the Ferry Building on Market. Besides the fact that Market long ago was cut off at Stuart (a block or so before the Embarcadero) all non-bus/streetcar/taxi traffic going NE or Market is forced to turn right at 10th St for the last few years.

<comment><USER8> Not quite; you can escape the northbound Market-10th St right turn by changing lanes at the Polk-Fell crosswalk across Market just before 10th. After that crosswalk, the streetcar track lane is no longer bus-taxi only, and you can cross 10th in it. Then you're forced out of the track lane again into the right hand lane as you pass the Twitter building.

However, at 6th St, you're now forced to make a right turn.

</comment></comment></comment><comment><USER10> I wish more cities would do this and in more areas. Boston and Cambridge for example are terrible to drive in and the public transit system provides a very viable alternative. Maybe even convert some of the larger avenues to powered walkways and simply ban all private car traffic.

<comment><USER11> If public transit is such a viable alternative, why do so many people in those cities drive? Perhaps you're overlooking some disadvantages of public transit.

I haven't spent much time in Boston, but public transportation in SF is a joke. Average fleet speed is 8.1mph, the slowest in north america. Even express lines are outpaced by bicycles. Heck, I've been able to out _run_ the N from Civic Center to Ocean Beach.

In addition to being slow, SF's public transport is disgusting. Many homeless leave filth on busses and trains. I can't remember a time I've taken Muni or BART and _not_ smelled urine (or worse).

Then there are the constant annoyances stemming from the _public_ part of public transportation: being packed into cars like cattle, sick people spreading germs, passengers playing music out of their phones, etc.

All of these problems combine to make a distinctly unpleasant experience. That's why I often Uber or just walk in SF.

<comment><USER4> Public transit in SF is a joke.

It takes over an hour to get from most places to downtown.

<comment><USER12> Going downtown is not that bad. There's a transit line from pretty much any neighborhood to downtown, and a lot of express services during rush hours. Service is dramatically worse after midnight, though.

It's getting from one residential neighborhood to another that's really annoying. I have students scheduling over an hour to get to high school, because SFUSD has a policy of promoting school integration and doesn't provide buses. Teenagers getting enough sleep? What a silly idea.

</comment></comment></comment></comment><comment><USER13> _FINALLY!_

It has been obvious for a long time that actually driving on Market St. a terrible idea. It's dangerous, permanent gridlock, and far too many people end up confused at the unusual road layout and end up driving in the bus lanes. This is outstanding news.

</comment><comment><AUTHOR> Four of the most dangerous intersections in San Francisco will be made much safer.

It will be nice to have fewer Uber drivers doing illegal U-turns. Uber drivers unfortunately do not warn passengers about dooring bicyclists.

</comment><comment><USER14> If access to (parts of) Market Street needs to be rationed, they should make it a toll area, like the congestion zones of London, Singapore, and elsewhere.

Ubers and taxis are functionally the same in their benefits to residents; they should each have the same option to pay the toll or choose other routes.

<comment> jon-wood This seems the usual answer of making sure rationing only effects those who can't pay to avoid it.

</comment></comment><comment><USER14> This could easily backfire, when congestion on nearby streets rises, or drivers suffer more confusion from the constantly-shifting lane/turn rules.

<comment><AUTHOR> I have seen traffic gets backed up waiting behind a driver trying to do a right turn on to Market. I would be comfortable making a bet that the traffic flow will improve.

</comment></comment><comment><USER15> HN title currently reads: "To save lives, SF will close Market St. from 3rd-8th street to private vehicles." Article title reads: "Despite Opposition From Uber, SFMTA Approves Safer Market Street Plan."

HN title appears to be false: the Safer Market Street plan will prevent _turns onto_ Market St. but says nothing about drivers continuing straight on.

<comment><AUTHOR> I felt the original title was link-baity. The reality is that this closure is a long time coming. People have been working on this before Uber was founded.

Before Uber, Market St. merchants had objections that were addressed.

Uber having an objection is no more special than a brick and mortar store having an objection.</comment></comment>


Clang Solves the Collatz Conjecture? - <AUTHOR> https://godbolt.org/z/3skK9j <comment><USER2> The function either returns 1 or loops infinitely. So if you assume that infinite loops are undefined behavior, the optimization is valid. I only know what the C11 standard says about infinite loops:

> An iteration statement whose controlling expression is not a constant > expression, that performs no input/output operations, does not access > volatile objects, and performs no synchronization or atomic operations in > its body, controlling expression, or (in the case of a for statement) its > expression-3, may be assumed by the implementation to terminate.

But this only applies to some iteration statements, not recursive functions. I don't know about C++ rules but since this optimization is also applied when compiling as C code ([https://godbolt.org/z/K3uT2G](https://godbolt.org/z/K3uT2G)), it seems to be invalid.

<comment><USER3> I believe infinite recursion is also UB, but alternatively if clang converts to a tail call, it can then be converted to a loop. If the loop is infinite then you're back in UB land.

<comment><USER2> > if clang converts to a tail call, it can then be converted to a loop

Yes, that's probably what happens internally.

> If the loop is infinite then you're back in UB land.

I don't think so. At some point, clang forgets that the loop actually comes from a recursive function call, so it shouldn't be allowed to assume a finite loop.

</comment></comment></comment><comment><USER4> There's only of the order of a billion values to check. It's known to be true for all those values.

</comment><comment><USER5> Same essential issue as "C Compilers Disprove Fermat's Last Theorem" ?

[https://blog.regehr.org/archives/140](https://blog.regehr.org/archives/140)

[https://news.ycombinator.com/item?id=1310105](https://news.ycombinator.com/item?id=1310105)

Or is this one because "unsigned int" is not the same as a [0...infinity) "Integer" ?

</comment><comment><USER6> The interesting question is: Has someone "harcoded" a clever optimisation specifically for Collatz conjecture? Or did the general optimisation techniques figure this out of their own?

<comment><USER7> I looked at the source now and found nothing specific.

The optimisation seems to be wrong; clang returns a constant 1, which assumes that the function is never called with n=0. Which is true for the Collatz conjecture (it starts at 1), but surely clang has no right to assume that n≥1?

<comment><USER8> This assumption is allowed, as n=0 results in infinite recursion (without side-effects) which is undefined behavior:

[https://en.cppreference.com/w/cpp/language/memory_model](https://en.cppreference.com/w/cpp/language/memory_model)

[https://en.cppreference.com/w/cpp/language/ub#Infinite_loop_...](https://en.cppreference.com/w/cpp/language/ub#Infinite_loop_without_side- effects)

<comment><USER7> Oh, right. I knew the "eventually must" rule, but missed the implication.

</comment></comment></comment></comment><comment><USER9> Yeah, it's solved for "unsigned int". Solving it for all integers is a little tougher...</comment>


Bin Laden Assassination Nets 23-Year-Old Entrepreneur $300K - <AUTHOR> http://blogs.forbes.com/marcbabej/2011/05/06/bin-laden-assassination-nets-23-year-old-entrepreneur-300k/

<comment><USER2> That's amazing! Would love to know how he did it (I know he was quick, but still there are plenty of competition in a short amount of time).</comment>


Work experience vs. grad school - <AUTHOR>

what's more valuable when creating a new company, 5 years in grad school or 5 years of work experience an someone else's startup? <comment><USER2> what's the company? what's the work experience? what's the grad school subjects?</comment>


Show HN: Unlock "not provided" keywords - <AUTHOR> https://keyseo.io

<comment><USER2> 'View plans' is a conversion killer. Working in the SEO industry, Im willing to have tools like this, but showing me the prices before of knowing how you pretend to do it, it takes me back. just my 0.02

<comment><AUTHOR> Thanks for your feedback!

It's definitively valid, now you say that I can feel how it looks weird/scammy.

Anyway to answer your question, we've come up with an small piece of algo that use a mix of probability, landing pages and internal search engines to make the best guesses.

We'll work on better marketing texts maybe a video, we've just launched yesterday! :)</comment></comment>


Untranslatability, examples (Wikipedia) - <AUTHOR> http://en.wikipedia.org/wiki/Untranslatability#Examples

<comment><AUTHOR> Our cultures are wonderfully different and this article shows good examples. I find it useful especially since I'm working with people from different countries on a product that is targeted globally. Isn't this the most common case now? Hope you'll like it too.</comment>


Ask HN: Sending a newsletter on a Friday? - <AUTHOR>

Hello,
I have a few thousands email subscribers for one of my project. I usually send them emails at the beginning of the week, and have good open rates (>50%).
However, this week I'd really like to send one email on Friday (tomorrow), and I'm afraid to get a lower open rate than usual.
Do you know if sending an email on Friday is bad for open rates? Any study about that, or personal experience?
Thanks! <comment><USER2> Sending an email on a Friday isn't inherently terrible.

Sending an email on the _Fourth of July holiday_ is.

<comment><AUTHOR> That's a really good point. Thanks.</comment></comment>


Ask HN: Is the Electronic Federal Tax Payment System Under Bank of America? - <AUTHOR> When logging in to pay my (federal) estimated taxes at www.eftps.gov, I notice that my browser shows me "Bank of America" in the URL bar (next to the padlock).
An inspection of the certificate shows that www.eftps.gov is assigned to the organization "Bank Of America". The Issuer (CA) is Entrust.
I am surprised that a government organization collecting taxes would not be at arms length with a private bank.
Is this supposed to be that way or is there an SSL certificate problem? <comment><USER2> The IRS is three tiered Puerto Rican trust. Owned by foreign entities. It is no more 'federal' then the 'federal' (fictional) reserve.

So why are you surprised they outsourced their payment system?</comment>


GitLab 11.0 Released with Auto DevOps and License Management - <AUTHOR> https://about.gitlab.com/2018/06/22/gitlab-11-0-released/ <comment><USER2> I'm super interested in auto-devops, but we've already got something in place using docker-compose that brings up domains based on project/branch name.

It works well, and we have an easier time dealing with docker-compose than kubernetes, but dang if those graphs aren't fun to look at.

<comment><USER3> What graphs do you mean?

</comment></comment><comment><USER4> Interesting that they integrated Mattermost in their omnibus package and not gitter.

<comment><USER5> We've had Mattermost integrated for quite some time, it predates the gitter acquisition. It's in use by around 5% of our installations and has a passionate userbase.

<comment><USER6> How do you know this? Does gitlab have telemetry in its base installation?

<comment><USER7> Yes, it does.

[https://docs.gitlab.com/ee/user/admin_area/settings/usage_st...](https://docs.gitlab.com/ee/user/admin_area/settings/usage_statistics.html#usage- ping)</comment></comment></comment></comment>


Microsoft to launch Bing Fund angel investment incubator - <AUTHOR> http://www.zdnet.com/microsoft-to-launch-bing-fund-angel-investment-incubator-7000000430/

<comment><USER2> Microsoft likes to take their product names and apply them in weird places. Maybe they can call it MS Bing .NET Fund.

I wonder how much of a Bing tie-in the projects will. Red to have? If it's none, the name is silly. If it's too much and they try to force it, I can't see it doing well.

<comment><USER2> That was supposed to say required, but I think I missed the time limit to edit

</comment></comment><comment><USER3> I've been hoping Microsoft would do this for years. I always assumed it would never happen, because... Well, I don't know. Why do companies where all of the senior people have read "The Innovator's Dilemma" still suck? Whatever the reason is for that.

In any case, I'm happy to be proven wrong.

<comment><USER4> You would think with Bill Gates being the most influential philanthropist in the world that it would have been done by now. One huge way to help the world is to encourage intellectual/technological growth. Maybe this actually was partly brought on by his inquiry, anyone know more details about the root of this advent at Microsoft?

<comment><USER3> I think he has more interesting things to spend his money on than 'more of the same' out of Microsoft. Also, it would likely be a bit demoralizing to create the world's largest, most successful software company and then finally have to admit that 'no, we can't do it all on our own.'

<comment><USER4> I suppose but I would think that he would know mavericks like himself would never agree to work for a corporation under someone else, they would rather freelance until they can conquer that corp, sell to that corp, or create a new market. But maybe he's just supposing there's not another Gates out there? ;)

</comment></comment></comment></comment><comment><USER5> A dinosaur trying to look cool and hip. YAWN.

<comment><USER6> Every time there is a post about Microsoft, this is the obligatory response. I understand that being such a huge company makes it difficult to change, but from the inside it's very exciting seeing all of the new innovations coming out. Microsoft is certainly no longer resting on the success of Windows but is actually trying to make cool, useful products and shaking things up.

<comment><USER7> I keep hearing similar sentiments from friends associated with Microsoft, and I love my Windows Phone, but there needs to be a better response to the trolls than just 'this is getting old'.

Microsoft only has themselves to blame for the public perception of them. They did such a horrible job at marketing for so long, that people got really bored with them.

Sadly, though the products are great, the marketing is still boring.</comment></comment></comment>


Show HN: Learning Explainable Machine Learning Models with Attribution Priors - <AUTHOR> https://github.com/suinleelab/attributionpriors <comment><AUTHOR> I wanted to share this work from a machine learning paper ([https://arxiv.org/abs/1906.10670](https://arxiv.org/abs/1906.10670)) we recently submitted. TL;DR - the idea is that there has been a lot of recent research on explaining neural networks by attributing importance to each input feature. We go one step farther and incorporate attribution priors - <USER2> beliefs about what these feature attributions should look like - into the training process. We develop a fast, differentiable new feature attribution method called expected gradients, and optimize differentiable functions of these feature attributions to improve performance on a variety of tasks.

Our results include: In image classification, we encourage smoothness of nearby pixel attributions to get more coherent prediction explanations and robustness to noise. In drug response prediction, we encourage similarity of attributions among features that are connected in a protein-protein interaction graph to achieve more accurate predictions whose explanations correlate better with biological pathways. Finally, with health care data, we encourage inequality in the magnitude of feature attributions to build sparser models that perform better when training data is scarce. We hope this framework will be useful to anyone who wants to incorporate prior knowledge about how a deep learning model should behave in a given setting to improve performance.</comment>


Comcast Confessions: why the cable guy is always late - <AUTHOR> http://www.theverge.com/2014/8/4/5960251/comcast-confessions-why-the-cable-guy-is-always-late <comment><USER2> I worked as a contract cable installer back when cable internet was new. New enough that they used one guy to do the computer set up, and a second to do the cable wiring. As I was finishing my tenure they were switching over to "super techs" who would do both. I was the computer half. This was like 2000.

We had no interaction with the guys doing the cabling, they were a different company. I'd get a sheet of installs in the morning, as well as the time frames. 8-12, 12-5, and 8-5. If someone had managed to convince a rep we might see a shorter timeframe like 3-5, but they were pretty rare. I'd show up, slot a network card, plug in the cable modem if the cable guy had been there already, and leave.

Then I moved to the big city, where the company gave people specific times. 10, 11, 12, 1. etc. They tended to give the clustered appointments to the super techs, so I was driving all over the city, searching for parking, and waiting to get buzzed in. My first two weeks were rough, then I discovered the manager had been going light on my appointments while I learned the city. Then my appointment book started looking more like: 10, 10, 11, 12, 12, 12, 2, 3, 4, 4, 4, 4. On good days I'd hit the closest double/triple/quadruple booked slot early, hit the second one one time, and try to race to the rest. Skipping lunch as required, or snacking on a nutrigran bar while wishing my car had A/C. On harder days I'd get to the first appointment barely on time, discover they had Windows NT and try to pawn off appointments while juggling IRQ settings.

Some days were an absolute mess, 8,8,8,12,12,12,12,5,5,5,5,5 or the like. You couldn't show up early for a 5, those folks were racing home to meet you as is. So I'd end up sitting in a park trying not to kill myself on a razor scooter for a few hours waiting for the next rush.

<comment><USER2> Random things that made me late:

\- Being double booked in the first place (clearly)

\- Customer has yet to unbox their computer.

\- Customer had so much crap installed that simply rebooting took literally 10+ minutes.

\- Buildings with slow elevators.

\- Having to park 4 blocks away

I blogged another story here: [http://blog.preinheimer.com/index.php?/archives/417-My-20-Ti...](http://blog.preinheimer.com/index.php?/archives/417-My-20-Tip.html)

</comment></comment><comment><USER3> I'm generally a Laissez-faire kind of guy, but the treatment I get from my cable company is a strong argument to drastically increase regulation, or even nationalize entire chunks of the industry.

If you're providing a service so poorly that nationalization seems like a good alternative, then your business probably deserves to be nationalized.

<comment><USER4> "If you're providing a service so poorly that nationalization seems like a good alternative, then your business probably deserves to be nationalized."

That deserves to be on a tee shirt. See also, health insurance, the financial system in general, and Government Motors.

</comment></comment><comment><USER5> This is what happens when you have a monopoly (in this case a regional monopoly). Customer service is an expense item, so minimize it and you make more profit, after all what can the customers do, move? I worked on a project for a company where the call center did reservations and customer service. They only paid the workers if they took a reservation; thus any customer service call resulted in a hangup. These customers never used their company again. The difference is a monopoly doesn't have to care as no one will leave.

</comment><comment><USER6> Saved you a click: they overbook

<comment><USER7> Had to click to confirm. Can confirm.

</comment></comment><comment><USER8> It would appear that 'customer service' is an area in desperate need of a revolution. A relative of mine worked in the BAE call center for 6+ years, and they were constantly reviewed and retrained. This service was exclusively for BAE employees and contractors.

The trend of fucking over customers is a vestige of the near monopoly the distributed cable consortium has in the US. There is no real motivation to do better as most people don't give a shit until it affects them directly (@raldi).

This is probably a silly idea, but what about an all volunteer charity tech support? Are cable boxes really so mysterious and complicated as to be serviced only by 'specially' trained employees and 'vetted' contractors?

<comment><USER9> Cable boxes are nearly 100% remote controlled from the head-end (the management software I'm familiar with is eye-gougingly bad, btw). They can tell a lot about what's going on by looking at the box, and the status and logs it sends up.

You generally can't change the settings on a box because the state is protected from changes (you can break into boxes, but that still won't give you access to the video streams you're not entitled to, since that access is cryptographically protected from the head-end).

</comment></comment><comment><USER10> As a former techician for Comcast, the reason is that the management there is far removed from what actually goes on in the field, they have no idea how hectic the scheduling can be. When an appointment can reasonably take anywhere from 2min to 3+ hours, it takes much more flexibility on the management end to allow the work to be done properly instead of being forced to rush through it.

<comment><USER4> Its the difference between the airplane flight reservation model and the taxi reservation model.

Taxi model = you call and a on call guy is dispatched and if they're busy its first come first serve.

Airline model = you call and make a reservation onto an overbooked quota slot next week. Staffing is "optimized" next week to an acceptable level, to a monopoly, of overbooking and predicted failure.

People expect/demand the taxi model and don't understand the inherent results of the airline model.

The system is operating as designed. They just don't like the design.

The telecom hicap / biz side operated under the taxi model but residential telecom and cable has always operated under the airline reservation model as far as I know. I know from personal experience that both natgas and water and electricity operate under the taxi model, so its not something inherently impossible about visiting people's homes.

I wonder if anyone's ever tried the taxi model for residential services? Or if its a startup opportunity?</comment></comment>


Wayback Machine director outlines the scale of everyone's favorite archive - jor-el https://arstechnica.com/gaming/2018/10/the-internets-keepers-some-call-us-hoarders-i-like-to-say-were-archivists/ <comment><AUTHOR> Wonder what the operating budget of the organization is.

I donate $50 a year, because it's pretty much the only site I can check every month or so and reliably expect that it will be better since the last time I visited.

<comment><USER2> As a charitable non-profit, a lot of financial info is available via the public-record "Form 990" filed with the IRS. See for example:

[https://projects.propublica.org/nonprofits/organizations/943...](https://projects.propublica.org/nonprofits/organizations/943242767)

Looking at the form for ty2016, the most recent available, the Internet Archive's expenditures that year were about $16.4 million.

</comment></comment><comment><USER3> Odd this story doesn't mention Brewster Kahle, who AFAIK came up with the idea of archiving the Web. I heard people joke about it in its early years, too. I'm glad he took it seriously.

<comment><USER4> He may not be in the article, but he did keynote the Internet Archive's Annual Bash last week! So he's not forgotten.

</comment></comment><comment><USER5> The Internet Archive is definitely up there with Wikipedia as one of mankind's greatest treasures. It really should be globally funded and endowed for the foreseeable future.

</comment><comment><USER6> How do they afford all those disks?

<comment><USER7> \- foundations + government grants [https://archive.org/post/2776/who-funds- this](https://archive.org/post/2776/who-funds-this)

\- donations (in-cash / in-kind) [https://archive.org/about/credits.php](https://archive.org/about/credits.php)

\- digitization services [https://archive.org/scanning](https://archive.org/scanning)

\- web archiving services [https://archive-it.org](https://archive-it.org)

src: I work @ Internet Archive on [https://openlibrary.org](https://openlibrary.org)

<comment><USER8> This is pretty great actually. I see that ads are none of your points: does Wayback Machine either avoid them totally or is it a negligible amount?

<comment><USER9> No ads full stop!

</comment></comment></comment></comment><comment><USER10> TLDR: 22 petabytes, stored redundantly as 44 petabytes, and a warehouse of physical media (books, vinyl records) that grows by a 'shipping container' every two weeks.

edit: Also this article mentions a bunch of things I didn't know about (e.g. playable 80s video game archive) so its worth reading.

<comment><USER11> Actually approx 100 PB of raw capacity thanks to redundancy, I was told once.

Unsure if this is on RAID or ZFS.

<comment><USER12> I was expecting some kind of reed-solomon encoding.

<comment><USER13> Zfs does have Reed-Solomon in the double and triple parity modes of operation.

<comment><USER14> I guess I would expect something more like massively distributed erasure encodings rather than ZFS directly. For example something like Dropbox's magic pocket but taken to extremes with, say, 100 data stripes and 20 parity stripes, all on different machines.

<comment><USER15> One of the known problems with these large encodings is that the cost of reconstructing lost data increases as the size of the data increases. If you use Reed-Solomon (100,20), then you only have 20% overhead and have a vanishingly small probability of losing data, but if you lose a single 10TB disk, you need to do 1PB of I/O to rebuild it! Even forgetting I/O for a moment, you might be churning through a bunch of CPU time just to rebuild a single block of data.

Of course, you don't need to rebuild immediately. You're effectively working with (100,19), and you can put off the reconstruction as long as you like, maybe you don't reconstruct until someone wants to read the data or until enough other disks fail, and you can prioritize the I/O as low as you like. But in practice, super large encodings become more and more expensive as the size increases.

<comment><USER16> Let's see. At 1-3% annual failure rate, we expect to need to rebuild a couple drives in each array per year. To make the math simpler, let's have each server send and receive 8.5TB and do 1/120 of the parity math.

Since we have plenty of redundancy, let's keep things low-priority up to 3 drive failures, and try to rebuild each drive in 90 days. For bonus points, if two drives are rebuilding at once the increase in bandwidth is negligible.

8.5TB in 90 days is less than 10mbps. That means we could build servers with 50 drives and a single gigabit connection and if they were rebuilding every array at the same time it wouldn't even use half that bandwidth.

Real servers are going to have vastly faster connections and probably a lot fewer drives, so honestly that petabyte of I/O is not a big deal in context. In practice you could replace failed drives in a day, and the limiting factor is the speed of a single drive, not the network.

<comment><USER15> > ...8.5TB in 90 days is less than 10mbps.

The arithmetic is correct but that's not the correct value. The I/O necessary for reconstructing one 8.5TB drive in a (100,20) Reed-Solomon group is 850 TB, which comes out to 875 Mbit/s, averaged over 90 days. It's not uncommon to see data centers with 10 Gbit/s connections, and sure, maybe it's a 10 Gbit/s per link on a Clos fabric but it's hard to claim that this bandwidth usage is trivial.

The point is not that the rebuild is prohibitively expensive or impossible, the point is that as the group size increases, the cost of data reconstruction increases and the cost of the encoding overhead decreases. At some point the cost savings from reduced encoding overhead are smaller than the additional I/O costs incurred by reconstruction. So the ideal encoding size is not as large as possible, but some medium size which balances the cost of the encoding overhead with the cost of reconstruction.

And consider that if any of this data is being served, you incur the 100x I/O penalty immediately.

> Real servers are going to have vastly faster connections and probably a lot > fewer drives, so honestly that petabyte of I/O is not a big deal in context. > In practice you could replace failed drives in a day, and the limiting > factor is the speed of a single drive, not the network.

The Internet Archive has 24 disks per machine, I believe.

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

> In practice you could replace failed drives in a day, and the limiting > factor is the speed of a single drive, not the network.

To rebuild an 8.5TB drive in 1 day requires 78 Gbit/s of bandwidth. Even inside a data center, oof.

<comment><USER16> > The I/O necessary for reconstructing one 8.5TB drive in a (100,20) Reed- > Solomon group is 850 TB, which comes out to 875 Mbit/s, averaged over 90 > days.

You missed the part where I'm dividing the work over all the servers.

We're not having 119 disks read 8.5TB each and sending it all to the server with the new disk.

Instead, 119 servers are each recovering 85GB and then sending _that_ to the server with the new disk.

Each server sends 8.5TB over the network, and receives 8.5TB over the network. You only need 10Mbps per server for slow mode.

> And consider that if any of this data is being served, you incur the 100x > I/O penalty immediately.

1% of blocks take 100x the I/O. That's an average of only 2x. But because of data locality, you needed to read most of those blocks anyway. You might only have a few percent penalty.

> To rebuild an 8.5TB drive in 1 day requires 78 Gbit/s of bandwidth. Even > inside a data center, oof.

It requires 78Gbps of _switching bandwidth_. It's easy to get a switch with _terabits per second_ of total capacity. (less than $100 per port on eBay) [https://i.dell.com/sites/csdocuments/Shared-Content_data- She...](https://i.dell.com/sites/csdocuments/Shared-Content_data- Sheets_Documents/en/Dell_Networking_S4048T_ON_Spec_Sheet.pdf)

So I assert that even 100ish drives per group is actually quite easy to handle.

<comment><USER15> > We're not having 119 disks read 8.5TB each and sending it all to the server > with the new disk.

> Instead, 119 servers are each recovering 85GB and then sending that to the > server with the new disk.

Could you explain how this is possible? In other words, how do you arrange the blocks so that each individual device has enough data to reconstruct 85GB from another drive without doing network I/O? I'm not aware of a scheme where this is possible. Can you point to a paper or describe how this scheme works?

Simple arithmetic suggests that it is not possible to rebuild 100 different 8.5GB chunks from a single 8.5TB selected from an larger amount of data encoded with Reed-Solomon (100,20). The simple arithmetic suggests that you would only be able to reconstruct a total of 1.7TB from any individual 8.5TB disk, which is only 20% of what your scheme suggests. It is also unclear to me what would happen in this scheme if two disks were lost simultaneously, which is nearly guaranteed to happen at some point if you are playing around with 120 disks.

Simple erasure coding means that e.g. with (100,20) Reed-Solomon, you spread each stripe across 120 devices, and therefore need to read from 100 _different_ devices to recover any one lost chunk from a single stripe. There are some schemes which reduce this but the gains are modest and there are tradeoffs involving e.g. encoding time or overhead, for example, the "Hitchhiker" schemes published by researchers at Facebook:

[https://www.cs.cmu.edu/~nihars/publications/Hitchhiker_SIGCO...](https://www.cs.cmu.edu/~nihars/publications/Hitchhiker_SIGCOMM14.pdf)

<comment><USER16> Let's say three drives have failed.

Each server with a working drive reads a contiguous run of 117MB off its hard drive. It then sends the first MB to server 1, the second MB to server 2, the third MB to server 3... the last MB to server 117.

Each of those servers receives 117 chunks of a single 1MB stripe.

It then does a parity calculation to figure out the missing 3 1MB chunks, and sends them to the rebuilding servers.

We have now recovered 117MB of the disk. Our network data sent was 120MB per server. Every lost chunk was recovered via sibling chunks from 100+ different devices.

You can then optimize this by having the servers only send 100 chunks of each stripe across the network.

Once you repeat this operation 85470 times, sending 100+3MB each time, you have recovered 3 10TB disks with a network use of 8.8TB per server. (The efficiency is slightly worse than the 8.5TB for recovering one disk)

So you're still sending over a petabyte through your switch, but that's what good switches are built for, handling cross-traffic from every single port at the same time. A gigabit per server is acceptable, and 10gig approaches overkill.

<comment><USER15> This seems pretty obvious to me once you say it, I guess I didn't understand what you were trying to say. It seems like that goes both ways, too... what I'm trying to say is that the amount of reconstruction work increases as the encoding size increases. You're offering suggestions for how to accomplish that work but it doesn't change the underlying fact that wider encodings require more work for reconstruction.

And that really was _all_ I was trying to say... you don't make encodings arbitrarily wide because the space savings must be weighed against the reconstruction costs.

<comment><USER16> Not _arbitrarily_ wide, agreed. But it's also true that you can go a lot wider than a typical raid array without much difficulty.

I guess something to keep in mind is that you need bigger chunks to read efficiently, and smaller stripes to write efficiently. But in archival storage you don't care about write speed so the balance changes a lot.</comment></comment></comment></comment></comment></comment></comment></comment></comment></comment></comment></comment></comment>


A Law Apple Would Like to Break - <AUTHOR> http://www.nytimes.com/2012/02/25/business/apple-confronts-the-law-of-large-numbers-common-sense.html

<comment><USER2> The author was thinking of

<http://www.investopedia.com/terms/l/lawoflargenumbers.asp>

but confused it with:

<https://en.wikipedia.org/wiki/Law_of_large_numbers>

Apple has no need to grow its market cap forever. It could pay dividends from revenues.</comment>


Monitoring cache with Claspin - <AUTHOR> https://www.facebook.com/notes/facebook-engineering/monitoring-cache-with-claspin/10151076705703920

<comment><USER2> This is all fine, except the choice of colors is maybe not the best one, when so many people are red-green color blind.</comment>


Jeffrey Katz: Google's Monopoly and Internet Freedom - <AUTHOR> http://online.wsj.com/article_email/SB10001424052702303830204577448792246251470-lMyQjAxMTAyMDAwODEwNDgyWj.html <comment><AUTHOR> In case you think (other than semantic markup) that SEO is actually a thing you can "do". Needless to say, since the WSJ is a major publication, Google quickly posted a rebuttal. [http://googlepublicpolicy.blogspot.com/2012/06/setting- recor...](http://googlepublicpolicy.blogspot.com/2012/06/setting-record- straight-competition-in.html)</comment>


The crypto alternative - <AUTHOR> https://techcrunch.com/2018/05/13/the-crypto-alternative/ <comment><USER2> The author fails to mention a likely outcome: the co-mingling of centralized solutions and decentralized ones. Decentralized solutions would be at global scale (not at 2% usage) and they'd complement centralized solutions, not replace.

For example, digital property rights might be best preserved via decentralized tech. But perhaps you might take your digital property and use it to interact with centralized services. Imagine a video game where the player truly owns the in-game items they use as crypto tokens, but the game itself runs on centralized servers.

The same might be said of Facebook-like applications. Rather than imagining a future where a decentralized Facebook exists, perhaps it becomes more of a hybrid decentralized-centralized platform.

<comment><USER3> > Imagine a video game where the player truly owns the in-game items they use > as crypto tokens, but the game itself runs on centralized servers.

This is a neat thought experiment, but beyond the novelty what value does it give you to own an item in a decentralized way if a centralized entity can take it away from you if they want to (even if it means patching the game instead of knowing your private key?)

Truly decentralized, Sybil-resistant networks are necessarily expensive to maintain, so it has to provide more than just novelty value.

<comment><USER4> The value of the decentralized token would be determined by the free market.

If the centralized entity ever had a history of patching the game to block tokens, then the value of that token would go down a lot.

<comment><USER5> But if the value is determined by a single centralized entity, what is the value that crypto tokens bring?

For example, if WOW currency were to become decentralized overnight -- what would practically change? Either way Blizzard can take them away. Either way value of token will drop if Blizzard does this a lot.

<comment><USER6> A better example might be Minecraft, where there are different servers hosting the game and you can't necessarily port your items over.

But verification of rare digital assets could produce some interesting scenarios. One could make a virtual trophy room showcasing their in-game achievements. Imagine there's some game tournament for StarCraft for example. Winners get paid in cash and also get one-time issued virtual medals as proof of their achievement. Like Super Bowl rings, these medals would have sentimental and tangible value.

<comment><USER7> > A better example might be Minecraft, where there are different servers > hosting the game and you can't necessarily port your items over.

How would items appear on the blockchain in this case? If every minecraft server can record created items on the blockchain, I can just run my own server that's modified to give me whatever I want. At that point a simply federation of servers seems to provide the same utility of transferring items between servers (but for free).

EDIT, added: > Winners get paid in cash and also get one-time issued virtual medals as proof of their achievement. Like Super Bowl rings, these medals would have sentimental and tangible value.

They have to be issued by the organizer of the tournament to provide any value. What does decentralization buy me there? The organizer might as well just put on the website "X won Y".

A lot of these pie in the sky ideas seem poorly thought out once one asks what _new value_ would a blockchain solution add.

<comment><USER6> [http://erc721.org/](http://erc721.org/) <= That gives you the spec for Ethereum's ERC721 standard, which provides the ability to produce non-fungible assets on the blockchain (which is what CryptoKitties is based on). The creators of Minecraft (or insert future hit video game here) can issue limited release assets using this standard. Whatever arbitrary criteria they want to come up with for dispursing these tokens is ultimately up to them. It's not hard to imagine scenarios where this plays out in in-game economies. We've already seen multi-million dollar economies spring up in MMOs. It's also not hard to conceive of cross-game assets that grant special in-game abilities, special in-game decor, or what have you. If you think the big names like Blizzard have no incentive to do so, well how about the indies? Someone could easily come up with some reward scheme that several or more indies agree to recognize within their games. This would produce an incentive for players to play multiple games and succeed to a certain level in order to collect a complete set of items.

As for organizers of tournaments issuing an ERC721 token in recognition of some achievement, well, as noted...the asset is non-fungible. It will last on the blockchain for as long as Ethereum as a network stays functional. A note on a webpage isn't tradeable. It isn't referenceable by other games. It can be duplicated infinitely.

Provably rare digital assets now exist. And the implications of that are just beginning to be explored. I think it's exciting times.

<comment><USER7> CryptoKitties seems to work because all the game logic is on the blockchain. But for a more involved game this is not feasible. Whenever you have to interface with the outside world you have a trust issue there: You need to somehow trust the correctness of the data put on the blockchain in the first place. This is the same problem where smart contracts break down when they concern stuff outside of the blockchain.

E.g., if I wanted to, say, give out blockchain-diamonds to Minecraft players when they mine diamond ore in Minecraft, I need to somehow be able to trust that when a server reports "player X mined a diamond on my server", that this is actually correct. Whenever you you have an interface to the outside world you get these kind of trust issues. And then you might as well go with a centralized or federated solution, since the trust issues are the same but a federated system is much more efficient.

Same for the indies: To make the economy worth anything, it can't be trustless in the sense of blockchain. Indie company A must somehow be sure that indie company B (or anyone else) isn't giving out rewards for cheap. At this point you might as well build a federated system built on public/private-key cryptography and save yourself the overhead of a blockchain.

As for the tournament prize: I don't see what the blockchain accomplishes over an email/piece of paper/whatever saying "Player X won tournament Y" that is PGP signed by the organizer of the tournament. It is even more resilient than the blockchain (the receiver can keep and show it as long as he wants), you can send it to whomever you care to, and you can copy it as often as you like.

</comment></comment></comment></comment></comment></comment></comment></comment><comment><USER8> > Likelihood: essentially nil, for many, many reasons, such as: The > overwhelming majority of people don't want to maintain their own private > keys, and if you don't maintain your own private keys, cryptocurrencies are > essentially no different from fiat money held in banks, except for the many > ways (such as the irrevocability of transactions) in which they are wildly > inferior.

Looks like an complete failure of imagination. Is it really that hard to assume there could be solutions to problems like that?

<comment><USER9> Why should I have to comb through my imagination looking for a problem that fits this solution? No other technology community has to use so much exposition to convince others why their technology is useful.

<comment><USER6> There are a lot of problems blockchain technology solves. And I would disagree. Personal computers were thought of as mostly useless hobbyist technology until years later when spreadsheets were introduced. Even then, home computers didn't exactly go mainstream until the 90s, when the internet began to take off and OS technology matured (Win 95). Cell phones suffered a similar skepticism up until the networks and pricing models matured in the late 90s. And no one needed text messaging when that first came out. You also couldn't convince most people that a data plan was worth it on the mostly useless browsers of the time.

<comment><USER10> Cell phones aren't the best example for you. As soon as economic and technical hurdles were cleared, cell phones became one of, if the most, rapidly and widely adopted technologies ever.

Cell phones also provided something genuinely novel and useful for those who adopted them, in a package that was familiar and easy to use.

Bitcoin, by comparison, okay I can pay for some things, well I could already do that. I have to adopt hard to understand security measures and my every action with my 'money' is fraught with peril if I'm not exceedingly careful. Well, that's new, but it's not something that appeals to most people.

<comment><USER6> Cell phones are a great example. They had absolutely dismal coverage in the early days and your bill would be hundreds if not thousands of dollars if you happened to roam in the wrong county. No one questions them today, but to many folks, they were a hard sell in the early days. Most folks thought they'd use a cell phone for emergencies only.

I don't know how you can look at distributed blockchain technology and not see something genuinely novel there. A set of algorithms and code are capable of replacing the functions of a bank (and then some). That is, you can store, transfer, and program the behavior of money around the world without any third party telling you can or can't.

Besides being open source money and all the awesome implications of that, crypto currencies are programmable. You can control the timing and flow of crypto according to scriptable logic. Please explain how you'd write a smart contract that escrows money and disburses according to preconfigured rules using USD.

What would you have to do to achieve that with code, today?

</comment></comment></comment></comment></comment><comment><USER11> Title should be "The cryptocurrency alternative"

</comment><comment><USER12> I am a keen watcher of crypto although I have zero skin in the game, just friends that did get bitten by the bitcoin fever. I use bitcoin as a generic term for all the alt coins and any business that talks of 'blockchain' or 'ICO' \- it is all the same snake-oil to me.

A mere six months ago everyone and his dog was advising me to get into one coin or another as if they were trying to get me into their pyramid scheme. This chat is now absent from the watercooler.

So I pressed my bitcoin mad neighbour on 'how are the coins going?' earlier today. I got an answer that they weren't doing it at the moment which sounded like the answer you would get if you asked a drug addict if they are still on crack knowing that their dealer had been busted.

I asked some more and the response I got was that bitcoin was seasonal and that right now is just not the season for it. I asked some more but there was no more other than 'seasonal'.

I also no longer get notifications of bitcoin things on YouTube and Twitter. For instance the guy 'bitfinex'd' was writing daily about the scam that was going on with that coin that was pegged to the dollar, he has not written in weeks.

So my analysis is that the coin thing has gone the way of 'cold fusion'. It sounded like the next big thing but it is not.

There is a lot of momentum with these things, I am sure that bitcoin is worth many thousands of dollars and I am sure that there are people putting together new coin scams, however, the word on the street and by the watercooler is that bitcoin is passe. People have moved on.

<comment><USER13> On the contrary, we are about to start the second wave of things. The next wave will be an order of magnitude larger than the last, and this will continue until Bitcoin and blockchain has disrupted the vast majority of current industries.

You sound like an Internet hater after it failed to find a killer app besides email for most of the mid-90s.

Then, in 2000, as Pets.com was imploding, no doubt you would've dusted off this consistent criticism: "I am sure that internet stocks are worth many thousands of dollars and I am sure that there are people putting together new scams, however, the word on the street and by the watercooler is that internet stocks are passe. People have moved on."

Ten years later, the stock market is dominated by tech stocks.

If your criticism was based on actual knowledge, I'd give you credit, but it sounds like you have no idea what you're talking about, and you're using derision as an excuse not to educate yourself.

Indeed, I think $8500 per Bitcoin is a bargain. Come check with me in a year.

<comment><USER14> Theodores seems to have some actual knowledge from the water cooler. Bitcoin has no intrinsic value - the price is entirely driven by various people buying and selling it so seeing what such people are thinking is relevant.

<comment><USER13> Don't listen to what people say...watch what they do.

[https://toshitimes.com/newly-appointed-goldman-sachs-vice- pr...](https://toshitimes.com/newly-appointed-goldman-sachs-vice-president- leaves-for-cryptocurrency/)

</comment></comment></comment></comment><comment><USER15> The article does not address what I think is the Achille's Heel of crypto currencies: Controlling the money supply is one of the most powerful rights that a government has. Why do you think the governments in the EU have not unified their fiscal policies? Why do you think EU countries cheat on their budget deficits? Governments want to be able to make money plentiful during economic downturns, and tighten it up when the economy starts overheating. They set nonzero target inflation rates to encourage people to consume and invest. The idea that governments will allow some technology to remove that power from them is silly. If a crypto currency ever becomes a significant medium of exchange, it will be outlawed (following predictable reports about Drug Kingpins, Terrorists and Child Pornography).

<comment><USER16> Most cryptocurrencies are spec'd to stop creating new coins after a period of time. But that doesn't mean one couldn't design a coin where inflation is controlled by an entity with the right key.

Even without that consideration policy changes can be enforced by Software updates. In the case of bitcoin gridlock has stalled this process but other coins have managed fine. The government has a strong compelling argument to force upgrades - you can't pay your taxes if you don't and then you will go to jail.

</comment></comment><comment><USER17> The different scenarios don't seem to follow the same time line. The first example seems to be far in the future while the others closer to now, making the comparisons flawed

</comment><comment><USER18> How can he be so good at understanding the possibilities but so bad at judging the likelihood of significant change?

</comment><comment><USER19> some good points there but saying "uh, nah" as a valid argument for dismissing probable outcomes doesn't awe me

</comment><comment><USER19> the subsidization of real world real estate, art and other things that solve numerous problems did not enter this article.

</comment><comment><USER20> "Suppose, just for a moment, just for argument's sake, that (some) cryptocurrencies are not a giant scam, and what's more, they're not just another kind of financial asset. Come on. Don't look at me like that. Work with me here. Imagine, just for a moment, that there exist plausible futures in which they matter."

I'm afraid my suspension of disbelief has its limits.</comment>


Letterpress by Loren Brichter of Atebits - <AUTHOR> http://www.atebits.com/letterpress/

<comment><USER2> This game rules.

It's fun, it's easy to play and it's got the kind of interface that feels very simple but actually has insane attention to detail.

Edit: You don't have to use only contiguous letters, if you've played a lot of Scramble that may take some getting used to.

</comment><comment><USER3> It's one hell of a good looking app and according to an article on The Verge it apparently clocked in at under 7k LOC. Looking forward to seeing what comes out of Atebits over the coming years.

</comment><comment><USER4> I really like this take on asynchronous gameplay UI, it's tough get the "glance" aspect of the UI correct and yet make it compelling. The "Draw Something" problem where you're drowning in partially played games perhaps led to it's demise, a victim of the UI's inability to scale?

(Sigh... should have spent more time studying design / HCI in school...)

<comment><USER5> No one says you can't study it even now (except perhaps your calendar)... One classic starting point is "The Design of Everyday Things"[1].

[1] [http://www.amazon.com/Design-Everyday-Things-Donald- Norman/d...](http://www.amazon.com/Design-Everyday-Things-Donald- Norman/dp/0465067107)

</comment></comment><comment><USER6> Good lord the App Store search is lame. I get three results when searching for "Letterpress" and this game isn't among them. In fact, I just spent about 5 minutes trying to find this game at all and I can't. Boo.

<comment><USER7> I think it takes a little while for new additions to get indexed into the search. Links will take you there though...

[https://itunes.apple.com/us/app/letterpress-word- game/id5266...](https://itunes.apple.com/us/app/letterpress-word- game/id526619424?ls=1&mt=8)

</comment></comment><comment><USER8> Very fun/cool UI. It's surprisingly reminiscent of Metro, err, Windows 8 Style UI. You could wrap an iPhone in some clumsy metal/plastic Windows phone wrapper from a year ago and you'd have no idea what OS was powering this.

<comment><USER9> I haven't tried the game yet but at first sight, it seems to be heavily inspired by Meego Harmattan / Symbian Belle - a beautifully designed UI (at least in its Meego implementation) that unfortunately never went anywhere due to Nokia killing both Meego and Symbian before it was even released.

</comment></comment><comment><USER10> Very fun and beautiful game, just tried it out. I also like the solution that you can play up to 2 games for free, and then you can pay for it to be able to play more at the same time.

<comment><USER11> A very similar model to Outwitters's (<https://itunes.apple.com/app/outwitters/id432969074?mt=8>)

<comment><USER12> Unfortunately, Outwitters was a sales disaster: [http://www.wired.com/gamelife/2012/10/outwitters-sales- disas...](http://www.wired.com/gamelife/2012/10/outwitters-sales-disaster/)

<comment><USER13> Outwitters main problem was the teams were functionally identical so there was little point in paying for them. Yes the uber units were different but in actual gameplay these weren't used at all. If there were other noncosmetic differences, this wasn't apparent to me as a casual player.

I guess I spent around $20 in Hero Academy but I spent $0 for Outwitters, a game of similar polish and quality.

<comment><USER11> > Yes the uber units were different but in actual gameplay these weren't used > at all.

That's not completely true, but it is true that they're not hugely common to use: because of their price, misusing them will likely break you, whereas using them does not usually have an absolutely critical impact on the game. They may be slightly more easy to use in pair games.

> If there were other noncosmetic differences, this wasn't apparent to me as a > casual player.

Nope, there aren't, probably to avoid the balance issues of e.g. Hero Academy.

</comment></comment></comment></comment></comment><comment><USER14> I love the app, but this isn't how you win friends on the internet: <http://cl.ly/image/0Y401a2D1c2R> ;)

<comment><USER15> I am sure it uses a standard dictionary such as SOWPODS, which excludes proper nouns among other things.

</comment></comment><comment><USER16> I'm going to love this game right up until someone creates a cheating app/site.

<comment><USER17> The game is far more strategy-dependant than vocabulary-dependant. The word list comes nowhere near being exhausted on a given board within a game.

Now, is it possible to write an AI? Sure, and actually, an AI-contest for this game would be a whole lot of fun. It's not simply "generate words" - you could give everyone the word list and the game would still play well.

<comment><USER18> Not true, for example I've been ruining the game for the past couple hours with a quick (greedy) AI.

Play a couple rounds with words like 'tetrasyllabics', where you completely reverse their blocks, and people just give up :(

Actually, I'm hoping there's someone else out there doing this too, because then I'll need to throw in the blocking logic.

</comment></comment></comment><comment><USER19> I was playing this game all afternoon. Ten I came home and turned my phone off silent. Wow. The attention to detail in the sound effects want me to go back to my review and give it another star.</comment>


Is the recession because of 9/11? - <AUTHOR> http://davidadewumi.com/2008/01/29/the-economy-is-already-in-a-recession/

<comment><USER2> Despite the sensationalist headline (which had little to do with most of the article) that was a pretty good overview of the current situation, in layman's terms.</comment>


Update on a Side Project - <AUTHOR> http://njgeo.org/2016/01/27/update-on-a-side-project/ <comment><USER2> The part where the author spent many hours to work around shared hosting really resonated with me. As a student I did the same, and some of my sites still bare the (technical) scars.

For example I used static pages, and the included dynamic elements through server side includes (SSI). But once you have multiple such dynamic pieces, they can't easily interact, and it all gets very messy.

And I realized that this is a very limiting approach. I spent much more money on other pastimes. You get a small virtual server for 5EUR/Month or less from OVH or Digital Ocean and probably many other providers. And that's enough for a website of mine that gets around 40k visitors per month.

<comment><USER3> serious question - why not just get a $4.99 fully functioning VPS from digital ocean or something?

<comment><USER2> I have one now.

But for me, this was back in 2006/2007 where VPS weren't that cheap, and I was very reluctant committing to recurring payments.

</comment></comment></comment><comment><USER4> This is a cool project and it's fun to read about how he built it. I would like to see him open source it, so that people could make these for other states. It's also nice, in my opinion, that he gets a little payout from ads and I'm glad it's for something other than some kind of content-in-WordPress- site. Users might see a useful ad if targeting was configured right!

<comment><AUTHOR> The difficulty in "open sourcing" it is that each state manages its CAMA/assessment/cadastral data differently.

I did open source some of the tools I used to work with New Jersey's data: [https://github.com/johnjreiser/NJParcelTools](https://github.com/johnjreiser/NJParcelTools)

<comment><USER4> Nice! I didn't even bother to search, but I should have.

</comment></comment></comment><comment><USER3> I gotta say, this is a really cool project, I don't see how the end users wouldn't / didn't find the maps interesting or useful. I would love to have one of these for my areas.

Perhaps the pages they were landing on could have been better optimized so users would view the map, or the map could be on every page.

<comment><AUTHOR> I have added a neighborhood map to each property page, in addition to the Bing "Bird's Eye." I'm also working on a Leaflet-based map of the whole state with the parcel layer. Still thinking over how to handle creating the vector tiles and linking them up to the assessment information. NJ's parcel GIS data gets updated yearly, while the assessment/sales records are updated weekly. I don't want to have the assessment data in the vector tiles, so I've got to perform some matching & retrieving data after they're loaded.

</comment></comment><comment><USER5> Thanks for sharing this! I use NJParcels all the time to explore the neighborhoods around me. It's really great to learn more about how the site was built.

<comment><AUTHOR> Thanks! I welcome any feedback you might have on how I can make it even more useful.

</comment></comment><comment><USER6> Title should be more descriptive, imho.</comment>


Beyond 10,000 Lines: Lessons Learned from a Large Phoenix Project - <AUTHOR> https://shift.infinite.red/beyond-10-000-lines-ba1adc17cc7b <comment><USER2> Also I found Dialyzer (success typing checker) to be helpful in large projects:

[http://learnyousomeerlang.com/dialyzer](http://learnyousomeerlang.com/dialyzer)

The way success typing works it is a bit like static typing but when it cannot deduce the types it assumes success. However when it finds a discrepancy it is always right. So the more type annotations you add, and the more precise they are the more benefits you get from it.

It has also been there for many years. I think Python only very recently has started getting the same kind of things via MyPy. Of course, they had to call it something differently (Optional Static Typing).

Elixir has a wrapper around it, it seems: [https://github.com/jeremyjh/dialyxir](https://github.com/jeremyjh/dialyxir) but never used it (I user Erlang mostly).

<comment><USER3> Totaly agree. Dialyzer/Dialyxir can provide a high degree of confidence about types.

The wonderful thing about it is that you don't have to get all type annotations since the begining, you can add them over the time. This allows to use "unspecified" types for quick prototyping, and make them more specific when the project evolves, which is a major complain of traditional type systems such as Java's.

Another tool that I find useful is Credo[1] which "is a static code analysis tool for the Elixir language with a focus on teaching and code consistency".

The Ecto[2] project uses a tool called Ebert[3] that automatically runs Credo for each pull-request and comments with the issues found. Here you can see an example of Ebert's bot commenting on a PR[4]

[1] [https://github.com/rrrene/credo](https://github.com/rrrene/credo) [2] [https://github.com/elixir-ecto/ecto](https://github.com/elixir-ecto/ecto) [3] [https://ebertapp.io/](https://ebertapp.io/) [4] [https://github.com/elixir- ecto/ecto/pull/1785](https://github.com/elixir-ecto/ecto/pull/1785)

</comment></comment><comment><USER4> I feel like the bit about OTP misses the point of OTP.

Erlang is not just about distributed computing (in fact, it never was; any affinity for distributed computing was more of a side-effect of Erlang's design). Rather, it's about fault-tolerance. Supervision trees and "let it crash" are the cornerstone of Erlang programming, and therefore by extension the cornerstone of Elixir programming.

Meanwhile, OTP applications build on this in a way that permits composability. It's kind of like microservices behind the scenes, bit they feel like a monolith; you build up your system from lots of different OTP applications that work together to provide a unified whole.

Elixir and Erlang web frameworks (Phoenix, Sugar, Chicago Boss (IIRC), etc.) already do a lot of this for you by kicking off various OTP dependencies; for example, your average Phoenix or Sugar application will in turn start Plug, Ecto, and various other OTP apps, and these will in turn spin up their own dependencies (like Cowboy and Postgrex, respectively).

Basically, it's not quite right to equate OTP to just distributed computing. OTP is at the heart and soul of the vast majority of software written for BEAM.

</comment><comment><USER5> Could anyone more knowledgable explain whether or not my feeling is correct that Elixir becoming (relatively) popular is making Erlang a less viable choice? Whereas the total number of libraries may be increasing, code that might have been written in Erlang is now written in Elixir and established Erlang codebases (RabbitMQ for one) have started to migrate (parts) to Elixir. Calling Erlang from Elixir is easy, but what about the reverse? It reminds of me of how, at least in the early days, Play Framework (largely Scala) could be used from Java but not without much friction. Should I prefer Erlang as a language for its maturity and fewer constructs, it would be a pity to then miss out on new libraries or frameworks, such as Phoenix, that revolve around Elixir.

<comment><USER6> Yes, you can call Elixir from Erlang: [http://elixir-lang.org/crash- course.html#adding-elixir-to-ex...](http://elixir-lang.org/crash- course.html#adding-elixir-to-existing-erlang-programs)

<comment><USER5> I did expect it to be theoretically possible, but how realistic/sensible is it really to do an Erlang project with Elixir libraries or frameworks? Elixir brings a lot of its own tools, conventions and so on. Will it soon take over my project, making it a better option to just use Elixir for everything, or would it be very manageable and not interfere much with the rest?

<comment><USER7> We use both Erlang and Elixir where I work. We successfully use Erlang libs in our Elixir projects pretty easily. We recently started trying to do the reverse and use an Elixir app inside an existing Erlang app. It has been significantly more work. The main issues have been around dependency management.

I wasn't personally working on this, so I apologize for being fuzzy on the details, but I understand that getting rebar3 to fetch all the deps that would normally be managed by hex was not possible or at least non-trivial. There was talk of having to manually install each dep that you knew the Elixir lib would be requiring.

I think it was sorted into something workable, but if anyone has better understanding I would love to be pointed to some resources!

<comment><USER7> Had a quick chat this morning with the people that worked on it. The package rebar3_elixir_compile[0] makes this pretty easy. However, our target Elixir lib is not a public hex package, which requires using git submodules.

Not a seamless setup, but it does work. As the sibling comment suggests, perhaps using mix for everything would help.

[0] [https://github.com/barrel- db/rebar3_elixir_compile](https://github.com/barrel-db/rebar3_elixir_compile)

</comment></comment></comment></comment></comment><comment><USER8> > 5\. Avoid Non-RESTful Routes

Every "large" project gets to a point where some routes aren't totally RESTful. It happens. But it's not great advice to say that non-RESTful routes are always a code smell.

<comment><USER9> What a total RESTful route to begin with ? I thought REST had nothing to do with "routes", url or resources but how the state of the application is communicated in an API ? It seems to me the Roy wrote something with a certain perspective, someone came up, read the paper and decided to apply his writings to something totally unrelated because he didn't like SOAP ... I personally stopped using that word so I don't have to confront and debate with "REST purists" and just went back to talking about web service, because that's what it is.

<comment><USER10> The idea is to limit exposed routes to the standard CRUD routes: create (/new), read (/show), update (/edit), delete (/destroy).

<comment><USER9> I thought the idea was to make an API behave like a webpage by using hyperlinks that represents the state of the application, so in theory a "smart" client could navigate an API autonomously like a human interacts with a web page ? Because otherwise it's no different from RPC.

<comment><USER11> I think you are thinking of HATEOAS. Read about it here: [https://en.wikipedia.org/wiki/HATEOAS?wprov=sfla1](https://en.wikipedia.org/wiki/HATEOAS?wprov=sfla1)

</comment></comment></comment></comment></comment><comment><USER12> Anyone has a small-ish gig where I could learn Phoenix/Elixir? I am a senior level programmer but all my experience is with PHP/Drupal. I would very much like to work on a smaller side (15-20 hrs a week) gig learning Phoenix/Elixir. A lot of experience is going to transfer, I hope (problem solving is not really language dependent) and so I think I offer a pretty good deal: you could get a very experienced coder for a language learner's rates :)

<comment><USER13> I've been hoping to pick it up on weekends & time off but startup hours don't leave much free time. I worked on a few simple heroku / json phoenix apps last year. Hoping I can put together a useful but small web app next.

<comment><USER14> I can recommend to both of you to get the book "Elixir in Action". It's fantastic! Starts very simple and step by step explores the must-need concepts of Elixir.

I started phoenix before fully understanding Elixir and had a hard time. Then I got that book and when I was halfway through I loved Elixir already.

Now I use phoenix for almost everything web related.

<comment> jon-wood Programming Phoenix is also excellent. I think it helps that it was written by the core contributors to Phoenix itself (including Jose Valim, who created Elixir). I really appreciated not only looking at how things work, but also why they work in the way they do. The authors clearly have a real sense of excitement about Phoenix and its contagious.

</comment></comment></comment></comment><comment><USER15> In section titled "3\. Write Fewer, Valuable Tests", I don't understand the terminology ("controllers and plugs"), which I assume is some stuff in the Phoenix framework that I have no idea about. Can somebody possibly explain to me what are the _" controllers and plugs"_ here? I'm very interested in learning a more general idea (how to effectively reduce lines of tests) from this nugget, that I could hopefully translate to different languages & frameworks I use...

Quoting the relevant fragment in full:

 _" We focused our automated tests on our controller actions and plugs rather than going for 100% test coverage. Since these are the main ways that the Phoenix application interfaces with the outside world, they're the critical points of failure._

 _Controller tests also exercise a lot of the code paths in your application, making it less necessary to unit test every single module. As a result, you end up with fewer tests, which makes it easier to do refactoring, provided your changes preserve the behavior of the controllers and plugs. "_

<comment><USER16> they did black box unit test instead of proper unit test.

e.g. if a method is private, it's not tested.

that's the usual way when full reliability is not worth the dev time, or when devs think functional tests only are enough but still want a tap on the back for having unit tests and coverage numbers.

in their case it's the later as you can see for: "Controller tests also exercise a lot of the code paths in your application"

classical functional tests being called unit tests excuse. not that functional is better or worse, but correct names are better no matter what.

<comment><USER17> The thing about unit testing is that you have to decide what your "unit" is. It could be down to the function/method level, but that's not always appropriate. Such a strict testing framework can leave you immobilized when you want or need to refactor.

Their HTTP API _is_ their interface for the application. It makes a great deal of sense to focus on that level for their testing (note: they didn't say they didn't test internals, they said they focused on the external interfaces).

</comment></comment></comment><comment><USER18> > Lessons Learned from a Large Phoenix Project

More like "large" projects.

</comment><comment><USER19> Started meddling with Phoenix recently so this is an interesting data point. I have to say that the very basic architecture diagram from the PragProg book basically sold me on using it for my next side project(s).

connection |> endpoint |> router |> pipeline |> controller

Not sure what it is but it must be a combination of "|> seems pretty awesome" and "well yeah it obviously makes sense to get a request as a struct and chain functions in this way". It just clicked and aligned so perfectly with my mental model :)

</comment><comment><USER20> 10,000 lines is supposed to be 'big'? wtf?

I write something like 25kLoC/year (of shipping code, generally very complex stuff) and I don't even program full-time. The two projects I am working on now are 35kloc (the smaller one) and 250kloc (the medium-sized one).

If someone thinks 10kloc is big, I have a hard time thinking of that person as a professional programmer.

(Numbers listed here exclude blank lines and comments.)

<comment><USER21> What does it matter how many you write? How many do you delete?

I have a project that is 5k lines of code and roughly 11k of tests and specs(cucumber). It is a rewrite of a project that was 50k lines of code with 1.2k lines of tests and had less functionality and features than what it does now.

Lines of code are meaningless when it comes to how much value they provide. I personally prefer when a codebase is smaller because it means some thought was put into it and most likely has less bugs as a result.

<comment><USER22> I believe jblows games (braid, the witness) have less lines of code than one would typically expect. I think you should assume hes not writing code like a government contractor.

<comment><USER23> upvote for government contractor, I once saw 5k lines of code for simple change of address in the front end alone !!!

</comment></comment></comment></comment><comment><USER24> I was expecting the IT and devops book, The Phoenix Project: [http://itrevolution.com/books/phoenix-project-devops- book/](http://itrevolution.com/books/phoenix-project-devops-book/)

</comment><comment><USER25> Trivial, but it warms my heart to see short-ish identifiers with gaps in the names (underlines, but other languages use dashes, dots, etc), rather than reallyLongStudlyCaps names. I love that Elixir uses the Ruby convention of short names with underscores in them.

C++ is the tragedy that keeps smiting the industry with its children. (e.g. - Java, and its silly names)

"But we need long names, and need to compress them since they contain so many words". No, you need to better partition things so there is enough context around what the name is attached to, so that the name can be simple.

</comment><comment><USER26> Typo in the title : it's Phoenix, not Phoeniz.

<comment><USER27> Not sure if the words "admin", "admins" or "mods" trigger anything? Mentioning just in case.

<comment><USER28> try also dang

<comment><USER29> No, those don't have any magic, but if something like this persists you can always email us at firstname.lastname@example.com.

<comment><USER27> Ah, okay then. I was curious, thanks for the info.

Idea: make users with high karma capable of using benign, unassuming and non- common parts of speech to ping the admins?

...I think I've been thinking about security too much

<comment><USER30> Just click the post timestamp and click flag first.

<comment><USER27> ...I am so dense. That makes perfect sense, thanks.

<comment><USER30> > I am so dense.

Maybe just busy with real work?</comment></comment></comment></comment></comment></comment></comment></comment>


Track custom events without JavaScript? - <AUTHOR> http://trialfire.com We wanted to track user behaviour on our web application. At first we were a small startup that didn't have the time to code for all the behaviours we wanted to track. Then we sold our company to a large public software behemoth. Then we had many more resources, but management still kept them focused on developing the core product, even as our user base grew further.  So we still didn't collect the detailed user behaviour we wanted to track, and we didn't get to run insightful reports in Mixpanel or Google Analytics, and we didn't learn from our experiences.
So when we left to start a new venture and ended up building a solution that solved our problem. In fact we found it so exciting and got such great feedback we decided to build our entire business around it.<p>So whats my question? Simple. I'm looking for sniff testers, tire kickers and nay-sayers that might be interested in having a deeper dive and giving some honest feedback. No matter what I've shown her, my mom still says my ideas are great ;}
Check us out at http://trialfire.com - We're currently looking for testers to be part of our closed beta. <comment><AUTHOR> We wanted to track user behaviour on our web application. At first we were a small startup that didn't have the time to code for all the behaviours we wanted to track. Then we sold our company to a large public software behemoth. Then we had many more resources, but management still kept them focused on developing the core product, even as our user base grew further. So we still didn't collect the detailed user behaviour we wanted to track, and we didn't get to run insightful reports in Mixpanel or Google Analytics, and we didnt learn from our experiences.So when we left to start a new venture and ended up building a solution that solved our problem. In fact we found it so exciting and got such great feedback we decided to build our entire business around it. So whats my question? Simple. I'm looking for sniff testers, tire kickers and nay-sayers that might be interested in having a deeper dive and giving some honest feedback. No matter what I've shown her, my mom still says my ideas are great ;}
Check us out at [http://trialfire.com](http://trialfire.com) \- We're currently looking for testers to be part of our closed beta.</comment>


Show HN: Instagram based social backgrounds and covers - <AUTHOR> http://instabanner.me

<comment><AUTHOR> I created this little app in a couple hours because I couldn't find a tool to do it. Comments very much appreciated.</comment>


Ask HN: What book(s) had the most impact for you in 2019? - <AUTHOR> It's 'best of' season on the books and music front, so I wish to ask about how you found your reading lists this year. What stood out?<p>I didn't read as much as I'd have liked due to life complications, but I particularly enjoyed:<p>* Manufacturing Consent (Edward Herman & Noam Chomsky) * The Psychedelic Experience (Timothy Leary) * Young Men and Fire (Normam Maclean) <comment><USER2> They Don't Represent Us: Reclaiming Our Democracy [https://www.goodreads.com/book/show/43309161-they-don-t- repr...](https://www.goodreads.com/book/show/43309161-they-don-t-represent-us)

Don't Be Evil: How Big Tech Betrayed Its Founding Principles — and All of Us [https://www.goodreads.com/book/show/46758636-don-t-be- evil](https://www.goodreads.com/book/show/46758636-don-t-be-evil)

Stolen: How Finance Destroyed the Economy and Corrupted Our Politics [https://www.goodreads.com/book/show/43789131-stolen](https://www.goodreads.com/book/show/43789131-stolen)

</comment><comment><USER3> _An Introduction to Theories of Personality_ by Robert B Ewen

It's a textbook. For a very good overview of Freud, Jung, Adler, Horney, Sullivan, Erickson, Maslow, etc. In each section, it feels like you found a theory of personality you like best, then it gets better. Each time, they recommend further reading. For example, one good one is _Our Inner Conflicts: A Constructive Theory of Neurosis_ by Karen Horney.

Also, _Personality Theories: Journeys Into Self_ by Williard and Patricia Frick is an interesting workbook. You don't have to fill it out, it's helpful read what it's asking and think on it, then also think of those questions when understanding people.

Attachment Theory: _Attachment in Adulthood, Second Edition: Structure, Dynamics, and Change_ by Mario Mikulincer and Phillip R. Shaver. For an easier read, _Bad Boyfriends: Using Attachment Theory to Avoid Mr. (or Ms.) Wrong and Make You a Better Partner_ by Jeb Kinnison is on Audible and Kindle and despite the title is very canon to modern adult attachment theory.

</comment><comment><USER4> Just finished _The Butchering Art_ by Lindsey Fitzharris. I can't express strongly enough my gratitude that if I were to need surgery, it wouldn't be in an operating room where "the screams of those struggling under the knife mingled discordantly with everyday noises drifting in from the street below: children laughing, people chatting, carriages rumbling by."

Currently reading _These Truths: A History of the United States_ by Jill Lapore where she argues for the pressing relevance of our foundational principles. It's a hefty tome of about 800 pages, so I still have a ways to go.

Next up are two books which have been featured in several end of year lists: _Say Nothing: A True Story of Murder and Memory in Northern Ireland_ by Patrick Radden Keefe and _Exhalation_ by Ted Chiang.

Reading aloud with my 10 year old daughter: _Little Women_ by Louisa May Alcott (Penguin's 150th anniversary annotated edition with a Patti Smith foreword). Enough said about how influential this experience is for both of us.

</comment><comment><USER5> * Machine Platform Crowd: Harnessing the Digital Revolution Andrew McAfee and Erik Brynjolfsson

* Kiss The Ground Josh Tickell

* Do Purpose: Why Brands with a Purpose Do Better and Matter More by David Hieatt

* The Future of Humanity: Terraforming Mars, Interstellar Travel, Immortality, and Our Destiny Beyond Earth by MichioKaku

* The Rise and Fall of the Dinosaurs: A New History of a Lost World by Stephen Brusatte

* The Space Barons: Elon Musk, Jeff Bezos, and the Quest to Colonize the Cosmos by Christian Davenport

* * * 95 Best Books most impacted me in 2019:

[http://casualwalker.com/95-best-books-to-read- in-2019](http://casualwalker.com/95-best-books-to-read-in-2019)

</comment><comment><USER6> The new trail of tears - overview of policy law and history leading to systemic disenfranchisement of first persons.

Braiding sweetgrass - biographical story of the mix of native spirituality and science

What the eyes don't see - discussion of the policy and governmental resistance to disclosing the Michigan water crisis

Weapons of math destruction - the ethical and cultural costs of artificial intelligence at-scale

<comment><USER7> Seems like youre interested in native Americans - do you have any other book recommendations on them?

</comment></comment><comment><USER8> "This is how you lose the time war".

A science fiction short book where rival agents send each other letters and attempt to thwart each other.

It is also has some of the most beautiful prose/poetry I've ever seen that made me re-read each section over and over. I've been an avid reader since childhood and this is the first book to have that impact on me. Not at all what I was expecting.

<comment><USER9> Seconding this recommendation. This was the first book in maybe a decade that my first instinct after finishing was to start again.

</comment></comment><comment><USER10> __Smartcuts: The Breakthrough Power of Lateral Thinking __

Fabulous book about how certain individuals strive in what they do, and what separates these people from the rest of us. It has very interesting stories as well of how these individuals became so accomplished in life.

</comment><comment><USER11> The Daily Stoic by Ryan Holiday. I've been reading 1 meditation per day so I'm not done yet but I would say out of every 5 I read I find at least one really valuable lesson that makes me rethink a lot.

</comment><comment><USER12> I mostly read fantasy books and this year I got Kindle Unlimited subscription and checked out a lot of self published books. Top 3 among them would be:

* The Sword of Kaigen by M.L. Wang

* Cradle by Will Wight

* Arcance Ascension by Andrew Rowe

</comment><comment><USER13> Preacher the comic book.it was something that made me give respect to the medium and now on a journey to read all the well known

</comment><comment><USER14> Why We Sleep - Matthew Walker.

Sleeping is important, and since I started doing more (and improving the quality of), I feel better and get more done.

<comment><USER15> On a related note, there was a recent thread debunking most of the book here: [https://news.ycombinator.com/item?id=21546850](https://news.ycombinator.com/item?id=21546850)

<comment><USER14> That post has a lot of analysis. I don't doubt there are mistakes or exaggerations in the book; however, I still think there is value in prioritizing a good night's sleep. Of all the research he presents, I noticed that his anecdote about the pianist becoming more proficient at a pattern he was struggling with after sleeping to ring true; I have found this true in my personal experience, as well.

I personally don't have a lot of knowledge in the field (the author has an entire professional career of researching) so I take at lot of the advice, at least what seems logical and reasonable to me, at face value. I'll read the link you posted and consider the points as well, though - thanks for that.

</comment></comment></comment><comment><USER16> * Steve Jobs - Walter Isaacson * Slaughterhouse Five - Kurt Vonnegut * Children of Time - Adrian Tchaikovsky

</comment><comment><USER17> "Blowing the Bloody Doors Off : And Other Lessons in Life" by Michael Caine

</comment><comment><USER18> permanent record by edward snowden. you can read it in plain text here if you'd like :) [https://texts.tg-z.now.sh](https://texts.tg-z.now.sh)</comment>