Somos lo que hacemos

Ni lo que decimos, ni lo que pensamos, ni lo que comemos. Si me preguntan a mí, somos lo que hacemos. La acción es definitoria, todo lo demás papel mojado. El movimiento se demuestra andando, que decía aquel. No me sirven los “dilatada experiencia en”, show me the money mejor. Si sabes hacer algo, hazlo. Pensar en hacerlo no aporta ni demuestra nada. Hablar de hacerlo, y que te escuchen, puede que te alimente el ego un tiempo, pero el vacío de realidad no van a llenarlo aplausos falsos a un mensaje falto de experiencia.

En esta España nuestra lo de hablar con hechos por delante se lleva poco, el cantamañanismo está a la orden del día. Pero en otros lugares la gente es menos inocente, y las grandes palabras y promesas se tienen que respaldar con tangibles. Los americanos, por ejemplo, los muy jodíos. Los patos primigenios, esto es Diego, Jan y un servidor (con la inestimable ayuda de la señora Pato Marta), nos pasamos un par de semanas hace unos meses en San Francisco hablando de lo nuestro con quien quisiese escuchar. Y escuchar escuchaban, con atención. Pero lo del “mira que bonito lo mío” no iba a ser suficiente…

Los patos en su oficina de California: el Happy Donuts

Credenciales, aquí se piden credenciales

Fuimos allí a entrevistarnos con las empresas que integramos, por aquello de hablar de colaboraciones. Al fin y al cabo, añadimos una capa de visualización chula por encima de sus productos, les añadimos un valor. Sinergias y tralará. El caso es que en la mayoría de los casos lo que vieron les gustó, y mucho. Hasta ahí bien, el viaje no ha sido en vano. Pero entonces nos dieron un pequeño baño de realidad: “muy chulo todo, pero no os conozco, sois 3 españolitos (bueno, Jan no) salidos de la nada… ¿cómo voy a ofrecer a mis clientes  algo vuestro sin saber si puedo fiarme?”. Touchés.

Su preocupación tiene toda la base del mundo. No somos reconocidos ex-Googlers, no estamos detrás de un producto tecnológico tan conocido que hable de nuestra validez desarrollando software. Somos unos chavales con buenas intenciones, un producto potencialmente bueno, y mucho que demostrar. ¿Pero cómo demostrarlo? ¿Cómo ganarnos confianza como desarrolladores sin haber trabajado con ellos antes? ¿Cómo demostrar que las tripas del producto son sólidas? Pues dejando que ellos, y quien quiera, eche un ojo a parte de las tripas.

La idea es sencilla. Hemos escrito mucho software durante el año y medio que llevamos de Ducksboard. Mucho de ese software es “core” del negocio, no podemos compartirlo tan felizmente. Pero ciertas partes, utilidades, librerías, son relativamente genéricas y no definitorias del producto. Es código que todo el mundo acaba re-escribiendo para cada nuevo proyecto, porque, sin ser central a la oferta de valor del producto, es necesario para que funcione. Una oportunidad perfecta para liberar software que puede ser útil a muchos, demostrando la calidad de la casa, sin perder ventaja competitiva por ceder código específico del modelo de negocio.

Enter libsaas

Bien, tenemos plan. Consiste en demostrar nuestra valía como creadores de software liberando proyectos que otros usen. Si la jugada funciona y alguno de nuestros proyectos libres engancha, nos hacemos un nombre. ¿Por dónde empezar? Pues por la parte más genérica, repetitiva y reemplazable del producto: el consumo de APIs de terceros. Cada servicio web que integramos ofrece una API, todas comparten ciertas características, pero cada una añade su punto de puñetería que hace falta gestionar. Y eso es pesado y repetitivo.

