Notizie condivise

RSS feed atom

In questa pagina trovate una lista di notizie reperibili su web (blog, notiziari, ...) che desidero condividere con voi.


EFF svela la licenza d'uso per sviluppatori di applicazioni per iPhone: le reazioni del Web

di (author unknown)

Shared by Mario
Enjoy!

Testata della licenza d'uso per sviluppatori iPhone

Tutte le vostre applicazioni appartengono ad Apple. Questo è uno dei motivi per i quali Apple può ritirare impunemente applicazioni che non le convengono, anche se sviluppate da programmatori indipendenti.

L’accordo iPhone Developer Program License Agreement (pdf), il contratto che ogni sviluppatore deve accettare per ottenere le SDK di Apple, è stato recentemente diffuso da EFF. Sembra particolarmente restrittivo. Tra le altre cose, ogni applicazione sviluppata è vincolata ad essere distribuita esclusivamente attraverso iTunes App Store (sezione 7.2).

Le reazioni degli utenti non si sono fatte attendere:

È frustrante vedere Apple, pioniere del generative computing, ammanettare il mercato che (per ora) capeggia. Se Apple vuole essere un vero leader, dovrebbe incoraggiare la innovazione e la competizione, piuttosto che agire da signore feudale, geloso e arbitrario. - Fred von Lohmann, avvocato a EFF (traduzione libera).

Apple non ha ancora risposto alle numerose accuse di sfruttare a proprio favore la posizione di vantaggio di cui gode sul mercato. Però si intuisce che la società di Cupertino considera le applicazioni per iPhone (e prossimamente anche per iPad) come la pietra angolare del successo dei propri prodotti. Con una tale enfasi posta sul software, difficile immaginare la Apple cedere il controllo sugli sviluppi futuri delle applicazioni. Difficile del resto non pensare ad un fenomeno parallelo di crescita per Store alternativi come Cydia: leggete gli ultimi dati prospettati oggi da The Register.

[Via EFF]


The auction begins

di Tyler Cowen

Arbitrage

I thank Paul Sherman and Loren Poulsen and Eliot Williams for the pointer; a related link is here.


Britain To Stop Funding For Homeopathy

di (author unknown)

Shared by Mario
Per me sono pilloline zuccherate...
An anonymous reader writes "Homeopathic remedies work no better than placebos, and so should no longer be paid for by the UK National Health Service, a committee of British members of parliament has concluded. In preparing its report, the committee, which scrutinizes the evidence behind government policies, took evidence from scientists and homeopaths, and reviewed numerous reports and scientific investigations into homeopathy. It found no evidence that such treatments work beyond providing a placebo effect."

Read more of this story at Slashdot.


Italia ( E solo qui ) : Google è responsabile dei video uploadati su Youtube e GoogleVideo

di (author unknown)

Shared by Mario
"Italia = Repubblica delle Banane"
Tutto quello che altrove sarebbe considerato assurdo... da noi è possibilissimo, anzi è legge!

Mentre ero a pranzo, proprio oggi, ho sentito una notizia al telegiornale di rai3 che mi ha lasciato perplesso. La notizia recitava sinteticamente così:

“4 Dirigenti di google italia processati e accusati di violazione della privacy per colpa di un video uploadato su GoogleVideo”.

Cercando di non banalizzare ciò che reputo gravissimo riassumo brevemente i fatti e la storia che ha portato un giudice di milano ad imputare penalmente i 4 dirigenti di googleitalia.

  • Nel 2006 alcuni studenti di una scuola di torino hanno creato un video dove mostravano chiaramente del bullismo verso un ragazzo autistico da alcuni coetanei. Successivamente questo video è stato uploadato sulla piattaforma parallela di youtube : Google Video.
  • In pochissimo tempo il fatto è stato denunciato alla polizia locale che ha contattato immdiatamente Google Italia che ha provveduto in poche ore ad eliminare il video “incriminato”.
  • Normalmente – come si legge dal blog di google – la loro partecipazione in queste vicende si ferma subito dopo l’eleminazione del contenuto illecito dalle loro piattaforme di hosting, ma questa volta non è andata così.
  • Qualcuno ha pensato bene di far causa ai 4 dirigenti di google per violazione della privacy e diffamazione.

Cos’è successo oggi.

A quanto pare si è arrivati ad una sentenza che vede assolti i 4 dirigenti di Google per concorso in diffamazione ( meno male!!! ) ma allo stesso tempo li vede colpevoli di violazione della privacy.

