¿Cuándo dejas de programar?

Errores en software= (más código)^2

En reuniones de producto siento la cantidad de tareas urgentes e importantes que debemos desarrollar. Programadores, comerciales, soporte, clientes, el mercado y mis propias ideas me presionan para programar nueva funcionalidad.

Un bebe crece rápido y luego se estabiliza, en el software nunca ocurre. En Visualtrans llevamos 16 años y seguimos desarrollando como el primer día, en Velneo llevamos 10 años y la lista de TO-DO nunca baja, en Visualbeo los productos tienen 16 años y no paran de engordar.

Siempre tenemos listas de tareas a realizar, por la mañana piensas en todo lo que tienes que hacer hoy, si no hay nada, te lo inventas, hacer, hacer y hacer.

post it face

¿Cómo parar de engordar?

La naturaleza es sabia, como tres veces al día, mi cuerpo integra una parte, el resto lo expulsa, además hago deporte para estar en forma y mantener mi salud.

En el software deberíamos hacer lo mismo, dedicarle tiempo analizar que cosas podemos dejar de hacer, que partes del software ya no tienen sentido, que debemos expulsar, eliminar, …

.

Sesiones para “Dejar de hacer”

Hace unos meses nos reunimos el equipo en el vCenter y planificamos una sesión de trabajo para “Dejar de hacer”. Me frustré porque siempre hay personas en el equipo que encuentran razones para seguir manteniendo funcionalidad y servicios. Dejar de hacer es tan duro como salir todos los días a correr, lo más fácil es quedarte en el sofá de casa. Siempre encuentras una disculpa.

Antes de hacer algo nuevo, deja de hacer

TODO, checklist, agenda de tareas,.. existen cientos de software para gestionar todas las tareas que debemos hacer hoy, por mi parte me he creado un lista de STOP-DOING, actividades, eventos, tareas que puedo dejar de hacer. Cuando me proponen asistir a una nueva reunión, evento, lo primero que pienso es ¿Qué voy a dejar de hacer? Si no encuentro nada entonces digo NO.

Anuncios

Programador

La mejor forma de crear un software es que tu mismo seas un usuario real

.

Cuando cocinas es importante que pruebes tus propios platos, los mejores libros que he leído son los que cuentan historias reales, los mejores profesores son los que han vivido experiencias personales, los mejores programas son los que desarrollas para ti mismo.

.

En teoría, no hay diferencia entre teoría y práctica. Pero en la práctica si que la hay.

El primer software que desarrollé en mi vida fue en el año 1997 para el departamento comercial de la empresa de transporte en la que trabajaba. Aquel programa lo desarrollé en Access, no tenía ni idea de programar pero sabía perfectamente el problema que tenía que resolver, vivía los problemas de mis compañeros cada día con lo cual fue fácil mejorar la productividad del departamento. el software estaba mal programado y la herramienta de desarrollo no daba para más pero el software fue un éxito. Años más tarde conocí Velneo ( en aquella época Veláquez Visual) y desarrollamos una gestión de software completa para la empresa en al que trabajaba, aquella semilla se convirtió en Visualtrans una de las empresas líderes en España en software de Transporte, el secreto del éxito; desarrollar un software para nosotros y después crear un equipo de personas extraordinarias que lo han convertido en una referencia en el sector.

.

Vender lo que tu no has probado

¿Te puedes imaginar vendiendo un coche a una persona sin carnet? Esto es algo habitual en la industria de software, empresas que venden software, gestión, productividad y tecnología que internamente usan Excel para hacer las facturas y una agenda en papel. Uno de los grandes aciertos que tuvimos en Visual MS fue crear en el 2000 un software interno de toda nuestra gestión en Velneo 6x, desde la reserva de un coche hasta  la tesorería todo estaba desarrollado en Velneo. En los últimos años hemos migrado nuestros software a Velneo v7 y usamos muchas de las Open apps del catálogo. Dentro de mis tareas de coordinador de Velneo está la del desarrollo de un software de inbound marketing que usamos internamente y que me permite estar al día como programador de la tecnología que vendemos.

