Cronica de una viaje al Silicon Valley – Dia 3

Hoy he dormido de tirón, no se si porque no han pasado trenes, porque estava muy cansado o simplemente es que me he acostumbrado al ruido y ya no lo noto 🙂

Después de desayunar en el University Cafe, he cogido el coche y en unos 20 minutos me he plantado en el hotel Hyatt Regency de Santa Clara, que es el lugar donde se celebra a conferencia sobre OpenStack. Como podeis comprobar en la foto de abajo, es el típico hotel americano de grandes dimensiones, rodeado de grandes avenidas, y en este caso justo anexo al Santa Clara Convention Center y cerca del parque de atracciones Great America:

Lo primero que he hecho ha sido registrarme, donde me han dado el tipico badge con mi nombre, una camiseta y una mochila, todo, claro está, con el logo de OpenStack:

Me parece increíble el hype que está adquiriendo Openstack. Esta es la segunda conferencia que organizan, y con tan solo 8 meses de vida, son capaces de atraer a 480 asistentes, la mayoría desarrolladores, aunque también ha aparecido algún ilustre personaje de la saga de los Clouderati 🙂

La conferencia ha comenzado con una pequeña introducción de Jim Curry, seguido de una explicación del estado de los 3 proyectos (Nova, Swift y Glance) por parte de los PTL. A partir de aquí ha habido diversas sesiones interesantes, la primera de James Williams, CIO del centro Ames Research Center de la NASA, donde ha explicado como empezaron con Nebula y como a partir de conversaciones con Rackspace decidieron liberar el código y lanzar a OpenStack.

Posteriormente la gente de Wikimedia ha explicado como están planeando utilizar OpenStack, muy centrados en aspectos puramente técnicos y de comunidad. Y más tarde ebay ha explicado sus modelos económicos y como, según sus cálculos, les cuesta 4 veces más utilizar un proveedor de IaaS público que no utilizar su propio centro de datos, y que por esta razón ellos apuestan por un modelo híbrido, muy centrados sobretodo en agilidad antes que en economia de costes.

No voy a entrar a explicaros el detalle de cada sesión, que se os haría muy pesado 🙂 Si estais interesados, podeis encontrar algunas de las presentaciones en slideshare.

Como nota curiosa, me he encontrado a los chicos de Stackops, Diego Parrilla y Luis Gervaso, y como suele ser normal por aquello del idioma, nos hemos acabado juntando para comer.

Mañana el segundo dia, donde se alternan presentaciones más o menos comerciales con sesiones de diseño y planificación de la nueva versión de OpenStack.

Publicado en General | Etiquetado

Cronica de una viaje al Silicon Valley – Dia 2

Estoy alojado en un apartamento de Palo Alto, en University Avenue, justo al lado de donde Google y PayPal instalaron su primera oficina y donde Facebook tenia, hasta hace muy poco, su sede corporativa. Caminando por esta avenida es común encontrarte con 2 cosas: start-ups por todos los rincones; y cafes donde los emprendedores dan sus elevator pitch a los VC, como el University Cafe o el Coupa Café. El principal inconveniente de esta localización es que está muy cerca de la estación de Caltrain, que utiliza unas locomotoras bastante ruidosas, y claro, justo cuando estás en lo mejor de tus sueños, aparece una tren y zas! te levantes sobresaltado. El 1er y 2do tren que han pasado esta madrugada me han hecho gracia, pero luego te acuerdas del maquinista y todos sus familiares 🙂

Hoy ha tocado el dia de visitas a emprendedores españoles afincados en el valle. Comencé la mañana visitando el x-garage del increible Xavier Verdaguer, un serial enterpreneur que lleva unos 2 años en el valle y donde ha fundado innovalley, una empresa muy innovadora que se dedicada a fusionar moda y tecnología. Si no conocéis a Xavier, os recomiendo que le deis un vistazo a este video, una charla suya en Iniciador Valladolid. La disposición a explicarte su aventura y su generosidad al darte toda clase de consejos extremadamente utiles, facilitarte contactos y ayudarte en lo que pueda es digna de admiración. Gracies Xavier!

Después he cogido el Caltrain hasta San Francisco, donde me he acercado al Pier 38, un embarcadero donde en la parte superior se aloja un vivero de empresas. Disponen de un espacio abierto que fomenta la colaboración entre empresas, una zona común de sofas y cafeteria, y pequeñas salas de reunión, un concepto de espacio de trabajo muy interesante. Aquí he visitado a Opinno, una red de innovación abierta que fomenta y ayuda a los emprendedores, donde me han atendido Patricia de Llano y Micha Yong. Un placer hablar con vosotras!

