Personalidad y desarrollo de código abierto

“Quizás seas un tecnólogo experto. Pero cuidado: si tu personalidad es tan brillante como un trapo de cocina, podrías poner en peligro tus proyectos de código abierto”.

Según un estudio reciente , la personalidad de un desarrollador podría afectar significativamente sus contribuciones a proyectos de código abierto. Los investigadores de la Universidad de Waterloo encontraron que los factores sociales, incluida la experiencia, siguen siendo los factores más influyentes en la aceptación o el rechazo del trabajo de un colaborador. Pero el estudio también encontró que los rasgos de personalidad juegan un papel clave en cómo se percibe su trabajo.

Personalidad y desarrollo de código abierto
Personalidad y desarrollo de código abierto

“Las personas que trabajan voluntariamente en proyectos de código abierto deben ser conscientes de cuán abiertos están al cambio y cuán concienzudos son, ya que estos dos rasgos de personalidad afectarán la disposición de las personas a trabajar con ellos”, dice Meiyappan Nagappan, profesor de David R. Cheriton School of Computer Science de Waterloo y coautor del estudio, en un comunicado.

Nadie trabaja en el vacío. El comportamiento de una persona se manifiesta cuando interactúa con otras personas , ya sea en persona, en un canal de Slack o en comentarios de código. El desarrollo de software a menudo implica la creación de un equipo en el que sea cómodo y seguro compartir ideas . Como señalan los investigadores, no es suficiente completar una tarea; Los desarrolladores también necesitan escuchar y considerar las opiniones de otras personas con una mente abierta. De hecho, dicen algunos desarrolladores, cuantas más personalidades diversas haya en un equipo, mejor será el producto final.

Los investigadores recopilaron sus datos de GitHub. Analizaron los rasgos de personalidad de 16,935 desarrolladores activos de 1,860 proyectos. Cada desarrollador tenía al menos 250 solicitudes de extracción, el proceso mediante el cual los desarrolladores de GitHub notifican a otros colaboradores de código abierto que trabajan en el mismo proyecto que completaron una tarea.

Luego, los investigadores utilizaron IBM Watson Personality Insights para recuperar las cinco grandes personalidades de los desarrolladores de software en GitHub: apertura, conciencia, extroversión, amabilidad y neuroticismo.

“Descubrimos que los factores sociales siguen siendo más importantes que los factores técnicos para que se acepte su trabajo de código abierto”, dice Alex Yun, estudiante de maestría en la facultad de matemáticas de Waterloo y otro coautor del estudio, en un comunicado.

Los investigadores también examinaron la importancia de los factores de personalidad. Descubrieron que los sesgos pueden estar involucrados en la aceptación o el rechazo del trabajo de código abierto. Eso es cierto a pesar de la aparente ventaja del código abierto mediante el cual puede contribuir con un nivel de anonimato; su persona se muestra en su código y comentarios. Alguien revisa y comenta tu trabajo en función de lo que ven frente a ellos y no de cómo te conocen como persona.

“Es más probable que los gerentes acepten una contribución de alguien que conocen o alguien más agradable que los demás, aunque la contribución técnica pueda ser similar”, dice Yun.

Los desarrolladores no se sorprenden

Las personas que trabajan en la comunidad de código abierto están de acuerdo con los resultados de la investigación.

“Si su trabajo está siendo revisado e inmediatamente rechaza cualquier sugerencia hecha por otros, entonces podría prever que esto afectaría negativamente las opiniones de los tomadores de decisiones que fusionan su trabajo”, observa Matthew Arnold, ingeniero de software senior del proveedor global de inteligencia de llamadas. Infinito .

“¿Cuál es el adjetivo para lo más alejado de ‘sorprendido’? Porque cualquiera que sea esa palabra describe mi reacción a este hallazgo de investigación ”, dice VM (Vicky) Brasseur, líder de código abierto, orador y autor del libro Forge Your Future With Open Source. “Si bien la investigación lo expresa académicamente como ‘personalidad’, lo que quieren decir es la capacidad de una persona para interactuar con otros: la aplicación de habilidades de interacción social y habilidades técnicas”.

