quitandose el traje

…en ultima instancia eres sólo un simple individuo en un mundo enorme

 

Resumiendo el iWeekend – dia 3 Jueves, 15 de mayo de 2008

Filed under: cajón de sastre — yabu @ 12:54 pm

Lo primero el resumen de lo que conté sobre la marcha y lo que hay en el blog de iWeekend.

¿Qué más puedo decir del tercer día? Yo creo que lo más importante (siempre desde el punto de vista del equipo de desarrollo) fue la falta de coordinación. A primera hora nos juntabamos, tomabamos decisiones, planificabamos… y luego, a lo largo del día, se iba todo al garete. Llegó un momento, cuando estaba claro que no íbamos a sacar nada, que la gente perdió la motivación, y cada cual se dedicó a hablar con quien más le apetecía.

He aprendido que la ingeniería del software es necesaria: las herramientas de diseño de las que disponemos hoy en día son muy útiles. Lástima que en mi empresa no se haga demasiado uso de ellas, ya que nos movemos en el paradigma anterior de la programación. También he aprendido que coordinar un proyecto es muy dificil y necesario: una buena distribución de tareas y responsabilidades puede hacer que funcione un proyecto, o que se vaya al traste.

Como resumen final, cosas importantes que habría que tener en cuenta para próximos iWeekends o reuniones similares, si se quieren tener más garantías de éxito:

  1. Exigir un mínimo de calidad en las ideas presentadas: que se vea que el emprendedor ha hecho los deberes, ha estudiado el mercado, tiene una idea clara del problema a solucionar y cómo hacerlo. En el iWeekend se puede definir cómo monetizar la empresa, se pueden hacer cambios, pero deberíamos partir de una base más firme que la que teníamos. Una idea clara no tiene por qué implicar una exposición larga de la misma, así que podrían presentarse todas.
  2. Definir desde el principio la arquitectura de desarrollo: si puede ser previa al evento, mejor. Se perdió mucho tiempo y esfuerzo configurando entornos, decidiendo qué hacer… Un grupo de desarrolladores con las ideas centradas y el ordenador preparado resultaría mucho más eficaz. Dado que se trata de desarrollos web, creo que es posible tenerlo definido a priori.
  3. Elegir un sitio adecuado: en la Fundación Bancaja no podíamos entrar comida, teníamos que irnos a las diez de la noche sin posibilidad de trabajar hasta las tantas si estabas motivado… Ya sólo el tema de las pausas para comer supuso muchísima pérdida de tiempo: entre que sales, te sirven, sobremesa y demás, se pierden tres o cuatro horas más el tiempo que cuesta volver a la concentración y al ritmo de trabajo anterior. Además hubo momentos bizarros, como cuando un vigilante de seguridad vino a echar a dos asistentes de la sala porque… ¡se habían bajado un café de la máquina!

Puede que parezca muy negativo por lo que he contado hasta ahora, pero es sólo porque he querido centrarme en los aspectos a mejorar. La experiencia fue increíble: he conocido a gente extraordinaria, de una calidad personal tremenda, y además, con una profesionalidad que no me esperaba. Hay gente muy activa ahí fuera que todavía conserva la pasión por la informática que yo casi he perdido. También vi cómo se trabajaba y en qué, y me ha abierto mucho la perspectiva sobre el mundo del emprendedor: no hace falta sólo una buena idea, sino muchas más cosas que estoy empezando a aprender ahora.

Desde luego, si tengo la ocasión, repetiré en el iWeekend.

Para terminar, aquí tenéis las conclusiones de la organización. Dejo además unos enlaces a diversos documentos gráficos, para mi comodidad y la vuestra. Y para los más cotillas, diré que soy el que dice en uno de los vídeos “Hola, Mundo!” :D

 
 

Resumiendo el iWeekend – dia 2 Miércoles, 14 de mayo de 2008

Filed under: cajón de sastre — yabu @ 8:12 pm

Para empezar, estaba revisando el post de ayer y me he dado cuenta de que faltaba una idea interesante que comentar. La idea era esta:

  • Santiago Lizardo: Red social basada en recomendaciones de TV:
    Santiago era muy bueno y la idea está en línea de lo que se lleva en la web 2.0. Los sistemas de recomendación comienzan a tener madurez, y teníamos gente en el equipo que había trabajado con algunos. Las pegas que tenían es que hay empresas grandes que van a por lo mismo, y que la gente cada vez ve menos la televisión.

