Recuerdo haber creado mi primer blog de WordPress. Pasé horas siguiendo guías en línea para descargar WordPress, tratando de cargarlo nuevamente y luego descubriendo cómo configurar una base de datos.
Simplemente envié por FTP cada cambio hasta el servidor en vivo, y esperaba que el blog no se oscureciera si escribía mal un signo de interrogación.
Mientras tanto, WordPress ha crecido. Las empresas de medios masivos utilizan WordPress como su principal forma de comunicarse con el mundo. Vaya a Tech Crunch o al New Yorker y vea el código fuente html. Verá que el sitio web está construido con WordPress. ¿Beyoncé? Sip. A ella le encanta WordPress.
Al mismo tiempo, WordPress tiene esta terrible reputación entre los desarrolladores. El estereotipo es que los niños de la escritura cargan archivos a través de FTP, sin usar el control de versiones y, en general, abandonando todos los principios cuerdos del desarrollo de software conocidos por la humanidad.
Obviamente, no es una acusación justa. WordPress ha crecido. Se está volviendo completamente desarrollado API REST este año. Ahora puede instalar WordPress y las dependencias desde la línea de comando usando WP-CLI.
Los desarrolladores de WordPress y los diseñadores de temas están creciendo. Roots.io es un ejemplo de cómo tratar los proyectos de WordPress como cualquier proyecto serio de desarrollo de software. No pierden el tiempo con la carga FTP de arrastrar y soltar. En su lugar, usan git para el control de versiones y capistrano para las implementaciones.
Joel de Fog Creek Software escribió sobre 12 pasos para mejorar el software, y uno de ellos era un rastreador de errores o problemas. El esta en lo correcto. Es difícil recordar todas las diferentes solicitudes de funciones y errores en su cabeza. Es aún más difícil recordar todos los pasos para reproducir errores, lo que el usuario esperaba y lo que realmente obtuvo.
También hay tantas notas adhesivas que puedes en tu escritorio. WordPress mismo utiliza Trac como su rastreador de problemas. He trabajado con Redmine, otra herramienta de gestión de proyectos y rastreador de problemas de código abierto, porque estoy en Planio, que ofrece hospedaje de Redmine y git.
El caso de uso típico de un rastreador de problemas
Entonces, imagina que estás creando un nuevo complemento para WordPress. Tienes un pequeño equipo en el trabajo: uno o dos desarrolladores, un diseñador y un hombre de negocios.
Ya no eres un equipo de una sola persona. No todos trabajan en un solo lugar porque, bueno, el trabajo remoto es increíble y el hemisferio norte no es tan divertido en invierno.
Un usuario envía un correo electrónico diciendo que el complemento «no funciona». Si tiene suerte, obtendrá una captura de pantalla que muestra un mensaje de error de «no funciona».
Reenvías el correo electrónico. Alguien envía un correo electrónico con una pregunta sobre qué navegador estaba usando y, de repente, tiene un hilo de Gmail de 12 correos electrónicos. Hay algunos problemas resueltos aquí, y los rastreadores de problemas lo ayudan a resolverlos.
Las tres piezas críticas de cada error reparable
La primera es que en realidad necesita tres cosas para cada informe de error:
- ¿Qué pasos tomó el usuario que resultaron en el error?
- ¿Qué esperaba ver el usuario?
- ¿Qué vio realmente el usuario?
Debe poder reproducir el error, porque es realmente difícil corregir un error que no puede ver en acción. En segundo lugar, debe asegurarse de que el error sea, de hecho, un error o si el usuario esperaba algo que su software no proporciona.
Aquí hay otra forma de decirlo:
Las reglas de los padres para informar errores:
– ¿Qué querías que te diera el programa?
– ¿Qué le hiciste al programa?
– ¿Cómo fue para ti?– Steve Purcell (@sanityinc) 29 de octubre de 2015
Y no puede engañar a la persona que informa del error con la línea clásica: «No es un error. ¡Es una característica!”Si no sabe qué esperaba la persona en su lugar.
Usar un rastreador de problemas como Redmine significa que tiene una forma estandarizada de recibir esta información.
Hay una forma de asegurarse de que una tarea nunca se realice: sugirió vagamente que el equipo debería hacer algo al respecto. A menos que esté asignado a un «propietario», simplemente no se hará.
Los rastreadores de problemas te obligan a asignar un problema a, bueno, una persona en un momento dado, para que siempre sepas quién es el propietario de un error o una tarea. Al mismo tiempo, los problemas pasan por un flujo de trabajo de diferentes estados, como «En progreso», «Control de calidad / Pruebas» o «Listo para implementación».
La mayoría de los rastreadores le brindarán informes basados en el estado actual de un problema, para que pueda ver el volumen actual de trabajo en progreso y cuánto queda por hacer. Incluso puede crear gráficos de evolución, que se popularizan en metodologías ágiles.
Integre perfectamente Git en su flujo de trabajo de gestión de proyectos
Como mencionamos anteriormente, usar git en su proceso de desarrollo de WordPress hará su vida mucho más fácil cuando las cosas salgan mal. Git te da un botón de rebobinado en su código, y puede crear múltiples versiones paralelas de su sitio.
Cada vez que «envías» código nuevo a tu repositorio de git, estás creando un punto natural para discutir el cambio en la base de código. Además, encuentro que es más fácil discutir problemas basados en el código comprometido real en lugar de solo ideas vagas.
Ahí es donde brillan los rastreadores de problemas, porque Redmine, por ejemplo, está estrechamente integrado con git o svn. Puede ver rápidamente quién cometió qué contra los problemas y luego discutir esos problemas.
Cree un sistema para su desarrollo de WordPress
Un rastreador de problemas lo ayudará a escalar más allá de usted mismo. Estará seguro de que los problemas no se le escapan.
En Planio, la mayoría de nuestros clientes utilizan nuestro Redmine alojado con el fin de realizar un seguimiento de los proyectos de desarrollo de software, incluidos los proyectos de WordPress. Realizan un seguimiento de errores, nuevas funciones y sprints en relación con el control de versiones.
Redmine, como WordPress, es de código abierto, por lo que tiene la ventaja de no estar atrapado en un software propietario. Y al igual que WordPress, puede subcontratar el alojamiento a alguien como nosotros en Planio, o puede instalarlo usted mismo si lo prefiere de Redmine.org.
A ti
Entonces, ¿cómo administras tus flujos de trabajo? ¿Has probado Redmine? ¡Nos encantaría escuchar sus pensamientos y comentarios a continuación!