Peticiones Restful en Qt5

qt

Saludos, hoy escribo para compartir una pieza de código que me ha sido muy útil al desarrollar aplicaciones con la librería Qt5 y que desarrolle hace menos de un año.

Esta clase se encarga de hacer peticiones Restful contra servicios web y puede recibir y enviar objetos y arreglos JSON.

Para hacer peticiones a servicios web utiliza los métodos:

  • Get
  • Put
  • Post

Si mas les dejo el enlace al repositorio donde reposa el código.

Clase Restful

Anuncios
Publicado en Uncategorized | Etiquetado , , , , , | Deja un comentario

Bjarne Stroustrupen en la CppCon 2015

Este video lo encontré en el canal de Youtube CppCon y realmente me gusto. En el vemos al creador de C++ explicando una guía de estilo para poder programar en un estilo moderno, seguro y de alto nivel.

La guía de estilo se encuentra en este enlace Github.

Espero que les sea de utilidad.

Publicado en Uncategorized | Etiquetado , , | Deja un comentario

[Solución]: Puedo hacer ping a cualquier pagina, pero no puedo navegar

Saludos a tod@s, hoy quiero escribir acerca de un problema que vengo padeciendo losultimos dias con mi laptop y el cual se habia convertido en un dolor de cabeza.

Aprovecho para decir que mi sistema operativo es Xubuntu 14.04 de 32 bits.

Descripción del problema:

Al encender mi computadora todo parecía normal y el icono del indicador de conexión a red mostraba que estaba conectado a mi red WiFi, pero al abrir cualquier navegador no podía conectarme a ninguna pagina, ni siquiera la interfaz de configuración de mi router (192.168.1.1), pero al abrir el terminal e intentar hacer ping a cualquier pagina parecía no haber problema, incluso podía hacer ping a mi router.

Para verificar que podía estar pasando deje al terminal haciendo ping a cualquier pagina y abrí Firefox (el cual lo tengo configurado para guardar las pestañas de la sesión anterior y siempre son varias), inmediatamente puede ver como el tiempo de devolución de los paquetes subía y se empezaban a perder paquetes en la transmisión.

Al principio creía que era un problema con el router, por lo que cambie la configuración y lo reinicie durante unos días; luego pensé que era la tarjeta de red de mi laptop por lo que decidí utilizar un dongle usb para conectarme, pero el problema persistía.

Luego de tantos intentos decidi buscar el internet y encontré la solución en ubuntuforums.com XD.

Solución:

Abre un terminal y escribe el comando:

sudo ifconfig | grep MTU

Al hacer esto deberías poder ver el valor MTU de tu tarjeta de red inalámbrica; este valor debería de ser 1500 por defecto. Luego de verificar el valor escribe

ping [pagina de tu preferencia] -c 1 -s [valor MTU] -M do

Cambias [pagina de preferencia] por cualquier pagina y [valor MTU] por tu valor MTU, por ejemplo:

ping google.com -c 1 -s 1500 -M do

Esto podría devolver una de tres respuestas;

  1. ping: local error: Message too long, mtu=1472
  2. 1 packets transmitted, 0 received, +1 errors, 100% packet loss, time 0ms
  3. 1 packets transmitted, 1 received, 0% packet loss, time 0ms

Si obtenemos la tercera el valor MTU no es el problema y debemos verificar otra vez el problema de conexión.

Si por el contrario nos devuelve la primera o la segunda respuesta debemos bajar el valor de nuestro MTU,para eso debemos buscar un valor MTU que nos sirva probando con el mismo comando y disminuyendo el valor en cada intento, por ejemplo:

ping google.com -c 1 -s 1492 -M do

Y vamos reduciendo el valor hasta obtener la respuesta numero tres (yo reduje el valor de 8 en 8 hasta que encontré uno que me funcionara).

Luego de encontrar el valor solo debemos configurar nuestras opciones de red para que este sea el valor por defecto, podemos hacer de dos formas:

  1. En el terminal escribimos:

sudo ifconfig [interfaz de conexión] mtu [valor MTU]

