martes, 20 de marzo de 2012

Node.js

Acabo de leer este interesante artículo donde se demuestra la potencia del Cloud Computing y todo lo que queda por llegar.

Esta apuesta por recoger a los desarrolladores de Javascript para el back-end puede provocar que mayor número de personas se relacionen con este tipo de proyectos.
Su fuerte es la facilidad de utilizarlo como PaaS (Plataform as a Service) que siempre es más potente, cómodo y sencillo para realizar temas de escalabilidad en la Nube que IaaS.

El único problema es que este tipo de proyectos parecen más ligados a temas de Software Abierto donde Microsoft aunque está implicado no es fuerte.

Sigamos esta interesante tecnología

viernes, 11 de noviembre de 2011

www.mifirma.com



Desde hace varios meses, he estado trabajando en los temas de Iniciativas Legislativas Populares por dos razones principales:
- Porque vi un lugar donde desarrollar mi inquietud tecnológica.
- Porque era un proyecto con futuro.


Cuando conocí a la gente de mifirma.com vi que no tenía porque estar solo y que sin un equipo las cosas o son muy difíciles. Esta es la razón en la que pedí que nos fusionáramos y trabajáramos conjuntamente. Y así fue.
La fusión no era fácil, había que aprender una nueva tecnología y ponerse las pilas.

Respecto la cuestión de tecnología resaltar que está basado en Ruby On Rails siendo una de mis primeras tareas la migración a la versión 3.0. También tenía ganas de trabajar de verdad con un repositorio de código distribuido y aunque había trabajado con mercurial al final para el proyecto he utilizado GitHub.



Ruby On Rails me ha sorprendido. Es potente, sencillo y se escriben pocas líneas de código. Apetece seguir aprendiendo la herramienta. Son muchos años trabajando con herramientas comerciales como .NET y este cambio en un cambio en muchos sentidos.

Respecto la cuestión de ponerse las pilas. Decidimos trabajar para dar avales para los partidos políticos, tuvimos más de 10 partidos añadidos al sistema y tenemos nuestra primera ILP dada de alta. Viéndolo así parece todo un éxito. Pero ha sido un trabajo duro, no tanto por el esfuerzo de desarrollo sino por el trabajo en equipo y la gestión que lleva todo esto.

Ahora mifirma.com necesita dar un paso más y con las nuevas incorporaciones de gente esperamos que sea así en breve.

Pronto tendremos nuevas noticias.

lunes, 28 de febrero de 2011

Nueva web "Iniciativa Legislativa Popular"


Hace ya una semana lancé la web de Iniciativa Legislativa Popular al mundo mundial. En verdad esta web solo tiene sentido en España pues solo los españoles podemos firmar Iniciativas para las Cortes Generales.
Esta historia comenzó hace mucho unos meses cuando leyendo mi blogs favoritos leí algunos artículos de Enrique Dans y Julián Inza sobre ideas para promover el DNI Electónico y salió esta idea.
Yo recogí el testigo y aproveché la oportunidad para crear una web por varios motivos:
- Porque me gusta la administración electrónica y creo que este es un claro ejemplo de porqué puede ayudar en nuestros derechos como ciudadanos.
- Para tener alguna experiencia en nuevas tecnologías.
- Es una satisfacción personal poder tener una creación tuya de manera pública.


Sobre el aspecto técnico tengo que destacar un par de cosas. Por un lado la colaboración desinteresada y gratuita de Viafirma para el manejo de la autenticación y la firma basada en certificados electrónicos. Gracias a ellos uno de los apartados más difícil se convirtió en muy sencillo. Actualmente hoy este es uno de las mayores pesadillas para un ciudadano, que tu certificado funcione correctamente en tu navegador con el sistema operativo que uses. Gracias a su plataforma esto no debería pasar.

Por otro lado está que este desarrollo se ha realizado utilizando últimas tecnologías como:
- MVC 2.0
- Computación en la nube con Amazon Web Services. En concreto SimpleDB y S3.

Profesionalmente me ha permitido conocer de manera práctica algunos temas sobre "La Nube" de los que me faltaba experiencia. Como este tema me lo pago yo, he controlado el tema económico exhaustivamente. Por este último motivo no utilizo EC2. Algún día pondré algún artículo más sobre esto.

Ahora solo hace falta que la plataforma funcione y algún organismo u organización quiera utilizarlo. Esta promoción última será lo más complicado.

El proyecto tiene bastantes puntos de mejora como son estéticos y sobre todo añadir a asambleas de comunidades autónomas como la de Madrid. Este último punto me parece de los más interesantes.

Mientras tanto toda esta experiencia está siendo de lo más gratificante. Gracias por el apoyo de muchos de vosotros.

