lug
01

Web semantico: classi OWL e OOP

 

È un errore comune quello di confondere il concetto di classe nella ad oggetti (OOP) con il suo analogo nella descrizione delle risorse (in OWL). Vi sono infatti delle sottili differenze che bisogna tenere presenti quando ci si accosta per la prima volta alla creazione di strutture semantiche che facciano uso di classi e di istanze di classe.

Nella programmazione ad oggetti tutte le proprietà e le caratteristiche della classe discendono dal tipo stesso della classe, dunque il tipo di un oggetto non dipenderà dalle sue caratteristiche, bensì sono proprio gli attributi che dipenderanno dal tipo di classe. In OWL, invece, il tipo di un oggetto non indicherà necessariamente la sua struttura; piuttosto gli individui OWL potranno avere una data struttura indipendentemente dai loro tipi. In pratica questo approccio fa sì che un’entità che appartenga ad una data classe OWL condividerà con gli altri appartenenti alla medesima classe caratteristiche comuni.

La differenza non si coglie immediatamente, ma risulta una caratteristica importante per il funzionamento stesso delle classi semantiche.

Popularity: unranked [?]



Puoi visualizzare il post originale qui.

mag
29

Meteor JS 14/06 a Torino, webapp in realtime e Easycoins

 

Popularity: unranked [?]



Puoi visualizzare il post originale qui.

mar
25

Django: Python web development

 

Popularity: unranked [?]



Puoi visualizzare il post originale qui.

nov
13

[EN] dig a hole in QEMU: how to execute code on the host from VMs (Part 1)

 

Popularity: unranked [?]



Puoi visualizzare il post originale qui.

set
05

GitHub introduce le Commit Status API per gli aggiornamenti al codice

 

Logo di GitHubCommit Status API è un aggiornamento delle Application Programming Interface (API) di GitHub che permette d’associare una tipologia e una breve descrizione al codice inviato ai repository. In termini più semplici, è possibile determinare immediatamente se un commit è sicuro oppure potrebbe danneggiare i sorgenti: gli stati assegnati assumono un colore verde o giallo, a seconda del livello di sicurezza degli aggiornamenti. Una risposta intelligente ai dubbi manifestati da Scott Remnant sulla duttilità di Git col codice “sporco”.

Già implementate internamente da GitHub negli ultimi mesi, le Commit Status API sono state integrate in Travis CI e Sprint.ly — due piattaforme per la gestione di progetti collaborativi. In un certo senso, le nuove API sono una forma manuale d’avviso sulla falsariga di Buildbot: quest’ultimo avverte in automatico del fallimento di una compilazione, ma la risorsa di GitHub richiede che il messaggio sia inserito da chi effettua un commit. Inutile sottolineare che la novità non riguarda il Distributed Version Control System (DVCS).

Insomma, è improbabile un inserimento delle Commit Status API direttamente in Git o su piattaforme di terze parti che non s’appoggino a GitHub. Le nuove API prevedono, oltre al commit in allegato, un hash e la definizione dello stato fra pending, success, error o failure, mentre l’URL del repository e la descrizione sono facoltativi. Un aspetto interessante è l’utilizzo di OAuth per esportare queste informazioni, senza concedere l’accesso ai sorgenti: la nuova caratteristica renderebbe gradito un client più specifico per Linux.

Via | GitHub

GitHub introduce le Commit Status API per gli aggiornamenti al codice é stato pubblicato su Ossblog.it alle 13:00 di mercoledì 05 settembre 2012. Leggete le condizioni di utilizzo del feed.

Popularity: unranked [?]



Puoi visualizzare il post originale qui.

ago
30

leOS, un sistema operativo essenziale per Arduino da Leonardo Miliani

 

Logo di Arduinolight embedded Operating System (leOS) è un progetto di Leonardo Miliani, un programmatore fiorentino, e consiste in una specie di sistema operativo in C per gestire l’esecuzione del codice su Arduino. Lo stesso Miliani premette che la definizione di sistema operativo è indicativa: leOS è una via di mezzo tra un Real-Time Operating System (RTOS) e uno scheduler, che non rientra al 100% nelle due categorie. È compatibile con tutte le schede prodotte da o con gli schemi di Arduino su ATmega, perciò non funzionerà con Arduino Due.

leOS è in grado d’avviare/arrestare, riprendere o eliminare le operazioni affidategli: non supporta il preemptive multitasking degli RTOS, ma utilizza gli interrupt e perciò non è affetto da eventuali delay nel codice come gli altri scheduler. Prevedendo il timer 2, leOS disattiva le funzioni di Pulse-Width Modulation (PWM) sui pin digitali 3 e 11 — una caratteristica da tenere in considerazione, non soltanto se si collegano degli shield. La versione 0.1.x di leOS supporta Arduino Leonardo col nuovo layout delle schede prodotte.

