He comenzado mas proyectos de los que puedo contar con una mano... y terminado menos de los que me gustaría :( pero bueno, una vez mas estoy empezando unos proyectos... conseguí un trabajo interesante y ahora tengo que manejar tecnologías moviles (Android e iOS) junto con Vuforia(una plataforma de desarrollo de realidad aumentada) y Unity 3D.
Espero estar escribiendo un poco mas seguido para ir dejando una constancia de mi avance, que en algún momento le sirva a alguien mas.
Delirios de un Aprendiz de Programador
martes, 1 de abril de 2014
martes, 11 de febrero de 2014
Cursos.... calentando un poco. MongoDB University
Bueno comencé unos cursos en linea y gratis... se miran interesantes, por el momento creo que abarque mas de lo que puedo apretar, y por esto batallare para avanzar con los cursos.
El primero es de MongoDB ya saben por que esta de moda, al menos en mi mundo, las bases de datos NOSQL el enlace para inscribirse es MongoDB University son varios cursos, mongodb para java y node,js entre otros, por el momento estoy en el curso básico "MongoDB for Developers" la idea es crear una aplicacion con python, bottle, pymongo y mongodb para aprender sobre mongodb.
El primero es de MongoDB ya saben por que esta de moda, al menos en mi mundo, las bases de datos NOSQL el enlace para inscribirse es MongoDB University son varios cursos, mongodb para java y node,js entre otros, por el momento estoy en el curso básico "MongoDB for Developers" la idea es crear una aplicacion con python, bottle, pymongo y mongodb para aprender sobre mongodb.
Me inscribí en otros dos... no creo poder terminarlos pero el intento se hará.
lunes, 27 de enero de 2014
Recorrido Virtual con OpenNI 1.5, Unity y Kinect
Como ya escribi en una entrada anterior, un amigo y yo estuvimos trabajando sobre un proyecto que nos permitiera titularnos, un proyecto que involucraba NUI (Interfaces Naturales de Usuario, por sus siglas en ingles) y Mundos Virtuales, el cual fue titulado "Recorrido Virtual controlado por Interfaz Natural utilizando Microsoft Kinect" el titulo es descriptivo, para mi gusto. Como parte de los que nos pidieron todo el entorno del Recorrido Virtual tenia que ser desarrollado por nosotros.
A continuación, un vídeo de como quedo el Recorrido Virtual.
La aplicacion esta compuesta por el Mundo Virtual(MV) y por la Interfaz Natural, proporcionada por el Kinect.
La mayoría de las tecnologías, si no todas, son tecnologías Open Source o en su defecto con licencias permisivas. Para poder realizar el MV fue necesario la creación de los objetos virtuales, para esto usamos el Software de Modelado 3D Blender, (BlenderGuru y CGCookie, fueron comunidades donde aprendimos mucho). Una vez se tuvieron los objetos virtuales, se procedio a montar el MV con su física, para este fin decidimos usar el software para la creación de videjuegos Unity 3D, esto por el hecho de que Unity proporcionaba buena compatibilidad con la librería del Kinect que habíamos decidido usar.
Para implementar la Interfaz Natural usamos el framework OpenNI en su version 1.5, este framework permite interpretar los datos captados por el sensor. OpenNI proporciona API's en distintos lenguajes, entre ellos C#, que era el que nos interesaba, ya que Unity soporta el desarrollo de scripts en este lenguaje.
Una vez teniamos el MV y podiamos leer los datos del sensor, se procedio a desarrollar algoritmos que permitieran convertir los datos captados, en interacciones con el MV. El desarrollo de estos algoritmos puede ser muy complicado, pero poniendolo de manera sencilla, lo que mayormente se hizo fue usar reglas de 3 simples, que nos permitieran convertir cambios en coordenadas en el mundo real a cambios y transformaciones en el MV.
A grandes rasgos ese fue nuestro proyecto de titulacion, el codigo lo pueden encontrar aqui. tambien se pueden descargar ejecutables de Windows desde aqui.
El proyecto quedo desactualizado ya que cuando lo finalizamos, OpenNI libero su version 2. y dejo de dar soporte a la version 1... espero poder meterle mano pronto.
A continuación, un vídeo de como quedo el Recorrido Virtual.
La aplicacion esta compuesta por el Mundo Virtual(MV) y por la Interfaz Natural, proporcionada por el Kinect.
La mayoría de las tecnologías, si no todas, son tecnologías Open Source o en su defecto con licencias permisivas. Para poder realizar el MV fue necesario la creación de los objetos virtuales, para esto usamos el Software de Modelado 3D Blender, (BlenderGuru y CGCookie, fueron comunidades donde aprendimos mucho). Una vez se tuvieron los objetos virtuales, se procedio a montar el MV con su física, para este fin decidimos usar el software para la creación de videjuegos Unity 3D, esto por el hecho de que Unity proporcionaba buena compatibilidad con la librería del Kinect que habíamos decidido usar.
Para implementar la Interfaz Natural usamos el framework OpenNI en su version 1.5, este framework permite interpretar los datos captados por el sensor. OpenNI proporciona API's en distintos lenguajes, entre ellos C#, que era el que nos interesaba, ya que Unity soporta el desarrollo de scripts en este lenguaje.
Una vez teniamos el MV y podiamos leer los datos del sensor, se procedio a desarrollar algoritmos que permitieran convertir los datos captados, en interacciones con el MV. El desarrollo de estos algoritmos puede ser muy complicado, pero poniendolo de manera sencilla, lo que mayormente se hizo fue usar reglas de 3 simples, que nos permitieran convertir cambios en coordenadas en el mundo real a cambios y transformaciones en el MV.
A grandes rasgos ese fue nuestro proyecto de titulacion, el codigo lo pueden encontrar aqui. tambien se pueden descargar ejecutables de Windows desde aqui.
El proyecto quedo desactualizado ya que cuando lo finalizamos, OpenNI libero su version 2. y dejo de dar soporte a la version 1... espero poder meterle mano pronto.
domingo, 26 de enero de 2014
La Lista.
Todos tenemos deseos de aprender, hacer o comprar cosas, esta es una breve lista de las cosas que me gustaría tener, o aprender todas ellas relacionadas con la tecnología:
Por Aprender:
Por Tener:
Por Aprender:
- C
- C++
- Vim
- Bash
- Android
- iOS
- Windows Phone
- JavaScript
- Python
- Vision por Computadora
- Apache Cordova
- WebSockets
- Ingles
- HTML5
- CSS3
Por Tener:
- Printer 3D
- Lap
- Deskotp
Espero ir actualizando esta lista pronto.
jueves, 23 de enero de 2014
Estoy de vuelta!!!
Solo escribo esta brevísima entrada, ha manera de reintroduccion, pienso retomar la saludable costumbre de llevar un registro de mis andanzas como pica-código que pueden ser de utilidad a alguien... muy probablemente a mi y mi pésima memoria.
domingo, 4 de agosto de 2013
Eliminando un archivo del historial de commits en git
Esta entrada es un mas bien una recopilacion de los conocimientos adquiridos para resolver el siguiente problema necesitaba eliminar un archivo del historial de commits, es decir de cada commit realizado, ya que el archivo fue agregado en el commit inicial y hasta ahora no había presentado problemas.
El primer intento de como resolverlo fue con las siguientes instrucciones
Esta solución no me funciono ya que el archivo que necesitaba eliminar no estaba en el ultimo commit,si no en uno muy anterior.
Entonces encontré la siguiente solución, la cual si funciono.
Una sola instrucción, un poco larga y no entiendo del todo que hace cada parte solo se que funciona.
Links Utiles.
Archivo Grande
Arreglar commits
git filter-branch
El primer intento de como resolverlo fue con las siguientes instrucciones
git rm --cached rutadelArchivo/nombreArchivo
la cual hace que git deje de trackear ese archivo pero dejándolo en el disco. Después se ejecuta
git commit --amend -CHEAD
el cual agrega al commit actual el cambio que se acaba de hacer, un nuevo commit no funciona. Posteriormente puede hacer el git push.Esta solución no me funciono ya que el archivo que necesitaba eliminar no estaba en el ultimo commit,si no en uno muy anterior.
Entonces encontré la siguiente solución, la cual si funciono.
Una sola instrucción, un poco larga y no entiendo del todo que hace cada parte solo se que funciona.
git filter-branch --force --index-filter \
'git rm --cached --ignore-unmatch rutaArchivo/nombreArchivo' \
--prune-empty --tag-name-filter cat -- --all
con esa sola instrucción solucione mi problema :)
Links Utiles.
Archivo Grande
Arreglar commits
git filter-branch
martes, 18 de septiembre de 2012
Proyecto Recorrido Virtual Con Kinect
Actualmente estoy desarrollando un proyecto que servirá para que un amigo y yo nos titulemos. Este proyecto es sobre el Kinect, a grandes rasgos es un recorrido virtual controlado con el Kinect. por el momento estoy trabajando en un código de prueba para poder controlar un cubo por medio del Kinect y se los comparto aqui
El proyecto final, si es que algún día logro terminar este proyecto de prueba, pretende usar como motor gráfico Unity3D. y por esto el proyecto de prueba que les comparto esta hecho en Unity3D, el Player/Cubo sera controlado por medio de Kinect(aun no definimos la interacción, por el momento la meta es que el Cubo rote conforme rota el usuario).
Unity soporta como lenguaje de programación C#, Boo y JavaScript. OpenNI y Nite(Ambos desarrollados en C y C++) cuentan con Wrappers de C#
Continuare Actualizando...
Actualice el código de git ahora se puede manipular la rotación del cubo por medio de la rotación del torso del usuario, aun que ese código tiene un detalle menor presenta una extraña oscilación que aun no puedo arreglar.
por ahora me centrare un poco en el hand tracking.
El proyecto final, si es que algún día logro terminar este proyecto de prueba, pretende usar como motor gráfico Unity3D. y por esto el proyecto de prueba que les comparto esta hecho en Unity3D, el Player/Cubo sera controlado por medio de Kinect(aun no definimos la interacción, por el momento la meta es que el Cubo rote conforme rota el usuario).
Unity soporta como lenguaje de programación C#, Boo y JavaScript. OpenNI y Nite(Ambos desarrollados en C y C++) cuentan con Wrappers de C#
Continuare Actualizando...
Actualice el código de git ahora se puede manipular la rotación del cubo por medio de la rotación del torso del usuario, aun que ese código tiene un detalle menor presenta una extraña oscilación que aun no puedo arreglar.
por ahora me centrare un poco en el hand tracking.
Suscribirse a:
Entradas (Atom)