Aprender a programar - Recomendaciones

Edito el mensaje anterior para dejar más claro el algoritmo y corregir una errata que había puesto un R1 donde era un R2. :hola
 
@Discord Pie muchas gracias por el ejemplo.

En nuestra ultima clase hoy con los ++x y x++ nos han dado este, de la web de Java, y creo que lo he entendido 😄

class PrePostDemo {

public static void main(String[] args){

int i = 3;

i++;
System.out.println(i);
// prints 4

++i;
System.out.println(i);
// prints 5

System.out.println(++i);
// prints 6

System.out.println(i++);
// prints 6

System.out.println(i);
// prints 7


} // End of class

} // End of main method


De este ejemplo quiero entender que cuando llegamos a ++i el programa suma 1 al resultado de i y guarda el resultado (que en ese momento es 5) al ejecutar / mientras ejecuta la línea de código y por eso el programa te muestra "6" en pantalla, porque le ha añadido 1 antes.

Entonces cuando llegamos a i++ nuestro i vale 6 y suma 1 al resultado para que lo guarde en i después de ejecutar la línea de código, por eso el programa te vuelve a mostrar "6" en pantalla (que es el valor de i antes de ejecutar el código) pero el valor de i ya es 7 después de ejecutar el código y cuando vuelves a hacer un print de i te muestra 7

¿Estoy medianamente en lo correcto? 😊
 
@Discord Pie muchas gracias por el ejemplo.

En nuestra ultima clase hoy con los ++x y x++ nos han dado este, de la web de Java, y creo que lo he entendido 😄

class PrePostDemo {

public static void main(String[] args){

int i = 3;

i++;
System.out.println(i);
// prints 4

++i;
System.out.println(i);
// prints 5

System.out.println(++i);
// prints 6

System.out.println(i++);
// prints 6

System.out.println(i);
// prints 7


} // End of class

} // End of main method


De este ejemplo quiero entender que cuando llegamos a ++i el programa suma 1 al resultado de i y guarda el resultado (que en ese momento es 5) al ejecutar / mientras ejecuta la línea de código y por eso el programa te muestra "6" en pantalla, porque le ha añadido 1 antes.

Entonces cuando llegamos a i++ nuestro i vale 6 y suma 1 al resultado para que lo guarde en i después de ejecutar la línea de código, por eso el programa te vuelve a mostrar "6" en pantalla (que es el valor de i antes de ejecutar el código) pero el valor de i ya es 7 después de ejecutar el código y cuando vuelves a hacer un print de i te muestra 7

¿Estoy medianamente en lo correcto? 😊
:ok
 
Por otro lado, el operador "%" es un poco cutre, ¿no? ¿lo usáis mucho los pros?

No es obligatorio usarlo todo siempre ;) . Con que sepas que existen y cuando es útil usarlos es suficiente, ya los usarás cuando sea conveniente.

Los ejemplos son solo eso, ejemplos para entender el funcionamiento de algo, pero en la práctica, tal como te ha dicho @Discord Pie , los operadores ++ y -- no los vas a usar de la forma empleada en los ejemplos.
 
Leyendo vuestros posts he recordado cuando empecé a programar, después en la carrera programación a tope... y profesionalmente no he escrito una línea de código. Y como hobby tampoco. Descubrí el mundo de sistemas y programar no me ha parecido interesante nunca más.

Casi 20 años después de empezar a trabajar el mejor consejo que le puedo dar a @Miguel_Angel
Si es por amor al arte, adelante.
Si es pensando en ganar dinero dentro de unos años... aprende fontanería :cuniao
 
Leyendo vuestros posts he recordado cuando empecé a programar, después en la carrera programación a tope... y profesionalmente no he escrito una línea de código. Y como hobby tampoco. Descubrí el mundo de sistemas y programar no me ha parecido interesante nunca más.

Casi 20 años después de empezar a trabajar el mejor consejo que le puedo dar a @Miguel_Angel
Si es por amor al arte, adelante.
Si es pensando en ganar dinero dentro de unos años... aprende fontanería :cuniao

Lo estoy aprendiendo por amor al arte.. aunque ojo, que los puestos estos de Java junior a 45.000€ y Java con 5 años de experiencia entre 90 y 120.000 no estan mal eh!

Tambien he visto que se puede hacer de freelance y no me importaria echarle unas horas entre peli y peli 😊
 
Volviendo a nuestros amigos post / pre increment / decrement me salió este ejercicio ayer y entre las explicaciones Discord y el profe ayer me ha quedado clarisísimo.

Primero tuvimos que leer el ejercicio y razonar las respuestas con lápiz y papel, después lo escribimos, compilamos y comprobamos si nuestras respuestas eran las correctas.. y después de todo eso el profe nos dio una charla interesantísima.

public class JFT4Ex8 {

public static void main (String[] args){

int c = 3;
c++;
System.out.println ("The value of c is " + c); // ??

int w = 0;
w = ++c;
System.out.println ("The value of w is " + w); // ??
System.out.println ("The value of c is " + c); // ??

int x = 0;
x = c++;
System.out.println ("The value of x is " + x); // ??
System.out.println ("The value of c is " + c); // ??

int y = 0;
y = --c;
System.out.println ("The value of y is " + y); // ??
System.out.println ("The value of c is " + c); // ??

int z = 10;
z++;
++z;
--z;

int qq = ++z;
z = c--;

System.out.println ("The value of z is " + z); // ??
System.out.println ("The value of c is " + c); // ??
System.out.println ("The value of qq is " + qq); // ??

} // End of main method

} // End of class


