sábado, 25 de junio de 2022

2019 a 2022

 Escribiendo desde Medellín...


¡Muchos días han pasado desde mi último post!; pero hoy, exactamente el sábado 25 de Junio del 2022 he tomado la decisión de escribir algo al respecto.


Personalmente, he tenido muchos éxitos y algunos fracasos, pero me hace bien hablar de los fracasos primeramente. 

Uno de los fracasos que sufrí, fue no seguir con mi empresa MIDESATECH, incluso tuve un website con el siguiente www.midesatech.net.co, el cual en su momento me dio muchos frutos, unos de ellos fue con clientes que requerian cambios o mejoras con Openbravo POS, y algunos con aplicaciones específicas, como la transmisión de datos entre equipos de análisis quimicos (resultados de análisis de sangre).


Ahora bien, uno de los éxitos que tuve, fue incrementrar mi nivel de inglés y con ellos poder ingresar a una empresa de alto nivel; si, alto nivel,  Globant.

 

En Globant aprendí mucho y me sentí realizado, porque estuve intentando varias veces ingresar y en los procesos de reclutamiento me dijeron que por el nivel del inglés no podía continuar; fue frustantante a veces; pero luego ,cuando lo pude lograr (por la ayuda y misericordia de aquel que nos da la inteligencia, si, ese mismo, ¡Jesús!) fue ¡GRATIFICANTE!


Luego de pasar por Globant, llegaron otras oportunidades como ADDI, en donde también aprendí bastante y conocí a mas gente de Colombia; colombian people como digo a veces. 

 

En ADDI tuve muchas experiencias, conocí otra forma de trabajo y usé otras tecnologías que no estaban mi experiencia, pero considero que no logré acoplarme al 100%, y en ocasiones recibí feedback como "¡Esperaba mas de ti, por el seniority que tienes!. Este concepto se puede explicar mas a detalle en otro POST,  considero que a veces pensamos que las cosas se pueden hacer rápidamente o en menor tiempo cuando tienes un SENIORITY como SENIOR, pero no todo recae sobre ese nivel que tienes. Las heridas de guerra (en desarrollo) te hacen entender que un proceso de onboarding "adecuado", facilita la integración, abstracción y conocimiento del negocio y arquitectura.


Bien, ahora me encuentro trabajando en EPAM ANYWHERE, y me siento muy  bien, porque estoy trabajando con un equipo directamente de USA, con otra forma de trabajar y en un proyecto que es relevante: www.atlassian.com


¡Nos leemos luego!





viernes, 5 de abril de 2019

OpenbravoPos: Atributos en productos


Openbravo POS cuenta con una funcionalidad que permite agregar atributos a los productos en inventario.

Con la funcionalidad de atributos en los productos, se puede evitar el proceso de agregar un campo mas a la tabla "PRODUCTS".


Para agregar atributos a un producto se debe realizar lo siguiente:

--- El formato a utilizar para declarar atributos es XML:







Para este ejemplo, el producto tendrá un atributo llamado "RECARGA" con un valor "1".

--- Se agrega el formato XML en la pestaña "Atributos" del producto:






























---En código, solamente se tiene que llamar al método "getProperty()" del objeto "ProductInfoExt":

      ProductInfoExt oProduct
      String sPropItem = oProduct.getProperty("RECARGA");   


Hasta la próxima x)


midesatech@gmail.com
@_jdepaz




jueves, 4 de abril de 2019

Integración de pago con tarjeta MIFARE en OpenbravoPOS.  

La tarjeta MIFARE se utiliza como medio de pago utilizando un sector como SALDO MONEDERO. 

Se puede personalizar para que solamente se puedan comprar algunos productos o bien restringir la compra de productos por categoría.

Para este proyecto se utilizaron las siguientes herramientas:


  • OpenbravoPOS (Java y MySQL)
  • Tarjetas MIFARE de 1k
  • Lector de tarjetas inteligentes ACR1251U

 midesatech@gmail.com














miércoles, 19 de diciembre de 2018

Servicio RESTful utilizando Java y WildFly

