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

Buayacorp

Eclipse XText

Mayo 22nd, 2011 - [Enlace local]

Hace un año, algo menos me parece, me enteré de la existencia de Eclipse Xtext. A pesar de haber visto en ese entonces un vídeo mostrando sus características, hasta ahora no había tenido la oportunidad de probarlo realmente. XText es un framework destinado a facilitar el desarrollo de lenguajes de programación o DSLs. Ofrece la posibilidad de crear los compiladores y de poder integrarlos dentro de Eclipse; permitiendo entre otras, la coloración de código, la verificación instantánea de sintaxis, completado de código, etc. Para una pequeña introducción, vean mejor el siguiente video.

Xtext in less than a minute from Xtext Team on Vimeo.

Internamente usa AntLR para generar el parser. De ahí que la sintaxis usada para definir la gramática en Xtext sea casi la misma que la de AntLR. A pesar de haber tenido algunas limitaciones mientras intentaba definir la gramática de un lenguaje existente, me dejado una grata impresión.

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

Arragonán

A veces me iría de cacería

Mayo 20th, 2011 - [Enlace local]

Cuando escucho el clásico De cacería, del Club de los Poetas Violentos, siempre me quedo a la espera de la parte de Kamikaze del final. Cuando lo escucho me viene algún tipo de gente de esa que “trabaja” en IT/internet… y del mamoneo en general, claro.

A ver, entonces partimos de la base de que voy con una peña, mi peña,
y que cada uno hacemos movidas
y nos salimos haciendo movidas,
nos juntamos para hacer movidas y nos salimos incluso más,
así que ¿con quién estoy? ¿con quién voy?, ¿con quién me vas viendo?,
con mi peña, mi gente, mi mogollón
que mañana será con los que yo estaré, según lo que vaya sucediendo,
y toda esa peñita que no conozco y mientras de buen rollo, ¿mañana qué?
supongo que eso no depende de cómo este yendo, sino de lo que siga vendiendo,
así que me la sudáis,
yo seguiré cumpliendo conmigo mismo, y con los que cumplen conmigo,
y me importa una mierda lo que vais diciendo,
las tonterías que estáis escribiendo,
yo defiendo lo mío, defiendo los míos, defiendo lo de los míos,
buen rollete sí hombre, que no os hagáis líos anda,
que ya sabemos por dónde van los tiros,
que ya no estamos pa tonterías, que la peña ya ha madurado,
y junto a los imbéciles los frutos están cayendo,
haced lo que os da la gana y dejadnos con nuestras vidas,
dejadnos con nuestras movidas,
que ya nos tenemos los unos a los otros pa lo bueno y pa lo malo,
y siempre haremos lo que el corazón nos pida,
si somos unos buscavidas y tiraremos palante digas lo que digas,
y cuidadito con destruirnos el camino,
que no estamos pa hostias
¿¿Sabes??

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

Cuaderno de software

Doctrine 2 Data fixtures no tiene comando de consola propio

Mayo 19th, 2011 - [Enlace local]

Así que, todos aquellos que lo utilizamos sin Symfony 2 no tenemos la posibilidad de cargar las fixtures por linea de comando. ¿Solución? Crear nuestro propio comando (cosa que he hecho copiando el código de otro comando y basándome en el comando de Symfony 2). Esto funciona:

 


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

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

Powerbasic

Mayo 19th, 2011 - [Enlace local]

Como muchos de vosotros, comencé programando en lenguaje BASIC. Por aquellos días era no estructurado (con números de linea), e interpretados. Además en mi caso, sobre un hardware de 8 bits. Bastante tiempo después, con Turbo Basic, llegué a la compilación, que como ahora es conocido por todos, permitía transformar el código fuente, en este [...]

Artículos relacionados:
Visual Basic .NET no es Basic
Turbo C 1.0 el comienzo
QB64

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

Picando Código

Montevideo Comics 2011 – Parte 1

Mayo 19th, 2011 - [Enlace local]

Montevideo Cómics 2011

Montevideo Cómics 2011

El fin de semana pasado estuve en el Cine Plaza para asistir a la convención Montevideo Cómics 2011. Paso a comentarles un poco la impresión que me llevé. Es la primera vez que asisto a la convención, a pesar de ser la novena edición ya. Sinceramente me hice una idea general de la agenda, sin armarme un calendario detallado de las charlas y películas a las que quería asistir. Así que el sábado fui a descubrir durante la convención lo que tenía para ofrecer. El domingo ya me fijé algunas charlas específicas a las que no podía faltar.

A la entrada nos regalaron la revista de Montevideo Cómics 2011, que incluye el cómic “Pactando con el Diablo” de Rolando Salvatore, además de información sobre la convención, biografías y más de los invitados internacionales.  Estaba como perro con dos colas, mirando todo lo que había, como “encandilado” con tantos puestos interesantes, tantas cosas para mirar.

Había mucha gente disfrazada, a varios los reconocí al instante, pero muchos personajes de animé son totalmente desconocidos para mí. Una de las primeras cosas con las que nos topamos fue un stand donde tenían un Nintendo Wii con un juego de baile y 4 controles. Ahí nos divertimos un rato mirando a varios personajes pasar a bailar frente al televisor. Muy cerca estaba el Xbox con el Kinect del cual solo pude ver unos segundos de un juego de boxeo al estilo Wii Sports, pero disfruté observando algunas peleas de Marvel Vs. Capcom 3 y el nuevo Mortal Kombat. En un momento se dió una pelea recursiva ya que dos cosplayers disfrazados de Sub-Zero y Mileena combatieron en el videojuego con sus respectivos personajes (debí haber sacado una foto…).

Además de los varios puestos de cómics, animé, cosplayers, etc. podían verse artistas dibujando por todos lados. No solo estaba el Comic Club donde uno podía sentarse a dibujar, sino autores de cómics en varios stand. Vi a Diego Tapié, uno de los creadores de Cisplatino, dibujando en una escalera al lado del puesto de Cisplatino durante todo el sábado. Taibox en el stand de GAS Cómics hacía un dibujo personalizado a cada persona que comprara una edición de GAS3K. Nicolás Peruzzo en su stand no dudaba en firmar sus cómics. Juan Giménez, Domingo Mandrafina y Gustavo Sala – entre otros- firmando libros y dibujando por ahí.

Eso es otra parte interesante de la convención. Los autores están promocionando su material, esperando a que vayas y le preguntes cosas, los critiques, les chupes las medias, les pidas dibujos, etc. Es una excelente oportunidad para conocerlos, no solo ponerle una cara al nombre, sino interactuar con ellos.

Tras recibir los primeros dibujos originales de la jornada de la mano de Taibox al comprar mis GAS3K, y ver unos storyboards hechos por MaGnUs, me di cuenta lo apasionante del proceso creativo de crear un cómic. No solo conocer el “antes” desarrollado por el guionista, sino el “durante” en el que se empieza con unas rayas y se termina con una verdadera obra de arte. Así fue que me colgué observando a todos los autores que pude mientras dibujaban algo.

Dejo algunas fotos del evento, muchas gracias a la fotógrafa Rosina:

Asistí a varias charlas, vi algunos cortos, compré muchos cómics y conversé con mucha gente. Pero eso lo iré contando en otros posts, ya que este me está quedando demasiado extenso. El staff de Multiverseros también estuvo ahí, y pueden leer su visión al respecto en la primera parte de su cobertura de Montevideo Cómics 2011. Allí comentaremos también sobre los cómics que adquirimos y demás, así que están invitados a darse una vuelta por el foro.

Me fui con una sensación de haber visto, conocido y adquirido de todo (será por lo pesada que volvió la mochila). Me llevé mucho, incluyendo muchas personas que solo “conocía virtualmente”, nuevos cómics, nuevos autores, proyectos e iniciativas. La experiencia fue sumamente enriquecedora, y me hizo un nerd muy feliz.

