Iniciar Sesion

Planet

Sistema de overlays en IberOgre

¡Se nota la actividad en IberOgre! He estado trabajando bastante duro estos días para sacar adelante un nuevo artículo: “Sistema de overlays”. En el texto se tratan en bastante profundidad los mecanismos que ofrece Ogre para desplegar paneles e indicadores 2D a modo de GUI o HUD. Los contenidos que abarca se resumen en: Conceptos

Sistemas de partículas en IberOgre

No estamos adormilados tras la final del V CUSL porque ya se ha publicado un nuevo artículo en IberOgre. En esta ocasión en “Sistemas de partículas” ofrecemos todos los conceptos necesarios para desplegar efectos especiales en nuestros videojuegos desarrollados con Ogre como destellos, humo, fuego y un largo etcétera. A vista de pájaro, tratamos los

Finalizado el Concurso Universitario de Software Libre

Hace un par de semanas tuvo lugar la fase final del Concurso Universitario de Software Libre de Castilla-La Mancha, en el que YakiTo fue premiado como el mejor proyecto del concurso. Los otros dos finalistas, premiados en otras categorías, fueron los siguientes:

  • Premio al Proyecto de Mayor Utilidad, patrocinado por Apeti Albacete recayó en el proyecto e-Planning, realizado por el alumno Rodrigo Testillano Tordesilla de la ESI.
  • Premio al Proyecto Más Innovador, patrocinado por la Catédra Indra-UCLM recayó en el proyecto Terminal Previewer, realizado por el alumno Javier Angulo Lucerón de la ESI.

Por si fuera poco, la semana pasada se celebró la fase final del Concurso Universitario de Software Libre, concurso que motivó el desarrollo de este proyecto, y YakiTo fue galardonado con el Premio Especial del concurso.
No quiero olvidarme, eso sí, el resto de proyectos finalistas, y ganadores en las diferentes categorías. Todos ellos muy buenos proyectos:

  • Premio al mejor proyecto de Accesibilidad al proyecto Geo Remind Me de Raúl Jiménez Ortega y Rubén Dugo Martín de la Universidad de Granada.
  • Premio al mejor proyecto de Comunidad al proyecto IberOgre y Sion Tower de David Saltares Márquez de la Universidad de Cádiz.
  • Premio al mejor proyecto de Educación al proyecto JavaDiKt de Luis Alfonso Arce González de la Universidad de Sevilla.
  • Premio al mejor proyecto de Innovación al proyecto Predesys de José Antonio Jiménez Carmona de la Universidad de Sevilla.
  • Premio al mejor proyecto de Sistemas al proyecto TP (Terminal Previewer) de Javier Angulo Lucerón de Universidad de Castilla la Mancha.

También es importante destacar las menciones especiales:

  • PirannaFS, de Jesús Leganés Combarro de la Universidad Rey Juan Carlos. [Blog]
  • FreePhyloTree, de Aarón Bueno Villares de la Universidad de Cádiz [Blog]
  • SocialSight de Miguel Sempere Sánchez de la Universitat D’Alacant. [Blog]
  • Cormoran, de Jaime Gil de Sagredo Luna de la Universidad de Alcalácomo [Blog]

Did you know that JSON.encode doesn't respect symbols?

Today was one of those days that instead of addressing myself as a programmer I entitle myself the title of ‘Bug Exorcist’.
Doing bug exorcism is a very dangerous matter. Do not take it lightly for it can be your doom. The job of a Bug Exorcist is to track down devilish bugs that disguise themselves in the most elaborate ways. I will elaborate on one in particular:

ruby-1.9.2-p180 :086 > require 'json'
# A hash that contains a string key.
ruby-1.9.2-p180 :065 > arra = {'cu'=>'algo'}
=> {"cu"=>"algo"}
# A hash that contains a symbol key.
ruby-1.9.2-p180 :066 > arra2 = {cu: 'algo'}
=> {:cu=>"algo"}
# You would say they are different, won't you?
# Are you watching closely?
ruby-1.9.2-p180 :067 > JSON.dump(arra)
=> "{\"cu\":\"algo\"}"
ruby-1.9.2-p180 :080 > JSON.dump(arra2)
=> "{\"cu\":\"algo\"}"
ruby-1.9.2-p180 :081 > JSON.parse(JSON.dump(arra)) == arra
=> true
ruby-1.9.2-p180 :082 > JSON.parse(JSON.dump(arra2)) == arra
=> true
ruby-1.9.2-p180 :086 > JSON.parse(JSON.dump(arra2)) == arra2
=> false
JSON.parse(JSON.dump(arra1))
=> {"cu"=>"algo"}
JSON.parse(JSON.dump(arra2))
=> {"cu"=>"algo"}

Pray with me: I shall never use symbols when I use JSON.
And another perl:
ruby-1.9.2-p180 :090 > otro={5=>'algo'}
=> {5=>"algo"}
ruby-1.9.2-p180 :091 > otro[5]
=> "algo"
ruby-1.9.2-p180 :092 > JSON.parse(JSON.dump(otro))
=> {"5"=>"algo"}
ruby-1.9.2-p180 :093 > JSON.parse(JSON.dump(otro)) == otro
=> false