Como hay poca información en español sobre el uso de WildFly, tomé la determinación de realizar un tutorial y dividirlo en 3 partes.

La primera parte es sobre:


  • Configuración e instalación del servidor de aplicaciones WildFly
  • Configuración del servidor en NetBeans IDE 8.2 
  • Construcción de un servicio web básico y despliegue en el servidor.

La segunda parte será:

  • Utilizar el servicio web creado en la I parte para agregar las operaciones RESTful
  • Utilizar un cliente RESTful y consumir el servicio.


La tercera parte será:

  • Agregar autenticación al servicio web utilizando el tipo "token" -JWT-



sábado, 31 de diciembre de 2016

Aplicación en Android para utilizar NFC

Tengo un equipo Sony Xperia M C2005 y realicé un ensayo para probar la funcionalidad NFC con tarjetas inteligentes.


Configuración máxima resolución pantalla en Linux

En ocasiones la resolución de la pantalla en Linux no es la mayor. Utilizando el gestor de pantallas (Display) puede resolver el inconveniente, pero si no se puede por ese medio toca realizar la configuración por línea de comandos.

lunes, 7 de diciembre de 2015

Habilitar puerto UART en Beaglebone Black

Aprovechando que por aca en Medellín ya nos amaneció y los vecinos celebran el "día de las velitas" siendo las 01:32 a.m.


Con respecto a la versión 7.9 de Debian para Beaglebone Black, sólamente el puerto UART0 ("/dev/ttyO0") está habilitado por defecto, entonces, si necesitamos trabajar con el puerto UART1 debemos habilitarlo siguiendo los siguientes pasos: (una imagen vale mas que .... etc):


Beaglebone Black Rev C:

Paso 1:
Para este caso la versión que tengo es la siguiente:




Paso 2:
Lista de archivos "Device Tree Overlay"



Paso 3:
Modificar el archivo "uEnv.txt" que se encuentra en la ruta "/boot" y habilitar "BB-UART1", es decir, descomentar la línea:

 "cape_enable=capemgr.enable_partno"

y agregarle "BB-UART1" (realizar esta tarea con derechos de "root" por supuesto, usar cualquier "editor" al gusto del cliente), quedando así:

cape_enable=capemgr.enable_partno=BB-UART1




Paso 4:
Reiniciar el equipo.

Paso 5:
Verificar la disponibilidad del puerto UART1, es decir, del dispositivo "ttyO1" con un simple:

   ls  -all  /dev/ttyO*




Y listo, eso es todo, a probar y verificar que el puerto UART1 ("ttyO1") ya se encuentra habilitado para nuestro uso.


Hasta luego.

@_jdepaz



lunes, 10 de noviembre de 2014

Free Pascal en BeagleBone Black Rev. C

Hola a todos, BeagleBone Black Rev C. es una placa con procesador Arm Cortex A8, las demás descripciones las pueden encontrar aca:  http://beagleboard.org/black

Como tal, en la página del fabricante se encuentran los ejemplos y codigos correspondientes a lenguajes como C++, Java, Python, entre otros.

Para Free Pascal es muy poco lo que se encuentra. Hay un ejemplo en C++ para encender y apagar un LED en específico, ahora realicé el respectivo ejemplo pero en Pascal:

Program leds;
{$mode objfpc}

Uses
 Sysutils;

Var
 LEDBrightness:TextFile;
 it:Integer;
Begin
 WriteLn('LED Flash Start');
 Assign(LEDBrightness, '/sys/class/leds/beaglebone:green:usr0/brightness');

 For it:=1 To 10 Do
 Begin
  Append(LEDBrightness);
  Writeln(LEDBrightness,'1');
  CloseFile(LEDBrightness);
  Sleep(1000);

  Append(LEDBrightness);
  Writeln(LEDBrightness,'0');
  CloseFile(LEDBrightness);
  Sleep(1000);
 End;

 WriteLn('LED Flash End');
End.


 Los materiales utilizados son:

 En el video podrán observar el funcionamiento (utilizo "sudo" porque el usuario no tiene permisos suficientes):

http://youtu.be/O9wvQYW5v-g

Hasta pronto