¡Próximamente más detalles de lo que fue este Montevideo Cómics!

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

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

MadeInFlex

Mobile ItemRenderer en ActionScript (Parte 1)

Mayo 18th, 2011 - [Enlace local]

Recientemente un viejo conocido de la comunidad Flex hispana (Nahuel Foronda) ha publicado una serie de interesantes posts sobre Optimización de Flex para Móviles que iremos posteando traducidos al español, previa autorización :-)

Si estás comenzando a hacer desarrollo móvil y estás acostumbrado a crear todos los ItemRenderers en MXML, habrás notado que pequeños dispositivos como teléfonos y tabletas no tienen un desempeño tan bueno como en escritorio y necesitarás buscar diferentes maneras de optimizar tu aplicación.

Una de las formas de optimizar tu aplicación móvil es crear tus ItemRenderers con ActionScript. Narciso Jaramillo escribió un buen artículo para Devnet con buenos tips para el desarrollo móvil y uno de los puntos es precisamente eso, mantener tus ItemRenderers en puro ActionScript.

Narciso menciona que el Framework de Flex viene con dos ItemRenderers uno es LabelItemRenderer que extiende a UIComponent y el otro es IconItemRenderer que extiende a LabelItemRenderer. Esas clases son buenas, pero a veces tenemos un diferente caso de uso que necesita una serie diferente de clases. así que en los ejemplos, no utilizaré esos rendereres. En su lugar, extenderemos directamente desde UIComponent o desde SpriteVisualElement para tener inclusive una clase más ligera que UIComponent.

Para el propósito de este tutorial, estoy planeando una serie de entradas explicando las bases y pasar a renderers con mayor dificultad.

Ejemplo Básico

Comencemos con el renderer más simple, un TextField que muestre algún texto. Para hacerlo sencillo, extenderemos desde UIComponent e implementaremos la interfaz IDataRenderer requerida por List.

Pero antes de hablar sobre el renderer, hablemos de otros elementos.

Application

Necesitas crear un proyecto tipo Mobile. En este ejemplo, usaré el más simple de los contenedores raíz, ese es un Application, no las subclases TabbedApplication o ViewBasedApplication. Agregaremos un List que se expanda al 100% como único elemento.

Estilos

Agregué una hoja de estilos externa donde tenemos todos los estilos para el ItemRenderer:

ItemRenderer

Tenemos una clase simple que extiende a UIComponet que nos da algunos métodos útiles y la habilidad de participar en el framework de CSS.

Estos 3 métodos de UIComponent que utilizaremos son los siguientes:

measure donde nosotros leemos el tamaño mínimo del renderer desde la hoja de estilos. Esto se vuelve útil porque dispositivos con diferentes resoluciones dpi necesitan diferentes medidas.

createChildren donde nosotros creamos el TextField, establecemos los estilos y si hay datos disponibles, configuramos el texto en el TextField a ser mostrado.

updateDisplayList donde posicionamos los elementos y dibujamos cada línea separadora para cada ItemRenderer.

Adicionalmente a estos métodos, tenemos la propiedad data, que es la implementación de la iterfaz IDataRenderer. Esa interfaz es el contrato con List y es la forma en la que los datos son empujados hacia el ItemRenderer. Si el TextField existe al momento de configurar los datos, entonces configuramos el texto dentro del TextField, de otra manera, lo guardamos para después.

Como pueden ver escribir un ItemRenderer en ActionScript no es tan difícil como suena.

Estoy planeando mostrar otros ejemplos en el futuro con múltiples elementos, fondos, estados, manipulación de texto, columnas múltiples y más.

El código fuente esta disponible para descargar.

Nota: Este artículo está traducido en MadeInFlex con autorización previa del autor, si quieren consultar la fuente original aquí tienen el enlace.

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

Variable not found

Glimpse: simplemente imprescindible

Mayo 18th, 2011 - [Enlace local]

GlimpseTenía ya ganas de echar un vistazo en profundidad a esta herramienta de depuración para ASP.NET MVC y WebForms cuya difusión y número de buenas críticas en las últimas semanas ha sido brutal. Hanselman, Haack, Scott Guthrie, o Brad Wilson son sólo algunos de los que han quedado impresionados con Glimpse y no dudan en calificarla como una utilidad indispensable para los desarrolladores.



Como la definen sus autores, Glimpse es al servidor lo que Firebug al cliente. En la práctica, se trata de un componente que nos permite obtener desde el navegador una visión en profundidad de lo que está ocurriendo en el servidor durante la ejecución de las peticiones. Brevemente, lo que vamos a conseguir ver con Glimpse es:

Icono de GlimpseUna vez instalado en nuestra aplicación y activado (más adelante veremos cómo), aparecerá en la esquina inferior de todas nuestras las páginas un icono representando un ojo cuya pulsación abrirá el interfaz de Glimpse, que como se aprecia en la siguiente captura, es bastante similar a Firebug o las developer tools de otros navegadores:



Glimpse en funcionamiento

Observad que Glimpse ocupa toda la zona inferior, y aunque podría parecer lo contrario, es puro HTML y no un complemento del navegador como ocurre con las herramientas anteriormente citadas. Todo lo que vemos es creado por el componente cliente de Glimpse e introducido en la página actual :-)

Arquitectura

Glimpse está compuesto por los siguientes elementos:

En la actualidad, el componente de servidor exige ASP.NET 4, aunque se está trabajando en una versión compatible con ASP.NET 3.5. Además, el servidor donde se ejecute debe disponer de la versión 3 del framework MVC en el caché de ensamblados para que funcione, independientemente de si queremos utilizarlo para depurar aplicaciones MVC o Webforms, debido a una serie de dependencias que serán eliminadas en próximas versiones de la herramienta.



Sin embargo, el objetivo final de Glimpse es bastante más ambicioso: aunque la implementación actual está muy ligada a la tecnología .NET, su arquitectura modular hará posible la aparición de componentes de servidor para cualquier tecnología, como PHP o RoR. Éstos se comunicarán con el lado cliente mediante Glimpse Protocol, que es ajeno a la tecnología utilizada en servidor.



El componente de cliente, por su parte, es capaz de obtener datos de depuración generados en servidor y representados en Glimpse Protocol, y mostrarlo integrado en la página. Es importante saber que este cliente está construido sobre jQuery, por lo que la página donde vayamos a utilizarlo debe cargar esta biblioteca de scripts previamente para que todo funcione correctamente.



El diseño del visor se ha conceptualizado, además, para que sea extensible: será posible añadir plugins que den soporte a características avanzadas, como pestañas para mostrar información específica de plataformas o CMS como Sharepoint u Orchad, autenticación para acceder a la información de depuración, etc.

Instalación y puesta en marcha de Glimpse

Este apartado, que describe la instalación de Glimpse en nuestro proyecto ASP.NET MVC o Webforms, podría ser realmente extenso de no ser por Nuget. Glimpse depende de otros paquetes como Castle.Core, Castle.DynamicProxy o Log4net y la descarga e instalación manual de estos componentes podría acabar con la paciencia de cualquiera. Afortunadamente esta joya nos va a poner la tarea bastante fácil :-)



Desde la consola Nuget, accesible a través del menú Herramientas > Library Package Manager > Package Manager Console, podemos dejarlo listo en segundos simplemente introduciendo el comando install-package como sigue:



Each package is licensed to you by its owner. Microsoft is not responsible for, nor does it grant any licenses to, third-party packages. Some packages may include dependencies which are governed by additional licenses. Follow the package source (feed) URL to determine any dependencies.
Package Manager Console Host Version 1.3.20419.9005
Type 'get-help NuGet' to see all available NuGet commands.

