En septiembre empiezo DAW! busco consejos :D

kakadeluxe

Master Chapuzas
Registrado
9 Mar 2018
Mensajes
2.741
Puntos
113
Edad
56
Es un bucle, según la instrucción for, dice que se ejecute un bucle empezando con el valor i=1 y terminando con el valor i=3 con incrementos de 1 para ejecutar la instrucción "a" = "i" elevado a "a". Aviso, la instrucción range empieza por 0 y termina por el valor final menos 1. La indentación es muy importante en python.
i=1, a=1
i=2 a=4
i=3 a=9
Míralo tu mismo, haz clic en "Run": GDB online Debugger | Code, Compile, Run, Debug online C, C++
PHP:
a = 2
for i in range(1,4):
    a = i ** a
    print(i,a)
print(a)
 

juanjesus

Master Chapuzas
Registrado
3 Abr 2015
Mensajes
206
Puntos
18
Es un bucle, según la instrucción for, dice que se ejecute un bucle empezando con el valor i=1 y terminando con el valor i=3 con incrementos de 1 para ejecutar la instrucción "a" = "i" elevado a "a". Aviso, la instrucción range empieza por 0 y termina por el valor final menos 1. La indentación es muy importante en python.
i=1, a=1
i=2 a=4
i=3 a=9
Míralo tu mismo, haz clic en "Run": GDB online Debugger | Code, Compile, Run, Debug online C, C++
PHP:
a = 2
for i in range(1,4):
    a = i ** a
    print(i,a)
print(a)
Valeep entendido! Mi fallo ha sido que no sabía de ese incremento de 1 en 1, pensaba que eso solo ocurría si estaba especificado con el tercer parámetro de la instrucción range por ejemplo range(1,4,2). Por lo visto, si no especificas nada, por defecto el bucle ejecuta de 1 en 1.
Gracias :p
 

kakadeluxe

Master Chapuzas
Registrado
9 Mar 2018
Mensajes
2.741
Puntos
113
Edad
56
Valeep entendido! Mi fallo ha sido que no sabía de ese incremento de 1 en 1, pensaba que eso solo ocurría si estaba especificado con el tercer parámetro de la instrucción range por ejemplo range(1,4,2). Por lo visto, si no especificas nada, por defecto el bucle ejecuta de 1 en 1.
Gracias :p
De nada, no hay que dar por hecho que una instrucción funcione como crees que debe ser. Siempre hay que mirar en la documentación y tener en cuenta que los parámetros de una instrucción no son siempre obligatorios.
Te aconsejo estas Web para consultar las instrucciones y sus ejemplos:
Ingles: Python Tutorial
Español: Instalar Python e IPython con Anaconda - Tutorial python
 

juanjesus

Master Chapuzas
Registrado
3 Abr 2015
Mensajes
206
Puntos
18
@kakadeluxe Aquí estoy de nuevo jaja perdón por ser tan pesao, para ir practicando HTML y después CSS, ¿Qué framework convendría más? Por cierto he visto que está HTML y HTML5 siendo este último el que se usa en prácticamente todos los sitios, son editores distintos o simplemente una versión actualizada del otro. :unsure:
 

kakadeluxe

Master Chapuzas
Registrado
9 Mar 2018
Mensajes
2.741
Puntos
113
Edad
56
@kakadeluxe Aquí estoy de nuevo jaja perdón por ser tan pesao, para ir practicando HTML y después CSS, ¿Qué framework convendría más? Por cierto he visto que está HTML y HTML5 siendo este último el que se usa en prácticamente todos los sitios, son editores distintos o simplemente una versión actualizada del otro. :unsure:
Sobre HTML, lee esto: HTML - Wikipedia, la enciclopedia libre
No existe un framework para HTML si para CSS, los más conocidos son Bootstrap (el que más uso) y Foundation que son algo "pesados" de descargar, más liviano es PureCSS. Basicamente, son plantillas de CSS para el código HTML, así te evitas escribir CSS a pelo, muy cómodo si eres programador y no quieres perder el tiempo diseñando la pantalla, pero no aprenderás nada de CSS.
Antes de preguntar, busca por Internet, la Wikipedia es una excelente fuente de información.
 