@_jdepaz

viernes, 17 de octubre de 2014

Crear DLL en Visual C++ para consumir en C#

Claro que si, como su título lo indica, la raíz de este tutorial es porque hay muy poca información en español sobre como realizar este tipo de tareas.

Entonces, me veo en la necesidad de hacer algo útil y que sirva para aquellos que no dejamos de utilizar el lenguaje C/C++ para nuestras tareas rutinarias.




Hasta pronto

@_jdepaz
desarrollo.escuintla@gmail.com

sábado, 17 de mayo de 2014

FriendlyARM Mini2440 Ubuntu Linux 10.04.4

FriendlyARM es un equipo electrónico tipo mini PC que viene integrado con un procesador ARM, en este caso el modelo Mini2440 tiene un procesador ARM 9.

¿Para qué FriendlyARM?

En la industria, en ocasiones se requiere utilizar equipos autónomos para ciertas tareas en donde un computador personal de escritorio o portátil no tiene espacio, es allí donde esto equipos conocidos como "mini-pc", los cuales tienen varios puertos de comunicación (USB, Ethernet, Serial) son los adecuados para tales espacios y tareas específicas.

FriendlyARM varias características, entre la cuales están que correo bajo Linux y es programable mediante aplicaciones desarrolladas en C++ utilizando el compilador "arm-linux-gcc" y utilizando las librerías de QT (Qtopia) para interfaz gráfica.

El manual que estoy entregando contiene los primeros pasos para realizar la instalación del SDK en Ubuntu Linux 10.04.4.

Luego, seguirá la aproximación para desarrollar aplicaciones y probarlas directamente en el dispositivo.


http://www.slideshare.net/JDEPAZ/friendlyarm-mini2440-ubuntu-1004

Hasta la próxima

José de Paz
@_jdepaz
desarrollo.escuintla@gmail.com


jueves, 5 de diciembre de 2013

Lenovo Ideapad S210 Touch - falla en teclado y solución - keyboard failure

Compre este equipo en Ktronix San Diego en el mes de Noviembre-2013:

Lenovo Ideapad S210 Touch
Intel Celeron 1007U
2Gb RAM; 500Gb HD
11.6' multitouch
2 puertos USB 2.0
1 puerto HDMI
1 puerto RJ45
1 puerto lector tarjetas SD
Windows 8


y opino lo siguiente:

Al preguntarle al vendedor sobre las celdas de la bateria, me dijo que lo mínimo es de 4 celdas y el máximo es de 6. Con el uso pude verificar que la bateria se descarga rápidamente (1 a 1.5 horas), revisando las especificaciones técnicas veo que dice que la bateria es de 3 celdas, entonces por el lado de la batería de 1 a 10 le doy un 5.

Ahora, resulta que no había utilizado todas las teclas (aunque desarrollo software no las había utilizado) y cuando quise usar las teclas "<>" (que estan en una misma tecla) y la tecla "} ]" (que también estan en una misma tecla) resulta que no funcionan, probe todas las teclas y únicamente esas dos no funcionaban.

Y resulta que además, como viene con 2gb de RAM, cuando la compre le pregunte al vendedor si yo podria agregarle más memoria, (4gb) y me dijo que si, que no habia problema, entonces le compre 4gb de RAM y me doy cuenta tambièn que el equipo sólo tiene un slot para memoria; en este punto doy una puntuación de 4, pero bueno le cambie la memoria por una de 4gb, entonces revisando las políticas de cambio de Ktronix, leí que dicen que el producto pierde garantía cuando se manipula, destapa o se violan los sellos, entonces al presentar el fallo en las teclas "<> }]" pense que por ese lado ya no podría realizar ningún cambio.

Buscando en la red encuentro que estos equipos tienen un fallo técnico en el teclado y para solucionarlo se debe aplicar una actualización del BIOS, con mis conocimientos de ingeniería de sistemas, este paso de actualizar BIOS no era nada del otro mundo al quererlo aplicar, descargue el archivo para actualizar el BIOS y al reiniciar el equipo, las teclas "<> }]" funcionaron correctamente.