Ed è proprio questa sentenza che un pò mi ha chiuso lo stomaco. In pratica, come si legge anche nel blog di google, questa sentenza è la prima del suo genere proprio perchè, normalmente, gli indagati in questi casi sono le persone che hanno agito in primo luogo per la realizzazione/distribuzione del contenuto e non i responsabili della compagnia di hosting dove il video risiede.

In pratica, volendo usare una metafora un pochino azzardata, è come sein un vostro appartamento affittato a terzi questi vengano trovati a spacciare della droga all’interno della vostra proprietà e alla fine anche voi veniste accusati sebbene, ovviamente, non abbiate nulla a che fare con lo spaccio. Ma solamente per il fatto che questo si è svolto in un luogo vostro questo vi rende immediatamente responsabili del delitto.

Ripeto che sebbene la metafora risulti piuttosto azzardata rende bene l’idea che la sentenza, almeno per quanto riguarda il mio punto di vista, è un errore che potrebbe far cadere in pezzi ciò che oggi internet rappresenta!!!

Continuando su questa strada ci ritroveremo ben presto che ogni sito internet web2.0 , dove sia possibile avere un interazione con i propri utenti (Quindi anche forum,blog, Social networks ) , si ritrovi direttamente responsabile di ogni singola foto,video,frase uploadata sulla sua board.

Fortunatamente a questo viene incontro l’unione europea che  ha elaborato appositamente ( non dopo questa sentenza ) una legge per offrire ai provider di hosting un porto sicuro da ogni responsabilità fintanto che questi rimuovano i contenuti illegali una volta che questi vengano notificati dell’esistenza.

Pertanto, credo che episodi del genere non dovrebbero più accadere fintanto che il decreto europeo rimanga in piedi. Altrimenti sarebbe la rovina di internet e della libertà di espressione che questa rappresenta!

Un saluto, ancora amaro, a tutti.

[Fonte: Tg3, GoogleBlog ]


© Andrea for Androidiani.com, 2010. |Permalink | Add todel.icio.us
Post tags: ,


Salvatore 'antirez' Sanfilippo, intervista allo sviluppatore di Redis

di Lpt on fire!

Redisè un database che fa parte del movimento NoSQL e rappresenta uno dei progetti più interessanti di questo nuovo panorama.

Forse non tutti sanno che il progetto è stato lanciato da un noto programmatore italiano, Salvatore ‘antirez’ Sanfilippo, che qualcuno di voi potrebbe già conoscere per altri suoi lavori come HPing o Lloogg. Lo abbiamo contattato affinché ci descrivesse meglio il funzionamento e le caratteristiche di Redis.

Presentati e prova ad illustrare Redis e la sua architettura per il pubblico che ancora non lo conosce.

Redisè un database un pò bizzarro, rispetto ai canoni a cui siamo abituati, per due motivi principali:

1) Tiene tutti i dati in memoria anche se persiste sul disco. In pratica il disco serve solo nel caso in cui il database viene fermato e riavviato, a leggere nuovamente tutto il data set in memoria. Ma tutti gli accessi in lettura e scrittura vengono gestiti principalmente in RAM. Questo permette ad un singolo server Redis che gira su una macchina Linux normalissima, su un solo core, di raggiungere l’interessante prestazione di 100 mila query al secondo. Cosa più interessante le query in lettura e scrittura prendono lo stesso tempo.

2) Le operazioni che supporta sono molto diverse da quelle di un database SQL. Non c’è il concetto di tabella, e non è un semplice database Key-Value a cui si associa ad una stringa (la chiave) un’altra stringa (il valore). Infatti i valori possono essere di altri tipi, come liste, insiemi, insiemi ordinati, o semplicemente stringhe.

L’idea di mantenere tutto il dataset in RAM aiuta a migliorare le prestazioni, ma cosa succede quando la memoria non è sufficiente?

L’idea di mantenere tutto il dataset in RAM aiuta a migliorare le prestazioni, ma cosa succede quando la memoria non è sufficiente?

Nella versione stabile di Redis non c’è modo di andare oltre la RAM. Al massimo Redis può essere configurato per non accettare nuovi dati quando ha utilizzato più di un dato limite di memoria, o di tentare di cancellare le chiavi “volatili” in tal caso per fare spazio alle altre (una chiave volatile è una chiave associata ad un EXPIRE in secondi, poiché Redis supporta l’auto cancellazione delle chiavi dopo tot secondi).

