22 insulti che nessuno sviluppatore vuole sentire

Il mondo della tecnologia è un po 'diverso dal mondo grazioso e acconciato di abiti e venditori in cui tutti sono educati, anche quando odiano il tuo coraggio e pensano che tu sia un idiota. I manager in giacca e cravatta possono sorridere e nascondere il loro vero messaggio nel modo in cui dicono che stai facendo "fantastico, vero grande amico", ma i programmatori spesso dicono quello che pensano e quando quella mente ha qualcosa di spiacevole da dire, guarda fuori, i sentimenti.

Analizzare, disimballare e ordinare gli insulti che gli sviluppatori sling richiedono una pelle spessa. A nessuno piace sentirsi dire che le loro idee e il codice sono tutt'altro che incredibilmente grandiosi, ma alcuni accorgimenti sono migliori di altri, tagliando al centro dei tuoi errori di codifica. In effetti, un buon insulto può contenere una road map per portare avanti il ​​tuo progetto. Se il tuo rivale è disposto a spiegare cosa devi fare per rendere il tuo codice degno di essere utilizzato, beh, vale la pena sopportare qualcuno che ti chiami o il tuo codice "pesante", "crufty" o "pieno di anti-schemi".

Alcune persone sono esplicitamente ruvide e parte di ciò potrebbero essere i meccanismi attraverso i quali riceviamo insulti, quasi mai faccia a faccia. Linus Torvalds sostiene che la posta elettronica è un meccanismo intrinsecamente difettoso che spesso nasconde segnali sottili, come quelli che il reparto marketing scambia muovendo gli occhi. Una volta Torvalds disse a uno sviluppatore dalla pelle sottile: “È dannatamente difficile leggere le persone tramite e-mail. Penso che tu debba essere * più * onesto e * più * aperto tramite e-mail. "

Per un po 'di divertimento, ha inserito una bomba logica nelle richieste di maggiore sensibilità dicendo che la sua cultura include la maledizione. I piagnucoloni potrebbero provare a ricordare che viene dalla Scandinavia, la patria dei guerrieri vichinghi.

Nell'interesse di aiutare il mondo della tecnologia a far fronte alle fionde e alle frecce di una fortuna oltraggiosa, ecco un elenco di alcuni insulti comuni che nessuno sviluppatore vuole sentire, ma spesso lo farà. Preparati.

"Il codice non si compila"

Queste tre parole possono sembrare innocue, anche reali, ma nascondono il vero veleno. Dopotutto, segnalano che il codice potrebbe funzionare senza problemi sulla tua macchina, ma non importa a nessun altro. Hanno provato dove volevano che il tuo codice funzionasse e si è bloccato. Potrebbe essere che non abbiano le librerie corrette installate. Forse stanno usando una versione diversa del compilatore. Possono anche avere un interruttore diverso impostato sull'ottimizzatore. Qualunque sia la vera ragione, nessuno lo sa e nessuno si preoccupa. Tutto quello che vogliono dirti è che hai saltato la seconda lezione di programmazione, quella in cui l'istruttore insegna dove mettere i punti e virgola.

"Pesante"

Qui coding e stoner rock divergono. Per qualche ragione, "leggero" è un complimento quando si tratta di programmazione e "pesante" è un epiteto, come mettere troppe note nel tuo assolo di chitarra. Ma "funzionalità complete" è un complimento e "funzionalità mancanti" è un insulto, quindi cerca di capire. Non puoi avere funzionalità senza aggiungere codice e rendere lo stack più grasso e quindi più pesante.

"Completo da uomo"

Se associ il vestire bene al potere e allo status, nel mondo della programmazione, hai un'altra cosa in arrivo. Dopotutto, solo i fanatici all'oscuro che non sanno nulla di computer ma vogliono entrare e gestire un progetto indosserebbero mai un abito. Le persone che creano software indossano qualcosa di più comodo. Un incrocio tra un kimono e un kilt potrebbe essere il nirvana, altrimenti quel vecchio tie-dye Phish o una felpa con cappuccio se sei più giovane.

Linus Torvalds una volta scrisse: “Se vuoi che io 'agisca in modo professionale', posso dirti che non sono interessato. Sono seduto nel mio ufficio a casa con indosso un accappatoio. Allo stesso modo in cui non inizierò a indossare cravatte, * anche * non accetterò la falsa cortesia, le bugie, la politica dell'ufficio e le pugnalate alle spalle, l'aggressività passiva e le parole d'ordine ".

Se tu, come programmatore, sembri persino colpevole di uno di questi, indosserai l'epiteto, indipendentemente da come ti vesti per lavoro.

"Full of antipatterns"

Alcuni le chiamano cattive strategie, idee stupide o pensiero sciatto, ma ai programmatori piace lanciare la frase "antipattern" per descrivere un modo di costruire codice che non è raccomandato. Sembra più scientifico - e poiché la scienza è la religione della console, dire che il tuo codice è pieno di antipattern è peggio che dire che è cattivo. Sta dicendo che la tua programmazione è immorale.

