We can look at each facial hair property returned by the Face API
March 10, 2016 5:15 PM   Subscribe

Analysis of coder stereotypes by facial analysis of github profile pics, including an in-depth look at correlations with different kinds of facial hair.
posted by signal (25 comments total) 5 users marked this as a favorite
 
Why am I not surprised that java programmers smile the least?
posted by fings at 5:54 PM on March 10, 2016 [2 favorites]


Apparently, R makes you happy -- I should check it out!
posted by Zed at 5:58 PM on March 10, 2016


Zed - this is fundamentally incorrect. In every way imaginable. Seriously.
posted by hleehowon at 6:04 PM on March 10, 2016 [9 favorites]


I actually have no words to render how incorrect it is, actually. If you were to say that Haskell had a type system that they didn't put thought into or if you were to say that C is a fundamentally secure language, you would be less incorrect than if you were to say that R makes you happy. If you were to say that Smalltalk was not object-oriented or if you were to say that Lisp has few parentheses, you would be less incorrect than if you were to say that R makes you happy.

R is the "Intro to Pixar's Up" of programming languages.
posted by hleehowon at 6:06 PM on March 10, 2016 [22 favorites]


Maybe I'm sleep-deprived, but I don't get the last graph. What is it trying say?

But yeah, no surprise that Java brings the sads.
posted by sjswitzer at 6:22 PM on March 10, 2016


Maybe the R programmers have higher-paying jobs than everyone else?
posted by tobascodagama at 6:23 PM on March 10, 2016


I like R, but then I also like LaTeX and Maxima, so maybe I just have bad taste.
posted by foobaz at 6:38 PM on March 10, 2016 [2 favorites]


Disappointingly, the face api could detect no face in my profile pic.

Count me confused by that last graph too. I assume it's a distribution of facial hairiness by language from "zero hairiness" to "full on hairiness", and I can't think of a more appropriate chart type to display that on, but the labelling seems completely messed up.
posted by lucidium at 6:46 PM on March 10, 2016


Apparently, R makes you happy

Actually, Python makes you a lot happier, but it looks like they forgot their import happiness statement.
posted by Mr. Bad Example at 6:54 PM on March 10, 2016


I want to see principle components analysis on the data so I can infer which axes of Y-chromosomal lineage corresponds to each programming language.

R only makes you happy if you can contrast how using S or SAS makes you unhappy.
posted by MisplaceDisgrace at 6:58 PM on March 10, 2016 [2 favorites]


That R is correlated with smiles may be true, that the people behind those smiles are happy by any conventional measure is definitely false.

The smile of an R user is the smile of the Joker in Batman. The R user has prepared their mind for an the next cruel twist of fate which is surely just around the corner as they continue to debug the pile of complete gibberish before them.

The R user longs for the sanity and order of Perl, a thought that at first brings relief, then sadness, as they realize how far from any semblance of normalcy they actually are.
posted by sp160n at 7:18 PM on March 10, 2016 [6 favorites]


The R smile is the grimace of someone who forked out $150 for The Grammar of Graphics in the vain hope that somewhere in its 691 pages an explanation can be found for why ggplot2 produces graphs that look like the graph you want with two minutes of work and one line of code, but cannot draw the actual graph you want without spending an hour constructing half a dozen entirely unnecessary data frames and writing your own kernel density estimator.
posted by langtonsant at 7:58 PM on March 10, 2016 [13 favorites]


The "R Smileā„¢" is actually a murderous glint.
posted by schmod at 9:57 PM on March 10, 2016 [3 favorites]


Unpopular opinion, but I've started to actually like Java.

It's an astonishingly unsurprising programming language. It has warts. A lot of them. The open-source community has moved on.

But.... I'm growing to appreciate technologies that are boring and unsurprising. (Unlike, say NPM and gem, which are a constant surprise and delight of broken builds)

This does not forgive Java build tooling for being uniformly appalling. Maven, ant, gradle, and sbt all have their own brand of horror. But, at least, I can have some level of control over what I'm installing.
posted by schmod at 10:03 PM on March 10, 2016


