¿Cómo aprender lenguaje de programación?

1, 2, 3
aperitivo escribió:
faco escribió:
bpSz escribió:Porque programar en vb no es programar?

te voy a responder con otra pregunta:

¿Por qué hacerse una paja no es follar?

o dicho de otra forma ¿quieres el placer inmediato de tener algo que te vale solo para tí o tener la sabiduría de hacer algo que le gusta a los demás?


Gracias por la aclaración, a partir de ahora podre decir que ya no he sido programador gracias a tu sabiduría infinita. 9 años de mi vida que he sido auxiliar adminsitrativo??

Que la programación de VB o C# (por ejemplo) vaya apoyada sobre un framework, un entity o un API o lo que sea no quiere decir que no es programar, que te pone las cosas mas fáciles, pues si, pero de ahí a decir la tontuna que has dicho, hay un paso muy grande.

Yo lo digo porque programar en Visual Basic te pone las cosas demasiado fáciles... y acabas haciendo cosas que solo valen para visual basic. No me parece el mejor punto de partida, porque luego te sacan de ahí y el código se parece lo que un huevo a una castaña... si aprendes un lenguaje más básico o aprendes los fundamentos de la programación... con un poco de práctica te da igual que te pongan Java, C, Visual Basic o lo que sea, que por lo menos entenderás el código (siempre que esté bien estructurado)

por eso digo que aprender Visual Basic no es aprender a programar; es aprender Visual Basic. Si partes de unos conocimientos previos y fundamentales de la programación, pues si te quieres poner a hacer cosas en VB, por mi perfecto... pero no es el mejor punto de partida, creo yo
faco escribió:Yo lo digo porque programar en Visual Basic te pone las cosas demasiado fáciles... y acabas haciendo cosas que solo valen para visual basic. No me parece el mejor punto de partida, porque luego te sacan de ahí y el código se parece lo que un huevo a una castaña... si aprendes un lenguaje más básico o aprendes los fundamentos de la programación... con un poco de práctica te da igual que te pongan Java, C, Visual Basic o lo que sea, que por lo menos entenderás el código (siempre que esté bien estructurado)

por eso digo que aprender Visual Basic no es aprender a programar; es aprender Visual Basic. Si partes de unos conocimientos previos y fundamentales de la programación, pues si te quieres poner a hacer cosas en VB, por mi perfecto... pero no es el mejor punto de partida, creo yo


+1.

Si la idea es aprender a programar y no un lenguaje de programacion un lenguaje bien estructurado y claro es una gran ventaja, y con un entorno cuanto mas reducido mejor, ya vendran los añadidos.
y para que no se diga que me meto con VB para ser guay:

Aprender a hacer cosas en Andriod tampoco es aprender a programar... y eso que es básicamente JAVA.
Te recomiendo este curso online:
https://www.coursera.org/course/interactivepython
con videos, foro de dudas, todo bien mascadito.

Empezó hace un par de semanas y termina dentro de 7 pero no hay problema por empezar más tarde.
faco escribió:Yo lo digo porque programar en Visual Basic te pone las cosas demasiado fáciles... y acabas haciendo cosas que solo valen para visual basic. No me parece el mejor punto de partida, porque luego te sacan de ahí y el código se parece lo que un huevo a una castaña... si aprendes un lenguaje más básico o aprendes los fundamentos de la programación... con un poco de práctica te da igual que te pongan Java, C, Visual Basic o lo que sea, que por lo menos entenderás el código (siempre que esté bien estructurado)

por eso digo que aprender Visual Basic no es aprender a programar; es aprender Visual Basic. Si partes de unos conocimientos previos y fundamentales de la programación, pues si te quieres poner a hacer cosas en VB, por mi perfecto... pero no es el mejor punto de partida, creo yo



faco escribió:y para que no se diga que me meto con VB para ser guay:

Aprender a hacer cosas en Andriod tampoco es aprender a programar... y eso que es básicamente JAVA.



¿En qué quedamos? Programar en Visual Basic no es programar o en que aprender a programar con Visual Basic no es aprender a programar?

Porque si es lo primero estás totalmente equivocado, por razones sumamente obvias. Programar no tiene porque ser difícil, de hecho muchos empezamos a programar con logo, y a facilidad no le supera nadie.

Y si es en lo segundo, eso se podría aplicar a casi cualquier lenguaje o entorno de programación. El que aprende solo Java o C# no va a aprender lo mismo que el que conoce ASM o C. Y así con cualquier lenguaje de programación.
Daré mi opinión desde el punto de vista de sistemas.

No me gusta mucho programar, de hecho, por no tener esa inquietud mis dotes de programar no son destacables, pero sí te puedo decir como aprendí yo.

Para empezar, déjate de frameworks o códigos exclusivos. Aprende a programar en C, con papel y boli, de cabeza. No hace falta que compile en una hoja, pero luego cuando lo lleves al IDE verás los fallos de compilación más fácil.

La mejor forma, como te han dicho, es programando, hacerte códigos pequeños, chapucillas, calculadoras simples, tonterías del estilo, y luego ya vas perfeccionando tu técnica.