www.iniciativalegislativapopular.es

martes, 21 de diciembre de 2010

Los peligros de "la Nube"

Llevo desde hace tiempo con ganas de escribir un artículo gracias a las noticias que he ido recibiendo junto con las noticias de actualidad que han ido ocurriendo desde hace poco tiempo. Noticias impactantes pues estamos viviendo una auténtica revolución del conocimiento y del acceso a la información.

Desde hace unos años, tenemos:
- Cloud Computing como uno de las tecnologías mas atractivas para los sistemas de información, de los que hemos hablado largamente en este blog.
- Grandes proveedores de infraestructura como Amazon o Azure de Microsoft. Se está demostrando que estos proveedores al ser tan grandes dan mayores y mejores servicios cada día, además de más baratos.
- Wikileaks. Esta organización que se encarga, tras estudio previo, de publicar información que otras fuentes les suministran.
- La neutralidad de la red. Donde existe la amenaza de que los proveedores de servicio influyan en como el tráfico de Internet llega a nuestras casas.

¿Y que ocurre ahora? Pues que todo se relaciona. Hemos visto como Amazon ha cortado su servicio a Wikileaks en un hecho que nos ha dejado perplejos y que nos hace reconsiderar hasta que punto podemos estar seguros cuando utilizamos servicios de "La Nube".

Amazon ha contestado en este mensaje que es muy discutible. ¿Quién se va a creer que no recibieron ni siquiera una llamada de algún político? Es cierto que nos movemos en arenas fangosas, en límites no explorados pero aquí las decisiones tendrán consecuencias.

Además hay otra linea de debate, que he visto reflejada en artículos como este donde se presentan los peligros de almacenar nuestra información en la nube como una gran posibilidad para los gobiernos para espiar nuestra información. Nunca he sido muy paranoico con la seguridad pero después de lo visto por el gobierno de USA, Wikileaks, Ley SINDE y otras materias mi sentimiento de seguridad ha descendido bastante.

En esta revolución, el Gran Hermano será de ida y vuelta.

viernes, 3 de diciembre de 2010

Manifiesto por una Red Neutral

(Si te sientes cómodo y representado por este texto, dale toda la difusión que puedas y quieras: reprodúcelo, enlázalo, tradúcelo, compártelo, vótalo… todas esas cosas que puedes hacer con total tranquilidad y libertad gracias, precisamente, al hecho de que tenemos todavía una red neutral. Hagamos posible el seguir teniéndola)
Los ciudadanos y las empresas usuarias de Internet adheridas a este texto MANIFESTAMOS:
  1. Que Internet es una Red Neutral por diseño, desde su creación hasta su actual implementación, en la que la información fluye de manera libre, sin discriminación alguna en función de origen, destino, protocolo o contenido.
  2. Que las empresas, emprendedores y usuarios de Internet han podido crear servicios y productos en esa Red Neutral sin necesidad de autorizaciones ni acuerdos previos, dando lugar a una barrera de entrada prácticamente inexistente que ha permitido la explosión creativa, de innovación y de servicios que define el estado de la red actual.
  3. Que todos los usuarios, emprendedores y empresas de Internet han podido definir y ofrecer sus servicios en condiciones de igualdad llevando el concepto de la libre competencia hasta extremos nunca antes conocidos.
  4. Que Internet es el vehículo de libre expresión, libre información y desarrollo social más importante con el que cuentan ciudadanos y empresas. Su naturaleza no debe ser puesta en riesgo bajo ningún concepto.
  5. Que para posibilitar esa Red Neutral las operadoras deben transportar paquetes de datos de manera neutral sin erigirse en “aduaneros” del tráfico y sin favorecer o perjudicar a unos contenidos por encima de otros.
  6. Que la gestión del tráfico en situaciones puntuales y excepcionales de saturación de las redes debe acometerse de forma transparente, de acuerdo a criterios homogéneos de interés público y no discriminatorios ni comerciales.
  7. Que dicha restricción excepcional del tráfico por parte de las operadoras no puede convertirse en una alternativa sostenida a la inversión en redes.
  8. Que dicha Red Neutral se ve amenazada por operadoras interesadas en llegar a acuerdos comerciales por los que se privilegie o degrade el contenido según su relación comercial con la operadora.
  9. Que algunos operadores del mercado quieren “redefinir” la Red Neutral para manejarla de acuerdo con sus intereses, y esa pretensión debe ser evitada; la definición de las reglas fundamentales del funcionamiento de Internet debe basarse en el interés de quienes la usan, no de quienes la proveen.
  10. Que la respuesta ante esta amenaza para la red no puede ser la inacción: no hacer nada equivale a permitir que intereses privados puedan de facto llevar a cabo prácticas que afectan a las libertades fundamentales de los ciudadanos y la capacidad de las empresas para competir en igualdad de condiciones.
  11. Que es preciso y urgente instar al Gobierno a proteger de manera clara e inequívoca la Red Neutral, con el fin de proteger el valor de Internet de cara al desarrollo de una economía más productiva, moderna, eficiente y libre de injerencias e intromisiones indebidas. Para ello es preciso que cualquier moción que se apruebe vincule de manera indisoluble la definición de Red Neutral en el contenido de la futura ley que se promueve, y no condicione su aplicación a cuestiones que poco tienen que ver con ésta.
