Jejeje… los programadores somos como niños. Todos creemos que programar en un lenguaje u otro nos hace de un casta especial, superior al resto. En mi opinión lo único que es relevante es cuántos conoces y cómo de bien los conoces. Pero no voy a negar que también en alguna ocasión he discutido sobre el tema…
De todos modos, com me dijo mi cuñado, que tiene una franquicia de tiendas de pesca y es un excelente pescador (según dicen porque yo de pesca no se nada). cuando le pregunto sobre la diferencia entre cañas: ‘caza el indio no la flecha’. Vamos que lo que importa es el programador más que el lenguaje… ¿alguien duda de que Unai escribiria buen código a la velocidad de la luz en Java como hace en C#?… Además estoy seguro de que pillaría incluso los mismos cabreos jejeejje…
Bueno, pues aquí os dejo una jerarquía que alguien a creado (no se la fuente original, he recibido la imagen por correo) en función de como se sienten los programadores respecto al resto según el lenguaje que usan. Aunque esto es humor, algo de verdad esconde esta jerarquía. ¿Creeís que es acertada?…
Me gusta especialmente lo que dice la nota sobre los programadores de Ruby… jejejeje….
Estoy totalmente de acuerdo con que un buen programador, lo será, programe en lo que programe.
Con un lenguaje te puedes sentir más cómodo que con otro, unos pueden ser más flexibles que otros pero en esencia, todos nos sirven para modelar de una u otra forma aquello que tenemos en la cabeza, algoritmos, estructuras de datos etc…
De modo que independientemente del lenguaje, eso debe estar allí.
La mayoría de los programadores que conozco, programan en más de un lenguaje, y todos ellos tienen uno preferido ó con el que se encuentran más cómodos, en donde se mueven mejor y en donde se conocen todos los trukis del mundo y como es lógico discutiremos con otros programadores las ventajas de este, cosa que encuentro totalmente natural ya que no hablamos de otra cosa (jeje).
Además tengo unas ganas de meterme con Ruby … 🙂
cseg.
Llevaba mucho tiempo detrás de ese Chart de jerarquías. Una vez me lo enseño M.A. Ramos y no se lo pude pillar.
Es brutal.
La verdad es que sobre este tema se puede hablar largo y tendido. Evitando caer en la tentación de ser políticamente correcto (postura que a mi entender es fácilmente adoptable pero que no provocará que nos mojemos) voy a intentar mojarme para que, como en la jerarquía incluida, pongamos cartas sobre el asunto.
Yo creo que el lenguaje (como el tamaño ;)) si que importa. No es lo mismo programar en C# que en Java (aunque tengo mis dudas al respecto), no es lo mismo programar en Java o C# que en C++, ni en C++ que en C, ni en C que en ensamblador, ni en … bueno lo del lisp pese a que mi experiencia no fue traumática, es pelin duro pero nada comparable al ensamblador sin uso de macros. Seguro que más de uno ha pasado esta secuencia que he escrito y sabe fielmente de lo que hablo.
Al final te acabas adaptando, pero señores, si miras el tema objetivamente, es decir mides:
– tiempos de aprendizaje del lenguajes y librerías
– tiempo de desarrollo una vez has sido formado
– tiempo de integración con otros desarrollos o módulos
Creo que si que hay diferencias.
Yo también tomo como indicador el número y volumen de los proyectos open source realizados en un lenguaje y otro. En esto de los lenguajes se puede dar el llamado «efecto red» mediante el cual ciertos productos (en este caso lenguajes) benefician más al consumidor cuantos más usuarios lo utilicen (caso de los videos vhs, caso del msdos, etc.) Quien pone freno a esto del efecto red es la capadidad de integración de los módulos desarrollados (COM, sockets, servicios web, colas, etc.). No obstante, en mi particular experiencia, un proyecto es más fácil de desarrollar y mantener, sobre todo si intervienen muchos desarrolladores, si hay un lenguaje predomiandte en el proyecto.
Yo, como todos los que son buenos programadores (lo que no implica que yo lo sea) comencé con el ensamblador. Desde esa perspectiva, lenguajes como el C, C++, Java o C#, a medida que los vas conociendo, te parecen pequeñas maravillas que han venido a facilitarte la vida. Y realmente lo consiguen (lo del lisp no me queda claro en este sentido).
No obstante creo que debemos ser agnósticos frente al lenguaje. Debemos probar las distintas alternativas y evaluar cual nos beneficia más para el proyecto que vamos a realizar. Debemos mantenernos al día en nuevos lenguajes, mecanismos de representación del conocimiento (que para eso son los lenguajes), etc. … pero esto es solo la teoría 😉
Yo de momento me quedo con lenguajes verborreicos como C# y java (lo de verborreico lo he sacado del mundo Ruby), aunque de vez en cuando debo pedir ayuda al todopoderoso C++ que esto de las máquinas virtuales tiene un límite. Y siempre estar vigilante de las nuevas apariciones.
PD: felicidades por el blog Rodrigo.
Hay un lenguaje que pilotas un poco peor que le resto…
Estimado Real Académico de la Lengua, que paradojas tiene la vida… ironizar como otro usa el lenguaje y cometer una errata de bulto en la crítica, me encanta este tipo de paradojas.
Si te referías al título del post, esta hecho adrede, simulando el lenguaje de un niño pequeño.
Si te referías a las faltas de ortografía, no tengo remedio 🙁
Saludos!
Hombre, de bulto, de bulto (sabía que dirías algo ;)… Y tampoco ironizaba… No me refería al título del post (que creo haber interpretado correctamente), pero en todo caso no quería insultarte, ni provocar, ni nada, no va en mi línea, ni mucho menos (tendrías que ver mis faltas), pero creo que deberíamos cuidar ese aspecto, tanto o más que el cuidado que le dedicamos a nuestro código, en último extremo el medio de comunicación entre programadores a lo largo del espacio y del tiempo… ¿Por qué no pulir uno si dedicamos tanto cuidado a pulir el otro? En todo caso, te pido perdón si te he ofendido, reconozco que a veces ejecuto mi compilador lingüístico con todos los warnings activados, y me pierdo :). Un afectuoso saludo. RAL.
Aupa RAL!!!
En ningún momento me he tomado a mal tu comentario!!! Solo me ha llamado la antención lo de la errata!!!
Comparto tu opinión de que debemos cuidar el lenguaje.
Un saludo y gracias por leer este blog, a pesar de las incorreciones linguísticas 😉
Hola, Rodrigo!
Bueno, a excepción de LISP todos los lenguajes de programación de esa imagen son imperativos (procedimentales). Curiosamente, ahí faltan PROLOG, basado en la programación lógica, y otros representantes de la programación funcional relativamente populares.
Si se habla de lenguajes imperativos, en general estoy de acuerdo contigo en lo que dices sobre que un buen programador de un lenguaje lo debe llegar a ser también en otro en un plazo de tiempo corto. Más ahora, que ya prácticamente todos los lenguajes han «adoptado» las clases y los objetos. Pero para ser un buen programador en esos otros paradigmas creo que se requiere una forma de pensar diferente y también una preparación teórica superior, cosas que no llegan tan rápido. En el caso de Unai estoy seguro de que la regla se cumple porque tiene una excelente formación matemática, pero no creo que sea el caso general.
Será interesante ver cómo adoptan los programadores de C# las novedades de estilo funcional que incluirá C# 3.0…
Un abrazo – Octavio
Excelnte apunte Octavio… yo también quiero ver como se acojen las novedades ‘funcionales’ de C# 3.0 y si se utilizan para hacer mejor código o para ofuscarlo. De todos modos creo que la gran mayoría de los programadores simplemente las ignorararan… cuantos programadores usan el yield p.e. y eso que es un tema menor…
Un saludo titán!!
Hola Rodrigo,
Como han comentado esta es una discusión típica dentro de equipos de desarrollo. Mi opinión coincide mucho con las expresadas anteriormente.
Para mi no importa tanto el lenguaje de programación usado (pilar de la arquitectura .NET) sino el programa que se consiga realizar con el.
Lo que si está muy claro que tecnologías como .NET que fomenten la productividad te ayudan a alcanzar el principal objetivo:
Un producto bueno, bonito y barato!
Saludos.
Son lo Maximo los felicito
El C y el C++ estan por encima del Ruby, por supuestisimo, y los programadores de sendos lenguajes tambien… modestia aparte 😉
Hola, la verdad la jerarquia me parace bastante mala, poner a un programador ruby encima de los demas? Bueno cada cual con lo que mas le gusta, de paso aprovecho para molestarlos si alguno sabe de algun sitio en el que puede recopilar estadisticas acerca de usa de frameworks, etc.
Muchas gracias
Buenas,
Como programador junior me quedo con la frase de: ‘caza el indio no la flecha’ se una lenguaje y del resto churreo un poco y de los que no chapurreo los entiendo ver el codigo.
Salu2