Snipper

yNiks
Registrado
8 Mar 2020
Mensajes
135
Puntos
18
Si vas a dedicarte a Front End tendras que saber css puro, yo aprendo de youtube, y si se te olvida algo buscas, por ejemplo cómo se posiciona una barra, lo pones en youtube y algun indio te dara la solucion jaja
 

juanjesus

Master Chapuzas
Registrado
3 Abr 2015
Mensajes
206
Puntos
18
Si vas a dedicarte a Front End tendras que saber css puro, yo aprendo de youtube, y si se te olvida algo buscas, por ejemplo cómo se posiciona una barra, lo pones en youtube y algun indio te dara la solucion jaja
Sí, estoy viendo series en youtube de HTML desde 0, y supongo que habrá lo mismo relacionado con css, para coger las bases me va a venir genial, ¿crees que en el grado de DAW se verá en profundidad HTML y CSS? Son 2000 horas, eso da para mucho supongo 🤣
 

josejfernandez

Software Architect
Registrado
1 Ago 2012
Mensajes
444
Puntos
43
@kakadeluxe Aquí estoy de nuevo jaja perdón por ser tan pesao, para ir practicando HTML y después CSS, ¿Qué framework convendría más? Por cierto he visto que está HTML y HTML5 siendo este último el que se usa en prácticamente todos los sitios, son editores distintos o simplemente una versión actualizada del otro. :unsure:
Mi consejo siempre es aprender primero los fundamentos y utilizar un framework sólo cuando ya sepas solucionar los problemas que soluciona el framework. Si lo haces de ese modo, podrás ser un desarrollador capaz de solucionar problemas. Si te limitas al framework, no pasarás de ser alguien que sabe implantar ese framework en concreto. Todo lo que quede fuera del alcance del framework, estará también fuera del tuyo. Por ello, mi consejo en este caso es que empieces aprendiendo HTML y después aprendas CSS. Ya tendrás tiempo de elegir un framework.

El mejor recurso que puedes encontrar es la Mozilla Developer Network, o MDN, y su manual para aprender desarrollo web. En ese manual de aprendizaje encontrarás un camino marcado y detallado de qué debes aprender y en qué orden. Te recomiendo seguirlo.

HTML es el lenguaje, cuya última versión es HTML 5. Aunque "la base" es la misma, los matices son totalmente distintos entre HTML 5 y HTML 4. Creo que no tiene sentido aprender las versiones anteriores cuando en la actualidad todo está orientado a HTML 5. Algo similar ocurre con CSS y CSS 3.

No contaría con que en el ciclo de FP hiciérais un estudio profundo de estos lenguajes. Piensa que parecen muchas horas pero no es tanto: los grupos suelen ser numerosos, el nivel de los alumnos es heterogéneo y hay muchas cosas que explicar para profundizar realmente. Piensa que puedes coincidir con gente que no sepa ni siquiera que existen distintos "lenguajes de programación". Por ello creo que lo mejor, si quieres destacar y tener un conocimiento profundo, es que aprendas por tu cuenta.

Continuando con lo que te decía al principio del mensaje, sólo utilizaría un framework cuando ya supiera hacer una maquetación responsive básica de una página tipo blog: dos columnas (media queries, grid, css columns), imágenes, distintos tipos de texto, enlaces, un formulario para darse de alta con distintos tipos de controles (select, inputs numéricos, textarea, radio buttons, checkboxes), tablas con datos, columna lateral pasa a estar bajo el contenido cuando se visualiza la página desde un móvil, diseño visual más allá del predeterminado (cosas centradas, bordes, fondos, colores, un botón "flotante")...
 
Última edición:

juanjesus

Master Chapuzas
Registrado
3 Abr 2015
Mensajes
206
Puntos
18
Mi consejo siempre es aprender primero los fundamentos y utilizar un framework sólo cuando ya sepas solucionar los problemas que soluciona el framework. Si lo haces de ese modo, podrás ser un desarrollador capaz de solucionar problemas. Si te limitas al framework, no pasarás de ser alguien que sabe implantar ese framework en concreto. Todo lo que quede fuera del alcance del framework, estará también fuera del tuyo. Por ello, mi consejo en este caso es que empieces aprendiendo HTML y después aprendas CSS. Ya tendrás tiempo de elegir un framework.

