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

Fetishcode

Cambiar aspecto de Grub en Ubuntu.

Noviembre 19th, 2010 - [Enlace local]

A

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

MadeInFlex

Oferta Programador Senior Flex Conento

Noviembre 19th, 2010 - [Enlace local]

Descripción de la empresa

Conento es la primera empresa consultora española especializada en consultoría de marketing analítico. Nuestro objetivo es, empleando distintas metodologías analíticas, asesorar a nuestros clientes para mejorar la eficiencia y rentabilidad de sus actividades estratégicas, comerciales y de marketing.

Nuestra principal meta es conseguir que nuestros clientes generen mayores beneficios mediante el uso de sistemas de información que, combinando la potencia de nuestros modelos matemáticos con los últimos avances en tecnología, permiten optimizar la inversión en medios y la gestión de Marketing.

Descripción de la plaza

Buscamos programadores senior para entrar a formar parte de nuestro equipo de tecnología y participar en el análisis y desarrollo de aplicaciones para importantes clientes del mundo de los medios, el marketing y la comunicación.

Requisitos y conocimientos

El candidato debe tener conocimientos de Java y Flex. Se valorarán positivamente otros conocimientos (PHP, frameworks, motores de persistencia, linux, MySQL, postreSQL …)

Contacto
tecnologia@conento.com

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

MadeInFlex

Adobe Acrobat Portfolio SDK

Noviembre 19th, 2010 - [Enlace local]

Adobe acaba de lanzar la prerelease de otro producto: Adobe Acrobat Portfolio SDK. proporciona nuevas herramientas de desarrollo para los IDE’s Flash Builder y Adobe Flash Professional. Con estas herramientas, los desarrolladores y diseñadores pueden usar sus habilidades en ActionScript y Flex para crear diseños personalizados PDF Portfolio para usarlos en Adobe Acrobat X. Ahora, la comunidad de Flash pueden orientar sus resultados del cliente para el ecosistema PDF y la plataforma de Adobe Reader.

Más información en Adobe Labs.

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

Cerebro en la Sombra » Técnico

Miniproyecto – Valenbisi.mobi, geolocalización del servicio de bicicletas de Valencia para móviles y sms

Noviembre 18th, 2010 - [Enlace local]

Como supongo que la mayoría no sabréis de qué hablo, empezaré por el principio.

Valenbisi es el servicio urbano de alquiler de bicicletas de Valencia a semejanza del que existe en muchas otras ciudades españolas y europeas. La idea es fomentar su utilización para desplazamientos cortos ya que el abono anual (20 euros) permite alquilar gratuitamente la bicicleta la primera media hora de cada día. Hay varias estaciones a lo largo de la ciudad y simplemente coges la bici en una y la dejas en la que mejor te venga. Valencia creo que es una de las ciudades que más se prestan a un servicio de este tipo por dos razones básicas, la climatología y la falta de cuestas. Al parecer el éxito ha sido espectacular tras el verano hasta tal punto que el servicio de abonos está saturado de solicitudes, el nuestro tardó alrededor de un mes en llegarnos.

El sábado pasado mi pareja y yo decidimos acercarnos a la playa y darnos un paseo en bici, hacía un día fenomenal y el calorcito invitaba a pasear. El plan era coger la bicicleta al principio de la playa y dejarla al final para regresar a pie. Pues bien, el problema fue que a la hora de regresar no había ningún puesto libre donde dejar las bicis en las 3 estaciones por las que pasamos, tuvimos que volver al punto de inicio donde tuvimos la suerte de encontrar los dos que necesitábamos. Dos chicas que llegaron justos detrás nuestra no tuvieron la misma suerte icon razz Miniproyecto   Valenbisi.mobi, geolocalización del servicio de bicicletas de Valencia para móviles y sms . Esto nos planteó el problema que puede ser una situación de este tipo al tener que buscar otra estación que tenga enganches libres, puedes ir a la siguiente pero tampoco sabes si habrá puestos, con lo que te tocará ir a la siguiente y así indefinidamente. Si además del tiempo perdido tenemos en cuenta el dinero que pagas por el tiempo que pasa, no cabe duda que puede ser un serio inconveniente para el servicio. ¿Qué pasará cuando llegue el verano y todos los usuarios quieran bajar con sus bicis a la playa? Pues que no habrá donde dejarlas desde primera hora de la mañana. Estos días, siguiendo el problema, he visto que ocurre algo similar con las estaciones del centro de la ciudad en horario laboral, a las 10 de la mañana están casi todas completas. ¿Cómo sabes entonces dónde dejar tu bici?

Pues aquí llego yo a medio solucionar el problema icon razz Miniproyecto   Valenbisi.mobi, geolocalización del servicio de bicicletas de Valencia para móviles y sms . Una aplicación para el móvil que te dice las estaciones más cercanas con puestos libres o bicis disponibles, ya que el problema puede ser el contrario, que vayas a por una bicicleta y estén todas ocupadas. La diferencia con otras aplicaciones por el estilo es que no me he atado a Iphone o Android como casi siempre sucede en estos casos, he hecho algo que funcionará en la mayoría de terminales de los usuarios “normales”, otra cosa es que quieran utilizarlo. Para acompañarlo, he hecho una interfaz por SMS icon razz Miniproyecto   Valenbisi.mobi, geolocalización del servicio de bicicletas de Valencia para móviles y sms , que es más sencillo para la gente, pero sin la mayoría de opciones.

android 0 Miniproyecto   Valenbisi.mobi, geolocalización del servicio de bicicletas de Valencia para móviles y sms

Como funciona el servicio

Muy sencillo. Entras en http://valenbisi.mobi, le dices donde estás, que puede ser tu dirección o el número de estación de Valenbisi, y automáticamente te indicará el estado de las estaciones que tienes a tu alrededor, es decir, bicis y huecos libres que tienen. Además, si las que tienes cerca no tuviesen bicis o puntos libres, te permite buscar las más cercanas con disponibilidad. Todo ello acompañado de imágenes con mapas con las estaciones indicadas posicionadas y rutas para llegar.

Detalles técnicos

La implementación del sistema no me habrá llevado más de 10 horas incluidas las pruebas. Gracias a todos los que me habéis ayudado con ellas y a vuestras sugerencias icon smile Miniproyecto   Valenbisi.mobi, geolocalización del servicio de bicicletas de Valencia para móviles y sms .

Para desarrollarlo he utilizado:

No voy a explicar cómo se utilizan las API’s ya que están bien documentadas y son muy sencillas, todas basadas en peticiones HTTP que devuelven XML o json.

Cuando el usuario accede a http://valenbisi.mobi, si su navegador soporta localización, le saltará el aviso de que la página quiere usar esa información y automáticamente posicionará al usuario. Si no lo soporta, la mayoría de los casos, el usuario debe introducir su dirección o el número de la estación Valenbisi que le interesa. Con esos datos averiguamos donde está. Si es una dirección a través de Google Geodecoding API y si es un número simplemente con el API de Valenbisi. De un modo o de otro ya sabemos donde está el usuario.

