Expectativas salariales

Muy a menudo recibo ofertas de recruiters, con tal o cual puesto que buscan cubrir. Antes de seguir, un apunte.

Ponerse tiquis-miquis con el paro que hay podría parecer prepotencia, pero la realidad es esta: no se me concedió en la cuna el privilegio Papal de estudiar informática y la automática prohibición al resto. Quien quiera puede estudiar esta carrera. En la universidad pública, nada de Oxford ni Yale. Vamos, que si se quiere se puede. No soy hijo del Marqués de Cubas. Si hay trabajo en esto y el personal se empeña en seguirse matriculando en carreras con 100% de paro la culpa encima no va a ser mía…

Los recruiters. Las ofertas. Sigamos. Siempre he pensado que cuando ofertas un puesto debes tener claro:

  • qué problema tiene que resolver la persona que venga (no basta con un «estoy agobiado de trabajo y necesito alguien que me eche una mano«).
  • con quién va a trabajar esa persona, en qué equipo va a estar y quien va a ser su responsable. Quién se va a encargar de ayudarle a adaptarse.
  • que contratar a alguien cuesta. Tiempo y dinero. Y cuando lo contratas pasará un tiempo hasta que sea productivo, entendiendo por eso que aporte a la facturación neta de la empresa más de lo que te cuesta tenerlo por allí.
  • el coste de contratar. No sólo el salario neto (que no lo puedes conocer sin saber las circunstancias particulares de la persona), ni el bruto. Además, los costes sociales, o el coste del puesto de trabajo. Un gran empresario amigo mío dijo una vez que «los trabajadores comen, cagan y mean». Desde la mesa hasta el ordenador, pasando por el coste de luz eléctrica, limpieza, etc. Tener a alguien siempre incrementa los costes. Y muchos son ocultos: línea de movil, costes de Gestoría, papel higiénico en el baño, costes de despedir a esa persona si te has equivocado, etc.

Todo esto se aleja mucho de la retórica brillante de los libros tipo «monta tu startup como en Silicon Valley» o «Silicon Valley Spanish Style». Aquí no hay «realismo mágico» sino «neorealismo cazurro». Sin mesas de Ping-Pong. Pero es que yo a lo más que he llegado es a ser empresario en mi vida. No he alcanzado los puntos de Hype necesarios ni para llegar a entrepreneur. Lo de Serial Entrepreneur (especialista en dar el pase) requiere de muchos puntos más de Karma.

Pues bien, de los puntos anteriores, el coste laboral para la empresa lo puedes calcular de antemano. Lo debes calcular de antemano. Si no, ¿qué empresario eres? Por eso me matan las ofertas de trabajo tipo:

«Cárnica Incorporated te ofrece incorporarte en Cojo-Empresa Líder en su sector, pero que no te decimos el nombre para que no vayas directamente a ellos y perder la comisión, y tan buena que no es capaz de seleccionar a su propia gente porque no sabe responder a las sencillas preguntas de arriba.

Ni idea de lo que harás allí, pero por sí acaso aquí va una lista de buzz-words para ver si puedes preparar un CV mentiroso que las incluya y así todos nos engañamos: nosotros por pedir la luna a precio de coste y tú porque piensas que vamos a contar contigo.

  • jQuery mobile, iOS (10 Años de experiencia), Java EE, SQL, Arduino y por sí acaso saber programar la TDT.

Ya, sabemos que hemos contactado contigo a través de LinkedIn y podríamos leernos tu perfil, pero es que nos da pereza y a fin de cuentas esto es recruiting al por mayor. Sabemos que a los mejores no los pescaremos con este tipo de correos, pero si a fin de cuentas la gente sigue usando Infojobs eso significa que el batallón de los tristes es amplio.

Indica tus expectativas salariales «

Vaya. Así qué ofreces un puesto pero no sabes lo que vas a pagar por el. O eso, o quieres «retribuir según valía del candidato». Lo que normalmente suele ser una subasta a la baja, a ver a quien encontramos más desesperado que acceda al salario más miserable. Porque sí tu salario es digno, o no lo es, pero es lo que estás dispuesto a ofertar, pues eso, lo ofertas. Pero no entras en estas tonterías.

A partir de ahora voy a participar en todas estas ofertas. Expectativas salariales: 120.000€ al año, netos. Y una Gameboy advance SP.

Para decir tonterías ya me basto yo solito.

j j j

La delgada línea roja

No, no voy a hablar de una película conocida, junto con El hombre que susurraba a los caballos por ser la cura definitiva del insomnio.

Voy a hablar de la línea que me marca que alguien no va a ser cliente mío. O visto desde el otro punto de vista, que no voy a trabajar para él. Como prefieras verlo. Tras muchos errores y problemas, creados por mi incapacidad a la hora de estimar y por los tipos de clientes he llegado a tener una serie de reglas que sigo escrupulosamente. Puede ser que te parezca demasiado exigente, o que no voy a tener trabajo si hago todo esto. Pero la realidad es que sigo teniendo clientes, sólo que son buenos y no malos.

Nunca trabajes con particulares

Nunca, nunca, nunca trabajes con particulares. Especialmente si son del tipo he tenido una idea. Si has tenido una idea, y es tan fantástica ¿por qué no has constituido una empresa para ello? ¿No eres capaz de arriesgar los 100 Eur que suponen hoy en día crear una Sociedad Limitada y pretendes que yo crea en tu proyecto?

¿Qué sucede si las cosas van mal? Con una empresa tienes ciertas garantías, aunque si las cosas vienen mal siempre va a ser un problema. Al menos puedes emitirles facturas y no van a empezar a llorarte con que el IVA es muy caro, ni vas a tener que explicarles cómo instalar Skype o Dropbox.

