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...

Crea una página profesional en minutos con Google Sites

Google  tiene de todo . Además de buscador, cuenta con un portal de vídeo (YouTube), un atlas geográfico (Mapas), una suite ofimática (Drive), un cliente de correo electrónico (Gmail), un espacio donde compartir tus fotos, una tienda de apps (Google Play)… Con Google incluso puedes  poner en marcha un blog  en segundos gracias a  Blogger . Entras, te registras, configuras una plantilla y sólo tendrás que crear contenido. Apenas requiere mantenimiento. Por otro lado, si eras  cliente de G Suite , antes Google Apps, además de contar con espacio en Drive, correo electrónico Gmail, calendarios y otros servicios enfocados a la empresa, podías crear  la página web de tu negocio  usando Google Sites. Los usuarios particulares, o quienes no querían una suscripción de pago a G Suite, para montar una página web con Google debían  acudir a Blogger o al espacio gratuito que ofrece Drive . Pero desde hace varios años ya es posible usar Google Sites p...