Ahora simplemente debemos buscar las estaciones que tiene alrededor. Yo lo he hecho de dos formas. La primera es mostrar las estaciones que tiene a su alrededor a partir del mapa. Esta es una de las primeras cosas curiosas que he hecho. Para obtener el mapa de la posición del usuario, le pido a Google Static Maps API una imagen del mismo tamaño que la pantalla del teléfono del usuario, así verá todo lo máximo que le permita su dispositivo. Esto significa que cada usuario verá un mapa de distinto tamaño. Ahora tengo que averiguar las estaciones que aparecen dentro del mapa. Podríamos pensar en pasarle todas al API y que éste pinte las que aparecen en nuestra imagen y pase de las otras, pero la idea no funciona ya que Static Maps tiene un tamaño máximo de url, que por cierto no es muy grande, rebasado el cual la imagen da error. Así que lo que hice fue calcular cuanto espacio geográfico cabe en la imagen. Le pedí una imagen posicionando marcas cada 0,001 puntos de longitud y latitud. A partir de esa imagen calcule a cuantos píxeles correspondía cada salto. Con esta información, y manteniendo el zoom fijo, sabremos en cada momento qué coordenadas se van a ver en la imagen que le pida a Google ya que conozco el ancho y el alto que le voy a pedir, conozco las coordenadas del centro (la posición del usuario) y sé cuánto me puedo desplazar a lo largo de la imagen. No es 100% fiable pero nos sirve para lo que necesitamos. Ahora simplemente recorro todas las estaciones y si sus coordenadas están entre los límites de la imagen que voy a mostrar, añado la marca. A medida que el usuario se mueve por el mapa con las flechas, voy actualizando las estaciones que se ven en el mismo con este procedimiento.

La segunda manera de buscar estaciones que he utilizado es mostrar las estaciones más cercanas que cumplan uno de los posibles requisitos, que tengan bicis o que tengan huecos libres. Aquí el usuario no puede navegar por el mapa, simplemente le muestro a las que puede acudir. Para localizar las estaciones más cercanas, la opción más clara es consultar Google Directions Api entre la posición del usuario y todas y cada una de las estaciones y obtener las que están más cerca (uno de los parámetros que devuelve es la distancia), pero esto implicaría más de 100 llamadas al API por consulta, con lo cual no es viable. Aplicando conceptos básicos de trigonometría y coordenadas cartesianas, sabemos que, en un plano, la distancia (en línea recta) entre dos puntos es:

vector Miniproyecto   Valenbisi.mobi, geolocalización del servicio de bicicletas de Valencia para móviles y sms

Simplemente con los datos de la localización de estaciones y la posición del usuario y aplicando algunas operaciones matemáticas puedo averiguar aquellas estaciones que, siempre en línea recta y cumpliendo los requisitos de disponibilidad, están más cerca del cliente. Ordeno las distancias resultantes de menor a mayor y con las cinco primeras, ahora sí, consulto Google Directions API para que me de una distancia real entre el usuario y esas estaciones. Las vuelvo a ordenar por distancia y ya tengo aquellas más cercanas al usuario. Solo queda pedirle a Google Static Maps la imagen del mapa donde aparecen estas estaciones, ahora sin zoom para que lo ajuste automáticamente. Mucho más eficiente que consultar la distancia de las más de 100 estaciones.

Solo nos queda averiguar la ruta para ir desde la localización del usuario hasta la estación seleccionada. Static Maps no hace rutas, solo líneas rectas, pero podemos indicarle todos los puntos intermedios necesarios y que nos pinte las líneas entre ellos, con lo que si supiéramos los pasos que tiene que dar el usuario, podríamos pintar la ruta. Y para esto tenemos de nuevo Google Directions API, nos dirá los puntos entre el usuario y la estación. Solo tenemos que pasar estos puntos a Static Maps y tendremos la imagen de nuestra ruta.

x6 2 Miniproyecto   Valenbisi.mobi, geolocalización del servicio de bicicletas de Valencia para móviles y sms

Eso es todo, uniendo todas las piezas entre sí adecuadamente tendremos el sistema que os presento icon smile Miniproyecto   Valenbisi.mobi, geolocalización del servicio de bicicletas de Valencia para móviles y sms . El último toque fue añadir las opciones de idioma, para que los turistas puedan utilizar el servicio icon razz Miniproyecto   Valenbisi.mobi, geolocalización del servicio de bicicletas de Valencia para móviles y sms .

Finalmente vinieron las pruebas con algunos conocidos y los ajustes para los terminales más antiguos (en los nuevos se ve todo fenomenal icon razz Miniproyecto   Valenbisi.mobi, geolocalización del servicio de bicicletas de Valencia para móviles y sms ) .

Aquí van algunas capturas en distintos terminales:

Nokia X6

x6 1 Miniproyecto   Valenbisi.mobi, geolocalización del servicio de bicicletas de Valencia para móviles y sms

Nokia N95

n95 0 Miniproyecto   Valenbisi.mobi, geolocalización del servicio de bicicletas de Valencia para móviles y smsn95 2 Miniproyecto   Valenbisi.mobi, geolocalización del servicio de bicicletas de Valencia para móviles y sms

Nokia N73

n73 0 Miniproyecto   Valenbisi.mobi, geolocalización del servicio de bicicletas de Valencia para móviles y sms

Nokia N70

n70 1 Miniproyecto   Valenbisi.mobi, geolocalización del servicio de bicicletas de Valencia para móviles y sms n70 0 Miniproyecto   Valenbisi.mobi, geolocalización del servicio de bicicletas de Valencia para móviles y sms

Iphone

Iphone 1 Miniproyecto   Valenbisi.mobi, geolocalización del servicio de bicicletas de Valencia para móviles y sms Iphone 0 Miniproyecto   Valenbisi.mobi, geolocalización del servicio de bicicletas de Valencia para móviles y sms

BlackBerry 9000

bb9000 1 Miniproyecto   Valenbisi.mobi, geolocalización del servicio de bicicletas de Valencia para móviles y smsbb9000 2 Miniproyecto   Valenbisi.mobi, geolocalización del servicio de bicicletas de Valencia para móviles y sms

Android

android 3 Miniproyecto   Valenbisi.mobi, geolocalización del servicio de bicicletas de Valencia para móviles y sms

Interfaz SMS

Cuando ya lo tenía terminado se me ocurrió, ¿y por qué no hacer también una interfaz SMS para los usuarios que no tienen Internet en el móvil? Ya tenía todas las piezas y dado que profesionalmente me dedico a eso… 10 minutos icon smile Miniproyecto   Valenbisi.mobi, geolocalización del servicio de bicicletas de Valencia para móviles y sms

Envía BICI númeroDeEstación al 215000 y te devuelvo el estado de esa estación y las más próximas con sus direcciones. Por ejemplo:

BICI 146

