Daniel Las Heras

Desarrollador de software

Daniel Las Heras es desarrollador de software. Diseña productos digitales con nuevas tecnologías.

Trabajo

Mi actividad de Github

Contribuciones

Lenguajes principales

  • Python100%
  • Shell0%
  • PowerShell0%

Racha

0

días

Últimas newsletters

Las últimas newsletters publicadas.

El Coste Real de la IA en la Programación

Bienvenidos a la octava edición de la newsletter. En esta ocasión vamos a hablar sobre el coste real de la inteligencia artificial en el ámbito de la programación y la ingeniería de software. Actualmente, las herramientas que estoy utilizando son Claude Code y Codex, y es algo que vemos cada vez más a menudo: poco a poco iremos notando la reducción del uso permitido por sesión, semanal y mensual. Un ejemplo claro es cuando, en una sesión de Claude Code, te indica que has consumido el equivalente a 40 $ de coste de API y solo has gastado un 20 % del uso de la sesión, mientras pagas únicamente 100 $ al mes. Ahí hay algo que no cuadra. El coste actual a nivel de suscripción no es el adecuado y es muy inferior al coste real de uso; de ahí que, poco a poco, vayamos viendo reducciones en los límites. Un ejemplo claro es GitHub Copilot, donde ya simplemente pagas por lo que usas. Para ilustrarlo, estos son los requisitos para ejecutar un modelo open source como https://www.canirun.ai/model/kimi-k2. Uno de los recursos que recomiendo es https://huggingface.co/, que nos permite explorar este tipo de modelos open source y ver más detalles sobre cada uno. En mi opinión, el futuro pasa por usar alternativas como OpenCode (https://opencode.ai/es/go), con un coste más bajo aunque, obviamente, con una calidad inferior. Creo que debemos tender a buscar este tipo de soluciones y centrarnos en mejorar la orquestación entre agentes para realizar las tareas que realmente importan. Y, sobre todo, aprender sobre prompt engineering y otras técnicas que permitan consumir muchos menos tokens, tanto de entrada como de salida, sin perder calidad en el resultado.

Bases de Datos: Importancia y Conceptos Clave

Bienvenidos a la séptima edición de la newsletter. En esta ocasión vamos a hablar sobre las bases de datos y su importancia crucial a la hora de desarrollar software. En la actualidad, existe una gran variedad de bases de datos que dan soporte a las aplicaciones que utilizamos a diario. Cada tipo de base de datos ofrece ventajas específicas sobre los demás. Por ello, mi experiencia y recomendación es que siempre elijamos en función de las necesidades del problema y de los conocimientos del equipo que se encuentra al frente del proyecto. Uno de los grandes debates en este ámbito es el uso de sistemas relacionales frente a los no relacionales. Dentro de estas dos vertientes, las opciones más comunes y utilizadas hoy en día son, sin duda, PostgreSQL y MongoDB. Obviamente existen muchas otras alternativas, pero, junto a MariaDB, estas son las herramientas con las que he trabajado personalmente. Si tuviera que destacar los conceptos más importantes que se deben dominar en este campo, serían los siguientes: el modelado y la normalización de datos, la indexación, las transacciones y propiedades ACID, la optimización y mejora de consultas, y el compromiso entre consistencia y escalabilidad. Para aprender y reforzar estos fundamentos, uno de los mejores recursos disponibles es el siguiente repositorio de GitHub: https://github.com/pingcap/awesome-database-learning Espero que os haya gustado la edición de esta semana. Aunque mi área favorita dentro de la programación es el Frontend, considero indispensable mantener una visión global de los sistemas y conocer los cimientos de lo que estamos construyendo. Esto es especialmente crítico en el contexto actual, donde nos enfrentamos a continuos ataques de cadena de suministro (supply chain) en muchos de los entornos de desarrollo.

System Design: Importancia y Recursos Clave

Bienvenidos a la sexta edición de la newsletter. En esta ocasión, explicaremos la importancia del conocimiento en System Design y algunos de los recursos más interesantes para dominarlo. El System Design es crucial al diseñar y desarrollar software a gran escala; de hecho, muchas entrevistas en grandes empresas incluyen pruebas específicas en este campo. El objetivo principal de esta disciplina es saber cómo diseñar y escalar todas las partes que componen tu software. Uno de los recursos más populares es este repositorio de Donnemartin, que cuenta con más de 350k estrellas en GitHub (https://github.com/donnemartin/system-design-primer). Otro gran repositorio es el de https://github.com/karanpratapsingh/system-design, que también te permite conocer y estudiar los diferentes conceptos. Tener conocimientos sobre conceptos clave como Load Balancing, Caching, Database Sharding y Replication, entre muchos más, es fundamental para desarrollar productos utilizados por miles de personas. Actualmente, existen muchas herramientas que permiten crear diagramas o diseños para obtener una representación gráfica de cómo funciona tu sistema. Un aspecto crucial es la capacidad de planificar cómo escalamos el sistema y cómo resolverías los problemas potenciales que podrían surgir de ese planteamiento.

Skills

Tecnologías

Frameworks

Gestores de paquetes

Bases de datos

Servicios en la nube

Control de versiones

Herramientas de IA

Educación

IES Virgen del EspinoTécnico Superior en Desarrollo de Aplicaciones Websept. 2021 – feb. 2023
IES Virgen del EspinoGrado en Sistemas Microinformáticos y Redessept. 2019 – feb. 2020
IES Virgen del EspinoDesarrollo de Aplicaciones Multiplataforma (DAM)sept. 2023 – feb. 2024

Certificados

Google

Google AI

mar. 2026

ID: G74W3PDZV8K9

Introduction to Generative AI

ene. 2026

ID: 21324833

Harvard University

CS50: Introduction to Computer Science

feb. 2026

Experiencia

Suscríbete a la newsletter

Recibe mis últimos artículos y novedades directamente en tu bandeja de entrada.