También para saber programar debes entender el código, y para eso, va muy bien hacer borradores con pseudocódigo. Entender el pseudocódigo para mí fue crucial para aprender las estructuras de programación.

TL;DR: Aprende C, una vez domines C, los demás lenguajes estarán chupados.
Fuera coñas, yo recomendaría go. Sintaxis simplísima y limpia, sin muchas gilipolleces artificialmente torpes, propias de la OOP pura o de lenguajes de sistemas, recursos y comunidad potente de la mano de google, y muy buen rendimiento.

Recursos: http://www.genbetadev.com/lenguajes-y-p ... -go-golang

Y si eres un freak matemático sin ganas de salir mucho del ámbito teórico: Haskell

PD: La opción de coursera y python también la recomiendo, sobre todo por el formato de coursera, que seguramente ayudará muchísimo
redscare escribió:
faco escribió:
Mistercho escribió:las bases de la programacion me las paso por el forro, vamos que pongo un exit o un return cuando me da la gana, asi como alguna otra barbaridad mas.

Un saludo.

espero que no hagas eso en el trabajo... porque por cosas como esa estoy yo, desde hace un mes intentando arreglar un código que no funciona ni a tiros salvo en un entorno que tarda más de media hora en arrancar (y nadie sabe porqué funciona ahí y no en otros entornos)


El chico es de seguridad y redes y se hace scriptillos de uso propio, no código que haya que mantener o subir a ningún lado. Que haga lo que le salga de la polla, hombre!


Como chico de seguridad y redes ;) , hago scripts de monitorizacion, de inventario y de automatizacion de procesos, y los hago en el trabajo. Piensa que mis codigos no sobrepasan las 100-200 lineas y se intentan hacer lo mas legibles posible, pero....¿desde cuando perl es legible?.

Ademas el uso es pa mi y pa compañeros de grupo, no son criticos, y sirven pa lo que sirven.

Un saludo.
Iknewthat escribió:¿En qué quedamos? Programar en Visual Basic no es programar o en que aprender a programar con Visual Basic no es aprender a programar?

Porque si es lo primero estás totalmente equivocado, por razones sumamente obvias. Programar no tiene porque ser difícil, de hecho muchos empezamos a programar con logo, y a facilidad no le supera nadie.

Y si es en lo segundo, eso se podría aplicar a casi cualquier lenguaje o entorno de programación. El que aprende solo Java o C# no va a aprender lo mismo que el que conoce ASM o C. Y así con cualquier lenguaje de programación.

yo no veo por que te lías con mis comentarios:
Lo que se aprende con Visual Basic no se puede extrapolar a otros lenguajes (las básicas sí, pero las propias de VB, no) por tanto, alguien que SOLO sabe VB está un poco limitado. ¿Alguien que solo sabe VB es un programador? (dicho de otra forma: ¿tiene las mismas facilidades para trabajar en un lenguaje más básico como C o Java, que alquien que haya estudiado las teorías de la programación estructurada (aunque sea en pseudocódigo)?) Pues en términos generales NO; podrá ser un muy buen programador de VB, pero no considero que tenga las bases necesarias...

Java y C tienen la ventaja de que no han añadido demasiadas facilidades al programador. y digo ventaja, porque te obliga a pensar de forma más estructurada, a pensar en cosas que luego te sirven para otros lenguajes. Alguien que venga de lenguajes más básicos, tiene más facilidad para aprender lenguajes más abstractos...

Es como si ahora sacan un framework que evita que escribas 1 sola línea de código... y todo se haga con cajitas, flechas y códigos de colores... ¿Está programando? Pues yo diría que no... Un programador es el que haya creado esas cajitas y esas flechitas...

Y digo VB como podría decir Android... en Android se programa? pues la mayor parte del tiempo NO. Que sí, que tienes el partes en las que hay un poco de negocio y tal... pero es más visual que otra cosa... otra cosa es que te dediques a programar vistas de android desde cero y no usar las que ya te vienen hechas... pero eso ya no lo considero programar en Android... es más bien, programar en JAVA elementos para Android...

Mistercho escribió:Como chico de seguridad y redes ;) , hago scripts de monitorizacion, de inventario y de automatizacion de procesos, y los hago en el trabajo. Piensa que mis codigos no sobrepasan las 100-200 lineas y se intentan hacer lo mas legibles posible, pero....¿desde cuando perl es legible?.

Ademas el uso es pa mi y pa compañeros de grupo, no son criticos, y sirven pa lo que sirven.

Un saludo.

pues cuando te vayas del trabajo y le toque a otro revisar tu código, que no te extrañe si te pitan los oídos... yo puedo programar un proceso y ponerlo todo en la misma línea, poner los exit y los break donde me salga del nabo y seguramente el código funcione y no me digan ni mu... ahora, me voy de la empresa y ese código lo hereda un compañero de profesión y seguro que se caga en toda mi descendencia...

Conclusión: Nunca hagas nada que solo entiendas tú...
Bereton está baneado por "Clon de usuario baneado"
Yo creo que me trolleáis, la verdad, porque no es normal hablarle de códigos, sintaxis, scripts o frameworks a un tipo que hasta este momento sólo ha usado el ordenador para navegar por Internet. [+risas]