PM> install-package glimpse
[...]
Successfully installed 'log4net 1.2.10'.
Successfully installed 'NLog 1.0.0.505'.
Successfully installed 'Castle.Core 1.2.0'.
Successfully installed 'Castle.DynamicProxy 2.2.0'.
Successfully installed 'Glimpse 0.80'.
Successfully added 'log4net 1.2.10' to DemoGlimpse.
Successfully added 'NLog 1.0.0.505' to DemoGlimpse.
Successfully added 'Castle.Core 1.2.0' to DemoGlimpse.
Successfully added 'Castle.DynamicProxy 2.2.0' to DemoGlimpse.
Successfully added 'Glimpse 0.80' to DemoGlimpse.

PM> 


Tras introducir la orden de instalación, Nuget descargará e instalará el paquete Glimpse, junto con todas sus dependencias, en nuestro proyecto.



El siguiente paso es acudir a la pantalla de configuración de Glimpse con objeto de activarlo para nuestro sitio web. Para ello, simplemente tenemos que lanzar nuestro proyecto y acudir a la dirección /glimpse/config, donde encontraremos el botón de activación “Turn Glimpse On”:



Activación de Glimpse



imageA partir de ese momento, Glimpse estará activo en nuestro proyecto, y podremos comenzar a depurar nuestro sitio Web. Como comentaba al principio, pulsando el icono que aparecerá en la esquina inferior izquierda de todas las páginas, accederemos al visor de información de depuración.



Como en el caso de Firebug, Developer Tools de IE y otros, esta información aparece dividida en pestañas, como se puede apreciar en la siguiente captura de pantalla:



Pestañas de Glimpse



A continuación se describe lo que podemos encontrar en cada una de estas pestañas, exceptuando “Binding”, que aún no está implementada, y “Glimpse warnings”, que muestra avisos internos de la propia herramienta.

Pestaña “Config”

En esta pestaña tendremos acceso a la configuración de la aplicación, o en otras palabras, obtendremos una vista estructurada de determinados parámetros indicados en el web.config. Así, tendremos acceso detallado a parámetros definidos en la sección appSettings, cadenas de conexión, configuración del elemento customErrors y al modo de autenticación utilizado en el sitio.



Pestaña "Config"

Pestaña “Environment”

Aquí podemos consultar diversos datos sobre el entorno en el que se está ejecutando nuestra aplicación, como el nombre de la máquina, sistema operativo, versión del framework, servidor web, ensamblados cargados, etc.



Pestaña "Entorno"

Pestaña “Execution”

Esta interesante pestaña nos muestra información sobre los métodos que han sido ejecutados para procesar la petición, tanto en el controlador como en los filtros aplicables a la acción. Curiosamente, también encontraremos en esta pestaña los métodos no ejecutados en éstos.



image

Como se puede observar en la captura, también ofrece información sobre el orden de ejecución y el tiempo de proceso consumido por de cada uno de estos métodos, lo que nos puede ayudar a detectar cuellos de botella.

Pestaña “Metadata”

Facilita el análisis de los metadatos asociados a la información suministrada desde el controlador a la vista a través de la propiedad Model. En ellos veremos, con todo lujo de detalles y por cada propiedad las descripciones textuales, reglas básicas de validación y formato, el tipo de datos, etc.



Pestaña "Metadata"

Pestaña “Remote”

Aunque no parece funcionar de forma correcta, o al menos no de la forma en que uno podría esperar, esta pestaña permite acceder a las peticiones realizadas por clientes del sitio web, y lanzarlas de nuevo para observar su información de depuración a través del resto de pestañas.



Pestaña "Remote"

Pestaña “Request”

Permite observar los datos enviados en la petición actual en cookies, como campos de formulario, o en la querystring.



Pestaña "Request"

Pestaña “Routes”

Para mi gusto, una de las pestañas más interesantes que ofrece Glimpse. Nos permite consultar la tabla de rutas completa, conocer cuál de las rutas ha sido elegida para procesar la petición, y los valores para cada uno de sus parámetros.



Pestaña "Routing"

Si ya habéis estado trabajando con la última versión de RouteDebugger de Phil Haack, esta herramienta os sonará bastante, pues se parece bastante. Si todavía no lo habéis hecho, no dejéis de probarla, pues os ayudará mucho cuando os encontréis con peticiones que acaban siendo rutadas aparentemente de forma incomprensible.

Pestaña “Server”

En esta sección tendremos acceso a las variables HTTP enviadas en la respuesta del servidor.



Pestaña "Server"

Pestaña “Session”

Aquí se nos ofrece información muy interesante: los datos almacenados en variables de sesión para el usuario actual. Podremos ver la clave de búsqueda en la colección Session, el valor almacenado y el tipo de éste.



Pestaña "Server"

Pestaña “Trace”

En esta pestaña tendremos acceso a la información de depuración generada por la propia aplicación utilizando los métodos de trazas disponibles en System.Diagnostics. Es decir, podemos llamar desde desde el código al método Trace.WriteLine() para escribir mensajes de depuración que después consultaremos desde este punto.

Pestaña "Trace"

Pestaña “Views”

Esta pestaña nos permite, en primer lugar, consultar información sobre el proceso de localización de las vistas, tanto completas como parciales, por parte de los distintos view engines registrados en el sistema. Como se puede observar en la siguiente captura de pantalla, las dos líneas destacadas con las vistas utilizadas para componer la página actual, el resto son los intentos de localización que se han realizado de forma infructuosa.



Pestaña "Views"



Además, en cada una de las vistas procesadas tendremos acceso a la información que le está siendo suministrada desde el controlador a través de los diccionarios ViewData y TempData, y de la propiedad Model:



Pestaña "Views"

Pestaña “XHRequests”

En ella podremos consultar en tiempo real las peticiones Ajax que están siendo realizadas. Pulsando el enlace “launch” asociado a cada una de ellas, podemos acceder a la información de depuración del proceso de dicha petición accediendo a la pestaña que nos interese.





Pestaña "XHRequests"



Una curiosidad: si en esta pestaña lo que aparecen son las peticiones Ajax, ¿por qué la han llamado “XHRequest”, y no “Ajax”? La respuesta la encontramos en un twit de uno de sus creadores: en la versión actual del cliente las pestañas salen ordenadas alfabéticamente, y no quería que ésta fuera la primera :-D

Glimpse plugins

Aunque aún es pronto (recordad que Glimpse es todavía una beta), la arquitectura pluggable del producto hará posible la aparición de extensiones del producto que nos permitirán obtener más datos de depuración, y adaptarlo a plataformas específicas.



Un ejemplo lo podemos encontrar ya en “Glimpse Dependencies Plugin”, un componente que podemos instalar directamente desde Nuget (“install-package glimpse-dependencies”). Se trata de una extensión que añade una pestaña adicional en el cliente, que ofrece información sobre el proceso de resolución de dependencias que utilizan el sistema incorporado en MVC 3:



Plugins para glimpse

Desinstalación de Glimpse

Una vez hemos acabado con Glimpse, podemos desinstalarlo con total sencillez, de la misma forma que lo instalamos. Utilizaremos esta vez el comando uninstall-package, e indicaremos que deseamos eliminar también las dependencias que instalamos con él en su momento:



PM> Uninstall-Package -RemoveDependencies glimpse
Successfully removed 'Glimpse 0.80' from WebSCCB.
Successfully removed 'Castle.DynamicProxy 2.2.0' from WebSCCB.
Successfully removed 'Castle.Core 1.2.0' from WebSCCB.
Successfully removed 'NLog 1.0.0.505' from WebSCCB.
Successfully removed 'log4net 1.2.10' from WebSCCB.
Successfully uninstalled 'Glimpse 0.80'.
Successfully uninstalled 'Castle.DynamicProxy 2.2.0'.
Successfully uninstalled 'Castle.Core 1.2.0'.
Successfully uninstalled 'NLog 1.0.0.505'.
Successfully uninstalled 'log4net 1.2.10'.

PM>