Pray with me: Never use integers
Or any other object, for that matter:
ruby-1.9.2-p180 :096 > persona = Person.new
=> #<Person:0x00000101883900>
ruby-1.9.2-p180 :098 > mas = {persona => 'jojo'}
=> {#<Person:0x00000101883900>=>"jojo"}
ruby-1.9.2-p180 :099 > mas[persona]
=> "jojo"
ruby-1.9.2-p180 :101 > JSON.parse(JSON.dump(mas)) == mas
=> false
ruby-1.9.2-p180 :102 > JSON.parse(JSON.dump(mas))
=> {"#<Person:0x00000101883900>"=>"jojo"}

Conclusion: In JSON keys are always just strings. Don’t get fancy with your keys :)

Trasteando con OSGArt

Me hubiera gustado escribir una entrada clarificadora acerca de OSGArt, y con más motivo por la poca información que hay en castellano sobre la unión de estas potentes librerías: OSG y ARToolKit. Sin embargo, después de una semana trasteando junto con dos compañeros (Pablo y Alejandro) que también hacen su PFC en SalaBeta, no hemos [...]

Subir un componente al repositorio de RoboComp

Hasta ahora en este blog sólo había hablado de bajar componentes desde el servidor de RoboComp, hoy trataré el tema de subir nuestro nuevo componente. En principio uno podría temer subir cambios al repositorio y estropear algo sin querer, pero en realidad esto no es un gran problema gracias a la gestión de versiones de [...]

Mejor proyecto de comunidad en el V CUSL

  El comité de evaluación y la organización del V Concurso Universitario de Software Libre han emitido su veredicto decidiendo que el proyecto IberOgre y Sion Tower sea galardonado con el premio al mejor proyecto de comunidad. No os podéis imaginar lo contento que estoy por el premio, jamás esperaba llegar tan lejos. Por supuesto,

You need a programmer to introduce a programmer or how Stackoverflow Careers rocks

Like most XXI century people , I have a Linkedin account. I listed my experience, education, positions, interests, etc and sent an invitation to colleges.
But when I look at a Linkedin profile of other developers I don’t really get to grasp what they are about. I find that Linkedin profiles doesn’t really get to represent the person they intent to introduce to potential employers. And so, that’s a failure.
Yesterday I received an invitation to create a profile in Stackoverflow careers. The email I received is one of the best advertising emails I have ever seen:
We’re impressed by your “ruby-on-rails” tag answers on Stack Overflow. In recognition of your generous spirit, we’d like to invite you to create a professional profile on Stack Overflow Careers 2.0.
A Careers 2.0 profile is a great place to showcase your professional work as a programmer – Stack Exchange answers, open source projects, even the books you’ve read.
Click here to accept the invitation. It’s free!
Even if you’re not looking for a new career today, your Careers 2.0 profile will be your professional home on the web. It lets your colleagues, friends, and peers know who you are and what great work you’re doing. It’s a terrific way to build your professional reputation and take your career to the next level. And it’s fun!
You’ll always have complete control over what’s in your profile, who can see it, and whether or not employers can contact you.
But please act soon: this invitation expires in 14 days, so sign up now!
Even if you decide not to join Careers 2.0, we would like to thank you for all your contributions to Stack Overflow. It wouldn’t be the same without you.
Best wishes,
Joel, Jeff and The Stack Overflow Team
Now why do I think that? Here I go:

  • First paragraph: Instead of the obvious and false ‘My dear customer’ these guys make yourself proud of your hard work. They are saying something that is true. And they introduce you the product they want to sell as if it were a reward. That gives you a good feeling for the rest of the email.
  • Second paragraph: A one line introduction to the thing they want to sell.
  • Third paragraph: A quick call to action. And it tells you that it’s free.
  • Fourth paragraph: Maybe you think you don’t need it, but…ey it’s free and you will need it in the future! It’s a perfect second – reinforcing – call to action.
  • Fifth paragraph: Programmers like to feel in control.
  • Sixth paragraph: It uses scarcity to make you act. It’s now or never.
  • Seventh paragraph: Ey I am cool and you are cool, let be friends – but if you don’t want me, I cool with that. A classic line.

And it ends with a friendly good bye. Now that’s how you sell a product.
But what really matters it is what happens next – when you use it. Is it a good product? Does it fulfil your needs? In short, after filling in your info, can a prospective employer really feel what you are about?
You tell me:
http://careers.stackoverflow.com/nerian

¡JavaDiKt, mejor proyecto de educación en el CUSL!

