Entradas

Mostrando entradas de abril, 2025

Nostalgias y Mucho Código

  🕹️ Lunes de proyectos, nostalgias y mucho código Hoy fue uno de esos lunes con toda la energía puesta en retomar mis actividades tech. ¡Arrancamos la semana con todo! 🐞 Debugging: ¡Check! Lo primero que logré hoy fue configurar correctamente el entorno de depuración en VS Code . Una tarea que venía postergando y al fin la taché de la lista ✅. Subí un pequeño informe técnico sobre eso en mi blog de Dev.to, por si querés chusmearlo: 🔗 Debug en VS Code 🎮 Nace un proyecto retro: 8bit-FreeGames Hoy también fue un día especial porque junto a mi amigo (¡sí, ese colega loco por los pixeles como yo!) dimos el primer paso real en un proyecto que venimos soñando hace tiempo : Una plataforma online para jugar juegos retro de 8 bits — tipo NES, Atari, esos que nos sacan una sonrisa nostálgica. La idea es que sea un lugar libre y gratuito para jugar , donde el modelo de negocio venga por: 🧢 Merchandising (remeras, tazas, gorras con estilo retro) 🔌 Licencias para usar nu...

Terminal Caliente

  ☕ Domingo frío, terminal caliente Hoy fue uno de esos días en los que el frío invita a quedarse en casa, con una buena taza de chocolate (o té, no juzgo 😄) y un fondo de música tranquila. Pero lejos de quedarme tirado mirando series, decidí seguir poniéndole onda a mi netbook, que viene bancándose toda la instalación de herramientas para desarrollo como una campeona 💻🔥 Hace poquito instalé Xubuntu 24.04 , y a esta altura ya teníamos en marcha: ✅ Python ✅ MariaDB ✅ Apache2 ✅ phpMyAdmin ✅ ¡Y hasta un proyecto en Symfony corriendo! Pero claro, la idea es dejar la máquina lista para todo terreno , así que hoy me puse con dos grandes: Python y Java 🐍☕. 🐍 Python: ya viene en Linux, pero lo afinamos Linux ya trae Python, pero le faltaba su fiel compañero pip , así que lo instalé y dejé todo listo para empezar a trabajar con Django. 💡 De paso, documenté la instalación en Dev.to, por si le sirve a alguien más: 👉 pip en Xubuntu ☕ Java: OpenJDK al rescate Tambié...

Markdown

  Markdown: Cómo escribir contenido técnico de forma profesional (y por qué empiezo a usarlo) Hola 👋 En esta publicación quiero contarte qué es Markdown , por qué empecé a usarlo para escribir artículos técnicos, y cómo lo podés aplicar vos también si te gusta documentar lo que aprendés, como yo. 🧠 ¿Qué es Markdown? Markdown es un lenguaje de marcado liviano, creado para escribir texto que se vea bien tanto en su forma simple como en formato web. Se usa mucho en la programación, documentación técnica, blogs de desarrollo, y más. Con Markdown, podés darle formato al texto usando símbolos simples. No necesitás botones, ni editores pesados. Solo texto plano... ¡pero con poder! ✍️ Ejemplos de sintaxis Markdown Acá te muestro los formatos más comunes para que empieces a practicar: ✍️ Reglas básicas de Markdown que tenés que saber: Formato Sintaxis Markdown Ejemplo en texto Título (nivel 1-6) # , ## , ### , etc. ## Título secundario Negrita **texto** o __texto__ **importan...

Creación del proyecto "ShopLite"

  🛒 Creación del proyecto Symfony 5.4 "ShopLite" + Solución de problemas con PHP 8.4 En esta entrada voy a documentar cómo creé el proyecto ShopLite , una aplicación Symfony 5.4 estilo e-commerce, y también un problema inesperado que surgió con PHP 8.4, además de cómo lo resolví cambiando a PHP 8.2. 📦 Instalación del proyecto Symfony: ShopLite Desde la terminal, lancé la creación del proyecto usando el esqueleto oficial de Symfony para aplicaciones web: composer create-project symfony/website-skeleton ShopLite "5.4.*" Esto creó una nueva carpeta ShopLite con todos los archivos base, incluyendo: Archivos de configuración ( .env , composer.json , etc.) Estructura del proyecto Symfony (carpetas config/ , src/ , templates/ , etc.) 🔧 Dependencias y componentes Composer instaló automáticamente: Symfony Flex (gestor de recetas) 134 paquetes adicionales que incluyen bundles y componentes clave: framework-bundle , routing , security-bundle , twig-bundle ...

Mini E-commerce