Tras esta operación, nuestro proyecto volverá a estar igual que como lo teníamos. No me canso de decirlo: Nuget es una maravilla :-)

Conclusión

Sin duda, Glimpse es una herramienta realmente interesante para los que trabajamos con ASP.NET MVC y, aunque actualmente en menor medida, con Webforms, que nos ofrecerá una perspectiva de lo que ocurre en el servidor hasta ahora imposible de obtener de forma tan sencilla, y que nos puede ayudar bastante depurar nuestros sistemas.



La facilidad y limpieza con la que la instalamos y desinstalamos en nuestros proyectos gracias a Nuget hace que sea realmente cómodo contar con ella cuando la necesitemos y volver al estado original cuando ya no sea necesaria.



Por poner alguna pega, aún se trata de un producto en beta, y que aún no implementa todas las funcionalidades. También se echa en falta algo de documentación que ayude a averiguar el significado de determinadas opciones, pero entiendo que esto llegará conforme vaya madurando.



En fin: descargadlo, probadlo, y veréis como os gusta.



Publicado en: Variable not found.



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

Fetishcode

Conceptos nuevos de ADF 11g

Mayo 18th, 2011 - [Enlace local]

A

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

Fetishcode

Error en Documentacion:Esquema XML para registrar Skin

Mayo 17th, 2011 - [Enlace local]

A

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

Variable not found

¡Cinco años de Variable not found!

Mayo 17th, 2011 - [Enlace local]

Variable not found cumple cinco añosTras mucho tiempo como lector y consumidor de blogs, sentía la necesidad de disponer de mi propio espacio, un sitio donde ir publicando información sobre las cosas que me interesaban y que quizás podían interesar a alguien más. Entré en Blogger y creé mi cuenta.



Bien, pues hace ya cinco años de esto. Se dice pronto, eh? :-)



Variable not foundEl siguiente paso fue darle a este espacio un nombre. Seguro que muchos ya sabréis que la denominación Variable not found es un homenaje a los viejos tiempos del Spectrum, culpable de que muchos nos estemos dedicando hoy profesionalmente al desarrollo de software.



Para los más jóvenes diré que este mensaje de error era bastante habitual cuando programábamos con aquel Basic primitivo de los años 80 e intentábamos acceder a una variable no definida. Por cierto, aquellos de mi quinta que queráis tener un momento nostalgia, o los que simplemente tengáis curiosidad por trastear con él, podéis encontrar aquí un emulador online de esta maravilla.



Y tras todo ello, ya sólo faltaba  lo más difícil: intentar crear contenidos razonablemente decentes, darlo a conocer, conseguir visitas, suscriptores, comentarios… y en ello estamos :-)



Como en otras ocasiones, aprovecho para resumir los distintos periodos por los que hemos ido pasando desde aquél momento para, justo después, comentar este último año que acabamos de finalizar.

Año 5: La variable física

La principal novedad de este año ha sido el hecho de haber salido de la cueva, y haber podido introducir la componente física en esta ecuación.



La asistencia al TTT/Open Day me permitió ponerles cara y voz a fenómenos a los que admiraba y llevaba siguiendo desde hacía mucho tiempo, y con los que fue un auténtico placer poder compartir unas horas. Más recientemente, la gira Make Web Not War en la que he tenido el placer de participar también me ha dado la oportunidad de saludar personalmente a amigos a los que sólo conocía virtualmente, y de echar unos ratos excelentes con un grupo estupendo. Y finalmente, todo esto me ha permitido entrar en contacto con la gente de CartujaDotNet, el grupo de usuarios .NET de Sevilla, donde espero participar y colaborar de forma presencial.



Entrando ya en otro orden de asuntos, Variable not found ha continuado su trayectoria ascendente incrementando el número de usuarios de forma considerable en todos los canales abiertos:



Según entendidos en la materia, las cifras de visitas y suscriptores están bastante bien teniendo en cuenta la gran verticalidad del blog. Variable not found sigue siendo un blog de poca monta en términos generales, pero dentro de su temática y especialización está bastante bien situado, lo cual, por supuesto, tengo que agradeceros :-)


La principal fuente de tráfico siguen siendo las búsquedas de Google; la presencia de otros buscadores (bing, yahoo, ask...) en la estadística es sólo testimonial. Eso sí, ha decrecido el porcentaje total de visitas procedentes de búsquedas en beneficio del tráfico referido de otras fuentes como geeks.ms, Facebook, los foros de MSDN, o Twitter, entre muchos otros.



En cuanto a los navegadores, Firefox sigue siendo el más usado para acceder a variablenotfound.com, aunque el uso de Chrome se ha duplicado en el último año en detrimento de IE y del propio Firefox. Este trío concentra el 95% de los usuarios.



Curiosamente, el 7% de los usuarios que usan Internet Explorer siguen con la versión 6 :-O. Pero bueno, el año pasado a estas alturas era tres veces más, así que no podemos decir que la campaña  IE6 count down no esté surtiendo efecto…



Otro dato interesante es que el año pasado Windows XP era utilizado prácticamente por el 60% de los visitantes, y ahora rondamos el 45%. Windows 7 ha crecido hasta cerca del 40%.



Mi primer cheque AdsenseRespecto a los beneficios obtenidos, este año se ha producido la tan esperada llegada de mi primer cheque Adsense, que ya compartí virtualmente con vosotros ;-) Para mi gusto le faltaban algunos ceros para haber sido perfecto, pero vaya, menos da una piedra…



Afortunadamente sigo disfrutando al escribir cada post, al revisar los comentarios (pocos, pero haberlos haylos), al descubrir las referencias externas, comprobar que los posts son útiles de vez en cuando a alguien, y al ver que el número de amigos de variablenotfound.com continúa creciendo. Y desde luego, sigue sin haber mejor recompensa que ver que estáis ahí después de tanto tiempo.



¡Mil gracias a todos! Y por supuesto, espero que sigáis ayudándome a buscar la variable un año más ;-)



Publicado en: Variable not found



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

Arragonán

II Cachirulo Talks y VI Aniversario Cadius Zaragoza

Mayo 16th, 2011 - [Enlace local]

Aún con la resaca de haber ido a Cáceres a TheEvnt y andar meditando algunos pensamientos, esta semana se celebran un par de eventos en cuya organización he participado de algún modo.

El primero son las II Cachirulo Talks, sobre financiación, este jueves 19. Que hemos organizado desde Cachirulo Valley. Será interesante ver el contraste de lo que nos vayan a contar Ana Isabel Alcaine, directora de inversionde de la gestora de capital de riesgo en Going Investment; y Alberto Molpeceres, fundador de Linking Paths, empresa financiada con recursos propios y propietaria de Stage (producto con 3 millones de $ de facturación).

El segundo es el VI Aniversario Cadius Zaragoza(se dice rápido 6 años…), el viernes 20. Tendremos el gustazo de contar con Jesús Gorriti, director de diseño en Fjord España, que hablará de diseño como agente de cambio.

Después de los eventos iremos a algún bar cercano a hacer networking a tomar unas cañas y charlar relajadamente.

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

Picando Código

Entrada nº 900

Mayo 16th, 2011 - [Enlace local]

Este es el post número 900 de Picando Código :D

Contenidos del Blog

Contenidos del Blog

El último “hito” del estilo sobre el que escribí fue la entrada 300 en 2008 y lo celebré con una foto de la película 300. Tres años después,el blog alcanzó tres veces esa suma. Si bien he tenido períodos muy variables de publicación, todavía sigo disfrutando mucho de escribir e interactuar con los lectores.

Nuevamente aprovecho la oportunidad para agradecer a los lectores, a quienes dejan algún comentario, crítica, pregunta, y demás. Las dos partes más entretenidas del blog son escribir (con todo lo que eso incluye) y posteriormente conocer las reacciones de los lectores.

El próximo hito: El 21 de junio el blog cumple 4 años online :D

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 40