Ma la svolta da questo punto di vista è nella versione non stabile, dentro Git. Si tratta della funzionalità denominata “Virtual Memory”. In pratica Redis implementa un file di swap su cui scarica le chiavi meno usate automaticamente. Se il database supera la dimensione della RAM, tutte le chiavi che sono usate meno spesso vengono trasferite sul disco, per essere ritrasferite indietro in memoria quando saranno nuovamente richieste.

Siccome molte applicazioni sono “sbilanciate” nell’accesso ai dati, ed accedono molto frequentemente ad una piccola percentuale di chiavi, in molti casi le prestazioni di Redis rimangono simili a quelle che esprime quando tutte le chiavi sono in memoria.

La Virtual Memory è già abbastanza stabile e può essere testata. Ho scritto un lungo articolo qui a proposito del suo funzionamento: http://antirez.com/post/redis-virtual-memory-story.html

Tra i piani per il futuro c’è l’opzione di implementare una memoria virtuale. Potresti spiegarci i vantaggi di questo approccio rispetto al lasciar fare tutto al sistema operativo?

Esatto, ho appena parlato di questo. Perché non si può lasciar fare al sistema operativo?

È più semplice di quello che sembra. Il sistema operativo trasferisce o carica dallo swap delle “pagine” di memoria che sono grandi 4096 byte. Redis utilizza delle strutture molti piccole, anche per valori grossi. Ad esempio una lista di Redis, è composta da tanti piccoli Redis Objects. Non solo, il dizionario principale è implementato tramite una hash table, che è una struttura dati ad accesso “molto” casuale. In pratica nella stessa pagina di memoria ci finiscono dati relativi a decine o centinaia di chiavi: se anche una sola chiave è attiva, questa pagina non può essere trasferita su disco.

Per cui la memoria virtuale del sistema operativo funziona malissimo con Redis. C’è un altro motivo importante: in memoria i dati di Redis occupano molto più spazio rispetto a quello occupato dallo stesso dato codificato su disco da Redis. La memoria virtual del sistema operativo non ha idea di cosa ci sia dentro le pagine di memoria, e le trasferisce dal/al disco così come sono. Invece la memoria virtuale di Redis ha più informazioni, e codifica e comprime i valori trasferiti, per cui esegue molto meno input/output sul disco a parità di necessità di swapping.

Come vengono sfruttate la macchine multicpu/multicore e la distribuzione del dataset su più computer?

Attualmente ci sono due modi per sfruttarle: o far girare più istanze di Redis sulla stessa macchina, o usare la Virtual Memory che ha una implementazione basata sui thread, per cui anche se Redis è “single threaded” cioè opera su un singolo thread grazie ad una tecnica chiamata “multiplexing”, la Virtual Memory si avvale di diversi thread (configurabile) in modo da non bloccare gli altri client quando un client ha la necessità di accedere ai dati che sono sul disco.

Redis è un progetto che si discosta dal tradizionale modello relazionale. Su cosa punteresti per invogliare gli utenti a provarlo?

Faccio un esempio banale. Per implementare su MySQL un sistema semplicissimo di commenti dove ogni nuovo commento sta in cima alla pagina (ad esempio nel caso di un blog), su MySQL devo creare una tabella, mettere l’ID del post, e usare ORDER BY anche se tutto ciò che voglio è prendere i commenti nello stesso ordine in cui li ho inseriti o nell’ordine inverso.

Su Redis invece tutto quello che devo fare è, per ogni commento:

LPUSH post:100:comments

LPUSH aggiunge alla testa della lista contenuta nella chiave “post:100:comments” (dove 100 è un esempio di ID del post).

Per prendere i primi 10 commenti in ordine inverso nel quale li ho postati, mi basta scrivere:

LRANGE post:100:comments 0 9

Quale tipo di progetto potrebbe beneficiare maggiormente dall’uso di Redis al posto di un dbms relazionale?

I progetti che hanno grandi traffici, o dove i dati sono sistemati in modo da necessitare operazioni atomiche. Ad esempio Redis supporta intersezioni tra i set, per cui è facile implementare un sistema di tag. Allo stesso modo è facilissimo implementare una “score board” con i sorted set. In pratica si inseriscono in Redis dei valori che hanno un dato punteggio: anche con milioni di dati Redis inserirà questi dati in O(log(N)) ma con tempi costanti davvero bassi.

