Pages Navigation Menu

Impegnata a persone, impegnarsi per il futuro!

Most Recent Articles

HachNight@Museum al Museo di Capodimonte

Posted by on Set 11, 2017 in Uncategorized | Commenti disabilitati su HachNight@Museum al Museo di Capodimonte

Nelle giornate del primo e 2 luglio 2017 presso il Museo di Capodimonte si è svolto un evento che potrebbe sembrare avere ben poco a che fare con una struttura museale, ma che in realtà è servito proprio ad aprire un nuova finestra sul futuro. L’evento è una sorta di anticipazione della grande manifestazione che si svolgerà a Roma nel mese di dicembre, ovvero la “Maker Faire Rome”, una fiera dedicata alle nuove tecnologie e ai dispositivi tecnologici del futuro. La Fiera sarà preceduta infatti da una serie di eventi che si raggruppano sotto l’egida collettiva di “Aspettando Maker Faire Rome” di cui i due giorni di Capodimonte sono stati il primo appuntamento. Ma cosa è successo esattamente nel museo? Si è svolta un “hackaton challenge”. L’hackaton è una maratona di programmazione, una non stop durante la quale dei team formati da programmatori, esperti di informatica, hacker e appassionati collaborano insieme per mettere a punto un software, un nuovo sistema, un linguaggio inedito. A Capodimonte questa maratona è stata trasformata in una gara tra giovani talenti al fine di realizzare diversi progetti. Tutto l’evento è andato sotto il nome di “The Big HackNight@Museum” ed è stato organizzato da Sviluppo Campania con il supporto di Codemotion e ovviamente del Museo di Capodimonte che ha offerto uno scenario davvero unico alla gara. Per l’esattezza le competizioni che si sono svolte sono state ben otto, perché altrettante sono state le tematiche che i giovani partecipanti hanno dovuto affrontare per conquistare la palma della vittoria. Queste le sfide nelle quali si sono potuti cimentare. La prima è stata promossa dalla Regione Campania e consisteva nella messa a punto di un’app rivolta ai turisti che permettesse loro di interagire con il territorio per avere tutte le informazioni necessarie per un soggiorno piacevole. C’era poi la challenge della Regione Lazio per la messa a punto di applicazioni che sfruttassero i dati presenti sul portale della regione; anche il Museo di Capodimonte ha proposto la sua sfida per la creazione di uno strumento capace di migliorare l’esperienza di visita alla struttura. Soresa (Società Regionale per la Sanità) ha proposto l’ideazione di un sistema di intelligenza artificiale capace di dare tutta l’assistenza possibile al cittadino che necessiti di cure mediche o informazioni sanitarie. Nella challenge proposta da Asos i programmatori dovevano mettere a punto un “Virtual Wardrobe”, una funzionalità iOS o Android per consentire ai clienti di ideare il proprio guardaroba personalizzato; in quella di STMicroelectronics si è chiesto un nuovo strumento per esaltare la bellezza della città di Napoli e in quella di Cisco una modalità per migliorare la piattaforma Cisco Spark. Infine Tecno, società che opera nel settore dell’efficienza energetica, ha richiesto un’app capace di coadiuvare l’attività di car sharing. A partire dalle ore 9:00 del primo luglio, quando i partecipanti che avevano fatto in precedenza l’iscrizione si sono accreditati per l’evento, fino alle ore 16:00 del 2 luglio, quando è stato proclamato il vincitore, tutti i concorrenti si sono messi alla prova per cercare di ottemperare alle richieste dei committenti. I progetti vincitori sono stati selezionati tra quelli considerati migliori e ai partecipanti di ogni team sono andati in premio dei buoni di Amazon per il valore complessivo di 2.500 euro, eccezion fatta che per la challenge di Cisco in quanto Cisco stessa ha messo a disposizione dei riconoscimenti speciali. A conclusione dell’evento il direttore del Museo e Real Bosco di Capodimonte, Sylvain Bellenger, si è detto molto contento di aver ospitato la HackNight, convinto com’è che arte, tradizione e nuove tecnologie debbano procedere a braccetto.

Read More

COBOL, il linguaggio di programmazione più vecchio, è orfano

Posted by on Set 11, 2017 in Uncategorized | Commenti disabilitati su COBOL, il linguaggio di programmazione più vecchio, è orfano