En fin, la conversación que habéis mantenido y mis propias indagaciones por Internet me han servido para percatarme de que la programación no es lo mío, no es la informática un ámbito en el que yo pueda destacar. No obstante, me siento obligado a aprender al menos algunas nociones básicas aunque sólo sea por una cuestión cultural; pienso que la informática va a convertirse a lo largo del presente siglo en lo mismo que la filosofía en la antigua Grecia, el derecho en la antigua Roma o la economía en la actualidad: una herramienta esencial e indispensable para comprender el mundo. Quien no sepa nada de informática en el año 2100 será poco menos que un analfabeto funcional. Aunque sólo sea por este motivo, voy a inscribirme en el curso de Python que me ha recomendado un usuario. Si no puedo llegar a leer a Tolstoi en idioma ruso, al menos sí quiero entender el alfabeto cirílico.

Muchas gracias por el interés que habéis mostrado en ayudarme, sabía que no erraría en preguntar aquí sobre un tema de informática. Ya os digo que estoy convencido de que el vertiginoso progreso tecnológico que vivimos en la actualidad hace que foros como este sean algo análogo a lo que eran las escuelas de filosofía en la antigua Grecia o las de juristas en la antigua Roma: lugares donde se reúnen los sabios de la época presente.
faco escribió:Lo que se aprende con Visual Basic no se puede extrapolar a otros lenguajes (las básicas sí, pero las propias de VB, no) por tanto, alguien que SOLO sabe VB está un poco limitado. ¿Alguien que solo sabe VB es un programador? (dicho de otra forma: ¿tiene las mismas facilidades para trabajar en un lenguaje más básico como C o Java, que alquien que haya estudiado las teorías de la programación estructurada (aunque sea en pseudocódigo)?) Pues en términos generales NO; podrá ser un muy buen programador de VB, pero no considero que tenga las bases necesarias...


Casi siempre programo en assembler, motorola x86, z80... y llevo un rato dandole vueltas a tu comentario... explicame como "extrapolo" mis conocimientos de ASM a otros lenguajes...

Y la verdad que ni idea de como programar en C, Java, Python, etc etc etc...

Soy programador?
Bereton escribió:Yo creo que me trolleáis, la verdad, porque no es normal hablarle de códigos, sintaxis, scripts o frameworks a un tipo que hasta este momento sólo ha usado el ordenador para navegar por Internet. [+risas]

En fin, la conversación que habéis mantenido y mis propias indagaciones por Internet me han servido para percatarme de que la programación no es lo mío, no es la informática un ámbito en el que yo pueda destacar. No obstante, me siento obligado a aprender al menos algunas nociones básicas aunque sólo sea por una cuestión cultural; pienso que la informática va a convertirse a lo largo del presente siglo en lo mismo que la filosofía en la antigua Grecia, el derecho en la antigua Roma o la economía en la actualidad: una herramienta esencial e indispensable para comprender el mundo. Quien no sepa nada de informática en el año 2100 será poco menos que un analfabeto funcional. Aunque sólo sea por este motivo, voy a inscribirme en el curso de Python que me ha recomendado un usuario. Si no puedo llegar a leer a Tolstoi en idioma ruso, al menos sí quiero entender el alfabeto cirílico.

Muchas gracias por el interés que habéis mostrado en ayudarme, sabía que no erraría en preguntar aquí sobre un tema de informática. Ya os digo que estoy convencido de que el vertiginoso progreso tecnológico que vivimos en la actualidad hace que foros como este sean algo análogo a lo que eran las escuelas de filosofía en la antigua Grecia o las de juristas en la antigua Roma: lugares donde se reúnen los sabios de la época presente.

Hombre, por la conversación difícilmente te vas a percatar de que la programación no es lo tuyo. Esto es como en todo. Si te quieres meter a aprender guitarra y la peña se pone a discutir que si empieces con una Ibanez electroacústica, otro que te pilles una Yamaha con ampli a válvulas y otro que mejor que empieces por una Sonora cutre, que si empieza por ejercicios de pentatónica, o de bending, o mejor de hammer on y pull off, pues acabas hasta la polla. Al final ignoras a todos y lo haces como te salga del cimbrel, aunque sea el peor modo.

A mí el consejo de empezar con Python me parece bueno. Y, como el que aprende inglés, no empieza con frases complejas. El que aprende programación empieza con ejercicios simples. Por ejemplo, cuando sepas cómo funcionan los bucles y las sentencias condicionales, intenta hacer un programilla para que, dado un número, te calcule si es primo o no. Cosillas así. Al principio metiendo el número a pelo, y luego permitiendo la entrada del número por teclado.

Si te gusta utilizar la lógica lo acabarás viendo casi como un pasatiempo, como un reto.
A mí C me parece un buen lenguaje para empezar, después te resultará más fácil aprender C++, C# o Java, porque la sintaxis es muy parecida.