El mejor recurso que puedes encontrar es la Mozilla Developer Network, o MDN, y su manual para aprender desarrollo web. En ese manual de aprendizaje encontrarás un camino marcado y detallado de qué debes aprender y en qué orden. Te recomiendo seguirlo.

HTML es el lenguaje, cuya última versión es HTML 5. Aunque "la base" es la misma, los matices son totalmente distintos entre HTML 5 y HTML 4. Creo que no tiene sentido aprender las versiones anteriores cuando en la actualidad todo está orientado a HTML 5. Algo similar ocurre con CSS y CSS 3.

No contaría con que en el ciclo de FP hiciérais un estudio profundo de estos lenguajes. Piensa que parecen muchas horas pero no es tanto: los grupos suelen ser numerosos, el nivel de los alumnos es heterogéneo y hay muchas cosas que explicar para profundizar realmente. Piensa que puedes coincidir con gente que no sepa ni siquiera que existen distintos "lenguajes de programación". Por ello creo que lo mejor, si quieres destacar y tener un conocimiento profundo, es que aprendas por tu cuenta.

Continuando con lo que te decía al principio del mensaje, sólo utilizaría un framework cuando ya supiera hacer una maquetación responsive básica de una página tipo blog: dos columnas (media queries, grid, css columns), imágenes, distintos tipos de texto, enlaces, un formulario para darse de alta con distintos tipos de controles (select, inputs numéricos, textarea, radio buttons, checkboxes), tablas con datos, columna lateral pasa a estar bajo el contenido cuando se visualiza la página desde un móvil, diseño visual más allá del predeterminado (cosas centradas, bordes, fondos, colores, un botón "flotante")...
Gracias por el consejo! El problema aquí ha sido que no entendí bien el concepto de framework, pensaba que era la plataforma en la que se trabaja con HTML, CSS, etc etc, y por eso preguntaba cual convenía más
 

josejfernandez

Software Architect
Registrado
1 Ago 2012
Mensajes
444
Puntos
43
Un framework es una herramienta o "capa de abstracción" que por sí misma no "hace" nada en particular, pero proporciona herramientas para solucionar problemas recurrentes. Estas herramientas pueden ser de muchos tipos: código (clases, interfaces, paquetes, proyectos), prácticas o procedimientos, estructura...

Cuando se plantea un proyecto nuevo, elegir entre distintos frameworks no es baladí. Intervienen muchos factores que se deben evaluar para poder hacer una buena elección de framework. A menudo elegir un framework implica restringir o limitar las posibilidades del proyecto o del equipo a lo que el framework elegido haya definido, por lo que una mala decisión en este sentido puede hacer que el proyecto salga más caro o que la complejidad técnica aumente de forma innecesaria.

Por ejemplo, puedes implantar Vue.js (un framework de JavaScript) en cualquier estructura de front-end, pero no puedes hacer eso mismo con Angular (otro framework de JavaScript), que obliga a seguir una estructura mucho más definida. Cada enfoque tiene sus ventajas y sus desventajas.

Por otro lado, desde el punto de vista del programador (o aprendiz de), la elección de qué framework aprender muchas veces puede reducirse a cuál es más popular y/o demandado. En el caso que nos ocupa, coincido con los compañeros: Bootstrap con mucha diferencia con el segundo, que es Foundation. Luego existe un abanico amplísimo de otros frameworks menos populares pero no por ello menos interesantes, aunque la mayoría ya son micro frameworks, más concisos y que abarcan menos aspectos que estos dos.

Siempre me remito a lo que dije en mi anterior mensaje: es importante conocer las bases y los fundamentos. Una vez los conozcas, aprender un framework u otro es mucho más fácil de lo que parece. En realidad, la mayoría de frameworks se basan en otra cosa mucho más importante que los frameworks: los patrones. También existen patrones en CSS.

