Pages Navigation Menu

Impegnata a persone, impegnarsi per il futuro!

Most Recent Articles

Little Sophia, il robot che insegna i linguaggi di programmazione alle bambine

Posted by on Mar 20, 2019 in Uncategorized | Commenti disabilitati su Little Sophia, il robot che insegna i linguaggi di programmazione alle bambine

Si sa che il mondo dell’informatica, da sempre, viene ritenuto appannaggio quasi esclusivo della popolazione maschile. Questo però per un pregiudizio del tutto errato, in quanto le donne hanno le stesse capacità degli uomini per esplorare i molti meandri di questo affascinante mondo, quand’anche non di più addirittura. Ciò non toglie che siano ancora pochissime le persone di sesso femminile che si avvicinano all’informatica e alla programmazione tecnologica. Per cambiare in modo definito questo stato di cose la Hanson Robotics ha avuto un’idea, e ha deciso di provare a lanciarla su KickStarter. La Hanson Robotics è nota per aver costruito un androide di aspetto umano che ha chiamato “Sophia”. Adesso ha realizzato la sua sorellina più piccola, Little Sophia. Little Sophia è un robot con le fattezze di una bambola, alta poco meno di 40 centimetri, il cui scopo è quello di insegnare divertendo. La calotta cranica del robot è trasparente, in modo tale che il bambino possa vedere cosa succede al suo interno e come funziona esattamente la macchina. Il volto però è quello di una bambola, con una grafica molto accattivante per le bambine e un aspetto decisamente simpatico. Little Sophia può interagire con gli esseri umani parlando, cantando, rispondendo alle domande, e anche raccontando le barzellette. La bambina può programmare il robot al fine di farle fare ciò che desidera attraverso un’app che si può scaricare sia per sistemi operativi Android che iOS. I linguaggi che vengono usato sono Blockly e Phyton. Inoltre nella bambola robotica è anche presente la realtà virtuale, che consente di acconciarla e vestirla come meglio si desidera, e di farsi dei selfie insieme a lei da pubblicare in seguito sui social network. Insomma, Little Sophia strizza l’occhio a tutto ciò che può fare maggiormente presa su un bambino di oggi, allo stesso tempo avendo un preciso scopo didattico. Con Little Sophia le bambine semplicemente giocano e si divertono, in quanto essa appare come l’evoluzione dei bambolotti di una volta che aprivano e chiudevano gli occhi e facevano la pipì addosso. Nello stesso tempo però sviluppano abilità di programmazione, imparano ad usarne i linguaggi e acquisiscono dimestichezza con tutto il vasto mondo dello STEM (Science, Technology, Engineering and Mathematics). Approcciano anche e soprattutto il mondo delle AI, delle Intelligenze Artificiali con le quali, con tutta probabilità, avranno molto a che fare nel futuro, da adulti. Come dicevamo, Hanson Robotics ha provato a lanciare questa idea attraverso una campagna di crowdfunding pubblicizzata su KickStarter, che ha avuto un immediato e forse non del tutto inatteso successo. In pochissimi giorni sono stati raccolti i 100 mila euro imposti come budget e ancora adesso è possibile ordinare Little Sophia al prezzo non proibitivo di 149 dollari. Le prime spedizioni sono previste per il mese di dicembre del 2019. Chissà che la simpatica robottina non sia che la prima di tante altre bambole di dotate di intelligenza artificiale con cui giocheranno i bambini di domani. Per ora l’aspetto davvero innovativo dell’iniziativa è che sia rivolta in modo specifico al pubblico femminile, proprio per aiutare le bambine ad implementare quelle skills che potrebbero permettere loro di fare la differenza nel mondo di domani. Visto il grande successo che ha avuto l’iniziativa di Hanson Robotics possiamo aspettarci grandi cose dalle tante nuove amiche che a breve avrà Little Sophia.

Read More

Come cambieranno i linguaggi di programmazione

Posted by on Mar 20, 2019 in Uncategorized | Commenti disabilitati su Come cambieranno i linguaggi di programmazione

