Hemeroteca técnica · Tutoriales y utilidades publicadas
Archivo
Todas las publicaciones del blog ordenadas en el tiempo, para encontrar tutoriales, utilidades y artículos técnicos sin perderte entre enlaces.
- Envío de emails en Python
- Docstrings en Python: cómo documentar tu código
- El método __init__ en Python: inicializar objetos
- Programación orientada a objetos en Python: clases y self
- Galería web responsive. HTML5 + Bootstrap + PHP + Magnific Popup
- 30 ejercicios de Python para principiantes resueltos
- if, elif, else y bucles while y for en Python
- Tipos de datos y operadores en Python
- Aprender Python: introducción e instalación de Python 3
- Zen coding con Emmet
- Instalación y configuración de Git en Windows
- VirtualBox, Lubuntu y sus Guest Additions
- Java y MySQL. Patrón Singleton
- Geocodificación con Google Maps API y PHP
- Head First. Excelente metodología de aprendizaje
- Comunicación segura en Java con SSL (JSSE) y JAAS
- Criptografía en Java: resúmenes, firmas digitales y claves
- Seguridad en Java: class loader, security manager y policy
- Criptografía simétrica y asimétrica, firma digital y X.509
- Programación segura: buenas prácticas para evitar fallos
- NeoDatis ODB: base de datos orientada a objetos en Java
- Ejercicio RMI en Java: calcular la cuota de una hipoteca
- Aplicación RMI en Java: interfaz, servidor y cliente
- Bases de datos orientadas a objetos, ODMG y ORM
- 21 ejercicios de objetos en Oracle Database
- Objetos en Oracle: tipos, métodos, varrays y herencia
- Instalar Oracle Database Express Edition y SQL Developer
- Ejercicios de Hibernate con MySQL resueltos
- Instalar WindowBuilder en Eclipse
- RMI en Java: invocación de métodos remotos paso a paso
- Enviar objetos por sockets en Java con serialización
- Instalación y configuración de Hibernate en Eclipse
- Sockets UDP y multicast en Java, y servidor multicliente
- Sockets TCP en Java: ServerSocket y Socket con ejemplos
- Programación en red con java.net: InetAddress y URL
- Intents implícitos en Android con ejemplos prácticos
- Instalar GenyMotion como emulador en Android Studio
- CRUD en PHP con PDO y MySQL: ejercicio completo
- Exclusión mutua: algoritmos de Dekker y Peterson
- Prioridad de hilos en Java y problema productor-consumidor
- 12 ejercicios de JSP resueltos
- JSP con includes, sesiones, cookies y MySQL
- Ejemplos de JSP: scriptlets, expresiones y parámetros
- Configurar Eclipse y Tomcat para desarrollar con JSP
- JSP (JavaServer Pages): introducción y elementos básicos
- Menús en Android: menú de opciones y menú contextual
- Configurar Eclipse para desarrollar módulos de OpenERP
- Estados de un hilo en Java: join, interrupt y parada segura
- JavaBeans en Java: qué son, propiedades y eventos
- ListView personalizado en Android con iconos y ArrayAdapter
- Pestañas con TabHost e iconos en Android
- Ciclo de vida de una Activity en Android con ejemplos
- Ejercicios de JDBC en Java con MySQL resueltos
- Hilos en Applets Java: reloj y contadores con Runnable
- Pasar datos entre Activities en Android con Intent y Bundle
- ResultSet en JDBC: navegar, actualizar e insertar filas
- Transacciones en JDBC: commit, rollback y savepoints
- Statement, PreparedStatement y CallableStatement en JDBC
- Patrón DAO en Java con JDBC: ejemplo de aplicación
- JDBC en Java: introducción y conexión a MySQL paso a paso
- Añadir spoilers vistosos a Blogger
- Hilos en Java: Thread y Runnable con ejemplos
- Ejercicios de XML en Java con DOM, SAX, XStream y JDOM
- Botones personalizados con imágenes en Android
- Spinner, ListView y ArrayAdapter en Android
- Estilos en Android: styles.xml y herencia de estilos
- Traducir una app Android con strings.xml por idioma
- Layout horizontal en Android con la carpeta layout-land
- El editor de interfaces de Android Studio paso a paso
- App Android para cambiar la transparencia de una imagen
- Primera app Android: conversor de euros a dólares
- Campos de texto en Android: tipos de EditText y teclado
- Leer y escribir ficheros XML en Java con DOM
- Programación concurrente, paralela y distribuida
- Señales en C: signal, kill y sincronización de procesos
- Ejercicios de serialización en Java con Externalizable
- Serialización de objetos en Java: Serializable y transient
- Ejecutar apps en un móvil Android desde Android Studio
- Ejercicios de File y RandomAccessFile en Java
- File y RandomAccessFile en Java con ejemplos
- FIFOs en C: tuberías con nombre para comunicar procesos
- Manejo de ficheros en Java con java.io: streams y ejemplos
- Comunicar procesos en C con pipes (tuberías)
- Procesos en C con fork, wait y execl en Linux
- Cómo instalar Visual Studio 2012 paso a paso
- Instalar Android Studio y configurar el emulador
- Instalar XAMPP, JDK, Eclipse y NetBeans para programar
- Segundas partes nunca fueron buenas
- Programación. Manual completo del módulo
- Lenguajes de marcas. Prácticas y teoría (TODO COMPLETO)
- Apuntes de Windows Server 2008 y Ubuntu Server
- Apuntes de redes: TCP/IP, interconexión y seguridad
- Examen de MySQL resuelto: SQL dinámico y triggers
- Patrón MVC en Java con un ejemplo de conversor de divisas
- Tipos de ficheros, arquitectura ANSI/SPARC y tipos de SGBD
- Examen de MySQL: funciones, transacciones y triggers
- Cursores de actualización y transacciones: ejercicios
- Interfaces gráficas en Java con Swing y AWT
- Subversion (SVN) en Ubuntu desde la terminal
- Control de versiones con SVN: Assembla y TortoiseSVN
- Deadlocks en MySQL: qué son y cómo evitarlos
- Diagramas de clases UML en Eclipse con UML Designer
- Ficheros, serialización y colecciones en Java
- DTD en XML: cómo validar la estructura de un documento
- START TRANSACTION, SAVEPOINT y LOCK TABLES en MySQL
- Arquitectura en capas, fechas y clases envoltorio en Java
- Excepciones en Java: try, catch y finally con ejemplos
- Transacciones en MySQL: ACID, aislamiento, COMMIT y ROLLBACK
- Ejercicios de triggers en MySQL: réplicas y auditoría
- Windows Server 2008: zona horaria, IP estática y NetBIOS
- Instalar Windows Server 2008 en una máquina virtual
- Triggers en MySQL con ejemplos de INSERT, UPDATE y DELETE
- Herencia y polimorfismo en Java: sobrescritura e interfaces
- Funciones almacenadas en MySQL: ejercicios
- Manejadores de errores en MySQL: ejercicios
- Cursores en MySQL: ejercicios resueltos
- Encapsulamiento, this, static y paquetes en Java
- Relaciones entre clases en Java: asociación y herencia
- Procedimientos almacenados con SQL dinámico: ejercicios
- Cursores en MySQL: recorrer resultados fila a fila
- Clases y objetos en Java: constructores y método main
- Sintaxis básica de Java: variables, tipos y operadores
- Qué es Java: características y plataforma de desarrollo
- Árboles y grafos: implementación estática y dinámica
- Introducción a la programación orientada a objetos (POO)
- Control de errores en procedimientos almacenados MySQL
- Ejercicios de procedimientos almacenados en MySQL
- Sentencias preparadas y SQL dinámico en MySQL
- Qué es RSS y cómo es un feed en XML
- Procedimientos almacenados en MySQL: estructura y parámetros
- Subnetting y DHCP relay en Cisco Packet Tracer
- Práctica: web PHP en un servidor remoto con NetBeans
- Examen de consultas SQL resuelto
- SQL programado en MySQL: variables, tipos y procedimientos
- Tipos abstractos de datos (TAD) en ADA con ejemplos
- Ejercicio de índices en MySQL: crear y eliminar
- Índices en MySQL: tipos, cómo crearlos y cuándo usarlos
- Permisos por columna, contraseñas y REVOKE en MySQL
- Introducción al lenguaje ADA: tipos y estructuras de control
- Crear un blog sencillo con PHP y MySQL
- Gestión de usuarios y privilegios en MySQL con GRANT
- Ejercicios SQL de subconsultas en UPDATE, INSERT y vistas
- Cisco Packet Tracer: primeros pasos para montar una red
- Formularios HTML5 con PHP y MySQL: GET y POST
- Proyecto PHP en servidor remoto con NetBeans y MySQL
- Conexiones remotas por SSH en Eclipse y NetBeans
- Ejercicios de consultas SQL multitabla resueltos
- Introducción a PHP: LAMP, WAMP, variables y bucles
- Árboles binarios en C: estructura, operaciones y recorridos
- Ejercicios de subconsultas SQL resueltos
- Cómo hacer diagramas de flujo con LibreOffice Draw
- Compilar programas en Linux con make y Makefile
- Pilas como estructura de datos y notación postfija
- Ejercicios SQL de INSERT, UPDATE y DELETE resueltos
- Listas enlazadas en C: insertar, borrar y buscar
- Entornos de desarrollo. Instalación de Eclipse y NetBeans
- Punteros en C: qué son y cómo usarlos con ejemplos
- Ejercicios SQL: CREATE TABLE, ALTER TABLE y restricciones
- Fuentes personalizadas en CSS con @font-face
- Base de datos MySQL para un juego en C con phpMyAdmin
- Conectar a un servidor con PuTTY (SSH) y WinSCP
- Ejercicios SQL de GROUP BY, HAVING y funciones de agregado
- Recursividad en programación: qué es y ejemplos
- Conectar a MySQL desde C en Ubuntu con libmysqlclient
- Conectar C con MySQL: base de datos en Hostinger y Ubuntu
- Ejercicios de consultas SQL básicas resueltos
- Dependencias funcionales y descomposición de tablas
- Ficheros en C: fopen, fread, fwrite y fclose con ejemplos
- Ficheros secuenciales y de texto: teoría y algoritmos
- Botones redondeados, hover y transiciones en CSS
- Resumen de sistemas informáticos: hardware, procesos y SO
- Huelga (la segunda de momento)
- Me cago en todo lo cagable
- Lenguaje de marcas. CSS (II)
- Determinante, matriz adjunta e inversa de una matriz 3x3
- Diagramas de flujo: qué son y ejemplos resueltos
- Variables locales y globales en C: ámbito y visibilidad
- Menú desplegable con HTML y CSS sin JavaScript
- Proyectos en C con varios ficheros y una librería propia
- Vectores de registros y paso de structs por referencia en C
- Ejercicios de registros: operaciones con números complejos
- Primera forma normal (1FN): teoría y ejercicios
- Cadenas en C con string.h y ctype.h, y registros (struct)
- Vectores y cadenas de caracteres en C
- Ejercicios de matrices: suma, traspuesta y producto
- Vectores, macros y tipos definidos por el usuario en C
- ¡Huelga!
- Proyectos y depurador en Code::Blocks
- Tipos enumerados (enum) y la librería math.h en C
- Invariante de bucle: cómo evitar errores en algoritmos
- CSS básico: selectores, margin, padding y visibilidad
- Funciones en C: paso de parámetros por valor y referencia
- Procedimientos en pseudocódigo con ejemplos de primos
- Programación. Resolución de problemas (IV)
- Lenguaje de marcas. Etiquetas (III)
- Fases de la compilación y primeros pasos con Code::Blocks
- Lenguaje de marcas. Estructuras
- MySQL Workbench: primeros pasos para crear un modelo
- Bases de datos. Modelo relacional (V)
- Diseño descendente, subprogramas y funciones
- Ejercicios con números reales en pseudocódigo
- Lenguajes compilados e interpretados, MinGW y el PATH
- Historia de los dispositivos de almacenamiento
- Números reales en programación: coma fija y coma flotante
- Lenguaje de marcas. Etiquetas (II)
- Modelo entidad-relación: entidades, relaciones, cardinalidad
- Claves ajenas: CASCADE, RESTRICT y SET NULL
- printf, scanf, switch y bucles for y do-while en C
- Lenguaje de marcas. Etiquetas (I)
- Binario, complemento a dos y conversión entre bases
- Licencias de software y tipos de lenguajes de programación
- Operadores y estructuras de control en C
- Tipos de datos, variables y conversión de tipos en C
- Dominios, claves primarias e integridad referencial
- Algoritmos en pseudocódigo: tipos, variables y expresiones
- Qué son los lenguajes de marcas y cómo es un documento XML
- Qué es programar: algoritmos, compiladores y paradigmas
- Lenguaje de marcas. Introducción
- Qué es el software y qué tipos existen
- Máquina de Von Neumann y operaciones lógicas AND, OR y NOT
- El modelo relacional de bases de datos: qué es y objetivos
- Arquitectura de un ordenador: procesador, UC, ALU y buses
- Nuevo curso, nuevas ganas