webs

102 entradas

Probando web en el emulador de Android

GNU/Linux: aceleración hardware para el emulador de Android

Hoy traigo un pequeño howto para activar y disfrutar la aceleración hardware con el emulador de móviles Android. Parte del post también sirve para disfrutar de esta aceleración con otro software de virtualización como VirtualBox o VMWare. También traigo cómo tener disponible en el escritorio accesos directos a los móviles emulados que necesites. Así no hay que arrancar el Android Studio completo si estás programando webs, así puedes probar Javascripts que usen funciones de dispositivos móviles en varias versiones de Android, también sirve para probar PWAs, etcétera. Este post contiene los pasos probados para GNU/Linux compatible con Debian, o derivados como Ubuntu, Ubuntu Mate, etc.

Drupal review

Drupal, un pedrusco de oro en la mina de los CMSs

Este CMS reluce como el oro por fuera, y por dentro es oro puro, una joya del software 😉 Es uno de los mejores CMSs Open Source que tenemos disponibles para los proyectos. Hoy os traigo una review, tratando de remarcar el porqué es uno de los más usados en el mercado, sobretodo en proyectos complejos para universidades, gobiernos y en las empresas más tecnológicas. Es uno de los CMS que hay que conocer. Espero resumir bien las principales características, sobre todo desde el punto de vista de un programador 😎 aunque trataré también temas para marketeros y agencias. Es uno de los más flexibles y escalables. Inicialmente tenía su propio framework, pero luego comenzó incorporando Symfony 2, y en las últimas versiones viene incorporando Symfony 3. Ya está integrado con Composer. Internamente, prioriza las mejores técnicas de desarrollo para garantizarte una solución robusta para tus proyectos. Externamente, es de lo más personalizable sin tener que invertir demasiado tiempo. Tiene un gran ecosistema de configuraciones, temas y módulos disponibles. Sobre todo una gran comunidad de desarrolladores con casi 50000 módulos y casi 3000 temas disponibles a fecha de hoy, en el marketplace de Drupal.org.

EasyAdmin generando a partir de la BD

Generando un panel de control en pocos minutos con EasyAdmin en Symfony

¡Hola! Jugando y jugando, probando software, aquí que vengo de nuevo y os traigo un codekata en Symfony. Es para hacer ingeniería inversa de cualquier proyecto en el que tengas una base de datos. También traigo una joya del software que se llama EasyAdmin, un bundle/componente para Symfony. Este codekata se puede aplicar a cualquier base de datos compatible con Symfony, más en concreto, con cualquiera compatible con Doctrine, que es el componente ORM que te conectará con la BD. Quizá tienes que hacer un panel de control que sólo acceda a la información X del proyecto, a ciertas tablas. También sirve para bases de datos completas. Podría ser un proyecto legacy, de un Symfony antiguo, un Magento, un ERP como Odoo con el que trabajar con Symfony, o un WordPress, un Prestashop, Drupal, etc.. Sea cual sea el proyecto la idea es la misma.

Wordpress multisite

WordPress multisite: una instalación, infinitos sitios web

Activar la opción de WordPress multisite te puede hacer muy eficiente a la hora de explotar esta herramienta profesionalmente. Por otro lado es brutalmente eficaz para mantener segura y estable a una red de sitios WordPress que tengas que mantener. Los clientes finales te lo agradecerán, ya que no tendrán que realizar tareas muy técnicas para asegurarse de que la web siga online. Y por otro lado no tendremos que recorrer cada sitio, uno a uno, para mantenerlos en buen estado. Puedes tener una única instalación de WordPress, pero con infinitas páginas web. Todos los websites se podrían administrar desde un panel de control principal. Y los usuarios podrían trabajar, o visitar cada sitio web, como si de sitios independientes se trataran. Una única instalación de WordPress que mantener actualizada, securizada, optimizada. Un sitio desde donde administrar los plugins y temas disponibles para toda la red de páginas web. Una sola instalación en un único servidor. Ahorrarás en costes de servidor, en costes de mantenimiento, menos problemas y más recursos para todos.

Raspberry Pi & GNU/Linux: montando un sistema embebido con una interfaz web

Ya hace tiempo que no escribo con tantos problemas que está habiendo con el COVID19.. así que aquí estoy de nuevo tratando de no perder las buenas costumbres. Aquí que traigo un codekata para la Raspberry Pi. Se trata de un tutorial para montar un sistema embebido con una interfaz web en una Raspberry Pi. Imaginemos por ejemplo que la Raspberry maneja una serie de relés que encienden y apagan dispositivos, se podrían manejar desde una web. O imaginemos quizá que esta Raspberry te pudiera hacer una encuesta desde una tableta, y en función a tus respuestas, iluminar el café, chocolate o perfume de la tienda que más te va a gustar. O quizá quieres montar una API REST para interactuar con varias Raspberry que tenemos conectadas en la red de tu casa o local, para hacer algo más complejo. Así se podría coordinar las tareas en red que le corresponda a cada Raspberry, desde alguna unidad central. Si te parece interesante, sigue leyendo que este es tu post.. 😉

Symfony: seguridad, inyección SQL, XSS, autenticación y autorización

Symfony: tutorial 16: la seguridad