Eso sí, al menos al principio cualquier programa que vayas a hacer lo mejor es que lo pienses bien, lo escribas en papel (en pseudocódigo o C) y después lo implementes en el ordenador.
Para mi EL lenguaje de programacion es C++. Potencia bruta si le quieres sacar beneficio (porque va desde bajo nivel, puedes incluso meter ensamblador) hasta alto nivel con OOP.

Pero claro, para alguien que no se vaya a dedicar a programar (yo mismo) no se lo recomendaria ni harto vino. Si es solo como hobby: Visual Basic, Python, Java o lo que quieras pero sencillo. No te compliques la vida, o en todo caso, ya te la complicaras si se te quedan cortos esos lenguajes.

Aprender Visual Basic ademas esta bien para hacer macros en Office, que eso si te puede ahorrar tiempo en tu dia a dia.

PD: en C tienes que usar punteros desde el primer dia si o si (paso de argumentos por referencia). Yo no empezaria por C...
releyendo tu post principal te suguiero pseudocodigo y mogollon de ordinogramas, luego el lenguaje es lo de menos.
theelf escribió:
faco escribió:Lo que se aprende con Visual Basic no se puede extrapolar a otros lenguajes (las básicas sí, pero las propias de VB, no) por tanto, alguien que SOLO sabe VB está un poco limitado. ¿Alguien que solo sabe VB es un programador? (dicho de otra forma: ¿tiene las mismas facilidades para trabajar en un lenguaje más básico como C o Java, que alquien que haya estudiado las teorías de la programación estructurada (aunque sea en pseudocódigo)?) Pues en términos generales NO; podrá ser un muy buen programador de VB, pero no considero que tenga las bases necesarias...


Casi siempre programo en assembler, motorola x86, z80... y llevo un rato dandole vueltas a tu comentario... explicame como "extrapolo" mis conocimientos de ASM a otros lenguajes...

Y la verdad que ni idea de como programar en C, Java, Python, etc etc etc...

Soy programador?

¿Cuándo he hablado yo de ensamblador? yo estoy hablando de lenguajes de programación estructurados... programar en ensamblador no tiene ni punto de comparación... son dos ligas completamente distintas... de hecho no parten ni de los mismos conceptos... (aunque por debajo un lenguaje estructurado se traduzca en lenguaje máquina)

¿Eres programador? Pues sí... pero no de lenguajes estructurados... cuando programas en Java (que es sobre la que tengo más experiencia) no tienes que preocuparte de reservar memoria ni de la arquitectura de la máquina que lo ejecuta... Los lenguajes de programación estructurados son otra cosa completamente distinta...

Para hacer una analogía (que me encantan) Si Java es una pera, el lenguaje ensamblador es el peral... C sería otra pera, python supongo (no lo conozco) sería otra pera...

Puedes comparar una pera con otra pera... pero comparar una pera con un árbol...
Viendo el patio, me extraña que no haya venido nadie a decir que si no es con tarjetas perforadas eso no es programar sino mariconadas modernas que te lo ponen todo muy fácil. [+risas]

Cuanto taliban, por dios!! [carcajad]
redscare escribió:Viendo el patio, me extraña que no haya venido nadie a decir que si no es con tarjetas perforadas eso no es programar sino mariconadas modernas que te lo ponen todo muy fácil. [+risas]

Cuanto taliban, por dios!! [carcajad]

Se programa con el Paint, lo demás son mariconadas.
Imagen
faco escribió:¿Cuándo he hablado yo de ensamblador? l.......



Pues, digas lo que digas, yo aun no se como extrapolar mis conocimientos a otros lenguajes, por mas que me rompa la cabeza

Este codigo lo estaba optimizando la semana pasada... ya me diras, por donde comienzo en C....

   add.w   d1,d0
   move.w   d2,d1
   lsl.l   #3,d0
   lsr.w   #2,d0
   swap   d0
   add.l   (gfpn),d0
   move.w   #$8F02,4(a4)



Entonces, si yo soy programador, como dices, pero no puedo llevar mis conocimientos a otros lenguajes, pues, no se la diferencia con alguien que programa en VisualBasic, de nuevo, como dices tu

Ah, pues, si, que al menos, si programas en VisualBasic, tienes una mejor base para moverte a otros lenguajes luego, que en asm
Bereton escribió:Yo creo que me trolleáis, la verdad, porque no es normal hablarle de códigos, sintaxis, scripts o frameworks a un tipo que hasta este momento sólo ha usado el ordenador para navegar por Internet. [+risas]


Es que no es normal. Es más, un buen profesor de programación lo último que te manda hacer es picar código.

Como ya han apuntado varios usuarios, no hay nada mejor para aprender a programar que papel y lápiz. El lenguaje de programación no es más que una herramienta, aunque sí es cierto que algunos lenguajes son inapropiados cuando no tienes ni idea de programación estructurada. Lo importante es que aprendas bien a razonar como un programador, a partir de esa base podrás aprender el lenguaje que te dé la gana, y eso se hace con papel y lápiz y GOMA, mucha goma de borrar xD

En cuanto a aprender con Python ni idea, aunque he leído buenas opiniones de gente que ha aprendido así (yo pienso que Python es muy positivo en este aspecto, y es que crea buenos hábitos por el tema de la indentación del código). Yo personalmente aprendí con Pascal y también me pareció muy apropiado para empezar.