Y hecha esta corrección, voy a resumir el día 2: aquí tenéis un enlace a lo que conté sobre la marcha y a lo que hay en el blog de iWeekend.

En cuanto a mis comentarios del día: Como dije, llegué tarde, casi al final del briefing o lo que fuera. Nos dividimos en desarrollo, negocio y diseño. De la parte de negocio y diseño no tengo ni idea, no estuve trabajando con ellos en todo el fin de semana así que sólo tengo una noción del resultado, pero había una cosa que compartíamos entre los tres grupos, aunque no se comentaba demasiado: nadie creía en el proyecto. Se había elegido esa idea, teníamos claro que íbamos a trabajar en ello, pero nadie daba un duro por la viabilidad del producto terminado.

Esa fue la primera cuestión importante: no trabajábamos en algo en lo que creíamos

A pesar de eso, comenzamos con el desarrollo. Lo primero que hicimos fue juntarnos unas cuantas personas a definir el modelo de casos de uso (la verdad, bastantes: llegamos a ser cinco o seis) de forma básica y acelerada. A partir de ahí, el modelo de clases. Y mientras lo hacíamos surgían bastantes cuestiones que no sabíamos cómo resolver, puesto que no habíamos trabajado nunca con una peluquería. Había gente que ni siquiera iba a cortarse el pelo. Las chicas nos dieron un cursillo acelerado, ya que suelen utilizar servicios de peluquería más avanzados, pero a pesar de eso nos dimos cuenta de la…

segunda cuestión importante: no conocíamos el negocio para el que pretendíamos implementar una solución

¿Conocía el emprendedor el negocio? Pues no: sólo tenía una idea general. Intentamos suplirlo con un par de llamadas a peluqueros que conocían algunos asistentes, pero sólo conseguimos un modelo complejo -muy complejo- de reservas, que no se podía implementar en un fin de semana (las peluquerías tienen más de un peluquero, cada uno con su lista. Hay servicios que se solapan. En un servicio tienes que tener en cuenta que hay periodos de inactividad, etc..) A pesar de ello tiramos hacia adelante. Decidimos simplificar para obtener un producto sencillo pero que luego fuera ampliable.

Siguiente paso: a alguien se le ocurrió comentar que mirásemos si había alguna solución ya existente, opensource, que se pudiese modificar. Perdimos un tiempo buscando por la red, salieron unas cuantas soluciones (a mi no hubo ninguna que me gustase) pero, no sé muy bien cómo, se decidió la…

tercera cuestión importante: decidimos adaptar un software existente en vez de implementar algo nuevo desde cero

Eso, para mi, fue una de las cosas que más influyeron de forma negativa: es mucho más complejo entender y modificar un programa que ya existe, y que además es bastante cutre, a empezar algo nuevo y sencillo. Creo que la decisión se debió al optimismo de dos programadores de PHP excelentes, Arno y Kevin, pero al trabajar en esa línea lo que conseguimos fue tener sólo a dos programadores a pleno rendimiento mientras otros muchos no sabían o podían colaborar. Y no sabían colaborar por lo siguiente:

Cuarta cuestión importante: no se definió con claridad la arquitectura de la solución

Después de decidir no sé muy bien cómo que se adaptaba phpScheduleIt, la gente no sabía si se trabajaba con Akelos, sin Akelos, con php a pelo, y no sabía cómo acceder desde lo que tenían que desarrollar al programa que se estaba adaptando.También influyó mucho el que no supiésemos los conocimientos de cada uno. A toro pasado, parece que hubiese sido más apropiado empezar a desarrollar con Rails, pero quién sabe.

Yo pasé el resto de la tarde configurando el entorno de desarrollo e intentando hacer algo productivo (no había desarrollado nada web en la vida) así que perdí un poco la visión de conjunto: solo sé que, hasta la noche, había conseguido instalar Akelos, conseguir un cliente SVN en mi puesto, crear los virtual host para el desarrollo, y programar un poco.

Así termino mi día 2. No me quedé a cenar, estaba demasiado cansado, sin pasta, y mi chica me esperaba.