Pleasantly unsurprised that Perl has the best Male/Female ratio.
posted by zengargoyle at 10:49 PM on March 10, 2016


I have to agree, shmod. I like Python and I've been having a lot of fun trying out Haskell and Clojure. But Java's consistent and explicit c-style syntax is really easy compared to idiomatic code you tend to see in other languages. And it also abstracts away the confusing nature of pointers and memory management in C/C++.

I tried Scala, but it felt weird having a language that could be Java-light or an ML-like language at the same time. I'm curious about Kotlin, but automatic semicolon insertion makes me nervous. I'd rather a newline explicitly mean end of statement except for specific contexts or an explicit escape (like in Python).

I guess it ultimately comes down to there being less to memorize about C-style syntax, although it does little to reduce boilerplate (like Ruby and Python do). However, the boilerplate usually explicitly shows what more concise languages like to keep implicit.
posted by mccarty.tim at 10:54 PM on March 10, 2016


I used to like Java too, but around the fifth time someone wanted me to instantiate an AbstractToolFactoryGenerator to get a HammerFactory object that would eventually give me an instance of ClawHammer so I could finally pound a damned nail into a BoardDelegate, I descended into gibbering madness.
posted by Mr. Bad Example at 4:53 AM on March 11, 2016 [7 favorites]


I tried Scala, but it felt weird having a language that could be Java-light or an ML-like language at the same time. I'm curious about Kotlin, but automatic semicolon insertion makes me nervous. I'd rather a newline explicitly mean end of statement except for specific contexts or an explicit escape (like in Python).

I can't see the point of Kotlin; it doesn't seem to bring anything new to the table (in the way that Scala brought bits of Haskell and Erlang), but just looks like a vanity remodelling of Java with some shiny new chrome.
posted by acb at 4:57 AM on March 11, 2016 [1 favorite]


I suspect the lack of happiness in Java is due to it being overwhelmingly used in enterprise software and large brownfield projects, where there's not much room for spontaneous joy (that and school assignments).
posted by acb at 5:01 AM on March 11, 2016


I like R. But then I also think that the reason Perl users seem to be the least smiliest is they're the most bearded and you cannot see the joy it makes me feel from leaping off their faces.
posted by vbfg at 5:19 AM on March 11, 2016 [3 favorites]


So many R haters in this thread! R is idiosyncratic for sure (S4 objects, directional assign, fucking stringsAsFactors being on by default) but, kinda like JavaScript, its reputation obscures that you can actually write very elegant functionally-flavored R code. And I mean if you do any kind of stats, the ecosystem is just a garden of delights.
posted by en forme de poire at 5:21 AM on March 11, 2016 [5 favorites]


And I mean if you do any kind of stats, the ecosystem is just a garden of delights.

That's what it's built for...
posted by Mental Wimp at 12:37 PM on March 11, 2016


en forme de poire: "R is idiosyncratic for sure"

And let's not forget the decision to include T and F as global variables with values TRUE and FALSE by default, but not reserve them as keywords.
posted by langtonsant at 1:14 PM on March 11, 2016


Yeah, you can redefine c() also. Which is easier to do than you might expect because if you need three indices for something, hey, why not a, b, and c? (But if you just rm(c) it solves the problem, you're not left with an unusable session.)

In fairness, you can do something kind of similar in Python 2.x, you're just less likely to do it accidentally.
posted by en forme de poire at 1:24 PM on March 11, 2016


There is a pretty decent rant about some of R's oddities here. But I guess it's a sign of how much of an R apologist I am that I don't think a lot of these are bad design decisions once you appreciate that they're actually the side effects of otherwise useful syntactic sugar for making common statistical tasks easier (recycling vectors, recasting vectors, etc.). I think he is also completely and utterly wrong about NA (NA is there for a reason, and you should definitely not be ignoring it until you understand where it's coming from in a specific case, much less by default!) and NULL.
posted by en forme de poire at 1:36 PM on March 11, 2016 [1 favorite]


« Older Brew Your Own Penguin...   |   Michelle Obama and Sophie Grégoire-Trudeau... Newer »


This thread has been archived and is closed to new comments