Para cada una de esas APIs existen wrappers para la mayoría de lenguajes populares, pero no podemos depender de 100 librerías distintas, con diferentes semánticas, formatos de salida, dependencias… es inmantenible. ¿Nuestra solución? Una librería  que ofrezca una API unificada de acceso a todas esas APIs web. Misma semántica, mismo formato de salida: es igual traer datos de GitHub que de Zendesk. El soporte de nuevos servicios se implementa vía plugins, lo que hace fácil hacer crecer el proyecto en base a colaboraciones. Así nace libsaas.

Es importante notar que Ducksboard usa libsaas para comunicar con esas APIs de terceros, no es un proyecto “artificial” ni experimental. Estamos ofreciendo parte del código de obtención de datos de Ducksboard al mundo, pero sólo la parte que todo desarrollador decente podría hacer aún siendo tediosa, no la salsa mágica. Además la jugada puede salir doblemente redonda: si mucha gente se anima a crear plugins de buena calidad, Ducksboard podrá nutrirse de ellos para integrar más servicios rápidamente. ¡Un win-win en toda regla!

Y ya puestos, ¡gridster.js!

Hemos abierto un proyecto de backend, y ha empezado bien. Portada en Hacker News, un centenar de watchers, las primeras colaboraciones. Genial. Pero buena parte del desarrollo en Ducksboard es en frontend, así que tenemos que demostrar que tampoco andamos cojos ahí. Nuestro frontend es muy “a medida”, hemos desarrollado visualizaciones y utilidades para cumplir con los diseños de Vostok, y siendo ese diseño la marca de la casa no podemos compartirlas sin más. Necesitamos algo genérico y que todavía no esté (bien) resuelto…

Y en esas que se cumple una de esas máximas: de tu propia necesidad nacerán los proyectos más útiles. En el dashboard se pueden crear widgets de distintos tamaños y re-ordenarlos a placer con un simple drag-and-drop. Hay ciertas soluciones para hacer ese tipo de ordenaciones de elementos del DOM en una rejilla (o grid) a base de arrastrar y soltar, pero todas muy limitadas. Para muestra, un botón: no hay una buena solución para ordenar elementos que ocupen varias columnas del grid contenedor. Y en Ducksboard necesitamos ese tipo de rejilla.

¿Solución? Bien, desarrollar la nuestra, gridster.js. Con gridster solventamos un problema que tenemos nosotros, que tienen otros muchos, y que es totalmente accesorio al producto de frontend completo. No estamos cediendo conocimiento clave para llevar adelante el negocio, pero sí demostrando que podemos desarrollar soluciones sólidas en el frontend. Una vez más, todos contentos. Portada de Hacker News, proyecto más “watcheado” del día en GitHub, y en resumen, una excelente recepción por parte de la comunidad open source.

En fin…

Somos lo que hacemos. En Ducksboard hacemos software, y eso es lo que somos. Estamos orgullosos de nuestro trabajo, y queremos demostrar que tenemos razones para estarlo. Nuestros proyectos hablan por nosotros, y de eso se trata. Mientras podamos seguir liberando código, lo haremos encantados, es nuestra carta de presentación. Bien con proyectos completos, como libsaas o gridster, bien con parches a proyectos existentes como hemos hecho durante todo este tiempo (eso da para otro post).

¿Tenéis side-projects en esta línea? ¿Cómo habéis conseguido darles difusión y sacarles provecho? Y si no veis claro lo de compartir código, ¿que estrategias usáis para demostrar vuestra calidad como proveedores de servicios/software? Compartan, amigos, compartan.

Advertisements