Lo siento, pero nunca trabajo con particulares. Sobre todo, porque lo he hecho, me he equivocado, me ha salido fatal y nunca más lo haré. Y tú no deberías.

No sin mi contrato

Realmente un contrato tampoco te protege de nada, porque siendo un simple freelance y con las tasas judiciales actuales de por medio andar litigando es casi más costoso que perder el tiempo dedicado al proyecto.

¡Gracias, Gobierno, por facilitar tanto la actividad económica!, si lees esto sube por favor el coste del autónomo, que aún te quedan tres por machacar del todo.

Por eso es mejor establecer puntos intermedios en los que puedas facturar con una entrega parcial. Y pedir algo por anticipado. En esto tengo que mejorar. Me cuesta mucho pedir dinero sin haber entregado aún nada a cambio, pero es una buena forma de comprobar si al menos hay voluntad de pagar.

NDAs sólo para empresas grandes y proyectos concretos

Puedo entender que una empresa grande no quiera perder su ventaja competitiva y me solicite un NDA. Porque se lo exige su departamento legal y eso. Pero hasta ahora al menos me han contado los detalles generales por encima, para saber de qué estamos hablando.

Me resulta muy tierno que alguien contacte contigo y, antes de darte los buenos días, te pida un NDA. ¡Y es que son todos!. ¡No lo sabía, pero estoy rodeado de genios!. Todos tienen ideas buenísimas. Eso sí, no tienen ni idea de cómo ejecutarlas, ni de montar empresas, ni de nada, pero lo del NDA se lo han aprendido perfectamente.

Contactan y te piden referencias. Suficiencia técnica. Que si sabes de lo tuyo, vaya. De hacer Apps en mi caso. Honestamente les digo que no, pero que voy aprendiendo y que algunas cosas las hago medio bien. Eso sí: se enfadan cuando les pregunto por sus casos de éxito: otras ideas que han convertido en empresas, cuánto facturan al año, exits que han negociado, etc.

No son capaces de explicarte su idea, no sea que en cinco minutos, antes de ducharte, se la clones. O que les quites el trozo de queso, digo el cliente. Pues perdona, pero si tu idea es tan sencilla de clonar probablemente la idea no es lo importante. Lo importante es la ejecución.

Hoy he tenido una idea: montar un servicio de música por streaming. Seguro que a nadie se le ha ocurrido. Y total, crear las Apps, servidores, cerrar los acuerdos internacionales con la industria musical, los pagos, etc. debe ser sencillo.

Socios Tecnológicos == Trabaja gratis

Si alguien te propone ser su socio tecnológico (antes, por supuesto, tendrás que firmar un NDA para conocer su idea de una App para puntuar restaurantes con el móvil), quiere que trabajes gratis. Con ilusión y ganas, ¡que no te implicas!.

En este caso GOTO Los ideístas

j j j

Mi primera aplicación para iPad

He terminado y entregado mi primera App para iPad. Ha sido un encargo, muy especial, para crear un cartel interactivo dentro de un museo. Así que no la busques en la App Store, porque no va a aparecer. La App está dedicada a narrar los sucesos que llevaron hasta la primera Constitución democrática de España, «La Pepa», proclamada en 1812. Es visualmente muy sencilla (debía ser «minimalista») y muy fácil de usar: se desplazan los sucesos con un «swipe» o bien se avanza por un «cover flow» en la parte inferior.

Mi App para iPad en funcionamiento

Mi App para iPad en funcionamiento

Con esta App he aprendido muchas cosas:

  • cómo desarrollar pensando en la resolución del iPad
  • cómo hacer pruebas con el iPad de mi mujer cuando ella no lo está usando
  • cómo usar a fondo UIScrollView
  • cómo encontrar trozos de código en Internet que me resuelvan problemas 🙂
  • cómo distribuir una App de forma sencilla para que el cliente la pruebe sin tener que ir yo a instalarla en sus dispositivos (gracias @xelecto por enseñarme BetaBuilder)
  • a hacer un MVC del que me sienta contento
  • a comenzar un proyecto pensando en cómo voy a reutilizar el código
  • que el iPad no tiene motor de vibración 😛
  • que desarrollar para un estudio de diseñadores te abre los ojos sobre muchos aspectos de diseño, pero también a ratos te hace odiar a la raza humana.
Cambiando de evento

Cambiando de evento

Increíblemente he cumplido «casi» perfectamente en tiempo, pese a estar con mil cosas a la vez. Y me he vendido muy barato, debo decirlo, porque el proyecto me atraía mucho.

Tengo ahora una buena base para plantearme una App que cuente cuentos, o explique cosas (al estilo de aquellos estupendos libros de «Cómo funcionan las cosas»).

Así que ya sabes: si tienes una App interesante para desarrollar, dinero en el bolsillo y las ideas claras, siempre puedes contactar conmigo para contratarme como desarrollador Freelance. O directamente puedes donarme el dinero y ya yo voy haciendo algo «magical» 😀

Batalla de Trafalgar

Batalla de Trafalgar

j j j

ClockRing, Mi tercera App es Software Libre

Pues eso, que he mandado a revisión por parte de Apple mi tercera App. Actualmente ya tengo dos subidas: MyEvents, para gestionar tus eventos importantes y saber cuántos días quedan hasta ellos, y FXPlayer, una App escrita a cuatro manos con la ayuda de @jnhidalgo @jnhernandez, y que te permite superponer efectos de sonido a una canción que tengas sonando en el iPod. Puedes verlas en la web de Femtocoders (Inglés) o en la sección iOS Apps del blog.