Il 20 maggio 2017 è venuta a mancare una persona che ha scritto un grande pezzo della storia dei linguaggi di programmazione così come li conosciamo e li utilizziamo oggi, una delle vere e proprie pioniere dell’ingegneria informatica che seppe applicarsi a questo settore quando non era che agli albori. Stiamo parlando di Jean E. Sammet. La notizia della sua morte è stata data solo qualche giorno dopo che fosse avvenuta. La Sammet si trovava ricoverata in una struttura per anziani del Massachussets non lontana dal Mount Holyoke College dove la donna aveva conseguito la laurea e in seguito aveva insegnato ingegneria informatica. La Sammet aveva 89 anni, ma non era che una giovanissima donna laureata in matematica quando si trovò ad avere a che fare con i primi computer che siano mai stati costruiti. Secondo la sua stessa ammissione non le piacevano affatto quegli aggeggi, così come non piacevano a molti matematici dell’epoca che li consideravano una sorta di violazione della scienza pura. Era il 1949: qualche anno dopo la Sammet venne chiamata a lavorare sulla programmazione delle schede perforate per l’esecuzione di calcoli e iniziò a provare piacere da quel lavoro. Cominciò a scoprire che il mondo dei computer le piaceva. Ma non solo piaceva a lei: il fatto è che ormai stavano diventando sempre più di uso comunque, soprattutto da parte del Pentagono. Fu il Dipartimento della Difesa degli Stati Uniti, infatti, a chiedere nel 1959 la creazione di un linguaggio di programmazione comune per le applicazioni commerciali. A quei tempi la Sammet lavora per la IBM, dove rimase per oltre trent’anni, dove si era già ampiamente capito come i computer non potessero essere utili soltanto per i calcoli matematici, scopo per il quale erano stati impiegati fino a quel momento, ma che potevano avere un ampio impiego anche nel settore commerciale. Dopo aver ricevuto l’input dal Dipartimento della Difesa, alla IBM ci si mise al lavoro e fu creato il primo linguaggio di programmazione destinato a scopi commerciali, lo stesso che in larga misura viene usato anche oggi: il COBOL (Common Business Oriented Language). Ci volle un anno per metterlo a punto, ma non bastava, perché il Pentagono voleva anche che fosse standardizzato, ovvero che potesse funzionare allo stesso modo su qualunque macchina venisse installato. Così fu creato un team ad hoc, guidato da Grace Hopper, ricordata come la “mamma” di COBOL, e di cui faceva parte anche la Sammet. Ne seguì un’altra settimana di lavoro molto intenso presso lo Sherry-Netherland Hotel di Manhattan, al termine della quale COBOL fu presentato agli ingegneri del Pentagono che apportarono solo piccole e marginali modifiche e adottarono questo linguaggio di programmazione. La cosa stupefacente è che, nonostante siano passati tanti anni, COBOL non ha mai perso il suo smalto e ancora non è apparso un linguaggio di programmazione in grado di soppiantarlo. Il 70% delle transazioni commerciali che avvengono in tutto il mondo si svolgono grazie al linguaggio COBOL e l’85% delle applicazioni di tipo economico sono scritte con esso. Dunque chi ha la capacità di programmare in COBOL ha in mano una vera miniera d’oro poiché è uno dei tecnici più ricercati: riscrivere un programma scritto in COBOL, o sostituirlo, ha costi tali che è praticamente impossibile pensare di farlo. Ciò fa supporre una buona longevità per COBOL, che sopravvive anche a chi lo ha creato.

Read More

I rudimenti del coding

Posted by on Lug 26, 2017 in Uncategorized | Commenti disabilitati su I rudimenti del coding