.

Ejemplos de comer tu propia comida de perro

En la industria del software hay un dicho que aplican muchas empresas que se denomina comer tu propia comida de perro.

-Google empezó usando las Google apps como una tecnología interna.

-37signals desarrolla software que soluciona sus propios problemas y después los venden al mundo.

-Salesforce, tiene uno de los mejores departamentos de ventas de la industria organizada 100% con su software.

-Facebook se creó como una red social en la universidad donde estudiaba su fundador.

-Trello es un producto que se creó para solucionar los problemas de gestión de proyectos de sus fundadores

-Velazquez Visual se creo para solucionar el problema de crear un software de Librerías.

l

,

comer tu propia comida de perro

10 preguntas antes de empezar a programar

Si deseas empezar y desarrollar algo grandioso, no necesitas millones de dólares de capitalización. Necesitas suficiente pizza y Diet Coke en la nevera, una PC barata y trabajo y dedicación para realizar tu idea.” — John Carmack

.

.

Tengo la gran suerte de vivir rodeado de grandes programadores, ante cualquier problema, idea o pensamiento, el primer impulso siempre es el mismo, vamos a programar, un par de noches y todo solucionado. Empecé como programador y ante una situación complicada la solución eran más horas de programación.

 No te dejes llevar por la emoción de tu pasión, antes de empezar a programar un nuevo producto que cambiará el mundo responde claramente ha estas 10 preguntas.

.

.

1.-¿Qué problema vamos a resolver?. Esto me lo repitió miles de veces Juan Muñoz-Cobos, lo primero es conocer detalladamente el problema a resolver. Nos ponemos a programar sin conocer realmente que problema queremos solucionar.

.

.

2.-¿Para quién estamos solucionando el problema? Empezar a programar sin conocer a los usuarios que lo van a usar, es un sin sentido. Los programas son para usuarios, trabajas para que alguien lo use, piensa en ellos antes de empezar.

.

.

3.-¿Cuántos usuarios lo usarán? Define tus objetivos, el tamaño del mercado al que te diriges. No es lo mismo programar para miles de usuarios que para cinco. Trabajar cientos de horas para que una funcionalidad la usen cinco usuarios simplemente es perder dinero.

.

.

4.-¿Cómo medirás el éxito? Objetivos e indicadores son básicos antes de empezar.

.

.

5.-¿Qué alternativas existen? Hay cientos de programas, softwares y empresas que solucionan problemas, con internet en unas horas puedes evaluar cientos de soluciones alternativas antes de empezar a programar.

.

.

6.-¿Por qué debemos desarrollar esto nosotros? Si vamos a empezar a invertir dinero tenemos que tener buenas razones, antes de escoger algo que ya esta programado, probado y documentado.

.

.

7.-¿Por qué ahora? Tenemos  prisa?, tiene que ser hoy?, ¿Qué pasaría si empezamos dentro de un año?

.

.

8.-¿Cómo llevaremos el producto al mercado? Cuando acabemos de programar como llevaremos este programa a los usuarios.

.

.

9.-¿Qué factores son críticos para el éxito del proyecto? Hablo de proyecto completo, documentado, implantado y rentable. De nada vale programar muy bien si nuestros desarrollos no se usan. Eso es fracasar.

.

.

10.-¿Realmente quieres empezar queremos empezar hoy con este proyecto? Después de contestar a todo lo anterior tómate unas horas y decide!!!!

5 webs donde cualquiera puede aprender a programar

Los nativos digitales manejan la tecnología como los ángeles pero no tienen ni idea de como crearla

Cuando ves a un niño de cinco años jugando con un Ipad simplemente alucinas, parece que han nacido para interactuar con el software. El software ha evolucionado de una manera vertiginosa, los nativos digitales no son capaces de comprender lo que significa tener un ordenador y no tener internet, no han vivido la evolución y la creación.