Esta tercera se llama ClockRing, y la idea es muy sencilla: hace que suene un pitido de señal horaria en tu iPhone, como los relojes Casio de toda la vida. Con la particularidad que te permite escoger qué quieres que suene: una campana de iglesia, un reloj de cuco, un pitido típico de la radio…

ClockRing App

ClockRing App

Se me ocurrió la idea tras enterarme a través de José Mª Ortiz, un compañero de Jonathan Chacón (primer desarrollador ciego en el mundo que ha publicado una App en el App Store, bromitas pocas), de que MyEvents era accesible. Empecé entonces a pensar en los temas de accesibilidad y se me planteé “¿bueno, y un ciego cómo sabe de un vistazo que son las dos de la tarde y tiene que irse a comer?”. Evidentemente no “de un vistazo”, tienen que estar activando el iPhone, y VoiceOver te canta la hora. Pero se me ocurrió la idea de clockRing y pensé que podría ser útil. Además, José Mª, me pidió que implementase «para ayer» la posibilidad de programar alarmas en MyEvents (cosa que empiezo a preparar ya para la v1.2). Así que ClockRing era la oportunidad perfecta para practicar con la API de LocalNotifications.

La App es gratis, e incluye iAds para ver si me puedo pagar alguna cerveza a su costa. Pero hace tiempo que estoy con ganas de liberar algo de código. Así que ClockRing es Software Libre, según establece la licencia GPL v2. Vamos, que puedes ver el código, compilarlo, usarlo en tus proyectos, o para aprender, o para reírte, o para lo que quieras. Pero los trabajos derivados deben ser también libres. Si quieres una copia del código, pásate por la Wiki de la App ClockRing que tengo en FogBugz (otro día  hablaré de FogBugz y su increíble sistema de Bug Tracking, predicción del tiempo de entregas, Wikis, repositorios de código, etc.)

ClockRing aún no está disponible para su descarga desde el App Store, ya que está en el proceso de aprobación (cruzad los dedos). En el momento en que esté disponible lo anunciaré aquí (actualizando esta entrada) y en Twitter.

Actualización: ya puedes bajarte ClockRing gratis.

Happy coding!

j j j

Mi primera App ya está en el App Store: MyEvents

Al fin, tras casi un año desde que me planteé en serio dedicarme a esto de las Apps para iOS, mi primera App ha sido publicada en la App Store de iTunes. Antes de nada, el momento SPAM:

MyEvents, aplicación para no olvidar tus momentos importantes

  • Puedes verla y comprarla en iTunes a través de este enlace. ¡Vamos, que sólo son 0.79 € y así ayudas a un programador a pagar sus letras del yate y la mansión!
  • Si no tienes / quieres entrar en iTunes ahora mismo, la web de Femtocoders te explica de qué va MyEvents.
  • He abierto una sección en el blog con información sobre las Apps que vaya subiendo al App Store. Porque ahora van a empezar a subir como churros 🙂

Es bonito el ver algo que has «hecho con tus manos» subido en la misma tienda donde compras tus aplicaciones. Es más bonito aún ver que buenos amigos la compran y me mandan correos con sugerencias de mejora. Pero lo mejor es ver que gente a la que no conozco, en el otro lado del mundo, compra tu App porque le gusta. Ver en las estadísticas compras de Bélgica, Francia, Alemania, Australia, EEUU, … aunque sólo sean una unidad, y aunque no genere ingresos de vértigo, es algo que te motiva mucho: esto que estoy haciendo le gusta a alguien.

Porque el camino es duro, no te engañes. En este año, he leído toda clase de libros, de Cocoa y de otras cosas, he preparado mi entorno de trabajo, me he esforzado programando, pero sobre todo he tenido que luchar con dos grandes enemigos:

  • el miedo a fracasar, a que se rían de tu trabajo
  • el volver a ser un simple programador, después de años de ocupar puestos de mando intermedio (o mando total cuando tenía mi empresa)

Volver a pensar como un programador, tener ganas de abrir XCode, volver a sentir ese «vicio por programar» me ha llevado meses. Casi ocho, hasta que he conseguido volver a despertar esa parte dormida de mi cerebro. No ha sido fácil.

Pero probablemente lo peor ha sido el superar las propias autolimitaciones que nos ponemos. Esa voz, dentro de tu mente, que te dice constantemente: «no, no lo hagas, no lo intentes, vas a fallar, aquí se está más cómodo, mucha gente no lo consigue, no pasa nada…». Al final, tras lanzar el primer producto, otra voz ha aparecido echando a la primera y diciendo «a tomar por culo con los miedos, con las dudas, yo soy más duro y cabezón y al final, prevalezco».

Tened cuidado con las limitaciones que os ponéis a vosotros mismos. Cuando se vencen, se ve que no eran para tanto.

Y, por supuesto, comprad la App 🙂

j j j

Los dos tipos de negocio de desarrollo de software

a dilemma (Julia Manzerova)

Muchos informáticos están amargados. La mayoría. Tienen un mal equipamiento, no se les reconoce el montón de horas que trabajan, continuamente deben estar aprendiendo cosas y tienen que solucionar problemas con tecnologías en las que no son expertos, porque llevan sólo unos meses con ellas y las propias tecnologías muchas veces no están consolidadas.

Eso, los que trabajan en una empresa cuyo negocio es vender líneas de código, ya sea en la forma de productos o de horas/hombre en casa de un cliente. Los que trabajan en una empresa cuyo negocio principal es otro y la informática es sólo una función de soporte son los que ya conocen el infierno. El dueño de la empresa tolera a esos informáticos que tiene que aguantar por allí y que gastan tanto dinero porque necesita que los ordenadores funcionen o que su web siga operativa. Pero si pudiera prescindir de ellos, lo haría.

