il mio Lavoro

In questa pagina ho deciso di descrivere un pò chi sono, che lavoro faccio, e i miei lavori più interessanti.

chi sono e cosa faccio?

cosa mi piace fare?

Curriculum Vitae

sito web della mia società (collegamento esterno)

il mio profilo su Linkedin (collegamento esterno)

il mio profilo su xing.com (collegamento esterno)

i miei maggiori (e migliori!) progetti

Play-On Multimedia Entertainment System

ELF Integrated Scripting System


chi sono e cosa faccio?

Mi chiamo Salvatore Carotenuto, sono originario della provincia di Napoli, ma attualmente vivo a Giffoni Valle Piana (SA), non per lavoro, ma assolutamente per piacere.

Posso definirmi programmatore, analista e progettista di software, specialista di sistemi, firmwarista, e infine, progettista e sviluppatore di infrastrutture software. Il fatto è che nella mia vita professionale ho avuto a che fare con tante di quelle tecnologie, problematiche, e posizioni di responsabilità diverse, che oggigiorno, francamente, non so proprio come potrei definirmi, con precisione.

In pratica da quando ho a che fare con i computer (avevo 10 anni, quando ho cominciato, ed era il lontano 1986), non ricordo di aver mai fatto nulla di diverso, in vita mia. In pratica sia per lavoro che per passione mi sono trovato a programmare tantissimi sistemi diversi, partendo dagli home computer fino ad arrivare ai server, passando per dispositivi mobili, embedded, industriali, microcontrollori… e tutto questo (per forza di cose, ovviamente) usando tantissimi linguaggi di programmazione diversi.

Fino al 2003 ho lavorato come consulente e come dipendente a tempo determinato e indeterminato presso varie aziende del settore informatico, occupandomi principalmente di programmazione server side orientata al web, di grossi software gestionali, e avendo a che fare spesso con grossi database.

Ma nel frattempo, per hobby, per fatti miei ho sempre smanettato con altro, e su sistemi operativi diversi da quelli che ero costretto ad usare per lavoro (cioè la maledetta, sciagurata serie di sistemi microsoft, fin dal 95…). Tra tutti questi miei interessi “collaterali” c’è sempre stata una certa curiosità verso il mondo dei videogiochi, non dal punto di vista del giocatore, ma con uno spirito puramente “tecnico”, per carpirne le tecniche e i segreti. E’ stato infatti a causa di quest’hobby che sono venuto in contatto con varie persone, accomunate dalla stessa passione, con le quali abbiamo smanettato parecchio, ma sempre restando nell’ambito dell’hobby. 😉

Poi nel 2003, quando sentimmo di saperci fare abbastanza, io lasciai un lavoro a tempo indeterminato che tecnicamente non mi stimolava abbastanza, e in quattro mettemmo su un’impresa tutta nostra: Emthesis Development.

In Emthesis abbiamo avuto modo di sviluppare e toccare con mano tecnologie interessantissime non soltanto nei settori del multimedia e dell’intrattenimento digitale, ma anche strettamente legate al mondo GNU/Linux e all’ambito del coin-op entertainment.

Nell’estate del 2008, infine, Emthesis Development ha esaurito il suo ciclo vitale. Di comune accordo, e come succede alle rock band, abbiamo deciso di sciogliere la società, e proseguire ognuno per la propria carriera da solista.

Dopo un anno trascorso a lavorare come freelance, a marzo del 2010, insieme ad un socio, decisi di fondare StartUp Solutions, società nella quale lavoro attualmente.


cosa mi piace fare?

Principalmente mi piace progettare e sviluppare software, e, in buona sostanza, far fare alle macchine quello che mi pare. Una delle mie passioni principali consiste nello studio di nuove tecnologie applicate alla generazione di energie alternative, e all’uso di nuovi materiali e tecnologie per il risparmio energetico. Uno dei miei sogni più grandi? Una casa energeticamente autosufficiente, completamente automatizzata da sistemi domotici. Mi diletto inoltre con esperimenti per la generazione di idrogeno monoatomico e gas di Brown mediante separazione elettrolitica dell’acqua.

Ho una passione sfegatata per l’hacking. Mi raccomando, non fatevi trarre in inganno dal termine: non intendo quelle fesserie da film in cui il ragazzino furbetto armato di computerino scardina il sistema di sicurezza del Pentagono! No, niente di tutto questo! A me piace riprogrammare le cose, darle nuova vita, assemblare nuove cose partendo da pezzi di altre cose, darle la possibilità di svolgere compiti inizialmente non previsti dai progettisti originari. Se non avete idea di cosa io stia dicendo, cercate con google o fatevi un giro su siti tipo HackADay.com…

Per impostazione mentale sono portato a realizzare sistemi dove sia richiesta sicurezza, precisione ed efficienza. Come effetto collaterale di questo, sono un patito di domotica e di robotica.

Devo aggiungere altro? 😉


i miei maggiori (e migliori!) progetti
Play-On Multimedia Entertainment System