Al giorno d’oggi conoscere e saper usare i linguaggi di programmazione è diventato fondamentale per un giovane quasi quanto conoscere una lingua straniera. Per quanto potrebbe apparire di non immediata necessità è comunque di innegabile utilità per potere, un domani, sapersi interfacciare meglio con interlocutori diversi. D’altro canto, non ne è necessaria una conoscenza puntuale o professionale. Basta un’infarinatura, per capirne i meccanismi e per poter, in futuro e a seconda della bisogna, approfondire certi aspetti o argomenti. Non a caso anche nelle scuole italiane si sta diffondendo sempre di più l’insegnamento dei linguaggi di programmazione: uno dei massimi esperti in materia si chiama Maurizio Boscaini, che di recente ha pubblicato un libro che si intitola “Imparare a programmare con Python”. Boscaini è prima di tutto un docente, quindi il suo approccio alla materia è fortemente didattico. Collaborando con la casa editrice Apogeo aveva già pubblicato un precedente volume il cui titolo è “Imparare a programmare con Scratch”. Qual è la differenza tra questi due linguaggi di programmazione? Essa è sostanziale, come spiega lo stesso Boscaini. Scratch è un linguaggio pensato per i bambini più piccoli, potremmo definirlo le “elementari” del coding. Questo perché, in realtà, ancora non entra nel vivo del linguaggio di programmazione vero e proprio, in quanto funziona in maniera visuale e per blocchi. Dunque il suo utilizzo è fortemente intuitivo, e può anche condurre a credere erroneamente che elaborare e capire algoritmi sia molto semplice. Python è lo step successivo, le “medie” del coding perché, pur essendo molto semplice e scarno, porta alla scrittura vera e propria di un codice e quindi mette il ragazzo di fronte alla vera natura della programmazione. Secondo Boscaini è comunque Python il linguaggio di programmazione più adeguato per impartire un insegnamento didattico, questo per via di alcune sue precise caratteristiche. La prima è la concisione: Boscaini dice che nel suo libro ha inserito stringhe di codice di al massimo 85 righe, quindi davvero scarne rispetto ad altri linguaggi. Inoltre intorno a Python ruota una community di utenti e sviluppatori molto nutrita e attiva, e questo offre un notevole supporto anche a chi vi si approcci per la prima volta. Ciò non toglie che il professore individui qualche piccolo difetto anche in Python, ma niente che non possa essere superato con un po’ di buona volontà. Il nocciolo della questione forse è proprio questo. Al giorno d’oggi i ragazzi sono abituati a fruire il web, soprattutto attraverso l’uso dei loro smartphone, in modo del tutto passivo. La curiosità di scoprire cosa c’è dietro al funzionamento delle app o dei programmi che utilizzano quotidianamente è molto debole, ma in questo senso sta facendo molto il Ministero dell’Istruzione. Il Ministero sta infatti portando avanti una campagna di sensibilizzazione tra i docenti, al fine di indirizzare sempre di più l’insegnamento verso il coding e il pensiero computazionale. Secondo quanto dice Boscaini, uno studente motivato potrebbe essere in grado di apprendere tutti i “segreti” di Python in 50 ore di insegnamento, e di essere in seguito in grado di approcciare linguaggi più complessi. Lui suggerisce Kivy, Pygame e VPython, ma anche Django per apprendere la programmazione dei server. L’aspetto interessante per i ragazzi è la possibilità di creare loro stessi uno dei videogiochi che li appassionano tanto; e attraverso questo riuscire a capire un po’ di più un aspetto tanto importante del mondo in cui viviamo.

Read More

CMS Software (IT)

Posted by on Lug 12, 2017 in CMS Software (IT) | Commenti disabilitati su CMS Software (IT)

00de3bc5cc

Accessibile

Open Source, totalmente Accessibile (sia backend che frontend), conforme ai dettami della Legge 4-2004, detta legge “Stanca”, particolarmente apprezzato dagli utenti non vedenti per la sua accessibilità a livello di amministrazione.

buattaUn CMS all inclusive, che permette la pubblicazione di un sito internet in maniera semplice, veloce, e senza richiedere le conoscenze tecniche necessarie per gestire prodotti simili.

Non necessita di database e contiene gli strumenti classici di un sistema di gestione contenuti web, (pubblicazione notizie e commenti, forum, guestbook, Wiki, galleria immagini, gestore Links, messaggistica).

immagine open sourceOpen source

ITcms è un software con codice sorgente aperto, gli utenti hanno la libertà di: eseguire, copiare, distribuire, studiare, cambiare e migliorare il programma.

Tale Licenza è applicabile al software distribuito a partire dalla comunità open source di ITcms. Non è valida per le versioni che ITcms mette a disposizione della clientela che si avvale dei servizi a pagamento di ITcms.

 


E-Government

Con il termine “E-government” si intendeil processo di informatizzazione ad opera delle pubbliche amministrazioni che, sfruttando sistemi digitali, gestiscono la comunicazione tra se ed il cittadino, le aziende e la politica.