Mañana acabaré de resumir el tercer y último día del iWeekend.

 
 

Resumiendo el iWeekend – dia 1 Martes, 13 de mayo de 2008

Filed under: cajón de sastre — yabu @ 1:29 pm

Bueno, ya he dejado reposar las cosas y voy a hacer un pequeño análisis de lo que me gustó y no me gustó. Intentaré completar los posts anteriores, que escribí al vuelo, para que os hagáis una idea de cómo transcurrió todo.

La presentación

Aquí tenéis detallado el primer día en el blog de iWeekend

Por mi parte, fui bastante puntual. Cuando llegué ya había mucha gente, y me sentía un poco perdido: había un piscolabis pero nadie que te recibiese, estuve media hora en el salón de actos sentado sólo hasta que empezó todo. Eché de menos algún tipo de gestión para romper el hielo y que nos conociésemos todos un poco, una especie de mini-presentación de cada uno, algo así. Al rato, los organizadores tomaron la palabra. Lo primero fue para comentar que no se formaría una empresa entre todos (lógico, pero se notó algo de improvisación) y para comentar más o menos lo que haríamos. También habló un representante de Sun, que no me acuerdo ni de lo que dijo.

En general, todo muy bien. Se nota que les falta curtirse un poco en los truquillos y técnicas básicas de la organización de eventos, pero nada que no se pueda solucionar con un poco de práctica.

Lo que más eché en falta es no tener claro el perfil de los asistentes. No sabías quién trabajaba en diseño, quién en empresa, quien en desarrollo, ni la especialidad de cada uno. Quizá el día del evento no haya tiempo para presentarse, pero si hubiese habido un formulario obligatorio a rellenar en la inscripción -con unos campos básicos para cada tipo de perfil- podríamos habernos hecho una idea de qué tipo de gente habría trabajando. No sé en empresa y en marketing, pero en desarrollo hubiese influido en algunas decisiones que luego comentaré y que resultaron críticas.

La selección de ideas

Pensaba que yo había elaborado muy poco mi idea: sólo tenía un pdf cutre matao preparado en dos minutos, pero resultó de las mejor presentadas. Creo que con un poco más de preparación hubiese tenido posibilidades, lo que por otro lado era una putada, porque no podría hacerme cargo del proyecto si hubiese llegado a salir: mi prioridad, ahora mismo, son mis oposiciones. Y aunque parezca que no, tiene que ver con emprender: en unos días pondré un post con una reflexión sobre ello.

Bueno, pues el resto de las ideas estaban peor preparadas que la mía: sin plan de negocio, sin ideas claras, sin emprendedores brillantes. Sólo habían un par que se salvaban. Además, pensaba que cada emprendedor traería su idea y que apenas tendría tiempo para exponer, pero fuimos muy poquitos los que nos atrevimos a presentar algo. Aquí tenéis la lista de todas las propuestas:

  1. Alvaro Maceda – Red social sobre recetas de cocina
  2. Federico Gascón – Concentrador de flujos de microbloggin
  3. Raúl Ros Perez – Cita previa on line para peluquerías (ClickAndCut)
  4. Santiago Lizardo – Red social basada en recomendaciones de TV
  5. Hector Pérez – Sistema de intercambio de favores inmediatos (Fav2Fav)
  6. Miguel Angel Ivars – Página web que paga por ponerla (HomPay)
  7. David Expósito – Web de vídeos con noticias para videojuegos
  8. Javier de la cueva – Buscador clasificado top 10
  9. Jose Antonio Llopis – Plataforma de consejos para ahorrar al comprar
  10. Bruno Ramos – Portal de juegos con premios por jugar (BGame)
  11. Jose Luis Monteagudo – Gestor de eventos on-line
  12. Juan Seguí – Plataforma global de encuestas entre profesionales
  13. Juan Ramón Vidal – Sistema de backup on line de drivers
  14. Juan Jesús Cobo – Solución para la piratería
  15. Omar Pera Mira – Compra en grupo
  16. Clara Torà – Bussines dating

