tag:blogger.com,1999:blog-69597548853645199092024-02-20T02:06:59.129+01:00L'artigiano di BabeleAlèxandròshttp://www.blogger.com/profile/08313260173187515346noreply@blogger.comBlogger366125tag:blogger.com,1999:blog-6959754885364519909.post-79589888166873903912023-05-13T11:43:00.002+02:002023-05-13T11:43:29.319+02:00Una chiacchierata con Davide Osta sul nuovo Regolamento Macchine: abbiamo parlato di Cyber Security e IA<p>Sono stato ospite di <a href="https://www.linkedin.com/in/davideosta/" target="_blank">Davide Osta</a> per una chiacchierata introduttiva sul <a href="https://artigianodibabele.blogspot.com/2023/04/e-stato-approvato-il-nuovo-regolamento.html" target="_blank">nuovo Regolamento Macchine.</a></p><p>Abbiamo focalizzato le nostre considerazioni su 2 nuovi "campi di gioco" per i costruttori di macchine: cyber security ed intelligenza artificiale.</p><p>Se avete perso l'appuntamento, ecco il <a href="https://www.youtube.com/watch?v=dQoKrxQbAZw&t=80s" target="_blank">link Youtube</a> per poter rivedere l'evento.</p><p>Questo è stato il primo di una serie di appuntamenti che Davide proporrà attraverso il suo canale.</p><p>Il nuovo Regolamento Macchine presenta <a href="https://artigianodibabele.blogspot.com/2021/06/pubblicata-la-bozza-del-regolamento.html" target="_blank">molte novità rispetto alla vecchia Direttiva</a> (che vi avevo anticipato fin dal Giugno 2021), e molte nuove sfide da accogliere e gestire. </p><p>E anche per chi si occupa di documentazione tecnica, cioè per coloro che preparano le informazioni per l'uso della macchina, ci sono nuove aree di conoscenza da esplorare, aree tradizionalmente più legate al mondo del software che al mondo delle macchine.</p><p>Con Davide abbiamo provato ad esaminare alcuni scenari e ipotizzare alcune soluzioni, ma il dibattito è aperto.</p><p>Il nuovo Regolamento dovrebbe essere operativo da Luglio 2023, ma ci saranno 42 mesi di transizione in cui il Regolamento e la vecchia Direttiva saranno parimenti validi, per aiutare le aziende a gestire la transizione, con tutti gli inevitabili adattamenti.</p><p>Quindi, ci sarà tempo e modo per investigare tutte le implicazioni.</p><p>Stay tuned!</p>Alèxandròshttp://www.blogger.com/profile/08313260173187515346noreply@blogger.com0tag:blogger.com,1999:blog-6959754885364519909.post-50625691517095472082023-04-22T09:47:00.000+02:002023-04-22T09:47:17.422+02:00E' stato approvato il nuovo Regolamento Macchine: con un occhio alla Cybersecurity e all'IA<p>Come vi avevo preannunciato in un <a href="https://artigianodibabele.blogspot.com/2021/06/pubblicata-la-bozza-del-regolamento.html" target="_blank">articolo del Giugno 2021</a>, il nuovo Regolamento Macchine è arrivato in porto!</p><p><a href="https://eur-lex.europa.eu/legal-content/IT/TXT/HTML/?uri=CELEX:52021PC0202&from=EN" target="_blank">Qui potete trovare il testo</a> in Italiano.</p><p>Il nuovo Regolamento sostituisce la vecchia Direttiva Macchine 2006/42/CE tiene conto dei nuovi sviluppi tecnologici che investono il settore della produzione delle macchine industriali.</p><p>Alcune delle principali novità:</p><p></p><ul style="text-align: left;"><li>L’aumento della certezza del diritto in merito ad eventuali modifiche di una macchina.</li><li>Una più esatta definizione dei criteri per identificare macchinari potenzialmente pericolosi (nella vecchia Direttiva, macchinari ad alto rischio (Annex IV)).</li><li>In relazione al punto precedente, l'aggiornamento ogni 5 anni dell'allegato I.</li><li>L’inclusione dei macchinari autonomi e telecomandati, che possano eventualmente scambiare dati con altre entità (IoT) o essere integrati con engine di intelligenza artificiale, <span style="color: red;">con tutte le implicazioni di sicurezza informatica che entrano in gioco in questi nuovi scenari.</span></li><li>La possibilità di fornire le informazioni per l'uso della macchina in formato digitale </li></ul><p></p><p>Non aggiungo altri elementi, un testo così innovativo va analizzato con molta calma ed attenzione.</p><p>Voglio solo sottolineare la mia soddisfazione per essere stato testimone dei primi vagiti del nuovo Regolamento, avendo lavorato con i miei colleghi nell'Advisory Board for Legislation & Standard della tekom Europe, a partire dal 2017, per dare un contributo legato agli interessi di tutti i professionisti della Comunicazione Tecnica.</p><p>Il nostro primario obiettivo era quello di ottenere un'esplicita indicazione in merito alla possibilità di produrre le informazioni per l'uso in formato digitale.</p><p>Ovviamente non solo la tekom Europe ha spinto in questa direzione, ma mi sembra che il risultato ottenuto sia in linea con gli obiettivi di partenza.</p><p>Prossimamente, ci sarà: </p><p></p><ul style="text-align: left;"><li>La cerimonia della firma a Giugno.</li><li>L'adozione formale e l'entrata in vigore della legislazione avverranno a Luglio. </li></ul><p></p><p><span style="color: red;">Da quel momento le aziende avranno 42 mesi di tempo per allinearsi alle nuove disposizioni, che entreranno DEFINITIVAMENTE IN VIGORE da Gennaio 2027.</span></p>Alèxandròshttp://www.blogger.com/profile/08313260173187515346noreply@blogger.com0tag:blogger.com,1999:blog-6959754885364519909.post-44253570889053373762022-02-25T19:04:00.003+01:002022-02-25T19:05:32.004+01:00Mi manifesto... ergo sum!<p> </p><div class="separator" style="clear: both; text-align: center;"><a href="https://blogger.googleusercontent.com/img/a/AVvXsEj_BC9bpTsuhqsqkYKUloCDbtvp7FWaou2sAFOb2_VTfZAF9f49nFAKv8z4kWj8BWEskCc7ENqWAP7dLtBm9rvoovdtnwycYHfQ-Ur_GwkBj8FaPLFMyjrdt60zpgGoIKs5225yFxPmzXKSShvQTDWz122B1-4-VW1gVkwPMVx6pcJEbJ3XXrG-QDMnkA" style="margin-left: 1em; margin-right: 1em;"><img alt="" data-original-height="400" data-original-width="600" height="316" src="https://blogger.googleusercontent.com/img/a/AVvXsEj_BC9bpTsuhqsqkYKUloCDbtvp7FWaou2sAFOb2_VTfZAF9f49nFAKv8z4kWj8BWEskCc7ENqWAP7dLtBm9rvoovdtnwycYHfQ-Ur_GwkBj8FaPLFMyjrdt60zpgGoIKs5225yFxPmzXKSShvQTDWz122B1-4-VW1gVkwPMVx6pcJEbJ3XXrG-QDMnkA=w475-h316" width="475" /></a></div><br /><p></p>Alèxandròshttp://www.blogger.com/profile/08313260173187515346noreply@blogger.com2tag:blogger.com,1999:blog-6959754885364519909.post-88852213443071524532022-02-24T16:57:00.001+01:002022-02-24T17:13:11.920+01:00Spiegare lo standard ISO/IEEE/IEC 26514:2022 agli studenti dell'Università Rennes 2<p>Il prossimo 3 Marzo sarò ospite <a href="https://sites-formations.univ-rennes2.fr/lea-cfttr/" target="_blank">dell'Università Rennes 2</a>.</p><p>Nell'ambito del Master's degree in Technical Communication, Project Management, Terminology and Translation, illustrerò agli studenti le caratteristiche della nuova versione dello standard <a href="https://www.iso.org/standard/77451.html" target="_blank">ISO/IEEE/IEC 26514:2022</a>, che è stato recentemente rilasciato nel mese di Gennaio.</p><p>Sono contento di aver dato il mio contributo all'innovazione di questo standard, sia come rappresentate <a href="https://www.uni.com/index.php" target="_blank">UNI</a> per l'Italia in seno alla JTC 1/SC 7/WG 2 Committee, sia come membro <a href="https://www.technical-communication.org/tekom/about-us/advisory-boards/legislation-and-standards" target="_blank">dell'ABLS della tekom EUROPE</a>.</p><p>Ringrazio Katell Hernandez Morin e Nolwenn Kerzreho per l'invito, in un luogo dove tanti altri illustri colleghi hanno offerto il loro contributo sulle tematiche più avanzate della Comunicazione Tecnica.</p><p>E ringrazio la mia azienda <a href="https://company.ptvgroup.com/it" target="_blank">PTV SISTeMA</a> (PTV Group) per il supporto.</p><p>Lo standard 26514 fa parte del gruppo degli standars ISO 265XX, che identificano le best practice nella produzione delle informazoni per l'uso dei prodotti software e nella definizione e gestione di tutti i processi associati.</p><p>Per me sarà una bella esperienza, e spero anche per gli studenti!</p>Alèxandròshttp://www.blogger.com/profile/08313260173187515346noreply@blogger.com0tag:blogger.com,1999:blog-6959754885364519909.post-48737250977709238402022-01-23T11:04:00.000+01:002022-01-23T11:04:47.373+01:00E' stata pubblicata la nuova versione dello standard ISO/IEC/IEEE 26514:2022<p>Come vi avevo preannunciato alla fine di Novembre, è ora disponibile <a href="https://www.iso.org/standard/77451.html" target="_blank">la nuova versione</a> dello standard ISO/IEC/IEEE 26514:2022.</p><p>Tale standard è il principale standard di riferimento per la produzione delle informazioni per l'uso di un prodotto software.</p><p>Una prima osservazione: come nello standard <a href="https://www.iso.org/standard/71620.html" target="_blank">ISO 82079</a>, che è lo standard orizzontale di riferimento per qualsiasi tipo di prodotto (e quindi anche per i prodotti software), anche qui scompare il concetto di "documentazione/documento/manuale" ma si parla di "informazioni per l'uso/per gli utenti".</p><p>Può sembrare una banalità formale, in realtà è una conquista concettuale ottenuta dopo anni di dibattito: non esistono più i "documenti" o i "manuali", cioè i "contenitori" in cui vengono organizzate le informazioni, ma esistono fondamentalmente "le informazioni".</p><p>Il focus deve essere sulle "informazioni" ed eventualmente sui meta-dati che sono associati alle informazioni; le informazioni devono essere "modulari", di granularità abbastanza fine, devono essere i nostri "mattoncini Lego" che possiamo profilare e assemblare nei modi più opportuni in diversi contenitori, che sono ciò che chiamiamo "documenti".</p><p>Ma i documenti sono solo l'output di un processo.</p><p>Spesso tali contenitori non assumono più nemmeno una forma cartacea, ma rimangono prevalentemente in forma digitale.</p><p>Come sapete, <a href="http://artigianodibabele.blogspot.com/2021/06/pubblicata-la-bozza-del-regolamento.html" target="_blank">anche il nuovo Regolamento Macchine</a> (ancora in via di definizione) si sta orientando in tal senso, dando finalmente più spazio e libertà alla definizione delle informazioni in formato elettronico/digitale.</p><p>Ma ritorniamo allo standard 26514.</p><p>Il nuovo standard è organizzato in 64 pagine, meno della metà della versione precedente (2008, 143 pagine).</p><p>Sono state eliminate molte inutili sovrapposizioni con altri standard che nel frattempo si sono evoluti e consolidati, facendo esplicito riferimento a tali standard quando un argomento, presente nella vecchia versione 26514:2008, era meglio delineato nello standard specifico.</p><p>Molti i riferimenti allo standard 82079 ma anche agli altri standard del blocco 265xx; attraverso tali riferimenti è stato possibile "tagliare" le parti ridondanti e che potevano creare fraintendimenti.</p><p>Lo standard è sostanzialmente suddiviso in due parti.</p><p><span style="color: red;">PRIMA PARTE - Gestione del processo di sviluppo delle informazioni (Cap. 5 e 6)</span></p><p>Qui ci sono tutti gli aspetti di Project Management e Information Architecture applicate allo sviluppo delle informazioni. In particolare, il Cap. 6 può essere preso come punto di riferimento per la gestione del "processo redazionale" che può essere applicabile a TUTTI I TIPI DI PRODOTTO, quindi non solo ai prodotti software.</p><p>Nella precedente versione questi concetti erano diluiti in 5 capitoli (5,6,7,8,9), rendendo oggettivamente un poco troppo pesante lo sviluppo dell'argomento.</p><p><span style="color: #2b00fe;">ATTENZIONE per tutti coloro che, specialmente negli ultimi due anni di pandemia, hanno scoperto la necessità di DIGITALIZZARE I PROCESSI AZIENDALI... perché non sarete mai in grado di digitalizzare nessun processo se prima non digitalizzate i vostri contenuti! </span></p><p>E per digitalizzare i contenuti avete bisogno di un'Architettura delle Informazioni.</p><p>Il Cap. 6 di questo standard vi fornisce le linee guida per indirizzare questo lavoro. I principi espressi si possono usare non solo per la gestione delle informazioni di uno specifico prodotto software ma, ad esempio, anche nel caso in cui vogliate strutturare una Knowledge Base aziendale.</p><p><span style="color: red;">SECONDA PARTE - Definizione delle informazioni (Cap. 7, 8, 9)</span></p><p>Qui trovate molte novità. </p><p>Il Cap 7. fornisce le linee guida per definire la Qualità delle informazioni; nel precedente standard questi concetti erano citati e spezzettati in diversi capitoli, ma qui è stato fatto uno sforzo di sintesi per fornire i riferimenti essenziali di base su un argomento rispetto al quale si dibatte da almeno 30 anni.</p><p>Nel Cap. 8 trovate le linee guida sulla strutturazione delle informazioni.</p><p>Inoltre trovate alcuni nuovi contenuti, completamente assenti nella versione precedente.</p><p>Ad esempio, come definire le informazioni relative alle API (<a href="http://artigianodibabele.blogspot.com/2020/10/documentare-le-api-bisogna-avere-un.html" target="_blank">vi ho già parlato dell'importanza delle API</a> nelle moderne architetture software, presto ritorneremo a parlarne), o l'analogo per quanto riguarda i <a href="http://artigianodibabele.blogspot.com/search?q=CHATBOT" target="_blank">Chatbot</a>.</p><p>Nel Cap. 9 un'estesa trattazione sui formati che potete definire per confezionare le informazioni.</p><p>Poi ci sono 2 appendici, relative agli aspetti generali più propriamente linguistici e di traduzione delle informazioni per l'uso. Ovviamente non si entra nel dettaglio perché ci sono altri standard su questi argomenti, ma si forniscono alcuni principi generali che non bisogna mai dimenticare.</p><p>A mio parere è stato fatto un gran lavoro, che si è sviluppato nell'arco di circa 30 mesi.</p><p>Sono contento di aver dato il mio contributo all'innovazione di questo standard, sia come rappresentate per l'Italia in seno alla <a href="https://www.iec.ch/dyn/www/f?p=103:29:::::FSP_ORG_ID:3412#1" target="_blank">JTC 1/SC 7/WG 2 Committee</a>, sia come membro <a href="https://www.technical-communication.org/tekom/about-us/advisory-boards/legislation-and-standards#:~:text=The%20advisory%20board%20for%20legislation,and%20revisions%20of%20existing%20standards.&text=Giving%20feedback%20to%20official%20EU,in%20the%20European%20Transparency%20Register)" target="_blank">dell'ABLS della tekom EUROPE</a>.</p><p>A presto!</p><p><br /></p>Alèxandròshttp://www.blogger.com/profile/08313260173187515346noreply@blogger.com0tag:blogger.com,1999:blog-6959754885364519909.post-35716888094838537972021-11-28T18:28:00.000+01:002021-11-28T18:28:30.890+01:00Sta per uscire la nuova versione dello standard ISO/IEC/IEEE 26514<p>E' in via di pubblicazione la nuova versione dello standard ISO/IEC/IEEE 26514.</p><p>Probabilmente sarà disponibile nei primi giorni di Gennaio 2022, dopo <a href="https://www.iso.org/standard/77451.html" target="_blank">un processo di revisione</a> partito nel Luglio del 2019.</p><p>26514 è lo standard per i progettisti e gli sviluppatori delle informazioni per gli utenti che accompagnano un prodotto software. </p><p>Erroneamente si potrebbe pensare che sia applicabile solo ai prodotti software. In realtà, la gran parte dei concetti esposti si può applicare anche alla gestione dei processi di documentazione di un qualsiasi prodotto.</p><p>Lo standard descrive principalmente:</p><p></p><ul style="text-align: left;"><li>Come stabilire di quali informazioni hanno bisogno gli utenti.</li><li>Come definire la presentazione delle informazioni.</li><li>Come preparare le informazioni e renderle disponibili.</li></ul><div>La prima parte è dedicata alla descrizione di quello che io chiamo "il processo redazionale", cioè il processo di pianificazione e gestione della produzione delle informazioni.</div><div><br /></div><div>La seconda parte riguarda invece la realizzazione e la presentazione delle informazioni.</div><div><br /></div><div>In questo nuovo standard si fa riferimento in diversi punti allo standard <a href="https://www.certifico.com/marcatura-ce/documenti-marcatura-ce/79-documenti-riservati-marcatura-ce/11177-en-iec-ieee-82079-1-2020-istruzioni-per-l-uso-di-un-prodotto" target="_blank">EN IEC/IEEE 82079-1:2020</a>, lo standard orizzontale per la definizione delle informazioni associate al prodotto, per qualsiasi tipo di prodotto (quindi anche per i prodotti software).</div><div><br /></div><div>Eliminando una serie di sovrapposizioni tra il vecchio standard 26514 e il più recente 82079, è stato possibile definire una nuova versione molto più "snella" dello standard 26514.</div><div><br /></div><div>La prima versione dello standard era stata pubblicata nel 2008, ed era quindi necessario un aggiornamento che includesse le linee guida di base inerenti ad una serie di nuovi argomenti.</div><div><br /></div><div>Ritornerò sul punto con un articolo molto più dettagliato quando lo standard verrà pubblicato.</div><div><br /></div><div>Per ora, volevo solo alzare una bandierina per avvisarvi.</div><p></p>Alèxandròshttp://www.blogger.com/profile/08313260173187515346noreply@blogger.com0tag:blogger.com,1999:blog-6959754885364519909.post-380268974954483192021-06-24T00:36:00.003+02:002021-06-24T00:36:58.200+02:00Pubblicata la bozza del Regolamento Macchine: tra le molte novità, cybersecurity e istruzioni in formato elettronico.<p>In data 21 aprile 2021 è stata pubblicata <a href="https://ec.europa.eu/docsroom/documents/45508" target="_blank">la bozza della proposta del nuovo Regolamento Macchine</a> che andrà a sostituire l’attuale Direttiva Macchine 2006/42/CE.</p><p>La prima grande novità è la scelta di passare da una Direttiva ad un Regolamento.</p><p>Una Direttiva richiede il recepimento del legislatore nazionale, cioè richiede una legge nazionale che renda esecutiva la Direttiva Europea. Un Regolamento è un atto legislativo dell’Unione Europea DIRETTAMENTE applicabile in ciascuno degli Stati membri.</p><p>Questo nuovo Regolamento nasce per:</p><p></p><ul style="text-align: left;"><li>Armonizzare i requisiti di salute e sicurezza relativi alla progettazione, alla costruzione e al commercio dei macchinari all’interno della UE.</li><li>Eliminare le differenze di applicazione tra i diversi Stati membri, che possono adottare diverse strategie nel recepimento della Direttiva.</li><li>Superare gli evidenti limiti della Direttiva nella gestione di una serie di aspetti associati alle nuove tecnologie.</li></ul><p></p><p>Nel seguito un breve elenco degli aspetti salienti, con qualche considerazione di scenario, lasciando i maggiori dettagli ad una lettura necessariamente più approfondita della bozza (55 pagine).</p><p><span style="color: red;">APPLICAZIONE DEL NUOVO REGOLAMENTO MACCHINE</span></p><p>Il Regolamento Macchine entrerà in vigore il ventesimo giorno dopo la sua pubblicazione e verrà applicato dopo ulteriori 30 mesi. Ad oggi, si può cautamente ipotizzare che l'iter di pubblicazione del Regolamento possa essere completato entro il primo trimestre del 2022.</p><p>L’attuale Direttiva 2006/42/CE sarà abrogata nel momento in cui entrerà in vigore il Regolamento, ma sarà ancora possibile immettere sul mercato macchine conformi alla Direttiva per ulteriori 42 mesi dopo la data di entrata in vigore del Regolamento.</p><p>Le violazioni del Regolamento sono soggette a sanzioni stabilite dagli Stati membri, in base a criteri che dovranno essere comunicati alla Commissione entro 24 mesi dall’entrata in vigore del nuovo Regolamento.</p><p><span style="color: red;">OPERATORI ECONOMICI: IMPORTATORE E DISTRIBUTORE</span></p><p>Oltre al COSTRUTTORE, figura già delineata nella Direttiva, entrano in gioco l'IMPORTATORE e il DISTRIBUTORE.</p><p>L’IMPORTATORE è il soggetto che immette sul mercato UE un prodotto proveniente da un paese terzo. Deve assicurarsi che il fabbricante abbia completato le procedure per la valutazione della conformità del prodotto e deve specificare sul prodotto i propri dati identificativi; quindi, l’importatore diventa responsabile della conformità del prodotto e ne risponde in prima persona.</p><p>L'introduzione di questo profilo di responsabilità avrà, probabilmente, un impatto anche sulla qualità della documentazione tecnica che accompagna il prodotto e che deve essere conservata per 10 anni.</p><p>Il DISTRIBUTORE è un soggetto, distinto dal fabbricante o dall’importatore, che provvede a mettere il prodotto sul mercato. Il suo profilo di responsabilità è meno accentuato, ma deve verificare:</p><p></p><ul style="text-align: left;"><li>Che il prodotto sia correttamente identificato (compresi i riferimenti del fabbricante e dell’eventuale importatore).</li><li>Che la documentazione del prodotto sia presente.</li><li>Che il prodotto non sia stato oggetto di eventi (durante il trasporto o l'immagazzinamento) che possano aver compromesso la conformità dei requisiti di sicurezza.</li></ul><p></p><p><span style="color: red;">DOCUMENTAZIONE DEL PRODOTTO</span></p><p>Altra novità: la documentazione che accompagna il prodotto potrà essere fornita in formato digitale, ad esempio rendendola disponibile su un sito web o su un supporto ad-hoc, ad esempio un USB Key. L’utilizzatore potrà però richiedere, al momento dell’acquisto, una copia cartacea che dovrà essere fornita gratuitamente.</p><p>Su questo punto, molte organizzazioni hanno stimolato la Commissione Europea.</p><p>L'Advisory Board for Legislation and Standards della tekom Europe, di cui faccio parte, ha espresso il suo orientamento nella direzione di una necessaria revisione della vecchia Direttiva, prevalentemente nell'ambito dei criteri per la produzione della documentazione che accompagna il prodotto.</p><p>La tekom Europe, congiuntamente con altre organizzazioni, ha presentato un <a href="https://www.technical-communication.org/technical-communication/position-paper-instructions-in-digital-form" target="_blank">Position Paper ufficiale</a>, focalizzato proprio sulle istruzioni per l'uso in formato elettronico.</p><p><span style="color: red;">COMPONENTI DI SICUREZZA</span></p><p>Altra notevole novità: nella definizione di “componente di sicurezza” del nuovo Regolamento, sono stati introdotti anche i componenti digitali, compreso il software. Il software che svolge funzioni di sicurezza dovrà essere marcato CE ed essere accompagnato da una dichiarazione di conformità UE.</p><p><span style="color: red;">DICHIARAZIONE CONFORMITA' UE</span></p><p>La dichiarazione CE di conformità è stata sostituita da una dichiarazione di conformità UE, in linea con il nuovo quadro legislativo. Quando ad un prodotto si applicano più atti dell’UE, deve essere redatta un’unica dichiarazione di conformità UE che li racchiude tutti.</p><p><span style="color: red;">CYBERSECURITY</span></p><p>Altra importante novità: si prende atto che oggi le macchine (e sempre pù nei prossimi anni) sono sempre più interconnesse in rete, strutturate in sistemi potenzialmente molto complessi ed esposte ad attacchi del tutto analoghi a quelli che vengono effettuati contro le reti di computer. Sono già stati documentatti eventi di questo tipo e sono destinati ad aumentare in futuro.</p><p>Il nuovo Regolamento Macchine prescrive che i circuiti di comando che svolgono funzioni di sicurezza siano progettati in modo da evitare attacchi che possano causare comportamenti pericolosi delle macchine. </p><p>La conseguenza logica di questa indicazione ci fa immaginare che in futuro avremo macchine protette da strati software specifici, come anti-virus, firewall, intrusion detectors o machine learning engine, del tutto simili a quelli che usiamo per proteggere le reti di computer.</p><p>Ovviamente questi aspetti avranno un impatto sul documento di valutazione dei rischi, che deve accompagnare la macchina.</p><p><span style="color: red;">STRESS PSICOLOGICO</span></p><p>Ambienti di lavoro robotizzati, in cui operatori umani condividono spazi di lavoro e processi con macchine robotizzate sempre più efficienti, possono generare dinamiche di stress per l'operatore umano. Tali elementi devono essere valutati per rispondere al requisito essenziale di sicurezza e di tutela della salute del lavoratore.</p><p><span style="color: red;">ALLEGATO IV della Direttiva diventa ALLEGATO I nel Regolamento</span></p><p>L’ALLEGATO IV della Direttiva, contenente la lista dei prodotti ad alto rischio, diviene ALLEGATO I del nuovo Regolamento. Ai prodotti compresi in questo allegato sono stati aggiunti i software e i sistemi di intelligenza artificiale che svolgono funzioni di sicurezza. Per questi prodotti, non è prevista la possibilità per il fabbricante di applicare la procedura di valutazione della conformità con controllo interno; quindi sarà sempre necessario l’intervento di un organismo "esterno".</p><p><span style="color: red;">ENTI NOTIFICATI</span></p><p>Gli Stati membri dovranno provvedere alla creazione e alla supervisione di enti notificati, incaricati dello svolgimento del risk-assessment sui macchinari e le loro funzionalità. Tali enti e le autorità che gestiscono le informazioni relative ai macchinari e ai soggetti produttori, importatori e distributori devono garantire la riservatezza dei dati contenuti nella documentazione che viene loro fornita.</p><p><span style="color: red;">Questo è uno degli aspetti più controversi del nuovo Regolamento Macchine.</span></p><p>Alcuni temono che l'attività di risk-assessment affidata ad una terza parte, per tutti i macchinari ad alto rischio, possa aumentare i costi di produzione e accrescere oneri amministrativi e tempi di commercializzazione.</p><p>Del resto, nell'esperienza professionale di molti miei colleghi che si occupano della documentazione tecnica delle macchine, ci sono innumerevoli episodi di macchine spesso carenti nella valutazione dei rischi o nella progettazione di base delle soluzioni di sicurezza.</p><p>La cronaca, anche recente, poi ci conferma come spesso le macchine vengano utilizzate rimuovendo i ripari di sicurezza o disattivando altri sistemi di sicurezza previsti, come nel caso della tragedia della funivia del Mottarone.</p><p><span style="color: red;">QUALI CONCLUSIONI POSSIAMO TRARRE?</span></p><p>Premesso che la bozza pubblicata potrebbe essere modificata e che i molti attori in campo non sono tutti concordi rispetto alle diverse modifiche introdotte rispetto alla vecchia Direttiva 2006/42/CE, non si può non cogliere il senso di una robusta e necessaria innovazione.</p><p>Se devo isolare solo 3 pti direi:</p><p></p><ul style="text-align: left;"><li>L'introduzione di una definizione di "macchina" che si apre alle nuove tecnologie (intelligenza artificiale, cyber security, etc.), che possono introdurre profili di rischio per la sicurezza dell'operatore che utilizza le macchine.</li><li>La presenza di un Ente "esterno" per le attività di risk-assessment di alcuni tipi di macchine o dei sistemi di macchine.</li><li>La possibilità di poter fornire la documentazione del prodotto in formato elettronico, come prima opzione.</li></ul><p></p><p>Per come la vedo io, è un enorme balzo in avanti, rispetto ad una Direttiva ormai datata.</p><p>Ovviamente, il testo potrà essere migliorato e subire modifiche ed integrazioni fino al giorno della sua pubblicazione definitiva. Ma l'impianto generale, probabilmente, non sarà stravolto.</p><p>Per chi si occupa di Documentazine Tecnica (sarebbe meglio dire di "informazioni per l'uso" di un prodotto, come stabilito dallo standard 82079) si aprono nuove sfide: la documentazione in formato elettronico consente nuove possibilità, e l'integrazione della macchina con nuove tecnologie implica che il perimetro delle conoscenze da mettere in campo si allarga notevolemente.</p><p>Avremo modo di riprendere il tema. Per ora, è tutto.</p>Alèxandròshttp://www.blogger.com/profile/08313260173187515346noreply@blogger.com0tag:blogger.com,1999:blog-6959754885364519909.post-65750648897303380072021-05-01T09:55:00.003+02:002021-05-01T19:51:53.321+02:00Documentare le API: le aziende cercano l'Unicorno!<p>Ieri nella mia mail-box è arrivata questa offerta di lavoro (ho camuffato o tagliato informazioni che la rendessero troppo facilmente riconoscibile e i nomi di alcuni ben noti tools...):</p><p><span style="color: #cc0000; font-size: medium;"><i><u>Position</u></i></span></p><p><i><span style="color: #cc0000;">At XXXXXXXXXXXXXX, we create software that will enable our team to manage thousands of vehicles and customers on a daily basis. As an API technical writer, you play a key role in building our product by creating useful and engaging software documentation. You have the chance to join this team early on and...</span></i></p><p><span style="color: #cc0000; font-size: medium;"><i><u>Objectives</u></i></span></p><p><i><span style="color: #cc0000;">Best software to support business: Together with your team, you ship new features.... delivering the best software possible for our customers and business units</span></i></p><p><i><span style="color: #cc0000;">Strive for excellence: You strive to deliver the best possible experience for our users...</span></i></p><p><i><span style="color: #cc0000;">Providing beautiful software documentation: You help your engineering colleagues by writing high-quality and easy-to-understand documentation for the appropriate audiences</span></i></p><p><i><span style="color: #cc0000; font-size: medium;"><u>Your qualification</u></span></i></p><p><span style="color: #cc0000;"><i>You have a Bachelor’s degree or equivalent. </i><i>3+ years creating API documentation in an agile development environment. </i><i>Passion for creating useful and engaging software documentation with a strong customer-centric focus. </i><i>Ability to work with API documentation tools such as..., or other docs-as-code approaches. </i><i>Comfortable understanding codes in one or more programming languages, such as NodeJS or Python...JavaScript...</i></span></p><p><span style="color: #cc0000;"><i>Experience in relevant product areas (e.g. eCommerce or B2C, SaaS platforms). </i><i>Usability and testing skills with patience in problem-solving and troubleshooting. </i><i>Talent in creating visual content using... </i><i>Meticulous attention to detail and joy in precise working. </i><i>You have a “never-stop-learning” attitude and a desire to develop and grow. </i><i>You are fluent in English.</i></span></p><div><a href="http://artigianodibabele.blogspot.com/2020/10/documentare-le-api-bisogna-avere-un.html" target="_blank">In un precedente articolo</a> vi avevo indicato quali dovessero essere le migliori caratteristiche di un API Technical Writer.</div><div><br /></div><div>Se rileggete l'articolo e lo confrontate con l'annuncio, vi accorgerete che non vi ho mentito!</div><div><br /></div><div>Aldilà delle battute, la "API economy" richiede una figura professionale NUOVA o forse potremmo dire una "SPECIALIZZAZIONE" nel campo della Comunicazione Tecnica. I fondamentali classici del technical writing hanno ancora un ruolo ovviamente, ma sono solo LA BASE su cui costruire un nuovo asset di competenze.</div><div><br /></div><div>Se avete fatto caso, questo annuncio di lavoro è rivolto ad un profilo sostanzialmente junior, che però si è già "infarinato le mani" in questo ruolo. In realtà, non esiste "una scuola" per diventare API Techcnical Writer. </div><div><br /></div><div>In Italia non esiste nemmeno un percorso degno di questo nome per imparare le basi del technical writing, ma questa è un'altra conversazione.</div><div><br /></div><div><div class="separator" style="clear: both; text-align: center;"><a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEi0mjWAzuUUujHVHdYaJCLxQ3EGEmEK1jb3w-rW-SSsSdynq-ZsNUTEugcfJS5-q8KmSbCSC0-XWZoVaxlbPUIA3TgAVsXBThJoCupYpCqDjeUD9xqmrKdNpVMGpHvO2iUubtuP3xNOJI0Z/" style="margin-left: 1em; margin-right: 1em;"><img alt="" data-original-height="194" data-original-width="259" height="240" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEi0mjWAzuUUujHVHdYaJCLxQ3EGEmEK1jb3w-rW-SSsSdynq-ZsNUTEugcfJS5-q8KmSbCSC0-XWZoVaxlbPUIA3TgAVsXBThJoCupYpCqDjeUD9xqmrKdNpVMGpHvO2iUubtuP3xNOJI0Z/" width="320" /></a></div><br /><br /></div><div>In altri termini, le aziende hanno bisogno di Unicorni... che come ben sapete, non si trovano facilmente!</div><div><br /></div><div>Io mi sono occupato per la prima volta di documentare delle API nel 2005, ma io non faccio giursiprudenza, perchè parto in vantaggio: sono un Ing. Informatico che poi è diventato un Tech Writer.</div><div>Tanto per avere un'idea, io sono allineato con tutte le caratteristiche dell'annuncio... tranne le gioventù!</div><div><br /></div><div>Presto inizierò un nuovo ciclo di articoli sulla API economy e su come si documentano le API.</div><div>A presto.</div><div><br /></div>Alèxandròshttp://www.blogger.com/profile/08313260173187515346noreply@blogger.com0tag:blogger.com,1999:blog-6959754885364519909.post-91825386345445969932021-04-05T23:12:00.000+02:002021-04-05T23:12:12.022+02:00Una conversazione sulla documentazione del software con Ferry Vermeulen e Sissi Closs<p>Recentemente ho avuto l'onore ed il piacere di essere intervistato, insieme a Sissi Closs, da Ferry Vermeulen. L'intervista è stata registrata in un podcast di circa 90 minuti che potete ascoltare (e scaricare) <a href="https://instrktiv.com/en/software-documentation/" target="_blank">da questo link</a>.</p><div class="separator" style="clear: both; text-align: center;"><a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEj_XI5Lpp-SE6Ru_dnnMJ7MgCiZxntVf2VjD6IMMdCLiU-05CjGIv9PdsoiVgbs5iMR1RUbP79VwcYAJV2Fte2_lzB3PnN92CBiFk9s4shHsgB9wmytoUAHRyJ25ZGNNQl7mMS7YG7CB3lb/s861/TRE_TAZZE_02.png" imageanchor="1" referrerpolicy="origin" style="margin-left: 1em; margin-right: 1em;"><img border="0" data-original-height="768" data-original-width="861" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEj_XI5Lpp-SE6Ru_dnnMJ7MgCiZxntVf2VjD6IMMdCLiU-05CjGIv9PdsoiVgbs5iMR1RUbP79VwcYAJV2Fte2_lzB3PnN92CBiFk9s4shHsgB9wmytoUAHRyJ25ZGNNQl7mMS7YG7CB3lb/s320/TRE_TAZZE_02.png" width="320" /></a></div><p>Non voglio anticiparvi i dettagli di questa conversazione, dove emergono tutte le questioni principali che vanno indirizzate nella definizione delle migliori strategie per la documentazione del software.</p><p>Abbiamo parlato di Minimalismo, processi Agile, SaaS, documentazione Task Oriented, riuso dei contenuti, standard ISO (in particolare dello standard 26514 ed 82079), standard tecnici e linguistici, CCMS e altro ancora.</p><p>In 90 minuti abbiamo provato ad inquadrare un argomento estremamente complesso e spero che possiate trarne indicazioni utili, in special modo se state iniziando ad orientarvi sul tema.</p><p>Ferry è già noto ai lettori di questo blog, perché in passato ho commentato alcuni suoi straordinari articoli, tra cui:</p><p><a href="http://artigianodibabele.blogspot.com/2018/12/la-dichiarazione-di-conformita_18.html" target="_blank">Definizione della Dichiarazione di Conformità</a></p><p><a href="http://artigianodibabele.blogspot.com/2019/11/minimalismo-mettiamo-in-ordine-le-idee.html" target="_blank">Intervista sul Minimalismo al Prof. Van der Meij</a></p><p><a href="https://instrktiv.com/en/ferry-vermeulen2/" target="_blank">Ferry Vermeulen</a> è il Direttore Tecnico di <a href="https://instrktiv.com/en/" target="_blank">INSTRKTIV</a>; il blog di INSTRKTIV è tra i migliori blog al mondo per quanto riguarda le tematiche sulla Comunicazione Tecnica.</p><p>Ferry è anche membro, come me, dell'Advisory Board for Legislation and Standard (<a href="https://www.technical-communication.org/tekom/about-us/advisory-boards/legislation-and-standards" target="_blank">ABLS</a>) della Tekom Europe.</p><p>Anche la Prof.ssa <a href="https://www.linkedin.com/in/sissi-closs-4581a918/" target="_blank">Sissi Closs</a> fa parte dell'ABLS, ed è da molti anni un punto di riferimento per i suoi studenti e per tutti i professionisti del nostro settore.</p><p>Con Sissi (e con Andrea Gocke) abbiamo anche scritto <a href="https://www.technical-communication.org/tekom/news/a-common-misunderstanding-agile-does-not-need-documentation" target="_blank">un articolo "a 6 mani"</a> sullo standard ISO/IEC/IEEE 26515.</p><p>Che dire di più? Scaricate il podcast e buon ascolto!</p>Alèxandròshttp://www.blogger.com/profile/08313260173187515346noreply@blogger.com0tag:blogger.com,1999:blog-6959754885364519909.post-58233866215842259782020-11-25T19:12:00.001+01:002020-11-26T15:24:50.882+01:00Se esiste un Dio...<p> ... forse oggi ha voluto riprendersi la sua "Mano". </p><div class="separator" style="clear: both; text-align: center;"><br /></div><div class="separator" style="clear: both; text-align: center;"><a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgoHPAm-KjLl-PmmEFL7W6CErME0VoL7GFo5QDC_MpVpPolpApQkvdc41PoTbHjrf5WJKdeIDHjnvluQHeIIgj2C3kybBZZuHmU26HfuulWh4DNBVnKo8G-Jyl2bWtsh7YxRh6ZfanoppHf/" style="clear: left; float: left; margin-bottom: 1em; margin-right: 1em;"><img alt="" data-original-height="800" data-original-width="1199" height="268" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgoHPAm-KjLl-PmmEFL7W6CErME0VoL7GFo5QDC_MpVpPolpApQkvdc41PoTbHjrf5WJKdeIDHjnvluQHeIIgj2C3kybBZZuHmU26HfuulWh4DNBVnKo8G-Jyl2bWtsh7YxRh6ZfanoppHf/w400-h268/image.png" width="400" /></a></div><i><p><i><br /></i></p><p><i><br /></i></p><p><i><br /></i></p><p><i><br /></i></p><p><i><br /></i></p><p><i><br /></i></p><p><i><br /></i></p><p><br /></p><p><i><br /></i></p><p><i><br /></i></p><p><i><br /></i></p><p><i>"...perché la vita è un brivido che vola via... </i></p><p><i>...è tutto un equilibrio sopra la follia..."</i></p></i><span style="font-size: x-small;"> V.Rossi</span><p></p>Alèxandròshttp://www.blogger.com/profile/08313260173187515346noreply@blogger.com0tag:blogger.com,1999:blog-6959754885364519909.post-57502523809761137572020-11-16T12:08:00.005+01:002020-11-17T09:54:25.856+01:00Volete progettare un Chatbot? Avete bisogno di... una mappa.<p>Cos' è un chatbot? E' un software in grado di simulare una conversazione, consentendo agli utenti di interagire con applicazioni web e dispositivi digitali, come se il software fosse una persona reale. </p><p>Da alcuni anni se ne parla (spesso "a vanvera"), anche in contesti di associazioni professionali ... poco professionali.</p><p>Molti hanno provato a cavalcare l'onda dell'argomento "cool", quello che "fa figo" se in mezzo ad un discorso da salotto pronunci la parola "chatbot" (ma lo stesso vale anche per "blockchain", "machine learning", etc). </p><p>Risultati? Spesso pessimi.</p><p>Potete costruire chatbot semplici, magari basati su approcci molto datati, come i "decision-tree" oppure chatbot più flessibili, basati su motori di intelligenza artificiale (AI) e potete progettare sofisticati assistenti digitali personalizzati in diversi settori.</p><p>Del resto, se i maggiori player mondiali stanno investendo in piattaforme conversazionali e non da ora, come indica <a href="https://www.gartner.com/reviews/market/conversational-platforms" target="_blank">Gartner</a>, significa che esiste un mercato potenziale notevole e ancora disponibile.</p><p>Ma non si può improvvisare.</p><p>Progettare un chatbot non è roba per apprendisti stregoni e bisogna mettere in campo competenze in diverse aree: </p><p></p><ul style="text-align: left;"><li>Fare un assessment molto approfondito dello use case a cui dobbiamo applicare il chatbot.</li><li>Saper scegliere la piattaforma software per progettare il chatbot.</li><li>Definire il decision-tree o individuare il dataset utile per allenare il motore di AI.</li><li>Saper scrivere contenuti "molecolari" (Information 4.0) in uno stile conversazionale.</li><li>Conoscere i principi del NLP (Natural Language Processing) e del Machine Learning</li></ul><p></p><p>.... e molto altro ancora.</p><p><span style="color: red;">Insomma, serve prima di tutto una metodologia o se preferite una "mappa".</span></p><p>Se volete avere un'introduzione al metodo di lavoro che necessita per progettare un chatbot, date un occhiata al blog di <a href="https://www.technicallywriteit.com/" target="_blank">Technically Write IT</a>, uno dei blog più interessanti nel campo della Comunicazione Tecnica.</p><p>Qui potete trovare tre articoli che vi danno"la mappa", inquadrando le questioni essenziali.</p><p><a href="https://www.technicallywriteit.com/how-to-build-a-good-chatbot/" target="_blank">Come costruire un buon chatbot</a> chiarisce alcune questioni di background e fornisce una sorta di check-list per capire come costruire la vostra content strategy, adattata allo use case che dovete indirizzare.</p><p><a href="https://www.technicallywriteit.com/how-to-write-effective-content-for-a-chatbot/" target="_blank">Come realizzare contenuti efficaci per un chatbot</a> fornisce gli step principali per definire contenuti conversazionali del vostro chatbot e gestire il workflow di progettazione.</p><p><a href="https://www.technicallywriteit.com/how-to-choose-the-best-chatbot-tool-for-your-business/" target="_blank">Come scegliere una piattaforma per sviluppare un chatbot</a> indica le principali caratteristiche che deve avere una valida piattaforma software e anche un elenco delle più importanti piattaforme oggi disponibili sul mercato.</p><p>A questo punto siete in grado di progettare un chatbot? </p><p>ASSOLUTAMENTE NO!... ma avete una "mappa" che vi guida a valutare tutti i passaggi fondamentali per poter progettare un chatbot e che vi permetterà di risparmiare tempo ed evitare gli errori più banali.</p><p>A presto.</p>Alèxandròshttp://www.blogger.com/profile/08313260173187515346noreply@blogger.com0tag:blogger.com,1999:blog-6959754885364519909.post-11458143971668651592020-10-29T19:16:00.000+01:002020-10-29T19:16:44.449+01:00Documentare le API: bisogna avere un background tecnico?<p><a href="http://artigianodibabele.blogspot.com/2020/10/documentare-le-api-ci-sono-diversi-tipi.html" target="_blank">Il post precedente</a> ha iniziato ad indagare più in profondità la tematica di come documentare le API.</p><p>Se avete avuto la pazienza di leggerlo, secondo me nella vostra testa si è accesa una lampadina, la tipica lampadina che precede la formulazione di una serie di domande:</p><p></p><ul style="text-align: left;"><li>Chi documenta le API deve avere confidenza con lo sviluppo software? </li><li>Deve saper leggere un frammento di codice scritto in Java o in C++ o in Phyton? </li><li>Deve saper leggere dentro un oggetto JSON o protobuffer? </li><li>Deve saper navigare agevolmente dentro un XML? </li><li>Deve conoscere i codici di ritorno del protocollo HTTP?</li><li><span>Deve aver confidenza con la gestione di processi di sviluppo Agile e Continous Delivery?</span></li><li><span>E, più in generale, deve avere un background tecnico solido?</span></li><li>In altri termini: deve governare almeno i fondamentali della programmazione o essere addirittura un ex-programmatore? </li></ul><p></p><div class="separator" style="clear: both;"><span style="color: #2b00fe;">La mia risposta è SI!</span></div><div class="separator" style="clear: both;"><br /></div><div class="separator" style="clear: both;">Mentre un technical writer della "scuola classica" potrebbe sostenere che <i>"il technical writer non deve essere esperto della tecnologia da documentare, anzi proprio per questo sarà più efficace nel suo lavoro"</i>.</div><div class="separator" style="clear: both;"><br /></div><div class="separator" style="clear: both;">In teoria, possiamo amabilmente discutere di tutto.</div><div class="separator" style="clear: both;"><br /></div><div class="separator" style="clear: both;">In concreto, la mia esperienza mi dice che in certi ambiti tecnologici, il comunicatore deve avere "le mani in pasta" rispetto alla tecnologia. Forse è eccessivo sostenere che debba addirittura essere un ex-programmatore, ma deve di certo padroneggiare tutte le necessarie conoscenze.</div><div class="separator" style="clear: both;"><br /></div><div class="separator" style="clear: both;">Questo è tanto più vero quanto più siamo immersi dentro flussi di lavoro Agile, che alimentano processi di Continous Delivery, dove i tempi di sviluppo della documentazione sono indistinguibili dal ciclo di sviluppo del software e sono estremamente "strettti". </div><div class="separator" style="clear: both;"><br /></div><div class="separator" style="clear: both;">In tali contesti, con cicli di lavoro di 3 settimane, non c'è molto tempo per "intervistare gli SME", produrre 2 o 3 draft da validare, fare la review linguistica/terminologica, sviluppare la grafica a supporto ed altri passaggi classici dei processi di documentazione.</div><div class="separator" style="clear: both;"><br /></div><div class="separator" style="clear: both;"><span style="color: red;">O meglio: si DEVE FARE tutto questo ma molto più velocemente, in "presa diretta", senza rete. </span><span style="color: red;">E con molta più "qualità intrinseca", proprio perchè c'è meno tempo anche per rimediare agli errori.</span></div><div class="separator" style="clear: both;"><br /></div><div class="separator" style="clear: both;">Questo ci obbliga a dover avere una certa "conoscenza" della tecnologia che stiamo documentando, perchè questo ci permette di essere più veloci... e la velocità è un valore.</div><div class="separator" style="clear: both;"><br /></div><div class="separator" style="clear: both;">Non siete convinti? </div><div class="separator" style="clear: both;">Mi avvalgo ancora del report di <a href="https://smartbear.com/resources/ebooks/the-state-of-api-2020-report/" target="_blank">SmartBear</a> per darvi ulteriori elementi.</div><div class="separator" style="clear: both;"><br /></div><div class="separator" style="clear: both;"><div class="separator" style="clear: both;"><span style="color: #2b00fe;">QUALI SONO I MAGGIORI OSTACOLI ALLA PRODUZIONE DI API DI QUALITA'?</span></div></div><div class="separator" style="clear: both;"><br /></div><div class="separator" style="clear: both;"><div class="separator" style="clear: both; text-align: center;"><a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjXKfYBVunUbgmnYVTBZcR3Ydpi1UmQX5p22rgOOi8I2kQk7WvfFPfXJomKUh1uc3K-hiBVlFGg9nPn4IsEhqqx5-fxxOa8_HMrmo2coSReHj1yXTFk68dM5K_mD-SrlgMXXkn9bIOJb1Pm/" style="clear: left; float: left; margin-bottom: 1em; margin-right: 1em;"><img alt="" data-original-height="488" data-original-width="802" height="311" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjXKfYBVunUbgmnYVTBZcR3Ydpi1UmQX5p22rgOOi8I2kQk7WvfFPfXJomKUh1uc3K-hiBVlFGg9nPn4IsEhqqx5-fxxOa8_HMrmo2coSReHj1yXTFk68dM5K_mD-SrlgMXXkn9bIOJb1Pm/w510-h311/image.png" width="510" /></a></div><br /><br /></div><div class="separator" style="clear: both;">Le prime due risposte, con il 52% e il 48% delle risposte, vanno a coprire esattamente la mia tesi.</div><div class="separator" style="clear: both;">Se non foste convinti, anche la 3^ e la 4^ risposta vanno nella stessa direzione.</div><div class="separator" style="clear: both;">Le prime 4 risposte influenzano notevolmente anche i processi di documentazione tecnica.</div><div class="separator" style="clear: both;">Le risposte dalla 5^ alla 7^ invece sono più incentrate sull'integrazione di tools, sistemi e processi aziendali.</div><div class="separator" style="clear: both;"><br /></div><div class="separator" style="clear: both;">Tutte queste risposte evidenziano che la qualità delle API prodotte nel nostro processo aziendale, che coinvolge anche la relativa documentazione, ruotano su due elementi principali:</div><div class="separator" style="clear: both;"><ul style="text-align: left;"><li>La competenza e l'esperienza tecnica specifica.</li><li>La velocità di esecuzione del delivery (o se preferite i tempi di realizzazione sempre molto ridotti tra due rilasci successivi).</li></ul><div>Se volete avere un primo contatto con il paradigma "Docs as Code" che sintetizza le idee che vi ho illustrato in questo post, date un occhio <a href="https://www.writethedocs.org/guide/docs-as-code/" target="_blank">a questa miniera d'oro di spunti</a>.</div><div><br /></div><div>A presto.</div></div>Alèxandròshttp://www.blogger.com/profile/08313260173187515346noreply@blogger.com0tag:blogger.com,1999:blog-6959754885364519909.post-41662770946342506352020-10-26T23:29:00.003+01:002020-10-27T11:57:56.949+01:00Documentare le API: ci sono diversi tipi di API...<p>Nei primi 3 articoli di questa serie, ho provato a definire "la cornice" di una tematica complessa:</p><p style="text-align: left;"></p><ol style="text-align: left;"><li><a href="https://artigianodibabele.blogspot.com/2020/06/api-economy-quale-impatto-sulla.html" target="_blank">Api "economy": quale impatto sulla Comunicazione Tecnica?</a></li><li><a href="https://artigianodibabele.blogspot.com/2020/10/documentare-le-api-le-risposte-nascono.html" target="_blank">Documentare le API? Le risposte nascono dalle domande...</a></li><li><a href="https://artigianodibabele.blogspot.com/2020/06/api-posts.html" target="_blank">Documentare le API: per quale audience?</a></li></ol><p></p><p>Ora provo ad analizzare "il quadro", che è composto da diverse aree in relazione tra di loro, come in un quadro di Mondrian:</p><p></p><div class="separator" style="clear: both; text-align: center;"><a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgV138XM44ywyAj0uLwiI_Qv1PcMUf5rYXE2jg0kwRRl9-_DVrA3I6OYjxEaweUTVhciftXOO7uHZiATHL0wvUswWVnW3HhOOHWna_0bEyWdxGl4E7VN5-Vyq5btFjWQ_HYC15IH20Y98Z4/s259/16b4e0db7e1f20b399d0c18d7ef8ff7c.jpg" style="clear: left; float: left; margin-bottom: 1em; margin-right: 1em;"><img border="0" data-original-height="194" data-original-width="259" height="300" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgV138XM44ywyAj0uLwiI_Qv1PcMUf5rYXE2jg0kwRRl9-_DVrA3I6OYjxEaweUTVhciftXOO7uHZiATHL0wvUswWVnW3HhOOHWna_0bEyWdxGl4E7VN5-Vyq5btFjWQ_HYC15IH20Y98Z4/w400-h300/16b4e0db7e1f20b399d0c18d7ef8ff7c.jpg" width="400" /></a></div><br /><div class="separator" style="clear: both; text-align: left;">Prima di tutto, cominciamo a distinguere tra i diversi tipi di API che potremmo ritrovarci a dover documentare.</div><div class="separator" style="clear: both; text-align: left;"><br /></div><div class="separator" style="clear: both; text-align: left;">Riprendiamo lo spunto <a href="https://smartbear.com/resources/ebooks/the-state-of-api-2020-report/" target="_blank">dal report di SmartBear</a>.</div><div class="separator" style="clear: both; text-align: left;"><br /></div><div class="separator" style="clear: both; text-align: left;">Il grafico indica i tipi di API oggetto di attenzione tra i partecipanti al sondaggio:</div><div class="separator" style="clear: both; text-align: left;"><br /></div><div class="separator" style="clear: both; text-align: center;"><a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjZIi3PvLygloboy7lNGAPJJT-4KB7P-y6iIjEjTAwGVei2CaWL8VDZroIw9znwi6U_HQyKm75pGTMYzwh4cNRivkuxS6U5SckDu36G3jMgKsdvwmitQsw3cI_9Av2U-D4P5XrFa7HyLufM/s838/API_TYPES.png" referrerpolicy="origin" style="clear: left; float: left; margin-bottom: 1em; margin-right: 1em;"><img border="0" data-original-height="439" data-original-width="838" height="243" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjZIi3PvLygloboy7lNGAPJJT-4KB7P-y6iIjEjTAwGVei2CaWL8VDZroIw9znwi6U_HQyKm75pGTMYzwh4cNRivkuxS6U5SckDu36G3jMgKsdvwmitQsw3cI_9Av2U-D4P5XrFa7HyLufM/w463-h243/API_TYPES.png" width="463" /></a></div><br /><div class="separator" style="clear: both; text-align: left;"><div class="separator" style="clear: both;"><span style="color: #2b00fe;">CLASSIFICAZIONE DELLE API</span></div><div class="separator" style="clear: both;"><br /></div><div class="separator" style="clear: both;">Di seguito, vi fornisco una breve panoramica delle tipologie di API più diffuse.</div><div class="separator" style="clear: both;">Se volete approfondire ogni singola area, potete trovare del materiale in rete a partire dai link che vi segnalo.</div><div class="separator" style="clear: both;"><br /></div><div class="separator" style="clear: both;">In un prossimo blocco di articoli andrò ad approfondire le questioni di documentazione inerenti alle REST API, che sono oggi prevalenti sul mercato. Ma vedremo che i concetti generali e le best practice sono applicabili anche fuori dal perimetro delle REST API, con eventuali adattamenti.</div><div class="separator" style="clear: both;"><br /></div><div class="separator" style="clear: both;"><span style="color: #800180;"><i>REST API</i></span></div><div class="separator" style="clear: both;"><br /></div><div class="separator" style="clear: both;"><div class="separator" style="clear: both;">Nell'architettura <a href="https://en.wikipedia.org/wiki/Representational_state_transfer" target="_blank">REST</a> (REpresentational State Transfer), il server non memorizza lo stato della sessione del client. Ogni richiesta HTTP dal client al server deve contenere tutte le informazioni necessarie (payload) e lo stato della sessione è mantenuto lato client. Il server non si basa sulle informazioni provenienti da richieste precedenti. Il client è responsabile dell'archiviazione e della gestione di tutte le informazioni relative allo stato dell'applicazione.</div><div class="separator" style="clear: both;"><br /></div><div class="separator" style="clear: both;"><div class="separator" style="clear: both;">Le REST API utilizzano diversi formati di dati tra cui TXT, XML e JSON. L'utilizzo di formati di dati più semplici rende i payload più leggeri, il che rende le API REST più adatte a una gamma più ampia di applicazioni.</div><div class="separator" style="clear: both;"><br /></div><div class="separator" style="clear: both;">Ad esempio, REST API con payload JSON sono molto utilizzate in integrazioni IoT, dove diversi tipi di dispositivi, non sempre dotati di grandi capacità di memoria e di calcolo, devono scambiarsi informazioni.</div><div class="separator" style="clear: both;"><br /></div></div><div class="separator" style="clear: both;">Attraverso una REST API ci si relaziona con una "risorsa", identificata da una URL. I "consumatori" inviano richieste GET per accedere ad una risorsa e richieste PUT, POST e DELETE per modificarla o cancellarla.</div></div><div class="separator" style="clear: both;"><br /></div><div class="separator" style="clear: both;"><span style="color: #800180;"><i>SOAP API - WSDL</i></span></div><div class="separator" style="clear: both;"><br /></div><div class="separator" style="clear: both;">Le <a href="https://en.wikipedia.org/wiki/SOAP" target="_blank">SOAP API</a> (Simple Object Access Protocol) sono servizi Web che si basano su un protocollo XML per definire il formato dei messaggi delle richieste e delle risposte. Il formato dei messaggi XML di SOAP viene solitamente definito tramite un file WSDL (Web Services Description Language) che specifica gli elementi e gli attributi consentiti nello scambio di messaggi. </div><div class="separator" style="clear: both;"><br /></div><div class="separator" style="clear: both;">Il file WSDL è leggibile dalla macchina e utilizzato dai server che interagiscono tra loro per facilitare la comunicazione. </div><div class="separator" style="clear: both;"><br /></div><div class="separator" style="clear: both;">Un file WSDL può potenzialmente descrivere un formato del messaggio di notevole complessità.</div><div class="separator" style="clear: both;">Questo è il motivo essenziale per il quale <a href="https://www.soapui.org/learn/api/soap-vs-rest-api/" target="_blank">le REST API stanno soppiantando le SOAP API</a> in tutte le applicazioni dove non necessita una comunicazione particolarmente strutturata, quindi dove si può anche fare a meno dell'XML.</div><div class="separator" style="clear: both;"><br /></div><div class="separator" style="clear: both;"><span style="color: #800180;"><i>RPC API</i></span></div><div class="separator" style="clear: both;"><br /></div><div class="separator" style="clear: both;">Le RPC API (<a href="https://it.wikipedia.org/wiki/Chiamata_di_procedura_remota" target="_blank">Remote Procedure Call</a>) sono servizi Web che chiamano un metodo su un server remoto fornendo un messaggio codificato in HTTP. Il formato del messaggio codificato potrebbe essere XML (<a href="https://en.wikipedia.org/wiki/XML-RPC" target="_blank">API XML-RPC</a>) o JSON (<a href="https://en.wikipedia.org/wiki/JSON-RPC" target="_blank">API JSON-RPC</a>), in entrambi i casi via HTTP come altri servizi web. Queste API sono agnostiche rispetto la linguaggio di programmazione (Java, Python, C ++, ...) con cui viene realizzato il metodo remoto.</div><div class="separator" style="clear: both;"><br /></div><div class="separator" style="clear: both;"><span style="color: #800180;"><i>gRPC API</i></span></div><p>Le <a href="https://grpc.io/docs/what-is-grpc/introduction/" target="_blank">gRPC API</a>, sviluppate da Google, sono servizi web simili alle RPC API basate su RPC. gRPC definisce i messaggi non in formato XML o JSON ma attraverso un buffer, specificato attraverso un file con estensione <i>.proto</i>. Il buffer.<i>proto</i> consente di definire la struttura dei dati e il modo in cui serializzare i dati che devono essere consumati dal server ricevente. Il formato "<a href="https://developers.google.com/protocol-buffers/docs/overview#what-are-protocol-buffers" target="_blank">protobuffer</a>" è considerato più leggero efficiente rispetto ad XML.</p><p><span style="color: #800180;"><i>GraphQL</i></span></p><p>Le <a href="https://www.redhat.com/it/topics/api/what-is-graphql" target="_blank">GraphQL API</a> sono servizi web sviluppati da Facebook che consentono un'interazione dinamica basata su un unico endpoint. La query <a href="https://graphql.org/" target="_blank">GraphQL</a> recupera solo i dati necessari, consentendo richieste e risposte veloci.</p><p><span style="color: #800180;"><i>Async API</i></span></p><p><a href="https://www.asyncapi.com/" target="_blank">AsyncAPI</a> è uno standard open source mirato alle architetture basate su eventi (Event Driven Architecture). Simile alla specifica OpenAPI, consente di definire un'interfaccia comune per le interfacce EDA e consente una gestione multicanale. Quindi la stessa specifica può essere utilizzata per un API basata su MQTT o per una API Kafka.</p><p>AsyncAPI si basa su due concetti:</p><p></p><ul style="text-align: left;"><li>i messaggi guidano la maggior parte delle interazioni API</li><li>questi messaggi descrivono azioni o eventi. </li></ul><p></p><p>In sostanza, AsyncAPI crede che tutto possa essere rappresentato come un sistema di messaggi, con un'intestazione e un payload facoltativi o non richiesti. In questa visione, AsyncAPI cerca di abilitare la definizione di API utilizzando definizioni basate sul canale indipendenti dal protocollo.</p><p><i><span style="color: #800180;">Librerie di API</span></i></p><p>Le "API basate su libreria", si riferiscono a librerie di codice (ad esempio, file JAR) che gli sviluppatori aggiungono direttamente ai loro progetti per fornire funzionalità aggiuntive tramite classi e metodi (nel caso di linguaggi ad oggetti come Java, .NET stack, C++) o altre funzioni che possono essere chiamate localmente. Con le API della libreria nativa, le funzioni sono incorporate localmente all'interno del codice per potenziare le operazioni realizzate dall'applicazione. Questo tipo di API sono strutturalmente diverse rispetto alle Web API che abbiamo elencato in precedenza.</p><p>Un esempio? <a href="https://wiki.openssl.org/index.php/Main_Page#Reference" target="_blank">OpenSSL API</a>, cioè la più importante libreria crittografica open source.</p><p>----------------------------------------------</p><p>ABBIAMO FINITO? Ovviamente no. </p><p>Ci sono altri tipi di API che potremmo dover documentare? Certo.</p><p>Allora diciamo che sono abbastanza confidente di avervi fornito "una mappa di base" per iniziare ad orientarvi rispetto alle caratteristiche generali delle API che attualmente coprono, ragionevolmente, il 90% dei casi che potreste dover gestire.</p><p>A presto.</p></div>Alèxandròshttp://www.blogger.com/profile/08313260173187515346noreply@blogger.com0tag:blogger.com,1999:blog-6959754885364519909.post-28589069795741789732020-10-19T01:02:00.000+02:002020-10-19T01:02:01.707+02:00Documentare le API: per quale audience?<div><a href="http://artigianodibabele.blogspot.com/2020/10/documentare-le-api-le-risposte-nascono.html" target="_blank">Come promesso</a>, ricominciamo da questo grafico:</div><div><br /></div><div><div class="separator" style="clear: both; text-align: center;"><a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhI22yRq31wv_sUDiXiW8ZUUbu64vuL6s70t9fA_oCT3YOV9Qz7COclt61W6OSjrRB1lMzleX2LJmgGDUgXk555BCbLDmWmGhAt4zHRyzTPVnCPIXT6DHnNBzed22AcESZMbPTfdQunpazN/" style="clear: left; float: left; margin-bottom: 1em; margin-right: 1em;"><img alt="" data-original-height="402" data-original-width="512" height="401" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhI22yRq31wv_sUDiXiW8ZUUbu64vuL6s70t9fA_oCT3YOV9Qz7COclt61W6OSjrRB1lMzleX2LJmgGDUgXk555BCbLDmWmGhAt4zHRyzTPVnCPIXT6DHnNBzed22AcESZMbPTfdQunpazN/w511-h401/image.png" width="511" /></a></div><br /><br /></div><div><br /></div><div><br /></div><div><br /></div><div><br /></div><div><br /></div><div><br /></div><div><br /></div><div><br /></div><div><br /></div><div><br /></div><div><br /></div><div><br /></div><div><br /></div><div><br /></div><div><br /></div><div><br /></div><div><br /></div><div><br /></div><div><br /></div><div><br /></div><div><br /></div><div>Come vedete, per le API è possibile approntare diversi tipi di "documentazione" o "informazioni per gli utenti" (secondo la definizone indicata nello standard <a href="https://www.iso.org/standard/71620.html" target="_blank">ISO/IEC/IEEE 82079</a>). Ma è possibile stilare una classifica di "priorità"? Cosa è assolutamente necessario e cosa posso considerare un "nice to have"? Dipende...</div><div><br /></div><div>Da cosa dipende? Dall'audience ovviamente!</div><div><span style="color: red;">Chi è interessato a capire cosa si può fare con le nostre API?</span></div><div><br /></div><div>Banalmente, gli sviluppatori che dovranno utilizzarle per scrivere software. </div><div><br /></div><div>Ma prima che uno sviluppatore possa utilizzare delle APIs, vi sono almeno altri due ruoli aziendali che devono intervenire per decidere di spendere il denaro necessario per acquisatre le APIs.</div><div><br /></div><div>Il Product Manager (PM) ed il Chief Technical Officer (CTO) sono due figure chiave che dovremo convincere ad acquisatre le nostre APIs, e visto che ci saranno altri concorrenti che cercheranno di fare altrettanto dovremo fare le scelte giuste.</div><div><br /></div><div>Ad esempio, fornire una Reference Guide che spiega nei dettagli ogni aspetto di ogni endpoint delle nostre API sarà molto utile per gli sviluppatori, ma di nessun aiuto per il PM ed il CTO.</div><div>La mia esperienza professionale mi suggerisce l'opportunità di segmentare l'audience in questo modo:</div><div><ul style="text-align: left;"><li>Sviluppatori</li><ul><li>Sviluppatori Interni</li><li>Partners commerciali</li><li>Sviluppatori Clienti</li></ul><li>PM</li><li>CTO</li></ul></div><div><br /></div><div><span style="color: #2b00fe;">SVILUPPATORI</span></div><div><br /></div><div>Gli sviluppatori utilizzeranno le API per scrivere applicazioni software e sono ritenuti i principali clienti per un "API vendor". In questo gruppo possiamo distinguere almeno 3 aree.</div><div><br /></div><div><i><span style="color: #800180;">SVILUPPATORI INTERNI</span></i></div><div>Le API vengono usate dagli sviluppatori "esterni" (clienti del software vendor), ma vengono realizzate dagli sviluppatori "interni" del software vendor. Ma gli sviluppatori "interni" hanno bisogno della documentazione sulle API che hanno realizzato? </div><div>Ovviamente si, per il banale motivo che ci crea un gran numero di API non è di certo in grado di ricordare a memoria tutte le loro proprietà, i parametri e i codici di ritorno.</div><div><br /></div><div>Certo, si può aprire il codice sorgente ed investigare al suo interno... e molti sviluppatori sono abituati ad agire così, ma non è di sicuro il modo più comodo e veloce.</div><div><br /></div><div>Per gli sviluppatori interni, una <span style="color: red;">Reference Guide</span> è di solito sufficiente.</div><div>Molte delle voci che sono presenti nel grafico precedente, fanno parte della Reference Guide.</div><div>Ovviamente è necessario anche un <span style="color: red;">Sandbox Environment</span>, cioè un'area dove si possono testare le API e verificarne il funzionamento, ma per gli sviluppatori interni questo è un elemento "nativo".</div><div><br /></div><div>In sintesi, per gli sviluppatori interni può essere sufficiente definire:</div><div><ul style="text-align: left;"><li><span style="color: red;">Reference Guide</span></li><li><span style="color: red;">Sandbox Environment</span></li></ul></div><div><br /></div><div><i><span style="color: #800180;">PARTNER COMMERCIALI</span></i></div><div>I nostri partner commerciali di solito sono sviluppatori esperti che hanno confidenza con le nostre soluzioni e usano le nostre API per progetti di system integration.</div><div><br /></div><div>In questo caso è necessario fornire gli stessi documenti utilizzati anche dagli <span style="color: #800180;">SVILUPPATORI INTERNI,</span> ma anche degli <span style="color: red;">esempi di codice</span> che illustrano alcuni casi d'uso tipici e, per ogni API (che può racchiudere diversi endpoint) sarebbe opportuno almeno uno <span style="color: red;">Use Case</span>.</div><div><br /></div><div>Lo Use Case descrive uno scenario concreto in cui dobbiamo risolvere un problema e indica la soluzione adottata attraverso gli strumenti disponibili; in questo caso, le API che possono essere utilizzate per indirizzare il problema descritto. </div><div><br /></div><div>Nello Use Case si indica la sequenza delle operazioni fondamentali da eseguire (per i dettagli si rimanda alla Reference Guide) ed anche un esempio eventuale di codice che utilizza le API in questione.</div><div><br /></div><div>Se non si dispone della documentazione di uno Use Case, bisogna fornire ALMENO una <span style="color: red;">Getting Started Guide</span>.</div><div><br /></div><div>Inoltre, i nostri partner devono essere informati quando apportiamo variazioni alle caratteristiche delle nostre API, quindi dobbiamo aver cura di pubblicare un <span style="color: red;">Change Log </span>che sia in grado di descrivere qualsiasi variazione significativa sulla struttura e i parametri delle nostre API.</div><div><br /></div><div>Ricapitolando, dobbiamo fornire almeno:</div><div><ul><li><span style="color: red;">Reference Guide</span></li><li><span style="color: red;">Sandbox Environment</span></li><li><span style="color: red;">Sample Code</span></li><li><span style="color: red;">Use Case</span></li><li><span style="color: red;">Getting Started</span></li><li><span style="color: red;">Change Log</span></li></ul></div><div><br /></div><div><i><span style="color: #800180;">SVILUPPATORI CLIENTI</span></i></div><div>Questi sono i nostri interlocutori più preziosi, quelli che possono determinare il successo effettivo delle nostre API. E questi hanno bisogno di TUTTO quello che gli possiamo dare.</div><div><br /></div><div>Oltre a tutti i documenti già disponibili per i <span style="color: #800180;">PARTNER COMMERCIALI</span>, per i clienti può essere necessari predisporre un <span style="color: red;">Software Developmnet Kit (SDK)</span> cioè uno strumento software e di documentazione che serve a velocizzare lo sviluppo di applicazioni software.</div><div><br /></div><div>Ma anche una <span style="color: red;">Troubleshooting Guide</span>, per indirizzare tutte quelle situazioni in cui le nostre API presentano dei limiti applicativi oltre i quali l'applicazione potrebbe non funzionare correttamente.</div><div><br /></div><div>Ovviamente, va fornito anche un <span style="color: red;">glossario</span>. Le nostre API fanno riferimento a concetti, algoritmi, standard ed acronimi che per noi non hanno segreti, ma per gli sviluppatori dei nostri clienti potrebbero essere criptici. </div><div><br /></div><div>Finito? Probabilmente no, ma se siamo riusciti a fornire tutte le informazioni appena descritte, siamo a buon punto. Ricapitolando:</div><div><ul><li><span style="color: red;">Reference Guide</span></li><li><span style="color: red;">Sandbox Environment</span></li><li><span style="color: red;">Sample Code</span></li><li><span style="color: red;">Use Case</span></li><li><span style="color: red;">Getting Started</span></li><li><span style="color: red;">Change Log</span></li><li><span style="color: red;">SDK</span></li><li><span style="color: red;">Troubleshooting Guide</span></li><li><span style="color: red;">Glossary</span></li><li><span style="color: red;">... ALTRO?...</span></li></ul></div><div><br /></div><div><span style="color: #2b00fe;">PRODUCT MANAGER</span></div><div>Che lavoro fa il Product Manager? Non semplice da definire in due righe. </div><div><br /></div><div>In estrema sintesi, è uno che "indica la via" soprattutto dal punto di vista della collocazione del prodotto sul mercato, e contribuisce (insieme ad altre figure aziendali) a definire le linee guide fondamentali (tecnologia, UX, competition, comunicazione, ...) lungo le quali si deve sviluppare il prodotto; inoltre deve avere una "visione" coerente di tutto ciò (e anche di altri fattori) almeno di medio periodo. </div><div><br /></div><div>Bello vero? Si, ma non semplice.</div><div><br /></div><div>Restringendo il perimetro al nostro caso, il PM deve capire se la tecnologia che gli stiamo proponendo porta un vanataggio nello sviluppo del prodotto e della relativa offerta commerciale, tenendo conto dei diversi fattori sopraindicati. Quindi è chiaro che per lui una Reference Guide o un SDK non sono di nessun interesse.</div><div><br /></div><div>Se vogliamo conquistare la sua attenzione dobbiamo spiegare il <span style="color: red;">Return of Investement (ROI) Scenario </span> che può ottenere dalle nostre API. Quali sono gli Use Case sensibili per lui? Quali sono le aree dove le aziende concorrenti sono in questo momento più attrezzate? Noi dobbiamo essere bravi ad assistere i suoi punti deboli, dimostrare che le nostre API vanno a chiudere "il buco" e colmare la distanza rispetto ai concorrenti. O anche che le nostre API sono dei "differenziatori" rispetto a quanto possono offrire i concorrenti.</div><div><br /></div><div>Un esempio classico potrebbe essere il <span style="color: red;">White Paper "comparativo"</span>, <a href="http://artigianodibabele.blogspot.com/2010/04/saper-scrivere-il-white-paper.html" target="_blank">di cui ho scritto nel 2010</a>; si ok, ok, adesso i "puristi" saltano sulla sedia e mi fanno notare che il White Paper è un "documento di marketing" e non è "documentazione tecnica". </div><div><br /></div><div>Se siete ancora ancorati a questi schemi, rischiate di non cogliere il punto.</div><div>Qui il problema non è attenersi a delle schematizzazioni di maniera, ma risolvere il problema: convincere il PM che le nostre API saranno un valore aggiunto.</div><div><br /></div><div>Un documento che potrebbe avere punti di contatto con il ROI Scenario, ma più ad "alto livello" e in una prospettiva di medio periodo potrebbe essere il <span style="color: red;"><a href="http://artigianodibabele.blogspot.com/2010/05/saper-scrivere-il-white-paper-di.html" target="_blank">White Paper "di scenario"</a></span>. </div><div><br /></div><div>Ricapitolando:</div><div><ul style="text-align: left;"><li><span style="color: red;">ROI Scenario</span></li><li><span style="color: red;">Use Case</span></li><li><span style="color: red;">White Paper "comparativo"</span></li><li><span style="color: red;">White Paper "di scenario"</span></li></ul></div><div><br /></div><div><span style="color: #2b00fe;">CTO</span></div><div>Il CTO è la massima autorità tecnico-manageriale di un'azienda ed è il responsabile della strategia di medio-lungo periodo nell'evoluzione del prodotto. Di solito è un manager con un robusto back-ground tecnico. Quindi per convincere il CTO dobbiamo offrire una visione tecnica completa delle nostre API, ma di alto livello.</div><div><br /></div><div>Quali tecnologie utilizziamo? Quali aree applicative andiamo a coprire? Quali standard tecnici vengono implementati attraverso le nostre API? Quanti potenziali clienti possono giovarsi delle nostre API? Quali difficoltà di integrazione possiamo abbattere? Se possiamo fornire un API Portal quali caratteristiche espone il nostro portale?</div><div><br /></div><div>Queste sono alcune delle principali domande a cui potremmo dover rispondere per convincere il CTO delle nostre buone ragioni.</div><div><br /></div><div>Un documento che potrebbe rispondere a questa esigenza è il <span style="color: red;">White Paper "tecnico"</span>.</div><div><br /></div><div>In generale, dovrà essere un documento breve, intenso, con dentro tutti i dati tecnici salienti che dobbiamo trasmettere al CTO per convincerlo a comprare le nostre API. Poi potete accompagnare questo documento con uno Use Case "ad-hoc" che metta in evidenza tutti gli aspetti sopracitati, immersi in un caso concreto.</div><div><br /></div><div>*****</div><div><br /></div><div>In questo post ho citato diversi concetti senza spiegarli, ma nei prossimi post di questo ciclo andrò a chiarire con maggior dettaglio. </div><div><br /></div><div>A presto!</div><div><span color="rgba(0, 0, 0, 0.9)" face="-apple-system, system-ui, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", "Fira Sans", Ubuntu, Oxygen, "Oxygen Sans", Cantarell, "Droid Sans", "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Lucida Grande", Helvetica, Arial, sans-serif" style="background-color: white; font-size: 14px;"><br /></span></div>Alèxandròshttp://www.blogger.com/profile/08313260173187515346noreply@blogger.com0tag:blogger.com,1999:blog-6959754885364519909.post-77484469863232313352020-10-14T13:36:00.002+02:002020-10-14T13:43:22.382+02:00Documentare le API? Le risposte nascono dalle domande...<p><a href="http://artigianodibabele.blogspot.com/2020/06/api-economy-quale-impatto-sulla.html" target="_blank">Come detto in precedenza</a>, le API sono la pietra angolare della trasformazione digitale che sta attraversando tutte le aziende. Se non foste convinti di questo assunto, vi basti pensare alle conseguenze della pandemia COVID-19 che stiamo vivendo: quale impatto abbiamo registrato sui processi lavorativi?</p><p>Le aziende più efficienti hanno fatto fronte alle difficoltà con meno danni e sono quelle che dispongono di processi digitalizzati realizzabili senza la necessità che TUTTI i lavoratori siano necessariamente presenti nel perimetro aziendale.</p><p>Un esempio? Ai primi di Giugno mi chiama il responsabile della documentazione aziendale di un'importante azienda italiana, di cui non farò il nome.</p><p>Il suo problema: a seguito della pandemia, i clienti richiedevano training digitalizzati, da fruire attraverso piattaforme LMS (Learning Management Systems) e lui voleva produrrre degli oggetti SCORM a partire dalla documentazione di prodotto, scritta secondo lo standard DITA.</p><p>Prima della pandemia, l'azienda forniva sessioni di training face-to face, ma non era più possibile; tuttavia, la necessità di fornire training ai clienti era pressante. </p><p><span style="color: red;">Ragionando su questo problema, l'azienda in questione si è resa conto che era conveniente intraprendere questa trasformazione INDIPENDENTEMENTE dalla pandemia!</span></p><p>Al netto della soluzione che ho suggerito, il nocciolo della questione è: possiamo ridefinire e digitalizzare processi non solo perchè siamo obbligati dalle circostanze ma perchè è SEMPLICEMENTE CONVENIENTE! </p><p>E questo fa la differenza nell'era della "API economy".</p><p>Se le API sono la spina dorsale dei processi di digitalizzazione, non ci vuole un'intelligenza cartesiana per capire quale ruolo può giocare la Comunicazione Tecnica incentrata sulle API.</p><p>Per inizare questo percorso, voglio partire dai dati prodotti da una recente indagine condotta da <a href="https://smartbear.com/">SmartBear</a>.</p><p>Io analizzerò solo alcuni aspetti del report (per una lettura completa, potete accedere <a href="https://smartbear.com/resources/ebooks/the-state-of-api-2020-report/">da qui</a>).</p><p><br /></p><p><span style="color: #2b00fe;">SETTORI INDUSTRIALI COINVOLTI NELL'INDAGINE</span></p><p></p><div class="separator" style="clear: both; text-align: center;"><a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEitBjB02hJDFzQPuVBQzcBqvpaYlJm0mS_-BO874_iP7d5SEF5W_qf04w1cpFIV8gYW-Co6cUatt9KdzqlE6Xw-sB0M7CMP28NYg9oVsTiAV_5Gbg7ewtaE45A6gdHaFGrSRENxPTdQMxCX/s2530/API_REPORT_1.png" style="clear: left; float: left; margin-bottom: 1em; margin-right: 1em;"><img border="0" data-original-height="1242" data-original-width="2530" height="248" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEitBjB02hJDFzQPuVBQzcBqvpaYlJm0mS_-BO874_iP7d5SEF5W_qf04w1cpFIV8gYW-Co6cUatt9KdzqlE6Xw-sB0M7CMP28NYg9oVsTiAV_5Gbg7ewtaE45A6gdHaFGrSRENxPTdQMxCX/w508-h248/API_REPORT_1.png" width="508" /></a></div><br /><span style="color: #2b00fe;"><br /></span><p></p><p><span style="color: #2b00fe;"><br /></span></p><p><br /></p><p><br /></p><p><br /></p><p><br /></p><p><br /></p><p><br /></p><p><br /></p><p>Tutti i maggiori settori industriali sono coinvolti e non solo il settore ICT, che ovviamente fa la parte del leone col 28%.</p><p><br /></p><p><span style="color: #2b00fe;">DA QUANTO TEMPO STATE SVILUPPANDO API?</span></p><p>Questa domanda mostra che solo il 18% delle aziende che hanno partecipato al sondaggio stanno sviluppando API da almeno 10 anni, mentre il 29% sta intraprendendo questa strada da 3-5 anni.</p><p>Quindi è un'area di sviluppo ancora molto giovane.</p><div class="separator" style="clear: both; text-align: center;"><a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEigP-KbuGUvudCo3PAnV5OmSZIZtfu1990j_BDfKWpy-_760SosVeKvXBCOxs66UkGkJsw3oX6fMy72p1KTNi19-rNgJvV03WCF6wU1kfz_kKuBqilwh1G6xDyCSFwZmIA7ALF96x2Zquyw/s2182/API_REPORT_2.png" style="clear: left; float: left; margin-bottom: 1em; margin-right: 1em;"><img border="0" data-original-height="883" data-original-width="2182" height="204" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEigP-KbuGUvudCo3PAnV5OmSZIZtfu1990j_BDfKWpy-_760SosVeKvXBCOxs66UkGkJsw3oX6fMy72p1KTNi19-rNgJvV03WCF6wU1kfz_kKuBqilwh1G6xDyCSFwZmIA7ALF96x2Zquyw/w508-h204/API_REPORT_2.png" width="508" /></a></div><br /><p><br /></p><p><br /></p><p><br /></p><p><br /></p><p><br /></p><p><br /></p><p><span style="color: #2b00fe;"><br /></span></p><p><span style="color: #2b00fe;">PER QUALI MOTIVI STATE SVILUPPANDO API?</span></p><p>Questa è una delle domande "chiave" del sondaggio, perchè ci da una panoramica delle motivazioni e ci trasmette un dato essenziale: sviluppare API non è "una moda", una specie di "picco" tecnologico frutto di una momentanea espressione del mercato, ma qualcosa destinato a durare da qui ai prossimi 10-15 anni, che nel campo ICT equivale ad un'era geologica!</p><p><a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgj4fR2wDsD46ryUVCZ3GOJyeBy1K2brTOeYmMBCJVapRR6sj5tdEI_6ag_UCSeCska0ehzX734ImuNAnrzJ-mcov27vz_jiSpn3oMaGeSqHZx-2lWkByuBPYR39U_Ue5EFjpvZ46DT18qB/s1723/API_REPORT_3.png" style="clear: left; margin-bottom: 1em; margin-right: 1em; text-align: center;"><img border="0" data-original-height="943" data-original-width="1723" height="277" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgj4fR2wDsD46ryUVCZ3GOJyeBy1K2brTOeYmMBCJVapRR6sj5tdEI_6ag_UCSeCska0ehzX734ImuNAnrzJ-mcov27vz_jiSpn3oMaGeSqHZx-2lWkByuBPYR39U_Ue5EFjpvZ46DT18qB/w505-h277/API_REPORT_3.png" width="505" /></a></p><p>Come vedete, prevalgono le motivazioni di interoperabilità tra sistemi diversi (64%) e la capacità di estendere una funzionalità nell'ottica di una logica "a servizi" (53%), sullo sfondo di un più generale processo di trasformazione digitale (43%).</p><p>Tutte queste motivazioni (e le altre comprese nel grafico) si alimentano a vicenda, in una sinergia che tenderà a crescere nei prossimi anni.</p><p><br /></p><p><span style="color: #2b00fe;">QUALI PARAMETRI DETERMINANO IL SUCCESSO DI UNA API?</span></p><p>E qui iniziamo ad entrare nell'ambito che più ci interessa, cioè nel delineare come la Comunicazione Tecnica viene coinvolta in questo fenomeno. Nella prossima figura ho evidenziato una voce:</p><div class="separator" style="clear: both; text-align: center;"><a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgYq0xMGf98hxtxLCPpYlAXH8hQ7j4Kabg-dtTDvywCjfjAB7KYzD76lL5AoMfdoQYnHMh2nR-Ibj9iBXN6tv4LX1k0wGPN3B4LaiWlm6KvXfowoS8Xz6IAlKSd5cdSX5QQNzhTJYB9uKQt/s1677/API_REPORT_4.png" style="clear: left; float: left; margin-bottom: 1em; margin-right: 1em;"><img border="0" data-original-height="913" data-original-width="1677" height="271" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgYq0xMGf98hxtxLCPpYlAXH8hQ7j4Kabg-dtTDvywCjfjAB7KYzD76lL5AoMfdoQYnHMh2nR-Ibj9iBXN6tv4LX1k0wGPN3B4LaiWlm6KvXfowoS8Xz6IAlKSd5cdSX5QQNzhTJYB9uKQt/w499-h271/API_REPORT_4.png" width="499" /></a></div><br /><p><br /></p><p><br /></p><p><br /></p><p><br /></p><p><br /></p><p><br /></p><p><br /></p><p><br /></p><p>E' evidente che se parliamo di <i>Usability/developer experience</i>, questa voce è largamente influenzata dalla documentazione che accompagna l'API. Ma non cadiamo nel luogo comune per il quale la documentazione delle API è ad uso e consume esclusivo degli sviluppatori: vedremo prossimamente che non è proprio del tutto vero.</p><p>Ora tralasciamo altri dati interessanti ma più focalizzati sullo specifico dello sviluppo software e continuiamo ad investigare alcuni aspetti della documentazione delle API, un elemento critico nel ciclo di vita delle API. La documentazione può fare la differenza tra una API di successo ed una inusabile.</p><p><span style="color: #2b00fe;"><br /></span></p><p><span style="color: #2b00fe;">IN AZIENDA ESISTE UN PROCESSO PER LA DOCUMENTAZIONE DI API?</span></p><p></p><div class="separator" style="clear: both; text-align: center;"><a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgUh15apGpDowqQH6DNOKBfpRW51V6IeZfsHBpnUhK_NnhtfbxgnPp3YzR9XiDlQb1STzSbQ56RAU-WYsjBacWk3NKYXUMu938XZmoDePhbY5Ni991w-umt1UbjKny7ncG9ujsMBgE06XHh/" style="clear: left; float: left; margin-bottom: 1em; margin-right: 1em;"><img alt="" data-original-height="1083" data-original-width="1594" height="318" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgUh15apGpDowqQH6DNOKBfpRW51V6IeZfsHBpnUhK_NnhtfbxgnPp3YzR9XiDlQb1STzSbQ56RAU-WYsjBacWk3NKYXUMu938XZmoDePhbY5Ni991w-umt1UbjKny7ncG9ujsMBgE06XHh/w505-h318/image.png" width="505" /></a></div><br /><br /><p></p><p><br /></p><p><br /></p><p><br /></p><p><br /></p><p><br /></p><p><br /></p><p><br /></p><p><br /></p><p><br /></p><p>Dal grafico si capisce chiaramente che, indipendentemente dalla dimensione dell'azienda, esistono processi dedicati alla documentazione delle API almeno nel 57% dei casi (26-100 dipendenti), per arrivare al 69% nelle grandi organizzazioni. Vi è poi circa un terzo delle aziende "piccole" (e circa un quarto delle aziende maggiori) che sta pianificando l'adozione di processi di documentazione delle API.</p><p>Ma ora entriamo a "gamba tesa" sul tema che ci interessa: cosa significa documentare un API?</p><p><span style="color: #2b00fe;"><br /></span></p><p><span style="color: #2b00fe;">LE 5 COSE PIU' IMPORTANTI PER DOCUMENTARE UN API</span></p><p></p><div class="separator" style="clear: both; text-align: center;"><a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhlJiwJkNhYMsk0klqUhhUVz-V27AInMhnWrj9r4SRBO-i_z-vETDWX9-D7Vki_g9_zgipLFqyWz999Oss2mPskmhS71We7AiiYXIG3JVPZQMmrR3grhJ77Wo3xqs131oXpaN1yP25AKbLy/" style="clear: left; float: left; margin-bottom: 1em; margin-right: 1em;"><img alt="" data-original-height="1348" data-original-width="1716" height="389" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhlJiwJkNhYMsk0klqUhhUVz-V27AInMhnWrj9r4SRBO-i_z-vETDWX9-D7Vki_g9_zgipLFqyWz999Oss2mPskmhS71We7AiiYXIG3JVPZQMmrR3grhJ77Wo3xqs131oXpaN1yP25AKbLy/w495-h389/image.png" width="495" /></a></div><br /><br /><p></p><p><br /></p><p><br /></p><p><br /></p><p><br /></p><p><br /></p><p><br /></p><p><br /></p><p><br /></p><p><br /><br /></p><p><br /></p><p>Come vedete esistono almeno 16 "tipologie" diverse di "elementi" attraverso i quali si può articolare la documentazione delle API. E sottolineo <i><u><span style="color: red;">ALMENO</span></u></i> perchè in realtà potremmo aggiungere qualche altra voce. </p><p>Se un'azienda fornisse ai propri clienti una documentazione strutturata attraverso tutti questi elementi, sarebbe di certo da considerare un'azienda "virtuosa". </p><p>In molti casi, sarebbe ottimale indirizzare anche solo alcuni di questi elementi.</p><p>Nel prossimo post, ripartiremo dall'ultimo grafico.</p><p>A presto!</p><p><br /></p>Alèxandròshttp://www.blogger.com/profile/08313260173187515346noreply@blogger.com0tag:blogger.com,1999:blog-6959754885364519909.post-36821795697961952652020-10-06T13:15:00.002+02:002020-10-06T13:18:08.641+02:00DITA events: occasioni A COSTO ZERO da non perdere!<p>Oggi inizia <a href="https://2020-adobe-dita-world.meetus.adobeevents.com/" target="_blank">Adobe DITA World 2020</a>.</p><p>E' uno dei maggiori eventi mondiali online nel campo della Comunicazione Tecnica e il maggior evento in assoluto per quanto concerne lo standard DITA.</p><p>Come sapete, <a href="https://www.oasis-open.org/committees/tc_home.php?wg_abbrev=dita" target="_blank">DITA è lo standard aperto</a> per la strutturazione dei contenuti più diffuso al mondo. Questa è l'occasione più importante che avete per toccare con mano lo "stato dell'arte".</p><p>L'evento si struttura <a href="https://2020-adobe-dita-world.meetus.adobeevents.com/agenda/" target="_blank">su tre giornate</a> ed è animato dai maggiori esperti mondiali del settore.</p><p><a href="https://2018-adobe-dita-world.meetus.adobeevents.com/" target="_blank">Nel 2018 ebbi l'onore di essere tra gli speaker</a> e fu un'esperienza eccezionale.</p><p>Vi consiglio di iscrivervi, anche perchè gli iscritti possono poi visionare tutti gli interventi con comodo e non necessariamente in direttta.</p><p>MA NON E' FINITA QUI!</p><p>In data 8 Ototbre 2020, vi segnalo anche il <a href="https://www.sdl.com/about/events/dcl-dita-day-2020/" target="_blank">DCL DITA Day 2020</a>, altro grande evento online sullo standadrd DITA.</p><p><span style="color: red;">ENTRAMBI GLI EVENTI SONO GRATUITI!</span></p><p>Se volete capire l'evoluzione di questo standard, potrete imparare moltissimo in soli 3 giorni.</p><p>Registratevi, e ci vediamo in chat durante gli eventi! A presto!</p>Alèxandròshttp://www.blogger.com/profile/08313260173187515346noreply@blogger.com0tag:blogger.com,1999:blog-6959754885364519909.post-39564249223038974542020-09-27T19:01:00.004+02:002020-09-28T11:47:45.531+02:00API "economy": quale impatto sulla Comunicazione Tecnica?Chi realizza informazioni per gli utenti che devono usare una piattaforma software, almeno una volta nella vita si è trovato a dover produrre documentazione relativa alle Application Programming Interface (API).<div><br /></div><div><div class="separator" style="clear: both; text-align: center;"><a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEg83dxz0z4L-tScN9oTuLJsAO_CdJ6qv7jlO4mzbiiy1XWIuwkSuSSexytcjjnaHsRcWPGSa2pwYb_0CHv6SVBkn7t6yiQ2e45d3eVH8TJxFOQrxuH-WDnk6t1fDRNyS1NRDKx1mhk7rpaI/s709/api.png" referrerpolicy="origin" style="margin-left: 1em; margin-right: 1em;"><img border="0" data-original-height="437" data-original-width="709" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEg83dxz0z4L-tScN9oTuLJsAO_CdJ6qv7jlO4mzbiiy1XWIuwkSuSSexytcjjnaHsRcWPGSa2pwYb_0CHv6SVBkn7t6yiQ2e45d3eVH8TJxFOQrxuH-WDnk6t1fDRNyS1NRDKx1mhk7rpaI/s320/api.png" width="320" /></a></div>
<br />
Le API sono interfacce che espongono le funzionalità di applicazioni software.<br />
<br />
Per interagire con una certa funzione dell'applicazione, non dovete conoscere i dettagli di quest'ultima, ma solo alcuni parametri che dovete "passare" ad una certa API, la quale vi restituirà il risultato previsto da quella funzione.<br />
<br />
Volendo generalizzare, un API è formata da un insieme di metodi di comunicazione chiaramente definiti. Attraverso tali metodi è possibile richiedere servizi alla piattaforma software, che sia un sistema operativo o altra applicazione.<br />
<br />
Io ricordo di aver iniziato a "documentare API" per la prima volta nel 2003, quindi non sono una novità. Ma perché oggi sono diventate così importanti?<br />
<br />
Perché oggi lavoriamo normalmente in ecosistemi digitali complessi ed eterogenei, ospitati da architetture Cloud e basati su standard e tecnologie diverse, attraverso applicazioni web che devono cooperare per scambiare un grande volume di dati.<br />
<br />
I sistemi IoT (Internet of Things) producono un grande volume di dati che alimentano i repository di Big Data. I motori di intelligenza artificiale (AI) devono essere addestrati da grandi volumi di dati strutturati e non, estratti dai Big Data. Tutti questi flussi informativi devono essere gestiti da solide politiche di Information Security. <div><br /></div><div>IoT, Big Data, AI, Information Security e altre aree tecnologiche devono lavorare insieme, collegate attraverso reti di grandi dimensioni e completamente integrate per ottenere funzionalità sempre più sofisticate.<br />
<br />
Come realizziamo queste architetture complesse? </div><div><br /></div><div>L'unica possibilità è fornire insiemi di API che possano essere utilizzate per integrare diversi sistemi digitali, senza che vi sia la necessità di conoscere la struttura dei singoli sistemi.<br />
<br />
L' "API Economy" sta diventando il principale motore dell'attività di digitalizzazione, in qualsiasi settore industriale.<br />
<br />
Puoi pensare a un'API come a un "livello" che nasconde la natura del sistema sottostante.<br />
È possibile attivare un'API tramite un breve set di parametri.<br />
Questo set di parametri (numerici o testuali) consente di eseguire un'azione precisa sul sistema.<br />
<br />
Non è necessario conoscere il motore interno del sistema o tutti i dettagli sui diversi algoritmi implementati. È sufficiente conoscere il set di API di sistema per gestire tutte le interazioni necessarie.<br />
<br />
Oggi scrivere la documentazione che accompagna una piattaforma software significa, principalmente, scrivere la documentazione delle API, cioè tutto quello che serve all'utente per utilizzare le API.<br />
<br />
Chi è il nostro utente target in tal caso? Di solito, un programmatore.<br />
Perché le API servono a scrivere il codice che permette di costruire gli strati d'integrazione tra due sistemi eterogenei, e questo lavoro è il lavoro degli sviluppatori software.<br />
<br />
Questa osservazione non è banale, perché se dovete scrivere per un programmatore, allora sarà bene avere confidenza con l'attività di scrittura del codice e con i più diffusi linguaggi di programmazione.<br />
<br />
E qui si apre un primo fronte nell'eterno conflitto tra due posizioni:<br />
<ol>
<li>Quelli che... <i>"chi scrive la documentazione del prodotto deve essere un esperto del prodotto..."</i></li>
<li>Quelli che... <i>"un Comunicatore Tecnico può scrivere la documentazione di qualsiasi prodotto... anzi meno è esperto di una certa tecnologia e meglio è..."</i></li></ol>
Non sono mai stato un manicheo e non inizierò oggi.<br />
<br />
L'esperienza mi ha insegnato che se non hai confidenza con la tecnologia che devi descrivere, puoi comunque fare un buon lavoro, ma probabilmente impiegherai una quantità di tempo superiore a quella che sarebbe stata necessaria se avessi avuto "le mani in pasta" con quella tecnologia.<br /><span style="color: red;">
E LA VELOCITA' è un valore!</span><br />
Ma questa è un'altra conversazione che riprenderemo più avanti.</div><div><br /></div><div>Certamente, nel caso della documentazione di API, è opportuno avere una "profonda confidenza" con la programmazione software e questo è un punto da tenere a mente.<br />
<br />
A presto.<br /></div></div>Alèxandròshttp://www.blogger.com/profile/08313260173187515346noreply@blogger.com0tag:blogger.com,1999:blog-6959754885364519909.post-37922586867314992332020-06-14T16:31:00.000+02:002020-06-15T09:03:39.778+02:00Un evento online: Because Online ROADSHOWNei giorni 23, 24, e 25 Giugno ci sarà un evento online da non perdere, soprattutto se siete dei professionisti della Comunicazione Tecnica.<br />
<br />
<img alt="" src="data:image/png;base64,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" /><br />
<br />
<br />
In tempi di COVID-19, quando qualsiasi conferenza frontale è stata di fatto neutralizzata, abbiamo scoperto l'utilità dei processi digitalizzati e delle comunicazioni remotizzate.<br />
<br />
E <a href="https://www.because-italy.com/because-online-roadshow/" target="_blank">il primo ROADSHOW della Because</a> si inserisce perfettamente in questo contesto.<br />
<br />
Tre giornate (2 ore e mezza ogni giorno) in cui diversi professionisti del settore si avvicenderanno in uno schema di lavoro molto flessibile per parlare di diversi aspetti:<br />
<ul>
<li>GIORNO 1 (23 Giugno): Creazione di contenuti tecnici</li>
<li>GIORNO 2 (24 Giugno): La tecnologia al servizio delle lingue</li>
<li>GIORNO 3 (25 Giugno): CCMS & Content Delivery</li>
</ul>
<div>
Io sarò presente il primo giorno e metterò a disposizione il mio punto di vista e la mia esperienza sulle tematiche del processo redazionale.<br />
<br />
Vi invito a partecipare perchè occasioni come queste sono rare in Italia, probabilmente uniche, almeno per tutto il 2020.</div>
<div>
<br /></div>
<div>
Vi aspetto.</div>
<div>
<br /></div>
Alèxandròshttp://www.blogger.com/profile/08313260173187515346noreply@blogger.com0tag:blogger.com,1999:blog-6959754885364519909.post-25054313549476500912020-05-31T00:15:00.002+02:002020-05-31T00:15:30.990+02:00Comunicazione Tecnica e COVID-19: quali impatti sulla professioneLa pandemia mondiale ha avuto un impatto fortissimo su diversi aspetti della nostra vita, e largamente sulla nostra vita professionale.<br />
<br />
Il collega Tom Johnson, <a href="https://idratherbewriting.com/" target="_blank">autore di uno dei più importanti blog</a> sulla scrittura tecnica, ha preso l'iniziativa di <a href="https://www.questionpro.com/t/PGzGMZhSHg" target="_blank">costruire un sondaggio</a> al fine di indagare in che modo la professione del Com Tecnico sia stata "tocccata" dal COVID-19.<br />
<br />
E i risultati sono molto interessanti.<br />
Ad esempio, durante la pandemia solo il 4.76% dei partecipanti ha perso il proprio lavoro.<br />
<br />
<a href="https://idratherbewriting.com/blog/quarantine-pandemic-impact-on-tech-comm-survey/" target="_blank">Il sondaggio è ancora aperto</a> e vi invito a partecipare. Per ora, l'Italia ha contribuito con due partecipanti su 256 (ed uno dei due sono io).<br />
<br />
Come sapete, in Italia non ci sono dati pubblici sulla nostra professione; non si fanno sondaggi tematici di alcun genere, e quindi non abbiamo alcun dato nel contesto nazionale.<br />
Quindi varrebbe la pena partecipare a queste iniziative, per provare a dare un contributo basato sulle esperienze dei professionisti italiani.Alèxandròshttp://www.blogger.com/profile/08313260173187515346noreply@blogger.com0tag:blogger.com,1999:blog-6959754885364519909.post-8467432883801667342020-04-03T21:46:00.002+02:002020-04-03T21:46:39.707+02:00Un elenco aggiornato delle norme armonizzate inerenti alla Direttiva Macchine 2006/42/CEIl 2 aprile 2020 la Commissione Europea <a href="https://eur-lex.europa.eu/legal-content/EN/TXT/?uri=uriserv:OJ.L_.2020.102.01.0006.01.ENG&toc=OJ:L:2020:102:TOC" target="_blank">ha pubblicato un elenco aggiornato delle norme armonizzate</a> relative alla Direttiva macchine (2006/42/CE).<br />
<br />
Tali norme possono essere utilizzate dai produttori di macchinari per dimostrare che i loro macchinari sono conformi alla Direttiva Macchine.<br />
<br />
L'elenco aggiornato è importante per i produttori di macchine marcate CE che hanno utilizzato norme armonizzate per dimostrare la conformità CE.<br />
<br />
Controllate il nuovo elenco per verificare se uno degli standard applicati è stato aggiornato o se sono disponibili nuovi standard. Tenete presente che se una norma armonizzata viene aggiornata è necessario rivalutare i prodotti e aggiornare la Dichiarazione di Conformità.<br />
<br />
In alcuni casi può accadere <span style="color: red;">che solo alcune parti di uno standard risultino armonizzate</span>.<br />
<br />
Ad esempio, lo standard EN ISO 20607: 2019 è ora uno standard armonizzato.<br />
Ma non "integralmente": solo alcune parti della norma sono armonizzate (vedi Annex ZA).<br />
<br />
Ad esempio, sono armonizzate le clausole 4 e 5, ma non la 6.<br />
<br />
A presto.<br />
<br />Alèxandròshttp://www.blogger.com/profile/08313260173187515346noreply@blogger.com0tag:blogger.com,1999:blog-6959754885364519909.post-20990840494395685522020-02-02T21:18:00.000+01:002020-02-02T21:18:09.370+01:00Tecnologie ICT e standardizzazione: a che punto siamo?Nel mese di Gennaio sono entrato a far parte del gruppo ISO/IEC JTC1/SC7/WG 2 "System software documentation", attraverso l'adesione ad UNINFO - UNI/CT 504 "Ingegneria del Software.<br />
<br />
Questa opportunità è scaturita dopo aver partecipato, in qualità di membro del Advisory Board for Standard & Legislation della Tekom Europe, ai lavori di revisione dello standard ISO/IEC/IEEE_26514.<br />
<br />
Questo gruppo di lavoro <a href="https://www.iso.org/home.html" target="_blank">ISO</a> è diretto da <a href="https://www.linkedin.com/in/joann-hackos-a344421/" target="_blank">JoAnn Hackos</a> e lavorare con lei è stato un onore; quando nel 2005 ho iniziato a fare questo lavoro, studiavo sui suoi libri.<br />
<br />
Ora mi trovo a condividere idee e orientamenti con lei e altri colleghi di tutto il mondo, ed è un'esperienza molto formativa.<br />
<br />
E in questo solco, vi segnalo un report prodotto dalla <a href="http://standict.eu/">StandICT.eu</a>.<br />
<br />
Il report è basato sul contributo dei singoli esperti europei che hanno lavorato alla standardizzazione delle tecnologie ICT.<br />
<br />
Nel report trovate un elenco di 178 nomi, ma la cosa più interessante è vedere in quali aree si sta lavorando (gruppi di standardizzazione ISO/IEEE, consorzi internazionali, etc.) per intuire come ci si sta muovendo in Europa (e non solo) in alcuni settori quali Blockchain, Security, 5G, Internet of Things, AI ed altro.<br />
<br />
Il report lo potete scaricare <a href="https://www.standict.eu/sites/default/files/Final%20Impact%20Report%20Europe%E2%80%99s%20contributions%20to%20ICT%20Standardisation%20globally%20-%20Impacts%20from%20StandlCT.eu%20funding.pdf" target="_blank">da questo link</a>.<br />
<br />
Buona lettura.Alèxandròshttp://www.blogger.com/profile/08313260173187515346noreply@blogger.com0tag:blogger.com,1999:blog-6959754885364519909.post-87454808517599556582019-11-09T22:03:00.000+01:002019-11-09T22:26:57.888+01:00Minimalismo: mettiamo in ordine le idee<a href="https://instrktiv.com/en/blog/podcast/minimalism/" target="_blank">Vi segnalo questo articolo</a> in cui Ferry Vermeulen intervista il Prof. Hans van der Meij, considerato il maggior esperto del Minimalismo.<br />
E' un'occasione da non perdere, per due motivi:<br />
<br />
<ul>
<li>Non capita spesso di poter accedere "direttamente" alla sorgente della conoscenza di un determinato argomento.</li>
<li>Sul Minimalismo c'è da sempre molta confusione... conviene chiarirsi le idee.</li>
</ul>
Il Minimalismo è una filosofia per la redazione dei contenuti che si basa su 4 principi:<br />
<br />
<ol>
<li>Orientato all’azione.</li>
<li>Associazione tra lo strumento e il compito da eseguire. </li>
<li>Supporto al riconoscimento e alla risoluzione degli errori.</li>
<li>Fornire all’utente le informazioni essenziali e lasciarlo libero di scoprire i dettagli in autonomia.</li>
</ol>
<br />
I primi due principi significano "orientati al processo" (Task Oriented)<br />
Il terzo significa "risoluzione dei problemi" (Troubleshooting)<br />
Il quarto significa "sintesi sul contesto" (Context Oriented)<br />
<br />
<span style="color: blue;">Tutto semplice vero? </span>Parrebbe di no.<br />
<br />
Nell'ultima versione dello standard IEC IEEE 82079-1, al paragrafo 5.5.3 viene fornita una definizione di Minimalismo... vagamente imprecisa:<br />
<br />
<i style="background-color: orange;">Minimalism is an approach to information for use that includes</i><br />
<span style="background-color: orange;"><i>critical information and the least amount of other information needed to be complete. Critical </i><i>information includes the safe use of the product, the security of the information created with </i><i>the product, or the privacy of the information created by or stored with the product.</i></span><br />
<br />
<span style="color: red;">Questa NON E' LA DEFINIZIONE DI MINIMALISMO</span>... e credo che su questo punto ci siano pochi dubbi.<br />
<br />
Il MInimalismo, peraltro, ha ispirato anche alcune caratteristiche di DITA, lo standard più diffuso al mondo per l'ingegnerizzazione dei contenuti.<br />
<br />
Ad esempio, <a href="http://docs.oasis-open.org/dita/dita/v1.3/os/part0-overview/dita-v1.3-os-part0-overview.html" target="_blank">nella versione 1.3 di DITA</a>, è stato introdotto il Troubleshooting Topic Type, che va a mappare proprio il principio n°3.<br />
<br />
Quindi, andate <a href="https://instrktiv.com/en/blog/podcast/minimalism/" target="_blank">sul sito di Ferry</a> e seguite le risposte del Prof. Hans van der Meij.<br />
A presto.<br />
<br />
<br />Alèxandròshttp://www.blogger.com/profile/08313260173187515346noreply@blogger.com0tag:blogger.com,1999:blog-6959754885364519909.post-15721721279536431902019-09-03T07:41:00.000+02:002019-09-03T08:10:24.482+02:00Un brevetto per la sincronizzazione dei contenutiDa qualche tempo è disponibile su Google Patent <a href="https://patentimages.storage.googleapis.com/b2/55/b2/044ca1cdf9d69b/US10262052.pdf" target="_blank">il brevetto</a> che ho ideato nelle prime settimane del 2015, mentre lavoravo in IBM:<br />
<br />
<span style="color: red;">ON DEMAND SYNCHRONIZATION OF INFORMATION</span><br />
<span style="color: red;">(Sincronizzazione delle informazioni su richiesta)</span><br />
<br />
Di che si tratta? Di un'idea finalizzata a risolvere un problema classico delle grandi (ma anche delle piccole) organizzazioni: <span style="color: red;">la proliferazione di silos di contenuti completamente scorrelati e disallineati</span>.<br />
<br />
Sul tema sono stati scritti fiumi d'inchiostro, spesso invano, nonostante le migliori intenzioni di alcuni manager aziendali "illuminati" e la disponibilità di tecnologie e best practice adatte allo scopo.<br />
<br />
A questo punto, è necessario un breve flash-back.<br />
<br />
<a href="http://artigianodibabele.blogspot.com/2014/08/finisce-una-bella-storia-inizia-una.html" target="_blank">Arrivato in IBM</a> nel ruolo di Documentation Manager di CrossIdeas, ed essendo quindi il massimo esperto della documentazione della piattaforma IDEAS, nei primi mesi di lavoro venni contattato da diversi colleghi di altre aree (training, marketing, integration, etc) che sviluppavano contenuti inerenti al prodotto.<br />
<br />
Di fatto, vidi in presa diretta lo sviluppo di diversi "silos" di contenuti.<br />
<br />
<div class="separator" style="clear: both; text-align: center;">
<a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgRJXip7XkdTtDd3zq2M7aqlFY9SPQHeGUd5dgC6llSlYMEjpTuRhL04ltv3gsORQ-9FHTO7fGUMMdtPpO85J0WICCxOedtLoPSQeeIT-qxbdDWvpj6tkBa83Z3EOwl8sTpfnPXV5Q76LSK/s1600/SILOS.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" data-original-height="541" data-original-width="728" height="296" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgRJXip7XkdTtDd3zq2M7aqlFY9SPQHeGUd5dgC6llSlYMEjpTuRhL04ltv3gsORQ-9FHTO7fGUMMdtPpO85J0WICCxOedtLoPSQeeIT-qxbdDWvpj6tkBa83Z3EOwl8sTpfnPXV5Q76LSK/s400/SILOS.png" width="400" /></a></div>
<br />
<br />
Inizialmente, tali silos erano legati alla "radice" della documentazione tecnica di prodotto.<br />
Ma in seguito e per tutta una serie di ovvie ragioni, queste aree tendevano a procedere con un certo grado di autonomia, costituendo silos informativi potenzialmente disallineati.<br />
<br />
Mi resi conto che questa dinamica implicava un problema: nel momento in cui apportavo una modifica "significativa" alla doc di prodotto (sorgente), questa modifica doveva essere comunicata a tutti i referenti interessati.<br />
<br />
<span style="color: blue;">Non sarebbe stato opportuno instaurare un "automatismo" per tenere allineati i diversi silos?</span><br />
<br />
Da questa banale osservazione, ideai una generalizzazione della soluzione dell'allineamento dei silos (<span style="color: red;">ATTENZIONE! NON DELL'ELIMINAZIONE DEI SILOS</span>... cosa che ritengo impossibile, specialmente nelle grandi organizzazioni... ma questa è un'altra conversazione).<br />
<br />
L'idea è semplice:<br />
<br />
<ol>
<li>Un UTILIZZATORE di contenuti elegge una SORGENTE AFFIDABILE di contenuti e instaura un CONTRATTO con la sorgente.</li>
<li>L'utilizzatore può includere nei suoi documenti dei contenuti pubblicati dalla sorgente.</li>
<li>Quando un contenuto della sorgente cambia, l'utilizzatore ha la possibilità (mai l'obbligo) di aggiornare AUTOMATICAMENTE la variazione.</li>
<li>In questo modo, i documenti dell'utilizzatore sono sempre allineabili con la sorgente.</li>
</ol>
<br />
<br />
<span style="color: blue;">UN ESEMPIO SEMPLICE</span><br />
<br />
Immaginate di utilizzare delle tabelle della <a href="http://www.fao.org/home/en/" target="_blank">FAO</a> in una presentazione.<br />
Le tabelle, nel tempo, cambiano. Se volete essere certi di utilizzare sempre la tabella più recente, magari dovete andare ogni tanto sul sito della FAO e verificare eventuali variazioni.<br />
Se la tabella è cambiata, dovete decidere se prendere la nuova tabella e aggiornare la presentazione oppure no.<br />
<br />
Il paradigma è "L'UTENTE CHE CERCA L'INFORMAZIONE"... ricordate?<br />
Questo paradigma è SEMPLICEMENTE il paradigma SBAGLIATO!<br />
<br />
Non sarebbe meglio avere un meccanismo che, al variare della tabella, trasferisce automaticamente la tabella aggiornata nella mia presentazione? Cioè "L'INFORMAZIONE CHE CERCA L'UTENTE"... il paradigma giusto!<br />
<br />
Ora allarghiamo il campo di gioco.<br />
<br />
Immaginate di avere N documenti che attingono da K sorgenti (di solito con N>K). Ora, al variare dei contenuti di K sorgenti, dovete andare periodicamente a verificare se non sia necessario aggiornare "a mano" gli N documenti.<br />
<br />
In questo gioco, voi perdete sempre e perdete tanto più velocemente quanto più alti sono i valori di N e K.<br />
<br />
Se invece avete K contratti con le K sorgenti, potete allineare gli N documenti in modo quasi indolore. Ora non entro nei dettagli tecnici del meccanismo (content tagging, notifica della variazione, accettazione, etc), che potete approfondire leggendo il brevetto.<br />
<br />
Si pone una sola ipotesi: la sorgente espone contenuti attraverso un linguaggio taggato (XML, HTML, etc).<br />
<br />
La bontà del brevetto consiste nel non fare nessuna assunzione specifica sul:<br />
<br />
<ul>
<li>tipo della sorgente</li>
<li>numero di sorgenti</li>
<li>contenuti della sorgente</li>
<li>tipo/formato di documenti collegati alla sorgente</li>
</ul>
<br />
Per la precisione, il brevetto è stato realizzato grazie alla preziosa collaborazione di altri 4 colleghi:<br />
Cristina Bonanni, Patrizia Manganelli, Andrea Durastante e Andrea Di Maio.<br />
Devo sottolineare il fondamentale apporto di Cristina e Patriza, perchè io ero al primo brevetto mentre loro avevano già alle spalle diversi brevetti e la loro esperienza è stata decisiva nella formalizzazione di questa intuizione.<br />
<br />
Il brevetto è attualmente di proprietà della IBM, a cui abbiamo ceduto tutti i diritti.<br />
<br />
Se l'argomento vi interessa e volete approfondirlo mi potete contattare.<br />
<br />
Ciao.Alèxandròshttp://www.blogger.com/profile/08313260173187515346noreply@blogger.com1tag:blogger.com,1999:blog-6959754885364519909.post-71037551185277366592019-05-22T01:42:00.000+02:002019-05-22T01:48:02.866+02:00Breve guida al nuovo standard IEC / IEEE 82079-1: 2019Il 16/5/2019 è’ stato pubblicato lo standard IEC / IEEE 82079-1: 2019 che sostituisce la prima edizione, IEC 82079-1: 2012<br />
<br />
Lo standard fornisce i principi generali per la progettazione e la formulazione delle istruzioni per l'uso di prodotti di tutti i tipi, da un frigorifero domestico, ad un software o a prodotti di grandi dimensioni o molto complessi, come un trattore o grandi macchinari industriali.<br />
<br />
Questa edizione, rispetto alla precedente, include notevoli modifiche.<br />
<br />
<span style="color: blue;">NUOVA STRUTTURA</span><br />
Una riorganizzazione della struttura del documento, per facilitare l'applicazione dello standard e la ricerca di informazioni.<br />
<br />
<span style="color: blue;">INFORMAZIONI PER L'USO... e non documentazione</span><br />
Le informazioni per l'uso sono introdotte come termine generico.<br />
Le istruzioni per l'uso sono sinonimo di informazioni per l'uso.<br />
Questo approccio riflette una tendenza che si orienta nel rimuovere il termine “documentazione” che tradizionalmente richiama l’idea di una forma documentale cartacea. Oggi le informazioni per l’uso necessarie ad utilizzare un prodotto possono assumere diversi formati digitali (oltre al sempre possibile formato cartaceo) e quindi il termine “informazioni per l’uso” risulta molto più flessibile.<br />
<br />
<span style="color: blue;">PRINCIPI</span><br />
Il Capitolo 5 si concentra sullo scopo delle informazioni per l'uso, sulla qualità e sul processo di gestione delle informazioni.<br />
<br />
<span style="color: blue;">GESTIONE</span><br />
Il Capitolo 6 definisce gli elementi principali del processo di gestione delle informazioni per l'uso. Vengono forniti i criteri di riferimento per la definizione del “processo redazionale” , innervata da alcuni elementi di project management, risk management, quality assurance e test dei contenuti.<br />
<br />
<span style="color: blue;">CONTENUTI</span><br />
Il Capitolo 7 entra nel dettaglio di cosa deve essere contenuto nelle informazioni per l’uso.<br />
Tra i molti aspetti trattati, mi preme orientarvi sul <span style="color: red;">paragrafo 7.11</span>, che parla degli aspetti relativi alla sicurezza e di come le tematiche di sicurezza devono essere gestite nella definizione delle informazioni per l’uso “sicuro” di un prodotto.<br />
<br />
<span style="color: blue;">STRUTTURA</span><br />
Il Capitolo 8 parla della struttura delle informazioni per l’uso.<br />
In particolare, nel <span style="color: red;">paragrafo 8.2</span> si delinea la distinzione tra tre tipi di informazioni:<br />
<br />
<ul>
<li>concept</li>
<li>task</li>
<li>reference</li>
</ul>
<br />
Quindi, chi adotta uno standard come <a href="https://dita.xml.org/" target="_blank">DITA</a>, automaticamente si ritrova ad essere conforme con questa area dello standard.<br />
Inoltre, nel <span style="color: red;">paragrafo 8.4.3.2</span> si indica il concetto di “context sensitivity” (riferita in particolare alle informazioni per l’uso fruite attraverso dispositivi digitali).<br />
Ne riparleremo presto, perché su questo concetto si basa il futuro della Comunicazione Tecnica: context-based e user-based, ma definita dinamicamente e non pre-determinata (se non nelle componenti molecolari).<br />
<br />
<span style="color: blue;">FORMATO</span><br />
Nel Capitolo 9 si fa riferimento ai diversi formati con i quali possono essere distribuite le informazioni per l'uso.<br />
<br />
<span style="color: blue;">CHECK-LIST DI CONFORMITA'</span><br />
Infine, tra gli allegati, una check-list per verificare se le vostre informazioni per l’uso sono conformi allo standard.<br />
<br />
Questo standard deve essere noto a tutti coloro che sono coinvolti nella concettualizzazione, creazione, manutenzione, traduzione, localizzazione, integrazione di contenuti, produzione, e valutazione delle informazioni per l'uso associate ad un prodotto.<br />
<br />
Infine, voglio sottolineare come questo deve essere inteso come uno standard “orizzontale”, che si propone come lo standard di riferimento per la redazione di qualsiasi tipo di informazione per l’uso, per qualsiasi prodotto.<br />
<br />
Se volete prendere in visione un estratto ridotto dello standard, compreso l’indice dei contenuti, potete accedere <a href="https://webstore.iec.ch/preview/info_iecieee82079-1%7Bed2.0%7Db.pdf" target="_blank">a questo link</a>.<br />
<br />Alèxandròshttp://www.blogger.com/profile/08313260173187515346noreply@blogger.com2tag:blogger.com,1999:blog-6959754885364519909.post-73051645370310689852019-02-15T00:07:00.002+01:002020-08-24T11:55:56.031+02:00L'Artigiano di Babele compie 10 anni<div class="separator" style="clear: both; text-align: center;">
<a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEh0fkZ_6suPNfXHzqlHzEqnBanJtSfJP8ETQvgJW-7XOYW42qVErHDNepOnxLrHzr7FFHXbUeODZtIPpugcB4wiDnx9ed0pt7kcy31sY1Xhh2lrGYDKdG4O6KgnBuuN4zRGfhQo12Qvur8T/s1600/Blog_10_anni.png" style="margin-left: 1em; margin-right: 1em;"><img border="0" data-original-height="334" data-original-width="432" height="247" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEh0fkZ_6suPNfXHzqlHzEqnBanJtSfJP8ETQvgJW-7XOYW42qVErHDNepOnxLrHzr7FFHXbUeODZtIPpugcB4wiDnx9ed0pt7kcy31sY1Xhh2lrGYDKdG4O6KgnBuuN4zRGfhQo12Qvur8T/s320/Blog_10_anni.png" width="320" /></a></div>
<br />
<span style="color: blue; font-size: x-large;">10 anni di blog!</span><br />
<br />
<span style="font-size: large;">E chi se lo aspettava?</span><br />
<br />
All'inizio è stata una scommessa al buio.<br />
<br />
Poi si è trasformato in una "palestra" dove ho trovato stimoli e idee per crescere ed affinare "i muscoli della scrittura".<br />
<br />
Poi è diventato anche un "salotto" dove mi è capitato di incontrare tanti colleghi e appassionati della scrittura tecnica.<br />
<br />
Ma anche un "laboratorio", dove proporre tante diverse chiavi di lettura sulle tematiche professionali che ho affrontato.<br />
<br />
<span style="color: red;">Circa 343.000 visite in 10 anni, poco più di 34.000 all'anno, quasi 3.000 al mese, circa 100 al giorno, tutti i giorni, per 10 anni!</span><br />
<span style="color: red;"><br /></span> Un percorso <a href="https://artigianodibabele.blogspot.com/2008/12/mi-presento.html" target="_blank">partito da qui</a> e tanti passaggi chiave, con alcuni momenti di svolta, <a href="https://artigianodibabele.blogspot.com/search?q=crossideas" target="_blank">come questo</a>, oppure <a href="https://artigianodibabele.blogspot.com/search?q=IBM" target="_blank">questo</a>.<br />
<br />
E poi tanto altro ancora.<br />
<br />
Nel 2009 mi sentivo un artigiano, alla continua ricerca di strumenti, metodi e processi che mi hanno progressivamente portato all'essenza della Comunicazione Tecnica, che si basa "sull'ingegneria dei contenuti" (bellissima espressione del mio amico Antonio Murro).<br />
<br />
<span style="color: blue;">341 articoli (e con questo 342)</span>, ognuno dei quali rappresenta un passaggio di crescita, lo snodo di un ragionamento, una proposta di confronto rivolta a tutti i miei lettori, alla luce del sole.<br />
<div>
<br /></div>
Ma stasera non ho voglia di stilare troppe statistiche, fare grafici e analisi, recuperare indicazioni nascoste nei dati.<br />
<br />
Voglio solo voltarmi indietro per vedere quanta strada ho percorso con questo compagno di viaggio, il mio blog, in attesa di tutta la strada futura ancora da fare.<br />
<br />
<div class="separator" style="clear: both; text-align: center;">
<a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgwngmBTMrahM__6cYnV5GGnOG2dIQfFoezAslHd73edwXvREI82mVA9KKK3P09N-Y4hZXtG6ZNp94mo9oCqhiGovqg7NFACw7uxpaHPt8hIEbEsBL8LKUwDWQHmq0x_WSJCfR3k6-q5Rnd/s1600/Sentiero.png" style="margin-left: 1em; margin-right: 1em;"><img border="0" data-original-height="291" data-original-width="756" height="152" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgwngmBTMrahM__6cYnV5GGnOG2dIQfFoezAslHd73edwXvREI82mVA9KKK3P09N-Y4hZXtG6ZNp94mo9oCqhiGovqg7NFACw7uxpaHPt8hIEbEsBL8LKUwDWQHmq0x_WSJCfR3k6-q5Rnd/s400/Sentiero.png" width="400" /></a></div>
<br />
A presto!<br />
:-)<br />
<br />
<br />
<br />Alèxandròshttp://www.blogger.com/profile/08313260173187515346noreply@blogger.com0