• Compra una licencia de Windows 10/11 (10€) u Office (18€) al mejor precio u Office al mejor precio con CDKeyoffer. Entra en este post con las ofertas
  • ¡Bienvenid@! Recuerda que para comentar en el foro de El Chapuzas Informático necesitas registrar tu cuenta, tardarás menos de 2 minutos y te dará valiosa información además de ayudarte en lo que necesites o pasar un rato agradable con nosotros.

un novato necesita ayuda

Hola muchachos y con permiso del dueño pregunto lo siguiente, ya que en un periodo corto de tiempo(espero que sea corto)empezare un curso de programacion, hace unos meses estuve en los cursos de codecademy y ya compete dos de estos:
HTML Y CSS.
Ahora la duda que tengo, ¿esto es necesario para la programacion de aplicaciones, o solo se aplica al Diseño Web?.
Y otra duda mas, con que recomiendan empezar para la programacion,¿con python, o hay algo mas sencillo primero?.

Saludos.

1. HTML Y CSS son efectivamente para diseño web.
2. Yo te recomiendo Python, es fácil.
 
  • HTML es estructura para una página web.
  • CSS es diseño para la página web.
  • JavaScript es dinamismo y funcionalidad en la parte visual.
  • PHP es dinamismo y funcionalidad en la aplicación: registro de usuarios, inicio de sesión, subir ficheros, guardar documentos. Sustituye por Python, Ruby, Java o el lenguaje de tu elección.
  • MySQL es para almacenar los datos de la aplicación. Sustituye por MariaDB, PostgreSQL, MongoDB o la base de datos de tu elección.

Dicho esto, no cogería Python para aprender, ya que es un lenguaje muy particular (variables débilmente tipadas, herencia múltiple...). El lenguaje que te abre más caminos es Java porque te permite lado servidor, escritorio y móvil, pero ya es cuestión de gustos y preferencias.
Empezar con Python es una buena idea. Hacerlo con Java, no.

Python te abstrae de muchas cosas que no te interesan al aprender a programar y te permite centrarte en lo importante, que es pensar de forma estructurada, diseñar algoritmos y trasladarlos a código.

Empezar a programar en Java supone que tienes que aprender muchas cosas que no necesitas para escribir la primera línea: lo que es una clase, un objeto, un método, lo que significa static, por qué hay 7 líneas y esto no hace nada, por qué hay que instalar esto...

Demasiada fricción cognitiva.

Alguien que empieza debería centrarse en lo que es una variable, un if, un while y algunas otras cosas más. Cosas básicas que permiten APRENDER. Lo de la herencia múltiple, a alguien que empieza le importa poco o nada. El concepto de herencia, en general, para aprender a programar es irrelevante. Los tipos de datos se pueden añadir más adelante, no hay problema con ello. La gente no suele tener problemas con eso, una vez saben escribir código que funcione.
 
Última edición:
O sea que python, un lenguaje que te lo da todo lo simple más que mascado y con ninguna similitud con respecto al resto de lenguajes que se usan a día de hoy es mejor para aprender? Python es lo mejor para aprender... pero para aprender sólo Python. El for de Python no te enseña a hacer un for "normal", la encapsulación brilla por su ausencia, herencia múltiple que es de lo más confuso que existe en la programación, no hace apenas uso de constructor (se usa el init), no hay una estructura bien defiinida como en otros lenguajes... Y lo peor de todo a la hora de aprender, el tipado de las variables es débil, lo que te permite hacer autenticas aberraciones y, al no saber, no tener ni idea de por qué no obtienes el resultado esperado. Para resolver un problema, no te vale con saber la tabla de multiplicar, hay que saber seguir un método de resolución. Python es un lenguaje sencillo, pero demasiado potente para aprender más allá del if y el while... Si quieres ser piloto de fórmula 1 no puedes aprender con un coche automático.
 
O sea que python, un lenguaje que te lo da todo lo simple más que mascado y con ninguna similitud con respecto al resto de lenguajes que se usan a día de hoy es mejor para aprender? Python es lo mejor para aprender... pero para aprender sólo Python. El for de Python no te enseña a hacer un for "normal", la encapsulación brilla por su ausencia, herencia múltiple que es de lo más confuso que existe en la programación, no hace apenas uso de constructor (se usa el init), no hay una estructura bien defiinida como en otros lenguajes... Y lo peor de todo a la hora de aprender, el tipado de las variables es débil, lo que te permite hacer autenticas aberraciones y, al no saber, no tener ni idea de por qué no obtienes el resultado esperado. Para resolver un problema, no te vale con saber la tabla de multiplicar, hay que saber seguir un método de resolución. Python es un lenguaje sencillo, pero demasiado potente para aprender más allá del if y el while... Si quieres ser piloto de fórmula 1 no puedes aprender con un coche automático.
[emoji122] [emoji122] [emoji122] [emoji122]