Si hablamos de los primeros informáticos, los que trabajan en empresas de base tecnológica, veremos que están amargados en mayor porcentaje los que están en una empresa que vende servicios y no desarrolla productos. Son empresas que venden «Proyectos», con la P mayúscula, ejecutados mediante su «Metodología» (con la M mayúscula, también), que dicen aplicar los principios del PMI y que te obligan, o no, dependiendo de la moto que vendan, a ir vestido de traje de chaqueta a programar. Es imprescindible que mis compañeros comprendan los dos modelos de negocio y las decisiones económicas que hay detrás de cada uno, ya que si no se comprenden no se entienden las decisiones técnicas y operativas que toman «esos que mandan que no tienen ni idea», y que vienen motivadas por las primeras.

Hay dos tipos de empresas: las que venden servicios y las que venden productos. Y, por supuesto, en toda fase de una empresa que empieza se suele tener una mezcla de ambas. Cuando tuve mi empresa, Elelog, pasé por ambas fases. Yo era defensor de vender servicios, que es lo fácil, lo que sabía hacer. Ahora no quiero vender servicios ni en pintura. Bueno, salvo la formación, que me apasiona demasiado y es casi un vicio. Me pagan por hacer algo que me gusta mucho. Hablemos de las empresas que venden servicios.

Vendedores de carne

camel butcher, by Paul Keller

Básicamente, las empresas que mandan a sus trabajadores informáticos a solucionar los problemas del cliente, son ETTs con ínfulas. Vistan de traje de chaqueta o no, llamen a la venta de carne «Asistencia técnica», «desarrollo in-house», «atención personalizada en casa del cliente» o «porno-chacha a domicilio» este tipo de trabajo comparte unas características comunes:

  • el empleado pierde casi todo contacto con la empresa que le manda. De vez en cuando recibe una llamada de su jefe o le ve cuando visita al cliente (si es que se acuerda de su nombre y le saluda). Una vez al mes ve el nombre de su empresa en la nómina.
  • es el cliente el que decide el día a día de su trabajo. Su jefe «de verdad» es el Cliente, no su empresa. Es el que le explica el trabajo que debe hacer.
  • lo que ocasiona esto es un desarraigo de la empresa, una no-identificación con su empresa, ya que el informático se da cuenta de que su empresa actúa como un mediador, como un vendedor de esclavos. El cabreo aumenta el día que se da cuenta de que, cada mes, su empresa gana dinero «por no hacer nada», sólo por tenerlo allí.
  • un día uno de los mejores programadores que estaban con él trabajando en un proyecto para el Cliente se va a otra empresa. No le han aplicado una mísera subida de sueldo. «¿Cómo han podido dejar escapar a este crack?», se preguntan. Y ven que el más inútil sube de programador a analista. «¡No lo entiendo, debe ser un enchufado!, ¡esta empresa se va a pique, no tienen ni idea!». Pero los contratos siguen llegando. La explicación más normal: estos son unos enchufados y seguro que tienen un chanchullo, si no no se entiende cómo se han tragado a esos dos becarios nuevos que no tienen ni idea.
  • la formación que se les da va exclusivamente dirigida a ser más «productivos» en el proyecto en el que están ahora mismo trabajando. La sensación de «gallinita ponedora» aumenta. No hay carrera profesional. No preguntes, porque no hay respuesta.

A este panorama desolador se enfrentan todos los días excelentes programadores al ir a su puesto de trabajo. Se quejan tomando café, y no acaban de entender el porqué de las decisiones de sus jefes. Y están frustrados, porque suponen que hay una respuesta lógica, pero se les escapa. Piensan que si aprenden nuevos lenguajes de programación, o nuevos trucos para gestionar la base de datos Oracle, o formas de que ese servidor Tomcat no se quede sin memoria, serán mejor valorados dentro de su empresa. Y temporalmente puede que así sea, pero el esquema anterior se repite inexorablemente.

Click para ver el autor

Pues bien, la culpa es del modelo de negocio de venta de servicios, y el culpable último es el Cliente.

El Cliente, por ejemplo un Ayuntamiento, una gran empresa o una administración autonómica, tiene que arreglar una serie de problemas: su portal web debe mantenerse, hay que añadirle capacidades de firma digital, quiere mejorar sus servidores, lo que sea. Tiene una estructura de presupuestos fija y algún lumbreras ha decidido que a un programador se le paga, como mucho, a 50 €/h, a un analista a 60 €/h, y así.

Y ésta es la raíz de todos los males: no se puede pagar lo mismo a todos los programadores porque los programadores no son intercambiables. A ver si nos enteramos de que, en los trabajos mecánicos, en los que no hace falta creatividad, trabajos que se han convertido en commodities, los trabajadores son intercambiables. Respeto profundamente a las personas que recogen las bolsas de basura por las noches, es un trabajo muy duro y necesario. Pero si quito a uno cualquiera y pongo a un robot capaz de lanzar bolsas a un camión no se va a notar. Sin embargo, dos abogados no son intercambiables. Está claro que uno especializado en código penal es lo que quieres cuando te van a mandar a la cárcel por alguna trastada. No es intercambiable con uno especializado en divorcios. Lo mismo pasa con los médicos: todos sabemos que un buen médico es 100 veces más efectivo curando que otros de sus compañeros y le llamamos por su nombre: «me está tratando el Dr. Fulano». Igual sucede con arquitectos, o cocineros. No es lo mismo que te cocine Ferrán Adriá que Pepito el de los Palotes.