ITcms mette a disposizione della Pubblica Amministrazione il suo background tecnologico, proponendo soluzioni per lo sviluppo dell’innovazione, migliorando qualitativamente il livello dei servizi erogati. Proponendo ai cittadini una partecipazione attiva, attraverso il loro coinvolgimento nell’azione amministrativa.

 

I nostri servizi

Il nostro personale è altamente specializzato, con conoscenze ed esperienze che spaziano dal semplice codice di markup html alla programmazione in php, alla grafica applicata al web, alle conoscenze multimediali del web 2.0. Alla base della nostra formazione c’è una approfondita conoscenza delle specifiche dell’accessibilità e dell’usabilità, in relazione alla progettazione “for all”.

Il nostro background, e l’attività nel campo delle ICT svolta finora, ci permettono di progettare e gestire corsi e-learning di formazione mirati all’apprendimento dell’uso del CMS, della redazione dei contenuti del portale, sull’accessibilità.  Ciò è tanto più vero se si guarda al nostro prodotto “ITcms”, che viene largamente utilizzato nel web sia da siti istituzionali che privati con estrema soddisfazione di tutti.

iTCms mette a disposizione delle pubbliche amministrazioni le sue specifiche competenze per la realizzazione di portali, e siti internet accessibili secondo la normativa vigente, offrendo diverse tipologie di servizi. Tutti i servizi sono relativi al nostro cms accessibile ed usabile, per il quale possiamo creare apposite funzionalità. Puoi trovare un esempio del nostro CMS sviluppato ad hoc e con moduli di gioco online per il sito di slot machine richslots.

Read More

I linguaggi di programmazione del futuro

Posted by on Giu 23, 2017 in Uncategorized | Commenti disabilitati su I linguaggi di programmazione del futuro

Le nuove tecnologie sono ormai una realtà consolidata che entra a far parte del nostro stile di vita quotidiano e domina gran parte delle attività più usuali. Questo significa che nel futuro ci sarà sempre più bisogno di personale specializzato, di professionisti che siano in grado di padroneggiare i linguaggi di programmazione per saper elaborare software e strumenti in grado di soddisfare le esigenze più variegate. Al momento domanda e offerta si equiparano ma, in base a quanto rilevato dalla Commissione Europea, potrebbe accadere che in futuro invece ci sia una notevole richiesta di mestieri legati allo IOT (Internet of Things) e alla AI (Intelligenza Artificiale) a fronte della quale non ci sia un’adeguata risposta. Si calcola che si sarà bisogno di almeno 900 mila operatori nel settore della programmazione informatica, e che non tutti questi saranno disponibili. Il fatto è che oggi per un giovane che voglia formarsi e specializzarsi non è facile individuare il settore informatico migliore verso il quale dirigersi: il problema sta nella rapida evoluzione che hanno i linguaggi di programmazione. Alcuni di loro diventano obsoleti in un brevissimo lasso di tempo, e questo potrebbe voler dire per chi li studia investire in qualcosa che alla fine non serve a nulla. In questo senso può essere utile una lista che è stata stilata da TIOBE (TIOBE Programming Community Index) azienda che si occupa di monitorare la popolarità dei linguaggi di programmazione. TIOBE infatti ha individuato 20 linguaggi di programmazione che sicuramente non cadranno in disuso nei prossimi anni, anzi, verranno sempre più usati. Verso di loro, quindi, si può appuntare l’attenzione di chi ha intenzione di costruirsi un futuro professionale nel mondo dell’informatica. Al primo posto si trova Java, che è di proprietà di Oracle, viene usato da circa 9 milioni di sviluppatori e ha vinto il premio come linguaggio di programmazione preferito nel 2015. Il suo grande successo deriva dalla sua versatilità: viene infatti usato per un gran numero di applicazioni Android. A seguire si trova C, che è il predicessero di C++ e ha il pregio di riuscire a gestire con facilità una grande quantità di dati. Viene usato, ad esempio, per il kernel di Linux. Non poteva mancare, in terza posizione, C++, linguaggio usato per Windows ed anche per una gran quantità di altri applicativi, ad esempio strumenti audio e per l’elaborazione delle immagini. Seguono C#, altro linguaggio Windows che sta godendo di sempre maggiore diffusione, e Phyton, che si usa soprattutto per l’elaborazione di informazioni automatiche. Scendendo in sesta posizione si incontra Php, che attualmente è usato per la scrittura di oltre l’80% dei siti web che si trovano in rete. Segue il popolare Javascript, che è stato il pioniere per la scrittura di pagine web dinamiche, e oggi viene usato tanto per applicazioni desktop che mobile. All’ottavo posto c’è una new entry, Visual Basic .NET, messo a punto da Microsoft e pensato come punto di transizione tra il vecchio e il nuovo. Seguono, in nona e decima posizione, Delphi (Object Pascal) e Perl. Delphi è il linguaggio di programmazione usato in ambienti Pascal, destinati alle scuole in cui si insegna ingegneria informatica; Perl serve soprattutto per progetti di prototipazione. Nelle successive dieci posizioni troviamo: Ruby, Swift, Assembly Language, Go, R, Visual Basic, MATLAB, PL/SQL, Objective-C e Scratch. Anche se sicuramente in futuro nasceranno anche altri nuovi sistemi, conoscendo e padroneggiando questi si potrà facilmente imparare l’ABC di ogni altro linguaggio di programmazione.