Questi dati sono inseriti in maniera ordinata, dunque posso chiedere a Redis: quali sono i primi 10 elementi di questo sorted set? (simile a SELECT * FROM
table ORDER BY score LIMIT 0 10
), o posso chiedere a Redis di darmi tutti gli elementi in cui lo score è compreso tra due valori. Queste operazioni sono molto veloci, per cui più di una azienda di videogame sta usando Redis per gestire i punteggi degli utenti, ad esempio di giochi online molto trafficati.

Quali sono i siti più importanti che utilizzano Redis nel loro backend?

http://engineyard.com
http://github.com
L’applicazione “Boxcar” per iPhone, molto famosa per le notifiche push

Sono alcuni esempi di grosse applicazioni, ma ci sono centinaia di startup che stanno usando Redis in produzione.

Recentemente Redis è arrivato alla versione 1.2 che introduce la nuova modalità di persistenza “append only file”. Ci puoi descrivere il funzionamento e come possono cambiare le prestazioni?

In pratica normalmente Redis salva i dati su un file, di tanto in tanto (in maniera configurabile, ad esempio salva ogni 60 secondi se sono cambiati almeno 5 dati in memoria). Questo è molto veloce e viene fatto da un processo “figlio” in parallelo, ma se la macchina si spegne perché ad esempio c’è un problema con la corrente elettrica, si rischia di perdere gli ultimi 60 secondi di dati.

Con l’Append Only File invece Redis scrive su disco, in un file sequenziale, tutte le operazioni di scrittura che riceve, istantaneamente. Quando viene fatto ripartire, rilegge tali operazioni di scrittura come se le ricevesse dai client, per ricostruire lo stato dei dati in memoria. Questo log però diventa sempre più lungo, ma Redis sa compattarlo in backrground, senza bloccare le richieste che arrivano dai dati.

Le prestazioni sono molto buone anche con l’Append Only File, ma dipende molto da come è configurato Redis, infatti può chiedere al sistema operativo di fare il “flush” dei dati ogni secondo, di lasciar fare al sistema operativo, o di farla ad ogni singola scrittura. Nell’ultimo caso Redis diventa lento ma estremamente “durabile” (molto più di MySQL ad esempio), ogni operazione viene trasferita sul disco prima possibile. Questo va bene per applicazioni finanziarie magari, ma non è una buona idea.

Quando è configurato per fare il flush ogni secondo (scelta consigliata) è quasi veloce come quando l’append only file è disabilitato.

Sul sito sono presenti progetti per usare redis con più di 10 linguaggi, qual è il loro grado di maturità?

Alcuni sono estremamente maturi: Ruby, Python, Java.

Il client PHP scritto da “nostro” Daniele Alessandri è ottimo (Predis) ma per ora necessità di PHP moderni. Chiaramente le librerie dei linguaggi meno utilizzati sono aggiornate meno frequentemente, ma il protocollo di Redis è davvero molto semplice.

Cosa vedi nel futuro di Redis e più in generale dei key-value DB?

Abbiamo una roadmap importante. Nel futuro vedo il rilascio della 2.0 che aggiunge transazioni atomiche, Virtual Memory, e operazioni bloccanti sulla lista. E poi il progetto Redis-cluster, che tenterà di far diventare Redis un database distribuito.

Credo che i Key Value “semplici” siano utili, ma Redis ha aperto un nuovo fronte. Mi piacerebbe che nuovi database adottassero questa politica di Redis ma con implementazioni su disco. Insomma, manca un Tokyo Cabinet con le operazioni offerte da Redis secondo me.

Il movimento NoSQLè molto giovane… vedremo cosa succederà ma io sono abbastanza convinto che finalmente i programmatori si sono “riappropriati” dei database, e non useranno più una sola soluzione (SQL) per tutti i tipi di problemi.

Una curiosità. Come è nato Redis?

Perché con MySQL non riuscivo a scalare http://lloogg.com :)

Nel corso di questi anni hai realizzato molti progetti, hai già qualche nuova idea per il futuro?

Mi vorrei concentrare su Redis per il futuro. È un progetto che ha bisogno di molto sviluppo. Forse tra 5 anni passerò a qualcos’altro ma per ora il mio focus è li.

Dato il successo di Redis pensi di farlo diventare il tuo lavoro principale?

Si, sto provando a lavorare full time a Redis. Forse tra qualche tempo annuncerò delle interessanti novità ;)

Grazie per averci concesso il tuo tempo e per l’ottimo lavoro svolto con Redis. Un plauso anche per la documentazione chiara ed abbondante con numerosi esempi.

Grazie a voi!


The FSF's open letter to Google

di corbet

