Una pregunta recurrente en DigitalMakers, siempre es “¿Realmente mi web necesita un mantenimiento?”
Habitualmente quien lo pregunta, lo hace de forma incrédula, dando a entender que no ve ninguna necesidad. Al no ver necesidad, según quien sea, nos acaba contratando un mantenimiento web haciendo un acto de fe, o en algunos casos incluso deja la web sin mantenimiento.
En DigitalMakers no nos gusta que pase ninguna de las dos situaciones anteriores, lo que perseguimos es que nuestro cliente confíe en nosotros, pero porque tiene la información suficiente para poder decidir.
Así pues, el objetivo de este breve artículo es reflexionar al respecto, y obtener una respuesta objetiva basada en hechos, y no en lo que dicen por aquí o por allá.
Comenzaremos por el final, concluyendo que
SI, indiscutiblemente una web SI necesita un mantenimento. Una web es como un jardín de césped, si lo cuidamos periódicamente hará gozo donde nos apetecerá estar, si lo descuidamos acabará lleno de malas hierbas donde nadie querrá estar.
Para ilustrar esta frase tan concluyente, permitidnos hacerlo simulando una entrevista con uno de nuestros clientes habituales. Juan tiene una gestoría y, por tanto, lo que él vende son servicios para empresas, por ejemplo, gestión del impuesto de sociedades, nóminas, IVA, etc y en su caso él tiene clarísimo que su cliente tipo (el gerente de la pyme) no llegará a su gestoría para contratar servicios vía web, él dice que la forma en que sus clientes llegan a su gestoría siempre es por el boca a boca.
Así pues, él nos pregunta:
Lo que comenta en este artículo, ¿se aplica a todas las webs?
Si, rotundamente sí, todas las webs necesitan un mantenimiento. Es verdad que una tienda en línea (e-commerce) donde su plataforma de venta única es la plataforma web, siempre necesitará tener un nivel de afinación (tuning) mucho más elevado y frecuente que una web como la de tu gestoría, que nos estás diciendo que únicamente es para cuando un cliente que ya ha contactado con vosotros, por recomendación de un colega, quiere obtener más información al respecto de vosotros, y, por tanto, hace una consulta rápida en su web para saber una poco más sobre vosotros y terminarse de decidir. Pero aún así, siempre necesitará un mantenimiento. Porque sin duda tú querrás que, cuando este posible cliente consulte la web de la gestoría, todo esté perfectamente alineado y ubicado, tal y como lo dejamos al finalizar la construcción del mismo.
Pero cuando habláis de mantenimiento, ¿a qué os referís exactamente?
Juan, lo primero que debes saber es que una web no es un elemento monolítico. Es decir, no es como una escultura esculpida sobre un único bloque de piedra que, una vez finalizada dentro de su belleza, mantiene una simplicidad extrema, al tratarse de un elemento construido sobre un único bloque.
Una web puede estar construida sobre múltiples tecnologías y formas, pero para entendernos y haciendo una simplificación, un caso típico de una web corporativa como la de tu gestoría está construida sobre los siguientes elementos:
- Maquinaria. Es la máquina donde tu web y los elementos que permiten servirle residen. Vendría a ser como el ordenador desde el que trabajas tú habitualmente, pero diseñado específicamente para estar encendido sin detenerse 24×7, y siempre conectado a internet.
- Sistema Operativo. Es la primera capa de software que el hardware necesita para poder operar. Habitualmente son sistemas operativos Linux, etc pero para entendernos sería como el windows de tu ordenador.
- PHP. Es un lenguaje de programación. Depende de las tecnologías escogidas para construir tu web puede ser PHP o Java o Ruby on Rails, o muchos otros, pero uno de los más habituales sin duda es PHP.
- MySQL. Se trata de la base de datos sobre la que se ha construido la web, ésta es una de las más habituales, pero hay muchas otras como Oracle, etc
- Apache. Se trata del servidor web, en otras palabras, es el motor que sirve tu web. Es un motor ubicado sobre el hardware, y sobre el sistema operativo, y que es capaz de reaccionar ante una petición que recibe cuando un cliente que está consultando su web desde su ordenador vía navegador web. Cuando recibe la petición, en función de la programación realizada sobre PHP, MySQL ejecutará una acción u otro. En el caso presente, ir a WordPress para servir la página que el cliente está solicitando.
- WordPress. Es un gestor de contenido web (un CMS, Content Management System), que nos permite de una forma más o menos usable (es decir, similar a si trabajásemos con un Microsoft Word) crear, editar o borrar los contenidos de nuestra web. En otras palabras es una plataforma construida sobre PHP, MySQL, Apache, que tiene dos partes muy diferenciadas Back-Office y frontend. El BackOffice, es la parte privada donde gestionamos los contenidos y la parte frontend, es la parte pública. Cuando generamos un nuevo contenido desde el BackOffice, procedemos a publicarlo sobre la parte frontend, de forma lo hacemos accesible para nuestros actuales o futuros clientes. Dentro del WordPress, para el caso que nos ocupa, además tenemos los siguientes elementos relevantes:
- Plugins. Són funcionalidades específicas que nuestra web corporativo requiere, pero que no vienen nativamente o de base, con el wordpress. Por ejemplo funcionalidades de multiidioma (plugin WPML), sliders algo más potentes (SliderRevolution), etc
- Themes. Es la base sobre la que se construye la apariencia de la web corporativa.
- HTML5, CSS3, Javascript. Finalmente, cuando un cliente desde su ordenador accede a la web corporativa de la gestoría, el wordpress después de procesar la petición, devuelve un paquete de código formato HTML5, CSS3, JavaScript, que el navegador (chrome, IE, etc) es capaz de interpretar y, por tanto, redenderizar la apariencia y contenido de la web corporativa de la gestoría en su pantalla.
Buff, me estáis mareando con tanta palabra técnica. Si lo he entendido bien, decís que cuando un cliente peticiona la web poniendo el dominio, el servidor web responde gracias al resto de elementos. Pero, ¿lo hace igual para un ordenador, tablet o smartphone? ¿y para los diferentes navegadores?
La respuesta es SI, el servidor web gracias al resto de elementos comentados SI es capaz de dar respuesta a las diferentes peticiones que le llegan independientemente del navegador o dispositivo desde el que se le haga.
De hecho, ésta es una muy buena pregunta, Juan, porque éste es uno de los hechos que han complicado el desarrollo web en los últimos años.
Haciendo una revisión rápida y simplificada de una matriz base (dispositivo x navegador) tenemos unas 17 combinaciones, en que la web de la gestoría debe poder renderizarse, dado que nuestro cliente puede que lo consulte desde cualquiera de estas opciones.
Y ésta es una versión muy simplificada sin tener en cuenta por ejemplo las versiones de los navegadores.
De acuerdo, de acuerdo, pero si finalmente, a pesar de lo comentado, decido no mantener la web, ¿qué pasará?
Juan, piensa que en el momento que una web sale a explotación, se valida que todo el ecosistema comentado (hardware, sistema operativo, php, mysql, apache, wordpress, theme, plugin, navegadores últimas versiones, desktop, tablet, mobile) sea capaz en el momento de la salida a explotación de renderizar correctamente la web corporativa.
Pero como todos ya sabemos TODOS y cada uno los elementos comentados reciben actualizaciones fuera de nuestro control de forma periódica. Tal y como lo hace, por poner un ejemplo cercano, el Windows de tu ordenador, cuando cada pocas semanas te dice “Actualizando …”.
Por ejemplo, para comentar unos pocos en el momento de escribir este artículo:
- WordPress. Va por la versión 4.8, y la última versión es tan solo hace unos 20 días. Si tienes curiosidad por saber las versiones que se han liberado los últimos años y las fechas en que se han liberado puedes consultar https://codex.wordpress.org/WordPress_Versions
- PHP. Va por la versión 7.1.6, y la última versión no hace todavía 30 días que salió. Si tienes curiosidad por saber las versiones históricas de PHP y las fechas en que se han liberado puedes consultar http://php.net/releases/
- Navegador Chrome. Va por la versión 61.0 y la última versión también es de aproximadamente un mes. Si tienes curiosidad puedes consultar https://en.wikipedia.org/wiki/Google_Chrome_version_history además en este caso, todavía es más llamativo estar al día, porque las versiones de hace un par de meses, se consideran discontinuadas, es decir, ya ni siquiera reciben apoyo.
- Dispositivos. No olvidemos que los dispositivos, con los que accedemos a la web también aparte del navegador y el sistema operativo, cambiando a menudo de tamaños. Si tienes curiosidad https://en.wikipedia.org/wiki/Comparison_of_high-definition_smartphone_displays
Los efectos de que tu web se vaya desactualizando son diversos y variados, es decir, a medida que cada uno de los elementos del ecosistema llamado vayan quedando obsoletos, se irán dando situaciones anómalas, algunas de las más habituales son:
- En el desktop se ve correctamente, pero no se qué pasa que en el móvil las imágenes quedan caídas
- El formulario de contacto ha dejado de funcionar
- La web tarda mucho en cargar
- Me han hackeado la web y me han puesto una imagen desagradable a la página de inicio
- La funcionalidad de calendario ha dejado de funcionar
- Necesito introducir una nueva entrada en el blog pero da error
- etc
De acuerdo, no hablemos más, ya veo que un mantenimiento web es clave para mantener la web siempre disponible y estable, ¿puedo saber qué tareas hacéis exactamente?
Como ya debes ir adivinando, no es sencillo seguir el ritmo de actualizaciones de todos los elementos del ecosistema (hardware, sistema operativo, php, mysql, apache, wordpress, theme, plugin, navegadores últimas versiones, desktop, tablet, mobile ) y creemos que tampoco hay que volverse locos al respecto.
Desde DigitalMakers, lo que hacemos con las webs en mantenimiento es que una vez al mes hacemos una revisión completa, es decir
- Navegamos por la web como si de un visitante se tratara (desde diferentes dispositivos, con las versiones actuales de los navegadores), en el caso de que haya funcionalidades concretas (por ejemplo reserva de una visita) las revisamos explícitamente, y si alguna de las pruebas realizadas da error, una mala renderización o similar, procedemos a resolverlo.
- Revisamos las versiones del ecosistema y vamos actualizando aquellas más relevantes, y en su caso las actualizamos.
- Realizamos un backup, para en caso de desastre seamos capaces de volver a una versión reciente.
Puede suceder, que a pesar de tener el mantenimiento contratado con vosotros, surja alguna incidencia?
Desgraciadamente sí, no existe ningún sistema 100% libres de incidencias.
La tranquilidad viene de que al mantener un ritmo mensual de actualizaciones, estamos a una distancia de un mes máximo de la última versión de cualquier elemento del ecosistema, lo que minimiza mucho las incidencias, así mismo como simplifica su resolución en caso de suceder.
Cuando se realizan estas actualizaciones, ¿puede haber afectaciones de servicio?
Cuando más actualizado está todo, las afectaciones de servicio también son mucho menores. Sin embargo, si en algún caso es necesario provocar una afectación de servicio, siempre lo hacemos de forma coordinada con el cliente para evitar al máximo las molestias.
Y si estoy en una situación en que la web se comporta de forma anómala, y ahora quiero poner la web a punto, porque lo necesito para una feria a la que asistiré, pero resulta que hace más de un año que no lo he actualizado, ¿cómo puedo proceder?
En esta situación tendremos que estudiar el grado de desactualización de la web y cada caso será diferente. De todas formas, para dar una idea al respecto, lo habitual es que entre 6 meses y un año, probablemente con afectaciones de servicio, y dedicando una bolsa de horas a la actualización de todo el ecosistema sea viable poner la web a punto.
Por encima del año, habitualmente, ya vale la pena considerar hacer una nueva web.