Read More

Django Girls: la programmazione web per donne

Posted by on Giu 7, 2017 in Uncategorized | Commenti disabilitati su Django Girls: la programmazione web per donne

Anche se il mondo è andato avanti e molte discriminazioni tra uomini e donne sono cadute, non si può negare però che continuino a sussistere dei mestieri che vengono considerati prettamente maschili, tanto che quando una donna dice di interessarsene si resta tutti con un palmo di naso. In campo scolastico, ad esempio, si dà per scontato che le facoltà di ingegneria siano piene di ragazzi e che le ragazze se ne tengano bene alla larga; per quel che concerne il mondo informatico invece si dà per scontato che il mondo della programmazione sia di unico appannaggio maschile mentre le femminucce si dedicano ad altro. Se può sembrare strano che un pregiudizio che ha un’aria così antica nasca invece in tempi recenti, ovvero dall’avvento dei computer in poi. Si pensi anche ad un dato piuttosto curioso: all’inizio le donne che si dedicavano alla programmazione web erano molte di più di quanto non siano attualmente. Secondo i dati raccolti dalla Nationl Science Foundation in poco meno di trent’anni la percentuale delle donne impiegate in ambito informatico è sceso dal 35 al 18%. Se negli anni pionieristici del web e dei personal computer tra le più ferventi innovatrici c’erano proprio le donne, dal 1984 in poi la situazione si è completamente invertita, fino ad arrivare ad una netta preponderanza maschile che potremmo definire quasi strapotere. Il motivo si può rintracciare proprio nel progressivo affermarsi del pregiudizio secondo il quale il mondo dei computer è solo per uomini. Questo si lega anche al diffondersi dei pc domestici, che all’inizio venivano usati per lo più dai ragazzi per giocare ai videogiochi. Da quel momento in poi non solo lo strumento computer, ma tutto ciò che ruota attorno ad esso, è diventato di unico appannaggio maschile ed ha portato a coniare il termine “nerd”. Ma oggi è necessario che le cose cambino: non è possibile che una donna si senta intimorita se entra in certi ambienti perché vede che ci lavorano solo uomini. Il mondo della programmazione può offrire molte opportunità professionali anche all’altra metà del cielo, così sono nate alcune associazioni che si fanno carico proprio di insegnare i linguaggi di programmazione alle donne. Una delle più note e attive in tutto il mondo, e che è approdata anche in Italia, si chiama “Django Girls” ed ha tenuto un workshop a Firenze nel mese di aprile 2017. Nel corso del workshop alle partecipanti è stato fatto costruire un blog usando il linguaggio Phyton. Per quanto alle corsiste fosse stato fornito del materiale già in precedenza, si capisce come un corso della durata di un giorno non possa essere sufficiente ad insegnare un linguaggio complesso come il Phyton. Ma quello che conta, nella strategia di “Django Girls”, è incuriosire le donne, farle avvicinare ad un settore che ritengono che per loro sia proibito e far capire come invece possiedano molte qualità adatte proprio a questo tipo di lavoro. Il workshop di Firenze è stato infatti un successo, ma ha dato modo di notare come anche la stessa “Django Girls” metta in atto una sorta di discriminazione. Tutti i gadget distribuiti, compreso il manuale di istruzioni circa l’uso del Phyton, erano colorati in tinte pastello, con cuoricini e fiocchi. Ma una donna non si fa spaventare neppure da un manuale del tutto asettico e tecnico: questo è bene che lo imparino anche gli enti di formazione che si rivolgono a discenti di sesso femminile.

