L'uso di questo sito
autorizza anche l'uso dei cookie
necessari al suo funzionamento.
(Altre informazioni)

Tuesday, October 25, 2016

Some basic IT types

A short, non-exhaustive list of basic types I met while working in IT.

The jobber, a.k.a "The reliable". Does what needs to be done, nothing more, nothing less. Seldom takes initiatives, and when he does, they're on the excruciatingly safe side. For instance, she may change a comment o clarify it. Because he does not care endless repetition of the same task, and is apparently impervious to boredom, he is often assigned to reporting, the printing subsystem, backups, and fixing the bugs nobody else has ever been able to reproduce. Infinitely useful in production. Gets scared if talked to abruptly, or too loudly.

"The visionary", a.k.a. "whizkid", "The maniac". Always getting up to speed on the latest technologies, harbors a deep disdain for anything that's been developed before than N years ago (N>0.5). Seldom seen installing software at the RC level, favors pre-alphas or nightly builds. For this reason, the machines he's been using for more than three days need to be reinstalled from scratche before they can be passed on. His projects, usually a wreck of failed dependencies from abandonware, do sometime evolve in the prototype of the next great product. Anyway, nobody can ever tell what the visionary's current project is about, because he  describes it in obscure utterances that Mr. Wolf (QV) himself takes a day to parse:

"My paradigm shifting, game changing idea is a Cordova project built with Bower and Grunt, of course I threw in Moustache for templating and Angular - Ionic, really - as a framework. It is nearly at the deploy stage, which will be in a microservices matrix on Digital Ocean created using Terraform and based on Kubernetes clustering technology". 

Should never be given checkin permission on official repositories.

Mr. Wolf a.k.a "I solve problems". An omnivorous reader, he is constantly reading up on everything, never really becoming a specialist of something. He solves problems that baffle most anyone, but he gets quickly bored and he's back on reddit or hacker news after delivering a three day "proof of concept solution" ("I'm sure the guys will figure out the details by themselves, better than I can"). Usually distant, aloof and detached, has a hard time switching contexts, and may dreamily remark "Oh, you talking to me? Would you remind repeating?" after ten minutes of being spoken to. Depending on his/her level of attention, he may answer in maddening monosyllables ("Do you know a solution for quantum gravity?" "Yes") or keep on talking for the balance of the afternoon. His code must be closely reviewed by The Jobber or by Auntie (QV) to tie up the hundreds of loose ends and missing details. On the other hand, one can converse with him about quantum physics or XV century Flemish waterpainters because "Good you mentioned it, I just read a few interesting things about this".

The Anal Retentive, a.k.a "Auntie". Fastidious in the extreme, the anal retentive is the universal source of overengineering. If a project has the dreaded "Are you sure that you are sure that you want to do this?" popup/feature, Auntie is invariably the author. Spends his/her free time dreaming up unforeseen actions users may engage in, and inventing ways to block them. His projects are the wet dream of bondage practitioners and the screaming nightmare of user support, flooded by phone calls of users unable to proceed past the welcome screen because "You do not have permission". When given a data model, Auntie releases a database in 13th normal form that nobody would be able to use, except it comes accompanied with 10,000 documented use cases. This way, when asked about the product, Auntie can roll up his eyes, sigh despiritedly, and say "It's all described in the use cases. Have'nt you read them?". A tireless worker, Auntie  is a useful, sometimes necessary presence. But he will drive you insane.

Elliott a.k.a. "The socially challenged". Has exchanged no more than four sentences with the co-workers since the day he arrived. His desk is cluttered with stacks of objects - manuals, electronic equipment, pizza cartons, cheese bagels in various stages of decay - which hide him from view. His hours are unpredictable, as proved by the fact that he answers email (if ever) at 3 AM. "I stopped using Tor long before the NSA thing, the level of privacy it offers is nothing less than laughable". His checkins are impeccable and his code brilliant, but everyone expects to see him hauled away by the Police any day.

The Ballast, a.k.a "The fish", "The idiot". Started dabbling in PHP at school, mixing html and code. Still does. If told "framework", The Ballast exhibits the blank stare of a mackerel confronted with a photo of the Large Hadron Collider. Persuaded that SQL injection is an intractable problem, was puzzled by the "Bobby Tables" cartoon and did not even smile at it. "I'd really like to read up and study, but what with all my day to day workload". This type is a catastrophe, but - being extremely cheap - it's always very well represented.

Mozart, a.k.a "The genius". Has deep knowledge of 14 programming languages and has written popular projects in all of them, as well as designing one of his own (due in the next ACM conference on languages). Mozart's github has 397 forks and 12000 yearly downloads. "Oh, no, I finished this weeks tests and checkins early Tuesday. This one is my weekend project." His resume lists stints at all the major industry outlets, and he sometimes drops lines like "...I know, this is something I must have tried to explain to Linus 100 times. At a minimum." , "Larry (Wall) and Guido (van Rossum) also chimed in, so yes,  all the old gang was there.". Never around for long.

