Plataforma de desarrolladores/programadores junior

¿Qué tengo que aprender para llegar a trabajar de X?

Cuando tengas claro que es la X busca tu roadmap aquí y empieza en ello https://roadmap.sh. No es obligatorio ni recomendable acabarlo todo antes de empezar a buscar, pero ya sabes cuales son las cosas que se te suele pedir.

¿Algún recurso para empezar?

Chamborz

Bueno actualmente estoy estudiando DAW y me gustaría pillar un portátil para los estudios, ahora mismo estoy con el sobremesa, pero por comodidad y no dejar sola a mi mujer mientras estudio me gustaría un portátil. En que me debería de fijar? Ram? CPU?

Por otro lado he visto varias webs que venden este tipo de pcs reacondicionados, no sé si lo recomendáis también, decir que dan 2 años de garantía y los precios están bastante bien en comparación con los nuevos, llegando a costar el 50% menos o más, pero no sé si pillar nuevo, por evitar problemas.

3 respuestas
Seal67

#3751 CPU es lo más importante, y lo más importante que tienes que mirar es si quieres que tenga mucha bateria o no, suelen haber dos tipos de cpu, unos que consumen mucho y otros que consumen poco, si lo que quieres es llevartelo por ahí y que te dure 12 horas vas a tener que coger los que duran más la bateria (con lao que la cpu será peor y tendrás que gastar más dinero para la misma potencia)

yo recomiendo comprar en amazon porque tienes 3 años de garantía y si se rompe te lo devuelven sin preguntar, tienen buenas devoluciones, no recomiendo reacondicionados a no ser que sean un chollo chollo

2 respuestas
Kaledros

Como no sé tu presupuesto lo digo y ya si eso me mandas a la mierda: Apple tiene descuentos para estudiantes en portátiles.

1 respuesta
Chamborz

#3752 lo de la batería me es indiferente, por qué cuando lo use siempre o el 90% de las ocasiones voy a tener una toma de corriente cerca para poder enchufar sin problema

#3753 no hombre no te voy a mandar a la mierda por intentar ayudar jajaja, fallo mío no poner mi presupuesto, pues la verdad es que es un poco ajustado, no se decir una cifra exacta pero tampoco quiero gastar mucho, de todos modos voy a hechar un ojo a los apple a ver cómo salen de precio, aunque siempre suelen irse por las nubes

3 respuestas
Lolerpopler

#3754 yo llevo varios trabajos en los que me dan Mac books en donde he trabajado y tengo que decir que es difícil de batir.
Es verdad que la última vez que trabaje con portátiles Windows/Linux fue hace unos años ya y seguro que ha cambiado mucho el tema, eran unos Dell XPS 13 y 15 y estaban muy muy bien, pero también eran portátiles en el mismo rango que un Macbook... y el MacBook tenía cosas que me gustaban mucho más, el trackpad si no vas a usar ratón aún no he probado uno mejor

1 respuesta
Kaledros

#3754 Con descuento de Unidays, el Macbook Air más pelado te sale por mil pavos casi justos financiables sin intereses.

Specs:

spoiler
1 respuesta
wolfie6949

#3751 Para estudiar DAW te vale cualquier cacharro, asegúrate que sea full HD y tenga al menos un i5/i7 de octava o novena en adelante (o equivalente en Ryzen) y al menos 8GB de RAM, aunque si son 16 mucho mejor.

Yo hace unos años que vendí mi MSi mazacote-gamer-rgb y empecé a usar Thinkpads de ocasión. Tenía un T480 (240€) que regalé a mi novia cuando se puso con DAW y me compré un T490s (350€). Por wallapop hay mucha gente que los vende a precios muy asequibles y están prácticamente intactos porque suelen ser de rentings y han estado toda su vida sentados en una oficina.
Les metes una distribución Linux (cosa que te recomiendo también que empieces a usar) y van como un avión con un consumo energético ridículo. No me hace las 12h del Mac de la empresa, pero sí que llegará tranquilamente a las 6h, eso en un x86 de hace 6-7años es bastante admirable.

Los Macs también son una buena opción a tener en cuenta. Pero si tu presupuesto es ajustado yo me iría a uno de ocasión y a mi siempre me ha tirado para atrás el hecho de no poder ampliarlos.

