Feda /dev/ - No Javascript allowed

Normas
spoiler
Personas non gratas
Memes feda dev




Wei-Yu

#45240 esa policy ya está puesta

siempre puedo ser yo que "se me escapan demasiadas cosas en las PRs", pero aún a sabiendas de que puedo mejorar no me creo que lo haga tan mal y siempre hay cosas que son genuinamente difíciles de detectar leyendo el código (si fuera tan fácil no harían falta e2e en primer lugar no?)

1 respuesta
Lolerpopler

#45241 Por lo que describes suena a que el lead haciendo esos merge es el menor de tus problemas.

  • Dices que el codigo es dificil de ver en donde estan los problemas, es ya te deberia de estar diciendo que hay un problema, o el codigo es muy rebuscado o la calidad deja que desear
  • Hay mucho coverage de e2e tests pero solo happy paths. Aqui hay 2 problemas, el coverage es un indicador muy "naive" de code quality, tu mismo lo estas diciendo y es algo que hay que concienciar a los demas. Lo ideal es tener una suite o framework que te haga la vida facil, que puedas escribir un test, parametrizarlo y cubrir varios casos
  • "se me escapan demasiadas cosas en las PRs", pues como a todos, Hay que aceptar que siempre se va a escapar algo, aqui esta bastante claro que tener un entorno de QA (y algun proceso de QA) es lo que necesitais, un paso intermedio antes de ir a master.

Un poco sidetopic. Justo estaba escuchando esta entrevista que trata un poco el tema de testeo

desu

#45239 no aprueves las PR, si los demas lo hacen y petan es lo que hay

1 respuesta
Kaledros
#45243desu:

no aprueves las PR

Esto. Si apruebas una PR que sabes que no deberías haber aprobado no sólo haces mal tu trabajo sino que absuelves al inútil del otro dev de cualquier responsabilidad.

B

No se porque seguís haciendo PR sinceramente, nunca me gustaron especialmente y ahora que no hago me gustan menos aún.

1 respuesta
Wei-Yu

no me puedo explicar tan mal :sob:

Kaledros

#45245 A mí tampoco me gustan. En el mejor de los casos es una pérdida de tiempo o un blind approve y en el peor es una pérdida de foco durante un buen rato para hacer algo que ni me va ni me viene. El único sitio donde he trabajado que lo llevaban bien era uno en el que en el team habían 3 tíos que compaginaban su trabajo con el code review y tenían menos carga que los demás, lo convertías en parte de su jornada y no les castigabas por ello.

1 respuesta
B

#45247 si fueran al menos merges de un tamaño decente, aún, pero encima la gente es incapaz de hacer split del curro que tienen que hacer, al menos en mi experiencia eran todo PR de trillones de cambios y el 101% de los ficheros modificados xD

2
isvidal

ftp > pr

1
Zireael

Que decís de pr? Se hace push a master directamente.

_Rpv

fp > pr

TitoBurns

No coding > ftp

neZbo

sftp > ftp

1
desu

git no se invento para usarse con pull request, paginas como github y gitlab se crearon para engañar a las empresas y sacarles los cuartos por culpa de incompetentes como vosotros.

git send-email is da way

y para code review algo como critique

svn > git

PiradoIV

La vida es demasiado corta para hacer PRs en repositorios privados. Todo a main y pista. Cada miembro es responsable de sus lineas sagradas de código.

desu

otro clean coder... madre mia que puta porqueria de codigo

no se que es peor, esa mierda de codigo o que no sepa hacer un benchmark

> 192K subscribers

pantocreitor

ogt > pr

desu

@kaledros a ver puto subnormal te lo voy a explicar una vez y espero que nunca cagues esta mierda otra vez.

cuando tienes un modulo solo lo haces publico si se va a utilizar por alguien externo...

si estas en tu proyecto y quieres hacer submodulos para organizar tu codigo, por algun motivo de mierda, metelo en la carpeta /internal... de esta manera podras usarlo desde /pkg sin necesitar de exportar los simbolos.

