¿Que recomiendas aprender para crear un proyecto?

Hola Chadxeros,
Como indica mi Nickname soy muy nuevo en este mundo de Linux, pero me gustaría crear algo y ser un aporte (no se si para la humanidad, pero si para alguien que lo necesite), pero me limita mi poco conocimiento de este mundo y veo un potencial casi infinito en el código abierto.
Hasta el momento mi idea es crear una pagina web similar al extinto Sector Matemática, una pagina que me ayudo en el 2009 a encontrar libros y ejercicios de forma gratuita, en la cual distintos profesores subían sus aportaciones y la recopilación de sus aportaciones creaban libros digitales de hasta 5000 ejercicios de matemática.
Me limita mi conocimiento actual (no se ni programar), pero me gustaría los consejos de gente experimentada de como iniciar, que aprender y el paso a paso que seguir para lograr mi objetivo.
Muchas gracias .
P.D: Gracias a los que suben los cursos, el de Python esta wenardo.

Voy a ir de lo más sencillo a más complicado
HTML5 y CSS3
con eso ya es más que suficiente para hacer una página web como la que describes.
Ninguno de los 2 son lenguajes de programación, (CSS3 por algunos tecnicismos sí, pero no está ni remotamente diseñado para eso)
HTML5 es para describir la estructura de la página, es un formato de transmisión de texto
y CSS3 es para hacer que ese texto tenga colores, formas, tipografías, efectos, y más cosas.
Si quieres agregarle funcionalidades más avanzadas a la página, ahí tendrías que aprender Javascript, el lenguaje de programación de la web. Pero no es absolutamente necesario. Lo esencial son los 2 que dije antes.

El tema con ese sistema es que cada vez que quieras por ejemplo, agregar un nuevo libro a la página, tendrías que modificar el código. O ya de plano si quieres tener estado en tu página, como usuarios, comentarios, registros, etcétera, no se puede.

Ahí tendrias que aprender un lenguaje de backend y a manejar una base de datos. Por suerte javascript aparte de ser el lenguaje de la web, también sirve para hacer esto, con la ayuda de un entorno de ejecución llamado nodejs. Pero hay muchos más lenguajes de backend, como PHP o Java, por decir algunos.

Y por el lado de la base de datos, las más populares son las de SQL como mysql (de Oracle), o mariadb (Mantenido por la comunidad, una opción mucho mejor). Y tendrías que aprender SQL, otro lenguaje de programación, pero este es más sencillo, y con saber 4 cosas estás hecho para empezar.

Por último, están los frameworks como React, Vue, Laravel, entre otros. Estos son proyectos, por lo general opinionados, que tienen un montón de herramientas para facilitar el desarrollo, y hacer proyectos más escalables. Por ejemplo, puede que ya vengan con un sistema de validación de usuarios, con una base de datos, con varias bibliotecas, entre otras cosas. Pero estos frameworks hay que saberlos usar, no se puede empezar a construir la casa por el tejado. Hay que empezar por lo básico.

Y bueno eso es todo, espero haberte ayudado.

2 Me gusta