_NaN_

Bueno, primera semanilla de prácticas de empresa en 2DAW.

Me han metido en un departamento de big data con la plataforma de Azure 😂. Ahora estoy viendo la formación sobre como gestionar el almacenamiento y crear la infraestructura en la nube, apache spark y databricks. En principio con Python.

Pinta interesante, pero es curioso como al final en las prácticas te puede tocar lo que sea. A otro compañero lo metieron en COBOL y otro esta con C# y .NET.

3 3 respuestas
PhDfailer

#3758 Has tenido suerte, te han metido en tecnologías muy demandadas.

3
richmonde
#3758_NaN_:

COBOL

Ese compañero se volverá calvo, pero con la coronilla. Gordo, pero no mucho, y con gafas, pero de pasta.

Le revelarán el pasado, presente y futuro de los tiempos habidos y por haber, y te dirá que COBOL lo es todo.

Ganará una pasta con los años, pero el precio a entregar, será su vida, no-hijos, y no-matrimonio.

Espero que fuese buena gente en vida.

6
refresco

#3758 Ojalá me metieran a mí en el trabajo con esas tecnologias

1
richmonde

#3751 #3752 #3754 Bajo mi punto de vista, el portatil al final del día es la herramienta con la que más vais a trabajar. Y desde luego, que sea lento, corto de memoria o CPU, va a ser un jodido peñazo. No os hacéis a la idea de tan tremenda diferencia que puede ser, que hacer X tarde 2 minutos, o 10 minutos... a hacerlo en una fracción de eso, incluso en algunas cosas, del orden de 7 a 10 veces más rápido.

Para ocio es otro asunto, y si no necesitáis gráficos (por graficos hablo de renders tochos), tirad a un portatil que tanga una CPU tocha y cuanta mas ram y SSD mejor (SSD si es NVME mejor).

Luego... como menciona #3755 o #3756 los Macs son un puto game changer a la hora de trabajar. Y si no es mac, a poder ser que sea con Linux. Windows en este sentido es un coñazo porque la pérdida de rendimiento es real.

Yo puedo decir que en mis curros recientes (10 ultimos años) he pasado por 5 MacBook Pro's diferentes (actualmente un MacBook Pro 16-inch, 2021 - Apple M1 Max con 32GB de RAM), y viendo compañeros del trabajo con Windows equivalentes (Dells principalmente), no tocaría semejante portátil ni que me pagasen el doble.

Si, es cierto que valen más que un windows convencional, y abusan de ello.

Pero van MUY bien.

2
bocadillazo

#3706 me automenciono por si alguien lo lee!:smile:

Exor720

bueno pues semana y media por aquí de prácticas, como mencioné anteriormente usamos nextjs y react + tailwind. Me siento una patata xd tardo 30 minutos para encontrar 2 cosas entre tanto código, se me dificulta un monton navegar, pero guay, hemos terminado un proyecto ya y creo que aporté más que suficiente, y ya me han asignado otros 2 proyectos.

Por ahora guay, aunque no siento que me enseñen mucho, me busco la vida bastante

1 2 respuestas
Nyhz

#3764 Muy buenas tecnologías si te quieres dedicar al frontend, has tenido mucha suerte. Dales caña!

horiznt

Vengo a pediros ayuda, aviso que estoy muy verde pero me he cansado de hacer ejercicios de codigo y quiero intentar hacer algun proyectillo para sentir que vale para algo lo que estoy aprendiendo.

Tenia pensado hacer una app web para concertar citas. Total que queria usar el patron de diseño MVC pero la verdad es que no tengo ni idea de como se lleva realmente a la practica, creo que entiendo la teoria, las partes que lo forman, etc pero a la hora de de la practica no se por donde tirar. Le pregunto a chatgpt y me suelta esto:

Es simplemente una forma de organizar carpetas/archivos? es que imagino que tiene que ser algo mas pero buscando por ahi solo veo cosas de teoria nada practico.

4 respuestas
privet

#3764 Pues lo normal... Así que no te agobies, y disfruta por que estas con buenas herramientas !

