Live data from Hacker News

Jokes and Humour in the Public Android API

voxelmanip.se

121–130 of 172 posts

Re: Jokes and Humour in the Public Android API

#121

Earlier quoted context omitted.

Things that seem fun when they are written are often not much so a few years later, without the initial context, when trying to actually "build something". Fun is good when it is fresh. Fossilized fun is not that fun. It is more like that uncle who heavily tries to be fun at family parties.

Google is not fun and people that try to be funny from Google are cringe

Harking back to the days when people at Apple, Microsoft, Google and Bell Labs had fun. It really happened, allegedly!

Re: Jokes and Humour in the Public Android API

#123

How isUserAMonkey API came about: https://books.google.nl/books?id=68BZEAAAQBAJ&pg=PA96&lpg=PA...

Interestingly, the original Mac had a similar MonkeyLives flag: https://folklore.org/Monkey_Lives.html

I assume that's the "The Monkey" testing tool for the original Mac that's mentioned in the footnotes in the Androids book. Supposedly goes back to the infinite monkey theorem that makes monkeys act as a metaphor for randomness, and it was also mentioned that one of the developers of Android had used the same kind of monkey testing for WebTV and Palm OS.

Re: Jokes and Humour in the Public Android API

#124
post #116
post #107

Earlier quoted context omitted.

I remember seeing this in React's __SECRET_INTERNALS_DO_NOT_USE_OR_YOU_WILL_BE_FIRED, and I've always enjoyed similar lighthearted and unwieldingly-long names. Unfortunately I see it too has fallen victim to defunnification: https://github.com/facebook/react/pull/28789

Fun names are OK, but only if they don't introduce ambiguity. In this case the change wasn't so much anti-fun as anti-ambiguity.

That's a great call-out, and it (along with the change itself) underlines the importance of not letting fun get in the way of actual engineering improvements. Defunnification as a side effect, if you will.

Re: Jokes and Humour in the Public Android API

#125
post #108

Notice how pretty much none of these are added in the last 10 years? Android's become 'more mature' - ie. Boring, and the joke to code ratio is dropping rapidly.

If you're 10 hours into debugging something, or you're swamped with a horde of bug reports and bad reviews, and after digging in you find the bug is in upstream code laced with humor, it comes off as if upstream isn't serious about software development or is making light of the responsibility. Lots of things start small, but X11, Android, etc etc are now used by millions, in lots of different situations, and humor is…

> humor is highly contextual.

This is key. Writing jokes is easy, but it is much harder to guarantee that your joke is only displayed in appropriate contexts in the future. When what the author thought was a witty joke shows up in a new and inappropriate context, they no longer look very witty, but instead like a fool. What is funny in developer documentation on a normal Tuesday might not be funny in a negative article on the front page of the Wall Street Journal.

Re: Jokes and Humour in the Public Android API

#126

My favorite funny function in the Android source is android.os.Handler.runWithScissors() [1] - but (unfortunately) it is not part of the public API. [1] https://android.googlesource.com/platform/frameworks/base/+/...

> @hide This method is prone to abuse and should probably not be in the API. If we ever do make it part of the API, we might want to rename it to something less funny like runUnsafe().

:D

Re: Jokes and Humour in the Public Android API

#127
post #68

Earlier quoted context omitted.

I think that's a big line between people who work as software engineers becuase they enjoy the work and want to build something and folks who go there to punch the ticket and run back home as soon as possible. The second group doesn't want to deal with "all the fun crap" and "distractions" that stand in the way of them marking a bug fixed (or, god forbid, actually getting extra bugs/work assigned because some "fun" c…

I have had my share of fun things I added to code/environment. Yet then we add 'the new guy'. They spend a long time arguing why that humor should not be there. One project it was a single line comment about new beginnings on the main procedure. That created a 2 hour rant about how unprofessional it was and months of unwarranted verbal abuse. It was literally the only piece of humor in the entire codebase. Super pett…

Better to reassign 'the new guy', rather than let him destroy the team.

Re: Jokes and Humour in the Public Android API

#128

Earlier quoted context omitted.

Only the things that remain of you after death really matter, everything else will have gone completely then anyway.

No, even those don’t matter. You’re dead.

To me, now alive, those things that will endure after I die matter to me now, because they will endure after I die.

Re: Jokes and Humour in the Public Android API

#129

Earlier quoted context omitted.

I have had my share of fun things I added to code/environment. Yet then we add 'the new guy'. They spend a long time arguing why that humor should not be there. One project it was a single line comment about new beginnings on the main procedure. That created a 2 hour rant about how unprofessional it was and months of unwarranted verbal abuse. It was literally the only piece of humor in the entire codebase. Super pett…

Better to reassign 'the new guy', rather than let him destroy the team.

Exactly. However, that would mean the boss thought the same, as he was hired specifically for that team. By the time it had happened the boss had not even noticed. Despite the team basically telling him every day in 50 different nice ways. In this case I did not realize it was controlling and manipulative behavior. But I learned and can spot it off pretty quickly now and will make sure it does not happen again.

Re: Jokes and Humour in the Public Android API

#130

Earlier quoted context omitted.

When you’re building an API, it is your product.

Not to mention even just this article exposed a just-for-fun API that ended up having a negative effect and had to be removed: `isUserAGoat` ended up allowing any caller to determine if a specific app is installed on the system, which is a privacy violation and allows fingerprinting against the user's consent. I get the desire to make the job more fun than just implementing a spec, but many of the things we work on a…

Well it was not an issue back then since any app was able to query certain arbitrary specific apps (and yes some apps used to query a big list).

They disabled the "fun" function in android 11 with the arrive of the QUERY_ALL_PACKAGES permission.

Post reply on HN