Ánimo ;)
Se nota que la gente tiene ganas de una guerra de lenguajes. Ya sabéis, cread el hilo que yo me apunto encantado xD

Aprender a programar con C es una mierda de consejo. Además de que te va a introducir detalles peliagudos de los ordenadores que alguien por hobby no tendría porque tomarse nunca la molestia de aprender, hay demasiado tutorial o referencias de C por ahí que son pura basura. Además, C no es un lenguaje nada simple, es extenso, y cuando se va más allá de hacer programitas de 50 líneas en la consola, es muy fácil acabar disparándose al propio pié si no se tiene el conocimiento adecuado. Y bueno, realmente impone una manera de programar bastante arcaica, contraintuitiva y verbosa. Solo tiene sentido si se quiere empezar a hacer carrera académica en la informática y poco más.
Hyde92 escribió: Yo personalmente aprendí con Pascal y también me pareció muy apropiado para empezar.

Ánimo ;)


Pascal es dios!! jeje, lo aprendi justo despues de Basic, porque me habian pasado el compilador para dos, turbo pascal, y en aquella epoca, no era facil de conseguir ese material, asi que habia que aprobechar

Nunca voy a olvidar, cuando me compre el DIV2 (alguien se acuerda??) y todos esos conocimientos olvidados de pascal volvieron a la vida!!

Que grande el DIV game studio...
theelf escribió:Nunca voy a olvidar, cuando me compre el DIV2 (alguien se acuerda??) y todos esos conocimientos olvidados de pascal volvieron a la vida!!

Que grande el DIV game studio...


E aquí su sucesor: http://www.bennugd.org/es
Elelegido escribió:E aquí su sucesor: http://www.bennugd.org/es


mm.....interesantisimo, gracias. Habia ecuchado algo por ahi, pero no tuve tiempo de verlo

Si me coje el codigo del DIV2 original sin demasiados cambios, o sin cambios, pues, va a ser lo maximo, porque aun sigo programando en DIV2 cuando tengo algun tiempito libre en el 486

Va a descarga
theelf escribió:
Elelegido escribió:E aquí su sucesor: http://www.bennugd.org/es


mm.....interesantisimo, gracias. Habia ecuchado algo por ahi, pero no tuve tiempo de verlo

Si me coje el codigo del DIV2 original sin demasiados cambios, o sin cambios, pues, va a ser lo maximo, porque aun sigo programando en DIV2 cuando tengo algun tiempito libre en el 486

Va a descarga


Que va, ha cambiado mucho con el tiempo, aunque hay cosas muy similares.
faco escribió:
Mistercho escribió:Como chico de seguridad y redes ;) , hago scripts de monitorizacion, de inventario y de automatizacion de procesos, y los hago en el trabajo. Piensa que mis codigos no sobrepasan las 100-200 lineas y se intentan hacer lo mas legibles posible, pero....¿desde cuando perl es legible?.

Ademas el uso es pa mi y pa compañeros de grupo, no son criticos, y sirven pa lo que sirven.

Un saludo.

pues cuando te vayas del trabajo y le toque a otro revisar tu código, que no te extrañe si te pitan los oídos... yo puedo programar un proceso y ponerlo todo en la misma línea, poner los exit y los break donde me salga del nabo y seguramente el código funcione y no me digan ni mu... ahora, me voy de la empresa y ese código lo hereda un compañero de profesión y seguro que se caga en toda mi descendencia...

Conclusión: Nunca hagas nada que solo entiendas tú...


Es que el otro que entre no tiene que revisar mi codigo, si la cosa cambia que se monte su propio script o que con el mio, QUE TIENE COMENTARIOS, utilize lo que le venga bien. De la misma manera que yo utilizo scripts que me encuentro en internet y los puedo entender perfectamente. Te repito que no estoy programando, estoy haciendo scripts.

Puedes decir lo que quieras sobre programas estructurados, ahora vas y me lo haces en perl.

Un saludo.
Elelegido escribió:Que va, ha cambiado mucho con el tiempo, aunque hay cosas muy similares.



Que pena! por ahora, lo que compilo en DIV2 de DOS, si lo quiero ejecutar en windows, tiro de Fenix, que ya esta bien, claro, que se quedo algo anticuado
Lo estais enfocando mal en mi opinion, no se trata de que lenguaje es mas facil, mas potente, etc...Eso da igual, yo empece con C, PHP, java y luego Python (este es bastante sencillo de "leer"). Y fue estudiando Python cuando un profesor nos OBLIGO literalmente a apagar los ordenadores y a hacer a papel y boli los programas, a plasmar la idea, a estructurarlo, a intentar que tuviera solidez, a simplificarlo todo bien para que consumiera lo minimo, etc...Nos pasamos asi bastantes semanas y la diferencia luego fue abismal, a lo mejor tardabamos media hora o 3 cuartos en hacer el programa a boli, pero luego lo picabamos a codigo y tardabamos 5 minutos. Lo que me costaba hacer en C, PHP, o Java en su dia por malos habitos ya no me cuesta en absoluto.