Est. 146:2 bicis,23 libres.OTRAS:142,3 bicis,17 libres (C. GREGORIO GEA CRUCE C. PROFESOR BELTRAN BAGUENA )-143,15 bicis,15 libres (AV. MENENDEZ PIDAL CRUCE AV

Todo lo que quepa en los 160 caracteres permitidos. Coste del SMS 0,15 euros, igual que un SMS normal icon smile Miniproyecto   Valenbisi.mobi, geolocalización del servicio de bicicletas de Valencia para móviles y sms . Si usas habitualmente la misma estación puedes saber con antelación si tendrás bici o hueco.

Más no se puede pedir en tan poco tiempo. Os invito a probarlo. Se aceptan críticas, mejoras de usabilidad, nuevas funciones, etc…

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

Javier Pérez

Series de TV que me entusiasman: The Big C

Noviembre 18th, 2010 - [Enlace local]

Con este artículo abro una nueva categoría: Series TV. Quiero contar qué series de TV veo, por qué las veo, y qué me ofrecen.

En primer lugar, si veo series de TV es por dos motivos principales:

  1. Que estén en inglés (a poder ser en inglés británico) con subtítulos en castellano, porque mejoro mi inglés “cogiendo oído” y adquiriendo vocabulario y expresiones, además de conocer mejor la cultura, un aspecto fundamental para aprender un idioma.
  2. Que estén disponibles en las redes de compartición de ficheros (como bittorrent), ya que de este modo puedo ver cada episodio cuando tenga tiempo para ello, que no suele coincidir con el momento en el que las transmiten “en directo” por TV. Con esto no pretendo hacer apología de las descargas, sino dar un tirón de orejas a quienes impiden que pueda obtener este servicio de televisión a la carta de forma regulada (o “legal”, como dirían ellos), ya que pagaría por ver mis series favoritas. Si me lo permitieran.

Después de estos motivos hay otro más, que es propio de cada serie…

The Big C

Esta serie, que en estos momentos ya ha emitido los 13 episodios de su primera temporada, es una de las más bonitas y divertidas que he visto nunca.

Trata sobre cómo el cáncer cambia la vida de Cathy Jamison (Laura Linney: “El show de Truman”, “Mystic River”). De cómo la visión de la muerte le hace ver la vida de otro modo, de cómo la muerte consigue dar vida a una mujer que estaba muerta en vida. Es una comedia negra muy divertida y muy emotiva que te puede hacer reír y llorar en cuestión de segundos.

Laura Linney en The Big C

El marido de Cathy es Paul Jamison (Oliver Platt: “2012″, “Doctor Dolittle”), un personaje un tanto inmaduro, muy divertido, algo torpe, excéntrico, y muy entrañable, que nos regalará grandes momentos cómicos.

Oliver Platt en The Big C

Otros dos personajes que me han llamado especialmente la atención. Uno de ellos es el hermano de Cathy, Sean (John Benjamin Hickey: “Asalto al tren Pelham 1, 2, 3″, “Banderas de nuestros padres”), un economista de éxito que un buen día decidió convertirse en parte de la madre naturaleza y dejar atrás a toda la perversión capitalista, unos ingredientes más que suficientes para garantizar momentos muy cómicos. El otro es Marlene (Phyllis Somerville: “El curioso caso de Benjamin Button”), una vieja gruñona y desagradable que vive en frente de la casa de los Jamison, que pondrá cordura y paz en la la familia.

Como curiosidad, en el reparto también está la nominada a un Oscar por “Precious”, Gabourey Sidibe, quien hace el papel de Andrea Jackson, una antipática adolescente negra de buena familia a la que Cathy trata de ayudar con sus problemas y acaba convirtiéndose en parte de la familia Jamison.

El reparto de por sí ya era una garantía de éxito, aunque no siempre es así. Pero en este caso todos los personajes y los actores que los interpretan han resultado un auténtico acierto y una gran obra de arte.

Recientemente vi el último episodio, y me recordó a Emilio Duró, sobre el que escribí en el artículo anterior. Tanto esta serie como Emilio Duró hablan de lo mismo: de cómo ser plenamente optimista y feliz cada día de tu vida gracias a ser conscientes de que vamos a morir algún día.

La serie en versión original en inglés, y los subtítulos, la podéis conseguir aquí:
http://espoilertv.com/filtro/?b=the+big+c&busqueda=Buscar

¿Has visto ya la serie? ¿Qué te parece?

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

programania

Prestashop I : Presentación

Noviembre 18th, 2010 - [Enlace local]

Con licencia opensource y un mas que interesante marketplace de aplicaciones, Prestashop cuenta ya con 125000 usuarios y unas 40000 tiendas online (según su web). Hay una comunidad de desarrolladores y usuarios que está subiendo y una buena cantidad de ayudas y módulos libres que poder utilizar para nuestro proyecto.

Prestashop es un software de e-comerce basado en PHP y MySQL, bastante mas ligero que alternativas como Magento, puede funcionar incluso en un hosting compartido, programado con una orientación a objetos bastante buena y utilizando smarty como sistema de plantillas resulta un entorno “agradable” para desarrolladores.

Tiene un front office y un back office muy bien separados y muy configurables, ofrece pasarelas de pago de las mas comunes y un servicio online en el que se desarrollan pasarelas para cualquier banco pagándolas.
El front office por un lado ofrece un diseño atractivo y por otro utiliza tecnologías tipo AJAX para una interfaz agradable y de uso bastante intuitivo.

El back office es el mayor punto fuerto de Prestashop, altamente configurable con la posibilidad de crear distintas vistas de este en función de rol, para así tener niveles de acceso a los diferentes servicios “propietario” “dpto. att. cliente” “dpto. logísitica” y que cada cual vea solo lo que le “afecta”.La configuración de funcionalidades del sitio se realiza en base a una serie de módulos que se cargan o no, y que se ubican en el caso de los módulos relacionados con el front office.

Gestión de pagos con Paypal, de costes de envío, multiples categorias, múltiples imágenes por producto, gestión de impuestos, informes de ventas, de beneficios, de costes, configuración de opciones de compra practicamente ilimitadas (5 camisetas tipo whateverous color azul talla XL), gestión de tickets de promoción, configuración de descuentos (1 sombrero 5€, 2 sombreros 10€, 3 sombreros 12€) y así un largo et cetera.

La programación de módulos para Prestashop es sencilla por lo que una de sus principales diferencias con Magento (la gran alternativa), la existencia de una API que permita la comunicación con terceros es relativamente salvable escribiendo un módulo a medida, aunque otra de las diferencias, la existencia de múltiples tiendas bajo una única instalación por ahora no está salvada.

En resumen:
Si bien Magento es mas maduro, y tiene alguna funcionalidad mas que Prestashop, también requiere mas recursos hardware que en el caso de un pequeño negocio pueden marcar la diferencia entre lanzarse y no lanzarse a la aventura. Por otro lado, Magento tiene una curva de aprendizaje que supondra un mayor esfuerzo laboral y por tanto económico en el despegue de un negocio que como en el caso anterior podrá inclinar la balanza en el caso de un negocio de recursos limitados.

Para finalizar:
¿Por qué solo he contrastado Prestashop a Magento en este artículo? espero que esta imagen aclare esa duda.

-Prestashop I: Presentación
-Prestashop II: Instalación
-Prestashop III: Funcionalidades
-Prestashop IV: Funcionamiento del sistema (módulos módulos y mas módulos)
-Prestashop V: Personalización estética (integrar en el resto de diseño de tu web)


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

Viricmind Labs

Unitarium4C v0.2

Noviembre 17th, 2010 - [Enlace local]

Acabo de liberar la versión 0.2 de Unitarium4C , una librería destinada a facilitar la creación de suites de testeo unitario. Considero que esta versión ya puede ser calificada como una versión beta, a diferencia de la primera, que era una clarísima versión alpha (le faltaba de todo y era, por decirlo suavemente, poco más que un buñuelo).

Sin más, dejo el Changelog :) :

Saludos D

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

Bitácora de Javier Gutiérrez Chamorro (Guti)

Sieve en BASIC

Noviembre 17th, 2010 - [Enlace local]

Seguimos con Sieve tras el Sieve en Pascal, de nuevo, el mismo algoritmo, esta vez traducido a varios dialectos de BASIC, y luego compilado con ellos.

Como ocurriera con Pascal/Object Pascal, la poca portabilidad de BASIC entre plataformas y dialectos, ha sido necesario realizar pequeños ajustes en el código de uno y otro para poderlos compilar.

La opinión general, suele creer que BASIC es por definición un lenguaje lento, una idea que probablemente venga de cuando BASIC era mayoritariamente interpretado. No soy de ese parecer, ya que al tener un concepto de lenguaje de más bajo nivel que Pascal u otros, debería mostrarse muy competitivo. Hay que tener en cuenta también, que por el mal nombre de BASIC en estos últimos años, los esfuerzos con los que se puede contar para mejorarlo, son mucho menos que los de otros lenguajes más en boga como C++, Java, C# o el citado Pascal.

Todas las compilaciones se han hecho con el máximo nivel de optimización para velocidad en tiempo de compilación, y he descartado lenguajes como Visual Basic Script (VBS), JustBasic o Gambas que al ser interpretados, no iban a tener mucho que decir en esta prueba. Tampoco he invertido tiempo en el análisis de productos más o menos abandonados como RapidQ; ni en otros peculiares como DarkBasic o RealBasic.

Compilador Plataforma Tamaño ejecutable (bytes) Tiempo de ejecución (ms)
FreeBasic 0.21 x86 32.256 80.540
Hotbasic 6.3 x86 6.144 228.499
PowerBASIC Console Compiler 5.0 x86 15.872 43.368
PureBASIC 4.50 x64 7.168 99.714
QB64 0.91 x86 769.788 324.011
Visual Basic .NET 2010 x86 11.776 46.285
Visual Basic .NET 2010 x64 11.264 47.408