"Been there, done that" a.k.a. "The veteran". "Yes, it is the same exact thing we used to do on the CDC Cyber 7600. Of course, today we have a different DCL and much more resources". Usually spotted among the sysadmins.

"The peripheral" a.k.a "Stressed out". Disillusioned by the core job (often because of a close cooperation with Auntie) has applied to QA or User Support, realizing too late of having fallen from the frying pan into the fire. Constantly confronted with the trivial ("Of course you have to turn the PC on") or the absurd ("I can assure you long term weather predictions were never a part of our inventory management software") he has developed brilliant evasive  tactics ("Did you upgrade the graphic card and mouse drivers, and applied all the OS updates? Get back to us when you are done" - "NOTABUG - WONTFIX"). Nevertheless, the job is taking its toll. Seen by the colleagues as a harbinger of bad news and as somebody out of the loop, is treated by them with condescending lines: "Of course a basic understanding of the technology is needed...". Usually resigns in two years.

"Bastard Operator From Hell", a.k.a "Herod". A school buddy of the founding partners, his authority is unassailable. Manages network security, resources and - often - telephony and has elected Argus Filch (the Hogswarth warden) as a role model.

"I cannot understand what use can you possibly have of print privileges."
"We were running low on space and, since you where not using it fully, I had your new 1TB disk replaced with a 500MB one. It's more reliable, and you can still use some space on the server."
"Of course we removed the network card and blocked all USB ports. The licensing machine has to be secure."
"WI-FI??????? You outta your mind kid??"

The Old Fart, a.k.a "The retiree".
    "You know, I never really got along with this OO fad."
    $ ed README
    "Was it on usenet?"
    "Mine is a lightweight site. It shines on lynx"

Monday, October 24, 2016

Alcuni tipi base in IT

Una lista, non esauriente, di alcuni tipi base di personalità che ho incontrato lavorando n campo informatico.

Lo sgobbone, ovvero "L'affidabile"": Fa quello che è necessario fare. Niente di più, niente di meno. Raramente prende iniziative, e quando lo fa, sono prudentissime, tipo rendere più chiaro un commento. Si aggiorna solo per quello che è necessario ai compiti che deve svolgere al momento. Poichè non gli pesa ripetere la stessa attività un numero arbitrario di volte ed è apparentemente incapace di annoiarsi, in genere gli vengono affibbiati i report, i sottosistemi di stampa, i backup e i bachi che nessun altro riesce a riprodurre. Utilissimo in produzione, basta non rivolgergli la parola troppo bruscamente o a voce troppo alta, che si spaventa.

Il visionario, ovvero "Il Ciappinaro": insegue costantemente l'ultima tecnologia, sdegna tutto quello che è stato fatto N anni fa (N>0.5). Di rado installa qualcosa che è allo stadio RC, preferisce le alpha release o i nightly build. Di conseguenza, le macchine che ha usato per più di tre giorni vanno reinstallate da zero prima di passarle ad altri. I suoi progetti naufragano miseramente in una jungla di dipendenze da abandonware oppure diventano il prototipo del prossimo prodotto di successo. Nessuno è in grado di dire esattamente su cosa stia lavorando, anche perchè descrive i suoi progetti con frasi criptiche che anche Mr. Wolf ci mette una giornata a decodificare.

"Si tratta di un progetto Phonegap che usa Bower e Grunt per il build, Moustache come sistema di template e Angular - Ionic, in realtà - per l'MVC. Presto farò un deploy di test in una matrice di microservizi su Digital Ocean usando Terraform, con una tecnolgia di clustering basata su Kubernetes.".

Da tenere alla catena, lontano dai repository ufficiali.

Mr.Wolf, ovvero "Risolvo problemi": Onnivoro, legge qualunque cosa e si aggiorna costantemente su tutto senza mai diventare specialista di quasi niente. "Risolve problemi" che lasciano perplessi tutti gli altri, ma dopo tre giorni si annoia, molla tutto e torna su redddit o hacker news.
Normalmente distratto, quando è assorto ha grandi difficoltà a cambiare contesto: capita di parlargli per dieci minuti prima che dica, con tono sognante "Ah, ma parlavi con me? Ti dispiace ripetere?". A seconda del livello di attenzione in cui si trova, può dare risposte monosillabiche alla Clouseau ("Sai se sia possibile quantizzare la gravità?" "Sì") o parlare per un pomeriggio intero.
Il codice che sviluppa dev'essere ripassato da uno sgobbone o da Zietta per mettere a posto i diecimila dettagli che mancano. In compenso ci si può parlare anche di meccanica quantistica e degli acquarellisti fiamminghi del '400, perchè "ha letto alcune cose al proposito".