Y eso creo que deberia ser la forma de empezar, papel, boli y a pensar, el lenguaje sera depende de para lo que quieras, algunos tienen pros y cons, como todo.
theelf escribió:
Hyde92 escribió: Yo personalmente aprendí con Pascal y también me pareció muy apropiado para empezar.

Ánimo ;)


Pascal es dios!! jeje, lo aprendi justo despues de Basic, porque me habian pasado el compilador para dos, turbo pascal, y en aquella epoca, no era facil de conseguir ese material, asi que habia que aprobechar

Nunca voy a olvidar, cuando me compre el DIV2 (alguien se acuerda??) y todos esos conocimientos olvidados de pascal volvieron a la vida!!

Que grande el DIV game studio...


Gracias por hacerme sentir joven [+risas]
faco escribió:
Iknewthat escribió:¿En qué quedamos? Programar en Visual Basic no es programar o en que aprender a programar con Visual Basic no es aprender a programar?

Porque si es lo primero estás totalmente equivocado, por razones sumamente obvias. Programar no tiene porque ser difícil, de hecho muchos empezamos a programar con logo, y a facilidad no le supera nadie.

Y si es en lo segundo, eso se podría aplicar a casi cualquier lenguaje o entorno de programación. El que aprende solo Java o C# no va a aprender lo mismo que el que conoce ASM o C. Y así con cualquier lenguaje de programación.



yo no veo por que te lías con mis comentarios:



No me lío, te pregunto sobre las dos premisas que tú mismo has presentado.

Lo que se aprende con Visual Basic no se puede extrapolar a otros lenguajes (las básicas sí, pero las propias de VB, no) por tanto, alguien que SOLO sabe VB está un poco limitado. ¿Alguien que solo sabe VB es un programador? (dicho de otra forma: ¿tiene las mismas facilidades para trabajar en un lenguaje más básico como C o Java, que alquien que haya estudiado las teorías de la programación estructurada (aunque sea en pseudocódigo)?) Pues en términos generales NO; podrá ser un muy buen programador de VB, pero no considero que tenga las bases necesarias...



Ahora estás alterando dichas premisas.

Tú decías que alguien que programa en VB no es PROGRAMADOR. Cuando dicha premisa se cae por su propio peso.

Alguien que programa en VB es un buen programador si cumple con sus objetivos establecidos.


Poniendo un ejemplo futbolero, para que lo entiendas.

¿Es un portero un buen jugador de fútbol? Sí, si le pones de portero. Y no lo será seguramente si le pones a jugar de delantero.

Java y C tienen la ventaja de que no han añadido demasiadas facilidades al programador. y digo ventaja, porque te obliga a pensar de forma más estructurada, a pensar en cosas que luego te sirven para otros lenguajes. Alguien que venga de lenguajes más básicos, tiene más facilidad para aprender lenguajes más abstractos...

Es como si ahora sacan un framework que evita que escribas 1 sola línea de código... y todo se haga con cajitas, flechas y códigos de colores... ¿Está programando? Pues yo diría que no... Un programador es el que haya creado esas cajitas y esas flechitas...


Hay lenguajes de programación que funcionan con 'cajitas'. Ejemplo: Labview. Alguien que programa con eso SÍ ES UN PROGRAMADOR. Y si además cumple con sus objetivos, es UN BUEN PROGRAMADOR.


Y digo VB como podría decir Android... en Android se programa? pues la mayor parte del tiempo NO. Que sí, que tienes el partes en las que hay un poco de negocio y tal... pero es más visual que otra cosa... otra cosa es que te dediques a programar vistas de android desde cero y no usar las que ya te vienen hechas... pero eso ya no lo considero programar en Android... es más bien, programar en JAVA elementos para Android...


Te remito a mis anteriores comentarios, porque por lo que veo tienes una confusión bastante grande con lo que significa programar.


faco escribió:Para hacer una analogía (que me encantan) Si Java es una pera, el lenguaje ensamblador es el peral... C sería otra pera, python supongo (no lo conozco) sería otra pera...

Puedes comparar una pera con otra pera... pero comparar una pera con un árbol...


Jerarquizar Java por debajo de ASM no tiene ningún sentido.. Ensamblador sería en tal caso otra pera. Y java una manzana, porque se compila en un bytecode que se ejecuta solamente en su propia VM. C, Asembler y otros lenguajes se compilan en código a ejecutarse sobre una arquitectura completa. X86 sería un peral, y C y ASM sus peras. .NET sería un naranjo, y C#, VB.NET y otros que compilan en bytecode .net serían sus naranjas.
Hay varios paradigmas y mil lenguajes de todas las formas y colores creados para cualquier tipo de objetivo, entre ellos el de aprender a programar.

Si sólo quieres pasar el rato y tener una noción de cómo funciona el tema hasta podrías tocar alguno tipo Scratch. Éste en concreto se suele usar para chavales pequeños, es muy visual, pero te serviría para empezar a pensar de forma lógica tal y como haría un programador.