The Free Software Foundation has laid down a challenge to Google in the form of an open letter. "With your purchase of On2, you now own both the world's largest video site (YouTube) and all the patents behind a new high performance video codec -- VP8. Just think what you can achieve by releasing the VP8 codec under an irrevocable royalty-free license and pushing it out to users on YouTube? You can end the web's dependence on patent-encumbered video formats and proprietary software (Flash)."

10 servizi molto utili di Google che forse non conoscevate

di (author unknown)

Shared by Mario
Alcuni non li conoscevo proprio...


Google, per moltissimi, è soprattutto motore di ricerca e Gmail, la webmail potente e - quasi sempre - affidabile. Aggiungiamo Google Maps, e anche un bisogno ormai primario, come quello della cartografia online, soddisfatto (sempre meglio).

Non tutti sanno però che Google, fra esperimenti e nicchie varie, offre una miriade di servizi secondari, atti a soddisfare anche le esigenze meno immediate. Alcuni sono servizi originalmente inventati da Google, altri sono frutto di qualcuna delle tante acquisizioni che Mountain View fa di tanto in tanto, come noialtri facciamo shopping. La lista ce l’ha segnalata Lost in Technology.

1. Aardvark, che è una versione moderna e impronunciabile di Yahoo! Answers. Provate per credere, risponderanno ad ogni vostra domanda, ma solo in inglese. Il suo compito è quello di effettuare una social search. Si propone, in pratica, di trovare persone, e non siti o soluzioni. Molto interessante.

2. Google Sets vi lascia dei campi vuoti a disposizione, in cui voi inserirete degli elementi. Magari dei film che hanno qualcosa in comunque, oltre al fatto di piacervi molto. Sets si occuperà di completare la lista con altri elementi attinenti. Un po’ magico, ma funziona.

3. Audio Indexing tiene conto di quante volte un certo argomento è trattato
nell’audio dei video di YouTube. Per ora funziona solo con la politica americana, ma le potenzialità sono enormi.

4. News Timeline, anche questo molto suggestivo. Dispone i risultati di Google News lunga una linea del tempo, mostrando graficamente come un certo argomento muti identità e contorni mentre le ore e i giorni passano.

5. Living Storiesè frutto di una collaborazione fra Google e due grandi quotidiani americani: il New York Times e il Washington Post. Indicizza solo le notizie (e lo sviluppo di esse) che sono nate e si evolvono solo nelle versioni web dei due giornali. Tutta la documentazione è dunque online, senza dover ricorrere a confronti con le versione cartacee degli stessi.

6. City Tours, naturalmente basato su Google Maps, propone degli itinerari nelle città turisticamente più interessanti, collegando ogni punto del percorso a pagine su pagine di informazioni utili su luoghi, ristoranti, risorse.

7. Image Swirlè un motore di ricerca avanzata per immagini. Probabilmente il più noto della Top Ten, da provare subito se ancora non lo conosceste. Basa i suoi risultati sulla somiglianza grafica fra le immagini e le sa anche dividere in categorie (auto che rispondono alla chiave Jaguar, animali, etc.).

8. Dictionary. Il più sottovalutato, probabilmente per la forza della concorrenza. Molti esempi e immagini, un potente strumento didattico. Innumerevoli lingue presenti nel database.

9. Squared, di cui abbiamo già parlato insieme, che si propone di disporre in tabelle ricche di informazioni i risultati delle ricerche effettuate in esso. Con la possibilità di aggiungere dettagli e proporre nuove tabelle, in modalità un po’ wiki.

10. Fast Flip, uno dei più incompresi: presenta una veloce anteprima delle varie pagine di un sito di informazioni, come se sfogliassimo un giornale. Scegliendone una, e cliccandoci sopra, si apre la relativa pagine e si legge comodamente la notizia in questione.



Il popolo del televoto, da Sanremo al portafoglio…

di Andrea T.

Il Festival di Sanremo è bello perché fa parlare di se’, dicono i suoi estimatori. Al contrario chi non lo sopporta usa lo stesso tono per denigrarlo. Di sicuro non parlo di musica. Non ne ho le competenze, assolutamente. Mi serve l’edizione 2010 del Festival per parlare del televoto. Non è la prima volta che lo [...]

MacGyver Multitool

di Mark Frauenfelder


For me, seeing this picture was just like finding out...

di (author unknown)

Shared by Mario
Ma allora Babbo Natale non esiste?!


For me, seeing this picture was just like finding out there’s no Santa Claus.



Too Cool for Internet Explorer