Liberado jachLog 2.3

Hoy se ha liberado la versión 2.3 de la biblioteca jachLog.

Puedes obtener más información sobre la biblioteca en el anuncio de jachLog v2.0.

Esta es una versión menor que introduce mejoras en el funcionamiento de la biblioteca.

Continuar leyendo «Liberado jachLog 2.3»

Liberado jachLog 2.2

Hoy se ha liberado la versión 2.2 de la biblioteca jachLog.

Puedes obtener más información sobre la biblioteca en el anuncio de jachLog v2.0.

Esta es una versión menor que ha corregido un par de bugs e introduce mejoras en el funcionamiento.

Continuar leyendo «Liberado jachLog 2.2»

Liberado jachLog 2.1

Hoy se liberó la versión 2.1 de la biblioteca jachLog.

Puedes obtener más información sobre la biblioteca en el anuncio de jachLog v2.0.

Esta es una versión menor que simplifica la integración de la biblioteca, soluciona problemas menores y agrega nuevos destinos visuales al log para ser utilizados en aplicaciones visuales de escritorio (Hay soporte para VCL y FMX). De las notas de la versión:

Continuar leyendo «Liberado jachLog 2.1»

Números

Nos lo ha dicho el profesor de computación desde el primer día: En un computador, al final, todo son números.

De hecho, nada más que ceros y unos, simples bits.

A los programadores, dominadores de estas pequeñas máquinas, los lenguajes de programación nos han permitido representar una gran variedad de tipos distintos de datos (información) con estos simples números y con esto construir una inimaginable cantidad de abstracciones para representar el mundo en el que vivimos.

¡Todo es una ilusión!, un increíble acto de magia. Nada más que ceros y unos van y vienen por los circuitos de las distintas placas de los ordenadores, por puertos de comunicaciones y buses, cables de red, en las señales de radio de las redes inalámbricas. Piénsalo un instante, solo ceros y unos.

Continuar leyendo «Números»

jachLog v 2.0

jachLog es una biblioteca de código abierto que nos ayuda a integrar de manera super rápida una maquinaria flexible, estable y poderosa para la generación de entradas de Log a nuestras aplicaciones Delphi. Está disponible en github.com/jachguate/jachLogMgr.

Yo soy el autor de la biblioteca, que liberé bajo licencia MIT, sin mayores anuncios a mediados del año pasado. No hice muchos anuncios, porque la biblioteca, si bien es estable, probada y lista para poner en producción, estaba careciendo de una serie de características que he tenido en mente desde hace tiempo y no quería hacer tantos anuncios hasta que estuviera bien organizado, con un plan y algunas de dichas características ya integradas.

Recientemente he liberado la versión 2.0 de la biblioteca y creo que, si no la conocías, es tiempo que le eches un vistazo y veas si puede ser de utilidad en tus proyectos.

Sus principales características son:

Continuar leyendo «jachLog v 2.0»

TStopWatch y cómo medir tiempos con alta precisión con Delphi

Las versiones modernas de Delphi cuentan con la unidad System.Diagnostics que implementa la clase TStopWatch, un cronómetro de alta precisión con el que podemos medir fácilmente el desempeño del código que escribimos, con soporte multiplataforma.

TStopWatch es un registro que tiene métodos para iniciar, pausar y resetear el cronómetro (muy similar a los botones que encontramos en el cronómetro de pulsera promedio).

Cuando digo alta precisión, hablamos de que la resolución del cronómetro suele estar en el orden de los nano-segundos o incluso fracciones de nanosegundo (esta puede variar de un procesador a otro). En mi equipo de desarrollo actual (Corei7 8va Generación/Windows 10), el menor tiempo que he podido medir es de 0.1 nanosegundos, la idea básica sería algo como:

Continuar leyendo «TStopWatch y cómo medir tiempos con alta precisión con Delphi»

Y de pronto es julio/2021