#3766 Primero deberías saber que significa cada letra de MVC y entenderías lo que acabas de poner xD No empieces la casa por el tejado

1 respuesta
Kyehs

#3766 Te diría que si vas a hacer ese tipo de proyecto con PHP le eches un ojo a la documentación de Symfony

1 respuesta
horiznt

#3768 crees que es buena idea sin tener casi ni idea de php?
#3767 No entiendo a que te refieres, MVC es model, view, controller.

2 respuestas
BeerSerk

#3766 MVC es un patrón de diseño, significa a groso modo Modelo Vista Controlador.
https://en.wikipedia.org/wiki/Model%E2%80%93view%E2%80%93controller

Básicamente, el usuario hace una petición desde la Vista ( WEB ) hacia el Controller ( capa más externa del back ) y esta capa hacia el repositorio de Datos ( Modelo ), dichos datos pueden ser llamadas a otros servicios hacia su controller, pero a groso modo, es esto.

Lo que tu muestras es una estructura tipo monolito donde todo está en el mismo proyecto.

1 1 respuesta
privet

#3769 Por eso mismo, la imagen deberias poder entenderla.. https://developer.mozilla.org/es/docs/Glossary/MVC

horiznt

#3770 a lo que me refiero es que si MVC es un "patron de diseño" es decir, una forma (de las multiples que hay) de hacer algo en que se materializa eso. No se si me explico, parece que no.

1 respuesta
Kyehs

#3769 te decía PHP porque es lo que tienes en la imagen, para aprender el MVC y hacer un CRUD tampoco te hace falta saber mucho del lenguaje en cuestión

PhDfailer

#3766 si estas aprendiendo a programar olvídate de patrones de diseños,

céntrate en que funcione y que el código sea lo más legible/mantenible posible (en 1 año si lo lees pensaras que es basura, es normal, estas empezando)

1
Mezdelex

Buenas gentuza.

