Ir al contenido principal

¿SOY UN BUEN ‘DEVELOPER?

panop koonwat
Después de un par de años estudiando y programando en Perl, un día me llegó la gran interrogante: ¿soy un buen programador?
Hace como un año, en un foro alguien preguntó ¿cómo contratar un buen programador? Como era de esperar varios pusieron sus teorías y la forma en que ellos personalmente contratan a sus programadores y diseñadores. El tema me pareció muy interesante, no tanto por la pregunta sino por las respuestas que habían brindado personas de renombre. Esto me hizo pensar realmente cual podría ser la manera de saber si alguien es un buen o mal programador.
No hay un sistema 100% fiable para examinar a alguien y decidir si tiene un verdadero conocimiento de programación, pero desde mi punto de vista personal, considero que eres un buen ‘developer’ por una simple cosa: RESULTADOS.
Estas son las cuatro variables que juegan en mi criterio:
Creatividad
Muchas personas a las que les comento que para ser programador necesitas de mucha creatividad se quedan impactadas, porque suelen asociar a los ordenadores con la falta de creatividad. Vamos, los ordenadores son máquinas, pero nosotros los programadores NO.
Hasta ahora no conozco un lenguaje de programación que no te brinde diferentes soluciones a un mismo problema. Es lo que comúnmente se llama “There Is More Than One Way To Do It”, que en español se traduce como: hay más de una manera para lograrlo. Por eso creo que lo primero que debe tener un buen programador es creatividad.
Creatividad para crear soluciones factibles, rápidas y sencillas a problemas complicados. Por mi experiencia, esto es lo más difícil, no hay un manual sobre “Creatividad Básica” que te haga instantáneamente creativo ni es algo que se pueda comprar en ninguna tienda. La creatividad se lleva dentro y hay unos que tienen poca y otros mucha más. Y por supuesto, si te lo propones, puedes aprender a ser creativo.
Pero lo que es un hecho es que sin creatividad te conviertes inmediatamente en un mal programador, porque aunque la solución sea evidente es la falta de la misma la que te imposibilita ver lo que esta enfrente de ti.
Conocimientos
El segundo punto que debe evaluarse son los conocimientos. Porque aunque tengas creatividad si no tienes conocimientos no podrás llevar a cabo lo que ideaste. Considero que un buen programador más que saber el ¿cómo? sabe el ¿por qué? de las cosas. No es lo mismo saber como solucionar un problema a saber realmente como funciona esa solución.
Un buen programador debe comprender el lenguaje, el por qué actúa de esta u otra manera, para poder usarlo al 100%.
Consulta
Como tercer punto, y el que muy pocas personas mencionaron es la capacidad de consulta. Es imposible que una sola persona sepa todas las soluciones a todos los problemas, y la verdad es que la mayoría de nosotros sabe alrededor de un 50% de las capacidades completas de un lenguaje de programación. Es aquí donde entra la importancia de este punto. Todo buen programador debe de tener la capacidad de encontrar conocimiento necesario de manera rápida, ya sea buscando en libros o en la web.
Muchas veces yo me veo en la necesidad de buscar ciertas funciones que se que existen pero que no recuerdo las sintaxis, así que uso mis apuntes, los cuales están divididos en tres categorías: básico, intermedio y experto.
Eficiencia
Llegamos a nuestro cuarto punto. Un buen programador debe dar soluciones de manera rápida y eficiente. Es lógico que varias veces se necesitan hacer pruebas para saber si un código funciona. Pero creo que todo buen programador debe de tener una guía de trabajo, un plan personal con el cual lleva a cabo todos sus desarrollos.
Espero que este post haya servido para evaluarte. Como se menciona antes, solo es un criterio personal.


Ilustración: Panop Koonwat

Comentarios

Entradas más populares de este blog

Sailfish OS certificado como alternativa a Android en Rusia

Los finlandeses de  Jolla  están de enhorabuena, especialmente si recordamos que no hace mucho estaban casi en la bancarrota, tras embarcarse en una aventura algo arriesgada para la fabricación de tablets. Ahora la vida les sonríe: las autoridades rusas  han certificado  el  sistema operativo Sailfish OS  para su uso por parte del gobierno y corporaciones del país. Se trata de un sistema con base open source ( Linux ), pero con una  capa privativa  presente en algunos de sus componentes como puede ser la interfaz o determinadas aplicaciones. La gran ventaja de Sailfish respecto a otros competidores en el mercado del smartphone –como el ya desaparecido  Firefox OS  o  Ubuntu –, es su  compatibilidad con las aplicaciones de Android. Las intenciones de Rusia es  reducir el uso de sistemas operativos extranjeros  (Android, iOS) en móviles del 95% actual  a la mitad en 2025 . Disminuir la  dependen...

Selfies en 3D llegan a Venezuela y hasta las podrás imprimir en plástico

La empresa 3DUP lanzó al mercado venezolano las líneas de impresoras 3D,  Cube3  y CubePro  de 3D Systems Corporation, a través de las cuales se podrán imprimir modelos, diseños o escaneos en 3D. De igual manera, también está disponible el servicio de selfie3D y el servicio de modelado 3D. La impresora Cube3 tiene dos cabezales de impresión y es única en su clase, posee una amplia combinación de materiales ABS, PLA y una variedad de 18 colores. Es el equipo más fácil de utilizar en el mercado y tiene un software de construcción apto para Windows y Mac; además cuenta con conexión wifi. La nueva CubePro, impresora 3D de calidad profesional ofrece el mayor volumen de impresión entre las impresoras de su clase, sus versiones cuentan con uno, dos o tres cabezales de impresión. Además, posee una amplia combinación de materiales ABS, PLA y Nylon con una variedad de 25 colores, cuenta con una cámara calefaccionada y cerrada para optimizar los trabajos de impresión 3D. P...

Cómo utilizar Google Cloud Print para usar una impresora desde cualquier ordenador, móvil o tablet

Google Cloud Print  es de los productos menos populares de Google, pero es de los mejores. Básicamente  conecta tu impresora a la Web para que puedas imprimir en ella desde cualquiera de tus ordenadores o dispositivos móviles  (a través del ordenador si es una impresora convencional), aunque estés  en el otro extremo del mundo . Y  también permite compartir la impresora con otros usuarios , para que puedan imprimir en ella aunque también estén  en el otro extremo del mundo . En ambos casos será posible imprimir a través de Google Cloud Print desde el navegador Chrome y desde aplicaciones de Google que tengan la opción de imprimir, caso de las aplicaciones de Gmail (nativa o web) y Google Docs / Google Drive 1 . Google Cloud Print también está disponible desde  aplicaciones compatibles . Para activar Google Cloud Print, Inicia (instala primero si es necesario) el  navegador web Chrome Abre las preferencias. Al final de la pá...