Todo esto para alguien que está empezando es mucha tela que cortar ;) así que simplemente dale caña a HTML y a CSS básicos y ya tendrás tiempo para avanzar en todas esas cuestiones.
 
Última edición:

juanjesus

Master Chapuzas
Registrado
3 Abr 2015
Mensajes
206
Puntos
18
Un framework es una herramienta o "capa de abstracción" que por sí misma no "hace" nada en particular, pero proporciona herramientas para solucionar problemas recurrentes. Estas herramientas pueden ser de muchos tipos: código (clases, interfaces, paquetes, proyectos), prácticas o procedimientos, estructura...

Cuando se plantea un proyecto nuevo, elegir entre distintos frameworks no es baladí. Intervienen muchos factores que se deben evaluar para poder hacer una buena elección de framework. A menudo elegir un framework implica restringir o limitar las posibilidades del proyecto o del equipo a lo que el framework elegido haya definido, por lo que una mala decisión en este sentido puede hacer que el proyecto salga más caro o que la complejidad técnica aumente de forma innecesaria.

Por otro lado, desde el punto de vista del programador (o aprendiz de), la elección de qué framework aprender muchas veces puede reducirse a cuál es más popular y/o demandado. En el caso que nos ocupa, coincido con los compañeros: Bootstrap con mucha diferencia con el segundo, que es Foundation. Luego existe un abanico amplísimo de otros frameworks menos populares pero no por ello menos interesantes, aunque la mayoría ya son micro frameworks, más concisos y que abarcan menos aspectos que estos dos.

Por ejemplo, puedes implantar Vue.js (un framework de JavaScript) en cualquier estructura de front-end, pero no puedes hacer eso mismo con Angular (otro framework de JavaScript), que obliga a seguir una estructura mucho más definida. Cada enfoque tiene sus ventajas y sus desventajas.

Siempre me remito a lo que dije en mi anterior mensaje: es importante conocer las bases y los fundamentos. Una vez los conozcas, aprender un framework u otro es mucho más fácil de lo que parece. En realidad, la mayoría de frameworks se basan en otra cosa mucho más importante que los frameworks: los patrones. También existen patrones en CSS.

Todo esto para alguien que está empezando es mucha tela que cortar ;) así que simplemente dale caña a HTML y a CSS básicos y ya tendrás tiempo para avanzar en todas esas cuestiones.
Joder que lujo contar con este foro y esta calidad de respuesta, muchas gracias por la info nuevamente! Pues ya estaba con los conceptos básicos de Python pero creo que cambiaré un poco el orden, y me meteré con HTML y CSS ahora, dejaré Python para más adelante. (y)
 

kakadeluxe

Master Chapuzas
Registrado
9 Mar 2018
Mensajes
2.741
Puntos
113
Edad
56
Joder que lujo contar con este foro y esta calidad de respuesta, muchas gracias por la info nuevamente! Pues ya estaba con los conceptos básicos de Python pero creo que cambiaré un poco el orden, y me meteré con HTML y CSS ahora, dejaré Python para más adelante. (y)
Puedes hacer las 3 cosas, ya que HMTL y CSS NO son lenguajes de programación.
Y para completar la explicación del compañero le faltaba explicar algo más complejo todavía: los preprocesadores de CSS como Sass, Less, Stylus, etc... :eek:
 

Snipper

yNiks
Registrado
8 Mar 2020
Mensajes
135
Puntos
18
Para añadir, por si te quieres especializar en front end. En youtube a miles de videos para hacer webs responsives y todo el tema. A partir de ejemplos puedes aprender. Si te metes a youtube te darás cuenta de que la mayoría son indios XD
 

josejfernandez

Software Architect
Registrado
1 Ago 2012
Mensajes
444
Puntos
43
No hace falta abandonar Python, es justo lo que te dice @kakadeluxe , nada que ver ;) decía que te centraras en HTML y CSS pensando en el front-end. No quise decir que fuera lo que primero debes aprender de forma "global". El plan que has hecho está bien, conm Python por un lado y luego HTML y CSS por el otro 👍

