octubre 28, 2005

Librería (JavaScript) para el manejo de capas

Despues de ver cosas de la web 1.99 como netvibes o EyeOs, tenía ganas de mirar algo para el manejo de las capas, imágenes y demás elementos que permitiese hacer cosas tan aparentemente potentes como esas aplicaciones.
Y ya la he encontrado. No sé si es conocida o no, como en temas de diseño no suelo andar demasiado enterado, la he conocido hoy. Se trata de un librería creada por Walter Zorn:
A mi me ha parecido que tiene un API muy sencillo, y que proporciona una funcionalidad más que suficiente para proyectos WEB con interfaz compleja. Además, es distribuida bajo licencia LGPL (GNU Lesser General Public License). ¿qué más podemos pedir?

Actualizado: Pues que casualidad, en Navegapolis acaban de recomendar esta otra librería JavaScript para realizar efectos con capas.

octubre 26, 2005

Interacciones Humanas en Programación

Algo así se podría traducir el grupo de Microsoft "HIP: Human Interactions in Programming" que ha publicado un interesante trabajo titulado :"Software Development at Microsoft Observed: It’s about people … working together". Me entero de este trabajo por el informadísimo blog Navegápolis.
Si de algo podemos estar seguros es que en Microsoft, te guste el trabajo que hacen o no, hay mucha gente trabajando. Mucha gente programando, diseñando, analizando, y por tanto muchos equipos, "interacciones humanas", y... problemas, seguro. Este trabajo nos explica la información obtenida en una encuesta a los trabajadores de la empresa.
No creo que Microsoft sea una mala empresa para trabajar, y una investigación sobre los métodos de trabajo de la gente en semejante empresa, debe ser tenida en cuenta. Aunque lo primero que me llama la atención es que de mil personas a las que mandaron la encuesta (aleatoriamente entre desarrolladores y jefes de equipo) unicamente la respondieron 187. Pocos me parece.
Comentaré dos cuestiones que me han llamado la atención, pero os recomiendo que leais el artículo entero, y que sigais la pista al grupo este de HIP:
  • Prácticas de programación ágil: Se comenta que las metodologías ágiles se van implantando en "islas" dentro de la organización, y se pregunta en las encuestas por el grado de aceptación de las técnicas utilizadas. Ninguna supera el 50% de aceptación.
  • Modelos mentales del código: Una de las preguntas abiertas para el futuro dice así (traducida como buenamente sé): "Sabemos que los desarrolladores tienen completos modelos mentales del código, y que esos modelos son raramente externalizados. ¿Qué sucede cuando dos desarrolladores hablan sobre código? ¿Como alinean sus modelos mentales?". ¿no os ha pasado nunca que no sois capaces de visualizar la manera de codificar que os están explicando en ese momento?
Creo que estos dos puntos me darán para algún post más. Interesantes.

Creación de software libre en España (y 3)

Ricardo Galli vuelve a postear información sobre la situación del software en España. Y nos da un enlace a Cinco Días donde se comenta la situación de la creación de software en España. Habla este artículo de unas 400 empresas que utilizan software libre. Y yo me imagino que lo utilizan, pero ya hemos visto que crearlo, parece que hay pocas.
Parece que la situación de creación de SW en España se centra casi exclusivamente en las consultorías y desarrollos a medida, fundamentalmente realizado por PYMES. Los programas "empaquetados" brillan por su ausencia salvo en nichos como la gestión farmaceutica, medicina o contabilidad. Y en Francia o Alemania debe ser similar la situación.
En definitiva, este no es un país productor de software. En fin, tampoco el software libre ha empujado este campo. Solo ha venido a ahorrar costes a algunas compañías y dar ventajas competitivas a otras. ¿y por qué determinados paises crean más software, innovador o no? El caso de India, parece bastante claro, que es por el costo del desarrollo en aquel país, y la gran especialización de sus trabajadores en este campo. En el caso de EEUU, el gran innovador todavía en el mundo de la informática, no me lo nieguen, creo que la innovación se da por la cantidad de gente que está dispuesta a arriesgarse para hacerse rico. ¿por qué lo creo? Por este magnífico artículo de Paul Graham sobre las diferencias económicas y el riesgo (Inequality and risk).

Actualización: Seguimos igual en España, mirad lo comentado en la coferencia WebDosBeta, Mesa redonda - ¿Hay innovación fuera de EEUU?

octubre 25, 2005

De idea a software (8)