Miliani descrive leOS come un sistema efficace per gestire ricorsivamente le operazioni che non richiedano un utilizzo intenso del processore centrale. Perché funzioni è sufficiente scompattarne l’archivio nella cartella dello sketch da gestire: una caratteristica che lo differenzia da looper, un altro progetto di Miliani che esclude il timer 2 – richiesto da numerose applicazioni – e dovrebbe “liberare” il PWM sui pin 3 e 11. looper è uno scheduler molto più semplice di leOS che dev’essere invocato esplicitamente dagli sketch.

Via | Arduino

leOS, un sistema operativo essenziale per Arduino da Leonardo Miliani é stato pubblicato su Ossblog.it alle 09:00 di giovedì 30 agosto 2012. Leggete le condizioni di utilizzo del feed.

Popularity: unranked [?]



Puoi visualizzare il post originale qui.

ago
26

Vanila JS è il framework per JavaScript più popolare di tutta la rete

 

Logo di Vanilla JSVanilla JS è, in assoluto, il framework più popolare sulla rete per l’integrazione di JavaScript: la diffusione supera quella della somma di Google Web Toolkit, jQuery, MooTools, Prototype JS e YUI. Dispone di innumerevoli plugin e non richiede un download, essendo già disponibile su tutti i browser più recenti. Le prestazioni annichiliscono le altre implementazioni del linguaggio e non ha bisogno di una licenza di rilascio… perché, semplicemente, non esiste. Vanilla JS è un’intuizione – o, meglio, una polemica – di Eric Wastl.

La posizione di Wastl è semplice: JavaScript non ha bisogno di librerie aggiuntive, perché il linguaggio prevede già tutte le funzioni proposte dai vari framework. Basta saperlo utilizzare. In particolare, Wastl paragona la sintassi di JavaScript a quella semplificata di jQuery per dimostrare che basta qualche carattere in più per ottenere lo stesso effetto senza ricorrere a degli espedienti. Gli engine proposti dai browser – nell’esempio di Wastl, quelli di Mozilla – sono sufficienti a soddisfare ogni esigenza dei web designer.

In un certo senso, la polemica di Wastl riprende quella sugli editor: jQuery – utilizzando il medesimo paragone mostrato con Vanilla JS – semplifica la sintassi di operazioni già ottenibili con JavaScript, esattamente come i WYSIWYG permettono d’ottenere lo stesso risultato della scrittura manuale delle marcature. Se un web designer conosce davvero il linguaggio che utilizza, non ha bisogno di ricorrere a espedienti o modelli precompilati. La tesi di Wastl è difficilmente contestabile anche dal punto di vista delle prestazioni.

Via | I Programmer

Vanila JS è il framework per JavaScript più popolare di tutta la rete é stato pubblicato su Ossblog.it alle 09:00 di domenica 26 agosto 2012. Leggete le condizioni di utilizzo del feed.

Popularity: unranked [?]



Puoi visualizzare il post originale qui.

ago
11

Compiling Textmate 2 open source on Mac OS X 10.7

 

Popularity: unranked [?]



Puoi visualizzare il post originale qui.

ago
10

Digia acquista quanto resta di Qt da Nokia con un piano per il futuro

 

Logo di Qt CommercialDigia, la società che ne aveva acquisito il comparto commerciale nel marzo del 2011, ha annunciato il trasferimento di quanto ancora resta di Qt in Nokia. La transazione prevede il passaggio di 125 dipendenti da Oslo – la città che ospita gli uffici centrali – e Berlino. La notizia arriva poco dopo la chiusura degli uffici australiani che aveva evidenziato l’intenzione di Nokia d’abbandonare definitivamente il framework. Il trasferimento a Digia è la scelta più opportuna: riunirà i servizi commerciali allo sviluppo open source.

Il primo comunicato di Digia è rassicurante, da questo punto di vista. La società intende mantenere Qt Project – il nuovo portale per la governance condivisa del framework – e rispettare gli accordi tra Nokia e KDE. Utenti e sviluppatori non devono aspettarsi grandi stravolgimenti: Qt Commercial, il dominio di Digia per la gestione del comparto commerciale, sarà esteso alla documentazione e ai servizi ora ospitati da Nokia. Qt Project continuerà a ospitare i sorgenti e i repository per lo sviluppo open source di Qt5 o superiore.