Play-On è un sistema multimediale progettato per l’intrattenimento. La sua collocazione principale lo vede in sala giochi (infatti dispone di caratteristiche pensate espressamente per il coin-op, come l’interfacciamento a gettoniere e pulsantiere), ma non si limita solo a quello: con Play-On possono essere sviluppati chioschi informativi, sistemi vari per intrattenimento e presentazioni multimediali, e qualsiasi altra soluzione che necessiti la gestione di grafica, sonoro e interazione con l’utente.

Play-On è stata realizzata da Emthesis Development (la mia società), in collaborazione con GennaGroup, azienda italiana impegnata nel settore Ricambistica e Macchine da Intrattenimento.

Play-On si basa su hardware derivante dal mercato PC, ed offre prestazioni sia grafiche che computazionali pari a quelle offerte da un PC di fascia medio-alta (CPU AMD Athlon 64 Dual Core, GPU NVIDIA, Chipset nForce IV, e tanta memoria, sia di sistema che video).

La sua principale peculiarità sta nel fatto di eseguire applicazioni esterne, facilmente sostituibili dall’utente (senza nessuna attrezzatura nè centri assistenza), visto che esse vengono distribuite su normalissime (e ormai diffusissime) pendrive USB, ognuna abbinata ad una smartcard crittografica per la protezione anticopia. L’elevatissimo grado di sicurezza offerto dal sistema antipirateria, sviluppato interamente dalla nostra azienda, ci permette di proporre l'”ambiente operativo Play-On” anche come base per progetti di altre aziende, in ambito B2B.

Il sistema operativo è un’apposita microdistribuzione Linux derivata da Slackware 12.0 (realizzata personalmente 😉 ), ed ha la particolarità di fare il boot da memoria flash (posizionata internamente al box), e di essere eseguito direttamente dalla RAM per offrire il massimo delle prestazioni I/O. Play-On infatti non è dotata di dischi fissi (componenti notoriamente poco inclini alle sollecitazioni meccaniche), i quali sono stati sostituiti da memorie flash allo stato solido.

Stand GennaGroup ad ATEI2008 (London) durante l'allestimento, con le Play-On nei cabinati da sala giochi in bella mostra
Stand GennaGroup ad ATEI2008 (Londra) durante l’allestimento, con le Play-On nei cabinati da sala giochi in primo piano. Il gioco che sta girando su una delle macchine è TunnelRacer, sempre realizzato da noi

In Play-On sono state integrate tutte le più sicure tecnologie di protezione crittografica dei dati. Ogni modello è dotato di componenti hardware integrate (progettate appositamente) le quali hanno il compito di decrittografare in real time il sistema operativo della macchina. Ogni singolo modello è protetto con chiavi ed algoritmi crittografici diversi, rendendo in questo modo vano ogni tentativo di manomissione su larga scala. Ogni applicazione esterna, inoltre, viene attivata grazie ad una smartcard crittografica associata solo ed esclusivamente a quella singola copia di quella determinata applicazione. In questo modo, anche ammettendo, per assurdo, che qualcuno riesca a decrittografare una singola copia di un gioco, non potrebbe farlo per tutti gli altri, visto che per ognuno di essi cambiano i criteri crittografici, i quali vengono applicati randomicamente in fase di produzione. (Perdonatemi i tecnicismi, ma non posso nascondere tutta la mia soddisfazione: ai sistemi di sicurezza di Play-On ci ho lavorato per almeno sei mesi)

Di Play-On posso dire che (almeno per il momento) è il progetto più grosso che abbia mai realizzato. Praticamente ho seguito personalmente quasi tutte le fasi di progettazione e realizzazione. In particolare mi sono occupato (come responsabile tecnico, progettista e come esecutore materiale) di:

  • individuazione dell’hardware di base;
  • primi schizzi e specifiche del design del box in metallo;
  • realizzazione/ottimizzazione/adattamento della microdistribuzione linux “live” (sistema operativo);
  • ideazione e realizzazione dei prototipi dei dispositivi integrati per l’interfacciamento e per le protezioni crittografiche;
  • programmazione del firmware (e del software lato host per l’interfacciamento) per i dispositivi suddetti;
  • ideazione del sistema di caricamento ed esecuzione delle applicazioni da supporti usb esterni;
  • realizzazione delle applicazioni (scritte in ELF, descritto in seguito) per il primo avvio della macchina (Bootstrap), per l’avvio dell’ambiente Play-On e il caricamento delle applicazioni esterne (Bootloader) e per il pannello di controllo delle impostazioni e informazioni sull’hardware (Settings Menu);
  • ideazione e realizzazione di tutte le procedure di sicurezza;

Un fondamentale aiuto mi è stato dato dai miei soci, i quali mi hanno seguito nella parte iniziale della realizzazione del sistema e in tutta la lavorazione della grafica e dei suoni necessari (dandomi inoltre un gran supporto morale!). Ringrazio inoltre coloro che ci hanno aiutato nella realizzazione dell’hardware proprietario, e nella integrazione delle Smartcard, e infine GennaGroup per tutto il supporto commerciale, morale ed economico.

Sito ufficiale: http://www.play-on.it
(Edit 29/08/2008: il sito di play-on è temporaneamente chiuso per rifacimento)

