Si todavía no has visto: «The Internet’s Own Boy: The Story of Aaron Swartz» deberías.
Si la has visto, difundela
Si todavía no has visto: «The Internet’s Own Boy: The Story of Aaron Swartz» deberías.
Si la has visto, difundela
Un proxy puede ser un buen ejemplo de microservicio para construir con Scalatra. Un proxy es un servicio que normalmente recoge peticiones y las traslada a otro servicio. Si hay respuesta de este servicio se la devuelve al que empezó la llamada.
Habitualmente además se añaden algunas cosas que el servicio original no implementa como pueden ser: validación de usuarios, estadísticas de uso, agregación de información, simplificación de interfaces, tareas de servicio, capa de administración, etc.
En nuestro caso vamos a implementar un proxy contra Elastic Search con Scalatra en menos de 3 minutos ;-P
Eso si con algunos requisitos:
* Deberías tener instalado Scala. Si no lo tienes aquí tienes un mini tutorial de como instalar scala estilo shotgun.
* Si ya tienes instalado Scalatra todavía lo haremos en menos tiempo. Si no este manual de como instalar Scalatra para impacientes te ayudará a hacerlo en un par de minutos.
Y ahora llega la mejor parte, tenemos dos opciones:
a) hacerlo de cero. Buscar toda la documentación de Scalatra, Interface REST de Elastic Search, etc, etc.
b) Clonar este proyecto de github, configurarlo y aprender como con unas cuantas lineas de Scalatra montamos un proxy de Elastic Search y los configuramos a nuestra medida y necesidades.
Por supuesto vamos a escoger la opción B que nos mete en el partido en 3 minutos.
1) clonar el proyecto de ejemplo de proxy para Elastic Search usando Scalatra:
git clone https://github.com/nfb-onf/nfbsearch-scalatra.git
2) Configurar el URI de conexión a tu Servidor de elastic Search (linea 35)
$ cd NFBSearch-Scalatra
$ vi src/main/scala/ca/nfb/NFBSearchServlet.scala
3) hacer un build del proyecto y lanzarlo.
$ ./sbt
> container:start
> browse
Lo que más me gusta de usar Scalatra es lo sencillo que es implementar una acción:
get("/search") { contentType = formats("json") val q:String = params("q") val httpClient = new HttpClient val response: Response = httpClient.get(new URL("http://localhost:9200/nfb_films/films/_search?q=" + q)) response.body.asString }
Incluso alguien con poca experiencia con Scala/Scalatra sería capaz de leer y modificar este código.
Es puro código suscinto sin ningún tipo de ceremonia, lo explica muy bien Javier Lafora, nuestro CTO en ASPGems en su post sobre por que usamos ruby y rails en ASPGems como tecnología web y tiene muchos puntos en común con «Por que usamos Scala para hacer Big Data en ASPGems» (este todavía no está escrito!!! 😉 )
Agradecer a los usuarios de la cuenta de github «nfb-onf» que me ha ahorrado un par de horas del plan A con su maravillosa y gratuita contribución a la comunidad. Muchas Gracias!!! os debo unas cervezas!!
David Ugarte ha escrito un mágnifico post sobre por que firefox OS va a ser una revolución más allá del propio sistema operativo. No va a ser algo que ocurra inmediatamente, ni sencillo pero es un punto de inflexión importante como en su día lo fue la aparición del navegador firefox.
El sábado que viene estaremos en el primer Firefox OS App Workshop of 2013 que se va a celebrar en Madrid. Que sea en Madrid tiene bastante sentido. Por un lado fue un éxito de asistencia la presentación del Firefox OS y por otro el trabajo de la comunidad de Mozilla Hispano es simplemente impresionante.
Estamos terminando la app que vamos a presentar y esperamos que con la ayuda del workshop seamos capaces de publicarla la semana que viene en el marketplace. La app va ser muy sencilla: básicamente reconoce los códigos de barras de productos y nos da información sobre el producto en cuestión. Tenemos acceso a varias bases de datos de productos (alergias, productos sin gluten, etc) y además queremos incorporar más información sobre los productos: si se han usado pesticidas, opiniones de usuarios, información «oficial», etc.
No es una idea nueva, pero a día de hoy no nos ha terminado de convencer ninguna de las que hemos visto. Esto unido a que nos apetece mucho hacer nuestra primera app para firefox OS es más una buena razón. Por otro lado vamos a empezar a usar persona (sistema de autentificación para la web completamente descentralizado y seguro basado en el protocolo abierto de BrowserID) en todos nuestros proyectos y el primero proyecto va a ser esta app. Persona se merece un post entero. Tengo la sensación de que va a ser caballo ganador a muy corto plazo.
El nombre no completamente decidido pero un buen candidato será «que comes» al menos en español.
Es uno de los mejores regalos que puede recibir un hacker el día del padre. Ya está cargandose a tope la batería y recien configurado.
Solo falta que este disponible el SDK para empezar a programarlo. Se supone que estará disponible la segunda quincena de Abril. Me apetece mucho hacer unas cuantas aplicaciones de test ;-).
Os dejo la primera foto que le hecho y en unos días os contaré como va mi experiencia.
No es que lo hubiera desinstalado de mis ordenadores, pero google chrome se había instalado por defecto en alguna ocasión y terminó restando tiempo de uso a firefox. Poco a poco fuí migrando las utilidades que necesitaba para desarrollar incluso desarrollé algún plugin.
Hace unos meses de pronto descubrí que aun siendo similar la experiencia de usuario, había otras razones – incluso más importantes – para usar firefox. La principal es sin duda que Firefox y la fundación Mozilla tienen un papel clave en el desarrollo de internet. Y siendo más radical (que significa literalmente ir a la raíz) no solo en el desarrollo sino en el matenimiento de como se creo originalmente internet y como debe ser. La fundación mozilla ejecuta perfectamente a este role y nunca es suficientemente reconocido.
Aprovechando el buzz que está generando que opera vaya a utilizar webkit como engine para renderizar se ha escrito mucho sobre esta decisión y por supuesto ha habido mucha discursión entre los partidarios de webkit y gecko. Mis dos posts favoritos son:
Por que Mozilla es importante.
La entrada de opera en webkit ¿terminará con los bugs de jquery en webkit?
PD: Además tengo otra razón más: chrome consume mucha más memoria y recursos y me encanta tener 50 pestañas abiertas aunque esto pueda parecer una aberración 😉 Chrome se consumía 6 Gb de mis 8 Gb y estaba haciendo swap desde que arrancaba.
Más casos como este vía Tristan Ninot @ninot y es que cada día es más importante la misión de mozilla.
Tuve la suerte de coincidir con Simon Klose el director y Peter Sunde en Brazil mientras se rodaba parte del documental y me alegro de que por fin se haya estrenado. El documenal está publicado con licencia Creative Commons y ha sido financiado en una buena parte con crowdfunding. Merece la pena verlo y conocer la historia de pirate bay «lejos» de los teclados ;-). Por supuesto se puede bajar de pirate bay en la página de Simon Klose.
Acaba de llegarme que ya está disponible el primer móvil para desarrolladores con firefox OS. Stormy Peters lo acaba de publicar en el blog de hacks.mozilla.org. El móvil ha sido desarrollado por la empresa española geeksphone y tiene muy buena pinta. Estará disponible a partir de febrero. En el post anterior había un enlace a la página antigua y ya está publicada la nueva con los smartphone con firefox.
modelo keon
Peak
Hoy martes 22 a las 12:30 Telefónica, Mozilla y Geeksphone van a presentar los primeros terminales con firefox OS.
La presentación se hará en el auditorio del Espacio Fundación al que se accede por Fuencarral, 3
firefox OS primeros screenshots
Scobleizer ha empezado a escribir un libro que se llama «Age of Context» y desarrolla esta idea de la que tantas veces me ha hablado mi amigo Alfredo Romeo. Cada vez más tenemos que pensar más en el contexto al desarrollar aplicaciones esto puede parecer obvio pero no lo es. Cuando estoy usando un dispositivo debería hasta reorganizarse los menús. Si voy a 100 kms por hora y estoy leyendo blogs puedo dar por hecho muchas cosas «obvias»:
* Voy en un vehículo
* No soy el conductor (o estoy loco)
* Si es una zona que no conozco habitualmente es posible que necesite ayuda (mapas, puntos de interés, como llegar a la dirección de mi siguiente cita).
Y seguro que una docena más de cosas que ahora mismo no conozco o que hago habitualmente y que mi dispositivo puede aprender y reconocer basado en el contexto.
Hace muchos años propuse a un medio de comunicación que fuera dinámico que aprendiese de los lectores para presentar portadas y contenidos a su medida y que lo hiciera automáticamente. Obviamente no era trivial pero habría sido innovador y estarían 4 años por delante de aplicaciones como Zite o Flipboard.
Pensar en el contexto va ser un valor diferencial seguro.
Powered by WordPress