Il rapporto tra Apple e la comunità open source è piuttosto profondo. Pur non essendo apprezzata da molti sostenitori di tale modello di sviluppo per la sua tendenza a soluzioni proprietarie, l'azienda di Cupertino sviluppa attivamente soluzioni open come CUPS e il kernel XNU utilizzato da OS X (e iOS, ma il codice sorgente della variante per quest'ultimo non è pubblicamente disponibile); non si pone molti problemi inoltre nell'adottare tecnologie terze qualora queste le portino benefici. È il caso di Apache Mesos, ora al cuore della terza generazione di Siri, come riportato sul blog di Mesosphere, società operante nel settore.

applesirimesos

L'annuncio è stato dato nel corso di una presentazione per sviluppatori tenutasi negli uffici Apple. Prima di tutto, occorre chiarire (o perlomeno provarci senza entrare troppo nel tecnico, che onestamente metterebbe in difficoltà anche chi vi scrive) cosa è effettivamente Mesos: si tratta di un kernel per cosiddetti sistemi distribuiti, di cui si compongono singoli computer tra di loro collegati in rete; l'insieme è definito cluster. Il loro scopo è di fatto l'ingrandimento su una più vasta scala dello scopo primario di ogni computer, ovvero l'esecuzione di specifici compiti. Un compito assegnato a un cluster viene a sua volta suddiviso in una serie di compiti più piccoli che Mesos assegna ai vari computer che compongono il gruppo, gestendo tempi e priorità esecutive attraverso uno scheduler.

L'implementazione di Mesos da parte di Apple prevede delle modifiche rispetto al formato originale, soprattutto per quel che concerne lo scheduler; si tratta di variazioni per il solo utilizzo interno, pertanto difficilmente sarà reso disponibile il codice sorgente (cosa permessa dalla licenza Apache alla base del progetto originale, contrariamente alla GPL che richiede il mantenimento della medesima, e dunque la pubblicazione del codice, per le opere derivate). Il nome scelto è J.A.R.V.I.S., acronimo per Just A Rather Very Intelligent Scheduler (solo uno scheduler alquanto molto intelligente), omaggio all'assistente di Tony Stark in Iron Man. Viene utilizzato nella terza generazione di Siri per tutti i servizi ad essa correlati, sulla base delle richieste dell'utente. Un lavoro che ha occupato per diversi anni gli ingegneri software Apple, prima di poter implementare attivamente l'accoppiata Mesos+J.A.R.V.I.S. su un cluster costituito da svariate migliaia di computer. Il risultato ottenuto è una maggiore flessibilità per Siri lato sviluppatore, consentendo una più rapida implementazione di nuovi servizi, e una minore latenza lato utente tra richiesta e risposta.

Tutta roba facente parte del 'dietro le quinte', che non vedremo mai annunciata in un keynote né direttamente visibile nell'interfaccia utente, al più la potremo avvertire nelle prestazioni e nell'affidabilità di Siri. Ciò non la rende meno importante, anzi, visto il ruolo fondamentale ricoperto. In futuro l'assistente virtuale potrà fare ancora di più rispetto ad oggi, grazie al contributo di Apache Mesos. La speranza principale da parte nostra è che il futuro riservi ulteriori collaborazioni proficue da poter approfondire, anche con una maggiore reciprocità di benefici tra Apple e l'open source.