Ahora bien, por aca el enlace y los pasos para descargar y ejecutar la actualización del BIOS: Foro sobre el reporte del fallo: Sitio de descarga de archivo para actualizar BIOS:


Foro del tema


Sitio para descarga del path para el BIOS

jueves, 27 de junio de 2013

OpenBravo POS para control de parqueo de vehiculos

En estos días, picando algo de código Java, me ha tocado realizar algunas modificaciones al sistema OpenBravo POS para adaptarlo a un control de parqueo de vehiculos y motos. Pues bien, después de estudiar el código y realizar las depuraciones pertinentes (mas de una semana), logre realizar las modificaciones y listo, he aqui las evidencias:





La imagen anterior, muestra cuando el usuario selecciona un producto e inmediatamente se muestra un dialogo para que ingrese la placa y determine la fecha y hora de ingreso.





Luego que el producto es seleccionado e ingresado los valores de la placa y la fecha y hora de ingreso, en el panel de los tickets, se muestran los valores, estando pendiente la fecha y hora de salida.





Luego, el usuario debe presionar el botón para editar la línea correspondiente (botón con ícono lápiz), y es alli donde se debe determinar la fecha y hora de salida para calcular el tiempo a cobrar.





Y finalmente el ticket impreso con los datos del vehiculo y la fecha y hora de ingreso y salida.

Hasta pronto..

José de Paz

@_jdepaz

desarrollo.escuintla@gmail.com

lunes, 3 de septiembre de 2012

SQL Server Compact is not intended for ASP.NET development.

En efecto, al utilizar una base de datos tipo "Microsoft SQL Server Compact Edition", en una aplicación "ASP.NET", al realizar la conexión, se muestra el siguiente error:



La solución es la siguiente: Agregar la siguiente línea de código: AppDomain.CurrentDomain.SetData("SQLServerCompactEditionUnderWebHosting", true)



La fuente de está linea se encuentra en el siguiente enlace de Microsoft, acerca de las consideraciones de implementación:

Consideraciones de implementación



Hasta pronto: @_jdepaz

lunes, 23 de julio de 2012

Conexiones inalámbricas en Windows Server 2008 R2 x64

Con el aprendizaje continuo y puesta en desarrollo del ambiente para Biztalk 20120 por asuntos laborales, por cuestiones de políticas en la seguridad del sistema, en Windows Server 2008 R2 la habilitación de conexiones inálambricas hacen parte de las "Características del Sistema", por lo tanto hay que agregar esta característica. Para agregarla, tenemos que hacer uso del "Administrador del servidor". El "Administrador del servidor" se encuentra entre las "Herramientas administrativas"
Luego, después de seleccionar la opción "Características", en la parte lateral derecha se muestran las características instaladas, y lo que debemos hacer es seleccionar la opción "Agregar características":
Luego, después de seleccionar "Agregar características", entonces procedemos a buscar la característica "Servicio WLAN" y seleccionamos el checkbox respectivamente y luego presionamos el botón "Instalar", y listo, esperamos a que se realicen los cambios y luego de reiniciar el servidor tendremos habilitada la opción de conectarnos a las Wireless LAN (WLAN).
¡ Hasta pronto ! @_jdepaz

miércoles, 15 de febrero de 2012

IBM Websphere Message Broker

Así es, dentro de poco estaré haciendo mi presentación sobre está tecnología que nos presenta IBM..... pronto

miércoles, 25 de enero de 2012

25 de Enero de 2012

Si, hoy es 25 de Enero de 2012, una fecha recordable, porque también me recuerda un 24 de Enero de 1999.

Pero hoy, estoy de aniversario, si, estoy cumpliendo un año de estar viviendo en Medellín Colombia.

Hace un año, con tristeza dejabá Guatemala, principalmente Escuintla, mi familia en el aereopuerto La Aurora rompía en llanto, y yo también.

Hoy haciendo un recordatorio, como duelen las despedidas, pero también como son de buenas las ilusiones.

Los primeros seis meses fueron de altibajos, que a los tres meses de estar en Medellín Colombia habiamos decidido regresarnos a Guatemala, fue muy dificil quedarse sin un centavo, en realidad fueron dias muy dificiles.

