Feda /dev/ - No Javascript allowed

Normas
spoiler
Personas non gratas
Memes feda dev




Zoko

#34947

Dejar de usar Java.

3 1 respuesta
desu

#34951 yo no toco el codigo de java, solo hago go

pero he visto esto y he tenido que comentar...

en que mundo la gente prefiere meter una abstract class, en lugar de escribir 6 lineas de codigo???

B

qué pasa hoy? está esto muerto

1 respuesta
newfag

#34953 es viernes y la gente está pensando en birras

B

¿Creéis que Jastro quiere más a los de la taberna de game/dev que a nosotros?

Es triste reconocerlo, pero yo creo que sí, porque por allí se pasa a saludar y eso, pero por aquí solo viene a decir que no reportemos a desu o a darle manitas a la rata africano-andaluza

Está llegando el momento del levantamiento del pato phd

1 respuesta
Jastro

#34955 yo aqui no saludo, la ultima vez que salude por aqui, solo recibi insultos, no soy bien recibido :(

Tanto, que estoy en la lista de personas non-gratas

1 respuesta
B

#34956 ahhh entiendo entonces que no quieras saludar, ya sabes, hay quien piensa que los coloreabotones y los game dev no son verdaderos devs :wink:

1
Wei-Yu

Acabo de cerrar la entrevista de la empresa de pair programming de 4h/día y joder muy majos y me gustó mucho hablar de mierdas mientras íbamos haciendo el ejercicio.

Lo que sí que dudo que me pillen por cómo trabajan que no estoy acostumbrado (trunk based con CD directo a prod), pero por el resto creo que es la primera vez que me quedo a gusto tras una entrevista con código en directo y no agotado.

3 2 respuestas
Kaledros
#34958Wei-Yu:

trunk based con CD directo a prod

Escalofríos

Lifecasi0

#34958 Nosotros trabajamos haciendo pair programming las 8h y directamente a master. Tengo cero experiencia previa a trabajar de esta manera y me cogieron del tirón. Si te has visto bien, que no te importe demasiado el no estar acostumbrado a trabajar de esa manera, se aprende rápido.

1 1 respuesta
desu

#34960 que quereis decir el codigo directamente a master?

si no va a master donde va? os lo guardais? XDDDDD

no hablo fpero, traduccion

1 1 respuesta
Wei-Yu

#34961 yo lo mando a main porque no soy un machirulo

7 1 respuesta
desu

#34962 ahora enserio cuando os veo discutir de estas cosas, o cuando la CR que he hecho esta ma;ana que veo gente que nunca ha implementado un compilador o no sabe como funcionan las cosas a bajo nivel.

pienso que tengo sindrome del impostor. porque no solo estoy en el top 0.0001, estoy en el 0.00000001 no me jodas panda de fperos.

@frekaice creo que eras tu y algun otro pero voy a preparar una presentacion en twitch, porximas semanas, "student class" porque never a master

1 1 respuesta
Wei-Yu

En el curro tengo (sigo siendo el único en back equisdé) CI trunk based con merge a master tras cada PR, pero eso es muy distinto a que cada merge a master ya te lo mande directamente a prod.

p.d: sí, las PR de back a mí mismo shrug, pero como es squash usamos la pr para el historial y en front ya hay más gente

1 1 respuesta
desu

#34964 pero pasa por una PR no? no entiendo la diferencia con lo que estas diciendo.

1 respuesta
Wei-Yu

#34965 nosotros lo que hacemos es pr desplegada a un entorno de dev, merge a master te despliega en test (siendo test el stable de dev). Rama release/*.*.* triggerea las builds de staging y prod escalando por aprobaciones.

eso es distinto de mergear a master y llevártelo a prod full continuous delivery

1 respuesta
desu

#34966 a vale. ahora entiendo.

bueno CD lo puedes tener sin tener entornos o con ellos. depende de como hagas los acceptance tests.

tener multiples entornos es bueno para servicios grandes. para mi CD lo mas importante es tener builds periodicas.

este es un tema que discutimos a veces como mejorar. tener triggers de master periodicos es lo mas importante. en microservicios es facil romper servicios externos que tengan dependencias y no pillarlo en acceptance tests.

si entrevisto con ellos les destrozo vivos por no tener entornos. hay mucho tipos de bugs, sutiles, que nunca detectaran sin un pre. xq si todo va a master que mas les da tener un entorno extra o no? todo lo mio va a master pasando por pre..

frekaice

#34963 Ok! Intentaré estar atento a cuando pongas una fecha

JuAn4k4

A master ? Estáis deprecated, va a main.

1 respuesta
Lifecasi0

#34969 Master & commander, de toda la vida.

B

el festival del humor

1
desu

george hotz ha vuelto a streamear, chat sub mode, si le hacen preguntas de fpero deja de streamer otro a;o XD

lo que yo deberia hacer con vosotros

ThOrKeMaD

Buenas!

Resulta que me gustaría descargarme unos Twitter spaces de un perfil y he encontrado esto:

https://github.com/nicolas-siplis/moonbird

Alguien me podría explicar en modo megaboomer step by step como hacerlo? O si conocen otra forma más fácil pues también bienvenido. Gracias!

1 respuesta
Amazon

#34973 https://doc.rust-lang.org/cargo/getting-started/installation.html

1 respuesta
ThOrKeMaD

#34974 eso no es para boomers, no me voy a enterar una mierda. Necesito rollo steps 1, 2, 3

2 respuestas
Amazon

#34975 step 1 https://doc.rust-lang.org/cargo/getting-started/installation.html
step 2 https://github.com/nicolas-siplis/moonbird

B

#34975 https://doc.rust-lang.org/cargo/getting-started/installation-step-by-step.html

1
desu

Como implementar una interface de 0. Vi por ahi un ejemplito y lo estoy expandiendo un poco con mas casos.

Dos lineas de codigo, dos punteros:

  • Guardarte el puntero al iterador que implementas
  • A partir del puntero acceder al struct concreto en runtime

Fin. No hay mas fpero.

https://github.com/vrnvu/zig-iterator/blob/master/src/main.zig

Luego a partir del puntero de tu interface, accedes al struct

            const self = @fieldParentPtr(Self, "iterator", iterator);

https://stackoverflow.com/questions/15832301/understanding-container-of-macro-in-the-linux-kernel

Para tener un metodo default, al crear la interface le pasarias el puntero por defecto, luego al implementar sobreescrives este puntero a la funcion...

Para una "abstract class" o "jerarquia de interfaces". Tenemos un struct hijo dentro de un struct parent. Donde el metodo default es el del padre. Al crear el hijo, asignamos el nuevo puntero.

Beautiful code.

pub fn fold(
    comptime T: type,
    f: fn (acc: T, val: T) T,
    iter: *Iterator(T),
    init: T,
) T {
    var acc: T = init;
    while (iter.next()) |val| {
        acc = f(acc, val);
    }
    return acc;
}

Ahi tienes tus funciones genericas, solo pasales tu interface y voila.

1 respuesta
B

yo me llamo ralph

1
r2d2rigo

Todo esto para decir que zig es un lenguaje de mierda que no implementa ni lo más básico.

1 respuesta