"Fanboi"

Molto tempo fa, quando i PC dominavano il pianeta e Apple era quasi in bancarotta, alcuni utenti fedeli hanno continuato a cantare le lodi di Apple e prevedere che un giorno il mondo sarebbe arrivato ad apprezzare la bellezza e la raffinatezza dei suoi prodotti. Gli amanti del PC hanno liquidato la loro dipendenza chiamandoli "fanbois".

Anche se i matti amanti della mela avevano ragione, non significa che qualcuno ora ti stia facendo un complimento chiamandoti fanboi. Significa che stai volentieri ignorando la realtà a causa di una devozione troppo zelante a uno strano principio o idea, come Perl o forse .Net, non che stiamo dando suggerimenti.

"Lento"

I computer sono veloci. Come si dice nel reparto marketing, fa parte del loro marchio. Potresti anche dire che è una base del marchio. Dopo decenni di legge di Moore, tutti si aspettano che i computer diventino sempre più veloci.

Purtroppo, i programmatori non sempre offrono qualcosa di veloce. Molti progettisti di hardware adorano affermare di aver mantenuto la loro parte dell'affare. Sono i team del software che producono codice gonfio e inefficiente che risucchia la vita dai chip più veloci.

Anche se abbassare la temperatura e prendere il tuo tempo si traduce in carni saporite, arrostire lentamente il tuo codice è un no-no.

"N00b"

Qualcuno potrebbe essere all'oscuro come un nuovo assunto? Probabilmente lo scriverebbero con lettere e non cifre. (Vedi anche: "gnubie": uno che non ama l'open source.)

"Risorsa"

Strano, c'è un intero dipartimento deciso a mettere in relazione ciò che è umano in noi con il termine economico "risorsa". Sembra fondamentale per la nostra occupabilità apparire almeno intraprendente. Ma se un programmatore ti chiama una risorsa, potrebbe anche chiamarti un mattoncino Lego nel muro o un altro ingranaggio nella macchina. Non sei nemmeno un pezzo di carne: sei un automa o una chiamata di funzione che sputa codice.

"Crufty"

Crufty: un design che viene messo insieme, spesso con detriti residui di altri progetti. Un pasticcio acciottolato assemblato con poca lungimiranza o intelligenza. Un Frankenstein sciatto e cucito che funziona a malapena. Fai la tua scelta, quando vedi la parola "crufty". Probabilmente, non è solo il tuo codice che stanno commentando; potresti essere tu e le tue idee.

"/ Dev / null"

Nel mondo Unix, il dispositivo null è un buco nero che dimentica tutte le informazioni che gli vengono inviate. Viene utilizzato principalmente per testare i driver di dispositivo e altro codice che elabora i dati. Come metafora, è un modo disinvolto perfetto per dire che il promemoria che hai scritto non vale la pena di memorizzarlo su disco o di inviarlo alla stampante.

"Kluge"

A volte non hai tempo per rifinire quel progetto secondario che metti insieme nei fine settimana, solo per scoprire che altri 2.000 sviluppatori dipendono improvvisamente da esso. Con la seconda ondata di interesse arrivano gli insulti. Cos'è questo repository messo insieme in un unico file? Una soluzione conveniente, non elegante. Un lavoro in pannocchia. Una collezione virtuale di filo per balle e nastro adesivo progettata in un istante perché è tutto il tempo che c'è. Ecco come il tuo codice indossa un badge contrassegnato come "kluge". Nella migliore delle ipotesi la tua programmazione è vista come una soluzione che può avere successo temporaneamente ma alla fine fallirà perché non è abbastanza approfondita per risolvere il problema correttamente, anche se resiste alla prova del tempo.

"Bitrot"

Il codice generalmente inizierà a fallire quando il sistema operativo, le librerie o altri sistemi vengono aggiornati. Le versioni più recenti hanno più funzionalità, accettano parametri diversi o talvolta fanno ipotesi diverse. In altri casi, i programmatori hanno corretto un bug che il codice presumeva fosse presente. Il vecchio codice non fallisce completamente, almeno all'inizio. Ma inizia a diventare scricchiolante mentre sempre più chiamate al sistema operativo o alle librerie iniziano a fallire. Se non investi nel rinnovare le tue conoscenze e migliorare il tuo codice, inizi a marcire come un vecchio pesce. Le persone possono essere dure quando lo sottolineano.

"Bogon"

L'elettricità viaggia attraverso un flusso di elettroni. La luce viaggia attraverso i fotoni. Stupidità? La particella bogon è responsabile del comportamento fasullo e della bogosità generale. Faresti meglio a sperare che il flusso bogon tra le tue dita e la tastiera non sia misurabile. (Nota: l'opposto di un cluone.)

"Bozo bit"