En el mismo Pier 38 me he encontrado también con Maria Alegre, ex Tapulous, y que recientemente acaba de fundar chartboost. La energia e ilusión que transmite Maria es impresionante. Compartir con ella mis inquietudes y proyecto, y recibir un feedback claro y directo no tiene precio. Muchas gracias Maria y mucha suerte en tu nueva aventura!

Y finalmente me he acercado a las oficinas de innovalley, en el 350 de Townsend St, donde me ha atendido José Luis Agell. A José Luis lo venia siguiendo en su blog, donde descubrí las sesiones de Entrepreneurial Thought Leaders de Stanford, unas presentaciones semanales a cargo de lideres innovadores de diversos ambitos donde comparten su visión del mundo (a través de ecorner podeis ver las sesiones que se han realizado hasta el momento). Hablar con él, insuflarme animos y dadme consejos sobre como afrontar mi posible aventura ha sido realmente muy útil. Moltes moltes gracies José Luis!

Y esto ha sido todo por hoy, mañana comienza la conferencia de OpenStack, donde aparte de aprender espero hacer mucho networking. Hasta mañana!

Publicado en General | Etiquetado

Cronica de una viaje al Silicon Valley – Dia 1

Después de la silla claustrofobica de ayer, un merecido descanso en un motel cerca del aeropuerto. Esta mañana me he levantado, como no, muy pronto, por aquello del jet lag. Shuttle hacia el aeropuerto y a recoger el coche que tenia reservado. Discusión con el encargado acerca de que me conviene más, que el seguro que he cogido no cubre los gastos sanitarios, que si un upgrade del coche, ya que el que he cogido es muy pequeño y las ventanas son manuales, que si un GPS, …. Que manera de hacer negocios tienen estos tios. Pués nada, me ha tocado un Chevrolet Cobalt de color negro, por aquello del “Black Power” me ha dicho el encargado :).

Como hoy tenia el dia libre, me he dedicado a recorrer unas cuantas sedes de empresas tecnologicas. Aunque primero he ido al museo histórico de ordenadores. Parece una tontería, pero realmente me ha emocionado ver toda clase de artilugios históricos, como los primeros ordenadores electronicos, ya sea el Atanasoff Berry Computer (ABC) o el ENIAC, las primeras memorias, los primeros discos duros como el IBM 305 RAMAC, los primeros ordenadores personales, … Y una curiosidad que he descubierto durante mi visita: al inicio las empresas de hardware no cobraban por el software, y este era generado por la comunidad academica y cientifica, por lo que comenzaron a prosperar iniciativas de gente que compartia el código, como el SHARE o el DECUS, lo que puede considerarse los inicios del software de código abierto. Vaya, una visita totalmente recomendable e imprescindible si os acercais al valle.

Después del museo, me he acercado a la sede corporativa de Google, el GooglePlex. Es impresionante el campus de que tienen montado allí, multitud de edificios, mucho espacio, las típicas bicicletas de colores, la cafeteria, las pistas de voleibol, las figuras relacionadas con cada una de las versiones de Android, …. Puedes caminar tranquilamente por dentro del campus, mientras no intentes acceder a algunos de los edificios los de seguridad no te dirán nada. Y como no, la foto *geek* de rigor:

Después me he acercado a otras compañias, como Linkedin, Yahoo!, VMware, HP, el mítico Xerox PARC, y finalmente, al campus de Apple, en el famoso número 1 de Infinite Loop:

Por la tarde me he acercado a ver la Universidad de Stanford, otra de las visitas que más me ha impresionado. Solamente con acceder al campus a través de Palm Dr y llegar al parque del Ovalo ya te quedas anonadado de la magnificencia de esta universidad. Al ser domingo, estava llena de gente disfrutando del buen tiempo. Lamentablemente ho he tenido tiempo de visitarla al completo, me lo reservo para otro dia.

Y finalmente, una visita al mítico garage de HP, en el 367 de Addison Avenue en Palo Alto, cuna del Silicon Valley:

He colgado en Flickr todas las fotos que he ido haciendo, si tenéis curiosidad, las podeis ver en este enlace.

Hasta mañana!

Publicado en General | Etiquetado

Cronica de una viaje al Silicon Valley – Dia 0

