 Vengo a presentaros a Alex Cuadra. Alex es un apasionado promotor del uso responsable de la tecnología. Uno de sus hobbies favoritos es compartir el conocimiento, así como difundir lo importante que es hacer voluntariado en las comunidades tecnológicas. Viene reciente de la Workham de Managua. Así que, por favor, recibamos con un gran aplauso a Alex Cuadra. Buenos días a todos. Gracias por venir y participar en el Workham de Madrid 2023. Bueno, esta charla rápida es, sin duda, para hablar un poco de qué es lo que tiene que saber un desarrollador para dedicarse, ciertamente, al desarrollo de WordPress. Hay quienes creen de que dedicarse a WordPress es no saber programar o no saber nada sobre código, ¿verdad? Me he encontrado con muchas personas que me dicen, quiero hacer un sitio web de WordPress, no necesito un programador, no necesito programar. Es cierto, no necesitas programar para hacer WordPress. Pero ya hay un momento en cada proyecto en el que comienza a convulverse más complejo. Comienza a volver a tener una serie de elementos que te comiencen a hacer la vida imposible, sobre todo en la optimización de tu sitio en la velocidad. Y ahí es donde entra, ¿verdad? El trabajo del desarrollador. Yo soy Alex Cuadra, vengo de Nicaragua. Ya me presentaron. Y trabajo de Inica Source, que es una agencia de desarrollo en la cual va a ser mi presentación, para sobre algunos elementos de que la agencia necesitan tomar en cuenta la hora de contratar a un desarrollador. Primero, ¿qué debemos aprender si quiero convertirme en un desarrollador WordPress? Hay un tema que es una polémica, que es sobre que el desarrollador o programador, que son lo mismo, ¿no? OK. Desarrollar el programador, ciertamente, son palabras que tienen que ver. Pero dejémoslo un poco al lado y hablemos de lo que se dedica a un desarrollador de WordPress o un programador que hace WordPress. Podemos dedicarnos a desarrollar plugins, a desarrollar bloques de editor de contenido. Podemos hacer WordPress support de ahí, de ese mundo vengo anteriormente antes de dedicarme 100% al desarrollo. Podemos hacer temas. Podemos crear simplemente un sitio. O podemos convertirnos en Security Expert, que se trata más que todo de eliminar el malware que viene en nuestro sitio. OK. Partamos de que para poder desarrollar, digamos, ya sea un tema o un plugin o desarrollar un bloque, sí necesitamos saber programar. Si necesitamos tocar el código. Para ser un site builder, ciertamente, no necesitamos tocar tanto el código. Pero sí, necesitaríamos aprender, conocer un poco de lo que es el internet, cómo funciona WordPress y cómo funciona cada uno de los plugins que vamos a utilizar. No me quiero extender mucho en esta parte, porque solo tengo 10 minutos. OK. Vamos, apartamos de las habilidades básicas que necesitamos tener si queremos dedicarnos al desarrollo de WordPress. Uno es, principalmente, el PHP. WordPress está hecho en PHP. Una vez leí un blog en el que decía de que no existía tal cosa como un desarrollador WordPress, sino que un desarrollador WordPress no era más que un desarrollador en PHP. En aquel momento que fue hace como 5 años de que lanzaron artículo, era muy cierto esa severación. Hoy en día ya no. Pero, ciertamente, habilidad es básica que necesitamos tener para construir un sitio desde cero en WordPress, PHP, CSS y HTML. Claro, tenemos que saber un poco de cómo funciona el internet, cómo funcionan los DNS, y también en sí cómo funciona el dashboard de WordPress, ¿verdad? Habilidad intermedia que podríamos tener. Ya hoy en día, digamos, el conocimiento de JavaScript en el desarrollo WordPress es imprescindible. Tenemos que conocer JavaScript para poder realizar mucho, realizar dinamismo al sitio, realizar, digamos, algunas interacciones si queremos darle a nuestro sitio un poco de dinamismo en el cliente, ciertamente. Tenemos que conocer de WordPress API, custom post and metaboxes y, ciertamente, el MySQL, que es la base de datos más común que se utiliza para WordPress. Y, claro, está Git como un conocimiento adicional. No es necesario conocer Git para trabajar el código de WordPress, pero sí, yo lo recomiendo mucho porque si nosotros vamos a desarrollar un tema o un plugin, en algún lado, lo vamos a tener que subir para conservarlo o para, digamos, poder también desplegarlos en los sitios que nosotros estemos desarrollando. Ahora, por ejemplo, la cuestión con los metaboxes o los custom post type es necesario saber cómo funcionan para poder aplicarlos, pero hoy en día existen muchas herramientas que nos las pueden generar. No necesitamos construirlas desde cero. Hablando de habilidades avanzadas, por ejemplo, me ha servido mucho en mi vida profesional saber un poco de Composer, saber de Node.js, y, sobre todo, aprender programación adaptada a objetos para PHP. OK, ¿dónde vamos a utilizar todas estas habilidades? ¿En qué momento, por ejemplo, se utiliza mucho cuando queremos desarrollar plugins que vamos a llevar a la venta cuando hacemos, digamos, Headlet WordPress y queremos expandir un poco, digamos, acceder de alguna información a través de Composer, vamos a necesitar eso. Node.js, vamos a utilizarlo para, digamos, cuando vamos a desarrollar bloques de Gutenberg, vamos a utilizar el WordPress, el paquete de WordPress que viene por defecto, el WordPress Script, y tenemos que conocer un poco Node.js. No saber desarrollar Node.js, pero sí conocerlo. Ya a esta altura, conocer de la WordPress API va a ser demasiado útil porque en algún momento vamos a tener que hacerlo personalizado. OK, algo que me salté, un pequeño tip, verdad, que me salté anteriormente, todas estas habilidades las vamos a necesitar cuando queremos personalizar WordPress, como tal. Hay quienes, digamos, solo hemos, yo he construido sitios solo utilizando Pesh Builder, pero me he encontrado con el problema de que el endpoint que voy a utilizar para, digamos, una tienda electrónica no me es suficiente para hacer lo que quiero hacer. Entonces, llegue el momento en que necesito personalizarlo. Y en ese momento que necesito personalizarlo, no es que voy a entrar al código de WordPress, como tal, o el core de WordPress, y comenzará a travesearlo, como decimos en Nicaragua, sino que tengo que conocer un poco cómo funciona la WordPress API para empezar a personalizarla. Entonces, este es un conocimiento yo lo meto en la parte avanzada porque no es común que lo toquemos a la hora de hacer un sitio web básico, por ejemplo. Sí, a la hora que hagamos un sitio web que, digamos, que puede dedicar a phone racing y de pronto necesitamos redireccionar cada una de las compras que las personas hagan hacia otro sitio. Entonces, necesitaríamos en ese momento saber un poco de cómo funciona esto. Y, claro, está el programación de objeto para repotenciar nuestros plugins, repotenciar nuestro código, y sobre todo, hacerlo más modular y más legible para los otros desarrolladores. ¿Qué buscan las empresas de un desarrollador? Va a depender, ciertamente, el proyecto. Mi experiencia personal está en que, cuando yo me dediqué a soporte técnico, la empresa de la cual yo estaba aplicando, estaba buscando a alguien, un desarrollador, prácticamente, que requería que conociera PHP, programación de renta de objeto, GitHub, etcétera. Pero a la hora en que comienzo mi trabajo en esta empresa, en esta agencia, ellos me dijeron de que simplemente solo iba a hacer actualización de plugins. Nada más. Me iba a meter al dashboard de cada uno de los sitios de los clientes y va a actualizar plugins, plugins, plugins. Luego, en la empresa en que estoy actualmente, fue un poco distinto porque me pedían casi como 20 habilidades de las cuales solo tenía 10, ¿verdad? Sobre todo era PHP, Git, HTML, CSS, y más nada. Ni sequiera había aprendido todavía JavaScript. Pero en este caso, al tener la mitad del conocimiento, ya la empresa dijo, OK, ¿puedes trabajar en esto? Pero porque los proyectos eran dedicados, más que todo, a crear sitio web desde cero, utilizando PageBuilder. Después, los proyectos mutaron, cambiaron más allá de utilizar el PageBuilder a costumizar los temas. Entonces, en este momento, es que ya toda esta habilidad es que les acabo de mostrar. Me puedo volver. Me fueron extremadamente necesarias conocer para poder comenzar a elaborar temas desde cero. Luego, cuando empiezo a hacer plugins, me encuentro con el problema de que el PHP estructurado no me era suficiente para desarrollar estos plugins. Necesitaba aprender un poco de programación en este objeto para hacer más modular y más legible el código. Y evitar problemas de crasheo y problemas de memoria, etcétera. Entonces, luego, claro, está que se me comisiona elaborar un bloque personalizado de Gutenberg. Y ahí, a esa hora, ya JavaScript me fue demasiado necesario. Y comencé a aprender un poco de React, que aquí está. Y lo pueden ver, que es necesario para crear bloque personalizado en Gutenberg, y bastante Node.js. Entonces, toda esta cosa, digamos, podemos no necesariamente la necesitamos para elaborar sitio web pequeños, pero sí para cuando vamos a hacer temas o plugins bastante complejos. Ahora, como les decía, hay proyecto en los que necesitamos tener este tipo de conocimiento. Porque vamos a encontrarnos con componentes o elementos que, si no, lo optimizamos en PHP, entonces, pueden tener problemas a la hora de desarrollarlo o mandarlo en vivo a un sitio web en producción. Igualmente, perdón, me adelanté, igualmente, si nosotros buscamos contratar a un desarrollador, tendremos que estar claro de qué es lo que queremos en este proyecto. Queremos a un alguien que está haciendo nada más un sitio con un page builder o necesitamos costumizar este plugin o este tema o necesitamos costumizar 100% de este sitio. Ahí, en este caso, ahí es donde entra el desarrollador o el que va a programar en WordPress. No quiero quitar más tiempo. Bueno, esta presentación fue hecha con cariño de parte de la comunidad WordPress de Nicaragua para la comunidad WordPress España. Muchas gracias.