(Edit 16/10/2012: per cause imputabili ad una delle società partner, il progetto play-on è stato abbandonato)

Video dell’evento OpenMind 2008, tenutosi a Villa Bruno (San Giorgio a Cremano, NA) nel maggio 2008, al quale abbiamo partecipato anche noi di PlayOn:


ELF – Sistema Integrato di Scripting per Multimedia e Videogiochi

ELF logo

ELF è un ambiente di sviluppo per applicazioni multimediali. Unisce la comodità di sviluppo propria dei sistemi di scripting, alle performance della programmazione in C++. In pratica è costituito da un ambiente di runtime modulare, costruito attorno ad un interprete Lua. Con poche e semplici righe di codice (in linguaggio lua) si può decidere di estendere le funzionalità del modulo base (il kernel), caricando in tempo reale delle apposite librerie di comandi (dette moduli). In questo modo è possibile, in tempi brevissimi, sviluppare applicazioni multimediali (caricando i moduli necessari per la gestione di grafica 3D, grafica 2D, sonoro, ecc.), utilizzando funzionalità stabili, ben collaudate e a prova di errore.

I due giochi visibili nei video sopra, TunnelRacer e LuckyTurkey, sono stati realizzati utilizzando ELF.

Sito ufficiale: http://www.emthesis.eu/elf

Nota: dalle ceneri del progetto ELF è nato un fork, chiamato EOS, completamente opensource, sempre sviluppato dal sottoscritto. Purtroppo, però, per mancanza di tempo libero, il progetto non è attualmente sviluppato. Chiunque fosse interessato ad usarlo, e/o dare una mano nello sviluppo, può consultare il sito http://eos-scripting.sourceforge.net/, oppure contattarmi direttamente via mail.

Curiosità:

  • ELF è nato “incrociando” (e ammirando) la potenza dello scripting Lua integrato nell’ambiente CryEngine (di Crytek), e le nozioni sugli ambienti di scripting fornitemi da Mike McShaffry nel suo Game Coding Complete, 2nd Edition“;
  • all’inizio ELF doveva servire unicamente come ambiente di test e di prototipazione rapida per videogiochi, ma appena stabilizzata la prima beta, abbiamo notato che le prestazioni ottenibili andavano ben oltre le nostre aspettative;
  • ho progettato e sviluppato la prima versione beta di ELF nel settembre 2005. Prima che la Microsoft annunciasse ufficialmente l’uscita di XNA (che in verità è molto simile ad ELF, ma è basato su C#).
  • alla realizzazione di ELF hanno partecipato i miei soci:
    • Alessandro Rasulo: il quale si è occupato di darmi inizialmente una mano nella progettazione dell’ambiente, e di sviluppare i moduli per la gestione della grafica 2D e dell’audio posizionale (nonché di una versione alpha del modulo per la gestione della fisica basato su libreria Newton);
    • Marco Licenziato: il quale ha fornito tutto il know how su come gestire grafica 2D e 3D, e che ha inoltre trasformato un mio orribile schizzo nel bellissimo logo che vedete qui sopra :D;

4 thoughts on “il mio Lavoro

  1. e si… il sito non “sembra” essere down… “lo è”. Emthesis si è sciolta, ma non è “scomparsa”: semplicemente ci stiamo evolvendo in qualcosa di diverso 😉

  2. Salve,

    sono un patito di tecnologie da pallicare alla musica ma, come leggevo nel post che mi ha preceduto, non riesco ad accedere al sito del emthesis. Posso avere qualche info supplementare su come\dove reperire informazioni aggiuntive.

    Grazie per la collaborazione.

    Cordiali saluti.

    Antonio Grisoni

  3. Ciao Antonio. Si… ribadisco che il sito emthesis non è più online, in quanto Emthesis non esiste più come società ;(
    Che intendi per “tecnologie da applicare alla musica”? Di che tipo di informazioni hai bisogno?

    Comunque, se può interessarti, attualmente io e Alex Rasulo (anche egli ex emthesis) stiamo lavorando (come hobby e nel tempo libero) al progetto opensource EOS: in pratica la versione riveduta, corretta, potenziata, e soprattutto opensource del nostro ambiente di scripting per videogiochi e multimedia “ELF”. Il progetto lo trovi qui: http://eos-scripting.sourceforge.net/
    Il sito è ancora in allestimento (purtroppo ci lavoro nel tempo libero, e ne ho poco 😦 ). Se hai delle impressioni o giudizi su come migliorare il sito, ti pregherei di comunicarmele. Nel caso, poi, volessi collaborare al progetto, sei il benvenuto 🙂

Rispondi

Inserisci i tuoi dati qui sotto o clicca su un'icona per effettuare l'accesso:

Logo WordPress.com

Stai commentando usando il tuo account WordPress.com. Chiudi sessione / Modifica )

Foto Twitter

Stai commentando usando il tuo account Twitter. Chiudi sessione / Modifica )

Foto di Facebook

Stai commentando usando il tuo account Facebook. Chiudi sessione / Modifica )

Google+ photo

Stai commentando usando il tuo account Google+. Chiudi sessione / Modifica )

Connessione a %s...