[Duda] ¿Por donde empezar a aprender?

byJoTaeFe

Buenas a todos,

Desde que estaba en el colegio me ha interesado el mundo de los ordenadores, tanto el funcionamiento de programas como el de las páginas web, los videojuegos, las redes sociales, la seguridad informática, etc.

Realmente mi nivel es nivel usuario avanzado, obviamente me desenvuelvo mucho mejor que el usuario medio, y además tengo conocimientos básicos de programación (en general, términos y técnicas) y de hardware (muy básicos), pero sin conocer ningún lenguaje de programación completo.

Sé algo de BATCH y HTML, pero no es gran cosa, y me gustaría avanzar más, por mi cuenta o con algún curso.

¿Por donde podría empezar? ¿Qué lenguajes me recomendaríais? ¿Algún libro/página/programa que pueda ayudar?

Cualquier recomendación me sería de gran ayuda. Gracias por adelantado gente :)

E

La gente entrará y más o menos todos te dirán los lenguajes que crean oportunidos. Unos coincidirán más, otros menos.

Yo te diría que practicaras en un principio desde aquí http://www.codecademy.com/ que trastees, que veas los fundamentos más básicos.

Ahora supongo que te dirán más cositas :)

4 1 respuesta
KooPad

Yo en 4 de la eso empecé a interesarme por la programación y probé bastantes lenguajes y te recomiendo Python al 100%

1 respuesta
byJoTaeFe

#2 Edito: En esa página hice el curso "HTML & CSS" en español, no lo recordaba :3

#3 Creo que algo de Python miré, pero leí que no tenía mucho uso actualmente, no recuerdo bien.

En la ESO empecé con el batch y para hacer trastadas en la biblioteca estaba la mar de bien xD

1 respuesta
T

#4 Si tan autosuficiente quieres ser, podrías probar a aprender a buscar por google.

http://bextlan.com/tutoriales/html5

1 2 respuestas
CarlosML27

Yo te recomendaría Python o C/C++ sin meterme en lo que es objetos (o sea, cosas básicas como entrada/salida, bucles, arrays, strings, etc.).

byJoTaeFe

#5 Ya estoy viendo algo de html en otra página, y también lo ví en code.org, después de buscar en google :)

eXtreM3

#5 ya te has quedado a gusto? Gracias por tu aportación, a nadie se le habría ocurrido.

#1 para empezar, qué quieres aprender a desarrollar? No es lo mismo un lenguaje de escritorio que un lenguaje web. Si bien los fundamentos pueden parecerse mucho, puedes empezar mirando C++, ahí aprenderás todo lo que te hará falta para saltar después a la especialización escritorio/web

1 respuesta
Hipnos

Yo empezaría con javascript, es de lo más versátil que hay a mi parecer.

1 respuesta
byJoTaeFe

#8 A escritorio te refieres por ejemplo C, C#, python, vb.. y a web html, php, javascript, no?

1 respuesta
eXtreM3

#10 sí. Por eso te he recomendado que empieces con C++ para fundamentos y demás, después te será muy fácil pasar a C# o PHP por ejemplo.

Hipnos

Pero javascript no sólo es web jopetas. Que yo en Unity uso javascript xD

Deoxys

Depende de lo que quieras aprender. Para programar sólo necesitas saber lo que es:

variable
operaciones con variables (matemáticas y lógicas)
if
for
while
definición de funciones
clases y objetos (Opcional pero abre muchas puertas)
Uso de librerías externas
(Y si usas python comprensiones, indices de iterables y decoradores)

Con eso puedes hacer el programa que te salga de la nariz, lo puedes aprender sobre la marcha haciendo un proyecto que te guste (Un buscaminas, un hundir la flota o alguna chorrada del estilo). Si quieres echar un ojo a cómo es python (Que es fácil de leer y escribir y está guay para aprender) aquí hay unas diapositivas de una charla que di en la araba. Está muy resumido pero a ojo se puede ver cómo es. Cuando estés cómodo con algún lenguaje y sepas hacer cosas te recomiendo aprender C++, se usa bastante y viene bien conocerlo.

Si quieres hacer webs Puedes tirar por cosas como django o aprender HTML, CSS, PHP, JS y bases de datos y hacerlas a las bravas. Lo primero es fácil y resultón, lo segundo te abre alguna puerta más pero necesita de más práctica y esfuerzo.Lo ideal obviamente es conocer las dos maneras, si tuviera que elegir me metería con la segunda opción y luego usaría la primera para hacer cosas más prácticas.

