Nice little detail - WhatsApp was a $1/year subscription before they sold to Zuckerberg ... with the exact subscription cost now conspicuously missing from the app's Wikipedia page.
Except it wasn’t for all users. IIRC it either didn’t show for all, or it was the WinRAR equivalent of you being able to say “maybe later” and it left you alone for a long while.
Way outdated info, but back in mid '00s when I was interviewing with EA, the recruiter guy who happened to like me said - "be careful when entering gamedev domain, because it's very hard to exit it once in."
Not in a sense that it's so good so you don't want to leave, but that other companies are leery of hiring people with the gamedev experience.
The main issue with Gnutella was - IIRC - that it didn't scale. At least the initial version, not sure if there was a revised one.
Basically, if you open the log window and look at the peer messages, then beyond certain network size all you'd see was a flood of relayed search queries with duplicates that ground all other activity to the halt. And the whole thing just became unusable.
PS. Also, Gnutella was released almost to the day when some clause of the AOL's purchase contract of Nullsoft (stock option vesting?) has expired so the devs were ultimately free to do whatever the f they wanted. So released the file sharing app. That was a nice touch.
We made it scale with last hop query routing. Basically we realized that 90% of the query traffic occurred on the last hop (ultrapeer to ultrapeer). So we took the keyword bloom filter we were already using on leaf node connections, aggregated those and propagated that to adjoining ultrapeers. Then we sampled response rates of queries from originating ultrapeers with increasing TTLs to get a sufficient but not overwhelming results. We also increased the ultrapeer to ultrapeer connections so that we could sample more efficiently while dropping the TTL.
That was LimeWire connections and other clients like BearShare and gtk-gnutella and possibly Gnucleus that obeyed the new protocol requirements. Others were kept in a sequestered network and deprioritized.
The WTF name really lies on the surface, there's no authoritative source of its origin.
I have a wtf.c from 10+ years ago when I was re-implementing Windows-style Unicode handling for some project. You keep running into various quirks, which accumulate and you inevitably arrive at your WTF moment. So WTF as name comes up naturally, no special wit required.
... as it is disappointing.
Not everything that can be done should be done.
reply