Estoy disfrutando de mi tiempo como Developer Advocate aquí en Couchbase. Puedo escribir artículos en el blog, hacer vídeos, interactuar con la comunidad y asistir a un montón de conferencias y reuniones. Mi jefe, Arun Gupta, me ha apoyado mucho, al igual que mis compañeros defensores de los desarrolladores.
Para que te hagas una idea de cómo es trabajar con Arun: tenía una idea loca que quería probar en algún momento. Se la conté y me dijo "¡sí, adelante!".
El problema
Servidor Couchbase está pensado para ejecutarse en un clúster de hardware, no en un único nodo. Cluster es la primera letra del acrónimo Couch. Muchos de los ingenieros aquí desarrollan haciendo girar un clúster de máquinas virtuales o contenedores Docker o lo que sea. Eso es efectivo y eficiente, pero si estoy tratando de explicarte Couchbase por primera vez, pensé que sería más interesante si tuviera algo tangible que mostrarte. Algo visual, visceral, e incluso interactivo.
El problema es que para mostrarte un clúster físico hacen falta varias máquinas físicas, un router, cables de alimentación, etc. Tal vez podría montar un laboratorio aquí en mi oficina, pero no puedo llevármelo de viaje muy fácilmente.
Una solución
Mientras estaba en Mountain View reunido con mi equipo, oí hablar de otro proyecto que utiliza Couchbase Lite y Couchbase Sync Gateway. En utilizó varias Raspberry Pis que actuaban conjuntamente para ayudar a demostrar visualmente el flujo de datos y cómo funcionaba la sincronización.
No creo que se me ocurriera originalmente, pero alguien en la sala pensó que sería genial si pudiéramos hacer lo mismo con Couchbase Server. El único problema es que no hay una versión ARM de Couchbase Server.
Pero la idea se me quedó grabada. Investigué para ver si había alguna placa de fabricante similar a Raspberry Pi que tuviera CPU x64 y pudiera tener al menos 2gb de RAM. Hay algunas, pero son bastante caras. Seguí buscando, y finalmente me encontré con "compute sticks". Son como Chromecasts más grandes, salvo que ejecutan Windows o Linux en arquitectura x64. Algunos tienen 2 GB de RAM integrados. Tienen USB, HDMI y WiFi. Algunos costaban menos de $100. Ahora las ruedas estaban girando. Sin duda podría viajar con un puñado de ellos.
Un proyecto
Seguí investigando y pensando en esto. Tenía una imagen en la cabeza, e (inspirado por un entrada del blog de David Neal sobre ilustraciones dibujadas a mano) Lo dibujé (mal) en mi pizarra blanca.

Tal vez podría arreglármelas llevando 3 barras de computación y un router, pero si lo tuviera todo conectado y contenido en una sola maleta, sería aún más fácil.
Puedo llevar esta maleta a una sesión o a un stand, abrirla y empezar a utilizar un clúster completo. Podría demostrar qué ocurre si se cae un nodo de un clúster. Podría invitar a un voluntario a desconectar un nodo de su elección y mostrar lo que ocurre. A continuación, podría mostrar qué ocurre si ese nodo vuelve a conectarse (o qué hacer si el nodo se desconecta definitivamente).
Además, es un gran tema de conversación. Es una pieza de nerdería muy chula. Una vez que funcione, podría decorarlo con luces y pegatinas para divertirme aún más.
Cuando tuiteé sobre ello (soy @mgroves en Twitter), Gerd Aschemann tuiteó que se había construido algo similar llamado "nube en una caja". Ahora estaba muy emocionado, porque ya se había demostrado que mi idea era posible.
Conclusión
Acabo de empezar a trabajar en esto. Estoy probando algunos compute sticks para ver si puedo hacer que ejecuten Couchbase Server. Planeo escribir un blog sobre este proyecto a medida que avance, ¡así que mantente al tanto!
Si tienes algún consejo o sugerencia para este proyecto, póngase en contacto conmigo en Twittero envíeme un correo electrónico (matthew.groves AT couchbase DOT com).