Aquellos con una personalidad extrovertida probablemente encuentren más fácil presionar “enviar” cuando envían solicitudes de extracción a repositorios de código abierto, agrega Arnold. “Al enviar esta solicitud de extracción, acepta que la comunidad de Internet revise y juzgue su trabajo. Eso puede ser bastante abrumador, especialmente cuando los proyectos de código abierto a menudo atraen a algunas de las mejores mentes de la industria ”.

Hasta cierto punto, cada uno de nosotros puede evaluar nuestras propias capacidades, para bien o para mal. La personalidad de Arnold cae en el tipo de personalidad introvertida, intuitiva, pensante y juzgadora (INTJ) dentro de la evaluación de personalidad de Myers-Briggs. Se considera abierto y concienzudo. Pero podemos vernos a nosotros mismos con una perspectiva diferente a la de los forasteros.

Los rasgos de personalidad tienen cierto impacto en el desarrollo de software , pero los factores sociales son más influyentes, dice Dawn Foster, directora de estrategia comunitaria de código abierto  en VMware. “En mi experiencia, los factores sociales han tenido un mayor impacto en mi capacidad para contribuir con éxito a proyectos de código abierto”.

Foster se describe a sí misma como “principalmente concienzuda con un poco de amabilidad”, lo que dice que le ha servido bien porque generalmente está preparada y orientada a los detalles. Esto “permite que las personas se sientan más cómodas confiando en mí para realizar mis funciones”. Ser agradable la ayuda a sentir empatía por los demás y hacer que se sientan bienvenidos, dice.

Los factores sociales tienen más peso

Tanto Foster como Brasseur están de acuerdo con el estudio de Waterloo que concluye que los factores sociales son más influyentes en la probabilidad de aceptación de solicitudes de extracción de contribuciones a proyectos de código abierto.

“Las comunidades de código abierto a menudo se sienten como mundos muy pequeños en los que me encuentro con las mismas personas una y otra vez”, explica Foster. “Mis interacciones sociales pasadas en comunidades anteriores han ayudado a allanar el camino para mi participación en otras nuevas”.

Por ejemplo, cuando Foster comenzó a contribuir a Kubernetes, quería ayudar con la Cumbre de Colaboradores. Debido a que había trabajado con varios de los organizadores en otros proyectos que podían dar fe de su trabajo, fue relativamente fácil para ella involucrarse como organizadora a pesar de ser relativamente nueva en el proyecto.

Otro ejemplo, el Proyecto CHAOSS, donde Foster finalmente se unió a su junta directiva. “Debido a que muchos de los miembros de la junta y los mantenedores existentes sabían de mi trabajo anterior en métricas de salud de proyectos de código abierto, me permitió participar de maneras significativas mucho más rápido de lo que podría haberlo hecho si no hubiera tenido esas interacciones sociales anteriores”, Foster. dice.

Brasseur señala que la interacción social es fundamental no solo para una contribución de código abierto exitosa, sino para cualquier esfuerzo que involucre a más de una persona.

“La colaboración es difícil, si no imposible, cuando las personas no pueden interactuar bien, ya sea por habilidades personales, diferencias de idioma o alguna otra obstrucción”, dice Brasseur. “En el código abierto tenemos abundante documentación sobre los aspectos técnicos de la contribución, como la redacción de pruebas o la mecánica de enviar su contribución para su revisión, pero relativamente poca sobre las expectativas sociales de esa contribución”.

Los proyectos no ignoran necesariamente las expectativas sociales, agrega Brasseur. “Es simplemente que rara vez los documentan”.