12 thoughts on “Somos lo que hacemos

  1. 314% de acuerdo.

    Sin embargo, pondria una pequeña nota a pie de pagina para incluir a aquellos que no han tenido nunca la oportunidad de demostrarlo. No todos tienen la suerte de coincidir con la gente adecuada en el momento oportuno.

    Tampoco hay que perder de vista que, como empresa, lo que quereis hacer no es software sino dinero. :)

    1. Por descontado, como empresa pretendemos ganar dinero. En todo momento dejo claro que esto lo usamos como estrategia comercial, no porque nos sobren los recursos :)

      1. Dime que con “recursos” no te refieres a “personas” porque te puedo dar un “toque energetico” estilo Cesar Millan desde Paises Bajos :P

      2. Con recursos me refiero a personas, dinero, tiempo, herramientas, apoyo, y en definitiva a todo aquello que nos permite, como empresa, crear productos.

        Como dicen en la RAE, “medio de cualquier clase que, en caso de necesidad, sirve para conseguir lo que se pretende”. Para conseguir lo que pretendo necesito todo eso :)

        Si tu preocupación viene por si uso el término “recurso” en un contexto de corbatas, escobas por el culo, no-valoración de mis compañeros y reificación de los mismos, no voy por ahí, no.

        Están muy valorados, y lo saben. Del mismo modo que sé que mi tiempo, y el de ellos, son recursos limitados que han de ser aprovechados.

  2. No compro :P

    El diccionario de la RAE tambien lleva “cederron” y “almondiga”. Ya no son lo que eran…

    Doy por hecho que no desprecias y que valoras a tus compañeros. Sin embargo, el concepto recurso esta muy unido al de herramienta / utilidad y soy bastante radical en eso de considerar a las personas como herramientas y deshumanizarlas.

    Por no entrar en que no tiene nada que ver la instanciazion del “recurso” en la persona Pepe o Juan, donde cada uno va a emplear un tiempo diferente para las mismas tareas. Mis velocidades y estimaciones son completamente dependientes de las personas particulares, no del numero de gente involucrada. Vamos que no es lo mismo decir “un centrocampista” que decir Iniesta :-)

    Mis disculpas si pude dar a entender que denigrabas de alguna manera a tus compañeros. Ni tengo indicios, ni pruebas, ni si quiera lo creo.

    1. No hace falta que te disculpes hombre, sé que no había mala intención ninguna.

      No sé si la RAE es o no lo que era, pero es la referencia canónica para el castellano. Alguien tiene que decir que significan y que no las cosas :)

      Me recuerda a un tipo que se quejaba el otro día por Twitter de que usásemos la palabra “arquitectura” para hacer referencia a temas de software, porque él era arquitecto (de edificios) y en cierto modo se sentía atacado. Le mostramos la definición de la palabra según la RAE, que incluye la acepción de los sistemas de software, y tuvo que aceptarlo. Eso sí, decía que no le gustaba, pero que a una persona no le guste lo que significa una palabra no cancela dicho significado.

      Sobre la palabra recurso, creo que ha tomado un halo peyorativo a causa de las consultoras, pero eso no le puede quitar su significado. Desarrollo software, y la capacidad de mi equipo para escribir código es mi recurso más preciado, no hay más.

      Sobre la capacidad de cada uno, si le echas un ojo a mi anterior post comento que se ha fichado a gente concreta para puesto concretos, así que no sufras, tengo muy claro las cualidades de cada uno :)

  3. Totalmente de acuerdo con el post.

    Y no solamente para darte a conocer como empresa, para darte a conocer como profesional es una muy buena manera, lo se por experiencia.

    Vengo del mundo Oracle y me he pasado al desarrollo web, si no hubiese sido por esos pequeños “proyectos” libres subidos en github o colaboraciones no hubiese conseguido nunca mi primer trabajo desarrollando web, es una gran forma de demostrar al mundo que es lo que sabes hacer, y lo mucho que te apasiona.

    Se agradece mucho que las empresas colaboren aportando software que todos podamos utilizar, y mas cuando es de calidad, como es el caso.

    Enhorabuena por el post y por todos vuestros proyectos (los intentaré seguir muy de cerca)

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out / Change )

Twitter picture

You are commenting using your Twitter account. Log Out / Change )

Facebook photo

You are commenting using your Facebook account. Log Out / Change )

Google+ photo

You are commenting using your Google+ account. Log Out / Change )

Connecting to %s