Encabeza la clasificación PowerBASIC, del que a pesar de no tener optimizador demasiado elaborado, obtiene una marca francamente buena, y que supera a la mayoría de compiladores de Pascal, y todo ello sin necesidad de aplicar alineaciones a mano.

Sorprendente Visual Basic .NET, que obtiene una meritoria segunda posición, con un rendimiento comparable a la media de Pascal compilado, y quedando muy cerca del líder, que no está nada mal, teniendo en cuenta que es bytecode. Como ya vimos con la versión en Javascript y en C, Sieve no es un algoritmo que saque partido de las arquitecturas de 64 bits, más bien le penaliza un poco.

A bastante distancia, casi el doble, queda FreeBasic, donde vemos la poca madurez del compilador cruzado x64.

Les sigue, el extraño PureBASIC, con un ejecutable resultante realmente compacto.

Continúa Hotbasic, del que dado su enfoque hacia el rendimiento, me esperaba unos valores mucho más atractivos. No obstante, ha generado el ejecutable más pequeño de toda la comparativa, solamente 6 Kb. venciendo en este sentido a todos los contendientes, no sólo de BASIC, sino también de Pascal y C.

Por último QB64, que no sólo genera el ejecutable más grande, sino también el que ofrece un rendimiento más lento (en varios órdenes de magnitud), lo cual no es de extrañar teniendo en cuenta cual es su objetivo.

Como de costumbre, tienes todos los fuentes y los binarios, disponibles para descargar aquí (54 Kb. en formato ZIP).

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

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

Sieve en BASIC

Noviembre 17th, 2010 - [Enlace local]

Seguimos con Sieve tras el Sieve en Pascal, de nuevo, el mismo algoritmo, esta vez traducido a varios dialectos de BASIC, y luego compilado con ellos.

Como ocurriera con Pascal/Object Pascal, la poca portabilidad de BASIC entre plataformas y dialectos, ha sido necesario realizar pequeños ajustes en el código de uno y otro para poderlos compilar.

La opinión general, suele creer que BASIC es por definición un lenguaje lento, una idea que probablemente venga de cuando BASIC era mayoritariamente interpretado. No soy de ese parecer, ya que al tener un concepto de lenguaje de más bajo nivel que Pascal u otros, debería mostrarse muy competitivo. Hay que tener en cuenta también, que por el mal nombre de BASIC en estos últimos años, los esfuerzos con los que se puede contar para mejorarlo, son mucho menos que los de otros lenguajes más en boga como C++, Java, C# o el citado Pascal.

Todas las compilaciones se han hecho con el máximo nivel de optimización para velocidad en tiempo de compilación, y he descartado lenguajes como Visual Basic Script (VBS), JustBasic o Gambas que al ser interpretados, no iban a tener mucho que decir en esta prueba. Tampoco he invertido tiempo en el análisis de productos más o menos abandonados como RapidQ; ni en otros peculiares como DarkBasic o RealBasic.

CompiladorPlataformaTamaño ejecutable (bytes)Tiempo de ejecución (ms)
FreeBasic 0.21x8632.25680.540
Hotbasic 6.3x866.144228.499
PowerBASIC Console Compiler 5.0x8615.87243.368
PureBASIC 4.50x647.16899.714
QB64 0.91x86769.788324.011
Visual Basic .NET 2010x8611.77646.285
Visual Basic .NET 2010x6411.26447.408

Encabeza la clasificación PowerBASIC, del que a pesar de no tener optimizador demasiado elaborado, obtiene una marca francamente buena, y que supera a la mayoría de compiladores de Pascal, y todo ello sin necesidad de aplicar alineaciones a mano.

Sorprendente Visual Basic .NET, que obtiene una meritoria segunda posición, con un rendimiento comparable a la media de Pascal compilado, y quedando muy cerca del líder, que no está nada mal, teniendo en cuenta que es bytecode. Como ya vimos con la versión en Javascript y en C, Sieve no es un algoritmo que saque partido de las arquitecturas de 64 bits, más bien le penaliza un poco.

A bastante distancia, casi el doble, queda FreeBasic, donde vemos la poca madurez del compilador cruzado x64.

Les sigue, el extraño PureBASIC, con un ejecutable resultante realmente compacto.

Continúa Hotbasic, del que dado su enfoque hacia el rendimiento, me esperaba unos valores mucho más atractivos. No obstante, ha generado el ejecutable más pequeño de toda la comparativa, solamente 6 Kb. venciendo en este sentido a todos los contendientes, no sólo de BASIC, sino también de Pascal y C.

Por último QB64, que no sólo genera el ejecutable más grande, sino también el que ofrece un rendimiento más lento (en varios órdenes de magnitud), lo cual no es de extrañar teniendo en cuenta cual es su objetivo.

Como de costumbre, tienes todos los fuentes y los binarios, disponibles para descargar aquí (54 Kb. en formato ZIP).

Artículos relacionados

Visual Basic .NET no es Basic
Sieve en Pascal
Visual Basic for DOS

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

avemundi, blog de un micro-isv » Desarrollo de software

el dr. wasabi en alicante, y 2

Noviembre 17th, 2010 - [Enlace local]

La semana pasada estuve en la charla de Berto Pena sobre productividad personal en CAMON. Aunque tarde para los tiempos que corren en la blogosfera, quiero escribir mi opinión sobre la charla. Fue la primera vez que iba a una charla en este sitio, y tanto la sala como la organización fue impecable. La sala estaba llena pese a ser por la mañana y realmente mereció la pena asistir.

En primer lugar me sorprendió el aspecto de Berto, tanto que al principio me costó reconocerlo. El cambio físico que ha experimentado respecto a las fotos que conocía de él es tremedo, quizás reflejo de sus nuevos hábitos productivos y del tiempo que ha conseguido liberar de su trabajo para dedicarlo a otras actividades.

Sobre la charla, estuvo dividida en dos partes. En la primera Berto habló de tres temas: gestión de tareas, gestión del correo electrónico y concentración en el objetivo, remarcando que lo importante es la actitud con que haces las cosas, que la tecnología está para ayudar pero que primero debe ser el hábito y luego las herramientas. En la segunda parte habló de herramientas web que nos pueden ayudar a ser productivos, y presentó su conocida triple corona: gmail, dropbox y evernote.

Mi opinión es que fue un auténtico lujo conocer a esta persona, y que pese a llevar leyendo su blog desde hace muchos meses y conocer mucho de lo que habló, valió la pena asistir a la charla.

El único pero fue que olvidé su libro, pues me hubiese encantado que me lo firmara. Espero que venga otra vez por Alicante.

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

xailer.info (esp)

Xailer 2.1.1

Noviembre 17th, 2010 - [Enlace local]

Estimados usuarios de Xailer,

Hoy hemos publicado una pequeña actualización a Xailer 2.1.1. Hemos preferido crear un instalable completamente nuevo debido a un pequeño error en el sistema de actualización automática.

Si ya instaló Xailer 2.1 y se produjo algún tipo de actualización del mismo. Le recomendamos que después de instalar esta nueva versión elimine el fichero Update.log del directorio \Xailer\bin y la carpeta \Xailer\bin\Updates.

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...

Arragonán

Segundo día del Agile Open Spain 2010

Noviembre 17th, 2010 - [Enlace local]

Llegué tarde!! Vale… conseguí llegar al momento importante de la mañana, la hora del café XD. En serio, me perdí dos sesiones que me interesaban mucho Software que funcione, es nuestra responsabilidad y Software Craftsmanship, tenía curiosidad por conocer experiencias/opiniones de la gente en esas sesiones.

