Tecnología, frameworks, producción de aplicaciones e innovación

Estos días está siendo comentado en Twitter (¿dónde han quedado los blogs?) un artículo sobre lo poco que se favorece la innovación (estoy siendo eufemístico) y acabo de enterarme del proyecto Voota [nota al margen: usar este ejemplo para explicarle a mi madre la utilidad de Twitter].

El caso es que investigando un poco más sobre el proyecto Voota, veo que lo están desarrollando como software libre, y gracias a los errores de teclado veo que usan el framework para PHP Symfony. Así que me he animado y he dicido otra vez instalarme un framework para el desarrollo de aplicaciones en PHP. No lo he hecho porque los requisitos de servidor son demasiado estrictos y no me convencen, lo que me ha llevado a darme ánimos de nuevo para avanzar en mi propio framework (sí, cómo me está quedando de bien, pero eso es otra historia).

Y antes de aburriros con este tema voy al grano. Automáticamente he pensado en la innovación, en lo que la favorece y en lo que no, en las facilidades para el desarrollo de aplicaciones, en la disponibilidad de equipos de desarrollo de empresas o freelance, etc, y he llegado a la conclusión, muy rápidamente, de que nos falta tecnología y personal cualificado para manejar y desarrollar tecnología.

Hay miles de proyectos o de ideas de emprendedores (emprendedores en gestación) no técnicos que no se ponen en marcha porque ellos no son desarrolladores, no conocen a nadie que lo sea, no hay oferta de empresas y freelance de desarrollo porque están todos a tope, faltan desarrolladores cualificados, y cuanto tienen quién lo desarrolle te cuesta un dinero que no puedes gastar.

Si tuviéramos facilidades para la innovación cualquiera podría costearse un desarrollo de, pongamos, un mes. Si hubiera mejores herramientas, libre claro, (no más completas, sino más sencillas y dirigidas), desarrolladores con menos conocimientos podrían empezar montando pequeñas aplicaciones para esas ideas en gestación y probar su viabilidad.

De cada cien o mil pruebas, experimentos o ideas alguna saldría adelante y contribuiría al avance tecnológico y social, además de generar negocio y crear riqueza (en el sentido social de la palabra).

Pero claro, si algún día termino mi framework, con lo que me habrá costado (en esfuerzo) seré egoísta y no lo compartiré con nadie, y además tardaré tanto en terminarlo que probablemente no será innovador.