Oltre al cambio d’indirizzo, Digia ha subito preso posizione sullo sviluppo del framework: Qt arriverà presto su Android, iOS e Windows 8 in forma ufficiale. Le prime due piattaforme hanno già dei porting di terze parti, rispettivamente Necessitas – un SDK del quale avevamo parlato in occasione del lancio – e Qt-iPhone, nessuno gestito direttamente o indirettamente da Nokia. Windows 8 è un obiettivo inedito che insieme ai sistemi operativi per i dispositivi mobili proietta Qt nel futuro. Più di quanto avrebbe potuto fare Nokia.

Via | Digia

Digia acquista quanto resta di Qt da Nokia con un piano per il futuro é stato pubblicato su Ossblog.it alle 09:00 di venerdì 10 agosto 2012. Leggete le condizioni di utilizzo del feed.


Popularity: unranked [?]



Puoi visualizzare il post originale qui.

ago
03

Halide è un linguaggio open source per processare le immagini dal MIT

 

Logo di Massachusetts Institute of TechnologyHalide è l’ultima intuizione del Massachusetts Institute of Technology (MIT) e consiste in un nuovo linguaggio di programmazione open source per processare e computare le immagini. Concepito come una versione embedded di C++, Halide si rivolge agli sviluppatori di applicazioni come Instagram, ecc. che prevedono soprattutto l’applicazione di filtri alle fotografie. L’image processing richiede un elevato dispendio di risorse, perché ogni passaggio per ottenere il risultato finale è la somma di complesse operazioni computazionali.

Rilasciato sotto licenza MIT, Halide ristruttura il processo d’elaborazione delle immagini — separando l’algoritmo dalla memorizzazione dei dati e svincolandolo dall’ordine delle fasi di computazione. Il procedimento si riduce così a due momenti, algorithm e schedule, che non inficiano la portabilità del linguaggio tra piattaforme e dispositivi. I risultati d’esempio sono eccezionali: Halide impiega dal 5% al 70× in meno delle altre soluzioni a effettuare le stesse operazioni e funziona con tutti i device utilizzati per il test.

Quanto alle architetture supportate, Halide è disponibile per x86-64 con istruzioni SSE, ARMv7 più NEON e CUDA di nVidia. Le prestazioni di quest’ultima variante sono davvero impressionanti. Il compilatore del linguaggio può essere installato su Mac OS X – è stato provato sulle versioni 10.6 e 10.8 – o Linux a 64-bit: è consigliato Ubuntu 12.04. Halide è disegnato per l’integrazione e l’utilizzo in programmi di terze parti, non tanto nell’impiego a sé, e cerca di rispondere alle nuove esigenze dell’image processing in mobilità.

Via | GigaOM

Halide è un linguaggio open source per processare le immagini dal MIT é stato pubblicato su Ossblog.it alle 11:00 di venerdì 03 agosto 2012. Leggete le condizioni di utilizzo del feed.


Popularity: unranked [?]



Puoi visualizzare il post originale qui.

lug
23

Il contributo al codice di LLVM/Clang per Apple è inferiore alla metà

 

Logo di LLVMLLVM è il progetto che ha acquisito, negli ultimi mesi, l’attenzione maggiore da parte degli sviluppatori. FreeBSD ha già pianificato il passaggio della toolchain da GCC per la prossima versione e The Linux Foundation ha inaugurato con successo LLVMLinux — un progetto per la compilazione del kernel di Linux 3.3.0 con Clang. Nonostante la licenza sia compatibile con la GPLv3, molti programmatori e utenti sono preoccupati per l’influenza di Apple: com’è con WebKit, LLVM/Clang è gestito soprattutto da Cupertino. O, almeno, lo era.

Sylvestre Ledru, che aveva già verificato la possibilità di compilare il 91,2% dei pacchetti di Debian con Clang 3.0, ha calcolato delle statistiche sull’influenza di Apple nello sviluppo del progetto – che è anche il compilatore predefinito per Mac OS X. Il parallelo con WebKit non è inappropriato, perché la contribuzione al codice sorgente di LLVM/Clang ha subito la stessa sorte del popolare engine per i browser. Nell’ultimo anno, infatti, Google ha aumentato la propria influenza nello sviluppo e potrebbe sostituire Cupertino.