Tras el café me metí en Tecnologías Ágiles para Metodologías Ágiles que había propuesto Fátima. Dónde un pequeño grupo hablamos y discutimos más que nada del ecosistema Groovy y Grails, aunque también algo de Scala/Lift, Griffon, Ruby on Rails, Django… en mi opinión nos centramos demasiado hacia el mundillo Java y en el desarrollo web, pero simplemente era lo que iba surgiendo de las inquietudes de la gente y en la conversación.

Estuve tentado de meterme en la de la Frameworks Sí/Frameworks No en vez de a esta, porque se veía que iba a haber mucho nivel, pero pensé que esa sesión no me iba a aportar nada ni yo ahí tampoco, tengo clara mi postura… y seguramente hubiera estado mas o menos en la mitad :D

Después quería asistir a la de introducción a BDD que había propuesto Marcin Gryszko, sobre todo para refrescar mi memoria, pero de los que estábamos en la sala resultó que yo era el único que había practicado algo de BDD (con cucumber y shoulda), pero me resultó imposible explicar nada y no pudimos conectar un portátil al proyector para ver código, por eso decidimos “levantar la sesión” y nos repartimos por otras salas.

Yo estuve deambulando por un par de sesiones, pero no me enganché a nada y terminé en una sala yo sólo, hice un timidísimo llamamiento por twitter para ver si a alguien más le pasaba lo mismo y se animaba a juntarse a hablar de otro tema, sólo me respondió David Bonilla con que fuera a la sala en la que hablaban de Manipulación para implantar metodologías/prácticas ágiles “desde las trincheras”. Tengo que decir que lo poco más de 15 minutos que estuve me pareció MUY interesante e inspirador, sobre todo para gente que trabaje en empresas “normales”, yo no vi nada que pudiera poner en práctica en mi situación actual(por suerte no tengo que tratar de manipular a nadie para trabajar de otro modo XD)

Se hizo la hora de comer, de catering y sin sentarse, no es lo mejor para una buena alimentación pero sí para moverse por los corrillos y poder ir charlando con gente diferente :)

Para la sobremesa me metí en Inception, una charla de Enrique Comba. Por lo que percibí y he leído por ahí, debió ser la sesión que más impactó a la gente, a mi me gustó mucho. Lo que contó es la forma más ¿hardcore?, ¿molona?, ¿…? de conceptualizar y enfocar un proyecto que he oído hasta el momento, y resulta que es un método llamado The Agile Inception Deck(encontrado en los comentarios del blog de Kini), con la pinta que tiene debo probar a hacer algo así alguna vez :D

Mi última sesión fue una de Agilismo y Usabilidad, me interesa mucho el tema(por el número de asistentes en la sala no parece ser una de las mayores preocupaciones de los agilistas, no lo sé), pero para mi la interfaz de usuario manda, el software debe estar hecho para ser usado. Bueno, que me voy del tema :P . Durante gran parte de la sesión iba un poco perdido y por eso me costó mucho aportar algo a la discusión. Se habló de patrones de usabilidad y de como encajaban en las historias de usuario, se nombró un concepto nuevo para mi: historias de usabilidad(tengo que leer más sobre ello). Pero me sorprendía muchísimo oir expresiones como “añadir usabilidad a las historias de usuario”, “añadir la usabilidad después de implementar la historia” o otras cosas que me chirriaban bastante y no conseguía poner en un contexto práctico para mi…

No sé, será que no es tan habitual como yo pensaba empezar un proyecto por la UI, para mi LA forma de empezar(unos wireframes, prototipos en papel… algo!! XD). Otra cosa es que durante las iteraciones vayan modificándose y añadiéndose cosas en la UI(igualito que en el código). Una de las cosas que comenté en la sesión, es que hay quien defiende que la gente que sabe de usabilidad/UX debería ser la encargada de escribir las historias de usuario, cosa que tiene todo el sentido del mundo. En fin, que más adelante me gustaría adentrarme y alargarme en este tema, veremos si puedo hacerlo alguna vez :)

Y para terminar el AOS2010, hicimos retrospectiva, primero cada uno destacaba tres puntos del AOS consigo mismo, luego con otra persona, luego entre 4 personas, 8, 16… Para mi resultó gracioso coincidir mucho con Bonilla cuando comparamos nuestros primeros puntos conocer gente/hacer amigos y energía/cargar pilas, los defendimos hasta el final! :D . Al final creo que se destacó más que nada el sentimiento de comunidad, la tracción y el tamaño que está empezando a tener Agile-Spain y el agilismo en España.

Algunos de los puntos de mejora que surgieron: Eliminar el límite de asistentes, conseguir que más chicas se animen a inscribirse al próximo AOS, conseguir que los asistentes participen más durante las sesiones, generar más movimiento de eventos locales, crear un evento virtual una semana antes del oficial para calentar, que se generen discusiones/reuniones paralelas a las sesiones del panel, que se propongan sesiones más técnicas a nivel de código, tener eventos con temáticas más verticales dentro del agilismo…


Y poco después se dio por finalizado el evento, no sin antes ayudar a ordenar las salas para que pareciera que ahí no había pasado nada :D . En fin, comparto un video del evento que han colgado en la cuenta de vimeo de Agile-Spain, que creo que refleja bastante el ambiente del Agile Open :)

AOS2010 from Agile-Spain on Vimeo.

Para rematar, nos fuimos en plan Agilidad nocturna de nuevo, donde pude hablar tranquilamente con más gente con la que aún no había tenido oportunidad como con Marcin Gryszko, Alfredo Casado, Laura Morillo o Alejandro Pérez.

Os dejo una muestra de la cena y el posterior cerveceo en L’Ovella Negra, cortesía de Yeray Darias y Juanma Barroso, para dar envidia y eso ;)

Qué super-profesionales de la noche del software!! :D . Si aún no tenéis suficiente envidia, podéis ver algunas fotos más.

¿Mi conclusión?

Un evento que me gustó para volver a ver gente conocida y encontrarme por primera vez con mucha otra, me divertí y me ayudó recargarme de energía para seguir intentando mejorar un poco cada día. Además de que, como he comentado, me llevé varias cosas donde me gustaría investigar y en las que profundizar.

Más cosas que tengo ganas de ver publicadas: el montón de fotos que iba haciendo Amalia y el/los reportajes de BonillaTV :)

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

Arragonán

Primer día del Agile Open Spain 2010

Noviembre 17th, 2010 - [Enlace local]

Ya han publicado sus resúmenes/impresiones del Agile Open Spain 2010 gente como: Joaquin Engelmo(conocido popularmente como kinisoftware :) ), Laura Morillo, Yeray Darias(capítulo 2 y capítulo 3), Jesús Jiménez, Roberto Canales, Juanjo Falcón… Pero como cada uno hemos vivido el nuestro, pues yo también daré la chapa ;)

Era la primera vez que iba a un evento de Agile Spain o con formato Open Space, por lo que era una experiencia nueva para mi por ambas partes. Aunque tengo que decir que iba ya sabiendo que me iba a encontrar a muchos conocidos, gente con la que hace tiempo mantenía relación pero no conocía en carne y hueso, por eso sabía que iba a pasármelo bien en el AOS :)

Llegué en tren a Barcelona el viernes a mediodía, nada más llegar había quedado con Jordi, y esperamos a Jose y Javi de Frogtek que llegaban un poco más tarde para comer. Muy interesante la comida, hablando un poco de todo, después nos fuimos a dejar las maletas y se nos unió Pedro, compañero de Jose y Javi y llegamos a La Salle justo para el arranque del Agile Open.

Llegada al AOS

Nada más llegar, al recoger la acreditación me llevé la primera “desvirtualización”, resulta que Amalia Hernández reconoció mi careto nada más verme :) . Y luego, tan sólo entrar a la sala de congresos viendo donde podíamos sentarnos, enseguida vimos a Álvaro Sánchez-Mariscal, Aitor Alzola y Fátima Casaú; y nos sentamos junto a ellos.