Así que seguiríamos trabajando en la aplicación-servicio a construir. Con más o menos tiempo libre que le podríamos dedicar a implementar la solución ideada, no hay que perder el punto de vista del negocio. Hay que dedicar tiempo a estudiar a los expertos, y por supuesto que no me refiero a mi. Esta semana han aparecido dos entradas en sendos blogs que me han parecido muy interesantes:

  • Fernando Polo nos cuenta su experiencia sobre "De DiceLaRed a LastInfoo: de la idea al producto (I)". Esto es real. Aquí intento averigüar que iría haciendo yo, pero esto es un ejemplo genial. Dos cosas comenta muy interesantes: sobre la innovación y las lecciones aprendidas.
    Respecto a la innovación, que la innovación por sí sola no produce rentabilidad. Solo la necesidad de los clientes de tu producto te generará un modelo de negocio rentable. Ahora bien, ¿estás llevando tu idea hacia un producto-servicio por negocio o por placer? :O
    Y de las lecciones aprendidas, una me decepciona enormemente: "En España, los inversores oficiales no existen para la WebDosBeta. Sólo “friends” & “family” te ayudarán a salir adelante. Y si la cosa tira, rehúye la inversión oficial española, y búscala fuera de España." Que triste.

  • Y un aspecto del que nunca me acuerdo pero es muy importante. La imagen de marca, en concreto el logotipo del producto. Sobre esto, mi invalidez para ver si dos colores se "llevan bien" o crear un diseño elegante, me hacen rehuir siempre de este tipo de cosas. Así que os recomiendo este interesantísimo post de cómo han creado el logo de Panoramio (una aplicación de imágenes sobre los mapas de Google)
Repasa por tanto, mientras construyes tu idea, la red. Siempre ofrece información interesante.

octubre 19, 2005

¿Todavía no usas AJAX?

Dos enlaces muy interesantes me llegan en cuestión de minutos de diferencia sobre la nueva tecnología de moda.

Así que planteate ya si debes actualizar tus páginas HTML, que esto va muy rápido. La verdad que ya se ven aplicaciones impresionantes con esta tecnología.

octubre 12, 2005

"Recolector de Basura" de Java

Qué mal suena el "Garbage Collector" en castellano.
Un artículo muy interesante publicado en IBM sobre los mitos y realidades sobre la eficiencia del manejo de memoria en JAVA. La verdad que el GC siempre ha sido un tema muy interesante para comprender cómo sacar el máximo rendimiento a la JVM. Debes comprender bien cómo funciona para lograrlo.

Which language boasts faster raw allocation performance, the Java language, or C/C++? The answer may surprise you -- allocation in modern JVMs is far faster than the best performing malloc implementations.

La verdad es que es un tema muy interesante, y la evolución que ha llevado desde las primeras másquinas virtuales de JAVA ha sido espectacular. El cambio que anuncian para el JAVA 6.0 lo será también. El compilador será capaz de detectar dónde los objetos creados deben ser instalados (o ni siquiera instalados) según el uso que se vaya a hacer de ello. Todo eso liberará de más trabajo al "Garbage Collector".

octubre 06, 2005

Revolución con WEB 2.0

Me preguntaba netyweb sobre lo que pensaba yo que debía entrar en esa revolución de los navegadores a la que me refería en el post anterior. Pues realmente no lo tengo muy claro, ¿o alguién sabe realmente qué es WEB 2.0? :)
Pero estos son algunos de los cambios que se me ocurren para una web más dinámica, más 2.0:


  • Protocolo HTTP: Se ha quedado un poco pesado para estos menesteres. Haría falta un protocolo statefull, con mantenimiento de estado, y además aliviar el tráfico de cabeceras en cada petición.

  • Navegadores: Y relacionado con el protocolo, que se puedan recibir notificaciones de tipo PULL. Que se pueda comunicar el servidor con el cliente sin petición anterior, una vez establecida una conexión abierta por el cliente.

  • Interfaces: Personalmente HTML me gusta, será ya deformación profesional, pero obviamente tiene cosas mejorables para dar mayor dinamismo a las interfaces, sin llegar al extremo de tener que hacerlo todo en Flash. (no me pregunteis cómo, no se me ocurre, no lo he pensado)

  • Estándares: Hay que hacer las cosas una sola vez. No tres o cuatro para cada navegador. Esto ya va avanzado bastante, menos mal.

  • Identificación: Si las redes sociales toman importancia, debe existir algún sistema de identificación "universal", ¡pero sin eliminar la participación anónima!

  • ¿que más? Help!

Y mientras la WEB 2.0 será una revolución, si la hacemos y la consideramos así. Lo que no cabe duda es que las nuevas aplicaciones que surgen estos días en la web son un punto y aparte con lo que ha existido unos años atrás.

octubre 05, 2005

WEB 2.0

Bueno, pues toda esta movida relacionada con la web 2.0, se está poniendo muy de moda. AJAX, blogs, sindicación, redes sociales, web más interactiva... pero no nos acabamos de enterar muy bien qué es realmente.
Parece un movimiento que ha surgido de los blogs, o como yo lo he conocido ha sido así, y que con el AJAX ha encontrado la herramienta que aparentemente le era necesaria. De repente han crecido numerosas aplicaciones sobre esa heramienta. De ahí, y con lo que venía de atrás de las redes sociales, sindicación y esa palabra que no acabo de conocer: folksonomías, se ha creado la web 2.0.
La idea que yo veo detrás de la web 2.0 es revolucionar las aplicaciones web actuales. Nada de esperas, de envío de formularios y respuestas,... Pero ¿no hará falta alguna herramienta tecnológica nueva para esa revolución? Si los navegadores actuales deben ser el soporte de la web 2.0, llegaremos a mejorar la interactividad, la interfaz, y haremos más aplicaciones interconectadas, pero no se podrá "revolucionar" mientras no haya un cambio más fundamental en los navegadores. ¿no os parece?