Sobre libros para aprender... No sé, yo te recomendaría proponerte un proyecto y aprender sobre la marcha. Los libros están bien como referencia pero normalmente aprendes mejor tirando de documentación, si vas capítulo por capítulo leyendo no vas a acordarte de nada cuando acabes. Es mas, si hacer un proyecto mediano (5k líneas) puedes dedicarte a reescribir código cuando acabes, y de ahí puedes aprender otro porrón y medio.

1
gAdrev

No recomiendo empezar con C++. Es un lenguaje que puede complicarse muchísimo y para entrar al mundo creo que hay alternativas mejores. Te vas a empantanar en detalles que cuando estás aprendiendo a progamar no ayudan para nada. Y, además, llegar a manejarse bien en C++ es difícil. Me refiero a C++ de verdad, no a un híbrido C con alguna clase y llamadita a las librerías de C++ aquí o allá.

C tampoco lo recomendaría como primer lenguaje, aunque sí creo que es muy bueno manejarse un poco superado el shock inicial, te enseña los conceptos básicos de cómo funciona un programa a bajo nivel, ya que te aproxima bastante al código máquina final que ejecuta el procesador.

Python que también lo han sugerido otros, sí lo veo más accesible, y además soporta hasta cierto nivel un estilo de programación funcional. Sintaxis clara, librerías potentes, tanto la del propio pyton como externas, y buena documentación. Es una buena opción para empezar, aunque no la única.

1 respuesta
babri

Mírate el curso gratuito de mejorando.la estos tipos son unos cracks y el curos de programación desde 0 es gratis :)

1 respuesta
byJoTaeFe

Vale, por ahora voy a empezar con el curso que me ha dicho #15 que parece chulo y después me miraré Python. Y cuando coja algo de soltura y me desenvuelva bien iré por C++ y de ahí ya se irá viendo.

Gracias a todos. Podéis seguir recomendándome otros lenguajes, cursos, páginas, libros.. Lo que queráis :3

Por cierto, supongo que es preferible que lo que mire sea en inglés antes que en español, me equivoco?

1 respuesta
Ninja-Killer

#16 Para empezar, hay documentación de sobra en español y buena. Pero el inglés te hará falta si te vas a dedicar profesionalmente

M

Yo empecé con Pascal en el grado superior y la verdad es que es un lenguaje que no se utiliza pero es bastante amigable con la sintaxis, además tiene todas las estructuras básicas que te serán útiles en todos los lenguajes.
En el segundo año dimos el salto de Pascal a Java y en otras clases habían hecho C y no sabían casi nada comparado con nosotros.

Como segunda opción a mi personalmente me gusta C, su sintaxis es un poco más complicada pero a cambió el día que quieras saltar a otro lenguaje te será mucho más fácil desde C, ya que probablemente el nuevo lenguaje se parecerá bastante a este.

En resumen, como te han dicho lo más importante no es el lenguaje sino que aprendas los conceptos básicos de la programación y que estarán presentes en todos los lenguajes, después será solo adaptarte a la sintaxis de cualquier lenguaje, cosa que no te llevará más que un par de semanas.

Postmortem

Estoy con #14 , si bien es verdad que si eres capaz de manejar C++ no hay más lenguajes que se te resistan, pero para empezar a programar lo veo un poco locura

Yo empecé con Java, que es algo más facilito, sin embargo estoy con todos y te recomendaría empezar con Python, aprender lo básico de las estructuras de control, manejo de ficheros, practicar un poco y entonces aprender todo lo que esté relacionado con la Programación orientada a Objetos con Python también, y ya a partir de ahí otro lenguaje o no según lo que necesites o lo que te guste

D

#1 Programar en general? como ya te han dicho C es la base de la programación.
Si quieres decantarte por algún área en general, entonces la cosa cambia.

Web: PHP, JS, Java, Python, Ruby, etc
Escritorio: C++, Java, Perl, etc

Lee esto:
https://www.udemy.com/blog/los-mejores-lenguajes-de-programacion-para-aprender-en-2013-los-ocho-magnificos/

Además, cada año va variando el lenguaje más utilizado/buscado/fácil.

