tl; dr: Ser un buen ciudadano contribuyente. Usar tecnología estándar de código abierto en nuestros productos cuando haya un buen código para usar, y crear los nuevos estándares cuando sea necesario. Para atraer al tipo de desarrollador que ya ha demostrado credibilidad de código abierto, con la promesa de que harán aún más una vez que obtengan una insignia púrpura.
Respuesta más larga: los ingenieros de Yahoo usan mucho software de código abierto en los productos y herramientas de Yahoo. La compañía se basa en código abierto en casi todas las secciones de la pila y la esquina del código. Cuando usa Open Source, se da cuenta de que el código puede tener vida propia más allá de su uso particular. Esto sucede cuando ve el código de forma comunitaria, no solo como una herramienta utilitaria. Cuando encuentre problemas con el código, estará muy motivado para arreglarlo, cuidarlo y mejorarlo. Los ingenieros de Yahoo hacen eso con nuestro código. No solo usamos código, nos encanta el código y lo cuidamos.
Por lo tanto, Yahoo aporta correcciones de código y mejoras a esos proyectos de código abierto. No hacerlo sería tonto y miope. Hacerlo demuestra que nos preocupamos de curar y apoyar el ecosistema que nos respalda. Es simplemente un buen negocio y una buena ciudadanía.
- Cómo pasar de un trabajo académico al desarrollo de software
- Comenzando con Python, ¿cuál sería un buen plan de estudios a seguir para convertirse en un desarrollador de software autodidacta?
- ¿Pueden las personas perezosas convertirse en desarrolladores de software?
- ¿Cuáles son las diferencias fundamentales entre un desarrollador de software y un arquitecto de software?
- ¿Por qué a menudo se ignoran los probadores de software y no se los trata a la par con los desarrolladores?
Yahoo también aporta nuevos proyectos que se crearon dentro de Yahoo a la comunidad de código abierto. Hay muchos ejemplos de esto que puede encontrar en la página http://Github.com/Yahoo de Yahoo, en varias comunidades de Apache Software Foundation y en comunidades de nicho como CPAN y otros lugares. Así es como trabajan los mejores ingenieros: atraemos este talento porque saben que respetamos su espíritu, también es nuestro espíritu. Además, al participar en la comunidad, trabajamos con otros, no en contra de ellos. Esto reduce la fricción para asociarse, y esto ayuda a que Yahoo sea una de las mejores compañías del valle para asociarse. Pocas compañías en el mundo tienen acuerdos de tamaño y alcance de profundidad y amplitud con Microsoft y Google y Facebook y Apple como Yahoo.
Algunos de los proyectos a los que contribuye Yahoo han ayudado a crear y revolucionar la industria de la tecnología en su conjunto (como Big Data y Publicidad Computacional), aunque muchos de los proyectos que publicamos son pequeños y bastante insignificantes para la mayoría de las personas. Sin embargo, sí le importan a la persona que escribió ese código y tal vez a una docena de personas que lo usan. No intentamos golpear grandslams cada vez que publicamos código. Solo queremos que sea un hábito regular, ser buenos en eso. Trabajar en voz alta cuando podamos, ya que mejora la ingeniería, la mejor documentación, los buenos comentarios, la buena disciplina, etc. A veces publicamos código que realmente tiene un gran impacto en muchos, y aceptamos orgullo por eso. Se siente bien (Ver: ¿Cómo es tener un repositorio de tendencias en GitHub?).
Tenemos algunas personas realmente talentosas de Node.JS trabajando en esa comunidad. Algunas de las personas de aprendizaje automático más respetadas que contribuyen a su comunidad. Hadoop y muchos de sus proyectos relacionados se crearon en Yahoo, se incorporaron y se ampliaron (y se publicaron de nuevo), o se sometieron a pruebas de estrés en Yahoo en un grado que otros no podrían. Tenemos personas que trabajan en Storm, Spark, Shark, Druid, Chef, Ceph, Pig, Jenkins y una docena de otros proyectos de código abierto que se ocupan de la informática, el almacenamiento, la gestión, el monitoreo, la configuración y otros elementos de la ingeniería de Internet a escala. Publicamos código en Perl, PHP, C ++, Java, Objective C, Javascript y más. Tenemos un equipo dedicado a OpenStack, con desarrolladores cuyo trabajo a tiempo completo es contribuir a la comunidad de OpenStack. Y tenemos un conjunto bastante sólido de actividades en el mundo móvil de código abierto, con contribuciones al código iOS, código de diseño receptivo en PureCSS, YUI, Mojito, Node.JS y en el espacio de Android. (ver: ¿Yahoo tiene un buen equipo de Android? ¿Cómo se comparan con los ingenieros de compañías como Square, Pinterest o Yelp ?, y algunas de mis otras respuestas en este sitio).
Tenemos un ‘equipo’ muy pequeño de personas que nos ayudan a asegurarnos de que lo hagamos bien: legalmente, con licencias, atribuciones en el código cuando sea necesario, CLA’s firmado cuando corresponda, proporcionando respuestas a preguntas sobre las diferentes licencias que surgen diariamente: con nuevos empleados que preguntan si aún pueden trabajar en sus proyectos favoritos, adquisiciones de compañías (y su código), lanzamientos de productos (y nuestras obligaciones con crédito), asociaciones (y lo legal), software compras y publicaciones científicas (que generalmente contienen código). En nombre de mi ‘equipo’, le saludo y espero que use nuestro código, contribuya a él y se inspire para ser grandes ciudadanos en las comunidades que también lo sostienen.
Así que diría que el “papel” de Yahoo es ser un buen ciudadano, al menos eso es lo que me esfuerzo. Los logros de Yahoo en este espacio han sido aún más profundos. Espero que esto continúe, ya que es una parte muy importante de la cultura de ingeniería en Yahoo.