La Red Neutral es un concepto claro y definido en el ámbito académico, donde no suscita debate: los ciudadanos y las empresas tienen derecho a que el tráfico de datos recibido o generado no sea manipulado, tergiversado, impedido, desviado, priorizado o retrasado en función del tipo de contenido, del protocolo o aplicación utilizado, del origen o destino de la comunicación ni de cualquier otra consideración ajena a la de su propia voluntad. Ese tráfico se tratará como una comunicación privada y exclusivamente bajo mandato judicial podrá ser espiado, trazado, archivado o analizado en su contenido, como correspondencia privada que es en realidad.
Europa, y España en particular, se encuentran en medio de una crisis económica tan importante que obligará al cambio radical de su modelo productivo, y a un mejor aprovechamiento de la creatividad de sus ciudadanos. La Red Neutral es crucial a la hora de preservar un ecosistema que favorezca la competencia e innovación para la creación de los innumerables productos y servicios que quedan por inventar y descubrir. La capacidad de trabajar en red, de manera colaborativa, y en mercados conectados, afectará a todos los sectores y todas las empresas de nuestro país, lo que convierte a Internet en un factor clave actual y futuro en nuestro desarrollo económico y social, determinando en gran medida el nivel de competitividad del país. De ahí nuestra profunda preocupación por la preservación de la Red Neutral. Por eso instamos con urgencia al Gobierno español a ser proactivo en el contexto europeo y a legislar de manera clara e inequívoca en ese sentido.

lunes, 6 de septiembre de 2010

Ingeniería de Software Ágil

Acabo de terminar la lectura de este libro "Ingeniería de Software Ágil"

Me atreví a comprarlo después de ver una referencia suya en los comentarios de un artículo de barrapunto que habla sobre las "10 razones por las que fallan las estimaciones de plazos".

El libro me ha gustado mucho. Tiene dos partes, una de gestión de proyectos y otra sobre la práctica del desarrollo de software.
La primera parte es la mejor para mi gusto. Los primeros capítulo es una explicación, sencilla, clara y convincente del fracaso en la breve historia de la ingeniería del software. El primer capítulo es gratis y se puede descargar directamente de su web. Esta parte explica claramente cual debería ser la figura del desarrollador de software, porqué está considerado como un mero obrero cuando es casi justo lo contrario. Por qué falla la planificación tradicional y el capítulo de "Adaptación al cambio" son dos buenos capítulos. Los dedicados a Scrum y Programación Extrema son introductorios pero siguen el mismo esquema y nivel global del libro y se agradece.
La segunda parte es más pobre para mi gusto pues requeriría de mayor extensión el libro para poderse aprovechar completamente. Aun así los primeros capítulos son muy buenos cuando habla de los principios y patrones de diseño o de como debería ser la documentación ágil. Los últimos capítulos, -que se basan en la construcción, depuración, estándares de codificación y edición del código- tienen una orientación muy UNIX y quizás con un aire un poco caduco pero eso no quita la razón de su necesidad de conocer y dominar las herramientas expuestas pues a día de hoy no dejan de ser reinvenciones.

En definitiva, un libro obligatorio para todos aquellos que nos dedicamos al software que aunque no dice nada absolutamente nuevo tiene un gran hilo conductor. El libro da un repaso general a la ingeniería del software actual que encandila pues aunque no profundiza marca una claridad en lo expuesto. Totalmente recomendable

domingo, 11 de julio de 2010

GIS y "La Nube"

Desde hace tiempo, llevo pensando hacer un artículo que hable sobre La Nube y GIS pues han aparecido varios artículos últimamente y mis ideas se han ido disparando.