Se un tempo le nuove frontiere per l’uomo erano fisiche, al giorno d’oggi invece sono diventate sempre più virtuali. È il mondo dell’informatica che cambia molto rapidamente, e il compito dell’uomo è di capire in che modo certi schemi ormai fissati debbano invece essere mutati al fine di andare incontro sempre meglio alle nuove esigenze che si stanno creando. Questo significa che nulla di ciò che è dato in ambito tecnologico è immutabile e fissato per sempre. Quindi, se un linguaggio umano non subisce che lente trasformazioni nel tempo, ma sostanzialmente resta sempre uguale a se stesso per lo meno nei presupposti sui quali è stato creato, lo stesso non si può dire dei linguaggi di programmazione. Non è semplicisticamente il fatto che ogni giorno vengono inventati dei nuovi linguaggi di programmazione in grado di rispondere ad esigenze specifiche. Il punto è che potrebbe essere rimesso in discussione lo stesso presupposto sul quale fino ad ora sono stati elaborati tutti i linguaggi attualmente esistenti. Il sasso in tal senso è stato lanciato, ed ora sarà necessario lavorarci sopra per rivoluzionare alla base il sistema informatico. E a dare il primo input per questo cambiamento è stato proprio un italiano, Ugo dal Logo. Il curriculum di Ugo dal Logo è decisamente di tutto rispetto. Attualmente è professore associato di Informatica al Dipartimento di Informatica – Scienza e Ingegneria dell’Università di Bologna. Dopo la laurea ha conseguito il dottorato ed ha approfondito la sua formazione all’estero, presso la Marie Curie Fellow dell’Università “Denis-Diderot” di Parigi. I suoi lavori gli sono valsi importanti riconoscimenti: ha vinto il premio per la migliore tesi di dottorato in informatica teorica nel 2006, il premio Kleene quello stesso anno e infine il premio per il miglior giovane ricercatore italiano in informatica teorica nel 2015. Ma il riconoscimento più importante che è riuscito a guadagnarsi arriva dall’ERC (European Research Council) il quale gli ha assegnato il “Consolidator Grant”, una sorta di borsa di studio del valore di ben un milione di euro. Questi soldi gli dovranno servire per portare avanti il progetto di ricerca per il quale è stato premiato e che si chiama DIAPASoN (Differential Program Semantics). Il progetto DIAPASoN si prefigge un obiettivo molto ambizioso, che è quello sopra esposto. Dal Logo vuole rifondare dalla base i linguaggi di programmazione, mettendo in discussione i presupposti sui quali sono stati elaborati. Secondo lo studioso questo processo viene reso necessario dalle due sfide più importanti che l’informatica propone per i prossimi decenni: l’intelligenza artificiale e gli strumenti di crittografia. I linguaggi di programmazione che utilizziamo attualmente sono basati sul criterio dell’equivalenza, che dice che solo programmi corrispondenti possono essere sostituiti tra di loro. Lo scopo di DIAPASoN è invece quello di dimostrare che si possono creare dei linguaggi basati sul criterio di differenza. Questo nuovo approccio potrebbe essere utile soprattutto nel campo delle intelligenze artificiali, le quali non sono perfette o infallibili. Quando le utilizziamo, ha spiegato dal Logo, sappiamo che non ci daranno un risultato impeccabile, ma comunque in linea con le nostre esigenze. Lo scopo dunque è capire in che modo si possano creare dei nuovi sistemi informatici che sostituiscano la differenza all’equivalenza, diventando così più malleabili e più aderenti alle nuove forme di realtà virtuale che ci aspettano. Il ricercatore italiano ora potrà portare avanti i suoi studi grazie al sostegno della ERC.

Read More

Gli errori che fai dipendono dal linguaggio di programmazione che usi?

Posted by on Mar 20, 2019 in Uncategorized | Commenti disabilitati su Gli errori che fai dipendono dal linguaggio di programmazione che usi?