🛒 Proyecto Symfony: ShopLite - Mini E-commerce 📍 Fase 1: Análisis, Requerimientos y Planeación 🧠 Objetivo General Desarrollar una aplicación web de tipo e-commerce utilizando Symfony, que permita gestionar productos, categorías y un carrito de compras. Este proyecto tiene como fin aplicar los principios del patrón MVC y explorar las capacidades reales del framework. 🎯 Objetivos Específicos ✅ Aplicar el patrón MVC de Symfony en un proyecto real. ✅ Crear operaciones CRUD para productos y categorías. ✅ Implementar un carrito de compras usando sesiones. ✅ Simular un flujo de compra sin pasarela de pago. ✅ Explorar relaciones entre entidades con Doctrine. ✅ Usar formularios y validaciones de Symfony. 📋 Requerimientos del Sistema ✅ Funcionales: Ver catálogo de productos. CRUD de productos y categorías por parte del administrador. Agregar y quitar productos del carrito. Ver y modificar el carrito. Simular una compra con resumen de ...

Composer

  🛠️ Instalación manual de Composer en Xubuntu 24.04 💡 ¿Por qué instalar Composer manualmente? Composer es el gestor de dependencias por excelencia para PHP, pero instalarlo desde los repositorios ( apt ) muchas veces nos deja con una versión desactualizada que puede generar errores de compatibilidad o advertencias molestas. En mi caso, eso fue exactamente lo que pasó. 🚫 Problemas con la versión de apt Cuando ejecuté composer -v , me encontré con una cascada de advertencias como estas: Deprecation Notice: Constant E_STRICT is deprecated... Fatal error: Uncaught Error: Class "Normalizer" not found...   Esto sucedía porque la versión de Composer instalada por apt no era compatible con PHP 8.2 o superior. Además, estaba enlazada a /usr/bin/composer , lo cual hacía difícil actualizarla. ✅ Ventajas de instalar Composer manualmente ✅ Ventajas ⚠️ Desventajas Siempre la última versión La actualización es manual Compatible con PHP moderno Puede requerir más pasos Más cont...