Los tres primeros ejercicios eran los siguientes.. y adivinad quien falló en todos porque no recordó que operaciones se hacían primero.. 😄 ya no me vuelve a pasar más 😄 😄 😄
Además, el profe nos dijo: "¿Estáis seguros de vuestras respuestas en los primeros tres ejercicios?", ¡¡por supuesto que sí!! 😄 😄

1) What is the output of the following expression?

System.out.println(10+6*3-6/3);

2) What is the output of the following expression?

System.out.println((10+6)*3-6/2);

3) What is the result of the following expression?

System.out.println(27%3);

Hoy y mañana me toca la siguiente lección: Using Promotion and Type Casting
 
Hice un par de entrevistas la semana pasada con una empresa de aquí para un puesto que es una mezcla entre Junior UX researcher y Junior Product Designer y comienzo el Lunes.

No pagan mucho, 35.000€ / año, lo cual se traduce en unos 2.000€ / 2.200€ mensuales, teletrabajo desde cualquier parte del mundo (siempre que lo comentes) o en la ofi y estas cosas que son normales en empresas de Corporate.

¡Les gusto mucho que esté aprendiendo Java! y me comentaron que si quería seguir por esa línea o por la de ux, tenían planes de formación para empleados que podía mirar, es decir, que me pagaban el masters en ux que quiero hacer o los cursos de Java / programación que quisiera.
Les respondí que de momento íbamos a ver cómo iba el trabajo.
 
Hice un par de entrevistas la semana pasada con una empresa de aquí para un puesto que es una mezcla entre Junior UX researcher y Junior Product Designer y comienzo el Lunes.

No pagan mucho, 35.000€ / año, lo cual se traduce en unos 2.000€ / 2.200€ mensuales, teletrabajo desde cualquier parte del mundo (siempre que lo comentes) o en la ofi y estas cosas que son normales en empresas de Corporate.

¡Les gusto mucho que esté aprendiendo Java! y me comentaron que si quería seguir por esa línea o por la de ux, tenían planes de formación para empleados que podía mirar, es decir, que me pagaban el masters en ux que quiero hacer o los cursos de Java / programación que quisiera.
Les respondí que de momento íbamos a ver cómo iba el trabajo.

Pero buenooo! En un par de semanas programando de nuevo y ya has encontrado trabajo?
¿No te da vértigo no llevar suficiente nivel como para ejecutar el puesto?
 
Pero buenooo! En un par de semanas programando de nuevo y ya has encontrado trabajo?
¿No te da vértigo no llevar suficiente nivel como para ejecutar el puesto?
Es de Ux Researcher y viendo hoy en mi primer día lo que necesitan y piden es realmente Ux Designer con un énfasis en la investigación y el estudio de los productos que tienen.
3 meses de training :hala.. he comenzado trabajando desde casa (la semana que viene voy a la ofi) y ya me han dado un portátil y un monitor para tenerlos aquí permanentemente.

De todas maneras, déjame un par de semanas más con esto de Java 😄 😄 😄 que hoy termino la lección 6 de 14 del curso, "Using Operators and Decision Constructs" y esta semana terminaré las lecturas y ejercicios de la misma.
Espero que no me hagan escribir el ejercicio de una de las lecciones de hoy, que era sobre encadenar IF / ELSE y me ha parecido súper lioso.

Screenshot 2022-04-11 at 12.39.22.png


En cuanto llegue a los arrays esos ya voy a ser como @Discord Pie y @TheReeler, un rey de la programación 😄 😄

Por cierto.. este lenguaje, después de mis primeras lecciones de Java, ¡se parece mucho a Java!.

 
Última edición:
Vaya salarios para un Technical Lead de Java. 110.000K + bonus.

Tenía que haber comenzado a estudiar esto antes 😄 😄


Por otro lado, el trabajo este nuevo.. no me deja ni un rato para respirar.
Llevo 1 semana intentando terminar los ejercicios de la lección 6 del curso de Java y hoy por fin me acabo de poder sentar con el ordenador.
 
Última edición:
¿Y qué formación académica piden? :sudor

Porque JAVA y lo que haga falta...
Pues no te creas que mucha.

Es un puesto de super junior y realmente se trata de desensamblar los productos que tienen (Treinta y pico) desde el punto de vista de un usuario y hacer recomendaciones para mejorarlos y que los usuarios esten mas contentos al usarlos.

De paso, ver como hacer mas eficiente la navegacion y la resolucion de problemas (los llaman tickets) en el back end para la empresa y crear flujos de trabajo que sean mejores que los que tienen.

Aparte, hay que crear la navegacion de los usuarios de los nuevos productos.

Es decir, UX a tope.

Ya he conocido a todo el equipo de desarrolladores, los hay con 15 / 20 años de experiencia y con 1 año de experiencia.
Acaban de implementar una manera de trabajar que me parece maravillosa, Mob Programing, que seguro que los programadores de aqui sabeis lo que es.. pero pongo un video aqui por si alguien llega de nuevas.

 
He encontrado esto en Xataka y creo que está bastante bien.


Me han gustado especialmente los cursos de Machine Learning, que haré cuando termine el curso de Java.

 
@Discord Pie, @TheReeler, @Tim, @Archibald Alexander Leach os invoco.

Voy a pedir el siguiente curso de 1 año para comenzar en Agosto.. que puede que no me lo den, claro, pero por pedir que no quede 😄

Higher Diploma in Science in Computing.


Piden que especifique una de las especializaciones de las siguientes para el tercer trimestre:
Software Development, Cybersecurity, Artificial Intelligence and Machine Learning, Blockchain, Web Development.

Artificial Intelligence and Machine Learning tiene buena pinta, por otro lado Cybersecurity también me llama la atención.
¿Cual creeis que podría ser más interesante?

¡Gracias!
 
Arriba Pie