Pero en medio de esos altibajos Dios no nos desamparó, y nuestra familia en Escuintla tampoco, mi papá y mamá siempre estuvieron alli, luego de ese dolor y de esa desilusión vino la mano de Dios y nos ayudó a pasar ese desierto y a llenarnos de bendiciones.

Ahora, hoy 25 de Enero de 2012, estoy feliz y con ganas de seguir adelante, con la bendición de nuestro Señor Jesús.

Recuerdo a todos mis seres queridos, a mis amigos y los que fueron mis compañeros de trabajo.

miércoles, 19 de octubre de 2011

Falleció el Ing. Gerado Moliné (Dorime)



El día Martes 18 de Octubre de 2011 falleció el Ing. Gerardo Moliné (Dorime) (1938-2011) a causa de una enfermedad.

Fue mi jefe cuando trabajé en Siderúrgica de Guatemala, S.A. Planta Escuintla, a veces tuve la oportunidad de discutir duramente con él sobre temas informáticos, peleas muy amenas como tal argentino que era, aunque ya tenía su cédula Guatemalteca, no se aceptaba como Guatemalteco.

Siento que la gente que lo rodeó en sus últimos días está triste y con dolor por su partida.

De él se aprendió mucho, fue terco, y nunca se dejó ganar una pelea verbal, siempre las cosas que uno le contaba, él decia que ya las había hecho, igual que Kiko nunca le gustaba prestar su pelota cuadrada.

Aunque nunca me dió la oportunidad de entrarle como jefe de turno, sabrá el por qué no quiso (siempre me inventaba cosas), pero me ayudo en muchas ocasiones cuando me enferme, e igual al final de mi despedida el 10 de Enero de 2011 le dije que le agradecía por la oportunidad que me dió cuando inicié a trabajar en el depto. de Control de Calidad, a lo cual me respondió que eso se ganaba con lo que uno demostraba en el trabajo.

A los demás amigos que están en esta foto les deseo lo mejor y gracias por su compañerismo:

Mayra Méndez.
Otto Pérez.
Juan Castro.
Roberto de León.
Miguel Cerón.
Erick Gómez.
Marcos Gutierrez. (Maestro Rochi)
Gustavo (no me acuerdo del apellido)
Gerardo Moliné. (Q.E.P.D) 1938-2011
Edy Sequen, fue el que tomo la foto.


Esta foto fue tomada el 10 de Enero de 2011.

sábado, 6 de agosto de 2011

Guatemala clasifica a octavos en Mundial Sub-20 2011

Un partido muy intenso, los jugadores de Croacia salieron con todo, pero la fuerza solo les alcanzó para los primeros quince minutos del juego, Guatemala se mostró optimista y salió a buscar el gol. Durante el primer tiempo Guatemala tuvo mayo control del balón, con algunas llegadas a la portería de Croacia, pero sin anotación alguna.

El gol de Guatemala llegó al minuto 81, con anotación de Marvin Ceballos, el gol mas esperando por toda GUATEMALA.

Creo que Guatemala tuvo la oportunidad de anotar mas de un gol, la intervención de Bonilla fue muy buena, luego del gol Croacia quiso empatar el juego, pero Guatemala tuvo mas táctica y fue mas preciso, GUATEMALA merecía ganar, y así fue.

Hoy 6 de Agosto del 2011, desde Medellín Colombia escribo esto para la historia.
Orgullosamente GUATEMALTECO.

Algún otro CHAPIN celebra conmigo?





sábado, 18 de junio de 2011

Guatemala en Colombia !!!! Mundial Sub-20

Iniciando este año 2011, tome la desición junto a mi familia de mudarnos de Escuintla Guatemala hacía Medellín Colombia.

Y para darle un valor agregado, la selección Sub-20 de nuestra querida Guatemala clasifica al mundial de fubtol Sub-20, el cual se llevará a cabo en Colombia.

