¿Estás loco? Pero puedo acceder a la aplicación, iniciar sesión y aún no veo un enlace a emojis. Esto se debe a que, por defecto, la Feature Flag está desactivada. He configurado mi código para que si el tratamiento está activado, se muestre esto. Por lo tanto, no muestro esto. Esto alivia al menos uno y medio de los problemas que mencionamos anteriormente.
Lo primero es que no necesito tener una rama de características. En su lugar, puedo hacer un cambio en una solicitud de extracción, solicitar una revisión, fusionar con la rama principal e implementar en producción. No tengo una rama duradera. Esto acelerará mi tiempo de desarrollo porque no estoy tratando de mantener dos ramas en paralelo.
Lo segundo es que, debido a que todos estos nuevos cambios están detrás de una Feature Flag, poner fragmentos en producción es de muy bajo riesgo. Necesitas mucho menos proceso, lo que significa que podrías ir a producción varias veces al día. Pero podrías estar pensando, bueno, esto es genial, estoy poniendo mis fragmentos en producción, ¿y qué? Bueno, parte de la respuesta es que ya lo hemos mencionado, hemos suavizado nuestro proceso. Pero hay un beneficio más allá de eso, porque mi proceso de lanzamiento ya no es todo o nada. Ahora puede ser altamente personalizado.
En este caso, voy a crear una regla que dice que cuando el ID de usuario actual sea David, es decir, yo, se muestre la versión activada. Así que puedo volver a la aplicación, actualizarla, iniciar sesión como yo y verás que obtengo los emojis. Ahora está incompleto, pero puedo verlo. En cambio, si inicio sesión como Emily, Emily no lo ve. Ahora he obtenido otra funcionalidad que ni siquiera sabía que me faltaba antes cuando estaba haciendo el desarrollo tradicional, que es poder hacer pruebas en producción. Con esto no me refiero a poner la funcionalidad y dejar que mis clientes la prueben. Lo que quiero decir es que puedo poner la funcionalidad en el entorno de producción y puedo probarla, mi equipo de control de calidad puede probarla, mi automatización puede probarla, mi equipo de ingeniería, mi empresa puede probarla. Puedo validar completamente esto en cada paso del proceso de desarrollo, cada solicitud de extracción que hago, alguien puede probarlo en producción y asegurarse de que esté bien, para que cuando finalmente lleguemos al punto de hacer el lanzamiento, ya hayamos estado probando esto durante semanas o meses, el tiempo que llevó construir esta funcionalidad.
Ahora que tengo esto, vamos a terminar esto. Ahora voy a tomar mi página de emojis y en realidad voy a agregar una página completa de emojis aquí y, nuevamente, implementar. ¿Correcto? Esto tomará un momento. Ahora puedes ver que mientras hago mi desarrollo, en realidad estoy construyendo una situación de mucha mayor calidad, porque constantemente estoy probando en producción, porque constantemente estoy poniendo cosas en producción y verificando incrementalmente que esté bien, es mucho más seguro. Así que cuando llego al punto de tener un lanzamiento, puedo ingresar aquí y probarlo, y diría que la funcionalidad se ve bien, puedo obtener algunos emojis. Ahora podemos decidir a quién lanzar esto más allá del equipo de ingeniería. Por ejemplo, puedo decidir, por defecto, dar esto al 50% de los usuarios y al 50% no. Así que voy a guardar este cambio, volver aquí.
Comments