Si quieres ir a algo más serio pero sin seguir enredándote demasiado también te recomendaría alguno tipo Python, Ruby y similares. Hay varios tutoriales por la red e intérpretes online, creo que ya te han puesto alguno.

Y supongo que lo que sobre todo te interesa es aprender a programar, no tanto aprender un lenguaje de programación. Deberías pillar algún libro de fundamentos y pelearte haciendo pseudocódigo en papel.
Joder Iknewthat, eres un agricultor de la puta madre, yo ni idea de como explicar esas cosas con analogias, gracias


Comenze a programar a mediados de los 80, en aquella epoca todo era mas facil, ahora hay demasiados lenguajes, y cosas raras, ya me pierdo

A mi dame basic, assembler, pascal y alguna cosa mas y ya estoy contento

Y el VisualBasic cuando tengo que programar alguna GUI, que no me lia [+risas]



Sobre el pseudocodigo, (nunca habia usado esta palabra creo), en tiempos remotos [+risas] escribia mucho en papel, ahora realmente, ya tiro directamente de memoria, me hago una idea de lo que quiero, y comienzo a tipear

Pero si que viene bien apuntarse la idea global, y hacer un poco de codigo imaginario en los tiempos libres, cuando no estas delante del ordenador



redscare si no comenzastes a programar en los 70, sientete joven!! si no, lo siento, ya estas medio viejo :)
Estas discusiones me recuerdan

Imagen


A ver quien la tiene mas larga o es mas guay que el otro.
blindcube escribió:Estas discusiones me recuerdan

Imagen


A ver quien la tiene mas larga o es mas guay que el otro.


donde este emacs que se quite lo demas.

Y hablando de emacs, nadie le ha recomendado aun usar clisp para aprender a programar xD
blindcube escribió:Estas discusiones me recuerdan

Imagen


A ver quien la tiene mas larga o es mas guay que el otro.

Totalmente.
Por otro lado y para incitar al flame, me hare eco de unas palabras del gran Edsger Dijkstra, que algo sabe del tema

It is practically impossible to teach good programming to students that have had a prior exposure to BASIC: as potential programmers they are mentally mutilated beyond hope of regeneration.
blindcube escribió:Estas discusiones me recuerdan

Imagen


A ver quien la tiene mas larga o es mas guay que el otro.

Por eso casi nunca entro a este tipo de hilos. Entre los que recomiendan el lenguaje que más les gusta, los que recomiendan el lenguaje más potente y los que recomiendan el más difícil, no sé quién pone más de su parte para joder al que ha hecho la pregunta.
Peklet escribió:
blindcube escribió:Estas discusiones me recuerdan

Imagen


A ver quien la tiene mas larga o es mas guay que el otro.

Por eso casi nunca entro a este tipo de hilos. Entre los que recomiendan el lenguaje que más les gusta, los que recomiendan el lenguaje más potente y los que recomiendan el más difícil, no sé quién pone más de su parte para joder al que ha hecho la pregunta.



Ante preuntas de este tipo, siempre hay que recomendar el mas facil, y con resultados mas inmediatos

No se xq la gente se complica tanto
faco escribió:Es como si ahora sacan un framework que evita que escribas 1 sola línea de código... y todo se haga con cajitas, flechas y códigos de colores... ¿Está programando? Pues yo diría que no... Un programador es el que haya creado esas cajitas y esas flechitas...


Me cagoentoloquesemenea!! Eso no me lo dices en la calle!! [+risas] [+risas] [+risas]

Ya en serio, tienes una mente muy cerrada. Mirate OpenESB, BusinessWorks, BPEL, iProcess, Aqualogic... Todo frameworks SOA y/o BPM para programación de flujos de orquestación de servicios o de procesos de negocio. Programación Orientada a Cajas que digo yo siempre. Y no solo se programa, sino que los sueldos para los que pican con dichos productos son más altos que la media ;)
A lo mejor me meto en fregaos que no me llaman, no me he leido toda la conversación

Yo soy programador y empecé con C. Es verdad que C te enseña una base de conocimientos bastante buena, pero para hacer "programas visuales" no es lo adecuado, si quieres algo sencillisimo y que puedas usar aplicaciones tuyas en tu día a día y que tengan interfaz "bonita" yo me iría a la plataforma .Net
Elbos-Rod escribió:A lo mejor me meto en fregaos que no me llaman, no me he leido toda la conversación

Yo soy programador y empecé con C. Es verdad que C te enseña una base de conocimientos bastante buena, pero para hacer "programas visuales" no es lo adecuado, si quieres algo sencillisimo y que puedas usar aplicaciones tuyas en tu día a día y que tengan interfaz "bonita" yo me iría a la plataforma .Net



Na, no te metes en fregaos de nada ;)

Simplemente estás en la línea de lo que decimos la mayoría. Un lenguaje no deja de ser una herramienta, y para determinadas tareas unas herramientas son siempre más adecuadas que otras.

Aquí hay fanáticos de las llaves allen que creen que las llaves inglesas no sirven para nada. O que es mejor picar con pico y pala que con una excavadora.
Prueba algo de esto. No se si lo habrán dicho ya.
http://www.codecademy.com/
empieza por C como hemos hecho todos
Necseron escribió:empieza por C como hemos hecho todos