Siempre he sentido que el paso del tiempo es una de las mayores condicionantes de la vida. Mi última entrada en este blog data de diciembre de 2015 y no escribo con frecuencia desde mayo de 2014. Son 7 años; la vida ha cambiado drásticamente y, como suele suceder, quedan muchas reflexiones y aprendizajes en el camino.

Ahora estamos en el medio de una pandemia, difícilmente queda alguien que no ha perdido al menos un familiar, amigo o conocido a causa de ella y hay para quienes la vida ha cambiado radicalmente por lo mismo.

No me arrepiento de mis decisiones, sin embargo, hubiese preferido seguir escribiendo en aquel entonces. Pero no estamos para llorar por la leche derramada. Ahora, no tengo la misma disciplina para escribir que tuve antes, pero tengo el deseo de seguir intentando aportar algo a quienes amablemente se pasan por aquí y espero comenzar a hacerlo pronto.

Agradezco su visita y espero que nos leamos pronto, ojalá y con algunos temas de los usuales en esta bitácora.

Hasta entonces, deseo que se todo marche bien para ustedes.

¡Llegó StackOverflow en Español!

esSOSin lugar a dudas, hoy es un día emocionante para la comunidad de programadores de habla hispana. Oficialmente se abre la fase beta pública de StackOverflow en Español.

Ya que muchos de mis seguidores son programadores o de alguna manera están relacionados con el Software, paso por este espacio para invitarles al sitio.

Si han utilizado los viejos sistemas de foros en el pasado, encontrarán un ambiente familiar, y a la vez, si se quedan más de unos cuantos minutos y visitan el sitio unas cuantas veces, encontrarán una la plataforma –en mi humilde opinión– mucho más adecuada para realizar preguntas y respuestas sobre programación.

StackOverflow, sin embargo, no es la plataforma. StackOverflow es la comunidad, y nuestro legado es el contenido que esta comunidad genera, en forma de excelentes preguntas y excelentes respuestas. Esta comunidad será grandiosa –no lo dudo– en la medida en la que se unan a ella personas grandiosas, como tu, estimado lector.

Si vas más allá de lo técnico y además te gusta involucrarte en la comunidad, no olvides darte una vuelta por meta.es.stackoverflow.com.

¡Y pensar que todo empezó hace más de 3 años!

 

El programador «copiar y pegar»

Me gusta habitualmente aprender, reflexionar y aplicar a mi día a día buenas prácticas de programación, ya que indudablemente hacen que mi trabajo sea de mejor calidad en general, logrando productos de software más robustos, eficientes y, sobre todo, fáciles de mantener.

Parte del proceso de aplicar buenas prácticas es, sin duda, identificar las malas prácticas y sustituirlas por buenas. En esa línea de pensamiento, me gustaría hablar hoy del programador «copiar y pegar».

Menú Copiar y pegar

 

Este programador es aquel chico o chica (muchas veces no tan chico o chica), que en el desarrollo de una tarea X, encuentra un trozo de tamaño arbitrario de código y, sin pensarlo mucho, presiona la temida combinación «ctrl+c», «ctrl+v», ajusta el nombre de 2 variables, compila y se va a casa creyendo haber realizado una buena y rápida tarea.

Comienzo aclarando que copiar y pegar no es, en si mismo, una mala práctica, pero encierra dos grandes riesgos:

Continuar leyendo «El programador «copiar y pegar»»

Código de ejemplo de la sesión de DataSnap en CodeRage América Latina 2014

CodeRage Latinoamérica 2014

En relación a mi presentación en el reciente CodeRage América Latina 2014, titulada:

Aplicaciones iOS y Android con soporte para arquitecturas Multi-capas utilizando DataSnap

Haciendo clic en el botón, puedes descargar el código del ejemplo que se desarrolló durante la misma
Continuar leyendo «Código de ejemplo de la sesión de DataSnap en CodeRage América Latina 2014»