Pues con los informáticos, no hay manera, parece que somos intercambiables. Pero un buen programador, el que de verdad es bueno, ese al que sus compañeros admiran, probablemente será diez veces más productivo (y por tanto rentable) que el resto. Pero ¿va a valorarlo el cliente? No. El Cliente seguirá ofreciendo por sus horas 50 €, ni un céntimo más. Y así se crea la espiral marrón del trabajo informático subcontratado:

  • el Cliente establece de antemano el precio máximo que está dispuesto a pagar por cada hora de trabajo. Lanza así una señal de que todo el mundo trabaja más o menos igual, cuando sabemos que en este tipo de trabajo eso es falso.
  • la empresa vendedora de carne contrata a algún becario, ilusionado y con ganas de aprender. Incluyendo todos los costes laborales le cuesta 12 €/h. Buen negocio.
  • a menos que el personal enviado se coma las mesas, el Cliente siempre los acepta. Ya que no es capaz de determinar la validez del trabajo de los que tiene a su cargo, no es capaz de premiar/castigar a los que le llegan. Mientras el proyecto avance, no hay quejas.
  • pasan los años. El programador bueno lee libros, aprende nuevas técnicas, prueba cosas, sigue ilusionado. El malo va a trabajar sus 8 horas y punto. Ambos cobran lo mismo. El programador bueno piensa «este esfuerzo tendrá su recompensa, a fin de cuentas yo programo bastante bien y ayudo a mis compañeros»
  • los sueldos suben. Ahora a la empresa el programador bueno le cuesta 30 €/h. Pero siguen vendiendo sus horas por 50 €. Ya no hay el mismo nivel de beneficios. Se le ofrece una de dos salidas: o asciendes (por ejemplo a Analista) o te buscas otro sitio. El perverso «up-or-out».
  • el programador, que era feliz programando, pasa a una espiral de marrón superior, la del analista. Luego vendrá el Jefe de Proyecto, Consultor, o cualquier otro título que su empresa Dilbertiana tenga preparado.
  • se sustituye al programador bueno con un becario malo. El cliente no lo nota. Los márgenes son los adecuados. Todos felices, salvo el recién ascendido, que sólo quería un mejor sueldo y el reconocimiento de sus jefes. Y seguir programando.

¿Te suena? Este ciclo es el que hace que se vaya gente muy buena y a los jefes parezca que les de igual. ¿Para qué complicarse con ese, si pongo otro y al final no se nota? ¿Te sientes identificado con la empresa en la prestas tus servicios y no con la que te paga la nómina? Normal, porque tu empresa realmente no te aporta nada. No te enseñan nada. Sólo te pagan. ¿No cambian los ordenadores más que cada 10 años? Ya sabes la razón.

Es el mantener el margen de beneficio lo que ocasiona todas las otras aberraciones. Ojo, que no estoy en contra de que las empresas ganen dinero. Es su obligación, para no cerrar y poder crear puestos de trabajo. Pero en este modelo se crean muchas perversiones a posteriori porque todo gira alrededor de mantener un margen por culpa de un tope impuesto por el cliente, no por la calidad del servicio.

Y este tipo de negocios es sencillo de montar: sólo hace falta un buen equipo de vendedores de motos con traje de chaqueta y listo. Lo se, porque yo lo he hecho.

Creadores de productos

Pensemos ahora en otro modelo de negocio. Tengo una idea muy buena: una serie de aplicaciones para iOS que me van a hacer rico. Tengo dinero y voy a montar unas oficinas. Y pienso: «como tengo claro que un programador crack produce 10 veces más que uno malo, si tengo a un crack y hace un programa que me da 100.000 €/mes, me da igual pagarle lo que me pida. Y ponerle la mesa, la silla, el ordenador que quiera. Y una playstation 3 en los lavabos. Y comidas gratis. Y bebidas gratis. Y lo que haga falta, porque voy a invertir en gente y me van a hacer rico». Y hay gente que no sólo piensa ésto, sino que lo hace de verdad.

La creación de productos es muy distinta a prestar servicios. Aquí los requisitos están claros, o se van descubriendo mediante prototipos y charlas con posibles clientes. Pero el responsable de que algo no esté suficientemente claro eres tú, nadie más. Los plazos los pones tú. Tú decides cuánto invertir en programadores y medios técnicos. Si tu producto realmente se va a vender, disponer de los mejores no supone tanto comparado con los beneficios que vas a obtener. Una vez lances tu producto y empieces a vender, alcanzarás el punto de equilibrio cuando lo que te has gastado durante esos meses (o años) puliendo el programa lo recuperes en ventas. A partir de ahí, virtualmente todo es beneficio, ya que la distribución hoy en día del software se hace por Internet y sólo te cobran si vendes. Eso, si usas una plataforma de terceros. Si creas tu propia web, mientras duermes estarás ganando dinero. La gente que esté despierta en la otra cara del planeta puede estar comprando tu producto.

Crear un producto es más duro que vender servicios. Debes tener la idea, buscar el problema que va a resolver tu software, en lugar de esperar a que te expongan el problema. Debes arriesgarte e invertir. Debes automotivarte, mantenerte fresco y creativo mientras el producto se va creando y no se gana dinero, ni hay clientes. Los plazos te los marcas tú. En resumen, toda la responsabilidad es tuya. Por eso la recompensa es mayor, o el batacazo. Porque, claro, siempre puede ir todo mal y no vender nada pero… ¿eso nos va a pasar? ¡No, y si nos pasa, lo seguiremos intentando!