Escribo esta entrada a 30.000 pies de altura, en algún lugar que no logro ubicar entre Filadelfia y San Francisco, y cuando ya llevo unas 16 horas de viaje, de las cuales 9 las he pasado sentado en una silla claustrofobica de un avión. Comienzo a estar cansado de un viaje que parece interminable, todavia me quedan 6 horas más, pero al mismo tiempo estoy deseoso de comenzar mi aventura. Me dirijo a la zona de San Francisco, ciudad que ya he tenido la oportunidad de visitar en alguna que otra ocasión tanto por motivos profesionales como por vacaciones, pero en la que tengo una asignatura pendiente. Y no es otra que visitar la meca tecnologia por excelencia, conocer, vivir y sentir la zona del Silicon Valley.

A diferencia de otros viajes, en este no represento a ninguna compañia, es una viaje completamente personal. La excusa para venir es asistir a la conferencia de OpenStack, donde espero aprender, validar ideas, aportar y como no, conocer gente. Aunque este no es el único motivo para venir. Tengo también como objetivo conocer el ambiente que se respira en esta zona, ese ambiente que hace que sea tan especial. Conocer casos de emprendedores, tanto los que acaban de comenzar como los que ya tienen un negocio consolidado, conocer también a aquellos que han dado el salto des de España, conocer sus experiencias, sus secretos, sus consejos, … Me fascina que con tan solo enviarles un simple correo de presentación y explicandoles tus objetivos, te abran la puerta de su negocio, e incluso de su casa, ansiosos de explicarte su aventura.

Mañana es el único dia libre que tengo, y a pesar de que es domingo, tengo *grandes* planes. Primero una vuelta por las sedes de algunas empresas, a hacerme la tradicional foto de “geek“, como no podia ser de otra manera. Aprovecharé la tarde para comprar algun encargo que me han hecho (hay que aprovechar el cambio tan favorable de Euro-Dollar). Y finalmente a dormir a Palo Alto. Mañana os cuento como me ha ido. Por ahora voy a continuar en esta silla claustrofobica, ya queda menos para llegar.

Publicado en General | Etiquetado

Cloud Foundry

La compra hace 2 años de SpringSource por parte de VMware me pilló por sorpresa, ya que no entendia que hacia un proveedor de soluciones de virtualización comprando una empresa cuyo negocio era un framework para construir aplicaciones Java. Los analistas rápidamente comenzaron a elocubrar, que si VMware queria ampliar mercado ya que la cotización en bolsa estava estancada, que si significava la muerte de SpringSource (lo mismo dijeron de Hyperic), … Pero pocos se imaginaron entonces que su intención era ofrecer una solución PaaS, a pesar de que en la nota de prensa lo decía muy claro y que a los pocos dias se anunciara Cloud Foundry Enterprise Java Cloud, una especie de PaaS para aplicaciones Java corriendo en AWS. Pasado un tiempo, parecia además que no tenian una estrategia muy clara, que primero creo una alianza con salesforce, que luego la alianza es también con Google. Pués bien, la semana pasada nos vuelven a sorprender y anuncian la creación de Cloud Foundry, un PaaS de código abierto.

¿En que se diferencia esta de otras soluciones como Google AppEngine, Heroku o Engine Yard? Pués basicamente en 2 aspectos:

  • El primero es que es la primera plataforma PaaS liberada como open-source y que no está ligada a ningún entorno cloud concreto. Puedes descargarte el codigo, modificarlo, e instalarlo donde quieras (en local, en AWS/RackSpace/OpenStack, bajo una infraestructura VMware, …).
  • Y la segunda es que no está limitada ni a un lenguaje ni a un framework concreto, sino que admite algunos de los lenguajes y frameworks más populares actualmente, como Spring for Java, Grails, Ruby on Rails, Sinatra for Ruby y Node.js, además de soportar 3 motores de BD diferentes, MongoDB, MySQL y Redis.

En definitiva, que es la primera plataforma PaaS completamente gratuita y que no nos liga a una tecnologia en concreto (vendor lock-in). Como esta estrategia es bastante disruptiva, seguramente dinamizará el mercado y pronto veremos otras soluciones parecidas.