Hace tiempo salió la noticia en la que la plataforma Azure soportaba en sus base de datos tipos espaciales. No está mal, pero no es lo que busco Con ello podemos en nuestras aplicaciones en la nube realizar análisis de los datos espaciales con operaciones de la base de datos pero no tenemos herramientas para poder mostrarlo de manera sencilla. Ni de como subir y operar con nuestra cartografía. Nos falta un motor espacial como ArcGIS Server, Geoserver, etc... que podamos poner en la nube de manera sencilla.
ESRI es el líder en temas de GIS, tiene los productos en mi opinión y quizás no siendo objetivo, mejores que hay en el mundo pero es caro. Estoy muy interesado en saber que intenciones tienen para La Nube. En un artículo de uno de los blogs que más me gustan me quedé un poco decepcionado. Creo que ESRI intenta dirigirse a esta nueva tecnología pero con las mismas licencias que antes. Por ahora parece bastante caro. No dudo que con el tiempo irán sacando soluciones más acertadas. Además el Cloud Computing como elemento disruptivo va a generar más de un problema en las grandes empresas.
Entonces queda buscar una solución buena (quizás no tan buena como utilizando productos de ESRI pero si lo suficientemente buena), bonita y barata.
Aquí es donde he encontrado la web de GIS Cloud. Esto si me ha empezado a parecer bastante interesante. Desconozco los precios. No se si es barato. Pero si he jugado un poco con la cuenta gratuita y me ha sorprendido como subir de manera sencilla (FTP) tu cartografía y poder operar con un visualizador que dispone de bastante funcionalidad. Parece un GIS genérico que puede encajar en bastantes casos pero no parece que se pueda mostrar de manera sencillas fichas de información o adaptaciones especiales para otros temas de GIS. De todas las maneras, habrá que seguir echándole un vistazo.
También quiero dejar de lado elementos como Arcgis.com o el API de Google Maps o de Bind. Son muy buenos y si te sirven para tu aplicación junto con sus condiciones no tienen rival. La idea es poder tener disponible como elemento de desarrollo de tu propia aplicación un servicio o motor GIS propio.
Entonces es donde se me ocurre que lo interesante sería tener un motor GIS open-source como GeoServer junto una base de datos espacial gratuita como Postgres en una plataforma de Cloud Computting barata y potente.
Aquí es donde he encontrado el suministrador Skygone que se especializa en temas de GIS (¿será porque también tiene la sede en Redlands?). No conozco a este proveedor pero la verdad es que tiene un sitio web especializado en despliegue de soluciones GIS en la nube. Curiosamente tiene plantillas de despliegue de GeoServer, ArcGIS o MapServer.
Solo queda ver que posibilidades existen con Amazon AWS, una de las plataformas más baratas, potentes y de moda en el momento. Me llama la atención que GeoServer sacó un proyecto para experimentar con AWS pero del que no he sacado ninguna conclusión.
Por ahora es esta página la que da en el blanco con lo que se busca y ofrecen imágenes AMI gratuitas con la configuración para un GeoServer+PostGIS en servidor Linux muy interesantes. Solo me faltaría poder jugar con ellas.
La verdad es que los precios de Amazon son bastante impresionantes:

El precio de una pequeña computadora con 1,7 GB de Memoria cuesta $0.085 por hora que tengamos la imagen encendida. Un Giga de almacenamiento de EBS cuesta $0.10 al mes aunque hay que sumar el número de peticiones de almacenamiento que son $0.10 por cada millón de peticiones más la transferencia de datos a través de Internet que son $0.00 el primer Giga y $0.15 cada GIGA transferido.
Apetece hacer unas pruebas..... Uno piensa que puede montar un sistema GIS escalable por poco dinero.

He hecho dos experimentos para calcular el coste que tendría una solución GIS, en los que seguro me falta algo.
La primera es la solución más pequeña posible consistente en un pequeño Linux encendido el 100% del tiempo con las características como el descrito anteriormente y 100Gb de almacenamiento. Total $110 al mes.
La siguiente solución es una más compleja compuesta de 2 instancias para el servidor de aplicaciones y mapas de tipo "Large" (7.5 Gb de Memoria y 2 Virtual Cores cada una) y una instancia de tipo "Large" para la Base de Datos. También he puesto balanceo de carga y monitorización de cada una de las instancias. Total $881 al mes

Otros temas que me llaman la atención:
- La posibilidad de poner una instancia del balanceador en Europa y otra en América del Norte.
- Tener una instancia reservada para poder hacer los "tiles" de nuestros mapas y solo activarla cuando lo vayamos a necesitar. Esto nos conlleva que las otras instancias están trabajando sin problemas y dando servicio al público mientras tenemos otra que está haciendo el trabajo "sucio". Pensemos en otras operaciones GIS costosas que se realizan de vez en cuando.
- Cuando las instancias son reservadas, en vez de bajo demanda (mínimo por un año) los precios de las instancias bajan considerablemente.
- Intentar hacer uso del almacenamiento S3 que es mucho más barato, al menos desde el código de nuestras aplicaciones pues tenemos un API preparado para ello.

Merece un buen experimento...