Hay ciertos mandamientos que un buen programador debería tener en cuenta:
Hace un par de años, un compañero de trabajo me comentó que había leído (años atrás) un libro muy interesante donde se trataban conceptos de comportamiento de un programador, y me pareció curioso lo que me comentaba, ya que no sólo me dijo que éste libro trataba consideraciones puramente tecnológicas, sino que también aportaba indicaciones psicológicas y de comportamiento, y fue ahí donde captó bastante mi interés, ya que soy una apasionada del desarrollo personal y del comportamiento humano.
¿Qué es ser humilde? Se aplica a la persona que tiene la capacidad de restar importancia a los propios logros y virtudes, y de reconocer sus defectos y errores. engreído, vanidoso.
Ser humilde significa ser realista con la percepción que tienes sobre ti mismo/a. Implica reconocer tus fortalezas, pero también tus debilidades; conocer tus talentos (y ponerlos en práctica), pero también tus limitaciones. Todo lo que esté por encima o por debajo de esta percepción objetiva de ti mismo/a es orgullo/a y egocentrista.
Todos/as más o menos sabríamos decir una definición de qué es una persona humilde, pero...¿pones en práctica el valor de la humildad?
En este post expondré en primer lugar los diez mandamientos del programador humilde que Jerry Weinberg estableció en su libro escrito en 1971 "The Psychology of Computer Programming" cuyas tendencias siguen siendo vigentes hoy en día tras 45 años de haber escrito su libro.
Estos primeros diez mandamientos que debe poner en práctica un/a programador/a informático/a, tienen una perspectiva más sobre la Inteligencia Emocional y el desarrollo conductual de la personal. Después expondré veinte mandamientos más, los cuales tienen un enfoque más operativo.
1. Comprenderás y aceptarás que te vas a equivocar.
Nadie es infalible…¡ni siquiera tu!
2. No eres tu código
A ver..., es importante en la vida, no ser tan susceptibles y tomarnos las críticas constructivas o incluso las destructivas a título personal. Si alguien te dice que algo en tu código está mal, no te lo tomes como un ataque personal.
3. No importa cuanto sepas de algo, siempre habrá alguien que sepa mas
Cómo siempre he escuchado decir a mi abuelo..."Es de bien nacidos aceptar los puntos de vista de los demás"
4. No reescribas código sin consultar primero
5. Trata a las personas que entienden menos que tu, con respeto y paciencia
De ahí el dicho: “trata a los demás como te gustaría ser tratado”
6. La única constante en el mundo es que cambia
Otra de mis vertientes profesionales es el Desarrollo Personal, la Inteligencia Emocional y el Coaching...y en éstas materias, el "Cambio" es un concepto, desde mi punto de vista, "troncal". Es fundamental no tener miedo al cambio, porque el cambio nos rodea desde que nos levantamos cada día. Así que aprovecha los cambios al máximo para llevarlos a tu favor.
7. Las verdaderas posiciones de autoridad parten de conocimiento, no del puesto
Tener un buen ambiente de trabajo está genial, pero tener respeto entre los compañeros es ideal. Así que ¡a trabajar la empatía y la asertividad!
8. Lucha por lo que crees firmemente, pero acepta la derrota si se produce
La experiencia se adquiere a través de los errores.
9. No seas la persona del cuarto oscuro
La colaboración con otras personas enriquece la mente y el alma.
Otro mandamiento que te comparto y que viene a colación es:
Compartirás con tus compañeros/as de trabajo y otros/as programadores
La comunicación bidireccional con tus compis de trabajo es fundamental para que crezcas, te desarrolles y experimentes de manera positiva. Sacúdete de la cabeza el recelo a no preguntar si conocen una mejor forma de hacer algo.
Aprende de ellos y de sus códigos.
Es importante (e interesante) que tengas amistades que están en el mismo sector que tu y sobre todo en sintonía contigo y esto no lo digo solamente porque es bueno para que obtengáis ayuda mutua, sino porque estar fuera del "cuarto oscuro" te proporcionará formas diferentes de ver y hacer las cosas, por tanto eso ayudará a tu motivación ya que no te sentirás solo/a.
10. Critica el código, no al programador
Si alguien te comenta un punto de vista diferente respecto a tu código, si alguien te realiza una crítica, se agradecido/a, no cuesta nada dar las gracias y sonreír :-D
Y los últimos 11 mandamientos...
1 Estudiarás por encima de todas las cosas
Sabes de sobra que el estudiar de manera constante no te permitirá estancarte y quedarte encapsulado/a. En los días en los que estamos viviendo, el estar actualizados es lo que te permitirá diferenciarte y avanzar hacia tus objetivos tanto profesionales como personales.
A éste mandamiento se le puede añadir otro segundo:
No te estancarás
Buscarás de manera frecuente el mejorarte a ti mismo/a. ¡Perfecciónate!
Da la casualidad que el mundo de internet, de la ingeniería web, de la tecnología en general...No te puedes conformar. Las tecnologías evolucionan y muy rápidamente y un especialista como tú debe hacer lo mismo, porque siempre hay nueva generaciones que pisan fuerte y el tiempo por suerte o por desgracia, pasa muy rápido, y en cuestión de pocos años, si no te sigues desarrollando en tu profesión, puedes quedarte obsoleto/a conllevando a una pérdida de trabajo (si trabajas en una empresa privada) o a una pérdida de clientes (si eres autónomo/a y/o tienes una empresa).
2 Buscarás un área que te enamore y apasiones
Que mejor que trabajar en lo que nos gusta y nos hace disfrutar. Al final aunque le dediques muchas horas a realizar el desarrollo de un proyecto, lo considerarás un reto positivo.
3 Cuidarás tus equipos y organizarás tu espacio de trabajo
Esto es como cuando éramos pequeños y nuestros padres y profesores nos decían que cuidásemos el material escolar. Pues lo mismo. Este mandamiento parece obvio, pero no siempre se cumple. No hay ni que decir que tu equipo es tu gran herramienta para plasmar y desarrollar tu trabajo.
Tunea/decora el lugar donde trabajas. Eso te ayudará a tener un ambiente más motivador, pero mantenlo ordenado/organizado. No valen frases como..."Yo me aclaro en mi desorden" Una mesa de trabajo desorganizada es señal persona desordenada y de trabajo mal desarrollado, aunque no sea luego verdad, pero tu imagen como profesional debe representarse en todos los aspectos de tu persona.
4 Investigarás y buscarás soluciones antes de preguntar
Esto es un mal común que muchos seres humanos tenemos (es una generalidad lo que estoy diciendo y lo que voy a decir). Ante cualquier problema que nos surge es más fácil preguntar a la persona que tenemos al lado (en primer lugar) antes de buscar por nuestra cuenta alguna solución. El buscar soluciones hará que aprendas y mucho. Ciertamente es que tampoco deberás permitir que el proceso de búsqueda de información se eternice porque eso al final como bien sabes repercute en los tiempos de entrega del proyecto que estés desarrollando, afecte a la calidad del resultado final...Deberás ser inteligente para saber cuando debes preguntar a otra persona.
5 Siéntete responsable del código que generes, el código es tu producto
Eres el responsable de todo lo que crees. Aunque estés trabajando en una empresa y tengas jefes y/o directivos que te cubran el el código es tu producto. El código habla de ti, habla del tipo de profesional que eres. Así que cuídalo. Es tu SEÑA DE IDENTIDAD; es TU MARCA.
6 Leerás código fuente libre
Tiene mucho que ver con el mandamiento uno, ya que el hecho de leer y probar conocimiento de programación elaborado y compartido por otros/as programadores/as hará que sigas desarrollándote como especialista del sector profesional que has elegido. Así que mete la mano a códigos, prueba, experimenta ;-)
7 Participarás en foros y comunidades
Da y recibirás. Si compartes parte de tu conocimiento en foros especializados, a través de artículos en blogs de colaboración,... estarás ayudando a otras personas. El valor de dar es fundamental en la vida, ya no sólo porque no sabemos cuando necesitaremos nosotros ayuda, sino porque es muy bonito saber que lo que sabemos puede ayudar a otras personas.
8 No tendrás pensamientos de un creativo
A ver...aclaro para que no haya confusiones y malos rollos. No eres un creativo, eres un/a programador/a. Para nada estoy diciendo que no tengas creatividad o coartes tu espíritu creativo programando, pero es muy diferente programar que diseñar y/o maquetar dichos diseños. Por eso, en cualquier momento puede llegar alguien y tocar tu código en Pro de una mejora en el diseño que termine afectando a tu código. Recuerda que tu código no es tuyo (no serás su propietario), aunque serás responsable de él.
9 La calidad es una decisión económica
Si eres un/a buen/a programador/a, tu código se aproximará más a la perfección, no obstante, si te dan tiempo, harás una "obra de arte" ;-).
Haz siempre tu trabajo con alta calidad. Puede que por motivos de costes económicos y/o de tiempo, tu desarrollo no sea perfecto en alguna ocasión, pero que uno de tus aspectos de diferenciación sea la calidad que proyectas en tu trabajo.
Ahora te planteo una pregunta que no suele gustar responder..., y no vale con decir "depende de la situación" Aquí tienes que responder con una u otra opción, independientemente de la situación.
¿Prefieres ser un programador lento o un programador malo?
10 Utiliza todos los recursos que tengas a tu alcance para avanzar y mejorar
Ten como regla el descansar tu mente realizando otras actividades muy diferentes a tu profesión/pasión. No por el hecho de que te enamore lo que haces, debes pasar las 16 horas que estás despierto/a programando, leyendo sobre programación, aprendiendo...es importante saber gestionar tu tiempo (una habilidad muy importante en nuestras vidas) para así salir con gente y compartir momentos de conversación distintos a tu día a día, realizar actividades de ocio, deporte, relax, aventura...¡Si te "desenchufas" más operativo luego serás!
Espero que te haya gustado los 41 mandamientos y deseo que te hayan sido algunos de utilidad.
¿Qué otro u otros mandamientos del programador informático incluirías en estas listas?
Puedes dejarnos un comentario y si lo deseas compartir este post en tus redes sociales :-)
Hace un par de años, un compañero de trabajo me comentó que había leído (años atrás) un libro muy interesante donde se trataban conceptos de comportamiento de un programador, y me pareció curioso lo que me comentaba, ya que no sólo me dijo que éste libro trataba consideraciones puramente tecnológicas, sino que también aportaba indicaciones psicológicas y de comportamiento, y fue ahí donde captó bastante mi interés, ya que soy una apasionada del desarrollo personal y del comportamiento humano.
Los 10 mandamientos del Programador Humilde
¿Qué es ser humilde? Se aplica a la persona que tiene la capacidad de restar importancia a los propios logros y virtudes, y de reconocer sus defectos y errores. engreído, vanidoso.
Ser humilde significa ser realista con la percepción que tienes sobre ti mismo/a. Implica reconocer tus fortalezas, pero también tus debilidades; conocer tus talentos (y ponerlos en práctica), pero también tus limitaciones. Todo lo que esté por encima o por debajo de esta percepción objetiva de ti mismo/a es orgullo/a y egocentrista.
Todos/as más o menos sabríamos decir una definición de qué es una persona humilde, pero...¿pones en práctica el valor de la humildad?
En este post expondré en primer lugar los diez mandamientos del programador humilde que Jerry Weinberg estableció en su libro escrito en 1971 "The Psychology of Computer Programming" cuyas tendencias siguen siendo vigentes hoy en día tras 45 años de haber escrito su libro.
Estos primeros diez mandamientos que debe poner en práctica un/a programador/a informático/a, tienen una perspectiva más sobre la Inteligencia Emocional y el desarrollo conductual de la personal. Después expondré veinte mandamientos más, los cuales tienen un enfoque más operativo.
1. Comprenderás y aceptarás que te vas a equivocar.
Nadie es infalible…¡ni siquiera tu!
2. No eres tu código
A ver..., es importante en la vida, no ser tan susceptibles y tomarnos las críticas constructivas o incluso las destructivas a título personal. Si alguien te dice que algo en tu código está mal, no te lo tomes como un ataque personal.
3. No importa cuanto sepas de algo, siempre habrá alguien que sepa mas
Cómo siempre he escuchado decir a mi abuelo..."Es de bien nacidos aceptar los puntos de vista de los demás"
4. No reescribas código sin consultar primero
5. Trata a las personas que entienden menos que tu, con respeto y paciencia
De ahí el dicho: “trata a los demás como te gustaría ser tratado”
Otra de mis vertientes profesionales es el Desarrollo Personal, la Inteligencia Emocional y el Coaching...y en éstas materias, el "Cambio" es un concepto, desde mi punto de vista, "troncal". Es fundamental no tener miedo al cambio, porque el cambio nos rodea desde que nos levantamos cada día. Así que aprovecha los cambios al máximo para llevarlos a tu favor.
7. Las verdaderas posiciones de autoridad parten de conocimiento, no del puesto
Tener un buen ambiente de trabajo está genial, pero tener respeto entre los compañeros es ideal. Así que ¡a trabajar la empatía y la asertividad!
8. Lucha por lo que crees firmemente, pero acepta la derrota si se produce
La experiencia se adquiere a través de los errores.
9. No seas la persona del cuarto oscuro
La colaboración con otras personas enriquece la mente y el alma.
Otro mandamiento que te comparto y que viene a colación es:
Compartirás con tus compañeros/as de trabajo y otros/as programadores
La comunicación bidireccional con tus compis de trabajo es fundamental para que crezcas, te desarrolles y experimentes de manera positiva. Sacúdete de la cabeza el recelo a no preguntar si conocen una mejor forma de hacer algo.
Aprende de ellos y de sus códigos.
Es importante (e interesante) que tengas amistades que están en el mismo sector que tu y sobre todo en sintonía contigo y esto no lo digo solamente porque es bueno para que obtengáis ayuda mutua, sino porque estar fuera del "cuarto oscuro" te proporcionará formas diferentes de ver y hacer las cosas, por tanto eso ayudará a tu motivación ya que no te sentirás solo/a.
10. Critica el código, no al programador
Si alguien te comenta un punto de vista diferente respecto a tu código, si alguien te realiza una crítica, se agradecido/a, no cuesta nada dar las gracias y sonreír :-D
Ahora os dejo los 20 mandamientos de "Buen Programador" a través de la siguiente infografía.
- No usaras flash. <
- No justificarás el [El Texto.]
- No_usarás Texto_en Imagen.>
- Tendrás una [arquitectura web] organizada;
- _No usarás {contenido duplicado.}
- No usarás canciones > en reproducción [automática.]
- No usarás tablas en versiones_ >responsive.<
- Tendrás_tu plantilla de estilos {en el Header} y los JS en el Footer
- No subirás >/imágenes/< pesadas
- Los_campos>de tus formularios estarán validados
- Haz un diseño responsive y adaptable
- Optimiza las imágenes
- Optimiza el código. Tenlo siempre en orden
- Usa las tecnologías más adecuadas a cada desarrollo
- Respeta los diseños gráficos que te den
- Simplifica
- Ten en cuenta al usuario
- No te olvides de las Redes Sociales
- Código centrado en el SEO
- Buena documentación
Y los últimos 11 mandamientos...
1 Estudiarás por encima de todas las cosas
Sabes de sobra que el estudiar de manera constante no te permitirá estancarte y quedarte encapsulado/a. En los días en los que estamos viviendo, el estar actualizados es lo que te permitirá diferenciarte y avanzar hacia tus objetivos tanto profesionales como personales.
A éste mandamiento se le puede añadir otro segundo:
No te estancarás
Buscarás de manera frecuente el mejorarte a ti mismo/a. ¡Perfecciónate!
Da la casualidad que el mundo de internet, de la ingeniería web, de la tecnología en general...No te puedes conformar. Las tecnologías evolucionan y muy rápidamente y un especialista como tú debe hacer lo mismo, porque siempre hay nueva generaciones que pisan fuerte y el tiempo por suerte o por desgracia, pasa muy rápido, y en cuestión de pocos años, si no te sigues desarrollando en tu profesión, puedes quedarte obsoleto/a conllevando a una pérdida de trabajo (si trabajas en una empresa privada) o a una pérdida de clientes (si eres autónomo/a y/o tienes una empresa).
2 Buscarás un área que te enamore y apasiones
Que mejor que trabajar en lo que nos gusta y nos hace disfrutar. Al final aunque le dediques muchas horas a realizar el desarrollo de un proyecto, lo considerarás un reto positivo.
3 Cuidarás tus equipos y organizarás tu espacio de trabajo
Esto es como cuando éramos pequeños y nuestros padres y profesores nos decían que cuidásemos el material escolar. Pues lo mismo. Este mandamiento parece obvio, pero no siempre se cumple. No hay ni que decir que tu equipo es tu gran herramienta para plasmar y desarrollar tu trabajo.
Tunea/decora el lugar donde trabajas. Eso te ayudará a tener un ambiente más motivador, pero mantenlo ordenado/organizado. No valen frases como..."Yo me aclaro en mi desorden" Una mesa de trabajo desorganizada es señal persona desordenada y de trabajo mal desarrollado, aunque no sea luego verdad, pero tu imagen como profesional debe representarse en todos los aspectos de tu persona.
4 Investigarás y buscarás soluciones antes de preguntar
Esto es un mal común que muchos seres humanos tenemos (es una generalidad lo que estoy diciendo y lo que voy a decir). Ante cualquier problema que nos surge es más fácil preguntar a la persona que tenemos al lado (en primer lugar) antes de buscar por nuestra cuenta alguna solución. El buscar soluciones hará que aprendas y mucho. Ciertamente es que tampoco deberás permitir que el proceso de búsqueda de información se eternice porque eso al final como bien sabes repercute en los tiempos de entrega del proyecto que estés desarrollando, afecte a la calidad del resultado final...Deberás ser inteligente para saber cuando debes preguntar a otra persona.
5 Siéntete responsable del código que generes, el código es tu producto
Eres el responsable de todo lo que crees. Aunque estés trabajando en una empresa y tengas jefes y/o directivos que te cubran el el código es tu producto. El código habla de ti, habla del tipo de profesional que eres. Así que cuídalo. Es tu SEÑA DE IDENTIDAD; es TU MARCA.
6 Leerás código fuente libre
Tiene mucho que ver con el mandamiento uno, ya que el hecho de leer y probar conocimiento de programación elaborado y compartido por otros/as programadores/as hará que sigas desarrollándote como especialista del sector profesional que has elegido. Así que mete la mano a códigos, prueba, experimenta ;-)
7 Participarás en foros y comunidades
Da y recibirás. Si compartes parte de tu conocimiento en foros especializados, a través de artículos en blogs de colaboración,... estarás ayudando a otras personas. El valor de dar es fundamental en la vida, ya no sólo porque no sabemos cuando necesitaremos nosotros ayuda, sino porque es muy bonito saber que lo que sabemos puede ayudar a otras personas.
8 No tendrás pensamientos de un creativo
A ver...aclaro para que no haya confusiones y malos rollos. No eres un creativo, eres un/a programador/a. Para nada estoy diciendo que no tengas creatividad o coartes tu espíritu creativo programando, pero es muy diferente programar que diseñar y/o maquetar dichos diseños. Por eso, en cualquier momento puede llegar alguien y tocar tu código en Pro de una mejora en el diseño que termine afectando a tu código. Recuerda que tu código no es tuyo (no serás su propietario), aunque serás responsable de él.
9 La calidad es una decisión económica
Si eres un/a buen/a programador/a, tu código se aproximará más a la perfección, no obstante, si te dan tiempo, harás una "obra de arte" ;-).
Haz siempre tu trabajo con alta calidad. Puede que por motivos de costes económicos y/o de tiempo, tu desarrollo no sea perfecto en alguna ocasión, pero que uno de tus aspectos de diferenciación sea la calidad que proyectas en tu trabajo.
Ahora te planteo una pregunta que no suele gustar responder..., y no vale con decir "depende de la situación" Aquí tienes que responder con una u otra opción, independientemente de la situación.
¿Prefieres ser un programador lento o un programador malo?
10 Utiliza todos los recursos que tengas a tu alcance para avanzar y mejorar
- Haz primero las tareas de programación que menos te gustan. Este mandamiento se puede extrapolar a cualquier área de tu vida o a cualquier tarea que tengas que realizar. Enfrentarte de primeras con tareas que no te gustan pueden tener un gran peso emocional, pero como suele ocurrir (con más frecuencia de la que nos gustaría) cuando se deja a un lado las tareas que menos nos gusta al final terminamos postergándolas días y días, pudiéndose crear un tapón en tiempos y afectando directamente a la calidad del resultado de tu trabajo.
- Cumple los estándares.Esto es fundamental, hay que escribir código siguiendo los estandares (recomiendo las líneas de estilo de código que proporciona Microsoft, buscadlo). Es decir, si la primera letra de un método debe ir en maýusculas que no se nos olvide hacerlo, porque esto son indicios que nos dejamos a nosotros mismos y a los que lean nuestro código. Otro ejemplo: que los fields no se pueden confundir con propiedades, porque si sigues las convenciones los fields van con la primera letra en minúsculas o en todo caso con un guión bajo y las propiedades se escriben con la primera letra en mayúsculas.
- Dejarás comentarios de lo que sea necesario y cuando sea necesario Escribir comentarios en el código suele ser bastante molesto y parecer innecesario, pero comentar las cosas importantes nos puede ahorrar mucho tiempo cuando tengamos que retocar el código meses después.
- Se eficiente y luego mejóralo. Que un desarrollo que realices funcione no quiere decir que este bien y esté sea óptimo. Al convivir rodeada de ingenieros informáticos (en casa, en el trabajo...) he aprendido que siempre se puede hacer una función más eficiente: que sea más rápida, que consuma menos recursos, que facilite la vida al cliente... Un ingeniero/a informático no debe conformarse con los primeros resultados, lo más seguro es que se pueda mejorar. La clave está en tu condición como profesional, en los tiempos, en los costes y en la calidad del trabajo que quieras y/o puedas dar.
- Automatizarás todo lo que puedas y reutilizarás.Aparte de utilizar herramientas que te generan parte del código, como buen programador/a almacenarás una librería de códigos reutilizables.
- No copies y peguesEs fácil, entramos a google buscamos una función que sirva para lo estamos necesitando y listo. Pero la realidad es que no siempre lo que descargamos es correcto, y si luego tenemos que solucionar un problema lo mas probable es que no tengamos ni idea por donde empezar. Ni hablar del factor aprendizaje cero que esta practica implica.
- Busca scripts ya desarrolladosPor lo general podemos encontrar muchas funciones, scripts listos para utilizar, pero lo interesante es estudiarlos, ver como funcionan, de ahí aprendemos si copiamos y pegamos vamos mal.
- Crearás tu propia WikiAparte de que instalarte una Wiki en tu PC es sencillo te será de gran valor para almacenar procedimientos, rutimas que usas frecuentemente (como guardar validaciones...) Te puede ser de gran utilidad para desarrollo futuros el tener guardado cómo hiciste ciertos procedimientos.
- Organizarás tu propia biblioteca de scriptsEste mandamiento está relacionado con el mandamiento anterior. La wiki es muy buena, pero hay que tenerla organizada, porque si no..., te puede llevar más tiempo encontrar algo que una vez guardaste, que volver a escribir el código.
Ten como regla el descansar tu mente realizando otras actividades muy diferentes a tu profesión/pasión. No por el hecho de que te enamore lo que haces, debes pasar las 16 horas que estás despierto/a programando, leyendo sobre programación, aprendiendo...es importante saber gestionar tu tiempo (una habilidad muy importante en nuestras vidas) para así salir con gente y compartir momentos de conversación distintos a tu día a día, realizar actividades de ocio, deporte, relax, aventura...¡Si te "desenchufas" más operativo luego serás!
Espero que te haya gustado los 41 mandamientos y deseo que te hayan sido algunos de utilidad.
¿Qué otro u otros mandamientos del programador informático incluirías en estas listas?
Puedes dejarnos un comentario y si lo deseas compartir este post en tus redes sociales :-)
Excelente aporte, gracias
ResponderEliminar