Skip to main content

Peeing Is Socially Contagious In Chimps

3 months 2 weeks ago
After observing 20 chimpanzees for over 600 hours, researchers in Japan found that chimps are more likely to urinate after witnessing others do so. "[T]he team meticulously recorded the number and timing of 'urination events' along with the relative distances between 'the urinator and potential followers,'" writes 404 Media's Becky Ferreira. "The results revealed that urination is, in fact, socially contagious for chimps and that low-dominant individuals were especially likely to pee after watching others pee. Call it: pee-r pressure." The findings have been published in the journal Cell Biology. From the study: The decision to urinate involves a complex combination of both physiological and social considerations. However, the social dimensions of urination remain largely unexplored. More specifically, aligning urination in time (i.e. synchrony) and the triggering of urination by observing similar behavior in others (i.e. social contagion) are thought to occur in humans across different cultures (Figure S1A), and possibly also in non-human animals. However, neither has been scientifically quantified in any species. Contagious urination, like other forms of behavioral and emotional state matching, may have important implications in establishing and maintaining social cohesion, in addition to potential roles in preparation for collective departure (i.e. voiding before long-distance travel) and territorial scent-marking (i.e. coordination of chemosensory signals). Here, we report socially contagious urination in chimpanzees, one of our closest relatives, as measured through all-occurrence recording of 20 captive chimpanzees across >600 hours. Our results suggest that socially contagious urination may be an overlooked, and potentially widespread, facet of social behavior. In conclusion, we find that in captive chimpanzees the act of urination is socially contagious. Further, low-dominance individuals had higher rates of contagion. We found no evidence that this phenomenon is moderated by dyadic affiliation. It remains possible that latent individual factors associated with low dominance status (e.g. vigilance and attentional bias, stress levels, personality traits) might shape the contagion of urination, or alternatively that there are true dominance-driven effects. In any case, our results raise several new and important questions around contagious urination across species, from ethology to psychology to endocrinology. [...]

Read more of this story at Slashdot.

BeauHD

CodeSOD: Contains Bad Choices

3 months 2 weeks ago

Paul's co-worker needed to manage some data in a tree. To do that, they wrote this Java function:

private static boolean existsFather(ArrayList<Integer> fatherFolder, Integer fatherId) { for (Integer father : fatherFolder) { if (father.equals(fatherId)) return true; } return false; }

I do not know what the integers in use represent here. I don't think they're actually representing "folders", despite the variable names in the code. I certainly hope it's not representing files and folders, because that implies they're tossing around file handles in some C-brained approach (but badly, since it implies they've got an open handle for every object).

The core WTF, in my opinion, is this- the code clearly implies some sort of tree structure, the tree contains integers, but they're not using any of the Java structures for handling trees, and implementing this slipshod approach. And even then, this code could be made more generic, as the general process works with any sane Java type.

But there's also the obvious WTF: the java.util.Collection interface, which an ArrayList implements, already handles all of this in its contains method. This entire function could be replaced with fatherFolder.contains(fatherId).

Paul writes: "I guess the last developer didn't know that every implementation of a java.util.Collection has a method called contains. At least they knew how to do a for-each.".

[Advertisement] Keep all your packages and Docker containers in one place, scan for vulnerabilities, and control who can access different feeds. ProGet installs in minutes and has a powerful free version with a lot of great features that you can upgrade when ready.Learn more.
Remy Porter