Esto nos permite cambiar el valor MTU de una interfaz en especifico, yo utilice la interfaz wlan0, pero hay que verificar cual es la que utiliza su tarjeta de red inalámbrica; algunos ejemplos son eth0, eth1, wlan0, wlan1, usb0, etc.

  2.         La otra forma es dar click derecho a nuestro icono de red en el área de notificación y abrir la configuración de redes, una vez allí elegir la red que deseemos editar y buscar la opción MTU, asignar el valor y aceptar.

Una vez hecho esto deberíamos poder abrir cualquier navegador y acceder a cualquier pagina que queramos.

Espero que les haya gustado este tutorial y que les haya servido. Hasta la próxima XD

Creditos para SecretCode que propuso esta solucion en el siguiente hilo.

Publicado en Tutoriales | Etiquetado , , , , | Deja un comentario

Nuestra Participación

3erCNC

Aunque un poco tarde, hoy quiero hablar acerca de nuestra participación en el 3º Congreso Venezolano de Ciencia, Tecnología e Innovación 2014; en él pudimos presentar nuestro proyecto Alfredo (Vehículo Terrestre de Operación Remota). Permitanme decir que fue una experiencia retadora, ya que fue nuestro primer evento de este tipo y conllevó a un mes de trabajo sin descanso pero que al final rindió frutos, algunos inesperados.

IMG_20141128_152825

El día de nuestra exposición fue el sábado 29 de noviembre, llegamos temprano al Teatro Teresa Carreño en Caracas y empezaron a llegar los otros expositores; ese día se presentaron 488 carteles, cada uno representando una investigación o un invento diferente en una de las siguientes áreas: Seguridad y Soberanía Alimentaria, Desarrollo Industrial, Ciencias Exactas y Tecnología Información y Telecomunicaciones; cabe destacar que el congreso inició el jueves 27 de noviembre y cada día se presentaban áreas distintas, es decir, se presentaron cerca de 2000 carteles en tres días; este hecho me gusta interpretarlo como una Venezuela que tiene un gran potencial Científico Tecnológico.

IMG_20141128_152833

Luego de pasar por el proceso de registro con los organizadores, procedimos a montar nuestro stand, el cual constaba del cartel y del prototipo: Alfredo. No pasó mucho antes de que las personas empezaran a acercarse para hacer preguntas, ¿Cómo funciona?, ¿Sirve para tal o cual tarea?, ¿Piensan producir mas?, y aunque la mayoría de los que nos preguntaban eran otros expositores, eso lo hacía aún mas importante; habíamos logrado crear interés en la comunidad científica que estaba ahí reunida, era como si nos dieran una cálida bienvenida al mundo de la ciencia venezolana y no les voy a mentir: se sintió bien.

IMG-20141229-WA0006

Al finalizar el evento nos retiramos con un buen sabor de boca, conociendo nuevas personas y con esperanzas reforzadas sobre nuestro trabajo. Por esto quiero agradecer a Magally Lira Cornet, mi madre, que estuvo trabajando tras bambalinas en el desarrollo del prototipo, a Daniel Ortiz Lira, mi hermano y el diseñador del cartel y del proyecto, Meng Ting Chi, proveedora de la logística para la exposición, y por último a los otros expositores que nos dieron sus palabras de apoyo y esperanza.

IMG-20141229-WA0001

Publicado en Eventos | Etiquetado , , , | Deja un comentario

Bienvenidos

Saludos a tod@s, gracias por pasar por DisIng Lab, un lugar donde encontraran proyectos tecnologicos que espero les parezcan interesantes. Pero antes de empezar permitanme presentarme. Mi nombre es Antonio Ortiz y soy un Ingeniero de Sistemas Venezolano entusiasta de la investigación, GNU/Linux, el software libre y el desarrollo tecnológico; siempre estoy probando cosas nuevas y eso me ha llevado a idear algunos proyectos que creo valen la pena que se conozcan, es por eso que he decidido crear este blog y hacer públicos algunas de las cosas que he aprendido.

Por hoy me despido, pero los invito a revisar el sitio donde encontraran unos de mis proyectos.

Hasta la próxima.

 

 

Publicado en Uncategorized | Deja un comentario