Es la primera vez que Guatemala clasifica a un evento mundial, como lo es el Mundial de Futbol Sub-20, es una alegría inmensa y gratificante para todos nosotros, para toda GUATEMALA, de los que estan dentro y de los que estamos fuera de nuestra querida tierra.

Buscando información sobre mas Guatemaltecos residentes en Colombia, encontre a varios, pero todos viven en Bogotá, y en esta búsqueda no encontre a alguno (hasta el momento) que viva aca en Medellín, es por ello que he abierto este post, y que pueda servir para aquellos connacionales que de pronto lo encuentren y podamos comunicarnos y asi formar en un futuro una comunidad Guatemalteca aca en Medellín.

Doy gracias a mis padres por enviarnos las camisolas de la selección de Nuestra Guatemala!

Si eres de Guatemala y estas en Medellín, envíame un comentario y dirección de correo electrónico para comunicarnos.










jueves, 2 de junio de 2011

Innovation Day -ThinkBIG- de Microsoft, ciudad de Medellín

Medellín, 02 de Junio/2011, Hotel Dann Carlton:


Con respecto a este evento, en el cual David Ramirez ( @dramirez2009 ) también asistió, quiero comentarles que: el evento estuvo aceptable, inicio a las 08:00 a.m., con una charla de bienvenida por parte de Alan Colmenares ( http://www.tropicalgringo.com ), sobre emprendimientos e ideas, y algo a lo que él llama: "Innovación Digital", que a cualquiera de los que asistimos, nos encendió el bombillo al escuchar este concepto y ejemplos mostrados.

Luego vino una preliminar sobre Windows Azure, por parte de Walter Novoa (@warnov); que fue una introducción básica sobre esta plataforma, ya que después de ello vino el primer tiempo de receso.

Sobre esta charla, pues; ya en otras ocasiones ya habia tenido la oportunidad de presenciar una, y por lo que expuso @warnov, podría decir que ya tenía el conocimiento, entonces con David (@dramirez2009), tomamos la determinación de trasladarnos al salón siguiente; en el cual Hugo Zapata estaría presentando algo sobre ASP.NET MVC 3

Entonces con respecto al tema de ASP.NET MVC 3: primero tuvimos la oportunidad de ver y escuchar conceptos sobre lo nuevo que esta ofreciendo Microsoft, dejando atras el uso de Webforms, y cambiando el uso de XML por el formato JSON, y como con esta nueva versión de ASP.NET podemos crear las distintas vistas para ser visualizadas en cualquier dispositivo, como puede ser la misma PC, una tablet, un teléfono movil y algun otro dispositivo el cual nos permita navegar.

Quiero destacar que en este tipo de presentaciones, influye mucho la capacidad del orador y/o presentador para transmitir; ya que en ocasiones como esta, se habla mucho y se explica poco, y mas aún, hay poca retroalimentación del público hacia el orador, faltó dar a cada asistente el respectivo material explícito sobre el tema, y al final hubieron dos preguntas que no fueron contestadas.

El uso de JSON (JavaScript Object Notation); para mi caso, no es nuevo, desde el 2009 en una presentación de RAD Studio 2010 (Embarcadero) en Guatemala, tuve la oportunidad de presenciar unos ejemplos.

También se hablo sobre el motor RAZOR (Microsoft Razor Template Engine) o la sintaxis RAZOR; soportada ahora en esta versión de ASP.NET, para los que asistieron al evento realizado en fechas anteriores; por la comunidad SenaGeeks, recordarán sobre esto.

Para terminar puedo concluir en que: Microsoft hace posible por llevar y transmitir, y a la vez promocionar sus productos de una forma muy buena, espero que sean mas eventos como este y que puedan corregir los faltantes con respecto a la forma mostrar/enseñar sus nuevas tecnologías.

Vuelvo y repito, faltó brindar la información respectiva para conceptualizarse y puesta en marcha de ASP.NET MVC 3, pero en el sitio web www.codeplex.com pueden encontrar ejemplos y tutoriales sobre esta nueva versión, la cual ya viene incluida en VStudio 2010.



PD: creo que me haré parte de Microsoft BizSpark, me gusto la ídea.



Saludos



José de Paz

@_jdepaz