Hola, y bienvenidos a historias y estrategias de la conversión a TypeScript conmigo, Josh Goldberg.
Para empezar, hola, soy de Upstate New York.
Soy un desarrollador de front-end en el equipo de plataforma web en Code Academy, anteriormente Microsoft,
y soy un papá de gatos.
Mi esposa y yo tenemos algunos gatos.
Son muy lindos.
Todo el contenido de esta presentación está disponible en mi sitio web bajo el enlace de las diapositivas en esta charla en joshuakgoldberg.com.
Esta presentación incluye varias imágenes animadas en bucle.
Si te distraen, te recomendaría verlas en PowerPoint, que te permite pausarlas.
En cuanto a la agenda, primero vamos a hablar sobre Code Academy en 2019 antes de dar el salto a TypeScript, cómo tomamos esa decisión de pasar a TypeScript, algunas de las técnicas que utilizamos para compartir conocimientos en el equipo, los detalles técnicos de lo que hicimos para hacer ese cambio, y luego algunas de las lecciones que aprendimos al final del proceso, cosas que tal vez puedas utilizar en tus conversiones, espero. Buen material.
Comenzando, ¿dónde estaba CodeCademy antes de TypeScript?
Retrocedamos hasta principios de 2019, una época más sencilla.
Teníamos una aplicación principal de front-end, que en ese momento consistía en alrededor de 2,000 archivos de React y Redux, algunos archivos más en un sistema de diseño separado, que en sí mismo se convirtió a TypeScript como prueba de concepto, y la mayoría de los miembros del equipo solo habían oído vagamente hablar de TypeScript.
No había un gran tema o punto de conocimiento en el equipo.
El equipo en sí era bastante pequeño.
Eran solo alrededor de 20, tal vez 30 ingenieros como máximo.
La mayoría de las personas realmente no tenían experiencia con TypeScript y, como en cualquier equipo de ingeniería, había trabajo en curso en torno a características y correcciones de errores.
Entonces, ¿cómo lo hicimos?
¿Cómo hicimos ese cambio a TypeScript?
Primero, tomamos la decisión de que queríamos hacerlo en primer lugar, y cuando hay voluntad, hay una manera, pero tiene que haber voluntad.
Cualquier cambio arquitectónico debe contar con el apoyo informado de sus constituyentes.
Creo que mucha gente, especialmente aquellos que son nuevos en un equipo, cometen el error de tratar de sacar conclusiones de inmediato y empujar una agenda, enviar propuestas, lo cual muchas veces es un error hacerlo de inmediato.
Es una buena idea absorber las experiencias de ser un desarrollador en el equipo, hablar con la gente, tener una idea de cuáles son los problemas reales, y luego utilizar eso para informar tus decisiones sobre qué impulsar y cómo.
No me malinterpretes.
No estoy tratando de menospreciar el hecho de entrar en un equipo con una perspectiva fresca e intentar hacer que la gente entienda y escuche esa perspectiva.
Eso es genial.
Eso es encomiable.
Los equipos definitivamente deberían estar abiertos a que llegues con ideas frescas, pero esas ideas frescas y perspectivas tienen muchas más posibilidades de tener éxito si las validas con quienes te rodean, si puedes convencer a las personas de su validez.
Así que no seas un malcriado.
Definitivamente habla con la gente antes de intentar presionarlos para que hagan cosas.
Si realmente quieres presionar a la gente para que haga cosas, te recomiendo encarecidamente que crees algún tipo de ambiente emocionante para ello.
Si hay algún cambio que quieras hacer, como TypeScript, quieres que la gente lo sienta.
Deberían estar emocionados en sus huesos.
Comments