Premiados en el V Concurso Universitario de Software Libre. De arriba a abajo y de izquierda a derecha: José Antonio Jiménez Carmona de "Predesys", Raúl Jiménez Ortega de "GeoRemindMe", Javier Angulo Lucerón de "Terminal Previewer", Sergio Garcia Mondaray de "Yakito", Miguel Sempere Sánchez de "SocialSight", Rubén Dugo Martín de "GeoRemindMe", Luis A. Arce González de "JavaDiKt" y David Saltares Márquez de "IberOgre y Sion Tower"
Terminada la fase final del V Concurso Universitario de Software Libre, después de muchas risas mezcladas con interesantes debates y ponencias, fueron entregados los premios de las distintas categorías:

  • Premio especial del Concurso Universitario de Software Libre a “Yakito“, de Sergio Garcia Mondaray de la Universidad de Castilla la Mancha.
  • Premio al mejor proyecto de Accesibilidad a “Geo Remind Me“, de Raúl Jiménez Ortega, Anna Peña Martínez y Rubén Dugo Martín de la Universidad de Granada.
  • Premio al mejor proyecto de Comunidad a “IberOgre y Sion Tower“, de David Saltares Márquez de la Universidad de Cádiz.
  • Premio al mejor proyecto de Educación a “JavaDiKt“, de Luis A. Arce González de la Universidad de Sevilla.
  • Premio al mejor proyecto de Innovación a “Predesys“, de José Antonio Jiménez Carmona de la Universidad de Sevilla.
  • Premio al mejor proyecto de Sistemas a “TP (Terminal Previewer), de Javier Angulo Lucerón de Universidad de Castilla la Mancha.

Enhorabuena a todos los ganadores, que tienen proyectos fantásticos y ademas son gente de puta madre. La experiencia ha sido fantástica, y la verdad, me anima muchísimo a pasarme por la !NotBarraLibreCamp de Cádiz el 27 de mayo.
Por mi parte, yo me voy contentísimo con el reconocimiento que le ha sido dado a mi proyecto. Hablando sinceramente, ha llegado más lejos de lo que pensaba allá por Octubre del año pasado, cuando empecé a esbozar a lápiz la interfaz de JavaDiKt en la hoja de un cuaderno.
Pero este premio no significa la final del proyecto. Aunque los dos próximos meses estaré hasta el cuello de exámenes y trabajos, el desarrollo de JavaDiKt volverá con fuerza en Julio. Estoy convencido a convertir JavaDiKt, tal y como dice su eslogan, en el diccionario de Kanjis definitivo.
Y a todos aquellos que apoyaron el proyecto, ya sea descargando, evaluando , usando, difundiendo,… ¡Muchas Gracias! ¡Sin vuestra ayuda sin duda ésto no sería posible!

¡JavaDiKt, mejor proyecto de educación en el CUSL!

Premiados en el V Concurso Universitario de Software Libre. De arriba a abajo y de izquierda a derecha: José Antonio Jiménez Carmona de "Predesys", Raúl Jiménez Ortega de "GeoRemindMe", Javier Angulo Lucerón de "Terminal Previewer", Sergio Garcia Mondaray de "Yakito", Miguel Sempere Sánchez de "SocialSight", Rubén Dugo Martín de "GeoRemindMe", Luis A. Arce González de "JavaDiKt" y David Saltares Márquez de "IberOgre y Sion Tower"
Terminada la fase final del V Concurso Universitario de Software Libre, después de muchas risas mezcladas con interesantes debates y ponencias, fueron entregados los premios de las distintas categorías:

  • Premio especial del Concurso Universitario de Software Libre a “Yakito“, de Sergio Garcia Mondaray de la Universidad de Castilla la Mancha.
  • Premio al mejor proyecto de Accesibilidad a “Geo Remind Me“, de Raúl Jiménez Ortega, Anna Peña Martínez y Rubén Dugo Martín de la Universidad de Granada.
  • Premio al mejor proyecto de Comunidad a “IberOgre y Sion Tower“, de David Saltares Márquez de la Universidad de Cádiz.
  • Premio al mejor proyecto de Educación a “JavaDiKt“, de Luis A. Arce González de la Universidad de Sevilla.
  • Premio al mejor proyecto de Innovación a “Predesys“, de José Antonio Jiménez Carmona de la Universidad de Sevilla.
  • Premio al mejor proyecto de Sistemas a “TP (Terminal Previewer), de Javier Angulo Lucerón de Universidad de Castilla la Mancha.

Enhorabuena a todos los ganadores, que tienen proyectos fantásticos y ademas son gente de puta madre. La experiencia ha sido fantástica, y la verdad, me anima muchísimo a pasarme por la !NotBarraLibreCamp de Cádiz el 27 de mayo.
Por mi parte, yo me voy contentísimo con el reconocimiento que le ha sido dado a mi proyecto. Hablando sinceramente, ha llegado más lejos de lo que pensaba allá por Octubre del año pasado, cuando empecé a esbozar a lápiz la interfaz de JavaDiKt en la hoja de un cuaderno.
Pero este premio no significa la final del proyecto. Aunque los dos próximos meses estaré hasta el cuello de exámenes y trabajos, el desarrollo de JavaDiKt volverá con fuerza en Julio. Estoy convencido a convertir JavaDiKt, tal y como dice su eslogan, en el diccionario de Kanjis definitivo.
Y a todos aquellos que apoyaron el proyecto, ya sea descargando, evaluando , usando, difundiendo,… ¡Muchas Gracias! ¡Sin vuestra ayuda sin duda ésto no sería posible!

Distribuir contenido

Colabora