All'inizio, Apple ha cercato di aggiungere la protezione dalla copia al software aggiungendo un bit in più all'intestazione del file dell'applicazione. Se fosse impostato, il sistema operativo rifiuterebbe di copiare il file. Ha funzionato bene finché tutti non hanno capito come modificare l'intestazione e capovolgere un po '. Sebbene a tutti piaccia essere paragonati ad Apple, a nessuno piace sentire che una nuova architettura elegante o un set di funzionalità ricorda a qualcuno il bozo bit.

"Fragile"

Codice fragile e incapace di funzionare con la necessaria resilienza, ovvero quello che dicono sui risultati del tuo lavoro. Certo, quando il tuo codice ha compilato e superato tutti gli unit test, hai festeggiato. Ma poi qualcuno ha cambiato gli input o ha aggiunto una divisione per zero e il tuo codice si è bloccato. In quel momento ti rendi conto che c'è di più nello scrivere codice che assicurarti che funzioni al primo test.

"Programmatore cult del carico"

Questo insulto fa riferimento a un famoso racconto di Richard Feynman su un'antica tribù che legava insieme alcuni tronchi per costruire quello che sembrava un aeroplano. Perché? Sapevano che gli aggeggi alati portavano visitatori straordinari con carichi di valore dal cielo. Pensavano che costruire qualcosa che sembrava avere le ali avrebbe prodotto gli stessi risultati. Nel caso del software, colui che costruisce un sistema basato su una superficiale incomprensione del problema è quello che viene etichettato come un "programmatore di culto del carico". Un giorno la teoria a metà su cui hai basato il tuo lavoro potrebbe sembrare divertente anche a te.

"Delizia per gli occhi"

Alcune persone scrivono codice della riga di comando che fornisce le risposte in un testo semplice. Altri costruiscono interfacce utente appariscenti con codice danzante, pulsanti lampeggianti e colori accattivanti. Possono persino incorporare diversi video, a volte con bellissime modelle con occhi che non incontrano mai i tuoi. C'è qualcosa sotto? Il capo non guarderà il codice. In altre parole, un bel viso copre un nucleo vuoto.

"Hackish"

Il lavoro “hack” è sovraccarico di vari significati, alcuni positivi e altri negativi. "Hackish" è più o meno lo stesso. Alcuni lo usano per suggerire una manovra intelligente che sarebbe apprezzata dagli hacker più astuti. Altre volte è un trucco che non è abbastanza veloce per essere un hack, non abbastanza solido per essere reale.

"Mangler"

"Mangler" ha un'ovvia qualità offensiva e sottile. Se hai alterato il codice - beh, cos'altro puoi aspettarti? Il termine è anche usato, almeno nei cubicoli di codifica, in sostituzione della parola "manager", come in "project mangler" o "division mangler", per mostrare come gli artigiani si sentono nei confronti dei burocrati. Ovviamente, i manager hanno un termine diverso per le persone che promettono in modo eccessivo e che fanno male. Si chiamano programmatori.

"No op"

Qualcuno che non fa nulla è un no-op, in riferimento a un'istruzione binaria vuota che scorre attraverso la CPU senza cambiare nulla. Nessun operatore riempie il flusso di istruzioni e aiuta con il debug. Alcuni processori utilizzano codici no-op con rappresentazioni intelligenti in esadecimali. (Vedi "deadbeef.")

"Casualità"

Alcuni degli algoritmi più intelligenti si basano su un flusso costante di numeri completamente casuali per trovare soluzioni - alcuni, cioè, ma non tutti. In effetti, la maggior parte non lo fa. Puoi vedere come coloro che sono perturbati dalle perturbazioni nel tuo codice potrebbero etichettarlo come tale. Certamente non vuoi che le tue e-mail, promemoria o documentazione siano visti come virate casuali nella speranza di centrare qualcosa di importante. (Antonimo: esperto.)

[Niente]

L'unica cosa peggiore dell'essere insultati è essere ignorati.

Articoli Correlati

  • 21 tendenze di programmazione calde e 21 fredde
  • 9 previsioni per il futuro della programmazione
  • 9 cattive abitudini di programmazione che amiamo segretamente
  • Le 13 abilità di sviluppatore che devi padroneggiare ora
  • Download: guida alla sopravvivenza aziendale per programmatori professionisti
  • Download: 29 suggerimenti per avere successo come sviluppatore indipendente
  • Programma il mondo: 12 tecnologie che devi conoscere ora
  • Attacco ai linguaggi di programmazione di una lettera
  • 9 linguaggi di programmazione all'avanguardia che vale la pena imparare ora
  • 7 lezioni senza tempo di programmazione 'graybeards'
  • 9 progetti di ricerca che potrebbero trasformare l'impresa
  • Recensione: i quattro grandi IDE Java a confronto
  • Download: pratico con 17 editor JavaScript e IDE
  • 11 database all'avanguardia che vale la pena esplorare ora
  • 33 battute peggiori mai pronunciate dai reclutatori tecnologici
  • 10 battaglie che infuriano per i cuori e le menti degli sviluppatori
  • 15 tecnologie che cambiano il modo in cui lavorano gli sviluppatori
  • Sviluppo: saluti a 19 generazioni di programmatori di computer