/cmd/bin_name/bin_name.go => dentro de cmd una carpeta por binario y ahi tienes un main module para el entry point de cada uno
/pkg => para paquetes de este modulo que quieres EXPORTAR, es decir cosas PUBLICAS que van a usar otros modulos
/internal => modulos privados a este modulo

si estas haciendo un binario, es decir para los de fp un ejecutable, no vas a querar tener un pkg....
si estas haciendo una libreria, es decir un modulo que vas a exportar, no vas a tener un cmd...

de nada fperos, es que entrar en un proyecto en go donde todo esta dentro del /pkg, incluido el main.go, y todo esta exportado y tener que ir a github de la empresa para buscar si eso se usa o no... me cago en mis putos muertos

1 respuesta
isvidal

Soy el unico loco que tiene siempre la barra de marcadores visible (Y la uso) en todos sus navegadores?

3 respuestas
Wei-Yu

usa un fuzzy finder para los marcadores como la gente normal que pareces mi padre

Dr_Manhattan

#45259 yo también la uso.

PD: menudo theme te gastas en MV, solo lo superaría el de las super nenas

2 respuestas
LLoid

https://www.deeplearning.ai/short-courses/chatgpt-prompt-engineering-for-developers/

1 respuesta
isvidal

#45261 el del señor de los anillos es el mejor tema oscuro de todos

1 respuesta
Amazon

#45259 #45261 #45263 yo también uso la barra siempre

1 1 respuesta
Dr_Manhattan

#45264 joder, me voy a poner yo también el de las super nenas, que me han entrado ganas

desu

#45262

JuAn4k4

#45259 Creo que lo hacemos todos, otra cosa es como de organizado seas. Mi forma de usarla es un poco peculiar, porque suelo escribir en la barra de navegación el nombre del bookmark en lugar de buscarlo con el ratón

desu

Este es un error muy comun que veo: https://blog.sulami.xyz/posts/type-level-programming/

Y en su dia hice una sesion de type driven design donde comente lo mismo. Que tengas una propiedad dinamica no significa que tengas que usar codigo dinamico, puedes aplanarlo.

struct Pin {
   mode: Input, Output 
}

vs

struct Pin {}
struct PinInput {}
struct PinOutput {}

Un claro ejemplo ademas de data oriented design y embedding, como enseño andrew kelly en su famosa clase.

Si tuvieses otro enum anidado ademas podrias hacer esto:

struct Pin {}
struct PinInputFoo {}
struct PinInputBar {}
struct PinInputBaz {}
struct PinOutputA {}
struct PinOutputB {}

Que es el ejemplo que enseño Andrew. Donde si ademas esto es algo utilizado a millones te ahorraras mucha memoria y tindras mas performance.

Y mueves toda la maquina de estados, un error que le gusta mucho cometer al fpero de @Juan4k4, al sistema de tipado. Ademas de tener comptime garantees te ahorras implementar la logica de aserciones en runtime.

1 respuesta
JuAn4k4

#45268 Máquinas de estado ftw. Tener tipos con un solo valor está bien y es bastante común usarlos, lo que pasa es que cuando lo usas no se ve realmente que otra opción es usar un enum y generalizar, cada vez pienso que las generalizaciones son el mayor saco de mierda que existe. El doraemom de la mierda código


Hoy ha tocado discutir con el idiota de mi equipo (que ha afectado a mi performance review.. pero eso ya para otro día). El algoritmo de Maglev, que el tío se ha inventado (no sabe leer un paper) que las keys no cambian nunca de server al hacer scale ups.

Pues para que en la próxima performance review no me puedan decir mucho, he tenido que hacer un: vale lo que tú digas campeón, y perdón al resto que estaban en este thread porque no era la intención discutir chorradas con este gilipollas por aquí. (Pero con amables palabras).

Tuskus

Buen centrocampista el maglev ese, de salió en el estrella roja a principios de los 90

4