anal retentive, ovvero "Zietta": Ossessivamente pignolo, è quello che introduce l'overengineering nei progetti. Se in un progetto esiste il popup "Sei sicuro di essere sicuro di voler fare X?", l'ha fatto lui. Passa il tempo libero a immaginare azioni impreviste che gli utenti potrebbero intraprendere e ad almanaccare modi per vietarle. I suoi progetti sono il sogno di un appassionato di bondage, e l'incubo dello user support che è bombardato di telefonate di utenti impastoiati nella schermata iniziale perchè "non hanno i permessi adeguati". Se gli si dà un data model, svilupperà un database in 13a forma normale, che nessuno sarebbe in grado di usare, se non fosse che ha anche simultaneamente prodotto 13,000 pagine di use cases, in modo che tutte le volte che qualcuno gli chiede qualcosa sul suo prodotto può rispondere (sospirando) "E' tutto negli use cases. Non li hai letti?". Lavoratore instancabile, è una presenza utile e perfino necessaria. Ma ti tira scemo.

Elliot, ovvero "L'asociale": da quando è stato assunto non ha scambiato più di otto parole con nessuno. La sua scrivania è costantemente coperta da alte pile di oggetti di varia natura (manuali, schede elettroniche, cartoni di pizza, panini dimenticati in vari stadi di decomposizione) che lo nascondono alla vista. Fa orari imprevedibili e risponde alle email (se risponde) alle tre di notte. Dice cose del tipo "Ho smesso di usare Tor, perchè le garanzie di privacy che offre sono risibili.". I suoi checkin sono impeccabili, il suo codice brillante, ma tutti si aspettano che prima o poi i carabinieri arrivino e lo portino via.

Il peso morto, ovvero "Il programmatroto": ha imparato a scrivere un po' di php quando studiava, mischiando html e codice. Continua a farlo. Se gli dici "framework" nei suoi occhi compare l'espressione perplessa che ha uno sgombro davanti alla fotografia del Large Hadron Collider di Ginevra. E' convinto che la SQL injection sia un problema insormontabile: quando ha visto il cartoon di Bobby Tables, non ha neanche sorriso. "Eh, mi piacerebbe aggiornarmi, ma il lavoro è sempre troppo". E' una sciagura, ma siccome è molto economico, è numericamente dominante.

Mozart, ovvero "Il genio": conosce in profondità 14 linguaggi di programmazione, e ha fatto progetti importanti e popolari con quasi tutti. Il suo github ha 12000 download e 345 fork. "Ah, no, i test e i checkin della settimana li ho finiti Martedì. Questo è il mio progetto del weekend". Ogni tanto dice cose come "...avrò cercato di spiegarlo a Linus 100 volte". Non si riesce mai a tenerlo per molto.

Been there, done that, ovvero "Il veterano": "Sì, è esattamente la stessa cosa che facevamo sempre sui Cyber CDC 7600, ma naturalmente oggi abbiamo un altro DCL e molte più risorse." Spesso avvistato tra i sysadmin.

Il periferico, ovvero "Lo stressato": deluso dallo sviluppo (spesso per il burnout derivato dalla collaborazione con Zietta) si è fatto assegnare al QA o allo User Support senza capire di essere caduto dalla padella nella brace.
Bombardato da richieste banali ("Certo che deve accendere la macchina") o assurde ("Ne sono sicuro, le previsioni meteorologiche di medio periodo non fanno parte del nostro software di magazzino"), ha sviluppato brillanti strategie evasive ("Ma prima che cominciamo, ha aggiornato il firmware, il driver della scheda grafica e quello del mouse? Ritelefoni quando l'ha fatto" - "NOTABUG. WONTFIX"). Però, lo stress si vede.
I colleghi lo considerano un messaggero di sventure e uno fuori dal giro e gli dicono cose del tipo "Certo, se non sei aggiornato o non capisci la tecnologia di base...". In genere si licenzia dopo un paio d'anni.

Bastard Operator From Hell, ovvero "Erode": Inamovibile per essere andato a scuola coi soci fondatori, è responsabile della sicurezza di rete, delle risorse e (spesso) della telefonia. Ha eletto a suo modello caratteriale Argus Filch, il guardiano di Hogswarth.

"Non capisco a cosa possono servirti i privilegi di stampa."
"Eravamo a corto di spazio e, visto che non lo usavi tutto, ho fatto sostituire il disco da 1TB della tua macchina con uno da 500MB. Fra l'altro è più affidabile, e puoi sempre usare i dischi del server."
"Certo che abbiamo tolto le schede di rete e disabilitato le porte usb. La macchina del licensing deve essere sicura, o no?"
"WI-FI????????????? Sei impazzito?"

The old fart, ovvero "Il pensionato":

    "Mah, io 'sta moda dell'Object Oriented..."
    $ ed README
    "L' hai letto su usenet?"
    "Il mio è un sito web leggerissimo, che si vede bene anche su lynx"