En esta charla de ted el profesor Resnick explica la diferencia entre usar tecnología y crearla. Una cosa es tener capacidad para leer y otra muy distinta tener capacidad para escribir.

Aprender a codificar implica pensar creativamente, razonar sistemáticamente y trabajar en colaboración, estas habilidades son aplicables a cualquier profesión y situación.

Estos son 5 recursos web donde cualquiera puede aprender a programar.

.

1.- Scratch, un software de programación desarrollado en MIT Media Lab pensado para que la gente pueda crear y compartir sus propias animaciones.

.

2.- Codecademy, puedes aprender lecciones simples de JavaScript, HTML and CSS, Python and Ruby.

.

3.- Stanford University’s Udacity son cursos OnLine que te proponen una introducción Computer Science, de manera gratuita.

.

4.- Treehouse, videos y ejercicios para aprender a desarrollar webs, Iphone y Android Apps sin conocimientos informáticos.

.

5.- Code School ofrece cursos de diferentes lenguajes de programación, herramientas de diseño y de creación de webs.

 

Basado en el artículo de TED 10 places where anyone can lear to code

Sector del Software, el año de la hormiga

La Filosofía de las Hormigas para el Trabajo: Nunca se Rindan, Miren Hacia Adelante, Manténgase Positivos y Hagan su Mayor Esfuerzo

..

sectorsoftware

.

Luna llena, Erik Clapton suena en mi spotify mientras escribo en el IPad el último post de este año sentado en asiento de copiloto de un Prius. Se me vienen muchos recuerdos de este año, en especial una frase de mi amigo Cecilio, Este año toca trabajar el doble para conseguir lo mismo, yo denomino a este año el año de la hormiga.

.

La crisis y el software

Acaba un año con sentimientos encontrados, vivimos una crisis de locura que toca a toda la sociedad, sin embargo el sector del software es de los pocos que logran mantenerse en esta crisis, quién iba a decir hace cinco años que el sector TIC ganaría a la construcción. Tengo la fortuna de trabajar en proyectos de software a los que les va bien. En  estos años duros hay que aprender a vender más que nunca y crear software fácil si quieres ser rentable. La demostración de software es una parte fundamental en la venta.

.

¿Por qué le va bien al software?

Vivimos rodeados de software, de programas o apps como les gusta llamarlos ahora. La música, las películas, los teléfonos ya están gestionados con software, atrás quedan los CD, los botones de plástico y los mandos a distancia, el mundo es de los smartphone, tablets y portátiles, un buen software en cajas bonitas. Las empresas necesitan buen software más que nunca para poder sobrevivir en la situación económica actual y la pyme es una gran oportunidad para las empresas de software.

.

El software, el hardware y la nube

El hardware desaparece desde que nos da por trabajar en nube. Estoy escuchando música en el coche de spotify que se está descargando ahora mismo por 3G, anoche me alquilé una peli en wuaki por streaming  y este post lo estoy escribiendo y guardando en wordpress.com.

.

¿Qué será lo próximo en el consumo?

Las TV, los electrodomésticos y los coches serán los próximos en ser controlados por software que manejas desde el cloud como ya está haciendo IFTTT con Belkin, en estas navidades me han regalado una báscula que se controla desde una app de tu iphone, las apps seguirán inundando nuestra realidad diaria. El mundo se está softwarizando. 

.

¿Qué será lo próximo en las empresas?

Las empresas necesitan más software que nunca, el mundo se está softwarizando y las empresas lo necesitan para ser más productivas, en la pequeña y mediana empresa está todo por hacer, las empresas de software que se adapten a los nuevos modelos y tengan indicadores claros de negocio crecerán.

.

Me despido de  2012, con ilusión y pasión por seguir creando software en 2013.

Sobre todo no olvidemos, La Filosofía de las Hormigas para el Trabajo: Nunca se Rindan, Miren Hacia Adelante, Manténgase Positivos y Hagan su Mayor Esfuerzo


ant-biting-branch-and-holding-onto-lifting-rock