Blog de Eduardo Acevedo

Soy desarrollador Fullstack especializado en lenguajes backend PHP y Python.

Llevo más de 15 años como informático lo que me ha permitido involucrarme en distintas áreas. Desde hacer cableados de red pasando por diseño gráfico, programación e incluso mover campañas en Facebook. Por este motivo he podido trabajar con varias tecnologías, programas y lenguajes de programación. Siendo el desarrollo web mi faceta más destacable.

Originalmente empecé con Visual Basic 6, Microsoft Access y VBA. Posteriormente apareció C# y me dediqué a aprenderlo apoyandome en el libro "Visual C# .Net de Anaya" pudiendo realizar dos proyectos uno personal y otro en una agencia de viajes. Entonces casi todas mis busquedas de dudas sobre VB y C# acababan en la web de "el guille (elguille.info)" con excelente contenido en lo que a .NET se refiere.

C# me sirvió para aplicar por primera vez el paradigma de la programación orientada a objetos (OOP en inglés).
C# era muy parecido a Java con lo cual a nivel formativo pude crear un proyecto básico con los Java Beans, Tomcat y JSP.

En esta época era muy común encontrar webs con Macromedia Flash, Actionscript y PHP. Trabajando en una agencia de publicidad me enfrenté al desarrollo en este stack. Hacía trabajos muy básicos: animación en flash, programación en AS 3.0, automatización de emails, gestionar algún bug en Joomla y Wordpress. Entonces mi forma de desarrollar era el típico "código espagueti". No obstante intenté replicar el MVC pero sin clases (en PHP), todo con funciones, un poco al estilo wordpress. Esto me sirvió para entender mejor PHP desde cero. El uso de include, require, php.ini, variables globales, conexión con mysql y la interactividad con js.

Cambio de empresa. En esta nueva experiencia es un stack más robusto y esperable: Cake PHP, Mysql, Jquery, Wordpress y SVN en un servidor dedicado con Linux Centos. Mi grata sorpresa es que Cake replica MVC con POO lo cual me lleva a replantearme el proyecto anterior usando clases emulando a este framework pero sin su ORM. Termino desarrollando la primera versión de: theframework.es

Desde entonces hasta hoy sigo trabajando con PHP, sin dejar de hacer seguimiento a la evolución de otras técnologías. Tales como:

  • PHP 7 y 8, Yii 2, Symfony 5 y Laravel 7, REST
  • Python, Django, Flask y Selenium
  • SQL Server, Mysql, MongoDB, Hive y Redis
  • Vanilla Js, jQuery, Rxjs, VueJs, Svelte y ReactJs
  • CSS, Vuetify, Bootstrap y Bulma
  • Docker y Vagrant
  • Flutter y Android
  • Figma
  • .Net Core
  • Windows, Mac OS, Linux
La idea de este blog es plasmar todas aquellas experiencias y soluciones relevantes que voy experimentando en el uso de dichas herramientas.

Contacta conmigo


Últimos artículos:

Crear conexión segura por SSH para no tener que escribir la contraseña al iniciar sesión
Crear conexión segura por SSH para no tener que escribir la contraseña al iniciar sesión

Explico cómo crear claves SSH para conexión remota directa sin que haya necesidad de proporcionar la contraseña de sesión.

27-08-2022 15:55
Mysql/MariaDB ¿Cuál es el tamaño máximo para un campo de tipo varchar?
Mysql/MariaDB ¿Cuál es el tamaño máximo para un campo de tipo varchar?

Muestro de forma empírica el resultado de definir campos de tipo VARCHAR de distinta longitud hasta obtener el valor máximo permitido y cómo afecta este tamaño al resto de campos.

22-05-2022 13:29
De MVC a DDD Parte IV - Reorganizando las carpetas de MVC a estructura DDD incluyendo namespaces
De MVC a DDD Parte IV - Reorganizando las carpetas de MVC a estructura DDD incluyendo namespaces

Explico cómo pasar las clases distribuidas en las carpetas modelos, vistas, controladores y servicios a aplicación, dominio e infraestructura.

29-04-2022 23:00
Sencillo autoloader de clases en php sin composer
Sencillo autoloader de clases en php sin composer

Explico cómo realizar un autoloader de clases que nos evitará tener que hacer "includes" manualmente cada vez que necesitemos usar (importar) nuestras clases. También comento el uso de las funciones: set_include_path y spl_autoload_register

12-04-2022 20:07
De MVC a DDD Parte III - Moviendo la lógica de negocio a un servicio
De MVC a DDD Parte III - Moviendo la lógica de negocio a un servicio

Explico el refactor que implica mover lógica de negocio del controlador a un servicio ganando así testabilidad y aislando la responsabilidad en un solo punto facilitanto la reutilización de esta funcionalidad.

12-04-2022 21:09
De MVC a DDD Parte II - ¿Porqué llevar la lógica de negocio a un servicio?
De MVC a DDD Parte II - ¿Porqué llevar la lógica de negocio a un servicio?

Antes de realizar el refactor comento el controlador PublishController y la ventaja de mover la lógica de negocio a un servicio.

10-04-2022 01:08
Refactorizando de MVC a DDD Parte I - Introducción
Refactorizando de MVC a DDD Parte I - Introducción

Conjunto de artículos que incluyen una explicación detallada del proceso de refactorización de la publicación de un post hecho en MVC y pasado a Domain Driven Design.

10-04-2022 01:06
Reiniciar servicio de docker en windows con WSL
Reiniciar servicio de docker en windows con WSL

Explico como reiniciar el servicio de Docker en Windows WSL y Ubuntu

19-03-2022 22:04
docker error Unable to detect ICU prefix or no failed. Please verify ICU install prefix and make sure icu-config works
docker error Unable to detect ICU prefix or no failed. Please verify ICU install prefix and make sure icu-config works

Explico como corregir el error ICU al instalar Apache, PHP y el driver PDO en un contenedor de Docker.

03-03-2022 20:52