A ver si adivinas cual de los dos modelos me gusta más :-). Y no olvides dejar tus opiniones en los comentarios.

j j j

Vídeo de mi intervención en eTic

Pues aquí está el vídeo de mi intervención en el encuentro eTic 2010: Mobile Development y que se titula: «Crea ¡ya! tu equipo de trabajo para Apple iOS»

En la intervención hablo de todo lo necesario para crear o reconvertir un equipo de programadores y que escriban apps para iOS. Está grabado con mi cámara y la calidad no es profesional (gracias, Walter!), pero al menos así está a la altura del contenido 🙂

Crea ¡ya! tu equipo de desarrollo en iOS from Diego Freniche on Vimeo.

La presentación que utilicé está en Google Docs

La cobertura de los medios del evento:

En el vídeo podéis verme con la camiseta que me preparé de Fanboy gracias a los Macniacos

j j j

Leyendo para emprender

Cuando el año pasado en Octubre, decidí dejar Isotrol e iniciar una nueva etapa en solitario programando apps para el iOS (el S.O. del iPhone, iPod Touch e iPad) tenía claro que no quería cometer viejos errores de mis anteriores etapas como empresario. Quería crecer y mejorar, como persona, como profesional y como emprendedor. Por ello me metí en Amazon y compré un conjunto de libros que tocan estos tres temas.

Pero claro, comprar los libros no es lo mismo que leerlos. Y leerlos no es lo mismo que comprenderlos. Y, en cualquier caso, lo importante, lo único importante de toda preparación, es aplicar lo aprendido. Leer, comprender, aceptar e interiorizar no son nada comparados con hacer. La parte más importante del Getting Thing Done es, precisamente, el Done.

De momento, llevo leídos:

  • Gestiona mejor tu vida, de Berto Pena, librazo que recomiendo a cualquiera que sienta que no le llegan las horas al final del día.
  • The 4 hour workweek, un libro revolucionario por lo simple que te plantea cómo cambiar las cosas. Hay que leerlo dejándose retar por las nuevas ideas de Tim Ferriss y ser capaz de ser flexibles y responder al reto. Me lo recomendó Jaime Gallo y ha sido una revelación.
  • Beginning iPhone 3 Development ha sido mi primer libro de iPhone SDK, y me ha ayudado a preparar mis primeras Apps. He necesitado leerme también (en formato electrónico, no aparece en la foto) Learn Objective-C on the Mac, para tener una idea del lenguaje que está detrás de Cocoa Touch y no perderme. Este último me ha encantado, porque es muy académico y directo. Si sabes C, o Java, te explica las cosas con profundidad y sin mitos. Pero no te lleva de la manita, ni trata de suavizar según que cosas.

Estoy ahora mismo con:

Y luego vendrán:

  • En Julio, SCJP 1.6 Study Guide.
  • Y en Agosto – Septiembre, mezclaré los libros de Joel Spolsky y Micro ISV con el segundo del iPhone, iPhone SDK 3 Programming.

Por supuesto, seguiremos leyendo en blogs, en PDFs (algo del iPad habrá que mirar), etc. Es fundamental el estar permanentemente formándonos, revisando, mejorando (o intentándolo). Tener curiosidad y ganas de aprender es uno de los ingredientes de la salsa de la vida.

¿Y tú? ¿Con qué libros andas ahora? ¿Me recomiendas alguno?

j j j

Controlar una presentación de KeyNote con tu iPhone

Controlar una presentación de KeyNote con tu iPhone
Estoy asistiendo a un curso de Presentaciones Eficaces que me está gustando bastante. Aunque tengo a mis espaldas muchos cursos (literalmente muchas miles de horas de formación, no de vuelo) siempre es bueno seguir aprendiendo y revisar hasta lo que uno cree que hace bien. O mejor debería decir que es imprescindible revisar precisamente lo que se piensa que es una fortaleza. Ya conocéis el dicho: «dime de qué presumes…».
El caso es que a mi me gusta aprender. Tanto cosas técnicas como habilidades personales. Suelo estar dispuesto a escuchar a aquel que pienso  que merece la pena escucharle. El problema suele ser convencerme. A medida que se cumplen años se tiende a pensar que «ésto ya lo he visto», etc. Y con el curso el profesor lo ha conseguido. Valentín nos ha enganchado con su hablar suave, su dominio del escenario, el contenido adecuado del curso. Vamos, con su saber hacer. Y nos ha puesto deberes.
Concretamente debemos presentar frente a la clase un proyecto para convencer a un jurado de que nos escoja. Apoyados por una presentación multimedia. Y es aquí donde me ha surgido la necesidad. Hasta ahora he utilizado para las presentaciones PowerPoint e Impress (de la suite OpenOffice.org). PP me parece demasiado complicado de usar en ocasiones, aunque con buenos resultados. E Impress da buenos resultados para una guardería, pero se aleja del toque pulido y postindustrial de las Keynotes de Apple. Así que la opción que me quedaba era Keynote, de Apple. Lo estoy usando desde hace poco, pero creo que han dado en el clavo. De manera sencilla tienes acceso a las principales funciones y los diseños predeterminados, así como las transiciones y animaciones de las diapositivas tienen «ese toque» Apple. Vamos, que voy a usarlo para esta presentación.
Hablamos de una presentación. Luego necesitamos más cosas. Una son las diapositivas / slides que aparezcan como apoyo a mi discurso. Esto ya lo tenemos. Otra es el discurso en sí y mi actuación frente al público. De eso me encargo yo. Me queda un detalle: el iPhone. Quiero decir, el control remoto de la presentación multimedia. Cuando hablas frente a un auditorio puedes quedarte clavado en un sitio, tras un atril, parapetado en una mesa, o bien usar el entorno y dominar el escenario de forma que apoye a tu discurso. A mi lo que me gusta es esto último. En mis cursos rompo muchas veces la distancia con mis alumnos, paseando por el aula, sentándome en la mesa, en una silla al lado de alguno, etc. Y para hacer todas estas cosas con estilo se precisa de un cacharro que permita ir pasando las diapositivas a medida que uno habla.
El truco en sí
Para controlar la presentación necesitamos:
un Mac donde pondremos la presentación de KeyNote. En mi caso es mi querido MacBook Pro.
un proyector (lo pone el profesor)
un iPhone para controlar KeyNote de forma remota
una aplicación para el iPhone, concretamente Mocha VNC Lite, que encima es gratis
Los pasos a dar son:
1. crea tu presentación con KeyNote y tenla a mano. Sí, esto puede parecerte una chorrada, pero eres tú el que ha pedido un paso a paso.
2. activa el acceso remoto al escrito de tu Mac, AKA VNC, mediante Preferencias del Sistema -> Compartir -> Compartir escritorio
Una vez tengamos instalada la aplicación en el iPhone, bajada desde el AppStore, necesitaremos controlar la pantalla del Mac desde el iPhone. Para eso, Mocha VNC Lite nos permite introducir la dirección IP de nuestro Mac y ¡listo!. Pero claro, estamos suponiendo que hay un punto de acceso WiFi al que nos hemos podido conectar, tanto con nuestro Mac como con el iPhone, y que ambos están en la misma subred (sus direcciones IP son similares, por ejemplo son 192.168.1.10 la del Mac y 192.168.1.15 la del iPhone).
pondremos a ejecutarse la presentación en el ordenador. Se quedarátendremos que conseguir que veamos en la pantalla del

