Hace 5 años | Por aiounsoufa a genbeta.com
Publicado hace 5 años por aiounsoufa a genbeta.com

Muchos equipos de desarrollo han sufrido los intentos de medir la productividad de sus programadores. Ya sea con cualquier métrica que el manager responsable haya decidido o con algún plugin instalado en el gestor de tareas que arroje números sin ningún contexto. Todo ello, con la buena intención de saber la velocidad del equipo, aunque a veces se desvia hacia dónde pierden el tiempo los desarrolladores.

Comentarios

F

#3 Ahora las lineas de montaje del A-350 y B787 deben haber pegado una bajada de productividad lolxdxd

D

#3

En realidad es bastante peor. Por lo menos en el avión sabes cuanto va a pesar al final.

p

#2 Hacer commits está sobrevalorado, con uno basta para hacer deploy a producción después de aprobarse uno mismo el pull request

llorencs

#13 Una pregunta seria.
¿Cuando se debería hacer una confirmación (commit)? Más o menos.

PS: No soy desarrollador pero de vez en cuando hago algunas cosillas.

M

#16 Cuando sabes que lo que subas no va a romper nada

Depende mucho como tengas organizado todo, generalmente tienes una rama/s de desarrollo donde es normal que se vayan subiendo y probando cosas a menudo y otra/s de release desde donde se publica a producción las diferentes versiones y que se suele tocar menos. Pero vamos depende mucho de la metodología y ciclos de trabajo que tengan definidos, no hay una regla universal.

inconnito

#16 Un commit en una rama pública debe comprender un único cambio lógico, completo y que compile correctamente, aunque no funcione.

Un cambio lógico no tiene por qué estar reducido a un fichero, pueden ser 20 ficheros diferentes y siete mil líneas de código. Pero tienes que ser capaz de describir el cambio sin utilizar la conjunción "Y" o "además".

j

#16 Independientemente de metodologías y filosofías varias, un commit es un punto en la historia de tu código al que vas a poder volver en el futuro. A partir de ahí ya haz lo que quieras...

Normalmente no quieres volver a cosas a medias porque ni te vas a acordar de cómo continuarlas, y normalmente quieres que si hay un bug y vuelves atrás, puedas volver a un punto lo más cercano posible a cuando se introdujo el fallo.

Así que se suele hacer commit cada poco tiempo siempre que todo esté en un estado consistente.

Un commit público (un push) se hace cuando quieres compartir tu trabajo con el resto de desarrolladores. Generalmente lo antes posible que sea útil. Es decir, cuando funcione y sea poco probable que vayas a romper el API. Aunque si estás en tu propia rama pues ya es un poco más arbirario.

Esto es en el general. Luego depende de cómo tengas organizado tu repositorio y tu flujo de desarrollo. Hay metodologías pre-hechas (como GitFlow) que dan una serie de pautas más concretas de cómo organizar todo. Pero en última instancia esto son herramientas y cada cual las usa un poco como más le conviene.

J

El Quijote en comentarios por cada línea de código = Principal engineer en 2 meses

D

Es una gilipollez hacer algo asi, hoy se te puede dar de muerte, y mañana estar atascado por el motivo que sea.
No es por vagueza. Programar a cierto nivel no es tan facil como muchos quieren hacer creer.

D

""" Cómo aunmentar la productividad"""
Dim Conocimiento_Jefe as Integer
Conocimiento_Jefe = 0
Dim Conocimiento_Jefe as Integer
Conocimiento_Jefe = 0
Dim Conocimiento_Jefe as Integer
Conocimiento_Jefe = 0
Dim Conocimiento_Jefe as Integer
Conocimiento_Jefe = 0
Dim Conocimiento_Jefe as Integer
Conocimiento_Jefe = 0
Dim Conocimiento_Jefe as Integer
Conocimiento_Jefe = 0
Dim Conocimiento_Jefe as Integer
Conocimiento_Jefe = 0

xa_bi

Siempre que se habla de estas cosas recuerdo lo que leí sobre el tema:

https://www.folklore.org/StoryView.py?story=Negative_2000_Lines_Of_Code.txt

j

#17 No conocía la historia. Genial 😂

D

De los mismos que deciden que un código tiene que tener un % determinado de cobertura de test, al final la gente hace test de los Beans, algo completamente estúpido a la hora de la verdad

w

#5 Beans!!! Telita

llorencs

#5 #6 Beans? Qué es/son Beans?

D

#15

El alimento de todo programador que se precie.

llorencs

#21 mmm, ok, no lo pillo lol

Pero, no hay alimento peor que el que me acabas de poner. Bueno, es ideal para una resaca, en mi caso. Ya que me ayudaría a expulsar todas las toxinas por la boca lol

D

#21 alimento "técnico" para sobrevivir

ED209

#5 cierto… estos ojitos vieron una aplicación con una lógica de negocio complicadísima y… ¿qué tenía testeado? Los setters y los getters. Supongo que cortesía de Netbeans.

D

Eso pasa siempre en toda lógica capitalista. Los rentistas (gente que tiene dinero y espera que ese dinero se multiplique mágicamente sin que ellos tengan que trabajar) siempre están convencidos de que hay una ecuación que permite a su empresa ser rentable sin tener que arrimar el hombro, comprender el trabajo de los empleados y hablar con ellos.
Los sistemas de puntuación están muy bien para los juegos, pero en la vida real el trabajo no se puede reducir a un número. El propio concepto de productividad del empleado es falaz porque no tiene en cuenta las condiciones, la calidad o el ajuste correcto entre costes y plusvalía producida.
Apple es matemáticamente una empresa súper productiva para el número de empleados en nómina que tiene. Esto está muy bien para engañar a padefos que creen saber de números para que traigan financiación a la empresa. Pero Apple no se cree su cálculo de la productividad porque sabe que en realidad sus productos se están fabricando en una subcontrata china que es una de las empresas con más empleados del mundo.

D

Esto tiene que ver con un problema muy general, siempre que pones una métrica, una ley, o lo que sea, estás perturbando la realidad. Si premias a los que matan ratas en una época de plaga de ratas, no faltará el que crie ratas para que le paguen por matarlas.

Un ejemplo más desafortunado es el de los falsos positivos en colombia.

p

En mi gráfica de Github me di cuenta que en los meses de verano mi cantidad de aportes bajaba descaradamente. El calor mata.