Mayo 16th, 2011 - [Enlace local]

Estos son los enlaces publicados en Variable not found en Facebook y Twitter desde el lunes, 09 de mayo de 2011 hasta el domingo, 15 de mayo 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...

Picando Código

DRM: El Nintendo 3DS es un ataque a la privacidad y los derechos de sus usuarios

Mayo 15th, 2011 - [Enlace local]

Nintendo 3DS

Nintendo 3DS

¿Qué es el DRM? Digital Restrictions Management, o Gestión Digital de Restricciones. DefectiveByDesign.org es una campaña de base amplia en contra del DRM orientándose contra los grandes medios de comunicación, fabricantes que no ayudan y distribuidores de DRM. La campaña tiene como objetivo generar conciencia en los fabricantes sobre llevar sus productos con DRM al mercado.

Es así que la campaña ha atacado al iPad, iPhoneKindle de Amazon (recordemos el vergonzoso y mega irónico caso de los libros de Orwell) y más. Esta vez le toca a mi compañía preferida de videojuegos: Nintendo.

El Nintendo DS es una excelente consola portátil de videojuegos. Con él, Nintendo tuvo la oportunidad de abrir su mercado al desarrollo homebrew (software no oficial escrito por hobbistas o estudios independientes) a través de dispositivos no oficiales de terceros.

En vez de abrazar esta oportunidad y explotarla, siendo lo que sus usuarios demandaban, en los siguientes dispositivos se esmeró en luchar en contra de estos dispositivos y contenidos no oficiales.

Ahora Nintendo ha ido más lejos con su Nintendo 3DS, agregándole montones de sistemas de control y ataques directos a la privacidad de sus usuarios. En la época de la información, la materia prima para el negocio de las grandes empresas es la información. Y Nintendo no se quiere quedar afuera, entrando en este negocio de dudosa ética.

A continuación les dejo la información publicada en el sitio de Defective By Design, en la campaña “Brick Nintendo before they brick you!“:

El Nintendo 3DS viene con condiciones de servicio (TOS – Terms of Service) que no deberían ser aceptadas. Para imponer estos términos, Nintendo usa tecnología Gestión Digital de Restricciones (DRM). Por la Digital Millennium Copright Act (DMCA), los usuarios están legalmente privados de modificar sus dispositivos para bloquear las indecencias de Nintendo. Esta combinación de restricciones legales y tecnológicas hace al Nintendo 3DS dudoso, tortuoso y defectuoso. Esta página subraya algunas de las partes más sucias del TOS impuesto por DRM.

El Nintendo 3DS rastrea toda tu actividad y reclama el uso de tu información

El Nintendo 3DS mantiene un rastro de cualquier juego que juegues, junto a cualquier dato o información creados durante el uso del dispositivo. Esto incluye información personal como nombre, dirección, u otra información que ingreses; así como “edad, género, área geográfica, datos de juego, estado online, número de serie e ID del sistema Nintendo 3DS, información del certificado del dispositivo, cookies, Friend Codes, información de access point inalámbrico, dirección de Internet Protocol (IP), y la dirección Media Access Control (MAC)” (para citar a la Política de Privacidad del Sistema Nintendo 3DS). Adicionalmente, colectan todo el “User Content”, el cual definen como todos los “[...] comentarios, mensajes, imágenes, fotos, películas, información, datos y otro contenido” (Capítulo 6, Nintendo 3DS End User License Agreement).

Al aceptar este Acuerdo o usando el Sistema Nintendo 3DS o el Servicio Nintendo 3DS, también le concede a Nintendo una licencia sublicensiable global, libre de regalías, irrevocable, perpetua y no-exclusiva de usar, reproducir, modificar, adaptar, publicar, traducir, crear trabajos derivados de, distribuir, ejecutar y mostrar tu Contenido de Usuario en totalidad o parte e incorporar tu Contenido de Usuario en otros trabajos, en cualquier forma, medio o tecnología conocida o desarrollada más tarde, incluyendo para motivos promocionales o de marketing. (Capítulo 1, Nintendo 3DS End User License Agreement)

Por favor noten lo absurdo de esta demanada cuando considerar algo como las fotos sacadas con la cámara del 3DS. ¿Pueden imaginar que Canon o Nikon demandara los derechos de usar las fotos sacadas por ustedes en una de sus cámaras? ¿Pueden imaginarlos llamándolos criminales por modificar el software en la cámara para mantenerlos lejos de sus fotos?

Brick Nintendo before they brick you!

Brick Nintendo before they brick you!

El Nintendo 3DS transmitirá tu información a Nintendo

El Nintendo 3DS enviará el log de Actividad a Nintendo cuando el wifi esté conectado.

Aceptas que tu Sistema Nintendo 3DS se conectará a Internet y a los servidores de Nintendo – incluyendo en Modo Activo como en Modo Sleep – para una variedad de propósitos. incluyendo para obtener actualizaciones del sistema o del User Content Restriction System (Sistema de Restricción de Contenidos de Usuario), por razones de diagnóstico o para transmitir archivos de log del sistema como está descripto en la Política de Privacidad, o para recibir Contenido. (Chapter 1, Nintendo 3DS End User License Agreement)

Nintendo puede elegir compartir tu información y usarla para enfocar anuncios hacia tí.

También podemos compartir dicha información y cualquier Contenido de Usuario que crees con terceras partes. Podemos compartir tu PII, Non-PII, e Información Agregada con terceras partes para completar tus transacciones y proveerte con anuncios y otros materiales promocionales en tu Sistema Nintendo 3DS. (Nintendo 3DS System Privacy Policy)

Nintendo pude actualizar el 3DS sin tu conocimiento y bloquear tu dispositivo remotamente

Nintendo afirma que “puede actualizar o cambiar el Sistema Nintendo 3DS o el Servicio Nintendo 3DS en totalidad o parte, sin avisarte.” Esto incluye “software embebido” – también conocido como el firmware de tu dispositivo (Chapter 6, Nintendo 3DS End User License Agreement).

Lo peor de todo, Nintendo ha afirmado el derecho de usar la información que colectan de tu dispositivo para juzgar si estás permitido a usarlo (énfasis agregado):

Luego de que el menu del Nintendo 3DS se actualice, cualquier modificación técnica no autorizada existente o futura del hardware o software de tu Sistema Nintendo 3DS, o el uso de un dispositivo no autorizado en conexión con tu sistema, hará que el sistema quede permanentemente injugable. El contenido derivado de la modificación no autorizada del hardware o software de tu sistema Nintendo 3DS será eliminado. La falta de aceptación de la actualización puede hacer injugables juegos y nuevas características. (Chapter 3, Nintendo 3DS End User License Agreement)

Los niños y el 3Ds

Se supone que los niños que usen el 3DS deben saber que no pueden compartir ninguna “Información Personalmente Identificable” (PII), con sus 3DS. Así es, los niños menores de 13 no deberían usar sus nombres verdaderos para crear su nickname de juego, tomar fotos con la cámara incluida, o participar en ninguna de las maneras en que el 3DS está configurado para alentar. Si no lo hacen, Nintendo reclama los derechos de uso de sus fotos, darle su información a otras compañías, anunciarles, y más.

Los niños no deben incluir ninguna PII en sus nombres de usuario, nombre Mii, información de perfil MII, nicknames en juegos u otros contenidos de usuario en sus Sistemas Nintendo 3DS. Los niños no deben revelar PII cuando se comuniquen con otros Sistemas Nintendo 3DS o Nintendo a través de las características de comunicación inalámbrica del Sistema Nintendo 3DS (Nintendo 3DS System Privacy Policy)

Si los niños no deberían usar el dispositivo para lo que está hecho, ¿entonces por qué Nintendo lo está orientando hacia los niños?