MotoEizando el foro con tapatalk.
 
Mis primeros pasos programando fueron PHP y JS. Mis primeros pasos programando en serio fueron con Java y C#.

Saber que ES una clase, un objeto, un constructor, que es la pila, herencia, interfaces, ES NECESARIO para aprender.

En programacion no es saber hacer un problema y cambiar los datos (por ejemplo, gestión de usuarios), sino saber que problemas son similares y puedes reutilizar código. Es PENSAR.

El año pasado hicimos en clase una aplicacion basica con java swing de gestion de colores. De un código mal hecho con eclipse, terminé haciendo clases que simplificaron enormemente el programa. Obviamente, tuve un 10 en la tarea. Otros compañeros, sacaron un 5 por no optimizarlo...

MotoEizando el foro con tapatalk.
 
Herencia múltiple, constructores, reutilización de código, Swing... Todo muy al nivel de alguien que empieza. Mucha terminología chachi, pero para alguien que empieza, que no sabe lo que es una variable, ¿no creéis que todo eso queda un poco lejos?

Mantengo mi postura -y la de muchos, no estoy loco- de que Python es un lenguaje ideal para aprender. Algunos de los argumentos que ofreceis están sesgados: ¿herencia múltiple para alguien que empieza? ¿No poder hacer un for a la C99 es un drama cuando tienes while que es exactamente igual que en otros lenguajes derivados de C? ¿El tipado débil es un impedimento a la hora de implementar un algoritmo? La respuesta es que... no.

Lo estais reduciendo a un "for con listas vs for C99", "tipado débil vs tipado fuerte"... No va por ahí. El tema es que Python te abstrae de conceptos avanzados para programar -conceptos que puedes usar si quieres, pero no son necesarios-, y permite al programador novel centrarse en aprender lo básico: los fundamentos.

Insistís en lo de resolver problemas, y estoy de acuerdo, pero resolver problemas con clases y objetos es una manera de hacerlo de entre otras (ah, programadores new age, cuando no había objetos...), y que para dominar primero necesitas saber utilizar cosas más básicas, que puedes empezar a enseñar con Python, mientras abstraes justamente de esa complejidad.

Para decir todo esto me estoy basando principalmente en mi experiencia enseñando a gente desde cero o prácticamente cero. Siempre hay líos con el tema clases y objetos, que encima se agravan si no saben ni lo que es un bucle, o que pueden hacer return cuando quieran (parece una tontería, pero no resulta muy evidente para gente que empieza). Para vosotros resulta muy sencillo porque YA SABEIS LOS FUNDAMENTOS. Pero para alguien que no los sepa, Java -y otros muchos lenguajes- añaden complejidad innecesaria. Creo que es un tanto arrogante pretender que todos aprendan por el camino duro del REAL PROGRAMMER.

Me parece que también estais pensando que reniego de OOP, arquitectura, patrones y todo esto. No, en absoluto. Pero eso se lo enseñaría -ya lo hago, de hecho- a gente que ya sabe lo básico.

Si pido implementar un bubble sort, aprenden más fácilmente en Python -y hacen menos preguntas, y las que hacen suelen hacerlas en el momento de que sean respondidas-. Aprender Java es una excelente idea, no me cabe duda y estoy de acuerdo. Pero es poner más cuesta arriba el aprender los fundamentos de programación.
 
Me a venido una sonrisa a la cara recordando lo que yo sufrí con el lenguaje ensamblador xD.

Para empezar a comprender la programación hay una cosa llamada metodología que es la que prepara tu cabeza para pensar de una forma estructurada y dinámica como lo necesita una máquina.
Mucha gente no lo aprecia y se tira directamente a un lenguaje, puede hacerse, pero si de verdad se busca lo básico básico alguien que no sabe nada y empieza está claro, puede parecer una pérdida de tiempo a muchos pero ahí está y no sé ahora pero antiguamente era asignatura obligada.
 
Interesante debate, yo haría una comparación con GNU/ Linux :sehseh

Por ejemplo los que se quieren meter de lleno con Linux y todas sus complicaciones se recomienda Arch Linux.

Y para los que solo quieren un Linux estable y funcional... para aprender poco a poco y utizar: Linux mint, Debian, Ubuntu y derivadas.

En resumen, para los que se quiren meter de lleno: Java, y para los que solo buscan a aprender a programar sin complicaciones Python.
 