Read More

4 e 5 maggio 2017 SEOcms a Bologna

Posted by on Mag 3, 2017 in Uncategorized | Commenti disabilitati su 4 e 5 maggio 2017 SEOcms a Bologna

I CMS (Content Management System) sono delle interfacce grafiche molto diffuse al giorno d’oggi perché consentono a chiunque, anche a chi non ha la più pallida idea di cosa sia un codice html, di scrivere un sito web. Siccome ormai tutti necessitano di un website, che sia aziendale o relativo alla propria attività professionale, un numero sempre maggiore di persone decide di costruirselo da solo avvalendosi, appunto dei CMS. Tra i CMS più diffusi ci sono WordPress e Joomla. Questi consentono di creare le varie pagine di un sito, di inserire immagine, testo, video, e qualunque altro contenuto si desideri, e magari anche di creare un vero e proprio e-commerce. Ma, attenzione: se i CMS permettono di realizzare il sito, fornendo gli strumenti tecnici che anche un programmatore non professionista è in grado di utilizzare, questo non significa che permetta anche di realizzare un sito davvero efficace, ovvero che sia in grado di raggiungere il pubblico desiderato. Per riuscire a fare questo infatti bisogna saper applicare, e quindi conoscere, le cosiddette “regole SEO”, laddove l’acronimo SEO sta per Search Engine Optimization. Il SEO è la bibbia del web: solo scrivendo una pagina che rispetti le sue regole sarà possibile avere un buon posizionamento nei motori di ricerca e di conseguenza arrivare al target di riferimento. Un CMS quindi deve essere usato con criterio, e per imparare fino in fondo le basilari regole SEO per la seconda volta a Bologna viene organizzato un workshop che si chiama “SEOcms”. Nel 2017 si svolgerà in ben due giornate, il 4 e il 5 maggio, e sarà possibile partecipare fisicamente ma anche tramite collegamento streaming. SEOcms è stato organizzato per la prima volta da Stefano Rigazio e Maurizio Palermo, che sono i fautori anche di questa seconda edizione che sarà interamente focalizzata sulle strategie che è possibile adottare per usare i CMS ottimizzandoli in chiave SEO. I workshop in cui sarà strutturato l’evento quest’anno sono due: il primo si occuperà esclusivamente di WordPress e il secondo di Joomla. Entrambe hanno una disponibilità di frequenza con posti limitati. Nell’ambito del workshop verranno forniti, da esperti del settore, tutti i rudimenti per imparare ad usare questi CMS al fine di costruire un sito veramente efficace in poco tempo e con poca spesa. Questo è il programma della prima giornata. Il giorno seguente invece si potranno seguire gli interventi di alcuni relatori, in tutto 18, esperti nell’uso di WordPress, Joomla, Magento, Prestashop, WooCommerce e Virtuemart, che daranno molti suggerimenti utili circa il modo migliore di usare questi preziosi strumenti. Per i partecipanti non mancheranno anche occasioni per mettere subito in pratica quello che hanno imparato. Tra i relatori previsti ci sarà, ad esempio, Maurizio Palermo, che parlerà di Virtuemart e del modo migliore per creare un e-commerce di successo attraverso il massimo sfruttamento della user experience. Anche Nando Pappalardo parlerà di e-commerce, fornendo alcune strategie utili per aumentarne gli introiti; mentre Gianpaolo Lorusso spiegherà cosa sono le campagne AdWords e in che modo possono essere utili per la propria popolarità nel web. “SEOcms” si svolgerà giovedì 4 e venerdì 5 maggio 2017 a Bologna, presso l’Eco Hotel Continental di Zola Predosa, non distante dall’Unipol Arena. I biglietti per partecipare si possono acquistare on line per l’intero evento o solo per una delle due giornate; nel costo del biglietto è inclusa anche la fornitura di tutto il materiale relativo agli interventi e ai workshop.

Read More

Pin It on Pinterest

Share This