Graphing when your Facebook friends are awake
defaultnamehere.tumblr.com
defaultnamehere.tumblr.com
> This friend recommended nvd3.js, presumably because you’re not making real graphs in 2016 unless your graphing library is <something>.js and requires at LEAST one other <something else>.js as a dependency. Everyone looks at you like “what, you DON’T already use <something else>.js? Jeez say goodbye to your Hacker News karma. Just apt-get install npm && npm install bower && bower install-” NO STOP IT THIS ISN’T WHAT TIM BERNERS-LEE WANTED”.
edit: as huckyaus mentioned in a different thread, author did http://swagify.net/ as well. In completely unrelated news, I'm changing my handle to [Tr1Ck$h0t][LEGIT][60x7]$$$C30C0DER$$$, that will make me really popular among the cool kids.
http://t.umblr.com/redirect?z=https%3A%2F%2Fen.wikipedia.org...
Is this WHAT TIM BERNERS-LEE WANTED??!!!One1!?
AND ANOTHER THING when it’s midnight and your x-axis formatting function doesn’t convert UNIX times into JavaScript date objects properly because there’s no timezone information and I dunno JavaScript was written by some guy in two weeks (yeah I ain’t afraid to call it out what of it) and your binary-search based conversion of sparse timeseries data into uniformly dense timeseries data is causing so many data points to be graphed that it’s slowly crashing Chrome and you’re watching helplessly as your RAM goes up and Chrome won’t close the tab and it just doesn’t seem right that 2016, the year of the Linux Desktop has brought us this situation I mean I thought if you had enough <something>.js libraries this stuff was meant to just scale right up so tha-
For me, it was this:
> ... and I wouldn’t be embedding this ugly graph as a pdf into a LaTeX document that takes 3 passes of pdflatex to render...
Lots of casual self-deprecation. I'd recommend well known comedians, but I'm no good at remembering names.
By sticking to jokes and a simple style, I never felt confused or lost in lingo.
I guess if you're a serious company like Apple, you can't really have that kind of tutorial for iOS dev. But that would really help.
they are written in a humorous tone, and intersperse joke drawings between the chapters.
In college, I was a mechanical engineer living with a CompSci major, CompE major, and a CompSci / CompE double-major. I'd occasionally stop them when they were explaining things to me with "Explain like I'm a MechE". Slightly less self-deprecating than "mathematically inclined idiot", but same gist.
Because of this, I was also quite useful as a rubber duck for debugging.
The fact that this is true is, to me, a slightly sad reflection on our culture. I understand that too much silliness can get in the way of conveying information, but as you point out, so can too much seriousness.
It's obviously a fine balance, and unfortunately it seems safer to err on the side of seriousness when in doubt. It's one of those things that if you sit down and ask any average individual, they will probably prefer a bit of silliness and an informal style in any situation where it's appropriate, yet somehow collectively we seem to have agreed to default to the opposite, and stick with things being quite dry and serious as a norm.
Interesting, but ultimately a little sad. Why is this the case? Why is our culture this way? Why can't things just be a little more fun by default?
(aaaaand this could go on for hours)
On the other hand, there are brands out there with the exact opposite approach. Cards Against Humanity comes to mind first. Their image is explicitly one of mild carelessness and apparent candidness such that anything written too formally would seem out of place.
But indeed, there do seem to be more of the former brand type than of the latter. Having a neighbor who speaks constantly with a similar tone as the writer of this article, I can say that trying to hold my own in a conversation with him is really tiring. You eventually just run out of witty remarks. Is it possible it's more an issue of skill and time? As in, are there fewer people out there with the skills necessary to make good silly writing than there are people who can write seriously? And does it take them longer (and thus cost even more) to make writing in this style?
I rambled a little, but I think the issue is a combination of people equating seriousness with importance, as well as a general lack of creativity.
"too much medium,
not enough message"
The writing style works because those jokes, asides, and little mannerisms that are normally excluded from "serious" writing are part of how we think.When we refine our writing (or speaking) to - supposedly to make it less jumbled and easier to read - we usually end up removing a lot of the little details that made up the original thought. The writing may have much better grammar and organization, but real thought isn't perfectly organized and we end up losing some of the "character" in the original idea. (this may be good or bad, depending on the situation)
Vi Hart has an amazing overview[1] of this concept, in which she discusses the very wise words of the Edmund Snow Carpenter in his[2] book "They Became What They Beheld".
The trouble with knowing what to say and saying it clearly & fully, is that
clear speaking is generally obsolete thinking. Clear statement is like an
art object: it is the afterlife of the process which called it into being.
The process itself is the significant step and, especially at the beginning,
is often incomplete & uncertain.
The best way to write will always depend on what the goals are, but in general the further away from the original thought you get, the more writing and other creative ideas tend to degrade. Incidentally, this tendency of a thought to degrade the further it gets from it's origin is also how plans become policy: [3].[1] https://www.youtube.com/watch?v=bm-Jjvqu3U4
[2] probably co-written - or at least "heavily influenced" - by Marshal McLuhan
[3] http://ogun.stanford.edu/~bnayfeh/plan.html (very mild NSFW language of the form "____ happens")
So very true...
Open a vein...share yourself...reveal yourself...share what you've learned and let the excitement you felt while discovering it flow...
For most writers, the majority of the time, your true audience will "get" both you and the ideas you're trying to share...
Sometimes you'll expand the size of your potential audience with raw enthusiasm, even when they have no idea what you're talking about...
It is a pity because the content is quite interesting but we are here discussing about his writing style??
No affiliation, I just use it for work:
I've used it for school projects and work before, and was amazed by the documentation and API capabilities. Everything is configurable and easy to figure out.
Edit: it's Creative Commons Attribution-NonCommercial 3.0. I wonder if that stops me running ads on a site that uses it.
"The empirical findings suggest that creators and users approach the question of noncommercial use similarly and that overall, online U.S. creators and users are more alike than different in their understanding of noncommercial use. Both creators and users generally consider uses that earn users money or involve online advertising to be commercial"
The source code[1] for said project is pretty great.
Kind regards,
[24x7BLAZEIT]XxXhUCkYau$XxX
[0] http://swagify.net/ [1] http://swagify.net/static/js/swagify.js
But hey, I was 17 and also it was me so... I'm biased.
But then I use some wysiwyg and I make something much nicer in no time... Should I really give up on these tools :(?
It depends on the use case.
I like this part. As a developer I've often looked at the network usage of large websites / web applications and it's always surprising to me just how...unoptimized it is as far as network connections go.
I mean Facebook loads decently enough and all I'm just surprised the first load isn't condensed into a small, handful of network calls to save on latency.
I suspect their mobile apps are more conservative about using fewer requests (and probably a binary protocol).
I mean, isn't that how monolithic apps tend to happen? Someone leaves, new person comes along and adds more to the cruft.
But I don't know anyone at Facebook so I have no idea how the website is handled.
Have you considered that your opinion on the best way to serve data to a billion users might actually be wrong? That maybe Facebook actually knows what they are doing?
Certainly! But I've also done work where Humvees in the middle of Iraq use satellite internet connectivity with massive latency and the more connections it has to open to get started the slower everything gets.
Perhaps this is an advantage where latency is low so you can load parts of the page faster but I'd love to know some of the more technical reasons behind this!
Not really surprising, from what I’ve heard from friends about their cowboy-style internal engineering culture, and spaghetti piled on spaghetti internal code organization, where shipping new features ASAP is privileged above all other goals.
When you have endless money to throw engineers and servers at a problem, it’s possible to kinda sorta paper over a lot of horrible broken design. Not sure whether that implies anything one way or another about whether or not they “know what they are doing”.
It sort of depends on your definition of “know”. After all, their motto is “move fast and break things.”
[1] http://quellish.tumblr.com/post/126712999812/how-on-earth-th...
[2] https://www.facebook.com/notes/facebook-engineering/under-th...
So no matter how many connections are made when visiting facebook, it usually loads fairly fast because of aggressive caching and progressive connections. Most of the time the end user shouldn't be able to tell the difference.
Actually it is: https://www.facebook.com/notes/facebook-engineering/bigpipe-...
Nope. Did you read through how BigPipe works? It's more than a handful; they basically load a whole bunch of mini web pages inside of another. I'm actually impressed they get better performance doing that; I would have thought condensing everything down would net much better performance. It would at least improve latency but I digress.
FB just took 13 seconds for me to load fully! HN took only a second. I suspect the situation would be way worse if the browser cache was cleared too.
This horror out of time and space was beaten, shot and stabbed, and the developer responsible for its invention was promoted to CTO and King of the universe.
Great article. And a further reminder why Facebook kinda sucks.
Example, which I'd not seem before: https://youtu.be/taTSxDVEHRM
Could these just be keep-alive requests? For example, the mobile app checks whether it's still connected?
I didn't think of that.
3 minutes does seem like the kind of time an engineer would code into their app.
So does that mean that the spiky periods are times when people are online the whole time?
I'd be inclined to think so, but I don't work for Facebook, there may be an entirely different reason :)
Edit: or maybe, maaaybe, it's the point of time when people fall asleep over their mobile - they've stopped interacting with the app, it still sends a few keep-alive requests, and then logs itself out.
It opens up a chat window when somebody start typing.
It always freaks out the few people that never send the message.
On a side note,
> If you’re wondering why the response starts with “for (;;);”, it’s to, among other things, encourage developers to use a quality JSON decoder, instead of like, y’know, eval().
This is wrong, as I commented on the linked StackOverflow post, perhaps a bit too strongly. But it's really frustrating to see that people have misconceptions because of incorrect answers on StackOverflow.
Any messages you get when your chat is off just go to your Facebook inbox so you can still get messages even with it off you just kinda lose that online live kinda element. I mean this works just like most chat applications work. They basically all say you're online or not too.
https://nakedsecurity.sophos.com/2015/02/17/whatsapp-spy-too...
There are even better ways which I'd rather not reveal.
I missed that when reviewing, I assumed WhatsSpy was hosted on GitLab.com. Thanks for enlightening me.
Oh and did not know about the Copy as cURL feature on Chrome!
So, did you forget everything you learned about memory management? Or do you think Javascript really doesn't have sound memory management principles? Hell, it's not like you need to retain references to rendered points. Just dequeue them. Browser graphing libraries render to canvas which is just pixels.
SELECT uid, name, online_presence
FROM user
WHERE online_presence IN ('active', 'idle')
AND uid IN (
SELECT uid2 FROM friend WHERE uid1 = me()
)
Unfortunately, the current version of the Facebook Graph API[0] doesn't have the online_presence field, so this is no longer possible. Maybe the Graph API will be updated in the future to also return the online_presence fields?[0] https://developers.facebook.com/docs/graph-api/reference/v2....
I have no idea what the Facebook apps (Messenger and the Facebook app) do in the background.
It's easy to test that, but I didn't because #yoloswag
Perhaps, buy some targetted ads about 'SleepCycle' and show them to the naughty ones who sleep less than 6 hours. :P
And how about for advertisers? "Get your sleeping pills here" type ads?
Data Science of the Facebook World
http://blog.stephenwolfram.com/2013/04/data-science-of-the-f...
I also bet that Whatsapp has this feature since I often see "Last seen at ...".
Personally, I have chat off all the time on FB, and I don't have the Messenger (or FB) app on my phone either, so I guess I'm always sleeping :)
Thanks for all this amazing info!
peace - [2edgy4u][ev REE DAI][24x7BLAZEIT]|ggg10Bzzz|
Especially loved all the links to Facebook :D
If you are inclined to, I would strongly recommend you create test accounts there to do so: https://www.facebook.com/whitehat
A. you get way funnier screen grabs, and honestly simpler controls; B. you will get love from the security engineers, which I’ve tried, and is an awesome idea.
Nope, you have to be their friend.
Well, you have to be their Facebook friend. What you do in real life is none of my business.
p.s. I am hiring ;)
Nice with this data I might finally and truly finish my Social Alarm Clock idea and do so in which it truly improves the sound of your alarm clock; one that always makes you smile, laugh, etc.
There's been tons of social alarm clocks(from Justin Bieber to Nestle to Sony to Wakie, etc) since releasing sleep.fm in 2007 (a century ago in Internet years) yet no one has executed on the idea properly.
Social engineering, in the context of information security,
refers to psychological manipulation of people into performing
actions or divulging confidential information.
I don't see how this is social engineering at all.