He asistido a un curso de Presentaciones Eficaces que me ha gustado bastante. Aunque tengo a mis espaldas muchos cursos (literalmente muchas miles de horas de formación, que no de vuelo) siempre es bueno seguir aprendiendo y revisar hasta lo que uno se cree que hace bien. O mejor debería decir que es imprescindible revisar precisamente lo que se piensa que es una fortaleza. Ya conocéis el dicho: «dime de qué presumes…».

El caso es que a mi me gusta aprender. Tanto cosas técnicas como habilidades personales. Suelo estar dispuesto a escuchar a aquel que pienso  que merece la pena escucharle. El problema suele ser convencerme. A medida que se cumplen años se tiende a pensar que «ésto ya lo he visto», etc. Y con el curso el profesor lo ha conseguido. Valentín nos ha enganchado con su hablar suave, su dominio del escenario, el contenido adecuado del curso. Vamos, con su saber hacer. Y nos ha puesto deberes.

Concretamente debemos presentar frente a la clase un proyecto para convencer a un jurado de que nos escoja. Apoyados por una presentación multimedia. Y es aquí donde me ha surgido la necesidad. Hasta ahora he utilizado para las presentaciones PowerPoint e Impress (de la suite OpenOffice.org). PowerPoint me parece demasiado complicado de usar (en ocasiones), aunque con buenos resultados. No le he dedicado el tiempo necesario, creo. E Impress da buenos resultados para una guardería, pero se aleja del toque pulido y postindustrial de las Keynotes de Apple. Así que la opción que me quedaba era Keynote, de Apple. Lo estoy usando desde hace poco, pero creo que han dado en el clavo. De manera sencilla tienes acceso a las principales funciones y los diseños predeterminados, así como las transiciones y animaciones de las diapositivas tienen «ese toque» Apple. Vamos, que voy a usarlo para esta presentación.

Hablamos de una presentación. Luego necesitamos más cosas:

  • Una son las diapositivas / slides que aparezcan como apoyo a mi discurso. Esto ya lo tenemos. No confundamos nunca una presentación con un PowerPoint. Si no, llegamos rápidamente a la muerte por PowerPoint.
  • Otra es el discurso en sí y mi actuación frente al público. De eso me encargo yo.
  • Me queda un detalle: el iPhone. Quiero decir, el control remoto de la presentación multimedia.

Cuando hablas frente a un auditorio puedes quedarte clavado en un sitio, tras un atril, parapetado en una mesa, o bien usar el entorno y dominar el escenario de forma que apoye a tu discurso. A mi lo que me gusta es esto último. En mis cursos rompo muchas veces la distancia con mis alumnos, paseando por el aula, sentándome en la mesa, en una silla al lado de alguno, etc. Y para hacer todas estas cosas con estilo se precisa de un cacharro que permita ir pasando las diapositivas a medida que uno habla.

El truco en sí: controlar la presentación con el iPhone

Para controlar la presentación necesitamos:

  • un Mac donde pondremos la presentación de KeyNote. En mi caso es mi querido MacBook Pro. Si no tienes un Mac, puedes hacer lo mismo con OO.org y Windows, o con Office y Windows. Es una pena, pero esta vez no hay truco para Linux 🙁
  • un proyector (lo pone el profesor)
  • un iPhone para controlar KeyNote de forma remota
  • una aplicación para el iPhone, concretamente Logitech Air Mouse que encima es gratis
  • la parte servidora de la App de iPhone, el Logitech Touch Mouse Server