La seguridad no es una de las asignaturas difíciles en Symfony. Puede ser difícil en otras aplicaciones web hechas a medida, pero en Symfony, siguiendo unas pocas directrices, conseguiremos aplicaciones web muy seguras. Symfony nos provee de mecanismos fáciles de configurar, de métodos de programación para usar allí donde necesitemos estas capas de seguridad. Además de que hay componentes, hechos por expertos en seguridad, para nuestros proyectos. Este es un post muy teórico, en donde dejo las pinceladas principales para luego ahondar más en cada tema. Es decir, usando en Symfony los componentes recomendados, y unas pocas directrices, conseguiremos aplicaciones web muy seguras sin ser necesariamente expertos en seguridad web.

Symfony 4 tests unitarios y funcionales

Symfony: tutorial 15: los tests automáticos, funcionales y unitarios

Hay personas que estáis siguiendo los tutoriales sobre Symfony, escribiéndome, consultándome, sobre Entidades, Doctrine Query Language, y otras cosas.. ¡Gracias! Esto me anima a seguir escribiendo, a terminar con la planificación que hice de puesta al día con Symfony 4. Así que, aquí estoy de nuevo con otro howto o tutorial, sobre éste framework tan cojonudo. Hoy llegamos a cómo automatizar las pruebas de tu aplicación web. Es decir, este post va sobre Test Drive Development (TDD para los amigos). Imagina que vas a entregar una web, la pruebas y pruebas pensando que todo va bien. Pero llega el día de la puesta en producción, pero como no has leído este post y no has automatizado las pruebas.. 😉 empieza a romperse por los rincones que menos habías pensado. No automatizar las pruebas es bastante habitual en el mundo de las webs, pero no debería de ser así. Así que con este post, repasaremos dando pinceladas a las principales herramientas que nos provee Symfony. Así sí que dormiremos tranquilos cada vez que entreguemos una nueva versión de nuestras aplicaciones web hechas en Symfony.

Datatables filtrando datos mediante AJAX

Datatables y Symfony: cargando tablas con cantidades ingentes de datos

Continuando con un post anterior sobre mostrar tablas de datos interactivas, traigo hoy otro CODE-KATA, hecho en Symfony 4 para probar el Datatables más a fondo. En aquel post empecé a testear el Datatables con pocos datos. Datatables es un plugin de jQuery con el que en poco tiempo, listas, ordenas y filtras tablas de datos de forma muy profesional. Ahora estoy probando cómo funciona sobre un proyecto con ingentes cantidades de datos, en concreto con una tabla con 622,001 registros. Llegado a éste extremo, no puedes cargar el 100% de los datos en el servidor, enviarlos al navegador, y pintarlos. Si lo haces, el navegador se sobrecargará, no podrá pintar la tabla, o irá muy muy lento.

Ayuda en montaña, siguiente paso

Actualizando aplicaciones web de Symfony 3 al 4

Una tarea que tarde o temprano llega es el actualizar a la última versión de Symfony. Si queremos estar al día de todas las nuevas mejoras, que la aplicación funcione lo mejor posible, con todos los parches, lo más rápido posible.. llegaremos a esta tarea. Actualizar de la 1 a la 2 no lo he vivido, pero tengo entendido que no servía casi nada de la estructura de códigos montada. De la versión 2 a la 3 sí que lo he vivido; habían muchas funcionalidades obsoletas, había que actualizar paulatinamente hasta la versión 2.7 o la 2.8, si mal no recuerdo, para finalmente saltar a la 3 sin que todo petara. Ahora en el salto de la versión 3 a la 4 todo es bastante fácil, o por lo menos así lo he visto.

Datatables simple, cargando desde HTML los datos

Datatables: listando y filtrando tablas de datos con Javascript

Ya estoy de nuevo por aquí compartiendo una verdadera joya del software, el Datatables. Esta es una herramienta para desarrollo frontend, que mediante Javascript, crea unas tablas de datos muy profesionales para tus proyectos en muy poco tiempo. Se trata de un plugin de jQuery, que le da vitaminas a la presentación de datos en el navegador del cliente. Javascript actúa en la parte de frontend, es decir, tenemos que enviarle al navegador el HTML, CSS y Javascript con el Datatable configurado. Entonces, en el navegador del cliente, mediante Javascript, se regenerará el contenido web de la tabla para hacer los listados, ordenados y filtrados de la tabla de datos.

Errores de gestores de proyectos web

El error de muchos gestores de proyectos web

Con este post vengo a hacer una crítica sobre los estereotipos, en cómo se nos clasifica a los programadores: programador frontend vs backend. Es una especie de alarma, un grito al cielo como programador, una explicación de porqué subestimar el área de programación nos puede traer una cantidad ingente de problemas. Quizá este post levanta ampollas entre algunos gestores de proyectos web, pero creo que compartir experiencias a todos nos enriquece. ¡Ojo! que no hablo de gestores de proyectos, sino de gestores de proyectos web.

Symfony 4, el manejo de formularios

Symfony: tutorial 11: los formularios

Continuando con la serie de tutoriales de iniciación a Symfony Flex, vengo aquí con otra de las mejores cosas que tiene Symfony. Esta vez se trata del manejo y creación de los formularios. Podríamos seguir creando formularios a la antigua, mediante HTML, construyendo poco a poco dichos formularios. Pero si quieres ser realmente productivo construyendo aplicaciones que gestionan mucha información, interactuando con los usuarios, deberías de usar ésta herramienta y aprovechar lo que Symfony nos ofrece.