La percentuale di codice prodotto da Apple per LLVM/Clang, in totale, supera i ¾. Ultimamente, però, il contributo di Cupertino è sceso sotto al 50% a fronte di un aumento esponenziale delle modifiche effettuate da Google. La stessa situazione ha interessato WebKit, dal momento nel quale Mountain View ha iniziato a sviluppare Chrom* che, tra parentesi, ha un futuro in Clang. Qual è l’intento di Ledru? Come il sottoscritto, lo sviluppatore non si preoccupa granché della governance di Clang. Ma a più di qualcuno interessa eccome.

Via | Sylvestre Ledru

Il contributo al codice di LLVM/Clang per Apple è inferiore alla metà é stato pubblicato su Ossblog.it alle 11:00 di lunedì 23 luglio 2012. Leggete le condizioni di utilizzo del feed.


Popularity: unranked [?]



Puoi visualizzare il post originale qui.

lug
15

Rust, il linguaggio di Mozilla, è appena aggiornato alla versione 0.3

 

Logo di RustMozilla ha rilasciato un aggiornamento di Rust, il linguaggio di programmazione destinato a sostituire C e C++ – dei quali mantiene grossomodo la sintassi – nel futuro dei progetti mantenuti dalla fondazione. La versione 0.3 introduce ca. 1900 modifiche al codice, aggiungendo la possibilità di utilizzare Rust in forma di script: magari, per l’inclusione nei canvas di HTML5. A questo proposito, sono supportati i commenti nella sintassi di shebang, perché i sistemi operativi UNIX-like possano identificare l’interprete da avviare.

Rust è un linguaggio imperativo a oggetti ideato nel 2006 da Graydon Hoare e passato nel 2009 sotto l’egida di Mozilla Labs. Rilasciato dal 2010 sotto varie licenze a seconda dei componenti, soprattutto MIT e BSD, Rust ha un proprio compilatore che utilizza il backend di LLVM. Nonostante le affinità con C e C++ nel design, il linguaggio si differenzia da questi in molte caratteristiche. Essenzialmente, riunisce le proprietà necessarie all’impiego nei progetti di Mozilla: in fase alfa, è disponibile per Linux, Mac OS X e Windows.

Lo scopo di Rust, a lungo termine, equivale a quello di Go per Google. Mozilla mantiene un browser – compilabile soltanto su Linux e Mac OS X – parallelo a Firefox, Servo, sviluppato in Rust. Non stupirebbe se un domani tutti i progetti della fondazione sostituissero l’attuale infrastruttura di compilazione con quella di Rust. Google, ad esempio, propone delle build di Chromium che possono essere compilate con Clang al posto di GCC. Sebbene Go e Rust abbiano poco in comune le motivazioni alla base dello sviluppo sono le stesse.

Via | The H Open

Rust, il linguaggio di Mozilla, è appena aggiornato alla versione 0.3 é stato pubblicato su Ossblog.it alle 16:00 di domenica 15 luglio 2012. Leggete le condizioni di utilizzo del feed.


Popularity: unranked [?]



Puoi visualizzare il post originale qui.

lug
09

Scott Remnant enumera i limiti dei DVCS considerando, ad esempio, Git

 

Logo di GitScott Remnant – noto principalmente per essere il creatore di Upstart – ha scritto ieri un lungo intervento sul proprio blog in merito ai limiti dei Distributed Version Control System (DVCS), utilizzati per l’aggiornamento dei sorgenti nella programmazione.

L’ostilità di Remnant nei confronti di Git non è una novità: nella circostanza, però, lo sviluppatore ha identificato un problema davvero comune ed è difficile dargli torto. In sintesi, Remnant rivendica il cd. diritto all’oblio — nella creazione del codice sorgente.

L’esempio di Remnant è molto significativo. Utilizzando Git, qualunque modifica inviata al repository è destinata a restare per sempre nella cronologia. Abituati a lavorare su stringhe quickndirty, i programmatori inviano spesso degli aggiornamenti inconsistenti.

Secondo Remnant, questa caratteristica dei sistemi di revisione del codice – che non è un’esclusiva di Git, s’intenda – “uccide” la creatività. Non è possibile inviare del codice estremamente sperimentale senza dover condizionare il lavoro degli altri sviluppatori.

La conseguenza più ovvia è che i programmatori sono portati a mantenere il codice in locale finché non raggiunga una maturità tale da giustificarne l’invio al repository. All’aggiornamento dev’essere associata pure una descrizione puntuale delle modifiche effettuate.

Chiunque mantenga un account personale su GitHub – senza troppe pretese – può verificare subito la tesi di Remnant. Inviato un commit, non si può tornare indietro. Purtroppo, quanto il creatore di Upstart non ha considerato sono le possibili soluzioni del problema.

Via | Scott Remnant