Los pasos a dar son:

  1. crea tu presentación con KeyNote y tenla a mano. Sí, esto puede parecerte una chorrada, pero eres tú el que ha pedido un paso a paso. Pon un enlace en el escritorio.
  2. instala la aplicación Logitech Air Mouse en el iPhone.
  3. descarga el Logitech Touch Mouse Server para Mac. Es una imagen de disco (fichero DMG). No hace falta ni instalarla: haces doble click, se abre, arrancas el programa servidor y a esperar conexión del iPhone.
  4. necesitamos conectar con el Mac desde el iPhone. Para ello, hay que activar la WiFi en el iPhone (y en el Mac, claro)
  5. arrancamos la App en el iPhone. Una vez que nos aparece el Mac en la lista de servidores nos conectamos. Ya podemos mover el ratón por la pantalla del Mac tocando la pantalla del iPhone. Y hacer click. Y encima, como el iPhone es multitouch, tenemos los gestos de los Trackpads Mac en el iPhone.
  6. Arrancamos la presentación y listo: click izquierdo avanza y click derecho retrocede. ¡Misión cumplida!

Y por si no ha quedado suficientemente claro, aquí os pongo un vídeo que muestra cómo manejar el portátil con el Logitech Air Mouse.  La noticia original la vi en el Blog oficial de Logitech.

j j j

Cómo gestionar un equipo de Geeks

[]1

Etiquetas de un lenguaje imaginario de marcas, tatuadas: hay que ser Geek!

Hasta ahora, cuando he tenido que montar un equipo de trabajo (normalmente equipos de informáticos), se me ha dado bien porque he sido muy Patton, y eso es algo que cualquiera que piense en dirigir equipos de Geeks debería aprender. Quiero compartir algunas cosas que he aprendido, por experiencia y con muchos dolores:

Motivación

  • los informáticos necesitan de otras motivaciones, además de la pasta (que encima en España tampoco es para volverse locos). Dar las gracias por un trabajo bien hecho no cuesta nada y surte efectos increíbles. Es el «palmadita-power».
  • para un informático el último ordenador es normalmente lo que para el resto es un cochazo. Es un elemento motivador muy importante. Si les das el mejor equipamiento posible, les estás diciendo: «mira qué importante eres para mí». Por desgracia al revés también funciona esto, así que cuidado con el equipamiento basura. No hay nada más frustrante que tener que aguantar presiones para entregar algo y ver cómo el ordenador que tienes delante se desangra intentando compilar algo con Eclipse.

Gestión del equipo

  • hay que aplaudir los éxitos de tu equipo en público y vender sus progresos hasta la extenuación ante los estamentos superiores. Y las broncas, en privado. Sentido común, ¿no?.
  • mis hombres son cojonudos. Yo tengo el monopolio de las críticas sobre mi equipo. El resto del Universo que se queje a mí, y yo ya me encargaré de poner orden si es necesario. Pero eso de ir directamente contra alguien de mi equipo, ni en broma. Si yo estoy de gestor de personas, mid-management o como lo quieras llamar, hablas conmigo.
  • Enfoca a tu equipo y explícale qué necesita el cliente. Recuerda que son Geeks, y en ocasiones estarán obsesionados con conseguir que el código CSS de la web sea 100% estándar, aunque eso no lo pida ni lo pague el cliente. Lo que quiere el cliente es ver las fotos más grandes. No dejes que se obsesionen con un problema técnico, si no es parte de la solución o si hay otra disponible más sencilla: que apliquen la ley de Parkinson
  • Explica las razones de las decisiones. Si decides eliminar tal o cual servicio, o tirar a la basura código porque si no no llegáis a la entrega, explícalo hasta que tu gente lo entienda y acepte. No des pie a murmuraciones.
  • Tu papel

  • el coordinador, jefe o líder de un equipo de informáticos debe estar para solucionarles a ellos los problemas, pero no para hacer las cosas. Tu trabajo son los problemas de tu equipo. Busca al mejor equipo y dales las mejores herramientas y ellos se encargarán de resolver tus problemas.
  • si quieres respeto, además de autoridad, debes estudiar lo suficiente para entender, por encima, los problemas a los que se enfrenta tu equipo. Este trabajo es muy, muy difícil. Intelectualmente agotador. Y encima, cada 10 años casi todo ha cambiado. Por eso, que tu equipo vea que les entiendes, y que tienes cierto manejo técnico es impagable. En una ocasión me comentaron casi con lágrimas en los ojos que en una empresa el CEO hacía cambios al código fuente y subía versiones al SVN. De acuerdo, de acuerdo: las horas de un CEO son muy caras para hacer eso, eso no es su trabajo… o quizás sí: en esa empresa todos los programadores ven al CEO como su compañero y saben que en cualquier momento les puede leer su código. Ojo con los CEOs listos.
  • tú no eres el delantero. Ni el portero. Ni el defensa. Eres el entrenador y muchas veces, el utilero. Ellos meten los goles. Seleccionar a los mejores y hacer que funcionen como equipo es tu triunfo.
  • Reuniones

  • Si puedes, sé borde en las reuniones: pregunta sin miramientos si hay algún problema. Cuando comience la lluvia de llantos, hazles que te manden por correo una lista con tres puntos imprescindibles para mejorar su trabajo, excluyendo temas salariales. Te sorprenderá ver que hay un factor común enorme, y que dando flexibilidad en los horarios, teletrabajo (que para eso están las VPNs) y mejores equipos  la moral del equipo sube como la espuma.
  • * Siempre que puedas, no las tengas. Si las tienes, que alguien de tu equipo tome notas y las suba a un sitio compartido. Revísalas e intenta cumplir lo que pactes con ellos. Si no puedes cumplirlo todo, vete.

    Y, casi por último, que algo esté claro: tú estás ahí para coordinarles, motivarles, guiarles, o llámalo como quieras: mandar. La última palabra la tienes tú. Pero escúchales y habla con ellos. Aprenderás un montón.

    j j j