phpMyAdmin

  Instalación y configuración de phpMyAdmin en Xubuntu 24.04 con Apache personalizado Introducción En esta guía detallo cómo instalé y configuré phpMyAdmin en un entorno con Apache 2 , PHP 8.2 y MariaDB en Xubuntu 24.04 , utilizando un directorio personalizado para el servidor web. También explico cómo resolver problemas comunes derivados de cambiar la raíz de Apache y cómo mantener todo funcionando correctamente en futuras configuraciones. Requisitos previos Tener Apache2, PHP 8.2 y MariaDB instalados y funcionando. Haber cambiado la carpeta raíz de Apache a una ruta personalizada, en mi caso: /home/anthony/server/php/ Instalación de phpMyAdmin y módulos necesarios Ejecuté el siguiente comando para instalar phpMyAdmin y los módulos de PHP requeridos: sudo apt install phpmyadmin php-mbstring php-zip php-gd php-json php-curl Esto instala: phpmyadmin : interfaz web para administrar bases de datos. php-mbstring : soporte para cadenas multibyte (requerido por phpM...

Instalación de MariaDB

  🐬 Instalación de MariaDB en Xubuntu 24.04 – Guía paso a paso En esta entrada te comparto cómo instalé y configuré MariaDB en mi sistema Xubuntu 24.04 , con compatibilidad para Apache2 y PHP 8.2 , además de un breve análisis de por qué decidí usar el paquete oficial de los repositorios de Ubuntu y no el repositorio externo de MariaDB. ✅ ¿Por qué elegí MariaDB? MariaDB es un sistema de base de datos relacional desarrollado por la comunidad como reemplazo libre de MySQL. Desde que Oracle compró MySQL, muchos proyectos migraron a MariaDB por razones de libertad, transparencia en el desarrollo y compatibilidad total. Ventajas de MariaDB: Totalmente libre y de código abierto Compatible con MySQL en comandos, conectores y datos Mejor rendimiento en ciertas tareas Soporte activo de la comunidad 🧩 Intento de usar el repositorio oficial Quise instalar MariaDB desde su repositorio oficial para tener la versión más reciente. Sin embargo, me encontré con varios errores al usar...

Sistema de Archivos en Linux

  🧭 ¿Cómo está organizado el sistema de archivos en Linux? Guía para entender la estructura de directorios en Xubuntu y otras distros Uno de los primeros pasos para sentirte cómodo en Linux (como Xubuntu 24.04 en mi caso) es entender cómo está organizada su estructura de carpetas. A diferencia de Windows, que tiene discos como C:\ , D:\ , etc., Linux lo organiza todo desde una única raíz: / . A continuación, te presento una guía clara y con ejemplos reales sobre las carpetas más importantes del sistema. Ideal para desarrolladores o administradores que trabajan con Apache, PHP, MariaDB, Laravel o Symfony. 📁 / (raíz) Todo en Linux parte desde acá. Es el punto de partida del árbol de archivos. Cada carpeta que menciono a continuación “cuelga” de / . 📁 /bin – Ejecutables esenciales del sistema Contiene los comandos básicos que necesita el sistema para arrancar y funcionar correctamente. 🔧 Ejemplos: ls (listar archivos) cp (copiar) mv (mover) bash (intérprete...

Carpeta por Defecto de Apache

📁 Cambiar la carpeta por defecto de Apache en Xubuntu 24.04 ✅ Objetivo Cambiar la DocumentRoot de Apache desde /var/www/html a una carpeta personalizada, en este caso:           /home/anthony/server/php/  Ideal para trabajar con proyectos propios como Laravel, Symfony o cualquier otro framework PHP. 🛠️ Pasos realizados 1. Crear la nueva carpeta de trabajo                           mkdir -p /home/anthony/server/php 2. Editar la configuración del sitio por defecto Abrí el archivo:                            sudo nano /etc/apache2/sites-available/000-default.conf Y modificá la línea:                          DocumentRoot /var/www/html  por:                 ...

Instalación de PHP 8.2

  🐘 Instalación de PHP 8.2 en Xubuntu 24.04 con Apache2 para Laravel y Symfony En este artículo te comparto el proceso completo y documentado de cómo instalé PHP 8.2 en Xubuntu 24.04, con Apache2, listo para desarrollar con Laravel y Symfony . Además, explico dónde se instala PHP, qué módulos usé y por qué. 📦 1. Requisitos previos Ya tenía instalado Apache2 , así que empecé por agregar los repositorios actualizados y confiables para obtener versiones más recientes de PHP. sudo apt install software-properties-common sudo add-apt-repository ppa:ondrej/php sudo add-apt-repository ppa:ondrej/apache2 sudo apt update El PPA de Ondrej Sury es uno de los más utilizados y confiables para PHP en Ubuntu.   🧩 2. Instalación completa de PHP 8.2 y sus módulos necesarios Una sola línea para instalar todo lo que necesitás para trabajar con Symfony y Laravel: sudo apt install php8.2 libapache2-mod-php8.2 php8.2-cli php8.2-common php8.2-mysql php8.2-pgsql php8.2-sqlite3 php8.2-xml php8....

Instalar Apache

  🚀 Instalación y primeros pasos con Apache en Xubuntu Hoy quiero dejar documentado cómo instalé y configuré Apache en mi entorno de desarrollo local con Xubuntu 24.04. Este post me sirve de guía personal para futuras instalaciones y quizás también pueda ayudar a alguien más que esté comenzando. ✅ Instalación de Apache Desde la terminal, ejecuté:                                    sudo apt install apache2 -y   El comando apt install apache2 instala el servidor web Apache. El parámetro -y le dice al sistema que acepte automáticamente cualquier confirmación necesaria (así no tenés que escribir "S" manualmente).   🔍 Verificar que Apache funciona Una vez instalado, podés asegurarte de que Apache está funcionando de varias formas: 1. Ver versión instalada                            ...

Congelamiento al Cerrar la Tapa en Xubuntu

  🐧 Cómo solucioné el congelamiento al cerrar la tapa en Xubuntu 24.04 Tuve un problema molesto con mi netbook con Xubuntu 24.04 : cada vez que cerraba la tapa, el sistema se congelaba y tenía que forzar el reinicio. Después de investigar un poco, descubrí que el problema estaba relacionado con cómo el sistema gestionaba el cierre de tapa y la suspensión. ¡Y logré solucionarlo! 💪 🔍 El problema Al cerrar la tapa, la laptop intentaba suspenderse , pero al abrirla no respondía más: pantalla negra, sin teclado, sin nada. Solo podía apagarla con el botón de encendido. Esto me pasaba incluso si en el Gestor de energía de Xfce elegía “Suspender” o “Bloquear pantalla”.   ✅ La solución (paso a paso) 1. Cambiar la acción predeterminada en el Gestor de Energía Fui a: Menú → Configuración → Gestor de energía Y en la sección de “Cuando se cierra la tapa del portátil” ,  cambié la opción a:  → Apagar pantalla Esto evita que intente suspender y solo apaga la pantalla, lo ...