edición general
192 meneos
10217 clics
15.000 desarrolladores responden en Twitter cuál es su lenguaje de programación favorito, cuál odian y cuál recomiendan

15.000 desarrolladores responden en Twitter cuál es su lenguaje de programación favorito, cuál odian y cuál recomiendan

Quizás te encontraste con alguno de estos tuits o quizás no, pero miles de desarrolladores se unieron a una tendencia en Twitter en la que listaban lenguajes de programación según seis parámetros distintos bastante simples e interesantes:

| etiquetas: programación , favorito , odian , recomiendan
Comentarios destacados:                              
#207 #179 #178 #122 #100 #88 #87 #65 #51 #48 #42 #15 #11 #10 #6 #4 #3 #2 ¡Muchas gracias!

(favor con favor se paga) por si no conocéis a los australianos estos espero lo disfrutéis (a mi me gustan mucho)--> www.youtube.com/watch?v=g9YKRrnBt4A

-- quizás por edad y salidas profesionales me decante por Cobol aunque Phyton me llama mucho la atención.

En 1987 cuando era un chaval aprendi GWBASIC y conceptos básicos de programación como organigramas, flujos... hasta binario (que no recuerdo en absoluto) pero hice cosas majas con GWBASIC. Simulaciones para una ferretería, un hotel y una peluquería.
Desde 1997 trabajo en artes gráficas, principalmente en preimpresion y producción. Tengo empatía y hago mis pinitos con los equipos, redes, ... Tengo uso avanzado en aplicaciones como Illustrator, Photoshop, Indesing y me defiendo en Cinema-4d y FCX.
Creo que podré hacer el movimiento lateral. Mi situación laboral y personal me va a empujar a tomar un camino distinto al que me ha traído hasta aquí y pienso que por ese lado puedo encontrar algo si me preparo.
«123
  1. ¿Que lenguage para empezar a aprender con 50 años?
  2. #1 Depende de lo que quieras hacer? E.g. para desarrollo web frontend: Javascript y backend python. Si solo quieres elegir uno entonces Javascript te sirve para backend tambien.

    Now Go Build!
  3. #1 El andaluz, queda genial para los chistes de Arévalo en las próximas navidades. :troll:
  4. #1 depende de lo que quieras hacer.
    ¿web facil?
    uno facil es python con el framework django

    ¿web relativamente facil y con posbilidades de encontrar curro rapido?
    PHP con el framework Symfony o Laravel

    ¿mas todo terreno y con salidas laborales?
    Java
  5. #2 Javascript tiene node para backend ahora.

    Estoy haciendo un curso de React y la verdad que el Javascript actual es mas atractivo que lo que recordaba, y en estilo y sintaxis tiene cierta cercanía a Python, salvando las distancias. Pero, sabiendo Python y entendiendo las estructuras se nota que cada lenguaje coge las novedades y mejoras de uno del otro. Acercándose en estilo de programación.
  6. #1 para aprender a programar yo te recomendaría C (asentarás las bases tanto de programación como nociones de sistemas operativos) y después el lenguaje que mejor se adapte a tu proyecto.
  7. #5 Si, para aprender creo que Python es todavia algo mas sencillo. Sobre todo por el tema del event loop y demas.

    Donde realmente brilla ultimamente python es en procesar datos numpy, pandas, pyspark, tensorflow, keras, etc
  8. “Everybody hates Java” 8-D
  9. #5 ¿Tipado dinámico? No, gracias :-P
  10. #1. Como 'introducción a la programación' te recomiendo un emulador de CPC Amstrad y empezar con el 'Locomotive Basic'. No te lo digo de broma; si lo que quieres son resultados inmediatos sin quebraderos de cabeza y reducidos a su mínima expresión no hay nada mejor que un buen interprete Basic de los 80. Lo tienes todo en esta Wiki : www.cpcwiki.eu/index.php/Locomotive_BASIC  media
  11. #1

    Pensando en el futuro, COBOL. Y si ya manejas el SORT ... la leche.

    www.ibm.com/support/knowledgecenter/en/SS6SG3_4.2.0/com.ibm.entcobol.d
  12. #6 Tú eres de los que para enseñar a ir en bicicleta a alguien, lo soltarías cuesta abajo y sin ruedines.
  13. #9 Si quieres hacer cosas de Web solo tienes lenguajes de tipo dinámico, Javascript, Python, Perl, PHP... y el único lenguaje que tiene sentido meter en Web es java, que prefiero no tocarlo ni con pinzas. Antes aprendo Ada que Java (Y mira que odio Ada)

    Además en Python tienes las anotaciones que se acercan a un tipado estático (aunque no son obligatorias). Y en JavaScript está TypeScript que es de tipado estático.

    Pero como otros han dicho, para empezar Python me parece la mejor opción y en operativa de datos tiene grandes bibliotecas.

    #10 ¿BASIC? En serio? Además BASIC de los antiguos con los que pillas muy malos vicios. No me parece una recomendación muy acertada. BASIC es un lenguaje que mejor no tocarlo.
  14. #12 no tuve esa impresión cuando yo aprendí a programar.
  15. #8 modas hipsters.

    Y por supuesto, gente joven.

    Deberían haber visto lo que había encima de la mesa cuando java entro en la programación.
  16. #17 pobre C++
  17. #6 Desde un punto de vista puramente académico puedes tener razón. Pero si solo quieres cacharrear un poco, o si quieres aprender rápido algo con salidas laborales, ni de coña.
  18. #14 Si quieres hacer cosas de Web solo tienes lenguajes de tipo dinámico, Javascript, Python, Perl, PHP

    Supongo que quieres decir front-end. Pero bueno, en teoría WebAssembly promete solucionar este problema de estar casi obligado a usar JavaScript (ese lenguaje donde puedes dejar cosas que fallarían en compilación, pero que si la ejecución no pasa por ahí, no te enteras de los errores...)

    Antes aprendo Ada que Java (Y mira que odio Ada)

    Por favor, no lo hagas. Java te puede gustar más o menos, pero tienes un ecosistema enorme de herramientas. No es lo ideal para front-end, pero como back es un lenguaje fuertemente y estáticamente tipado, con un ecosistema enorme y una documentación infinita.

    Aprendí Ada en la carrera, y, bueno, tampoco es que lo odie, pero se usa en 2 empresas...

    Además en Python tienes las anotaciones que se acercan a un tipado estático (aunque no son obligatorias).

    No soy más experto en Python que haberlo probado un par de tardes, pero me imagino que debe ser rollo Groovy. Te permite usar tipado estático, pero mientras no sea obligado, es como darte la opción a que hagas las cosas mal. Y hacer las cosas mal tiene un precio que acabas pagando.

    Y en JavaScript está TypeScript que es de tipado estático.

    Más de lo mismo. Por no tener un proceso de compilación en el que se haga un chequeo de tipos, hay que parchear el lenguaje con estas cosas. Por mucho énfasis que luego pongas en el testeo, nunca se podrán cubrir tantos casos como el chequeo de tipos que se hace en el proceso de compilación.

    Pero como otros han dicho, para empezar Python me parece la mejor opción y en operativa de datos tiene grandes bibliotecas.

    En eso estoy completamente de acuerdo. Para aprender, probablemente es lo mejor.
  19. #16 Seguramente no tuvieras 50 años
  20. #19 él ha dicho para aprender a programar, y en mi opinión, para aprender a programar bien, debes aprender C.

    En cuanto a lo de las salidas profesionales pues depende, es cierto que tiene más salida otros lenguajes, pero si quieres programar sistemas, microcontroladores, autómatas, electrónica, etc ... tendrás que hacerlo en C.
  21. #8 Haters gonna hate, a mi java me lleva dando de comer muchos años, y lo que te rondaré morena.

    Lo importante es evitar lo de 'cuando tienes un martillo todo se te hacen clavos' independientemente de cual sea tu lenguaje favorito.
  22. #14. El tema de los vicios no lo contemplo en #10, contemplo la accesibilidad, la reducida curva de aprendizaje y los resultados directos en pantalla. Pedirle a #1 que se inicie en programación orientada a la web me parece casi como empezar por el tejado. La programación en una CPU básica son cuatro cosas, toda la 'complejidad añadida' a partir de todas las tecnologias actuales espantan más que encantan.
  23. #21 bueno, tengo 40 y no me veo limitado en ningún sentido ¿cuando tenga 50 será diferente?
  24. #22 Existe aprender y existe APRENDER xD
  25. #14 go para back también tiene sentido, es tipado estático y va como un tiro
  26. #27 también existen programadores y "programadores" que no saben lo que es un puntero.
  27. #26 A ver, que no voy por ahí
    Digo que no tendrías 50 cuando lo aprendiste.
  28. #30 no, pero no comprendo porqué eso es un handicap.
  29. #31 Vale, tu ganas :shit:
  30. Yo con lo de lenguajes más fáciles para aprender he llegado a la conclusión que depende de cada uno. Desde mi posición de novato, Python cuando me he puesto con ello me ha frustrado y aburrido. Con javascript lo pillo todo a la primera y siento que lo que aprendo es aplicable fácilmente, y eso anima mucho.
  31. #32 ¿por qué gano? ¿y qué he ganado exactamente? Es sólo una opinión.
  32. #14 Hay Typescript tambien :-)
  33. #29 Yo se lo que es pero jamás he entendido como funcionan xD Sobre todo lo del 'puntero a puntero' :-P
  34. #9 Siempre te queda la opción de TypeScript que para el que no lo conozca es JavasScript pero con tipado opcional y alguna cosilla más ;)
  35. #8 Java tiene su encanto, sobre todo si usas Spring. Yo la verdad es que ya me he hecho agnóstico, no me disgusta ningún lenguaje
  36. #23 salgo del modo troll un rato. Tengo que reconocer que, tras salir del C++, a mi me ha dado de comer también bastante tiempo, aunqué tampoco es el lenguaje que más me gusta. Me hacía gracia que #17 diese a entender que Java era odiado por los programadores en “lenguajes hipsters” cuando muchos de ellos se basan en Java. {0x1f609}
  37. #37 Eso es parchear algo que está mal pensado desde el principio.
  38. #16 Pues yo aprendí con Pascal y el paso a C fue duro, lo de los punteros me costó de pillarlo. Anda que no estuve horas para pasar parámetros a funciones.

    Eso sí, ahora, más de 20 años después veo código en Pascal y no me imagino como alguna vez pude escribir algo así.
  39. ¡Vaya! Pues yo voy al revés. Python no me gusta nada y java me encanta. Será algo personal, pero lo veo más coherente. No me gusta el indentado y me parece un coñazo, prefiero poner llaves. Lo del tipado dinámico me parece bien para empezar, pero a la larga me parece un lío de cohones. Otra cosa que no me acaba de convencer en python es la "protección" del acceso a los objetos, protected, privates, etc. En java me encanta el aislamiento de las clases con los getters y setters. ¿Y los constructores múltiples en función de firmas con diferente tipado? Se puede resolver en python, pero no lo veo cómodo. En fin, tampoco soy pro y me gustaría saber la opinión de los que se dedican a ello "de verdad".
  40. #34 Un puntero nulo.
  41. #41 Todos los lenguajes evolucionan y seguirán evolucionando.
  42. #11 #10 #12
    C es relevante hoy y no tiene visos de cambiar. Automoción, transporte, sistemas embebidos, microcontroladores TODOS usan C, o si the pones pijo C++ descafeinado

    Y oferta de empleo hay en abundancia entre otras cosas Porque no hay gente que aprenda C
  43. #1 Pues mira, voy a ir a contra corriente y te voy a recomendar VBA
    Es muy sencillo de aprender, y te permite hacer virguerías con tus tablas de excel, asumiendo que uses excel.
    Si ves que te es útil y sencillo el programar, pues de ahí al infinito. Por ejemplo java y hacerte tus propias aplicaciones de android.
  44. #46 Sí, pero la evolución muchas veces pasa por rehacer las cosas, no parchear cosas que están mal. Me explico: el no tener proceso de compilación ha derivado en tener que hacer un parche para simular que hay un chequeo de tipos. O sea, creaste un lenguaje para evitar ese chequeo en el que luego se lo has metido porque te has dado cuenta de que era necesario.

    Mientras el motor que interprete el lenguaje no te obligue a hacerlo, la gente lo seguirá haciendo mal.
  45. ¿Qué lenguajes se están utilizando ahora para aplicaciones de escritorio windows?
  46. #47. De hecho los microordenadores del 80 debieron haber integrado intérpretes/compiladores reducidos de C en lugar de Basic. Pero no fue el caso. Hubiera supuesto un paso de gigante en la buena dirección pero supongo que no querian asustar a la clientela con punteros y sin 'comandos dedicados a' ofrecer acceso directo al hardware.
    (CC #10 #1)
  47. #49 Técnicamente Typescript sí se compila. Pero no a código máquina como C o a bytecode como Java y Python, si no a JavaScript que de momento es lo único que ejecutan los navegadores web.
    TypeScript es un lenguaje nuevo que se compila a Javascript (incluso a la especificación concreta que necesites ES6, es2015, etc) pero que además es mas o menos compatible con el código JavasScript que ya tuvieras. Así que puedes reutilizar todo lo que tuvieras ya hecho en JavasScript, reutilizar librerías JavasScript, etc

    Pd: Perdona te vote negativo por error
  48. #52 Sí, suena interesante.

    Pero mientras lo que ejecute el navegador sea JavaScript, seguiremos teniendo páginas web plagadas de errores.

    No obstante, sí. TypeScript aporta mucho valor añadido.
  49. #51 Compilar/Interpretar C es jodido, órdenes de magnitud más jodido que BASIC. Además de ser un lenguaje "novedoso" para la época.
  50. #20 Básicamente pensaba en back-end. Todos los lenguajes que he mencionado PHP, Python, Perl son de backend excepto JavaScript que lo puedes tener en ambos lados gracias a Node.

    Lo de aprender Ada era un poco sarcasmo. No me apetece aprenderlo además de que no tiene ninguna utilidad hoy en día. Me obligaron a estudiarlo en primero de ingenieria técnica en la UIB (creo que fue una de las razones por las que nunca pasé de primero). Espero que hoy en día no lo sigan usando...

    No conozco Groovy, así que no te lo puedo comparar. Ah sí, Groovy es el lenguaje de scripting de Jira. Pues probablemente sea como eso.

    Por ejemplo, usando React (lo uso desde hace 2 días literalmente), digamos que es como una vuelta a los programas compilados, ya que el JavaScript que se para por allí se compila. No sé, el tipado dinámico tiene sus defectos pero no es tan malo. Aunque tienes razón que para testearlo en principio los lenguajes compilados y estáticos son los mejores.
  51. #35 Lo menciono en el comentario :-) (Quizás en otro párrafo/apartado a lo que respondes)
  52. #44 Buf, como odio los getters/setters. Evidentemente tienen su sentido, el problema es que el lenguaje no tenga una solucion mas elegante para conseguir esa encapsulacion.

    Hoy en dia al menos puedes usar anotaciones lombok para que se generen automaticamente. Alabado sea lombok!

    Por mi parte siempre que es posible escribo clases inmutables, donde los atributos son finales y por lo tanto los getter no son imprescindibles.
  53. Edit #51. Para #47. Me referia a un 'acceso directo' a las características ofrecidas por el hardware, no al hardware en si.
  54. #44 Yo siempre he usado identado (Pascal, Ada, Python) y me parece mucho más legible que las llaves (si no se mezclan con identado). Identificar los bloques me cuesta más. Así que el identado o correctamente traducido al castellano, las sangrías me parecen completamente necesarias para identificar los bloques de código, sean entre llaves u otros métodos con begin y end.

    En Python tienes getters y setters si quieres. Es decir, que puedes usar propiedades. Sí, que la protección es menos forzada que en Java, pero está allí.

    Luego Python tiene maravillas del lenguaje como sus "comprehension lists", los generadores, empaquetado/desempaquetado de variables,... que me parecen muy útiles.
  55. #23 Ese es el principio de todos los principios.

    Cuando una empresa o programador te de siempre las mismas soluciones para problemas y entornos diferentes... Ponte en guardia.
  56. #39 ¿Agnóstico o promiscuo? :-P
  57. #48 VBA es una mierda. Lo siento, pero durante un tiempo he estado haciendo macros con VBA y de vez en cuando no me queda otra que ir por ese camino. Pero, siempre que puedo lo evito muchísimo. Además VBA puede dar muy malos vicios y no lo veo recomendable.
  58. Yo empecé con COBOL en los ochenta y me gané muy bien la vida pero hasta que no aprendí C no me empecé a ver como un programador “de verdad”.

    Un lenguaje muy sencillo y didáctico para empezar es el Object Pascal.
  59. #49 Perdona. Te vote negativo por error
  60. #1 hola. C# o Java (backend), y Angular para frontend (es bastante fácil angular.io/). Puedes descargar las community edition. Creo recordar que si creas una cuenta en visual studio tendrás acceso a unos cuantos cursos de pluralsight.
  61. #5 wtf Para mi JavaScript es posiblemente el lenguaje más feo que existe. ¿En qué se parece la sintaxis de JS a Python exactamente?
  62. #50 el último que experimenté WPF (c sharp plus xaml), aunque no estoy al día.
  63. #66 Yo lo pensaba pero con el ECMASCRIPT 6 o 2015 han mejorado bastantes cosas y se acerca un poco al estilo de Python.
    Por ejemplo:
    class Student extends Person {
    constructor (name) {
    super(name)
    }}

    vs

    class Student(Person):
    def __init__(self,name):
    self.super(name)

    Perdona la falta de sangrías en Python.
  64. #62 Estoy de acuerdo, pero entiendo que hablamos para una persona de 50 años que entiendo que a estas alturas busca hacerse sus apaños
    VBA se programa casi literalmente solo, y para alguien de 50 años empezando de cero, me parece bien.

    Por supuesto, para un estudiante de informática que quiera dedicarse a eso, le aconsejaría otra cosa, pero cada uno tiene sus necesidades
  65. #8 Se nota que la mayoría de la gente que contestó no ha tenido mucho contacto con C++. Porque el paso de C++ a Java fue como pasar de lavar a mano a la lavadora. Y mira que yo era fan de C++ en su momento (y aún lo sigo siendo bastante de C), para nada un hater.
  66. Al final todo depende del proyecto que quieras realizar, sin tener eso en cuenta, para scripting rápido y one liners en línea de comandos siempre he sido de Perl antes que de Python. Luego siempre que puedo últimamente uso Golang, por la facilidad con la que se usa la concurrencia y por que es super sencillo compilar para Mac, Windows y Linux de una tacada, metiendo todo en el mismo binario y olvidándote de líos de dependencias tan comunes con Python. No veo por qué no aprender a programar con Golang.
  67. #10 Tal vez como anécdota muy bien pero yo empezaría por algo que le sirviera más en la actualidad.
  68. #40 ya, pero no le pidas coherencia a un hipster.
  69. Yo empecé con C utilizando Turbo C allá por el 2001 y gracias a eso y su sintaxis me fue más fácil aprender otros lenguajes. La mayoría de los más utilizados de hoy se basan en él en una u otra forma.

    Como curiosidad la evolución de popularidad de los lenguajes en gráficos en movimiento youtu.be/Og847HVwRSI
  70. #69 Incluso para una persona de 50 años yo le recomendaría Python. A la larga te da más flexibilidad, te obliga a seguir unas pautas de programación más recomendables y es muy fácil de aprender.
    Lo único que los resultados visuales pueden ser un poco más jodidos.
    Aunque sea una persona que lo vaya a hacer por ocio, creo que lo mejor es aprender las cosas bien y sin malos vicios. Con VBA los malos hábitos se cogen muy rápido.

    En mi empresa hay mucho autoaprendizaje y tengo que enfrentarme a código VBA hecho por terceras personas que leerlo es un infierno. Pero en parte, tienes razón que jugando con Excel y VBA puedes llegar a hacer cosillas vistosas rápidamente.
  71. #55 Ada se sigue utilizando. Cada vez que te montas en un avión, hay código en Ada que mantiene tu culo a salvo.
  72. Me ha parecido ver Phython en una de las gráficas ... :wall:
  73. Aprender a programar es aprender C. El resto es aprender un lenguaje que te ayude a meterte en el sector laboral de la programación sin saber programar.
  74. #12 y si le dice ensamblador ya sería despeñarlo directamente por un acantilado. #10 Jamás pensé que alguien recomendara BASIC a día de hoy, más que nada por el uso de instrucciones tipo GOTO que todo el mundo desaconseja. En mi humilde opinión, aconsejaría un lenguage fácil, si puede que sea orientado a objetos y que el que no te den ganas de quitarte la vida, ¿tal vez scratch ? :-D
  75. #76 Sí, pero solo en eso.
  76. #80 No, no sólo en eso. En el ejército hay muchísimo código todavía en Ada también.
  77. lo mejor es empezar con el hello world :-D
  78. #59 A mi utilizar indentacion en lugar de llaves me parece un infierno respecto a la legibilidad.

    Por ejemplo, intentar cambiar json por yaml es la peor moda que he visto ultimamente. Encontrar errores en el yaml es muchisimo mas dificil.

    Encima si tu escenario es aws cloudformation es aun mas doloroso, por que el yaml se valida en aws, con lo cual tienes que empezar un despliegue sin saber si va a funcionar. No hay validadores locales.
  79. #9 Usas TypeScript y listo. No hay más ciego que el que no quiere ver aprender.
  80. #37 vaya simpleza de proncipiante has dicho
  81. #1 Pascal
  82. #79. Tambien tienes el GOSUB en Basic si los saltos incondicionales te escandalizan. . :-D

    Y para perder el tiempo si me das a elegir entre el LOGO de los 80 y el Scratch actual me quedo con el LOGO. :troll:
    ( CC #10 #1)  media
  83. Lo mas curioso es que un gran porcentaje de los que dicen odiar java lo hacen desde el desconocimiento.

    Tirando de los dos argumentos clasicos, uno que la jvm es lenta (ridiculo en 2019), y otro que es sintacticamente feo.

    Anda que no ha cambiando java desde java 8. Lambdas, streams, inferencia local de tipos, esta cambiando statements por expressions, todo muchisimo mas funcional.

    Luego la jvm es suficientemente rica como para tener diferentes lenguajes que se pueden usar a placer. Puedes usar scala con colecciones inmutables si quieres, puedes usar kotlin como punto intermedio...

    A dia de hoy no entiendo la razon objetiva por la que alguien odie java.
  84. #84 Dime uno que no
  85. vaya tela
  86. #86 Llevo programando desde 1997, se me puede achacar muchos defectos, pero desde luego no soy un principiante
  87. #70 a mi me sigue encantando C y C++. Y quizá es costumbre, o nostalgia, o un poco todo, pero Java me causa cierto recelo (aunque también me da de comer)
  88. #92 Principiante en Typescript
  89. Que gente mas triste...
  90. #92 Ok. Con typescript solo llevo 2 o 3 años
  91. #90 Fortress, Txori, Aldor, Dependent ML, Epigram, Cayenne, infinidad de lenguajes variantes de BASIC, OptimJ, ...
    Y action script ya tiene fecha de finalización también y por tanto dejará de evolucionar.

    La inmensa mayor parte de los lenguajes ya no evolucionan, y de los que se crean mueren al poco.
  92. #20 > en teoría WebAssembly promete solucionar este problema de estar casi obligado a usar JavaScript

    Lo que hace la gente con tal de no aprender JavaScript. xD

    #5 Typescript esta muy bien.
  93. #97 Ok. Debí matizar que me refería a los lenguajes que se usan hoy en día. Está claro que si no se usan no evolucionan igual que no se espera que evolucione el latín
«123
comentarios cerrados

menéame