Exacto Drami, el debate al final es si quieres aprender a programar y punto, o si quieres aprender a programar a lo grande.

Lo bueno de Java, es que si se hace bien (y bien es con un programa completo, por ejemplo, el de un FP, que no sea todo dar Java, sino también complementar con C#, e inicaiarse con JS, para poder comparar) sale un buen programador, mientras que iniciarse con otros lenguajes más ligados al resultado puro y no al camino del resultado, sale un programador en ese lenguaje, y cuando se inicia con java y tal, todo son problemas.
 
pues hoy en día hasta en las universidades se empieza a enseñar con phyton, si que es cierto que te faltan muchos conceptos para saber programas como dios manda, pero hacerse con el control de phyton es muy sencillo, digamos que puedes estirar el brazo y ponerte de puntillas para alcanzar el armario o puedes usar un escalón para que te sea más fácil llegar, lo primero es más rápido pero quizá cuesta más que lo segundo, que evidentemente es más lento.

esto es cada uno y su opinión, lo mismo que el pseudocódigo, hay gente que opina que es muy útil y gente que opina que es na pérdida de tiempo, todo depende si quieres empezar a picar código rápido y familiarizarte antes con lo que es escribir código, o si quieres pegarte un tiempo leyendo e intentando entender todas las estructuras antes de ponerte a picar código.

Ni una cosa es mejor ni otra es peor aquí es cuestión de gustos.

CORRIJO, el algunas universidades e institutos
 
Te lo subo.
 
Yo empezaría con C. Así se aprenden los conceptos básicos de tipos de datos, reserva y liberación de memoria, etc. Si no es C, al menos un lenguaje imperativo.

Cuando entré en la carrera tuve que empezar con Java y es un error tremendo, porque te tienen que decir que hagas las cosas porque sí: esto es "private" porque sí, aquí pones "static" porque sí..., vamos, deseseperante, porque toda la parte de orientación a objetos la desconoces.

Creo que la programación imperativa es la más cercana al pensamiento natural para empezar. Pongo el ejemplo que me pusieron a mí: para ir a la universidad necesitas varios pasos: vestirte, ir al coche, conducir, bajar del coche, caminar hasta la puerta y entrar, en ese orden, y cada paso se descompone a su vez en varios subpasos. Esto es mucho más fácil que empezar a pensar en objetos y sus relaciones.

Cada cosa a su tiempo: primero programación imperativa con un lenguaje tipado y después ya empezamos a hablar de orientación a objetos.

Saludos y suerte.
 
Con permiso del autor de este hilo.. leyendo el post me surgió una duda y quizás alguno de vosotros me pueda ayudar. Tengo una titulación que no tiene nada que ver con informática pero me gustaría valorar la opción de poder estudiar un FP (online) de programación,desarrollo web o algo relacionado. Alguno conoce de primera mano alguna web? He visto algunos por google pero no se si son un "saca dinero"...
saludos
 
Ni fruta, te lo subo.
 
Si te sirve de ayuda, yo estoy empezando un FP a distancia. Es un ciclo formativo normal y corriente (gratis) y lo haces todo desde casa, excepto los exámenes.
En mi caso, ya tenía conocimientos de programación, así que no puedo decirte como lo puede afrontar una perdona que empieza de 0, pero siempre tienes tutorias grupales e individuales para resolver dudas.
Puedes informarte, y plantearte la preinscipción para el próximo curso

Enviado desde mi GT-I9100 mediante Tapatalk
 
Muchas gracias. Lo tendré en cuenta :)
 
Si te sirve de ayuda, yo estoy empezando un FP a distancia. Es un ciclo formativo normal y corriente (gratis) y lo haces todo desde casa, excepto los exámenes.
En mi caso, ya tenía conocimientos de programación, así que no puedo decirte como lo puede afrontar una perdona que empieza de 0, pero siempre tienes tutorias grupales e individuales para resolver dudas.
Puedes informarte, y plantearte la preinscipción para el próximo curso

Enviado desde mi GT-I9100 mediante Tapatalk
Yo estoy interesado, si me puedes informar?
Soy de Andalucia. Malaga
 
Yo estoy interesado, si me puedes informar?
Soy de Andalucia. Malaga
Busca en la web de la junta de Andalucía, pero tómatelo con calma porque hasta el próximo verano no se abre el plazo de preinscripcion.

Si tienes alguna duda concreta dímelo e intento ayudarte

Enviado desde mi GT-I9100 mediante Tapatalk
 
Gracias

Moto G AXARFISIO-ES
 
Arriba