Al igual que Foster, Arnold dice que ser abierto, concienzudo y agradable lo ha beneficiado profesionalmente. Estos rasgos le han ayudado a “encajar bien con sus compañeros de equipo, lo que para mí es un gran beneficio”. Pero, añade, “tengo que tener cuidado, sin embargo, de no dejar que esto empañe mi juicio cuando recibo comentarios sobre cómo cambiar la forma en que he hecho algo. Necesito asegurarme de no ser demasiado rápido para ir con lo que hace feliz a la otra persona “.

El resultado es una disposición a aceptar sugerencias que van en contra de su punto de vista inicial. “Mis impedimentos tienden a provenir de la falta de extroversión junto con los niveles de neuroticismo”, dice Arnold, “lo que hace que experiencias como la presentación y el entrenamiento sean mucho más estresantes e inducen ansiedad de lo necesario”.

No espere discusiones. ¡La mayoría de los desarrolladores están de acuerdo! “Las veces que veo que una solicitud de extracción se ve más obstaculizada por la personalidad es cuando hay un pequeño grupo de desarrolladores que revisan el trabajo”, dice Arnold. En esos casos, “el autor está implementando comentarios de revisión sin criticar realmente las sugerencias, lo que a veces puede causar un nivel reducido de calidad”.

Ser un buen comunicador dice mucho

Siempre se busca alguien que sea un buen comunicador. Los empleadores siempre buscan esa habilidad blanda en candidatos de todas las industrias, dice Lusen Mendel, director de relaciones con desarrolladores de Karat , que realiza entrevistas técnicas para organizaciones que contratan desarrolladores.

“Al igual que validamos la corrección del software con pruebas , a menudo se necesitan ideas que reboten de un par para validar el grado de nuestro propio entendimiento y la efectividad de nuestros conocimientos”, dice Mendel. “Ser un comunicador bueno y conciso permite a los desarrolladores identificar rápidamente qué información es importante para las lluvias de ideas, decisiones y proyectos de código abierto específicos”.

En prácticamente todas las entrevistas que realiza Karat, independientemente de lo que se suponía que debían estar evaluando, “los entrevistadores inevitablemente le dicen al gerente de contratación cómo se comunicaba el candidato”, señala.

Se necesitan más cambios

Si bien no es un desarrollador, Jack Wallen, que ha cubierto el código abierto durante décadas como periodista, encuentra que “los desarrolladores se parecen mucho a los artistas, en el sentido de que pueden ser muy sensibles a las críticas y valorar muy alto no solo su trabajo, sino en la aceptación tanto de su trabajo como de quiénes son “.

Muchos desarrolladores se enorgullecen de su individualidad y tienden a valorar mucho ese rasgo, dice Wallen. “Eso puede traducirse en estar muy satisfecho con un proyecto, cuando ellos y su trabajo son aceptados, o alejarse cuando no lo son”.

Para Wallen, hay otro problema de larga data en la comunidad del desarrollo que debe abordarse. “Está claro que debe haber una mejora significativa en la forma en que la comunidad de desarrollo trata a las personas de color, las mujeres y los miembros de la comunidad LGBTQ”, dice. “En este punto, debe haber una tolerancia cero para el trato no deseado o desigual”.

Wallen dice que conoce a desarrolladores muy talentosos que se han visto afectados por esto. “Y hasta que las cosas cambien drásticamente, seguirá habiendo una atmósfera de tensión e inquietud”.

Un elemento que podría ayudar a optimizar la comunicación es un campeón de proyecto que se preocupa por la calidad del software. Este documento técnico detalla la función de un director de calidad .

Esther Shein
por Esther Shein

Esther Shein es una escritora y editora independiente de tecnología y negocios desde hace mucho tiempo, cuyo trabajo ha aparecido en varias publicaciones nacionales y comerciales. También ha escrito libros electrónicos de liderazgo intelectual, historias de clientes y materiales de marketing.

Fuente: https://www.functionize.com/blog/how-personality-traits-affect-the-open-source-development-process/

Deja un comentario