C’è un dilemma che affligge i tecnici informatici praticamente dagli albori di questa scienza. La domanda che ci si pone e alla quale, ad oggi, non è ancora stata trovata una risposta sufficientemente esaustiva, riguarda quanto un singolo linguaggio di programmazione possa indurre a commettere errori. Ovvero: statisticamente parlando, ci sono linguaggi che più di altri inducono a creare bug? La risposta, secondo alcuni eminenti studi, sembrerebbe essere “sì”, ma ci sono personaggi che mettono in discussione questa conclusione. Vediamo prima quali sono le prove a “favore”. L’ultima prova in ordine di tempo è quella data da una ricerca condotta da Boffins, uno studio di debunk. In questo documento si dimostra che ci sono dei linguaggi, vale a dire C, PHP, JavaScript, ma anche altri, che rendono più facile fare errori nello scrivere un codice rispetto ad altri. Le prove che vengono addotte per dimostrare questo assunto non sembrano però del tutto convincenti: si tratta più che altro di qualche indizio sparso che, come si direbbe in un’indagine di polizia, non costituisce una prova. In passato anche altri importanti enti hanno cercato di risolvere la vexata quaestio. Nel 2014 la Foundations of Software Engineering pubblicò un rapporto intitolato “Uno studio su larga scala dei linguaggi di programmazione e della qualità del codice in Github”. Basandosi sull’esperienza maturata dai tecnici informatici della UC Davis nel documento si afferma che C, C++, Objective-C, JavaScript, PHP e Python sono i linguaggi di programmazione che spingono chi li usa a fare il maggior numero di errori nel codice che si scrive, e di conseguenza a creare il maggior numero di bug. Da ultimo arriva l’articolo pubblicato da AirXiv in tempi recenti, il cui titolo è “Impatto dei linguaggi di programmazione sulla qualità del codice” ed opera un’attenta rilettura della ricerca del 2014. Anche in questo caso si conclude che lo strumento che viene adoperato per redigere un codice non è ininfluente nella sua correttezza finale. Di nuovo, però, non vengono portate prove convincenti. L’unico vero dato statistico riportato riguarda C++, linguaggio con il quale sembra si verifichi la maggioranza de bug esistenti. Si capisce però come, ancora una volta, un indizio non possa costituire una prova. Passiamo dunque a considerare invece la posizione di chi assolve da ogni colpa i linguaggi di programmazione, dicendo che la possibilità di creare errori è praticamente equivalente quale che sia lo strumento che si adopera. Questa, ad esempio, è la tesi di Emery Berger, professore di informatica all’Università del Massachusetts Amherst. Berger, riferendosi proprio agli studi di cui abbiamo parlato sopra, sostiene che, se i dati riportati sono inconfutabili e corretti, ciò non vuol dire che possano essere letti in modo univoco. Anzi, accade spesso che si tenda a tirare fuori dai dati quello che si desidera che dicano. In una parola, non si può tenere conto solo di un singolo e freddo dato, ma bisognerebbe fare una ricerca incrociata che tenga in considerazione anche altri fattori. Ad esempio, quanto incide nella correttezza di scrittura di un codice la formazione dell’ingegnere che lo ha redatto? Ecco dunque che non appare giusto “colpevolizzare” un linguaggio di programmazione se nel prodotto che è stato creato usandolo si trovano dei bug: i motivi potrebbero essere molteplici e non direttamente imputabili allo strumento in sé.

Read More

I linguaggi di programmazione insegnati ai bambini attraverso l’uso dei trenini

Posted by on Feb 11, 2019 in Uncategorized | Commenti disabilitati su I linguaggi di programmazione insegnati ai bambini attraverso l’uso dei trenini

Ormai è appurato il fatto come l’insegnamento dei linguaggi di programmazione sia di fondamentale importanza anche in età prescolare, o comunque in età infantile. Secondo Google in futuro conoscere i linguaggi di programmazione sarà importante tanto quanto apprendere l’alfabeto. Senza voler arrivare ad affermare simili estremi, certo è che l’informatica nel futuro avrà un peso ancora maggiore di quanto non abbia oggi. Per un bambino è dunque importante cominciare a capire fin dai primissimi anni di età quello con cui avrà a che fare, anche e soprattutto lavorativamente, per il resto della sua vita. Ecco perché studiosi e ricercatori stanno cercando di mettere a punto dei sistemi di insegnamento che usino il gioco per rendere più facile l’apprendimento di concetti piuttosto complessi anche ad un bambino di pochi anni d’età. Di recente è stata pubblicata una ricerca condotta dal dipartimento di psicologia dell’Università di Torino, all’interno della quale è stato dimostrato che si possono insegnare i rudimenti della programmazione informatica ai bambini anche senza dover usare direttamente i linguaggi di programmazione. In che modo? Semplicemente giocando con dei trenini. L’articolo in cui sono stati illustrati i risultati degli esperimenti condotti con la collaborazione di un gruppo di bambini di quinta elementare è stato pubblicato dalla Psychonomic Society, società internazionale di grande rilievo che riunisce gli psicologi cognitivi. Questi ultimi, dunque, hanno dimostrato di tenere in gran conto i risultati raggiunti da Monica Bucciarelli, la ricercatrice che ha fatto da capofila al progetto. Alla ricerca, oltre all’Università di Torino, hanno partecipato anche il Dipartimento di Psicologia dell’Università di Studi Sociali di Varsavia, il Naval Research Lab di Washington e il Dipartimento di Psicologia delle Università di Princeton e di New York. I soggetti che sono stati presi in esame, come detto, erano dei bambini di quinta elementare che non avevano mai avuto alcun tipo di rapporto con la programmazione informatica. I piccoli sono stati messi nella condizione di poter giocare con dei trenini divisi in vagoni. Ogni vagone portava impressa sopra una lettera dell’alfabeto. Si è così dimostrato come i bambini fossero in grado di comprendere degli algoritmi anche molto complessi semplicemente giocando con questi trenini. I ricercatori sottoponevano loro dei quesiti che i bimbi dimostravano di essere in grado di risolvere pur non avendo nessuna conoscenza dei linguaggi di programmazione. Le deduzioni a cui lo studio ha portato i ricercatori sono fondamentalmente tre. La prima è che non tutti i soggetti hanno la stessa predisposizione alla programmazione informatica. Sono infatti state individuate delle differenze tra soggetto e soggetto, anche se non si sono rilevate differenze significative tra maschi e femmine. Il secondo fattore che è apparso in maniera evidente è che i bambini sono in grado di risolvere in modo istintivo algoritmi ricorsivi e non ricorsivi, sebbene i primi siano molto più complessi dei secondi. Infine si è capito che fin da piccoli si ricorre a delle simulazioni mentali per prevedere ciò che accadrà, in questo caso specifico per prevedere le mosse dei trenini. La conclusione a cui sono giunti gli studiosi è che si possono insegnare i linguaggi di programmazione anche senza dover ricorrere al computer, ovvero senza aumentare il numero di ore trascorse al pc da un bambino. Inoltre, questo tipo di insegnamento potrebbe essere utile per capire fin dall’età infantile se un soggetto è, o meno, predisposto alla programmazione informatica.