Hasta acá el artículo de DefectiveByDesign. Si todavía están leyendo, comprenderán el verdadero peligro de este sistema. Confío en que los hackers harán su trabajo, y siempre van a conseguir una manera de evitar todos estos controles draconianos y vergonzosos a los que Nintendo pretende someter a sus propios consumidores. La campaña no se queda solo en la difusión de esta información, sino que además se está tomando acción directa hacia la compañía:

Brick

Brick

Bloquea (Brick) a Nintendo antes que te bloquee a tí

Hay dos maneras de hacer esto:

Por favor comparte esta historia con tus amigos en redes sociales y por email. ¡Cuanto más ladrillo, mejor!

La carta será enviada al Presidente y COO de Nintendo, Reggie Fils-Aime. Hasta el viernes pasado se habían enviado 70 ladrillos, y el objetivo es de llegar a 200 para mañana.

Además, la campaña DefectiveByDesign.org llamo al centro de soporte de Nintendo y confirmaron que probablemente no será posible desbloquear un dispositivo una vez que lo han “brickeado”. Además dijeron que cualquier trabajo que hicieran intentando arreglar un 3DS bloqueado no sería cubierto por la garantía, ya que ésta habría sido anulada una vez que el 3DS es bloqueado. Por lo tanto, tendrías que pagarles para que intenten arreglarlo. Así que esto no es solo un hipotético — Nintendo sabe lo que está haciendo.

Yo ya hice mi parte con un ladrillo y medio :)

Comparte esta historia, genera conciencia y si puedes, colabora con un ladrillo. No podemos permitir que las empresas se vuelvan en contra de sus usuarios e invadan nuestra privacidad sin nosotros estar concientes de eso. No mucha gente lee los acuerdos de uso o términos de servicio de los dispositivos, y probablemente nadie se vaya a esperar esto de una consola portátil de videojuegos. Por eso es importante difundir esta información.

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

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

Picando Código

1 año con ArchLinux

Mayo 14th, 2011 - [Enlace local]

ArchLinux

ArchLinux

Hoy celebro 1 año desde que migré a ArchLinux desde Debian Squeeze en mi computadora de escritorio Hoth. Estoy muy contento de haber hecho el cambio, ya que me siento muy cómodo usando Arch. Uno se acostumbra mucho a usar el software de vanguardia, y es difícil volver atrás.

Si les interesa leer más sobre ArchLinux en comparación a Debian les recomiendo uno de los mejores posts que he escrito en el blog: ArchLinux vs Debian GNU/Linux

Desde el principio he venido usando el entorno de escritorio virtual KDE. Si bien he probado varios, al final siempre termino en esta opción.

KDE ha ido avanzando mucho, y se ha vuelto un entorno de escritorio muy completo. Hoy por hoy, siento que  es “perfecto”, ya que tengo todo lo que necesito configurado bien a la mano. Me acostumbré a KDE 4, y ya no recuerdo qué era KDE 3. Uso GNOME en el trabajo, y siempre siento que es “mi entorno secundario”. Si bien uso en general las mismas herramientas, me siento mas cómodo y ágil en KDE.

ArchLinux KDE Enero 2011

ArchLinux KDE Enero 2011

En cuanto a la instalación de software, creo que no he encontrado aplicación que no se encuentre en los repositorios de ArchLinux o en el “peor de los casos” en AUR. Pero que esté en AUR significa que puedo instalarlo con yaourt, y contar con los comentarios y el soporte de la comunidad.

En general, estoy conforme con el diseño del sistema. Como dije desde un principio, al pasar a ArchLinux hay que aprender. Y esto es bueno, lo que uno aprende acá, se puede aplicar para resolver problemas en otra distros. La filosofía de ArchLinux es mantenerse simple.

ArchLinux KDE 4.6 - Febrero 2011

ArchLinux KDE 4.6 - Febrero 2011

A veces es complicado mantener otra distro cuando estamos acostumbrados a hacer cualquier modificación al sistema a mano en Arch, sabiendo que otras distros instalan paquetes y configuraciones “por defecto”, las cuales tenemos que adivinar o leer por ahí.

La comunidad de ArchLinux es – desde mi punto de vista – la excelencia de una comunidad GNU/Linux. Cualquier problema común pasa a ser resuelto a los minutos de aparecer. Cualquier aprieto específico es resuelto con la ayuda del resto de la comunidad. Su documentación es infalible y actualizada regularmente. Es impresionante el hecho de encontrarse con un atolladero al actualizar el sistema, y que este ya haya sido resuelto para cuando lo detectemos.

ArchLinux KDE Mayo 2011

ArchLinux KDE Mayo 2011

ArchLinux te da las herramientas para manejarte ante cualquier situación, está diseñado para enseñarte a aprender a resolver problemas buscando en su documentación, y en el peor de los casos preguntando en los foros. Como he comentado, la comunidad es muy activa, por lo que uno siempre cuenta con un usuario más experimentado para darnos una mano. En este año de uso, mi balance es totalmente positivio, y no he tenido ninguna traba o problema circunstancial que me haya dejado en descontento con ArchLinux.

Si les interesa aprender más sobre ArchLinux, y apoyar al proyecto, pueden comprar el manual oficial:Arch Linux Handbook 2.0: A Simple, Lightweight Handbook.

Como conclusión, recomiendo a todos aquellos usuarios curiosos darle una oportunidad a este sistema. Si son como yo, no se van a arrepentir…
En cuanto a los lectores que usan ArchLinux:

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

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

Picando Código

A partir de mañana en Montevideo Cómics

Mayo 13th, 2011 - [Enlace local]

Voy a pasar este fin de semana en Montevideo Cómics. Sigan el enlace para ver la agenda y más información del evento. Probablemente la semana que viene publique algún post comentando lo que fue y las fotos que saque o consiga durante el evento.

Cisplatino Versus y Sicotrónica

Cisplatino Versus y Sicotrónica

Una de las tantas cosas buenas de este evento es la posibilidad de conseguir nuevos ejemplares de cómics uruguayos. Entre ellos se presentarán los nuevos cómics de Cisplatino Versus y Sicotrónica de los que habló Pablo Zignone en la entrevista que le hice.

GAS3K.1

GAS3K.1

Estos ejemplares ya se pueden conseguir en varios quioscos y librerías de Montevideo. Lo he visto hasta en un quiosco de revistas de la avenida 18 de Julio, así que no van a tener problemas en encontrarlos. De todas formas si no es así, pídanlos. Esto ayuda a que los vendedores vean que hay una demanda :)

También va a estar la versión impresa de GAS Comics, una revista con un elenco variado de autores, y material de Dragon Comics, y Ninfa Comics entre otros.

Si quieren saber más, dense una vuelta por Multiverseros y el artículo: Publicaron y publicamos. En él comentan más detalles de los títulos nacionales que salen calentitos de la imprenta directo al Cine Plaza para esta edición del Montevideo Cómics. Además en los comentarios se agregan más títulos que habrán para comprar. Habrá que romper la chanchita…

Recuerden que va a haber además concurso de cosplay, juegos de Rol, campeonato de Marvel Vs. Capcom 3, demos del Kinect, los Cazafantasmas, libros de ciencia ficción uruguayos y sus autores, animación, figuras de acción, animé, una mesa de negocios y mucho más.

En fin, un evento completito. Además del contenido del evento es una buena oportunidad para conocer gente de los distintos ámbitos que participan.

¡Nos vemos ahí!

 

 

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

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

Picando Código

No más AdSense en Picando Código

Mayo 13th, 2011 - [Enlace local]

Google AdSense

Google AdSense

Algunos ya lo habrán notado, decidí quitar AdSense del blog. Haciendo un balance entre lo molesto que resulta para el lector y la ganancia, creo que no vale la pena tener publicidad de AdSense en Picando Código.