@Snipper Es normal que "la mayoría sean indios" cuando son 1.300 millones de habitantes en el país y además tienen una de las mayores tasas de autoempleo del planeta, con más del 76% de la población trabajadora haciéndolo por cuenta propia.
 

Snipper

yNiks
Registrado
8 Mar 2020
Mensajes
135
Puntos
18
No hace falta abandonar Python, es justo lo que te dice @kakadeluxe , nada que ver ;) decía que te centraras en HTML y CSS pensando en el front-end. No quise decir que fuera lo que primero debes aprender de forma "global". El plan que has hecho está bien, conm Python por un lado y luego HTML y CSS por el otro 👍

@Snipper Es normal que "la mayoría sean indios" cuando son 1.300 millones de habitantes en el país y además tienen una de las mayores tasas de autoempleo del planeta, con más del 76% de la población trabajadora haciéndolo por cuenta propia.
Cierto, son muchos al igual que en China. En China pasaría lo mismo, pero el bloqueo solo les deja GitHub dado que el gobierno no lo puede bloquear... y aprovechan y hacen sus protestas por ahí XD
Por cierto, como ves NodeJS? ya que si aprende front estaría muy bien no?
 

josejfernandez

Software Architect
Registrado
1 Ago 2012
Mensajes
444
Puntos
43
Node.js puede ser útil también para el front-end, con una posibilidad que me resulta bastante interesante pero con la que nunca he podido experimentar: server side rendering. Es decir, procesar el JavaScript del lado del cliente en el lado del servidor y entregar un HTML estático ya generado, para luego inyectarle el JavaScript del cliente y que a partir de ahí siga el cliente.

La ventaja principal es que entregas al cliente un HTML completo que no necesita de ejecución por el navegador, aunque posteriormente se ejecute todo ya con JavaScript. Durante mucho tiempo en el SEO se ha dicho que las páginas que necesitan de JavaScript para ser mostradas no se rastrean bien porque los bots no ejecutaban el lenguaje y, aunque ha mejorado mucho y al menos Google sí es capaz de renderizar con JavaScript, en realidad siguen requiriendo atención u optimización manual en algunos casos.

Algunos frameworks de JavaScript ya contemplan la posibilidad de realizar server side rendering, como Vue.js. Con Vue.js en particular, puedes implementar una suerte de server side rendering dependiendo de la naturaleza del proyecto y de cómo implantes el framework (ya que Vue.js te permite implantarlo de muchas formas, como comentamos anteriormente). Por ejemplo, yo ya he implementado algo en plan server side rendering con el antiguo Angular.js (Angular 1.x) y PHP en aplicaciones de gestión.

Por otro lado, Nose.js está presente en infraestructuras muy grandes como en LinkedIn, en Paypal o en Netflix. En esas infraestructuras, no obstante, dentro del backend se suele utilizar como frontend. Es decir, se usa en los servidores backend que están "de cara al público", por así decirlo. En particular, en LinkedIn lo utilizan para manejar las peticiones que realiza la aplicación móvil, por ejemplo.

Cuando apareció Node.js fue bastante revolucionario por el rendimiento y escalabilidad que permitía. Recuerdo que eso generó muchísimo hype, que tardó un poco en trasladarse al mundo empresarial español, como es normal por otro lado. Desde aquel momento han aparecido otras cosas como ASP.NET Core y PHP 7, que justamente elevaron el rendimiento de esos stacks a nuevos niveles, y que creo que le hicieron un poco de sombra.

En lo personal, veo Node.js más como una tecnología de nicho que como un stack generalista que vale para todo. Sus ventajas dependen mucho del caso particular en el que se desee implantar. Conozco algún caso en el que se usa Node.js para convertir librerías tradicionalmente de frontend en Application as a Service, como jsReport, y sé que existen empresas que lo tienen como único stack, pero a pesar de ello creo que es preferible, como programador, conocer y dominar otros stacks más generalistas como pueden ser ASP.NET Core, Java/Spring o PHP, y luego conocer otros más de nicho como Node.js. Se pueden aprender varios, eh :p
 
Arriba