Read More

Un manuale per imparare a programmare in Php

Posted by on Feb 11, 2019 in Uncategorized | Commenti disabilitati su Un manuale per imparare a programmare in Php

Quando si decide di approcciarsi ai linguaggi di programmazione per provare a capire “dietro le quinte” come funzionano i programmi del computer, potrebbe essere utile un avvicinamento non solo fai da te. Anche se la pratica è sempre la migliore insegnante, uno studio anche teorico potrebbe essere fondamentale per avere delle basi più solide da cui partire e non avanzare completamente alla cieca. Per questo non bisogna trascurare l’importanza dei manuali di programmazione, specie quelli che cercano di spiegare con parole ed esempi semplici il modo di utilizzare i più comuni linguaggi di programmazione. In Italia ci sono due autori molto prolifici in tal senso, che negli scorsi mesi hanno dato alla luce tre libri sui tre maggiori linguaggi di programmazione con cui si potrebbe decidere di confrontarsi: JavaScript, Phyton e infine Php. Gli autori sono due ingegneri informatici prestati alla scrittura, i quali hanno spiegato la difficoltà incontrata nel doversi confrontare con un mezzo di comunicazione così diverso rispetto a quello con cui lavorano, ovvero la parola! Ma anche questa, hanno detto, è stata una sfida avvincente, che si è a sua volta avvalsa dell’ausilio deli linguaggi di programmazione. Il nome dei due autori è Maurizio Boscaini e Massimiliano “Max” Masetti, i quali hanno spiegato cosa li ha spinti a scrivere una serie di manuali dedicati a bambini “dai 13 anni in su”. Nella loro opinione, i linguaggi di programmazione sono accessibili a tutti: ovviamente per i più piccoli ci sono altri strumenti, ma dai 13 ai novant’anni, e oltre, non c’è nulla che impedisca ad una persona di prendere confidenza con il linguaggio informatico. Questo perché il linguaggio di programmazione, proseguono i due autori, è una sorta di “palestra” per la mente. Non esiste il bravo programmatore in assoluto: ognuno apprende strada facendo, e soprattutto sbagliando. Il concetto base da capire, secondo Boscaini e Masetti, è che l’unico modo per creare qualcosa di “perfetto” usando i linguaggi di programmazione è provare, sbagliare, correggere gli errori, magari sbagliare ancora, fino a trovare la strada più giusta. Quindi si tratta di un esercizio continuo, che però ovviamente prende le sue prime mosse da una conoscenza di base che è quella che i due autori impartiscono tramite i loro manuali. Nello specifico, quello relativo al linguaggio Php si intitola “Imparare a programmare con Php” e affronta le problematiche principali che si possono incontrare usando questo linguaggio. Il tipo di metodologia suggerita segue due strade. Da una parte c’è l’approccio di tipo “pratico”, che consiste nel porsi un obiettivo e cercare di risolverlo usando le regole descritte. Poi c’è quello teorico, che consiste nel riflettere su quanto letto, e non passare solo delle ore al computer, atteggiamento che, secondo gli autori, è proprio degli “smanettoni” e non dei programmatori professionisti. Entrando nello specifico del linguaggio Php, i due autori hanno cercato di fare chiarezza al suo proposito. Il Php è un linguaggio spesso considerato confusionario, che non è quindi in grado di scrivere codici chiari e cristallini. Ma, come per ogni altro strumento, il segreto sta nel saperlo usare davvero bene e l’unico modo per scoprirne i molti segreti è usarlo. Quale versione? Difficile rispondere, dicono gli autori. La tecnologia va sempre avanti e le nuove versioni di un programma, o di un linguaggio, cercano di dare nuove risposte a nuove domande. Non sempre però le cose vanno come desiderato. Ad esempio, la versione 6 del Php è stata fallimentare, mentre l’ultima, la 7, appare decisamente migliore. Questa, e molte altre cose sul linguaggio Php, vengono svelate nel manuale “Imparare a programmare con Php”.

