La fixació delirante d’Elon Musk en el codi a Twitter.

Divendres a la tarda, vam saber que Elon Musk havia demanat a qualsevol dels empleats de Twitter que “en realitat escriuen programari” que “enviés un correu electrònic”. [him] un resum del que ha aconseguit el vostre codi en els últims 6 mesos, juntament amb fins a 10 captures de pantalla de les línies de codi més destacades.

Com a vicepresident de tecnologia a Slate, el meu primer pensament quan vaig llegir això va ser “quina pèrdua de temps d’enginyeria”. En segon lloc només per “això són moltes bales per llegir”.

Els “codi commits” en el desenvolupament de programari són els canvis que els enginyers fan a una base de codi. Normalment, els enginyers de programari utilitzen sistemes anomenats “control de versions” que fan un seguiment dels canvis que fan amb notes sobre per què els van fer (com ara “Rastrejar els canvis” a Microsoft Word). Els compromisos aïllats poden ser bastant avorrits. Per exemple, aquí teniu un dels meus de fa uns dies:

Línies de codi informàtic.
Greg Lavallee

Com podeu veure, aquest codi commit va canviar la paraula veritat a fals per a una configuració d’un anunci en un dels nostres butlletins. Coses realment entranyables!

No tots els commits són una línia. Alguns compromisos són enormes! Per enviar una funció molt gran en un lloc o aplicació, podeu canviar milers de línies de codi. Per descomptat, la majoria dels enginyers de programari us diran que aquesta és una pràctica terrible. L’ideal és que els canvis de codi toquin el mínim de línies possibles, de manera que quan els productes inevitablement tenen errors, sigui més fàcil rastrejar quina confirmació ha causat el problema i aïllar el problema.

Si mirem els ulls i ens posem els barrets de CEO de massa empreses, podem imaginar-nos què espera Musk amb la seva sol·licitud. És com una auto-revisió per als enginyers de programari. Si ignoreu la part “codi compromesos”, podríeu llegir això mentre demana als enginyers que parlin dels seus èxits. Però no podem ignorar aquesta part de “codi commits” perquè després la va seguir amb una petició de captures de pantalla.

Ser jutjat per la vostra capacitat d’autopromocionar és un error nord-americà consagrat, però afegir un judici de les captures de pantalla del vostre codi per part d’un noi que mai no s’ha compromès amb la vostra base de codi és un nivell addicional de tonto. Hi ha nombrosos problemes amb la idea de mirar una captura de pantalla d’una peça de codi i després utilitzar-la per jutjar les habilitats d’un enginyer.

En primer lloc, Musk no té el context de per què es va escriure el codi en el moment en què es va escriure i qui l’estava escrivint. El codi escrit a l’últim minut per satisfer la sol·licitud específica d’algun anunciant serà molt diferent del codi resultant d’un esforç de diversos mesos per tornar a dissenyar un sistema. El codi escrit per un enginyer junior probablement no serà tan concis com el codi d’un desenvolupador sènior.

El codi que només ha estat sotmès a una iteració probablement semblarà pitjor que un producte més madur que s’ha creat amb el pas del temps. Sovint, el primer compromís d’una funció és la versió més senzilla que permet a un equip de producte provar si funcionarà, no si és escalable o a prova de bales. Els enginyers haurien de mostrar-ho a Musk, o ell busca un codi madur que el fa dir “wow”?

També hi ha la qüestió de l’estil de codificació. Com diem en el desenvolupament de programari, hi ha més d’una manera de fer-ho (o TMTOWTDI, pronunciat tim-toady). A la pràctica, els equips sovint desenvoluparan maneres preferides de fer les coses per evitar que hi hagi una dotzena de variacions dels mateixos conceptes bàsics. Alguns equips se senten còmodes amb la concisió on es fan moltes coses en una línia de codi (com ara la comprensió de llistes a Python, per exemple). Altres equips marcaran l’intel·ligència durant la revisió del codi com a difícil de llegir i una trampa per a programadors més joves quan s’introdueixin a la base del codi. Entendreria Musk aquestes compensacions mentre ho passa per centenars o milers de captures de pantalla al seu telèfon mentre vola amb el seu jet privat?

Encara més ple, a la majoria de bases de codi reals, desenes si no centenars de desenvolupadors diferents toquen els mateixos fitxers al llarg del temps. Una captura de pantalla és molt probable que el conglomerat de centenars de codis compromesos durant una dotzena d’anys.

Aquest darrer punt és, potser, el major error per a l’enfocament de Musk i per explicar allò que sembla que no entén a Twitter. El codi està escrit per equips. Musk demana presentacions de particulars. Molts dels enginyers de Twitter han treballat allà durant molt de temps amb els mateixos companys. Han desenvolupat la companyonia, la cultura i una manera de fer les coses.

A partir de divendres al vespre, és possible que aquesta reunió ja hagi tingut lloc. No puc evitar preguntar-me com va anar això realment. Va demanar als enginyers que s’aixessin els uns davant dels altres i expliquessin les seves captures de pantalla? Fins i tot se’ls permetia entrar a l’edifici? Va treure algun valor d’això o va ser una prova de fidelitat?

A l’octubre, hi va haver informes de Musk que autoritzava els enginyers de Tesla a revisar el codi de Twitter. Incorporar enginyers sèniors que escriuen programari per a cotxes perquè són “programadors 10x” no necessàriament farà que un equip sigui més productiu. De fet, pot tenir l’efecte contrari, ja que els més familiaritzats amb el producte se senten marginats o com si han de perdre el temps intentant explicar el context de totes les seves decisions de codificació a algú que probablement té ganes d’escriure codi i no escoltar el seu explicacions.

Musk està clarament amb el que sap (codi) i no amb el que hauria de treballar (cultura). Suposar que pot llegir el codi dels enginyers de programari de Twitter i utilitzar-lo per a qualsevol tipus de presa de decisions és pura arrogancia. Però què esperàvem? Aquest és Elon Musk. Probablement continuarà llançant-se de cap a Twitter empenyent qualsevol persona que es faci enrere. Mirarà una habitació plena d’enginyers i els jutjarà en silenci perquè està segur que és el més intel·ligent de la sala alhora que confon l’enginy amb la saviesa.

igual que Va dir Musk el desembre del 2017, m’encanta Twitter. Espero que no desaparegui. Encara no estic segur d’entendre completament què cal arreglar-ho. Però si creu que Twitter s’anirà codificant per sortir dels seus problemes o que aquest codi va ser el problema amb Twitter en primer lloc, té algunes sorpreses per davant. ell.

Future Tense és una associació de Slate, New America i Arizona State University que examina les tecnologies emergents, les polítiques públiques i la societat.

Leave a Comment

Your email address will not be published. Required fields are marked *