Los 3 costos del control de versiones
El control de versiones para Salesforce es fundamental para evitar la pérdida de trabajo y las crisis. Blue Canvas elimina los costos y simplifica el proceso con un seguimiento automático.
Por Randalyn Hill-Coffer·Revisado por el equipo de Blue Canvas··4 min de lecturaCon este artículo, conoce la importancia del control de versiones para los equipos de desarrollo de Salesforce, los costos asociados con su implementación y cómo Blue Canvas puede simplificar el proceso y eliminar esos costos.
Estas son nuestras 5 conclusiones clave:
1. El control de versiones es fundamental para que los equipos de desarrollo de Salesforce eviten perder trabajo y garanticen copias de seguridad continuas del código y los metadatos.
2. Los costos de implementar el control de versiones incluyen configurarlo, capacitar al equipo y mantener su uso constante.
3. Blue Canvas simplifica la implementación del control de versiones para Salesforce y elimina esos costos.
4. Blue Canvas captura automáticamente los cambios en las organizaciones de Salesforce y los registra como commits en un repositorio de Git, sin que el equipo tenga que hacer commits manuales.
5. Con Blue Canvas, los equipos pueden contar con copias de seguridad continuas de su código y metadatos, y mantenerse al día con las últimas versiones y API de Salesforce.
Idealmente, nunca necesitarás un registro de auditoría ni un respaldo de tus metadatos de Salesforce. Todo funcionará siempre sin problemas y no habrá inconvenientes que resolver, ni necesidad de volver a un estado anterior o recuperar metadatos perdidos. Sin embargo, cuando necesitas hacer cualquiera de esas cosas, realmente las necesitas. Ahí es donde el control de versiones puede salvarte.
Hay todo tipo de razones para usar el control de versiones a diario: facilitar la colaboración entre colegas, gestionar conflictos de fusión, servir como documentación de facto de un proyecto, facilitar la integración continua, etc. Pero cuando tu equipo de desarrollo esté en crisis, será cuando más te alegrarás de que tu empresa haya invertido en control de versiones.
Esto es especialmente cierto con Salesforce. Hemos hablado con cientos de desarrolladores de Salesforce en los últimos meses. Demasiados nos han contado cómo un desarrollador sobrescribió el trabajo de otro, y algunos incluso han perdido meses de trabajo de forma permanente por no tener un respaldo de sus metadatos. Una pérdida así puede ser devastadora para una empresa y llevar a una organización a una crisis.
El control de versiones para Salesforce, hace que este resultado sea mucho menos probable. Cuando tu código está bajo control de versiones, tienes respaldos continuos y actualizados al minuto de tu base de código, lo que garantiza que nunca se pierda el trabajo. Si necesitas revertir tu código o recuperar trabajo perdido, puedes hacerlo.
El control de versiones es como una póliza de seguro. La mayor parte del tiempo simplemente está ahí, pero cuando lo necesitas se convierte en tu inversión más valiosa. Te permite saber quién cambió qué y recuperar trabajo que podría perderse.
Al igual que con los seguros, muchos equipos también ven el control de versiones como un costo. Hay 3 costos principales que impiden que muchos equipos de desarrollo de Salesforce implementen el control de versiones:
Configuración del control de versiones
Configurar el control de versiones lleva tiempo. Suponiendo que elijas Git, aún queda la pregunta de si usar una solución de Git alojada, como GitHub o Bitbucket, y cuál elegir. Además, no siempre es fácil incorporar los metadatos de Salesforce a Git, especialmente los cambios declarativos. Esto requiere implementar scripts de Ant y configurar un servidor de integración continua como Jenkins. Crear toda esta infraestructura puede ser costoso y llevar mucho tiempo y, aun así, su eficacia depende en gran medida de los siguientes dos costos.
Capacitar a un equipo para usar el control de versiones
Necesitas capacitar a tu equipo para seguir las mejores prácticas y registrar sus cambios continuamente en el control de versiones. Esto puede ser difícil con Salesforce porque hay muchos usuarios de herramientas declarativas que no conocen Git ni otras herramientas de control de versiones y que quizá no tengan interés en usar la línea de comandos. Además, gracias a la excelente filosofía de clics, no código de Salesforce, puede ser muy fácil hacer cambios directamente en producción que no se registran en el control de versiones.
Aprender Git puede ser difícil para muchos desarrolladores. Incluso los más avanzados enfrentan desafíos con Git casi todas las semanas. ¿Cuál es la diferencia entre revert y reset, otra vez?
Mantenimiento y cumplimiento
Por último, tu solución de control de versiones solo es tan buena como el uso constante que haga tu equipo de ella. ¿Los miembros del equipo recuerdan registrar sus cambios con regularidad? ¿Qué pasa si simplemente hacen una corrección rápida en producción o en preproducción? Es solo un cambio declarativo menor y sencillo, y lo harán solo esta vez. Si no lo registran, tu control de versiones y tus entornos sandbox de Salesforce pierden la sincronización rápidamente y gran parte del beneficio del control de versiones deja de tener sentido.
¿Qué ocurre con cada nueva versión de Salesforce? ¿Y cuando hay nuevos endpoints de API o cambios en herramienta de migración de Force.com? ¿Recuerdas actualizar tus scripts a tiempo y mantener todo actualizado y en buen estado? ¿Qué pasa si un script empieza a fallar? ¿Detienes tu flujo de desarrollo mientras intentas depurarlo a toda prisa?
Blue Canvas elimina los costos del control de versiones
Blue Canvas elimina los tres costos anteriores y simplifica mucho el control de versiones para Salesforce. Así que quedarás como un héroe si alguna vez lo necesitas.
Configurar Blue Canvas con tu entorno de Salesforce requiere literalmente 4 clics. En solo unos segundos, puedes tener todos los cambios de tu flujo de desarrollo de Salesforce registrados en Git.
No necesitas capacitar a tu equipo para aprender un flujo de trabajo completamente nuevo. En cambio, Blue Canvas se ejecuta como un proceso en segundo plano que captura automáticamente los cambios en tus organizaciones de Salesforce y los registra como commits en un repositorio de Git. Ya sea que el cambio se haga desde la consola de desarrollador, la interfaz declarativa o un editor de texto como MavensMate, Blue Canvas garantiza que todos los cambios se respalden y registren en Git. Tu equipo ni siquiera necesita saber qué es Blue Canvas ni recordar hacer commits en el control de versiones.
Y cuando usas Blue Canvas, tienes un equipo trabajando las 24 horas para garantizar que tu sistema de control de versiones esté actualizado con las últimas versiones y API de Salesforce, para que nunca tengas que dedicar tiempo de desarrollo a depurar y mantener scripts.
¿Todo listo?
¿Tu equipo está protegido frente a una crisis gracias a respaldos continuos de tu código y metadatos en el control de versiones? Si no es así, considera invertir los 5 minutos que toma crear una Blue Canvas cuenta y vuelve a olvidarte de si tu código tiene respaldo.