Para romper el hielo, la organización nos hizo empezar con un juego de tribus, primero teníamos que encontrar a toda la gente del mismo lugar de procedencia, cuando me iba acercando a mi tribu aragonesa después de ver donde andaban, me encontré a la canaria(bautizados por David Bonilla como Comando Muyayo :D ) con Yeray Darias, Juanma Barroso, Juanjo Coello y Fran Reyes que son parte del núcleo duro del movimiento Agile en Tenerife, aparte de ser gente cojonuda! ;) .

En la tribu aragonesa estábamos la gente de Frogtek, Luis de Neodoo(al que conocí allí), Teresa Oliver y un par de personas más cuyos nombres ahora mismo no recuerdo(Pablo Jimeno todavía no había llegado).

Después formamos tribus por aficiones: fotografía, montaña… hasta que Juanma dijo cerveza, y sí, por supuesto que fue la tribu más grande!! XD. Y por último por roles… A todo esto, el juego también me sirvió para conocer en persona a gente como Jorge Jiménez(más conocido como semurat :) ), Carlos Rico, (una de las personas tras Observatorio de Grails), Jesús Jiménez… y a otra gente que me puedo olvidar(perdón), o bien no tengo controlada aún por los twitters, blogs y demás gaitas.

Formando tribus

Otra cosa que hicimos fue ponernos a lo largo de la sala para ver dónde creíamos estar en cuanto a conocimiento de agilismo, en una punta “no tengo ni idea de que va esto del agile” y en la otra los “Mike Cohn”… Yo me quedé de la mitad hacia atrás, realmente creo que tendría que haberme quedado mucho más atrás pero hubo quién me paró los pies :P , la verdad que yo no sé si soy ágil(y tampoco estoy 100% seguro de qué significa eso :D ), simplemente hay cosas de las metodologías ágiles que considero buenas prácticas para crear productos de software y las procuro seguir de algún modo dentro de mi contexto actual.

Posteriormente se pasó a la presentación de propuestas de sesiones, que era a lo que íbamos. Cada persona podía proponer lo que quisiera, tenía unos segundos para explicar de que iba el tema pero sin alargarse demasiado, así podíamos hacernos una idea de que iba. Finalmente creo que se propusieron más de 60 sesiones que luego entre todos estuvimos puntuando(las más puntuadas iban a las salas más grandes), creo que fue durante ese rato en el que kinisoftware me reconoció y me saludó(al parecer me parezco a mi foto en el twitter, que cosas! :P ) y vi a Alejandro Scandroli, con el que no coincidía desde un evento de javaHispano hace 2 o 3 años.

Y a todo esto, tras las puntuaciones y distribución del horario, el tablón terminó quedando tal como se ve en la foto :) .

Tablón Agile Open 2010

Ya entre la parte final del evento y el post-evento(lo que ha terminado llamándose Agilidad nocturna :D ), por fin saludé a José Manuel Beas(que me preguntó no se qué de garitos XD), a Israel Alcázar, llegaron por fin David Bonilla y Jerónimo López, conocí a Enrique Amodeo o Roberto Canales entre otros(disculpad no me acuerdo de todos). Ah! y el gran Alberto Vilches apareció directo desde Madrid justo cuando habíamos acabado de cenar.

Después una vuelta corta por la noche barcelonina ;) y me volví a casa de los amigos en la que me hospedaba.

PD: Aprovecho el post para avisar que hoy miércoles 17, tenemos reunión de Agile-Aragón en la sede de la asociación Hispalinux en Zaragoza(gracias! ;) ), que nos cede el local.

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

programania

Instalar las herramientas de integración contínua para PHP sobre Mac OS X Snow Leopard

Noviembre 16th, 2010 - [Enlace local]

Siguiendo con la serie de artículos sobre la instalación de un servidor de integración contínua en PHP y teniendo ya instalados Jira, Hudson y Subversion, vamos a pasar a instalar las herramientas que nos permitirán ejecutar las pruebas unitarias (phpunit), detectar fallos en la calidad del código (phpmd – php mess detector) y detectar errores de sintaxis respeto a un estandar dado (phpcs – php checkstyle).

1 -

En primer lugar hay que instalar pear, en Snow Leopard viene ya instalado, sino, es simplemente hacer esto.

2 -

Aconsejo hacer un: pear upgrade-all, porque los paquetes preinstalados en Snow Leopard no son los últimos.

3 -

Ahora hay que instalar cada paquete pear necesario. Lo escribiría aquí pero creo que simplemente basta con seguir lo que Sebastian Bergman (creador de phpunit) nos indica en la sección Required PHP Tools de su github.

4 -

Para automatizar diferentes procesos, como la propia generación de métricas, el despligue de la aplicación, etc. utilizaremos Phing,  que se instala haciendo:

pear channel-discover pear.phing.info

pear install phing/phing

5 -

¡Importante! Esta instalación tiene sentido hacerla en dos sitios: por un lado, en el propio servidor de integración contínua, pero por otro, en los ordenadores de desarrollo. Tanto phpunit, pmd como phpcs funcionarán contra hudson al hacer la integración contínua, pero también nos permitirán analizar nuestro código desde Netbeans (o Eclipse, etc…).

Nota final: como puede verse, la instalación de un servidor de integración contínua es un proceso que, salvo que se nos encasquille algo, puede hacerse en menos de una hora. La instalación sí pero… ¿qué tenemos con eso? Pues absolutamente nada, hasta que configuremos correctamente cada herramienta instalada… y ahí es donde está lo realmente difícil y donde no sólo entra la técnica, sino también una serie de cuestiones filosóficas sobre el propio desarrollo de software.

En próximos episodios…


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

MadeInFlex

Flex 4.5 Hero (I)

Noviembre 15th, 2010 - [Enlace local]

Flex ha dado un gran salto en la maduración de la nueva versión de SDK, “Hero”. Mediante una serie de posts quiero compartir con vosotros que nos aporta Flex Hero. En esta primera parte veremos los objetivos y mejoras en que se centra el nuevo SDK de Flex.

La nueva versión del SDK de Flex llamada “Hero”, es una preview release, es decir que no es aún una versión final del nuevo SDK, por lo que puede contener bugs, la mayoría conocidos por Adobe, y nos debe quedar claro que aún no están completas todas las nuevas características.

Hero se centra en 3 objetivos muy concretos:


Nuevos componentes Spark

Hero nos trae nuevos componentes Spark, componentes que no estaban en la versión 4 del SDK. Con estos nuevos componentes conseguimos los equivalentes Spark de algunos Halo que no se habían migrado en Flex 4. En esta preview release de Hero se incluyen los siguientes componentes: Spark DataGrid, Spark Form, Spark Image y Spark Formatters para Date/Time, Number y Currency. En uno de los siguientes posts veremos con más profundidad estos componentes.


Mejoras en el ámbito del texto y video

En Flex 4 ya teníamos integrado el Open Source Media Framework, que determinaba la base del componente Spark VideoPlayer. Flex 4 también integraba el Text Layout Framework como librería base de los componentes Spark de texto. En Hero se han introducido nuevas características en ambos frameworks.

Open Source Media Framework
En Hero se ha hecho lo necesario para dar soporte a la versión 1.0 de OSMF. El nuevo Spark VideoPlayer que contiene Hero ya utiliza esta versión de OSMF.

Text Layout Framework
En esta versión de Hero se incluye ya el soporte para la nueva versión de la librería de TLF. La nueva versión de TLF se centra en mejorar la representación del texto, añadiendo nuevas características como, por ejemplo, listas numeradas o con símbolos. Otra de las mejoras es sacar un mayor rendimiento a los componentes de texto cuando renderizan cantidades muy grandes de texto.


Mejoras en el compilador


Las mejoras en el compilador se tienen en cuenta en cada release del framework de Flex. En ésta, se han centrado en estos tres aspectos:

Con estas mejoras el equipo de desarrollo del SDK de Flex ha podido observar como, por ejemplo, se reduce hasta un 20% el consume de memoria y un 20% el tiempo de compilación en proyectos de tamaño medio y grande.

Mejoras en las Run Shared Libraries

Las RSLs empaquetan el framework de Flex en librerías que se enlazan o cargan al inicio de la aplicación.
Hero añade nuevas mejoras en la infraestructura de las RSLs de Flex. Con Hero, el compilador solamente enlaza las RSLs que tienen dependencias reales con la aplicación. Por ejemplo, los proyectos que no usen OSMF no enlazarán ni cargarán la RSL referente a OSMF. Además, en los proyectos exclusivamente compuestos puramente por elementos Spark o Halo, solo se cargarán las librerías necesarias para estos proyectos.

Otra mejora importante es que los módulos y su lógica de linkage de las RSLs son más “inteligentes”: ahora los módulos saben cuando la aplicación padre u otro módulo “hermano”, han cargado las RSLs que necesita. En este caso, el modulo no recargará las RSLs que necesita.

Hay configuraciones a nivel de compilador que el desarrollador puede usar para forzar el enlace en diferentes módulos si no se quiere que el compilador aplique la lógica de dependencias.

Se prevé implementar más mejoras relacionadas con las RSL, como puede ser el hecho de cargar las RSLs en el orden en que más se reduzca su tiempo de descarga y de inicialización.

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

xailer.info (esp)

Xailer 2.1

Noviembre 15th, 2010 - [Enlace local]

Estimados usuarios de Xailer,

Hoy por fin publicamos la nueva versión de Xailer 2.1 que incorpora un montón de novedades. Podéis ver una lista de todas ellas en este enlace.

Una de las importantes novedades de esta versión 2.1 es que requiere volver a registrar el producto ya que ha cambiado la clave de activación. De hecho a partir de la versión 2.1 cada vez que publiquemos una nueva versión será necesario realizar el registro. 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. Además hemos modificado el sistema de envío de mensajes de Email utilizando los servicios de Gmail bajo protocolo SSL, por lo que esperamos que a partir de ahora el rechazo de nuestros correos por parte de agún servidor de correo sea mínimo. No obstante recomendamos incuir la cuenta de correo noreply@xailer.com como remitente seguro por si acaso.

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...

Picando Código

Probando Amarok 2.4-GIT

Noviembre 15th, 2010 - [Enlace local]

Amarok

Amarok

Hace poco decidí pasarme a la versión más reciente de Amarok, obteniendo el código directamente desde el repositorio en Git. En este momento se está trabajando en la versión 2.4, y ya cuenta con algunas nuevas características interesantes.

En ArchLinux instalar esta versión fue bastante sencillo, ya que se encuentra en los repositorios AUR, solo tuve que ejecutar yaourt -S amarok-git. Se desintaló la versión estable de Amarok que venía usando, y se reemplazó con Amarok Git.

Para obtener una versión de Amarok desde Git en otros sistemas, pueden encontrar información útil en este enlace.

Últimamente he tenido algunos problemitas con Amarok, incluso intenté reemplazar Amarok 2 con Clementine Player por un tiempo. Pero siempre volvía a usar Amarok. Desde la versión 2.3.2 se encuentra en un estado bastante usable, pero seguía teniendo algunos defectos.

Se ha vuelto más estable, aunque cada tanto vuelve a explotar (muy pocas veces por suerte). Otro tema que ha mejorado es la reproducción aleatoria. Antes, si tenía muchos temas cargados en la playlist e intentaba reproducirlos aleatoriamente, el programa explotaba en cuestión de tiempo. Recientemente vengo usando esta funcionalidad sin problemas.

El orden de los temas en la lista de reproducción sigue sin convencerme. A veces temas del mismo artista y distintos discos se mezclan,  y si bien ha mejorado, el asunto con discos de “Varios artistas” parece confundirlo un poco todavía.

Nuevas características de Amarok 2.4

Primero notar algo bastante interesante, al usar la versión GIT, Amarok incluye una funcionalidad para enviar feedback a los desarrolladores.

Amarok - Diálogo de feedback

Amarok - Diálogo de feedback

Me pareció excelente, qué mejor forma de obtener feedback que pidiéndolo, y facilitándole al usuario el proceso. En varios lugares de la aplicación podemos ver los íconos de la imagen, y enviar un mensaje con lo que nos gustó, no nos gustó, consideramos un bug, o características nuevas que queramos obtener.

Por ahora ya envié varias cosas, un par de “I like” y un pedido para el cover manager. Si bien funciona y demás, estaría bueno que descargara las tapas de los discos en los directorios de la colección mismo. Así, al re instalar Amarok, o un nuevo perfil de usuario, o usar la colección desde otro sistema operativo con Amarok, las tapas siguen estando ahí. Encontré un script que en teoría hace algo así, pero no pude hacerlo funcionar: Hamsi Cover.

Otra mejora se encuentra en la visualización del applet “Current Track” (pista actual), que pueden ver en la siguiente imagen:

Amarok 2.4-GIT

Amarok 2.4-GIT

Al principio parece apenas un cambio gráfico, pero cuenta con más características. Al no estar reproduciendo música, se muestran las últimas canciones reproducidas. Cuenta además con la característica de “amar” el tema en Last.fm, guardar la posición del tema (conveniente para temas largos y podcasts), y editar los detalles de una pista (tags, letras, etc). También se agregaron íconos “Show In Media Sources”, para agregar filtros a las fuentes de medios. No aparece por defecto, pero se muestra a partir de usar la configuración del applet accesible con el clic derecho del mouse sobre él.

Otros cambios:

Por último comentar que Rocktober, la campaña para juntar fondos de Amarok, está todavía vigente, y aquellos que donen serán agregados a un diálogo de “About” en siguientes versiones de Amarok.

Sigo manteniendo mi relación de amor/odio con Amarok. Lo uso a diario, pero cuando me molesta, no dudo en salir a buscar alternativas por ahí. De todas formas, no he encontrado una aplicación que reemplaze a Amarok. Supongo que será cuestión de adaptarme a los cambios de Amarok 2, o terminar encontrando una aplicación que me convenza de reemplazarlo completamente.

Más info Amarok 2.4

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

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

Variable not found

Enlaces interesantes 21

Noviembre 14th, 2010 - [Enlace local]

Estos son los enlaces publicados en Variable not found en Facebook y Twitter desde el domingo, 07 de noviembre de 2010 hasta el domingo, 14 de noviembre de 2010. 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...

programania

Instalación de servidor subversion bajo Mac os X Snow Leopard

Noviembre 12th, 2010 - [Enlace local]

Siguiendo un poco con la idea del anterior post de crear un servidor de integración contínua bajo Snow Leopard (en mi caso tuneando un mac mini), veamos cómo configurar un servidor Subversion. Y digo configurar y no instalar porque subversion viene instalado de serie en todo snow leopard. Aclaro que, en este caso, estamos configurando subversion para funcionar sobre http (con apache) y con autenticación (muy básica).

Haremos:

 
Crear el repositorio:
 
sudo mkdir /Servers/svn
sudo chown -R www:www /Servers/svn
sudo svnadmin create /Servers/svn/repo
 
crearemos un archivo: 
 
svn.conf en /etc/apache2/other
 
que tendrá la siguiente información:
 
LoadModule dav_svn_module /usr/libexec/apache2/mod_dav_svn.so
<Location /svn>
  DAV svn
  SVNParentPath /Servers/svn
 
  AuthType Basic
  AuthName "Subversion repository"
  AuthUserFile /etc/apache2/svn-auth-file
  Require valid-user
 
Location>
 
Con esto hemos dicho que en http://localhost/svn tendremos acceso al repositorio svn.
 
htpasswd -c /etc/apache2/svn-auth-file user
sudo htpasswd -c svn-auth-file <nombre-usuario>
 