Read More

CMS Software (IT)

Posted by on Nov 26, 2018 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

Il coding arriva nelle scuole

Posted by on Nov 23, 2018 in Uncategorized | Commenti disabilitati su Il coding arriva nelle scuole

Che il mondo di domani sarà dominato dalle macchine e dall’informatica è molto più di una semplice supposizione: la possiamo definire ormai una certezza. Se osserviamo infatti il vertiginoso sviluppo che le nuove tecnologie hanno avuto negli ultimi anni, cambiando in modo anche radicale il nostro modo di svolgere tante piccole operazioni quotidiane, si capisce come i nostri figli vivranno una realtà sempre più “virtuale” (anche se, speriamo, non di meno anche “reale”). Quello che è certo è che per loro è di fondamentale importanza, al fine di poter essere padroni del loro destino e del loro futuro, capire i processi che animano le macchine e i dispositivi che hanno davanti. Per ora non si tratta che di un gioco, ma un domani potrebbe trattarsi di sopravvivenza, nei termini della necessità di trovare lavoro e sostentamento. Ecco perché materie come il “coding” e il “pensiero computazionale” stanno trovando sempre più spazio anche all’interno delle scuole primarie. Come è noto, la mente umana è assai più ricettiva in giovane età: imprimere dei concetti che potrebbero sembrare complessi, ma che in realtà non lo sono, a delle giovani menti significa facilitare il loro compito un domani. L’aspetto più innovativo di questo processo è che il coding non si può definire solo una materia come le altre. Per capirci, non è che apprendendo il coding ci si limita a studiare i linguaggi di programmazione e quindi il modo in cui funziona un personal computer o un altro dispositivo tecnologico. Il coding lo possiamo definire invece un modo di ragionare. Insegnando al bambino il pensiero computazionale gli si insegna anche a risolvere i problemi che gli vengono proposti secondo un sistema codificato e razionale. Questo può essergli di aiuto anche nell’apprendimento di altre materie, e fornirgli più in generale una metodologia di approccio a tutti gli ostacoli che si troverà davanti nel corso della sua esistenza. Se poi si pensa che il linguaggio informatico sia qualcosa di troppo complesso per poter essere trasmesso ad un bambino, basta confrontarsi con i metodi che più comunemente vengono usati a livello didattico per capire che invece non c’è nulla che sia più vicino al linguaggio del bambino stesso. Gli strumenti che sono stati messi a punto per comunicare la programmazione informatica ai più piccoli hanno infatti tutti l’aspetto del gioco. Si tratta di un tipo di apprendimento che viene detto “a blocchi” e che consente al piccolo di prendere dimestichezza con le metodologie e le dinamiche più comuni dei linguaggi di programmazione senza nemmeno rendersi conto che sta scrivendo un software. La realizzazione del programma o dell’app, infatti, non avviene usando i linguaggi di programmazione, ma mettendo insieme dei blocchetti che però si possono incastrare solo rispettando delle regole ben precise. L’insegnamento del coding ai bambini arriva anche alla programmazione robotica. Si trovano infatti in commercio dei kit che consentono al bambino di imparare ad assemblare un robot, o anche un semplice computer, per poi programmarlo e insegnargli a fare le operazioni desiderate. Il coding a scuola è infine un mezzo che insegnanti e discenti hanno per interagire tra di loro molto di più di quanto non si faccia con le materie più tradizionali. Il coding può infatti riformare dalla base il sistema stesso di insegnamento, rendendolo più ludico e interattivo e quindi più efficace e immediato.

Read More

Pin It on Pinterest

Share This