Llevo tiempo pensando en volver a darle un try a Linux ya que en mis tiempos mozos acabé hasta lo que viene siendo la punta del cipote de pegarme con el wpa_supplicant, drivers propietarios sin soporte y demás lindezas de los mundos de, por aquel entonces, Slackware (como prepuber pajillero), y acabé mandándolo a la verga; sin embargo y ya que el ecosistema Linux ha evolucionado tanto estos últimos años, estaba pensando en probarlo de nuevo. Por un lado, realmente no lo necesito; es decir, estoy bastante a gusto con el rendimiento y el workflow que tengo montado para picar bajo Windows. Por otro, según me dice la peña con la que he coincidido como picateclas, soy una aberración, ya que uso Windows prácticamente como si de un ecosistema Linux se tratara, pero con el handicap de provocar rechazo en el colectivo open source por comulgar con Micro$oft pudiendo no hacerlo. Por suerte, he conseguido alejarme finalmente de .NET (digo por suerte no porque no me gustara, que C# me parece brutal como lenguaje, sino porque su language server es una putísima mierda en comparación con otros) y gracias al stack del curro actual tendría la opción de transicionar sin mayor problema.

Dicho esto, me gustaría preguntaros a los que hicisteis el cambio en su día, si realmente os supuso una mejora sustancial y notasteis un mejor rendimiento a nivel general o si consideráis que fue más un efecto placebo y simplemente os acostumbrasteis y ya estaría. No fanboyismo, opiniones críticas plz.

Gracias bellos y bellas.

3 respuestas
Don_Correcto

Pues na, año que hago en la empresa y cero subida :psyduck: Ya hacía unas semanas que lo sabía y he estado planteándome buscar otra cosa, no sólo por el tema del sueldo que también influye, sino también porque no creo que sea la empresa adecuada para crecer profesionalmente. Tecnologías anticuadas, legacy code que peta por doquier, siento que cada sprint que pasa es igual. Sacamos las tareas adelante pero no aprendo nada a nivel técnico.

Se lo comenté a mi manager durante mi revisión anual y justo me ha dicho que me van a cambiar a un proyecto con un stack más actual y dejaré de trabajar con legacy code. Eso sí, durante 6 meses que ya se verá si se prorrogarán o no (me he quedado de piedra al saberlo :psyduck: :psyduck: :psyduck: ). Así a priori Angular (que ya he trabajado anteriormente), Java 17, Docker, montar nosotros mismos el CI/CD, mongoDB y postgre, un poco de IaC (aunque habrá que ver), y por fin podré decir que tendré experiencia profesional con AWS. Esta parte bien, aunque no quiero ilusionarme demasiado, porque de lo que prometen a lo que te dan siempre hay una diferencia.

Así que me he actualizado el CV y he empezado a mirar ofertas de mid level para empresas remotas de Europa/USA, para encontrarme que la gran mayoría buscan seniors o trabajan con un stack (Go, Python o Node) que no es el mío (Java). Casi me da una depresión, pero bueno, con la calma y a grindear.

1 respuesta
squ4r3

#3775 no es mejor rendimiento, yo uso osx, linux y windows a diario, cada uno para cosas diferentes. En linux simplemente vas a tener menos bloat, y va a ser más sencillo tener todas las herramientas que necesitas para programar si lo que programas se va a ejecutar finalmente en linux.

Si tienes windows pero quieres esas ventajas, puedes probar WSL2, aunque tiene bastantes pegas, sobre todo a nivel de networking, pero para lo básico te puede hacer el apaño.

Si no, mira Ubuntu, Pop OS o Linux Mint. Pero vamos, no creo que en un equipo decente vayas a notar mucho una mejora de rendimiento.

#3776 si te sirve de algo, en la empresa en la que trabajo, en USA, usamos Java y Angular, no todo está perdido

1 1 respuesta
wolfie6949

#3775 El rendimiento a grandes rasgos te lo va a definir el hardware. En un uso medio no deberías notar diferencia a no ser que tengas componentes con algunos años y que ya vayan justitos para las últimas versiones de Windows.

En mi caso gasto OSX para trabajar (no me gusta demasiado su sistema de ventanas, pero tiro mucho de CLI y para el caso es como un Linux).
Linux lo tengo en un portátil que tengo para estudiar y hacer pequeños desarrollos, y luego en el sobremesa tengo Windows 11 (lo uso mayormente para jugar) con un WSL2 bien arregladito por si alguna vez tengo que hacer algo de desarrollo, pero me he cansado de intentarlo con Linux en este equipo porque al final acabo a hostias con los drivers de nvidia, xorg, wayland y el setup multi-monitor.

Los sistemas UNIX me resultan muy cómodos para trabajar en desarrollo porque ya estoy acostumbrado a la CLI y voy volando con ella, pero no hago nada que no pueda hacer con Windows. Partiendo de este punto y por lo que cuentas, seguramente Windows sea tu opción mas cómoda así que no le veo el sentido a cambiar. Ahora si te gusta cacharrear, siempre puedes probar en una VM.

1 respuesta
Wei-Yu

No hay necesidad de usar la línea de comandos "porque sí". Entender un mínimo para al menos saber cómo diagnosticar cosas y tirar del cable para no atascarte pero poco más. Por el resto como si quieres programar desde una tostadora que funciona con android 6.

Que yo a título personal cuando veo a la gente compartirme pantalla me parecen casi cavernicolas muchas veces. Pero es que al final del día no tiene importancia y si tardas un día más de lo que yo tardaría en hacer X pues... a quién le importa? Ya tardaré yo un día o dos en hacer algo que otro tardaría 2 horas. Yo no concibo la vida sin la terminal pero vivo rodeado de gente que apenas la toca y... la vida sigue :man_shrugging:

Creo que cuando desarrollas y operas en producción sí está bien entender que trabajas con datos sí o sí y que tu vida también existe más allá del editor. Hacer buenos dashboards y queries en elastic, grafana o aws, meter buenas métricas, coger un dump de datos y enchufarle 50 fórmulas en un excel para ver las cardinalidades del negocio o el escenario... todo eso te va a aportar más que ser un ju4nk3r de linux; muchas cosas las puedes hacer desde la terminal, pero no tienes por qué si no quieres.

1 1 respuesta
Mezdelex

#3777 #3778 #3779 Vamos, que básicamente virgensita, virgensita que me quede como estoy. Ty.

Usuarios habituales