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

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

Programar

«La mayoría de los buenos programadores programan no porque esperan que les pagen o que el público los adore, sino porque programar es divertido.»

-Linus Torvalds

La programación es el proceso de diseñar, codificar, depurar y mantener el código fuente de programas computacionales. El código fuente es escrito en un lenguaje de programación o una plataforma de desarrollo. El propósito de la programación es crear programas que exhiban un comportamiento deseado. (Extracto de Wikipedia)

Programar es un arte por el cual creas, imaginas y sueñas con un resultado que finalmente se produce. Te sientas delante de un folio en blanco y cuando acabas lo que has creado cobra vida, es magia, las cosas funcionan como habías previsto. Programar es la profesión más apasionante que he conocido en mi vida y las sensaciones que se producen en tu interior cuando las cosas funcionan son maravillosas.

De programador a Coordinador, Gerente, CEO, Responsable

8:00 de la mañana lobby del hotel en Alemania, llevo sin escribir por lo menos tres semanas, tres semanas de viajes, conferencias, reuniones, entrevistas y mucho trabajo.

Tras desayunar y responder a todo el correo pendiente noto que se abre una espacio para escribir en el blog y empiezo a teclear. A mi derecha Fernando Espadas uno de los programadores en C++ más brillantes que he conocido en mi vida está leyendo un libro, nos hacemos compañía sin necesidad de hablar, cada uno está centrado en su tarea.

Acaban de finalizar las QT Developer Days, hacía años que no pasaba tanto tiempo centrado con aspectos técnicos. Últimamente paso más tiempo con gestión, Mk, estrategia, recursos humanos, organización y aspectos no relacionados con la programación. En parte siento que estar rodeado de gente como Juan Muñoz-Cobos, David, Tito o el mismo Fernando me haga sentir como ¿Qué les puedo aportar yo a gente tan buena? Me siento seguro es ese aspecto, totalmente cubierto.

Pasar 4 días rodeado de 1000 programadores de diferentes países me hizo remover épocas en las que picaba código y me quedaba noches en vela por acabar un proceso y rematar un programa, lo adoraba!. Siempre he dicho que cuando no eres lo suficientemente brillante para programar te tienes que pasar a coordinar y gestionar, ese es mi caso.

Me encanta mi trabajo actual, me apasiona, pero siento cierta añoranza de mis épocas de programador, incluso he desarrollado algún programilla en Velneo V7 pero siempre asuntos “más importantes” se llevan mi tiempo y atención.

Para mi ha sido muy importante este viaje y esta conferencia, entender y profundizar en muchas materias que en mi día a día es imposible que pueda entrar. QML, QT Quick, QT 5.0, WebKit, C++ 11, Estructuras, Punteros a Memoria, HTML 5, CSS, SSLSocket, Clases, QTmultimedia.

Gracias a estar aquí y sentir todas esto, me llevo mucha información en la cabeza y puedo aplicar todas estas enseñanzas a completar la estrategia del próximo año.

Tuve claro con 25 años que si quería tener una empresa de verdad debía dejar de programar (por el bien de los productos 🙂 ) y me siento muy orgulloso del paso que dí.

Hay mucha gente que se encuentra en esta tesitura y divaga entre los dos mundos, pero tienes que elegir que quieres hacer con tu vida y apostar por una sola dirección.

Yo elegí emprender y crear proyectos, sacrifiqué algo que amaba profundamente para encontrar el camino de lo que realmente quería ser y hoy día siento que ha sido una de las mejores decisiones de mi vida.

AMO lo que hago y no lo cambiaría por nada. ¿y tú?

Indicadores para reconocer buenos programadores

Indicadores Positivos:

  • Pasión por la tecnología.
  • Programar es un hobby
  • Desarrollo de proyectos personales
  • Aprenden nuevas tecnologías por si mismos.
  • Opinan sobre que tecnologías son mejor para cada cosa.
  • No se sienten cómodos trabajando en la tecnología que creen que no es la adecuada.
  • Empezaron a programar antes de ir a la Universidad o empezar a trabajar.
  • Además de lo que pone el Curriculum han desarrollado otros proyectos personales.
  • Conocimiento de diferentes tecnologías (No aparecen todas ellas en el curriculum)

Indicadores negativos:

  • Programar es un trabajo.
  • Aprenden nuevas tecnologías cuando la empresa les paga cursos.
  • Felices de trabajar con cualquier tecnología. Todas las tecnologías son buenas.
  • Empezaron a programar en la universidad.
  • Toda su experiencia de programador está en el Curriculum.
  • Focalizados en dos tecnologías, con ninguna experiencia fuera de ahí.

Programador.