Hacker News new | past | comments | ask | show | jobs | submit login
Evaluating the effectiveness of Google's “Testing on the Toilet” program [pdf] (googleapis.com)
63 points by ingve 11 days ago | hide | past | web | favorite | 34 comments

Scientific papers are gradually partaking from the stash of clickbait title tricks. We've edited the one above to make it less activating.

If you post in this thread, can you please check that it's about the interesting aspects of the article? Poop jokes get old pretty quickly.

For those that don't want to read the article, it is about the program Google has to post little newsletters about programming tools in their bathrooms. They hang them over the urinals too.

I was at Google for an event recently and found it interesting to read as I used the urinal. It was about an internal tool though so it didn't mean much to me.

At the University of Texas at Austin they have a "Lavatory Safety Update" that's usually posted at eye level above the urinals. It discusses lab safety related issues.

When did they institute this process? I never saw it in the years I worked there.

I'm not certain. I don't recall the signs when I started in 2013. The one EHS document I can find that mentions the posters is dated 2014: https://ehs.utexas.edu/documents/EHS-AnnualReport-2014.pdf

Facebook seems to do this also.

Facebook's similar program was started by an ex-Googler

Someone did it at my building at Microsoft too for a while - nothing official though.

Most of my best thinking at work happens on the toilet.

Don’t know exactly what I should take from that. Except that probably something is wrong about open plan offices.

That and the shower.

It's weird. Going for a walk doesn't make ideas pop up in my mind. Nor does sitting still on a couch bring up ideas. But sitting in the static toilet environment does.

Because it's an enclosed space devoid of distractions?

I saw these during my 18 months at Google. They were never relevant to my work.

Working at Google you are bombarded with "nudges." The garbage cans have stop smoking signs. The plentiful candy is famously placed into jars to reduce consumption. There's signs telling you not to sit on the loo for too long. You'll get emails comparing your travel and server expenses to the average. All of this stuff is well-intentioned, but there's clearly part of the company seeking ways to manipulate its workforce.

During my ~60 months inside Google, these nuggets sometimes proved to be useful, telling about a newly available tools (e.g screenshot diffing in UI tests), common pitfalls (like mixing up dates from different systems with and without timezone), common best practices (don't use `now()` in test, instead, imitate the flow of time using...). These are just off the top of my head after several years outside Google.

Nothing mind-blowing or earth-shattering. A number of useful things to learn at these 30-60 seconds when you can't read anything more interesting, though.

I agree, it's between useful and harmless.

But who considered someone taking a piss and thought "that time could be better utilized?"

I think this is a great way to spread info. You're there, probably doing nothing. And everyone has to pee!

Could you expand more on not using now()

Using the real-time clock makes your test impossible to reproduce. Using a mock clock leads to reproducible tests. Same with calls to PRNGs: these should be injected so your test failures can be reproduced.

Your now() in tests depends on current moment.

You cannot test how your code behaves when midnight passes, when daylight saving time changes either way, when it's 29th of February, etc.

More importantly, you cannot reliably (let alone quickly) test how your retry and timeout handling works, especially if two threads interact, or when you do (stubbed or mocked) remote API calls. All these things are the daily bread when working with Google's services, and basically at any setup with multiple (micro)services.

The first time I implemented an "IDateTimeService" in one of our applications, I was greeted with disbelief by my colleagues. Once I challenged them in running tests for certain edge cases, their mind shifted from "well, we cannot test that then" to "makes totally sense".

Another one is hiding the unhealthy drinks (e.g. soda) behind frosted glass in the fridge, so you can't see it. Kind of silly, in my opinion. Googlers are presumably adults, and can make their own decisions on what to consume.

Retail stores put high-margin items in key locations (next to checkout, at eye level, etc.) or companies actually pay for these spots. In a company kitchen/snack area, why not put the healthy options there? Everyone still makes their own decisions, just like anywhere else. Isn't this optimization more in the employees' interest than putting the cheapest items there (e.g. soda)?

(I'm at Google. I think these kinds of nudges are mostly good. Though it's certainly something to joke about.)

Yes! I noticed this at Google NYC when I interviewed there a few years ago.

Healthy (and tasty) fruit infused water was placed front and center. Sodas were hanging out in the fridges in a rather less convenient location.

Yes, we must free ourselves from the oppression of writing unit tests and having a tool auto-indent our code! How brave to take such a noble stand on this controversial issue!

We must also throw off the shackles of our near-perfect source code revision management system, so we can gloriously adopt the incredibly slow and notoriously unusable industry standard!

Example: my whole building was working in the android repo, but the ToT article would be about some tool for google3 (web) development.

I was at Google for 2 years and liked "Testing on the Toilet" plus it's spinoffs "Programming on the Potty" and "Localization on the Loo" pretty useful. Especially for someone like me who came from much smaller companies where a lot of best practices or tools they wrote don't exist.

This is the closest we're going to get on HN to a shitpost. Speaking personally: I know one developer who discovers lots of new tools on the toilet: me.

I used to work in the head-office of a well-known car dealership firm in the UK. In the bathrooms they had a quote along the lines of 'the best ideas come when we least expect them'.

I found that I ended up thinking more about that quote than coming up with ideas. Kind of counter-intuitive.

I understand we're all different, but I prefer to clear my mind on the toilet.

All I'm imagining right now is some posters promoting some tool/library beside those mental health awareness posters you usually see in the stall...

I miss bathroom humor scribbled on the wall, such as:

What are you laughing at? The joke is in your hand.

You misspelled Stools

The title is "Do Developers Discover New Tools On The Toilet?" but an overbearing mod changed it because he thinks he's Etiquette Secretary of the Internet, and probably also so he can plausibly pretend this isn't a website dedicated to Alphabet's PR.

Guidelines | FAQ | Support | API | Security | Lists | Bookmarklet | Legal | Apply to YC | Contact