La selección fue dura: elegimos primero cinco, luego tres, luego una (o algo así). Ganó ClickAndCut, idea chorra y mala donde las halla, pero que le vamos a hacer: es lo que tienen las elecciones democráticas. Las que valían la pena, por si tenéis pasta y queréis invertir, son estas:

  • Alvaro Maceda – Red social sobre menús semanales:
    La idea no se pasaba, pero era algo que no existe y suficientemente sencillo como para implementarlo en un fin de semana. No le fue el powerpoint, era la primera presentación, y no salió elegido. Cosas de tener que romper el hielo.
  • Juan Ramón Vidal – Sistema de backup on line de drivers :
    A mi me gustó mucho la idea: se trataba de completar uno de los programas que obtienen los drivers de tu ordenador para que no necesites nada más que eso cuando reinstales + un almacenamiento online. Estaba orientado a tiendas de reparación de informática, a las que haría un gran papel.
  • Héctor Pérez – Sistema de intercambio de favores inmediatos (Fav2Fav):
    Héctor expuso la mejor idea de todas: intercambio de ayuda online por IM. Traía los deberes hechos: una empresa ya constituida y el mercado estudiado. Tuvo en su contra que es bastante joven -lo que pudo influir en la gente a la hora de decidir- y que no tenía la presentación demasiado preparada, así que no salió entre las finalistas.
  • Juan Seguí – Plataforma global de encuestas entre profesionales:
    Es algo que no está hecho en internet, y que podría haber dado un servicio valioso a las empresas: la idea era el diseño de encuestas sobre desarrollo web (aunque imagino que podría haberse ampliado) de modo que los clientes pudiesen completarlas online. Podría haber salido algo interesante y sencillo de implementar.
  • Clara Torà – Bussines dating:
    La idea era un Meetic pero para quedar a hacer negocios en vez de para ligar. Simple y bueno. Clara Llegó a última hora, reconoció que la idea se le había ocurrido en el coche, pero al fin y al cabo no era mala. Y, además, es una emprendedora nata, llena de energía. Podría haberlo llevado adelante.

Mañana seguiré con mis impresiones del dia 2, que esto me está quedando demasiado ladrillo para un solo post.

 
 

Juntando el código Lunes, 12 de mayo de 2008

Filed under: cajón de sastre — yabu @ 8:00 am

Ayer fui bastante loco y no me dio tiempo ni a enviar el post que escribí sobre la marcha. Aquí lo tenéis.

Tercer y último día del iWeekend. He llegado a las nueve y media. No ha venido mucha gente a desayunar, van llegando poco a poco al centro cultural: casi mejor, se van ocupando los sitios y nos vamos poniendo en marcha poco a poco.

Ha habido una reunión a primera hora. Hemos decidido que vamos a programar el front-end desde cero, volvemos a Akelos, el backend lo harán los alemanes a pelo. Hemos pintado las pantallas, hemos definido los controladores, y nos estamos poniendo en marcha. Se ha subido Akelos al repositorio SVN y hemos empezado a trabajar por ahí

Después, el caos: el equipo de interface de usuario se ha ido a tomar por el saco, nos hemos dividido, falta de control. Estoy con Rubén intentando montar el calendario. No nos ha funcionado Akelos en local, nos ha tocado trabajar directamente contra el server de producción en ftp. Tras perder bastante rato intentando conectarnos usando las clases del programa que están modificando, hemos llegado a una conclusión: el modelo de datos es algo increiblemente complejo y no podemos hacer un select (ni diez) para conseguir datos reales. La decisión pragmática ha sido: nos inventamos los datos, que el modelo devuelva la información con random y por lo menos tenemos el esqueleto montado y se ve algo.

Hemos pasado la página a alguien para que la maquete, y parece que va a quedar maja. Mientras tanto, ha seguido el avance hacia la ruina, poniendo métodos en el controlador para intentar emular un flujo.

También he conocido LinkednIn: una red de contactos orientada a temas profesionales. Me he dado de alta, puede resultarme muy útil para cualquier proyecto.

Al final del día, teníamos el controlador del calendario medio montado, dos modelos que devolvían datos falsos, y una maquetación hecha a medias que no hemos conseguido integrar. El lado bueno es que, lo nuestro, más o menos funcionaba. He conseguido ponerme a trabajar con un framework que no conocía y en un lenguaje con el que no he trabajado y he sacado algo. Lo malo, no hemos podido integrar código, no había nada funcionando, y estaba todo cogido con pinzas.

