Esta entrada se publicó originalmente en Harbour Magazine, mi publicación sobre el lenguaje de programación Harbour.
Este mes de mayo se han producido interesantes novedades en el entorno del lenguaje Harbour:
Aleksander Czajczy?ski ha creado The Harbour Playground, es una versión autocontenida de Harbour que se puede ejecutar desde cualquier navegador moderno, útil para probar trozos de código, ejemplos, etc. También permite formatear código mediante una versión embebida de hbformat. Disponible en https://os.allcom.pl/harbour/ y sencillamente impresionante.
Viktor Szakats ha realizado una actualización del sitio web de Harbour. La web de la versión 3.2 ha incorporado el aspecto de la web de la versión 3.4, y se encuentra disponible en https://harbour.github.io/. La Guía de Referencia de Harbour se ha enlazado con el Harbour Playground, y ahora es posible ejecutar los ejemplos directamente desde el navegador.
Manu Expósito ha terminado la versión 1.0 de su Harbour Data Objects, su librería de acceso universal nativo a bases de datos SQL. Incorpora, de momento, acceso a bases de datos SqLite y SQLCipher, y se encuentra en desarrollo el acceso a MySql. El grupo de soporte de la librería está https://es.groups.yahoo.com/neo/groups/HDO_Harbour/info.
He liberado el código fuente de la versión 6.10 de Colossus, mi programa de gestión de contraseñas realizado con Harbour y FWH. Disponible en https://github.com/JoseluisSanchez/colossus
¿ Conoces alguna novedad sobre Harbour, su entorno de programación, artículos sobre el lenguaje, código fuente, etc. que merezcan ser publicados ? Escribeme a mediumharbourmag@gmail.com y lo publicaré en el próximo boletín mensual sobre Harbour.
Hoy es día de aniversario en cinco mundos. Hace 15 años publiqué el primer post en software*, mi primer blog.
Primaera entrada de software*
Después el blog se llamó avemundi y terminó en cinco mundos que es su nombre actual. El nombre actual es un homenaje a un artículo del mismo nombre publicado por Joel Spolsky y que ayudé a traducir.
En total he escrito 418 entradas en estos 15 años, algo más de 2 entradas al mes de media. Tengo que reconocer que el blog ha tenido épocas de muchas publicaciones y otras en que de una entrada a la siguiente han pasado varios meses, aunque en todo este tiempo nunca he dejado del todo desatendido el blog.
¿ Merece la pena tener un blog ? Creo firmemente que sí. Un blog es un sitio donde puedes expresar tus ideas o inquietudes, más allá del vértigo de las publicaciones de las redes sociales donde todo sucede tan deprisa. Además tienes un motivo para aprender sobre plataformas de publicación. Cuando comencé hacía el blog ‘a mano’, editando el html y el css. Después pasé a movable type, y de ahí a wordpress. Ahora publico tanto en cinco mundos como en Medium, donde también soy editor de Harbour Magazine.
El gran hilo conductor de este blog ha sido el desarrollo de las aplicaciones de escritorio para Windows que comparto en alanit. He contado todas las modificaciones que he hecho a los programas, las clases propias que uso, el diseño del interfaz, las herramientas de programación y el código completo de uno de los programas, Colossus. Espero que estas entradas hayan servido de ayuda a otros programadores.
Esta entrada se publicó originalmente en Harbour Magazine, mi publicación sobre el lenguaje de programación Harbour.
El diseño plano o flat design ha sido una tendencia en diseño web en los últimos años, pero con la llegada de Windows 10 se ha impuesto también en cuanto a interfaces de sistemas Windows. El diseño plano se caracteriza basicamente por:
Ausencia de texturas, sombras, gradientes, biseles o cualquier otro elemento que provoque sensación de profundidad.
Diseño minimalista, donde los elementos respiran y no se amontonan uno encima del otro.
Uso de formas geométricas simples (cuadrados, rectángulos, círculos, etc.) para estructurar la información o diseñar elementos de la interfaz (botones, iconos, etc.).
Uso de colores uniformes, vibrantes.
Como programadores de aplicaciones en un entorno gráfico como Windows, debemos preocuparnos de que nuestras aplicaciones sigan las reglas de interfaz del entorno, de otra manera su aspecto quedará totalmente desfasado. En función del tipo de software que realicemos esto tendrá todavía más importancia, no es lo mismo desarrollar sistemas por encargo que los usuarios tienen que usar de manera obligatoria que desarrollar aplicaciones a la venta por internet donde la primera impresión al usuario será determinante en el proceso de compra. Si quieres que tu aplicación se vea bonita debes siempre seguir las reglas del interfaz del sistema operativo en que se ejecuta. Un diseño simple y funcional es la clave para tener éxito.
En mi caso, como programador de aplicaciones Windows, he modificado mis aplicaciones para dotarlas de un diseño plano. A continuación muestro los cambios que he realizado:
Eliminación de gradientes en el registro seleccionado de las rejillas de datos.
Eliminación de efecto de sombra en las pestañas de ordenación de las rejillas de datos.
Eliminación de gradientes en los títulos de las listas de acciones.
Además, he dejado de utilizar una clase calendario – lo siento Paco – desarrollada a medida por el control estándar de Windows. El cambio de aspecto se muestra en las siguientes imágenes de mi programa el Puchero, que es el primero que he adaptado al estilo plano.
Y tú, ¿ has adaptado tus programas al diseño plano ?
He publicado una nueva actualización de el Puchero, la 6.50.c, que corrige un error que hacía que al reindexar se añadieran registros en blanco en el fichero de ingredientes principales. Esto hacía que el autocompletado en el campo ingrediente principal de la receta algunas veces generara un error.
En la versión 6.50.c esto se corrige, pero si tienes registros en blanco en el fichero de ingredientes principales debido a este error, descargate estos dos ficheros:
ingredp.dbf
ingredp.cdx
y copialos en la carpeta c:\puchero\datos o en la que tengas indicada como carpeta de recetas en la configuración del programa. Luego arranca el programa, reindexa y listo.
Con la encuesta para programadores Harbour a punto de finalizar, tenemos casi 200 respuestas. Sin embargo, las dos entradas anunciando la encuesta han sido vistas más de 500 veces, con lo que una primera conclusión es que hay muchos más lectores de la publicación de los que han respondido la encuesta.
Cuando termine la encuesta publicaré toda la información de la misma, pero lo que sí puedo adelantar es que la diversidad de entornos/GUI/editores/herramientas que utilizamos es enorme. Yo no conozco, ni de lejos, todas las herramientas mencionadas en las encuestas, por lo que os animo a todos los lectores de Harbour Magazine a colaborar con la publicación para dar a conocer vuestras herramientas.
Harbour Magazine está abierta a colaboraciones de todos los programadores Harbour de todo el mundo que quieran publicar artículos de las siguientes categorías:
descripción de funcionalidades o características de [x]Harbour.
descripción de funcionalidades o características de los GUI para [x]Harbour.
Descripción de funcionalidades, características, ejemplos de código de librerías o funciones que hayamos creado o utilicemos habitualmente.
Descripción de funcionalidad, características o tutoriales de herramientas de programación: editores de código, IDE, editores de recursos, etc.
Descripción de funcionalidades de programas propios que puedan servir de ejemplo para otros programadores, explicando el motivo de lo novedoso de la funcionalidad y la manera de implementarlo.
Libros de programación o de temas relacionados con programación: psicología, sociología, organización del trabajo, productividad, etc.
Cualquier otro tema relacionado con programación en lenguajes xbase.
Experiencias con otros lenguajes/entornos de programación.
Puedes escribirme a mediumharbourmagARROBAgmail.com adjuntando el artículo a publicar. Si quieres convertirte en editor de Harbour Magazine escribeme para que te incorpore a la publicación.
Esta entrada se publicó originalmente en Harbour Magazine, mi publicación sobre el lenguaje de programación Harbour.
He preparado una encuesta para conocer más acerca de los programadores Harbour de todo el mundo. La encuesta me permitirá obtener información acerca de qué versión de Harbour usamos más, que tipo de software hacemos los programadores Harbour y también obtener información para futuros artículos de Harbour Magazine.
La encuesta estará abierta hasta el domingo 26 de Febrero. Por favor, si participas en algún foro sobre Harbour o alguna de sus GUI difunde la encuesta.
Esta entrada se publicó originalmente en Harbour Magazine, mi publicación sobre el lenguaje de programación Harbour.
Una de las secciones de Harbour Magazine son las entrevistas con programadores destacados de la comunidad Harbour, pretendiendo así dar visibilidad a las personas que participan activamente en el desarrollo y difusión del lenguaje Harbour. Las entrevistas se realizan y se publican en el idioma del entrevistado.
Para mi primera entrevista he elegido a Rafa Carmona, también conocido como TheFull en el mundo de la programación. Tengo el placer de conocerlo personalmente y tengo que decir que es un tipo jovial y afable, con quien puedes hablar en profundidad de temas de programación, pero además siempre tiene un hueco para hacerte reir y pasarlo bien.
Rafa, soy José Luis de Novelda, en Alicante. Estoy empezando una publicación en Medium sobre Harbour que he llanado Harbour Advisor y la tienes en https://medium.com/harbour-magazine. La publicación esta abierta a colaboraciones, si quieres publicar algo tan solo tienes que crear una cuenta en Medium y escribirme para que te añada como escritor de la publicación.
Lamentablemente, casi no tengo tiempo material , pues tengo un nene de 16 meses que me consume todo el tiempo. Te contesto, porque ya se durmió , jejeje.
Así, si quieres coger de mi blog material que ido escribiendo, te doy permiso para ello, faltaría más 😉
Hice hace un poco el tema de los threads para Harbour, por si es de interés.
Explícanos un poco tu bio, donde vives y a qué te dedicas profesionalmente.
Rafa Carmona
Vivo en un pueblo pequeño, Bigues i Riells, donde un sitio es muy conocido, Sant Miquel del Fai, aunque trabajo en Barcelona Capital.
Desde hace más de 10 años trabajo en Tesipro Solutions, y me dedico a la programación de software para hoteles, sobretodo a nivel del BackEnd, realizando interface de diversos fabricantes, desde llaves , tarificadores, y actualmente estamos en fase de test en un hotel real, de una cadena hotelera muy importante en España, de un CheckIn Express, realizado en Harbour.
Anteriormente, trabajaba en Roscas de Precisión, si , era tornero especializado en Tornillo SinFin, y realicé todo el software de la empresa, desde la facturación hasta la gestión mecánica, pero la espalda , hernia, dijo que no podía seguir ahí. ;-(
Para los que no te conozcan, coméntanos cuál es tu relación con la comunidad Harbour. ¿Cómo participas y qué opinas de ella ?
La verdad es que la comunidad de Harbour es simplemente maravillosa. Actualmente, sigo el desarrollo de Viktor 3.4, y la oficial 3.2. Tanto Prezmeck como Viktor han dado un salto de calidad increíble al proyecto, además de ser muy muy buenos maestros.
Mi último aporte fue para la versión 3.4, xmlToHash() que te permite convertir un xml en un hash , y recorrerlo sin tener que saber nada de nodes, tree, iter, y demás historias 😉
Lo necesitaba para mi webservices, así que lo programé y lo doné a la comunidad, un pequeño aporte; “De bien nacido es ser agradecido”
Actualmente estoy inmerso en un WebServices realizado en Harbour que es como una navaja suiza, hace de todo 😉 Lo que se ve , lo da el httpd de Harbour, y es rápido , muy rápido, por decir unas cifras, tenemos 21 hoteles haciendo mas de 50.000 peticiones al día desde diversos puntos, contra SQL Server, y no se ha caído ni una sola vez, y eso desde hace meses.
Y el programa de cálculos de mi antigua empresa, realizado completamente en T-Gtk , y MariaDB, y que es multiplataforma.
El mejor control de versiones, Git, y hbmk2 para compilar, eso es todo.
¿ Qué echas de menos en Harbour o en su comunidad ? ¿ Qué te gustaría que tuviera Harbour ?
Quizás a nivel de núcleo, la participación de más gente, no es bueno que solo 2 personas lleven todo, aunque también es cierto, que el nivel es tan tan alto, que es difícil encontrar un perfil como esos 2 monstruos que he nombrado anteriormente.
Más soporte para el mundo Web, sobretodo , meterle soporte a Apache sería brutal! Nos guste o no, hoy en día , y el futuro, para la web y los dispositivos móviles.
Además, el nivel de comunidad veo que se está produciendo un estancamiento en las noticias, soporte, etc, en los distintos grupos. Lo que pasa es que se ha diversificado en muchos grupos distintos, en temas de GUI, pero que mantienen un denominador común que es Harbour, pero no están interconectados entre ellos, eso es un handicap, bajo mi humilde opinión.
¿ Conoces otros entornos de programación aparte de Harbour ? ¿ Qué tipo de desarrollos has hecho en otros entornos ?
Pues también estoy ahora liado con Android, estamos haciendo un prototipo de comandera, y veremos que tal se porta, de momento se están cumpliendo las expectativas, aunque lo tengamos que rehacer una y otra vez hasta que quede perfecto en cuanto a rendimiento y optimizaciones, soy bastante maniático en el tema de rendimiento.
También en su día me puse con Delphi, hasta realice un tarificador por puerto serie! Sin tener ni idea de Pascal.
También he estado haciendo pruebas con Python, la verdad es que me gusta su sencillez.
Y lo que me gustaría es aprender Haskell, programación funcional, pero no tengo tiempo ;-(
Muchas gracias por tu atención Rafa, un saludo.
Muchas gracias a tí por esta iniciativa.
Desde aquí solo dar las gracias a todos los amigos que a lo largo de estos años he conocido gracias a Harbour.
Mi buen amigo Joaquim Ferrer, a las duras y a las maduras, seguimos en la brecha!
Master Rene Flores, mi maestro de Fivewin, aunque ahora se haya ido con la fuerza a otro lado 😉
Master Antono Linares, gracias por hacerme disfrutar otra vez por la programación, un tio cojonudo!
A mis amigos de Sevilla, Manu Exposito, un tio con un corazón que no cabe en el planeta, y a Calero, “viva er Betis!”
A Capel, a Miguel Angel Marchuet , a mis amigos de Venezuela, Riztan , Daniel, a los amigos Argentinos, Uruguayos, etc..
Siento no nombrar a todos, estaría todo la noche ;-), a todos ellos, gracias por compartir vuestro tiempo en ayudar a los demás, aunque sea solo a = a +1 , eso siempre suma, como diría nuestro buen amigo Paco García.
Ah!! Se me olvidaba, AIBA LA HOSTIA PUES, Felix Pablo, otro tío con un corazón enorme.Harbour Magazine
Esta entrada se publicó originalmente en Harbour Magazine, mi publicación sobre el lenguaje de programación Harbour.
Hubo una vez un lenguaje de programación llamado Clipper que, a principios de los 90, era un lenguaje ampliamente extendido. Su compatibilidad con los archivos en formato DBF, su facilidad de uso y capacidad para generar ejecutables que distribuir sin runtimes era muy valorada entre los programadores. Fue, sin duda, uno de los principales lenguajes de programación de la primera época de los PC. En aquellos años hubo una publicación llamada Clipper Advisor que contaba todas las novedades del lenguaje, informaba de otros productos relacionados y servía de nexo de unión a la comunidad de programadores.
Los cambios de propietario del lenguaje unida a la llegada de Windows y los entornos gráficos supusieron un declive del lenguaje, que no evolucionó durante muchos años. El compilador Harbour ha permitido seguir usando la sintaxis de Clipper, añadiendo al mismo tiempo nuevas funcionalidades para hacer de él de nuevo un lenguaje moderno.
En este nuevo contexto, Harbour Magazine nace con la finalidad de servir de medio de comunicación de la comunidad de programadores Harbour, mostrando las bondades del lenguaje, las distintas herramientas disponibles para realizar aplicaciones en entorno gráfico, los programas hechos con estas herramientas y los profesionales que las desarrollan. Para mostrar que la comunidad de programadores Harbour sigue existiendo y estando activa.
Harbour Magazine es una publicación que admite colaboraciones. Si tienes algo que contar relacionado con Harbour por favor contacta con nosotros y te explicaremos la manera de publicarlo.
A principios de año estrené un nuevo cuaderno para mi bullet journal y después de un mes de uso voy a explicar la nueva manera de utilizarlo. La libreta es de nuevo una Leuchtturm 1917 en formato A5 punteada, pero de tapa dura y color azul. Esta libreta tiene dos separadores, lo que es una ventaja para el uso que yo hago y que comentaré más adelante.
Cuaderno Leuctturm 1917
Además de mi bullet journal, en el cuaderno anoto listas de cosas que me interesan como pelis que quiero ver, libros que quiero leer o que he leido, cosas a añadir a mis programas, etc. La manera de que no se mezclen las listas con mi bullet journal es tener un índice de mis listas comenzando por el final de la libreta. Cada lista ocupa dos páginas, y el segundo marcador del cuaderno me sirve para marcar el comienzo de las listas al final de la libreta. Antes ponía las listas por mitad del bullet journal y no había quien encontrara la lista que buscaba en cada momento.
Indice invertido de las listas
En cuanto al bullet journal propiamente dicho, cada mes utilizo cuatro páginas. La primera es de seguimiento de hábitos, llevo una anotación de los días que hago cosas que pretendo conseguir como programar, estudiar inglés, cosas relacionadas con fotografía, etc. La segunda es específica de seguimiento de ejercicio físico y de planificación de las cena, que es una de las tareas que hago en casa. Esto último me sirve también de guía para realizar la compra.
Seguimiento de habitos generales y específicos.
Las dos siguientes páginas del mes son para el planning y para la habitual lista de tareas. En la lista de tareas también anoto enlaces o cosas que no entran en ninguna de las listas específicas del final del cuaderno.
Planning y lista de tareas pendiente
A continuación de las hojas del mes abro una página para al libro de no ficción que estoy leyendo y en ella anoto citas del libro que luego me servirán si quiero hacer un resumen del mismo. En enero comencé a leer Grit de Angela Duckworth y ya llevo casi medio libro leido.
Página de
En cuanto a lo que uso para escribir en mi cuaderno, después de un tiempo en que también utilizaba bolígrafos, ahora unicamente utilizo plumas o lápices. Llevo un estuche con cuatro plumas, un lápiz y un borrador.
Estuche y plumas que utilizo
Las plumas son una Twisbi Eco, una Lamy Safary umbra y dos Pilot Metropolitan. La Lamy Safary umbra tiene un tacto rugoso que la hacen muy especial, es la pluma que mas me gusta ahora mismo de las que tengo entintadas. Utilizo una tinta azul, la Pelikan Edelstein Topaz, que tengo en la Lamy y en una de las Pilot. El distinto grosor y flujo de los plumines hace que siendo la misma tinta se vea distinta en función de con que pluma escribo. La Twisbi lleva un rojo también de Pelikan y la otra Pilot lleva un color calabaza de Diamine. El lápiz es un Faber Castell Grip 2001 que tengo la suerte de poder comprar en Novelda.
Todo me cabe perfectamente en el estuche y queda todavía algo de sitio libre.