22 Respuestas a “Tecnología, frameworks, producción de aplicaciones e innovación”

  1. Ignacio, adelante con el framework, no es tan costoso como parece. Aunque tengo que admitir que Symfony está muy bien.

    Y hablando de innovación, es una pena, que nadie apoye a los frameworks… la reducción de costes en las empresas sería brutal…

  2. Yo llevo unos meses trabajando con Symfony y la verdad es que estoy encantado. Nos permite realizar el trabajo de una forma muy ágil. Creo que es una decisión acertada, pero no todo me está pareciendo de color de rosas ya que yo personalmente sí hecho en falta algo más de documentación. Las cosas más usuales sí estan muy bien documentadas, pero cuando te metes a fondo empiezas a tener algún problema que otro.

    No considero desde luego que usar un framework sea «ir por la via rápida». Solo tienes un buen punto de partida, un entorno, unas librerías… ¿pero reinventar la rueda para qué? ¿voy a hacerlo yo o mi equipo mejor que toda una comunidad? yo no lo creo.

    Bueno, animo a todo el que quiera empezar con Symfony. Le va a gustar.

    Voota.es me parece una idea genial. Todo lo que fomente una participación ciudadana mayor en la política me parece estupendo.

    Un saludo.

  3. PHP es popular porque es ‘sencillo’ de usar

    para hacer webs serias no hay color – Java es mucho mas rapido, aprovecha mejor los SMP y tiene mejores frameworks

    y si usas jruby o scala ya ni te cuento

  4. Pues PHP, el juguete ese, es usado por sitios con mucho tráfico. Y empresas serias lo usan.

    Sobre Frameworks, pues me quedo con Zend y CodeIgniter.

  5. La idea de crearte tu propio framework es viable….si eres un muy buen programador, no pasa nada por reinventar la rueda. Acaso no lo han hecho cientos de creadores de otros frameworks….Por lo que deduzco todos programais en PHP. ¿No habeis pensado en pasaros a Java? Yo la verdad es que con PHP no puedo, lo veo un lenguaje ágil pero de juguete, nada serio, poco profesional y muy amateur.

  6. Nosotros somos bastante reticentes a usar frameworks de terceros, sobretodo porque hemos llegado a un punto en el que tenemos las principales ventajas del resto de frameworks implementadas y además, la ventaja de controlar y saber qué pasa en cada parte en todo momento, y eso es impagable.

    Cualquier añadido, mejora o lo que se nos ocurra lo podemos implementar con buenos resultados, y nunca dependemos de nadie para poder seguir desarrollando y mejorándolo.

    Eso no quita que para ciertos proyectos de poco peso, compense usarlos y terminar por la vía rápida.

  7. Gracias a todos por las críticas, tanto las relacionadas con los frameworks como con la innovación.

    Por completar un poco y contesando a vuestros comentarios, respecto a los frameworks, yo no creo que sean necesrios siempre y no usarlos en mi caso no es un problema de ganas, sino que la mayor parte de mi tiempo no me dedico a programar y cuando he trabajado para terceros he utilizado lo que me mandaban :)

    Sobre recompilar PHP o cambiar de configuración, pues si eso afecta a la decena de proyectos alojadas en el servidor, no debo hacerlo si no tengo ninguna necesidad imperiosa, que no es el caso.

    Sobre el framework propio creo que se os ha pasado por alto mi ironía al respecto sobre mi propia convicción de llevarlo a cabo.

    Y sobre la innovación, no os quito la razón, pero hace falta dinero (para cubrir el tiempo) que dedicar a pensar y hacer cosas nuevas.

    Por cierto, el «secreto» del «éxito» de Inventa Internet es que Javier y yo nos dedicamos y somos espeialistas en cosas totalmente diferentes, yo soy el primero que creo en los equipos.

  8. Veo que se ha tomado mi ácido comentario con sentido del humor. Es como hay que hacerlo. No todo van a ser alagos en los comentarios, etc. Se que he sido un poco «borde» pero es un enfoque que me gustaba transmitir, quizás no muy educadamente, la ironía por escrito se maneja muy mal.

    Creo que esta entrada de Ignacio ejemplariza muy bien porqué los emprendimientos en equiposon más «robustos, y si este es multidisciplinar mejor aún.

  9. Hola Ignacio,

    Gracias por acordarte de Voota. Te puedo decir, como CTO en Voota, que hay bastantes razones por las que hemos elegido Symfony. Algunas de las más destacables son la velocidad de desarrollo que ofrece y, sobre todo, el apoyo de la comunidad, tanto a nivel de soporte como de plugins y código ya desarrollado (cosa muy complicada si nos vamos a software propietario). Respecto a los requisitos, solo destacaría que, muy probablemente, necesitarás incrementar el límite de memoria para php, pero no creo que sea gran problema. Y respecto a la pregunta de @manelgarcia, no, no es necesario utilizar un framework, pero si muy muy muy recomendable. Me parece que Symfony es una gran opción, te invito a que le des una segunda oportunidad ;)

  10. @Leo jajajaja

    Yo la verdad es que tampoco estoy muy de acuerdo con todos los puntos del post.

    En cuanto a desarrollar tu propio framework, es obvio que lo que vas a aprender durante el desarrollo debería ser la única motivación para meterte en ese berenjenal de reinvención de ruedas. Si no lo haces por motivos didácticos, no lo veo nada práctico.

  11. Yo tengo una idea estupenda, se trata de unas inyecciones que te quitan años. Soy un hacha del marketing y estoy siguiendo la brillante estrategia de segmentar el mercado en modelos de dos, cinco y siete años. Las inyecciones de un año tienen un precio especial si te abonas (apostamos por un modelo de suscripción) en definitiva, se trata du modelo de negocio hiperinnovador y de un servicio disruptivo, pero el único problema que tengo es que nadie me ayuda con el DNA recombinante y cuando voy a contratar a un biologo molecular está a tope o me cobra una pasta ¡Así no hay quien innove!

  12. Si te supone un drama recompilar php o modificar la configuracion no se como esperas acabar un framework propio

    sin acritud

  13. Joaquín, lo he corregido. Sobre los requisitos, he ejecutado el archivo de comprobación de prerequisitos y me ha dado 2 alertas necesarias de subsanar que suponían modificaciones de configuración de PHP en el servidor.

  14. Gracias Adrián :)

    Julián, se supone que un framework para desarrollo facilita la organización del código y genera estructuras y código de forma semi-autómatica.

  15. «Pero claro, si algún día termino mi framework, con lo que me habrá costado (en esfuerzo) seré egoísta y no lo compartiré con nadie»

    Me has sacado una gran carcajada… nosé que pasará con la tecnología que estamos desarrollando en Cokidoo, ojalá algún día podamos documentarla como dios manda y liberarla, pero no puedo evitar pensar alguna vez de esa forma, aunque no sea la intención.

    Me están gustando bastante tus posts últimamente Ignacio :)

  16. No estoy de acuerdo en varios puntos. Opino que a nivel de desarrollo web hay mucha tecnología, otra cosa es que se conozca o se tenga un mínimo interés en buscar y aprender a utilizarlos (sourceforge es un buen punto de partida).

    A nivel de frameworks de desarrollo ágil tienes Symfony, PhpCake y Codeigniter para PHP, RoR para Ruby o Django para Phyton entre otros. Y si pueden desarrollar con ellos perfectamente pequeños proyectos en un mes, que nos permitan realizar un prueba de concepto.

    Innovar no es fácil, si lo fuese todo el mundo lo haría y ya no sería innovación. Lo que hace falta son ganas y ambición.

  17. Hola,
    antes de todo, es ‘Symfony’ y no ‘Symphony’.

    Nosotros utilizamos Symfony (versión 1.2) en nuestros nuevos proyectos.

    Desarrollar un framework Php propietario en el 2009 es algo como querer programar tu proprio Sistema Operativo.

    Symfony no solo proporciona un conjunto de librerías para un desarrollo rápido de aplicaciones web (como hace por ejemplo el framework Zend), sino que proporciona un conjunto de relacionados, pero independientes sub-frameworks, que forman un completo framework MVC (Modelo, Vista, Controlador) y cubren todas las problemáticas relacionadas con el desarrollo web: orm (propel o doctrine), pruebas unitarias (lime), sistema de logs, sub framework de forms, enrutamiento…

    En mi opinión, en este momento es el mejor Framework PHP.

    Saludos.
    tuProgramador.com

  18. Php 5.2.4 (con acceso por consola) , Apache y Mysql no creo que sean requerimientos muy elevados.

    Es muy sencillo instalar Symfony mediante PEAR con 2 sencillos comandos:

    pear channel-discover pear.symfony-project.com
    pear install symfony/symfony

    Es un framework muy activo y con buena documentación (el gran problema de otros frameworks menos detallistas en este punto).

    Yo creo que en algún momento a todos los programadores nos ha tentado hacer nuestro propio framework.
    Pero hay que tener en cuenta el coste de mantenimiento no solo el de creación.
    Crear Documentación, Herramientas asociadas y la propia evolución del framework es costosa.

    Al final creo que es más optimo un framework con una buena comunidad y buena documentación (normalmente resultado de lo primero).

    Si eres de PHP están bien symfony, cakephp y codeignitter.
    Pero para mí sin duda Ruby on Rails.

Los comentarios están cerrados.