Scott Remnant enumera i limiti dei DVCS considerando, ad esempio, Git é stato pubblicato su Ossblog.it alle 11:00 di lunedì 09 luglio 2012. Leggete le condizioni di utilizzo del feed.


Popularity: unranked [?]



Puoi visualizzare il post originale qui.

lug
07

Objective-C supera C++ nell’indice di TIOBE: merito di Mac OS X e iOS

 

Logo di Apple CocoaObjective-C è il terzo linguaggio di programmazione più utilizzato all’inizio del mese di luglio dopo C e Java. È il risultato dell’aggiornamento dell’indice di TIOBE Software, che analizza l’utilizzo dei vari linguaggi. Un aumento di popolarità abbastanza scontato.

Ideato nel lontano 1983 da Brad Cox and Tom Love, nello stesso anno di C++, Objective-C è mantenuto da Apple (l’ultimo aggiornamento è del 2007): è utilizzato soprattutto nelle applicazioni “native” di Mac OS X e iOS. Le principali implementazioni sono su Clang e GCC.

Piuttosto, il dato indicativo è il ritardo accumulato da Objective-C per sorpassare C++. Java, che è sceso al secondo posto dell’indice, è supportato dall’utilizzo pervasivo in Android, ma la popolarità di iOS non è certo da meno: sono preferite le applicazioni web?

La situazione potrebbe cambiare col rilascio di Windows 8 perché Microsoft ha scelto C++ come linguaggio preferito nell’aggiornamento del proprio sistema operativo. C#, ad esempio, segue in quinta posizione. Potrebbe essere interessante un dettaglio sui compilatori.

Mentre l’utilizzo di C++ è in declino, Objective-C ha ottenuto una piccola quanto significativa ripresa negli ultimi tre anni. Il linguaggio è impiegato soprattutto sui dispositivi mobili: le attuali prospettive del mercato giustificano ampiamente la nuova classifica.

TIOBE tiene a sottolineare che l’indice non riguarda i migliori linguaggi di programmazione, bensì il numero delle linee di codice scritte con ognuno. Per questo motivo, sarebbe importante paragonare alla crescita di Objective-C quella del compilatore di LLVM e Clang.

Via | TIOBE

Objective-C supera C++ nell’indice di TIOBE: merito di Mac OS X e iOS é stato pubblicato su Ossblog.it alle 15:00 di sabato 07 luglio 2012. Leggete le condizioni di utilizzo del feed.


Popularity: unranked [?]



Puoi visualizzare il post originale qui.

giu
14

Google s’appella a quanti non conoscono la programmazione su Blockly

 

BlocklyBlockly è un nuovo linguaggio di programmazione a immagini, basato sul web, proposto da Google: s’ispira a Scratch, la soluzione del Massachusetts Institute of Technology (MIT) che a propria volta è derivata da App Inventor. Quest’ultimo era stato concepito da Mountain View, che successivamente ha trasferito la governance del progetto al MIT. Un circolo virtuoso che con Blockly torna ad abitare al Googleplex. Se App Inventor è per Android, la novità sembra orientata a Chrom*. Il codice è esportato in DART, JavaScript o Python.

Lo stesso Blockly, rilasciato sotto Apache License 2.0, è stato scritto in JavaScript: una caratteristica che lo rende facilmente integrabile nelle pagine e nelle applicazioni per il web. Rispetto a Scratch o ad App Inventor, Blockly non è proposto da Google come un eseguibile. Il progetto è in anteprima per gli sviluppatori e richiede una certa disinvoltura coi Distributed Version Control System (DVCS) e i linguaggi di programmazione per essere avviato. Sembra un controsenso, ma è una scelta precisa dovuta alla sperimentazione.

In futuro, Blockly dovrebbe diventare più accessibile. Uno degli esempi proposti da Google per l’utilizzo del nuovo linguaggio suggerisce un paragone con Yahoo! Pipes: fra le possibili applicazioni di Blockly è descritto un filtro per la gestione automatica della corrispondenza con GMail. L’esperimento è intrigante, però occorre domandarsi quanto soluzioni del genere incidano sulla qualità. Google “ironizza” sul fatto che Blockly non possa essere utilizzato per gestire il kernel di Linux. A prescindere, è una risorsa credibile?

Via | I Programmer

Google s’appella a quanti non conoscono la programmazione su Blockly é stato pubblicato su Ossblog.it alle 12:00 di giovedì 14 giugno 2012. Leggete le condizioni di utilizzo del feed.

Popularity: unranked [?]



Puoi visualizzare il post originale qui.

top