El servico se ofrecerá en 4 sabores, 2 de los cuales ya estan disponibles:

  • CloudFoundry.com: en entorno PaaS operado por Vmware, completamente montado y listo para usar. De momento este servicio está en beta y, por tanto, se ofrece de forma gratuita, aunque en un futuro está previsto que este entorno sea explotado comercialmente.
  • CloudFoundry.org: la comunidad open-source donde podremos participar en su desarrollo, y/o descargar e instalar la plataforma donde te plazca
  • Cloud Foundry Micro Cloud: una imagen gratuita para VMware Fusion o Player y lista para ser usada en tu escritorio. La idea es que puedas desarrollar y probar en tu propia estación de trabajo y luego despliegues contra un entorno de producción que se comporta exactamente igual al de tu escritorio. El servicio estará disponible durante el 2do trimestre de este año.
  • Cloud Foundry for the Enterprise and Service Providers: una versión comercial para ser utilizada en un entorno empresarial o por parte de proveedores de servicios que quieran ofrecer por si mismos un PaaS.

Si no lo has hecho ya, te recomiendo que pruebes la primera opción y te apuntes a la beta de CloudFoundry.com. Las invitaciones para probar el servicio se estan entregando con cuentagotas, pero con un poco de suerte te llegará una en breve. Como yo ya he recibido la mia, os voy a explicar mis experimentos.

En primer lugar instalamos Ruby y RubyGems, ya que la interficie de comandos para interactuar con los servicios está basada en este lenguaje y viene empaquetada como una gema. Acto seguido procedemos a instalar vmc:

~$ sudo gem install vmc

Fetching: vmc-0.3.10.gem (100%)

Successfully installed vmc-0.3.10

1 gem installed

Installing ri documentation for vmc-0.3.10…

Installing RDoc documentation for vmc-0.3.10…

Una vez instalada correctamente, indicamos que servidor nos va a dar servicio. En este caso escogeremos el servidor beta de cloudfoundy.com (aunque nos podemos descargar e instalar nuestro propio servidor):

~$ vmc target api.cloudfoundry.com

