¿Vale la pena tener un perfil en Drupal.org?

Portada del podcast Drupalízate
Drupalízate es un podcast semanal creado por mí, donde hablo sobre desarrollo web basado en Drupal.
El contenido central es resolver las típicas dudas que pueda tener alguien que tiene o quiere tener una web en Drupal.
Aparte de resolver dudas de "clientes", también se habla de tips, recomendaciones y buenas prácticas para el Developer que recién empiezan en este mundo.
Audio y notas del episodio

Hoy te explico de forma resumida que es Drupal.org y que es lo que se valora cuando alguien mira un perfil de Drupal.org

Como ejemplo aquí tienes mi perfil: https://www.drupal.org/u/trebormc

Transcripción automática de este episodio de audio (puede contener errores)

Venga, estamos en el tercer episodio de Drupalizarte, por si no reconoces mi voz, básicamente. La idea de hoy es, hoy sí, hablar de la comunidad. La comunidad Drupal, ¿vale? Espérate, no te vayas aún. Sé que eso es aburrido, pero quédate dos minutos más. Me quiero enfocar a lo que le puedes sacar tu partido de formar parte de la comunidad, por qué deberías saber que existe la comunidad, por qué deberías tener tu perfil y básicamente cómo te puedes aprovechar de la comunidad. Que suena muy mal decirlo así, pero a ver, siendo honestos, mucha gente lo que le interesa es que cae para mí, no cae para los demás. Así que intentaré que este episodio sea lo más ameno y lo más de tú a tú posible. Primero de todo, no estoy diciendo que te tengas que aprovechar de la comunidad, pero sí que hay cosas que están muy bien, que te puedes fijar y que te ayudan muchísimo y que tener una comunidad de este estilo en Drupal es la leche, ¿vale? Dicho en pocas palabras. Primero de todo, para simplificar mucho, ¿qué es la comunidad? Digamos que hay una web que es Drupal.org, que es la web oficial de Drupal y ahí está todo, es la biblia, ¿vale? Están todos los módulos, están todos los temas. Básicamente es como una especie como de foro, donde dentro de cada módulo o tema, cuando se detecta un bug o un nuevo requisito de la comunidad, pues alguien, cualquier persona, puede crear un requisito nuevo y a partir de ahí se empieza a hablar, se empieza a compartir código y se hacen mejoras. Ya fue muy resumida, digamos que esto. Cosas buenas de la comunidad, que básicamente está todo centralizado. En una sola web lo tienes todo. ¿Que tienes que buscar un módulo o un tema que haga determinada cosa? Lo puedes encontrar allí. ¿Que quieres saber si ese módulo es compatible con X versión o quieres bajarte la última versión para asegurarte que no está hackeado? Por si trabajas de otras webs, puede ser que hayan modificado el código. La versión oficial y original de todo está en Drupal.org, con lo cual te ahorras temas de código hackeado. Aparte de esto, en Drupal 8 y 9 debes usar Composer, con lo cual todo se conecta automáticamente con los servidores de Drupal.org y se bajan los módulos contribuidos de la comunidad. De momento esto está sonando un poco demasiado técnico. ¿Que cosas te recomiendo tener un perfil en Drupal.org y que cosas te tratas de fijar tú para tener un perfil óptimo o para si has de contratar a alguien, fijarte en que perfil tiene. Voy a dejar el ejemplo de mi propio perfil en Drupal.org, que lo dejé en las notas del programa, pero básicamente es Drupal.org barra u, la letra u, barra trebor mc, si el nombre me ha vuelto complicado, es Robert Girado, es al revés, y mc que son iniciales del apellido. Dejare el enlace en las notas del programa para que sea más simple. Y comparto el enlace no porque quiera que veas mi perfil, sino porque quiero que veas un perfil como ejemplo y voy a nombrar algunas de las cosas que están en este perfil y que son útiles. Primero de todo, cualquier persona que contribuya con Drupal tiene un perfil. Si buscas a alguien especialista en Drupal, debería tener un perfil de más o menos años, pero debería tener un perfil. Si no tiene un perfil, es que muy bueno en Drupal no es, ya sea de frontend o de backend. Así que si ya se contrata a alguien, busca a alguien que tenga un perfil y si tú quieres trabajar de esto, has de crear un perfil. Lo primero que se ve en el perfil es la fecha, o sea, cuánto tiempo llevas en esta comunidad. En mi caso, ahora mismo llevo 10 años y un poquito más en la comunidad. En verdad empecé un año antes, pero no me creé un perfil hasta casi un año después de empezar a trabajar con Drupal. Eso es un poco cagada mía. Mi recomendación es, si tienes muy claro que quieres dedicarte a esto, créate un perfil cuanto antes. No significa que cuantos más años tenga tu perfil, más bueno seas en Drupal. ¿Por qué no? Al final, 6 años no es solo cantidad de años acumulados, sino es cantidad de experiencia que tienes sobre cierta temática. Pero sí que es verdad que al final sirve como un indicador de si lleva muchos años aquí, seguramente es que ha hecho más cosas y tiene probablemente más cosas y más experiencia. Aunque ahora vamos a ir punto por punto para desgranar un poquito más en qué te has de trabajar. Pero digamos que como cosa principal, fíjate en cuánto tiempo lleva. Si lleva solo 5 meses, difícilmente va a tener más experiencia que uno que lleva 3 años. Que lleve más de 3, 4, 5 años tampoco es tan importante. Porque por ejemplo, yo llevo 10 años, sí, pero porque empecé con Drupal 7 y muchas cosas que se hacen en Drupal 9, digamos que ya no son compatibles como tal en Drupal 7, a menos a nivel de código. Ha cambiado mucho. Por lo cual no te fijes, coge uno que lleva 20 años en la comunidad, porque quizá hace 5 años que no toca nada y no tiene tanta experiencia en las versiones nuevas que otro que lleva relativamente poco en la comunidad. De hecho esto ya está claro. Siguiente punto del perfil, a partir de los años. En el lado izquierdo del perfil, aparte de ver una foto, si es que la persona puesto el foto, ves la ubicación, que en determinado caso puede estar bien, saber dónde vive, si está en España o fuera de España por el tema de franja o ladrilla para comunicarse con él. Después por las compañías o por los proyectos en los que ha trabajado. Hay gente que lo pone. Si ha trabajado para varias agencias o en varios proyectos destacables. Aunque creo que es más útil si esta persona tiene su propia web, ver el portfolio de esta persona de los proyectos en los que dice trabajar. Pero bueno, al menos el perfil en Drupal VRG, digamos que es como un resumen de, ah vale, he estado en estas agencias y más o menos puedes intuir si la agencia es buena o es mala porque las agencias también tienen su perfil en Drupal VRG. Si también tú eres una agencia debías tener tu propio perfil como compañía en Drupal VRG. Después qué más puedes ver, por los idiomas de esa persona que en algunos casos te pueden interesar o no, si sabes por ejemplo inglés o no. Y después una pequeña bio que aquí cada gente pone lo que le viene en gana. Yo te recomendaría que si tienes una web pongas el enlace a tu web pero básicamente puedes poner lo que tú quieras. Lo más interesante aquí es las sales de experiencia que también es lo que dije tener de esta persona. O sea que se puede falsear, pero al menos te puedes hacer la idea si dice que sabe de módulos o sabe de migraciones. Posiblemente se va a destacar más que otra persona que no tiene nada puesto o que solo dice que sabe de temas visuales, no de migraciones vía código. Y la parte más importante está en la parte central del perfil, en la parte inferior, que son los créditos que tiene y los commits que ha realizado. En esta comunidad como programador puedes compartir código y también subir tus propios módulos o tus propios temas. Esto significa que cuando alguien busca un buen programador, ya sea de Frontend o de Microsoft, aunque normalmente es más de backend en esos casos, puedes ver cuántos módulos ha subido, o sea ha creado él y ha compartido con la comunidad. Puedes ver el código fuente de esos módulos y ver cómo te vino de mal programa y también cuánta gente usa esos módulos y sobre todo qué temática, de qué temáticas son. Porque si por ejemplo tú te quieres enfocar y contratar a alguien muy bueno para temas de e-commerce, que tenga módulos relacionados de alguna forma con e-commerce, va a dar más confianza que alguien que no sabe de e-commerce, sino que ha hecho muchos módulos de migraciones o de buscadores. Que al final es alguien de backend, sí, pero también te da una cierta idea de en qué tipo de proyectos está más involucrado. Por ejemplo, si haces cosas de e-commerce, seguramente está en proyectos más de e-commerce y tendrá más conocimientos de e-commerce que alguien que ha hecho un módulo de cosas de pop-ups que se ocultan, por ejemplo. Después que subas mucho código o tengas muchos módulos, tampoco significa que contribuyas mucho con la comunidad. El tema de los créditos, para dejarlo más o menos claro, es que cuando por ejemplo se detecta un bug porque tenga un proyecto y tenga un problema y encuentro que alguien ha abierto una incidencia o la ha abierto yo, de que esto no va como se espera, tú compartes código, la comunidad dice que este código está bien o mal, se trata de x tiempo y cuando se acaba aprobando de que parte de tu código o tus comentarios aportan en este hilo, en este issue, básicamente se aprueba y te dan créditos de que tú has contribuido a arreglar este problema. Ver que un perfil, una persona que tú quieres contratar, tiene varios créditos en el último año dados por ayudar a otros módulos o ayudar directamente al Drupal Code, digamos que también da la certeza de que esta persona es bueno en temas de, al menos, arreglar módulos o ayudar a la comunidad. Por ejemplo, saber alguien que ha dado ayuda a Drupal Code con parches o ha parcheado cosas de Drupal Commerce va a ser mucho más confiable que alguien que no sabe ni siquiera cómo hacer un parche. Cuando buscas a alguien de backend o con unos conocimientos mínimos de programación, fíjate en esto, número de commits, cuántos commits tiene, la tipología de los módulos donde he hecho los commits y, sobre todo, los créditos. Y digo sobre todo los créditos porque he visto en algunos casos, sobre todo porque en España somos muy guays, de la administración pública pide cuantos más números de commits mejor o cuantos más números de contribuciones mejor, aunque no hayan dado créditos. Con lo cual hay agencias que lo que hacen es, vale, vamos a llenar de mierda, vamos a hacer spam, creando commits que básicamente mueven una línea de código de arriba a abajo o ponen un espacio, que básicamente esto no modifica el código como tal, o sea, el código sigue funcionando bien, no arreglas nada, no aportas valor, pero generas commits. Y es solo que en algunos concursos públicos se pedía cuantos más 
commits tengas mejor. No te fijes solo en el número absoluto de commits, también entra en algunos, mira si realmente se ha modificado el código y si tú, por ejemplo, como agencia sabes un poco de código o tienes alguien en tu agencia que sabe de código, dile que se revise un poco a ver si lo ve decente o no el código que ha modificado esta persona. Y sobre todo lo que digo es, lo más importante son los créditos, en qué módulos se han dado soporte. Si por ejemplo es Drupal Code, es mucho más relevante que no en un pequeño módulo de una persona que solo se usa en 10 sitios web. Y pocos más, esto, ¿cómo te puedes aprovechar de la comunidad? Cada vez que tú colaboras con la comunidad se te dan estos créditos y tienes este perfil, este dashboard de perfil, de modo resumen, de en qué cosas tú has colaborado. Y eso realmente para tu, para ofertas de trabajo está muy bien tenerlo y se valora muchísimo, sobre todo si son ofertas específicas en Drupal. En serio. Si buscas a alguien haz de mirar esto y si quieres que te encuentren has de estar aquí. Y pocos más, a ver, no hace falta que seas técnico para tener un perfil, no hace falta que seas programador como tal, puedes colaborar. Básicamente hay gente que cuando se comparte código hace falta que alguien revise que este código funciona o dice hacer lo que dice hacer. Por ejemplo básicamente es instalarte la versión del módulo, aplicar el parche, que tampoco es que haga falta saber mucho código para que el parche se aplique automáticamente y comentar, vale, sí, lo que hice es que hace sí realmente sí, pero peta esta cosa o sí va todo bien. Y es revisar comentarios, revisar que el código de otra gente o que la funcionalidad de otra gente sea arreglado. Hay mucha gente que se dedica a esto y con esto consigue muchos créditos de e.y.s. ayuda con la comunidad. Misma forma también puedes ayudar haciendo tutoriales o por ejemplo haciendo traducciones. Y lo más común es compartir código, no toda la gente que está en la comunidad comparte código. Lo digo para que quede claro. Vale y nada más esto que yo recomiendo muchísimo estar en la comunidad. Recomiendo muchísimo ayudar cuanto más puedas a la comunidad, aunque por ejemplo yo en mi caso si ves mi perfil no da pena, pero digamos que no le dedico el tiempo que debería ni a subir todos los módulos que puedo contribuir ni a ayudar con todos los parches que podría hacer y básicamente es por falta de tiempo, es la excusa más típica. Pero que sí, que lo poco que he subido me ha ayudado mucho para encontrar clientes o para poder hablar digamos más de tú a tú con ciertos clientes que pensan que no tenía la experiencia que yo decía tener. Es una forma de demostrar que yo sé de lo que hablo, aunque como digo si hubiera contribuido más pues tendría más formas de demostrar esto. Pero bueno, que nada más. Y la semana que viene creo que ya voy a empezar con algunas cosillas más no técnicas pero conocimientos más de Drupal como tal, no esto de la comunidad que es más abstracto, sino con... Nos vamos a meter en materia de por ejemplo qué son las entidades y cómo se configuran o cómo funciona Drupal por dentro un poquillo para tener los conocimientos básicos. Y nada más. Hasta la semana que viene.

¿Tienes algún proyecto en mente?

Si quieres hacer algo en Drupal tal vez puedas contratarme.

Ya sea para consultoría, desarrollo o mantenimiento de sitios web Drupal.