Personalmente me irrita leer un sitio donde la publicidad ocupa una parte importante de la página. Veo muchos sitios donde hacen intentos desesperados por confundir al visitante para que haga clic en sus anuncios y genere unos centavos más de ganancia. También hay algunos cuyo único propósito es generar visitas para obtener clics y cobrar AdSense a fin de mes.

Si bien no empleaba estas estrategias, me di cuenta que los dos banners enormes de AdSense que tenía hacían “feo” al blog. No es un blog que pretenda ser profesional, nunca dejó de ser un hobby, pero algunas publicidades le daban una imagen bastante mala.

Últimamente la mayoría de las publicidades que veía, no tenían nada que ver con temáticas que podrían interesarle a los lectores del blog. En un principio recuerdo habían publicidades con enlaces de texto orientadas a software libre, desarrollo, etc. Pero recientemente encontraba más publicidades con Flash relacionadas a temáticas totalmente ajenas e irrelevantes.

Tras encontrarme con esto tantas veces me di cuenta que no me gustaba, no es lo que quería para el blog, y no tenía sentido mantenerlo.

Las “ganancias” que genera AdSense fueron a veces suficientes para pagar el servicio de hosting y dominios de Picando Código, Aplicando Scrum, Navegadores Web y otros proyectos. Esto significó no tener que pagar de mi bolsillo para tener el blog arriba. Pero no es algo que me preocupe ahora. Quiero tener este blog, así que tener que invertir dinero en él no es un problema (mientras el bolsillo lo permita), como no lo era desde el momento en que gasté los primeros pesos para ponerle un dominio y hosting propio.

Actualmente tengo publicidad de enlaces y mi proveedor de hosting: Hostgator. No solo “gano dinero” por referir clientes, sino que realmente lo recomiendo. Desde que uso su servicio no he tenido quejas. Sus datacenter pasaron por un incendio y un importante downtime por corte de energía, pero siempre tuve una respuesta inmediata. El soporte técnico es instantáneo y de excelente calidad, no hay problema que no haya podido resolver e incluso me han ayudado cuando el error venía de mi parte. Así que no es solo por un tema de publicidad, sino que realmente cuando alguien me pregunta, recomiendo Hostgator.

Estoy interesado en probar otras alternativas para el sitio sea “autosustentable”. Pero en caso de hacerlo, pienso usar algún mecanismo donde tenga más control sobre la publicidad en el blog. No solo para cuidar la imagen, sino para ofrecer algo que le pueda realmente servir a los lectores, y por lo tanto a los posibles auspiciantes. Cualquier idea o propuesta es bienvenida :D

Así que por ahora, no verán más las publicidades de AdSense en el blog.

Fuente de la imagen:
Andrew Magill en Flickr

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

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

MadeInFlex

Disponible Flash Player 10.3 para desktop y Android devices

Mayo 13th, 2011 - [Enlace local]

Ya ha visto la luz la nueva versión de Flash Player, disponible para Android, Linux, MacOS y Windows.
Flash Player 10.3 trae mejoras en cuanto a estabilidad, seguridad y protección de la privacidad del usuario. También viene con nuevas características referentes a video y audio.

Las características que incorpora Flash Player 10.3 son:

Podéis descargarlo y consultar en este enlace.

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

Monocaffe

Monitor Tomcat/JBoss served connections

Mayo 12th, 2011 - [Enlace local]

Say you want to monitor how many connections each of your JBoss/Tomcat servers are serving, because, you might want to make sure load balancing is working correctly. This can be accomplished by reading this information from an MBean, in this case the GlobalRequestProcessor.



jconsole screenshot of a jboss jvm
The image speaks by itself. So, depending on how your Tomcat server is being accessed, you can count the number of served requests it has processed and many more data which could become useful someday.

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

Picando Código

Avances en robótica

Mayo 12th, 2011 - [Enlace local]

Últimamente me han llegado algunos videos interesantes sobre robots. Los avances que se han visto en esta área en los últimos tiempos son sumamente interesante. Cuando el primer robot se alce en contra de sus amos humanos y lo levante del cuello sometiéndolo a su poder, seguramente su diseño esté basado aunque sea en parte en el trabajo que comento a continuación…

Robot atrapa dos pelotas en el aire y prepara café

Se trata de Justin, un robot desarrollado por el Centro Aeroespacial Alemán para reparar satélites. Además de esto, Justin fue enseñado a realizar tareas más divertidas como atrapar dos pelotas en el aire y preparar café:

En primer lugar, agarra una pelota en el aire, Una tarea bastante compleja ya que incluye percepción, una estrategia de atajada, control corporal y destreza. La pelota se captura con cámaras estéreo (en la cabeza del robot hay un sistema QuadCore con Linux). La tarea se realiza en base a predicciones de trayectoria generando un trayecto en tiempo real calculad en un cluster externo. Éste calcula dónde y cuándo es óptimo atrapar la pelota.

Los movimientos son ejecutados por el brazo, torso y plataforma móvil. Las articulaciones de la cabeza se controlan para mantener la pelota en el campo de visión de las cámaras y la mano se cierra al tiempo de agarre planeado. ¡El porcentaje de acierto en la atajada es de un 80%! Hay que tomar en cuenta la cantidad de variables posibles.

En la segunda parte, ¡Justin prepara café! Se pone a Justin en un escenario real con objetos domésticos. El ambiente de software permite la definición de programas controlados por robots que pueden reaccionar ante la visión y forzar información. En este caso, el sentido del tacto compensa la precisión insuficiente de la visión. Los dedos se usan para detectar el contacto con la máquina de café.

Los avances realizados en Justin seguro llevarán a robots todavía más humanos en el futuro, pudiendo hacer trabajos más delicados y sensibles.

Visto en Slashdot.

Los robots aprenden sobre la fuerza

La empresa Yaskawa construyó dos brazos robóticos que comenzaron a entrenarse en los artes de la fuerza como su padre… El siguiente video es una demostración de la compañía en la conferencia IEEE Internation Conference on Robotics and Automation en Shanghai este año donde ambos robots realizan una “batalla” con sables láser:

Aparentemente ya habrían recibido un contacto del General Grievous quien estaría contratando los servicios de la empresa para una consultoría. [Fuente]

Robots jugando a la pelota

Por último este video donde dos robots helicópteros hacen malabares con una pelota. ¡Realmente increíble! Y hay que aclarar que los robots son autómatas y sus movimientos no son controlados por humanos. Bueno, son controlados por un par de computadoras, pero al lograr integrar todo eso en un mismo dispositivo, podríamos decir que los robots serían autómatas.

Más información: ETH Flying Machine Arena

Sobre Skype y Microsoft…

Robots

Robots

Por último quisiera expresar mi opinión respecto a cierto “chiste” que he venido viendo en Internet. Creo que ya es momento de abandonarlo:

Skype + Microsoft .net = SkyNet

Se hizo viejo muy rápido, y Skynet no es algo de lo que podemos andar riéndonos así tan tranquilos. No creo que a nuestros amos robots les caiga bien que los relacionen a Microsoft. Si las máquinas toman conciencia y asumen el control, probablemente no sea gracias a software de Microsoft. Y si lo fuera, probablemente la inteligencia artificial supere a la humana, por lo que lo primero que harían sería desinstalar Windows e instalarse un software mejor.

La robótica es otra de esas cosas que tanto me intrigan e interesan, pero realmente no he tenido la mas mínima experiencia con nada de esto (a no ser que leer ciencia ficción cuente). Es una de las tantas cosas que van quedando en la lista de cosas por estudiar y aprender. Si tienen algo interesante para compartir sobre este interesante mundo o han hecho algo relacionado, ¡me gustaría saber más!

Buen momento para recordar: ¿Qué pasaría si robots gigantes invadieran Montevideo?

 

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

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

Picando Código

Load comillas comillas, para usuarios de ZX Spectrum

Mayo 12th, 2011 - [Enlace local]

Multiverseros

Multiverseros