Y con esto otro, creamos un archivo con usuarios y claves para acceder con autenticación al svn... 
 
No olvidar reiniciar apache y listo!


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

programania

Instalación de Jira bajo Mac os X Snow Leopard

Noviembre 12th, 2010 - [Enlace local]

Siguiendo un poco con la idea del anterior post de crear un servidor de integración contínua bajo Snow Leopard (en mi caso tuneando un mac mini), veamos cómo instalar Jira. Aclaro que en mi caso se trata de Jira standalone, esto es, no es un Jira que se instale dentro de un contenedor de aplicaciones, sino uno que funciona por si mismo.

  1. Descargar Jira de la página oficial: http://www.atlassian.com/software/jira/JIRADownloadCenter.jspa
  2. Descomprimirlo en /Servers/jira, en mi caso, ya que quiero tener todos los archivos de mis servers en ese directorio.
  3. Se arranca simplemente tecleando en la terminal /Servers/jira/bin/catalina.sh run y a partir de ahí se te guía por una instalación sencilla a la que accederás por el puerto 8080.
  4. Puedes crear un launch daemon en /Library/LaunchDaemons para que cada vez que inicies el ordenador se inicie Jira automáticamente. (a continuación)
  5. OJO con Jira que como apagues el servidor sin hacer un /Servers/jira/bin/catalina.sh stop … te dejará los archivos bloqueados y luego hay que andar desbloqueándolos para que vuelva a arrancar.
 
xml version="1.0" encoding="UTF-8"?>



 Label
 Jira
 ProgramArguments
 
 sh
 /Servers/jira/bin/catalina.sh
  run
 
 RunAtLoad
 


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

programania

Instalando Hudson bajo Mac OS X Snow Leopard

Noviembre 12th, 2010 - [Enlace local]

Seguro que no es precisamente la opción más común. Pero si se te ha ocurrido tunear un mac mini para que haga las veces de servidor de integración contínua, estos son los sencillos pasos para echar a andar a Hudson sobre Snow Leopard.

  1. Descargar el archivo hudson.war de la página oficial: http://hudson-ci.org/
  2. En mi caso, copiarlo en /Servers/hudson (que es donde voy a meter los archivos de “mis servidores”, como Jira, Svn, etc..)
  3. Se arrancaría simplemente haciendo java -jar /Servers/hudson/hudson.war, pero ojo, así lo arrancaría en el puerto 8080 que es el mismo del Jira. Por eso utilizo la opción java -jar /Servers/hudson/hudson.war –httpPort=8090
  4. Por último podemos crear un plist dentro de nuestros LaunchDaemons para que cuando se inicie el ordenador, se inicie el hudson automáticamente:
 
xml version="1.0" encoding="UTF-8"?>



 Label
 Hudson
 ProgramArguments
 
 /usr/bin/java
 -jar
 /Servers/hudson-server/hudson.war
 --httpPort=8090
 
 RunAtLoad
 


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

Arragonán

Comienza el Agile Open Spain 2010

Noviembre 12th, 2010 - [Enlace local]

Hoy viernes 12 de Noviembre, comienza en Barcelona el Agile Open Spain 2010. Donde parece que voy a tener oportunidad de volverme a encontrar con mucha gente conocida; conocer en persona a gente con la que tengo relación vía twitter, por diferentes listas de correo, etc; y seguro que conocer otra mucha gente interesante todavía desconocida para mi.

Agile Open Spain 2010

Es la primera vez que voy a un evento con formato Open Space, la temática Agile me resulta muy interesante(así como otras centradas en tratar de mejorar cosas en el desarrollo de software) y es el evento donde más calentamiento del personal he percibido de los que he asistido hasta ahora. En fin, que tengo ganas de ver que nos encontramos en el evento y en el tan caldeado post-evento :D

Por cierto, que los amigos de Masterbranch me han dado un puñado de pegatinas de su mascota (yo diría que inspirada en Ultraman :P ) para repartirlas entre otros asistente. Si alguien quiere la suya, se la voy reservando :)

El Ultraman de Masterbranch

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

MadeInFlex

Oferta creativo multimedia AZ Interactive

Noviembre 11th, 2010 - [Enlace local]

Descripción de la Empresa

AZ Interactive, empresa fundada en el 1996, proveedora de contenidos por Internet, especializada en web interactivas y comercio electrónico utilizando streaming, vídeo/audio y tecnología flash, con un equipo de trabajo entusiasta de las nuevas tecnologías busca creativo multimedia especializado en aplicaciones de videoconferencia y streaming sobre arquitectura Flash.

Descripción de la plaza

1 vacante de creativo multimedia especializado en aplicaciones de videoconferencia y streaming sobre arquitectura Flash.

Requisitos y conocimientos

Conocimientos avanzados de programación sobre cliente (HTML, Javascript, CSS, Actionscript 3) y servidor (PHP, MySQL, Server Side ActionScript).
Experiencia en diseño de interfaces (arquitectura de la información, usabilidad).
Conocimientos sobre transcodificación y formatos de audio/vídeo.
Herramientas: Photoshop, Dreamweaver, Flex/Flash Builder, Flash Professional.

Tareas

Desarrollar nuevos proyectos de videostreaming basados en tecnología flash cliente-servidor. Adaptar desarrollos ya existentes a nuevos requiremientos y dispositivos.

Experiencia

Al menos dos años en puesto similar.

Tipo de contrato

Indefinido. Seis meses de prueba.

Salario bruto

A negociar según experiencia y aportación de conocimientos

Lugar de trabajo

Barcelona

Horario de trabajo

De lunes a viernes de 8h – 16:15h

Incentivos

Gimnasio

Fecha estimada de incorporación

Inmediata.

Contacto

Albert Berlanga (albert@azinteractive.com)

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

Picando Código

Scott Pilgrim’s Awesome Fighting Fangame

Noviembre 10th, 2010 - [Enlace local]

Hace no mucho tiempo en la misteriosa tierra de Montevideo, Uruguay se desarrolló un motor de pelea. Entonces apareció Scott Pilgrim Vs. The World: The Game. Parte del equipo involucrado compartió algunos de los activos y esto fue lo que le ocurrió al pequeño motor:

El autor le pide a la gente involucrada que ayude a un fan, y comparta el resto del materal para hacer un tributo digno llamado:
Scott Pilgrim’s Awesome Fighting Fangame
Porque saben que lo quieren…

Si quieren ayudar con esta propuesta, compartan el video y usen el hash #SPAFF en Twitter.

El motor de pelea del que habla es el famoso Rumblah, hecho por el compatriota Rodrigo Fernández.

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

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

Picando Código

Barcamp Uruguay 2010

Noviembre 10th, 2010 - [Enlace local]

Comparto con ustedes la info del primer Barcamp en Uruguay:

Queremos invitar a los usuarios de la región al primer Barcamp Uruguay que se realizara el 13 de noviembre de 9 a 18hs en Boulevard España 2527 esquina Libertad, Montevideo, Uruguay.

Barcamp Uruguay

Barcamp Uruguay

Esperamos que se animen a compartir con nosotros sobre diferentes temas, ideas y experiencias sobre software libre y código abierto, diseño para la Web, usabilidad, desarrollo de aplicaciones en Internet, comercio electrónico, teletrabajo, emprendimientos, marketing y publicidad en Internet, teléfonos móviles y gadgets, vídeojuegos, el futuro, ciencia ficción y mucho, muchísimo más.

Dónde es Barcamp UY

Dónde es Barcamp UY

El evento es gratuito pero con cupos limitados a 150 por tanto no esperes y Registrate al Barcamp Uruguay ya que quedan menos de 50 cupos disponible !

Si quieren ya pueden ir haciendo ruido en Twitter, el hashtag oficial es #barcampuy es y el usuario @barcampuy por si quieren seguir el timeline.

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

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

Información legal y técnica