Te quieres creer que di dos asignaturas en las que se veía algo de C y jamás llegué a entender bien los punteros?? [+risas]

Viva Java y el Garbage Collector!! [carcajad]
redscare escribió:
Necseron escribió:empieza por C como hemos hecho todos


Te quieres creer que di dos asignaturas en las que se veía algo de C y jamás llegué a entender bien los punteros?? [+risas]

Viva Java y el Garbage Collector!! [carcajad]

Los punteros son complicados la primera vez que lo ves... Cuando programas en iPhone es una fiesta... TODO es un puntero xDD
redscare escribió:
Necseron escribió:empieza por C como hemos hecho todos


Te quieres creer que di dos asignaturas en las que se veía algo de C y jamás llegué a entender bien los punteros?? [+risas]

Viva Java y el Garbage Collector!! [carcajad]

yo empece con C hace 4 meses, pero los tutoriales que he visto se han quedado cortos, vamos que no son muy explicativos y estaba pensando en pillarme un par de libros de C y mirarme un poco de Python o C++
No entiendo, de verdad, por qué os empeñáis en recomendar C a una persona que quiere aprender a programar por diversión, no por obligación, sin haber tocado ningún lenguaje de programación en su vida.

Creo que no lo han dicho, pero junto con Python también recomendaría Ruby:

http://tryruby.org/levels/1/challenges/0
vicodina escribió:Lo estais enfocando mal en mi opinion, no se trata de que lenguaje es mas facil, mas potente, etc...Eso da igual, yo empece con C, PHP, java y luego Python (este es bastante sencillo de "leer"). Y fue estudiando Python cuando un profesor nos OBLIGO literalmente a apagar los ordenadores y a hacer a papel y boli los programas, a plasmar la idea, a estructurarlo, a intentar que tuviera solidez, a simplificarlo todo bien para que consumiera lo minimo, etc...Nos pasamos asi bastantes semanas y la diferencia luego fue abismal, a lo mejor tardabamos media hora o 3 cuartos en hacer el programa a boli, pero luego lo picabamos a codigo y tardabamos 5 minutos. Lo que me costaba hacer en C, PHP, o Java en su dia por malos habitos ya no me cuesta en absoluto.

Y eso creo que deberia ser la forma de empezar, papel, boli y a pensar, el lenguaje sera depende de para lo que quieras, algunos tienen pros y cons, como todo.


Y es cierto, pero esa no debería ser la forma de empezar. Tiene sentido que cojas papel y boli y hagas tus programas y trates de optimizarlos cuando sabes cómo funciona todo. Pero empezar con papel y boli a programar es como recomendarle a alguien que está aprendiendo a tocar el piano que la mejor forma de empezar es que coja papel y boli y se ponga a escribir notas y a pensar la forma de que suenen bien.

Para mí eso debería estar en un punto medio. Lo primero que empiece con lo más simple y con lo que hemos empezado todos, sentencias simples, bucles, resolver problemas matemáticos, etcétera. Esa es la mejor forma de empezar y de coger soltura en la programación. Cuando ya no tengas problemas con eso, ya es el momento de empezar a hacer cosas más complejas y hacer nuestras chapucillas. Y cuando ya poco a poco vayas exigiéndote hacer algo mejor, pues es entonces cuando coges papel y boli y empiezas a estructurar y plasmar una idea.

Yo recomendaría Java o Python como han dicho, y a tirar por lo más simple. Aunque algo que ninguno ha recomendado es PHP (ya, sé que tiene bastantes detractores), es bastante sencillo de aprender y se hace bastante ligero porque en poco tiempo puedes empezar a tener resultados visibles, cosa que al principio anima bastante.

Ya al autor solo le puedo recomendar que revise y se informe un poco de los lenguajes que les han recomendado y que elija algo para empezar. Y que no se preocupe, puesto que en cualquier momento puede elegir cambiar y probar con otro.
Yo empecé con visual basic, haciendo una calculadora pero, por recomendación, me fui a python. He estado bastante tiempo aprendiendo con codecademy y buscando informacion en otras webs cosas que me interesaban. Para mí lo mejor del mundo son las librerías, puedes hacer grandes y útiles cosas usando librerías. Con tanto código ya escrito por otros (especialmente cosas que solo no podrías hacer, como gestionar el portapapeles de windows), programar se convierte en mover cajitas de scratch. Hablando de scratch, mucho diréis que es de niños, pero para los primeros días desearía haberlo conocido. El curso de Edx, de hecho, empezaba con scratch.

La parte más práctica de la programación, creo que son los microcontroladores. Ahora me estoy involucrando en este mundo gracias a arduino (y de paso aprendo lo básico de C). Nada más gratificante que programarse un reloj o un sistema de domótica.

Aprovecho para preguntar. Estoy en 4º ESO y tengo constancia de que en Bach se dará Basic (seguramente con VB). ¿Qué tan jodido académicamente está el centro? Sé por experiencia que NO es un buen lenguage y menos para aprender.
106 respuestas
1, 2, 3