Load comillas comillas es una columna del portal Multiverseros dedicada a los juegos para ZX Spectrum. Por si no leyeron ya el post que publiqué sobre Multiverseros, es un portal sobre cómics, cine, tv, juegos y todas esas aficiones que se asocian a los nerds, geeks, freaks o como quieran llamar a aquellas personas con gustos que implican dejar volar la imaginación.

Además de tener unos contenidos muy buenos y de actualización bastante regular, el sitio con un foro donde he estado pasando mucho tiempo últimamente. ¡Están invitados a formar parte de la comunidad!

Volviendo al tema, “Load comillas” es una de las columnas relativamente nuevas del sitio:

Para los que corremos con los botines de los treinta y algo, sabemos que los primeros videojuegos no venían en DVD ni CD… ¡ni siquiera en diskettes! Cada una de esas piezas de arte con las que pasábamos nuestras jornadas de diversión venían en simples cintas magnéticas (los populares y cada vez menos recordados “cassettes”). Allí dentro se encontraban nuestros pequeños héroes poligonales de tecnicolor esperando ser guiados para rescatar a la damisela en apuros de turno
(…)
Para los que no conocieron estas maravillas del tecnicolor y los gráficos poligonales, para quienes aún las añoramos y para el gran Sir Clive Sinclair es esta columna.

Personalmente no viví la época de la ZX Spectrum. Los recuerdos más antiguos que tengo con computadoras son jugando Prince Of Persia en un monitor monocromático de fósforo verde, que creo eran computadoras ya posteriores. Pero me encantan estas maravillas antiguas, y ya comencé una colección con mi Atari 65 XE. Tengo en la mira la ZX Spectrum desde entonces, pero no he tenido oportunidad de conseguir una en precio todavía..

Load comillas comillas

Load comillas comillas

Conocer esta parte de la historia es imprescindible. Así que con esta columna me voy informando sobre algunos de los juegos que hicieron historia junto a este compañero (me cuido de no llamarla “aparato” ya que podría herir alguna sensibilidad). También leyendo los comentarios, se reviven las experiencias de los jugadores que en su momento disfrutaron de estos juegos. Parece que la nostalgia es parte importante del perfil de nuestra especie.

Hasta ahora se publicó un artículo introductorio “Y el mundo nunca fue igual“, relatando su historia. Además, hay artículos para los juegos Atic Atac un juego de aventura de 1983 y Sir Fred, un juego de aventura y plataformas desarrollado en España. Además de un breve resumen de cada juego, comentan particularidades y se incluyen los ROMS y material adicional, así como videos.

Sé que varios lectores del blog han sido usuarios de ZX Spectrum y que guardan un cariño muy especial hacia este viejo amigo. Los invito a acercarse a Multiverseros y leer Load comillas comillas.

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

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

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

Peligro, las herramientas te cambian de objetivo

Mayo 12th, 2011 - [Enlace local]

Generalmente buscamos en las herramientas que empezamos a utilizar la respuesta a un problema. Tenemos una necesidad que queremos cubrir, y creemos que una determinada herramienta la cubre: necesidad de llevar el control de incidencias, necesidad de orden en el desarrollo, necesidad de comunicarnos,...Generalmente estas herramientas acaban fagocitándonos y cambiandonos el objetivo que queríamos

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

Picando Código

Recursos para aprender a desarrollar con Android

Mayo 11th, 2011 - [Enlace local]

Android: No es malo, tiene hambre

Android: No es malo, tiene hambre

En reddit programming anunciaron la creación de un nuevo sub-reddit. Se trata de un reddit para aprender a programar en Android: learnandroid.

Por ahí también me enteré de la existencia de androiddev. En estos dos sub-reddit hay varios enlaces interesantes para aquellos que – como yo – se quieran introducir en el mundo de desarrollo Android.

Algunos de los enlaces interesantes que encontré, los comparto a continuación:

También me encontré con dos herramientas que prometen mucho, ya comentaré tras jugar un poco con ellas qué tal me parecieron:

Comparto estos recursos esperando que le puedan ser útiles y para dejarlos como referencia acá. Este año mis objetivos son Ruby y Android, y de a poco me voy metiendo más con Android…

 

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

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

Variable not found

[Auges] Un paseo por ASP.NET MVC

Mayo 11th, 2011 - [Enlace local]

AUGESTras la presentación oficial del grupo a finales del mes pasado, ahora toca estrenarse en la realización de actividades de difusión que forman parte de los objetivos e intenciones de AUGES.



Y qué formato mejor que un Webcast gratuito, qué temática más apropiada que ASP.NET MVC, y quién mejor que Eduard Tomás, Technology Specialist en Raona, miembro de AUGES y todo un experto en la materia, para esta sesión inaugural :-)

Un paseo por ASP.NET MVC

En este Webcast vamos a dar un paseo por el framework de ASP.NET MVC. Veremos cuáles son sus características básicas, cómo crear aplicaciones web usando el patrón Modelo-Vista-Controlador e intentaremos desmentir algunos mitos que hay a su alrededor.



Si has oído hablar de ASP.NET MVC pero no sabes exactamente en qué consiste o bien no conoces este framework de desarrollo web basado en ASP.NET, entonces este Webcast es para ti! ;-)


Os esperamos el próximo miércoles 18 de Mayo a las 19:30 horas (horario peninsular español) en un evento que no os podéis perder.



Enlaces:

Publicado en: Variable not found



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

Picando Código

Terminado proyecto de alta prioridad de la FSF: The Unarchiver para RARv3

Mayo 11th, 2011 - [Enlace local]

La Free Software Foundation anunció en su blog:

The Unarchiver

The Unarchiver

Otro proyecto de Alta Priodidad terminado: The Unarchiver provee herramientas libres de extracción RARv3

Esta colección de software llena una brecha importante en el soporte de software libre para diferentes archivos.

Software libre para soportar el formato de archivado RARv3 ha sido listado en nuestra lista de Proyectos de Alta Prioridad ya por un tiempo. Siempre tuvimos maneras de crear y extraer formatos de archivado libres, usando herramientas como GNU tar e Info-ZIP. El formato RARv3 es privativo, así que no queremos que reemplace estas herramientas, pero no es raro verlo siendo usado para distribuir archivos multimedia por Internet. Eso siginifica que la falta de software libre para extraer archivos RARv3 ha sido muy sentida.

Estamos contentos de compartir la noticia de que existe ahora un proyecto de software libre para cerrar la brecha, y podemos marcar este item como terminado. The Unarchiver es una pequeña colección de software escrito por Dag Ågren. Incluye dos utilidades principales, unar y lasr, que leen y extraen archivos de muchos formatos diferentes, incluyendo RARv3. Estos corren en GNU/Linux, así como Mac y Windows. Todo el código es liberado bajo la licencia GNU Lesser General Public License version 2.1, con la opción de usar versiones más recientes de la licencia, para que sea fácil de reutilizar en otros proyectos que quieran incluir soporte para RARv3.

Hay muchas maneras para que quienes quieran contribuir ayuden a hacer mas útiles estas herramientas para los usuarios de software libre. unrar y lsar no están convenientemente empaquetados en la mayoría de las distribuciones, así que sería un gran comienzo. También nos encantaría ver estos programas integrados con herramientas gráficas  de extracción existentes como File Roller y Ark.

Nos gustaría agradecer a Dag Ågren por el tiempo y esfuerzo que ha invertido en este importante proyecto de software libre; es una contribución invaluable a la comunidad. Si necesitan una herramienta para extrar archivos RARv3, no busquen más lejos de unar y lsar.

Paquete en ArchLinux

Agrego que ArchLinux ya cuenta con The Unarchiver empaquetado por la comunidad en AUR. Simplemente debemos instalar el paquete unarchiver, y contaremos con las herramientas unar y lsar:

The Unarchiver - ArchLinux

The Unarchiver - ArchLinux

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

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

Información legal y técnica