Succesfully targeted to [http://api.cloudfoundry.com]

Ahora le indicamos al servidor nuestras credenciales:

~$ vmc login

Email: xxx@xxx.xxx

Password: *********

Successfully logged into [http://api.cloudfoundry.com]

Acto seguido nos creamos una aplicación de pruebas. Vamos con ejemplo sencillo usando Ruby y el framework de Sinatra:

~$ cd repos

~/repos$ mkdir test-frodenas

~/repos$ cd test-frodenas/

~/repos/test-frodenas$ vi test-frodenas.rb

require ‘sinatra’

get ‘/’ do

“Hello Ferdy from Cloud Foundry”

end

Y ahora vamos a desplegar nuestra aplicación. Dejaremos todas las opciones por defecto excepto el nombre de la aplicación:

~/repos/test-frodenas$ vmc push

Would you like to deploy from the current directory? [Yn]:

Application Name: test-frodenas

Application Deployed URL: ‘test-frodenas.cloudfoundry.com’?

Detected a Sinatra Application, is this correct? [Yn]:

Memory Reservation [Default:128M] (64M, 128M, 256M, 512M, 1G or 2G)

Creating Application: OK

Would you like to bind any services to ‘test-frodenas’? [yN]:

Uploading Application:

Checking for available resources: OK

Packing application: OK

Uploading (0K): OK

Push Status: OK

Staging Application: OK

Starting Application: OK

Comprobamos que la aplicación se ha levantado correctamente:

~/repos/test-frodenas$ vmc instances test-frodenas

+——-+———+——————–+

| Index | State | Start Time |

+——-+———+——————–+

| 0 | RUNNING | 04/21/2011 09:56PM |

+——-+———+——————–+

~/repos/test-frodenas$ vmc stats test-frodenas

+———-+————-+—————-+————–+————–+

| Instance | CPU (Cores) | Memory (limit) | Disk (limit) | Uptime |

+———-+————-+—————-+————–+————–+

| 0 | 0.1% (4) | 22.0M (128M) | 44.0K (2G) | 0d:0h:2m:50s |

+———-+————-+—————-+————–+————–+

Y solo nos queda acceder a la URL de la aplicación para comprobar que responde:

En caso de tener algún problema, podemos revisar los logs

~/repos/test-frodenas$ vmc logs test-frodenas

====> logs/stderr.log < ==== 172.30.8.253 - - [21/Apr/2011 19:57:27] “GET / HTTP/1.0” 200 30 0.0008 172.30.8.253 - - [21/Apr/2011 19:57:28] “GET / HTTP/1.0” 200 30 0.0003 172.30.8.253 - - [21/Apr/2011 19:57:28] “GET /favicon.ico HTTP/1.0” 404 18 0.0003 ====> logs/stdout.log < ==== == Sinatra/1.2.1 has taken the stage on 33248 for production with backup from Thin >> Thin web server (v1.2.11 codename Bat-Shit Crazy)

Maximum connections set to 1024

Listening on 0.0.0.0:33248, CTRL+C to stop

Vamos a explorar que otras opciones tenemos disponibles:

~/repos/test-frodenas$ vmc help

Usage: vmc [options] command [] [command_options]

Try ‘vmc help [command]’ or ‘vmc help options’ for more information.

Currently available vmc commands are:

Getting Started

target [url] Reports current target or sets a new target

login [email] [–email, –passwd] Login

info System and account information

Applications

apps List deployed applications

Application Creation

push [appname] Create, push, map, and start a new application

push [appname] –path Push application from specified path

push [appname] –url Set the url for the application

push [appname] –instances Set the expected number of instances

push [appname] –mem M Set the memory reservation for the application

push [appname] –no-start Do not auto-start the application

Application Operations

start Start the application

stop Stop the application

restart Restart the application

delete Delete the application

rename Rename the application

Application Updates

update [–path] Update the application bits

mem [memsize] Update the memory reservation for an application

map Register the application to the url

unmap Unregister the application from the url

instances Scale the application instances up or down

Application Information

crashes List recent application crashes

crashlogs Display log information for crashed applications

logs [–all] Display log information for the application

files [path] [–all] Display directory listing or file download for [path]

stats Display resource usage for the application

instances List application instances

Application Environment

env List application environment variables

env-add Add an environment variable to an application

env-del Delete an environment variable to an application

Services

services Lists of services available and provisioned

create-service [–name,–bind] Create a provisioned service

create-service Create a provisioned service and assign it

create-service Create a provisioned service and assign it , and bind to

delete-service [servicename] Delete a provisioned service

bind-service Bind a service to an application

unbind-service Unbind service from the application

clone-services Clone service bindings from

Administration

user Display user account information

passwd Change the password for the current user

logout Logs current user out of the target system

add-user [–email, –passwd] Register a new user (requires admin privileges)

delete-user Delete a user and all apps and services (requires admin privileges)

System

runtimes Display the supported runtimes of the target system

frameworks Display the recognized frameworks of the target system

Misc

aliases List aliases

alias <alias[=]command≶ Create an alias for a command

unalias Remove an alias

targets List known targets and associated authorization tokens

Help

help [command] Get general help or help on a specific command

help options Get help on available options

Así pues una de las opciones es ver que entornos de ejecución tenemos disponibles:

~/repos/test-frodenas$ vmc runtimes

+——–+————-+———–+

| Name | Description | Version |

+——–+————-+———–+

| node | Node.js | 0.4.5 |

| java | Java 6 | 1.6 |

| ruby18 | Ruby 1.8 | 1.8.7 |

| ruby19 | Ruby 1.9 | 1.9.2p180 |

+——–+————-+———–+

Los frameworks:

~/repos/test-frodenas$ vmc frameworks

+———+

| Name |

+———+

| spring |

| node |

| grails |

| sinatra |

| rails3 |

+———+

E incluso conocer los servicios que podemos utilizar:

~/repos/test-frodenas$ vmc services

============== System Services ==============

+———+———+——————————-+

| Service | Version | Description |

+———+———+——————————-+

| mysql | 5.1 | MySQL database service |

| mongodb | 1.8 | MongoDB NoSQL store |

| redis | 2.2 | Redis key-value store service |

+———+———+——————————-+

=========== Provisioned Services ============

Y ya solo nos queda parar o eliminar la aplicación para dejar el entorno limpio:

~/repos/test-frodenas$ vmc delete test-frodenas

Deleting application [test-frodenas]: OK

Si esto de trabajar con línea de comandos os parece *anticuado* y preferis utilizar un IDE, teneis a vuestro disposición la SpringSource Tool Suite, un editor completo para construir aplicaciones bajo Spring, o simplemente el plugin de CloudFoundry en el Marketplace de Eclipse. Os dejo algunas imagenes del plugin:

Tiene buena pinta ¿verdad? En un próximo post explicaré como instalar el entorno en tu propio servidor, ¿o alguien lo ha hecho ya y nos cuenta su experiencia?

Comments

Comment by ialcazar on 2011-05-03 14:48:44 +0000

Buena entrada. Me ha quedado bastante claro las diferentes soluciones que van a plantear. Sin duda tiene una pinta excelente. Hoy mismo he hecho una prueba con la invitación que me han enviado.

Espero el siguiente post sobre como montar un servidor propio que seguro que le sacamos mucha utilidad.

Un saludo

Publicado en General | Etiquetado