1 respuesta
Kaiserlau

#20 Python y Ruby hacen mucho mas q webs porno.

#1 yo empezaria por c para pasar rapidamente a c++. Luego cuando tengas las ideas claras y pensando en lo q mas te gusta hacer, pillar uno u otro lenguaje.

A

Yo te recomendaría lo que seguramente nadie o casi nadie ( que no sea un amigo ) te diría. La realidad... estudia o busca lenguajes que te gusten, con los que te sientas cómodo y para tenerlo de hobby nunca para trabajar. Si por aprender te da igual el lenguaje, disfrutalo, pero si lo haces para trabajar... pffff te van a pedir saber y ser el dios todo porderoso que todo lo sabe, todo perfecto, y será más una carga que un hobby. Haz algo que te guste aunque te dure un año terminarlo, métele tus horas diarias y poco a poco verás que lo haces porque te gusta y no porque es así.

9 días después
sercheador

Yo para empezar a programar iria a por el c++ aqui tienes un tutorial.
http://stmblog.com/curso-basico-de-programacion/

Si te mola el rollo programación web para complementar los conocimientos de html y css tirate al PHP. No me se ninguna web con algun curso en esp, pero si tienes dudas la web stackoverflow (es un foro) hay muchos post buenos.

MTX_Anubis

Yo te recomendaría ruby o python, bajo mi punto de vista dos lenguajes bastante más naturales que el resto. Algo que no te ha dicho nadie también es que mires los conceptos de programación funcional cuando sepas un poquito y le des duro.

#9 JS debe de ser el peor lenguaje del mundo para aprender a programar. Un lenguaje que está roto y lleva a confusiones no puede ser bueno.

1 respuesta
sasher

Nadie le ha dicho el combo que suelen usar la mayoría de universidades? C y Java. Con el primero vas a aprender a usar la memoria y a trabajar con ella. Con el segundo vas a aprender un lenguaje orientado a objetos y sus detalles.

Creo que es de lo mejor para aprender. No es lo mismo aprender Python y después C, que al revés, ya que el primer caso te va a haber moldeado la cabeza de una forma que después te va a costar entender algunos conceptos.

Y añado, que si no es para nada relacionado con trabajo y es una cuestión meramente hobby, no aprendas C++.

#24 JS lleva a confusiones como tu dices, pero recomendar Ruby como primer lenguaje...

1 respuesta
MTX_Anubis

#25 Qué problema tiene? Es un lenguaje muy natural y fácil de entender (que en su interior es complejo pero para aprender a programar no te hace falta saberlo y te la suda). Normalmente una persona que no sabe programar lee algo hecho en ruby y entiende lo que hace porque se fomenta desde el propio lenguaje (ya no solo por la convención).

Escribe un hello world en ruby y otro en c y entenderás lo que te digo.

1 respuesta
sasher

#26 Si, el hello world es un arma muy recurrida por la gente de Ruby para desprestigiar otros lenguajes como C. Pues explícale a alguien que no ha tocado nunca un lenguaje de programación los closures y otras cosas como la forma de programar en Ruby (la ruby way que la llaman), que poco tiene que ver con programar de forma procedural en algún otro lenguaje.

De que sirve aprender a programar en un lenguaje que se autoentiende (aunque hay algunas construcciones que tienen traca) si luego te vas a cualquier otro lenguaje que sigue un modelo totalmente distinto y te rompe los esquemas?

2 respuestas
HeXaN

#27 Además, que primero hay que amueblar la cabeza con los punteros de C. Siempre ha sido así y siempre debería serlo xD

Kaiserlau

Yo empezaria por el mas completo, mas universalizado y el q tenga la mayor cantidad de documentacion disponible no solo con ejemplos del funcionamiento propio del lenguaje. Si c++ se hace un poco piedra las primeras semanas o meses da igual xq no solo estas aprendiendo c++. Pasar de leer python o ruby a ver 1000 lineas de c++ o java duele, pero al reves es una experiencia :santo:
Por cierto para alguien q empieza no hay nada mas dificil q otra.

woq3r

Como página con tutoriales en vivo te recomiendo rubymonk. En principio fue pensada para el lenguaje Ruby, pero googlea un poco que también han sacado de Python y otros.
De los que he probado me pareció el más entretenido.
Y como te dicen, cuando pilles lo básico hazte proyectillos