Por otro lado, la gente de diseño ha hecho un gran trabajo. El concepto es muy bueno, espero que cuelguen pantallazos o se pueda ver en la web de pidecita.com. Nuestro controller está colgado y funcionando aqui, aunque visto en marcha no parece ser gran cosa.

En fin. La presentación ha sido un tanto cutrilla, no ha venido nadie, pero nos lo hemos pasado de miedo. Más tarde ya haré con tranquilidad un resumen, un análisis más detallado e intentaré extraer algunas conclusiones de la experiencia.

 
 

Contando el iWeekend dia 2 Sábado, 10 de mayo de 2008

Filed under: cajón de sastre — yabu @ 3:26 pm

He llegado tarde (¡me acosté a las dos y habían quedado a las nueve!). Cuando he llegado, había un tal Miguel, el más senior, organizando un poco el cotarro. Estaban en el brainstorming inicial de ideas, y había ¡casos de uso en una pizarra! Oh, sí, ah, sí.

Nos hemos dividido en tres grupos: diseño, marketing y management, desarrollo. Yo estoy en desarrollo, claro.

Nos hemos juntado tres o cuatro personas y hemos diseñado el modelo de casos de uso, luego el modelo de clases… Ha sido difícil porque hemos tenido que simplificar muchísimo: necesitamos sacar un producto funcional en dos días, así que no se pueden hacer demasiadas florituras. Echo mucho de menos un diseño de interface de usuario.

Hemos seguido diseñando, han habido ciertas discusiones (el modelo que utiliza un peluquero al que le hemos preguntado es complejo, con huecos en un servicio que va llenando con otros clientes -por ejemplo, mientras se secan unas mechas va haciendo un corte- ) pero parece que al final tenemos algo que se puede implementar en un fin de semana. Los diseñadores empiezan a tener una idea de concepto de la web, he visto unos cuantos logotipos bastante buenos. Lo que no acaba de estar claro del todo es la funcionalidad.

A las dos y algo hemos ido a comer, he estado charlando con gente muy interesante (Clara, Miguel, María) y ahora… a ver si recuperamos el ritmo.

Seguiremos informando, en la segunda edición.

Segunda edición

Hemos distribuido las tareas. Vamos a trabajar modificando una aplicación existente, phpScheduleit, cambiando el diseño y añadiendo funcionalidad.Yo me he quedado con una parte, mostrar el calendario de reservas de una peluquería, otro grupo modifica la aplicación existente, otros, desarrollan funcionalidad adicional.

Había entendido que trabajaríamos con el framework de Akelos: parecía interesante y tenemos aquí a Berni, uno de los desarrolladores. Al final, la cosa se ha diluido un poco y parece que el único que trabaja con Akelos soy yo. Lo he instalado, he tenido algún problemilla que he solucionado con Berni (habilitar mod_rewrite y un par de paridas) y ya tengo un controlador funcionando. Además, parece que hay un plugin para la creación de calendarios, que voy a investigar ahora mismo.

Estoy muy sorprendido con Akelos: es genial, un port de rails a php, con rake incluido. Tenía ganas de probar algo así. Lástima que me falte un poco de experiencia, porque podría haberle sacado mucho más jugo al tener disponible a la gente que lo desarrolla, pero al menos empezaré a practicar todo lo que aprendí con el “agile development with rails”, disculpenme la inexactitud del título.

Tenemos un proyecto en Google Code, ha sido otro de mis descubrimientos: soporta SVN y todo. Una especie de Sourcefourge a la Google. Miedo me empiezan a dar los de Google, creo que tienen demasiado, vamos a tener que empezar a a “evilizarlos” para que creen alternativas. Lo malo es que son grandes y además buenos.

Resumiendo:

Han habido un par de momentos de desmotivación, un par de personas que no sabían qué hacer, pero se ha superado y estamos todos trabajando.

Más noticias en la edición de la noche.

Edición nocturna

Abandono Akelos para el desarrollo, nos hemos planteado que la integración será difícil. Me he instalado el truñicódigo y veremos cómo planteamos el calendario. Seguramente lo abordará Ruben Casalta, domina PHP y yo estoy muy pez.

Y con esto y un bizcocho hasta mañana a las nueve.