Disco: massive data, minimal code

pubblicato da Lpt on fire!


Disco è una piattaforma open source per l’analisi di una gran quantità di dati.

Il framework supporta l’esecuzione parallela su normali computer di più computazioni su insiemi di dati molto grandi. Supporta varie implementazioni fra cui anche il sistema MapReduce.

Il nucleo di Disco è scritto in Erlang, un linguaggio che ben si adatta alla creazione di applicazioni distribuite e fault-tolerant. Gli utenti della piattaforma possono scrivere i propri job da eseguire in Python rendendo molto rapido lo sviluppo di programmi che gestiscono una grande mole di dati.

Questo progetto è nato nel Nokia Research Center come per rendere più facile la gestione del calcolo distribuito. Da allora è stato usato in molti ambiti: parsing, analisi di log, data mining, full-text indexing, modelli probabilistici, machine learning ed altro ancora.

Via | DiscoProject

condividi condividi 0 commenti mercoledì 21 luglio 2010

Shed Skin, compilare Python in C++

pubblicato da Lpt on fire!


Shed Skin è un compilatore in fase sperimentale che vi consente di tradurre del codice Python, con tipaggio tipizzazione statica implicita, in programmi C++.

Può generare sia programmi a sé stanti oppure moduli da utilizzare in normali progetti scritti in python. A parte le ovvie restrizioni sulla tipizzazione è possibile utilizzare solo le parti della libreria standard che sono supportate.

In termini prestazionali il codice è in grado di girare dalle 2 alle 20 volte più velocemente rispetto al medesimo che utilizza psyco e fino a 200 nel confronto diretto con CPython. Shed Skin non è ancora stabile e rappresenta al momento più un esperimento. Se volete utilizzare il vostro codice C++ in Python potete sempre ricorrere a Boost.Python.

Via | ShedSkin

condividi condividi 1 commento domenica 11 luglio 2010
PUBBLICITÀ
PUBBLICITÀ

Python 2.7

pubblicato da Lpt on fire!


È stato rilasciata la versione 2.7 di Python, l’ultima major per il ramo 2.x. Il supporto ed il mantenimento di questa versione sarà più lungo rispetto alle precedenti versioni per consentire a tutti un passaggio al ramo 3.x il più indolore possibile.

Ora i DeprecationWarning non verranno più mostrati in maniera predefinita per evitare di confondere gli utenti. Gli sviluppatori hanno la possibilità di abilitarne la stampa durante lo sviluppo. Così come python 2.6 incorporava alcune delle novità di python 3.0 così python 2.7 importa alcune funzionalità di python 3.1 come Dictionary e set comprehension, set literal, dictionary view, una libreria io con prestazioni migliori e l’aggiunta dei dizionari ordinati.

Potete consultare la pagina con l’elenco completo delle novità.

Via | Python

condividi condividi 6 commenti lunedì 05 luglio 2010

Doxygen

pubblicato da Lpt on fire!


Doxygen è un sistema per la generazione di documentazione a partire dai file sorgenti scritti in C++, C, Java, Objective-C, Python, IDL (Corba e Microsoft), Fortran, VHDL, PHP e C#.

La documentazione può essere generata in vari formati come HTML, RTF, PostScript, PDF, compressed HTML e persino man page. Insieme alla creazione delle pagine possono essere creati anche grafici di dipendenza e diagrammi di collaborazione o ereditarietà.

Estraendo la documentazione dai sorgenti e rigenerandola quando necessario è più semplice mantenere il tutto sincronizzato. Doxygen può essere utilizzato anche per visualizzare facilmente com’è composto un progetto nuovo che si vede per la prima volta.

Continua a leggere: Doxygen

condividi condividi 1 commento martedì 15 giugno 2010

Fluidinfo e FluidDB al TechCrunch Disrupt 2010

pubblicato da Federico Moretti

FluidinfoIn questi giorni a New York si sta tenendo il TechCrunch Disrupt 2010, una conferenza tecnica dedicata ai social media e alle nuove startup dal network omonimo, che terminerà soltanto domani: abbiamo già visto OpenLike v2 su Downloadblog.it, ma le idee presentate già nella prima giornata sono davvero troppe per essere elencate nella loro totalità. C’è però un progetto in particolare che merita attenzione: FluidDB.

Creato da Fluidinfo, un’azienda che è stata “fondata” formalmente solo ieri (grazie a un investimento di ca. $800.000 in venture capitalism dalle imprese sponsor dell’evento di NYC), FluidDB ambisce a diventare la Wikipedia dei database sfruttando tecnologie open source per generare dati rilevanti attraverso connessioni S2S da piattaforme esistenti: ad esempio, TunkRank estrapola informazioni dalle API di Twitter e le trasmette a FluidDB inserendole in una struttura personalizzata per le proprie esigenze.

In pratica i dati passano da un database all’altro attraverso le API dei rispettivi servizi: il dialogo con quelle di FluidDB consente di ristrutturare le informazioni per adeguarle all’uso che se ne vuole fare (TunkRank si occupa di statistiche su Twitter). Il vantaggio e lo svantaggio principali del nuovo database consistono nello stesso aspetto: i dati non sono “fisicamente” sul proprio server… bensì su quello di Fluidinfo, equipaggiato con Ubuntu e amministrato via Python su PostreSQL. Altre tecnologie in uso da FluidDB sono Twisted, Thrift, AMQP e Lucene.

Via | ReadWriteWeb

condividi condividi 0 commenti martedì 25 maggio 2010

Django 1.2

pubblicato da Lpt on fire!


Dopo mesi di duro lavoro il team di Django ha finalmente rilasciato la versione 1.2 con molte ed interessanti novità.

  • Supporto per database multipli grazie al metodo using() di QuerySet
  • Model validation con la possibilità di specificare una lista di validatori
  • Nuova protezione Cross-Site Request Forgery (CSRF). Non è compatibile con la precedente versione che resterà comunque disponibile fino a Django 1.4
  • Un nuovo e più robusto sistema per i messaggi
  • Maggiore personalizzazione dei permessi anche per gli utenti anonimi
  • Possibilità di configurare il backend per l’invio della posta anche con sistemi non SMTP
  • La versione minima di python supportata è 2.4

Per un piccolo errore nel file di configurazione che crea la documentazione verrà rilasciata la versione 1.2.1.

Via | DjangoProject

condividi condividi 0 commenti martedì 18 maggio 2010
PUBBLICITÀ
PUBBLICITÀ

Python 2.7 beta 1

pubblicato da Lpt on fire!


È stata da poco pubblicata la prima beta per Python 2.7 che dovrebbe uscire in versione stabile per giugno 2010.

In questa nuova versione sono state portate alcune delle novità di python 3.1 come la libreria I/O scritta in C per avere maggiori prestazioni, la nuova sintassi per “with” nidificati e l’aggiunta dei nuovi dizionari ordinati.

Questa sarà anche l’ultima major version per Python 2.x dopodiché entrerà in modalità “bug fix only”.

Via | Python

condividi condividi 0 commenti martedì 13 aprile 2010

Prevenire l'SQL Injection con sqlmap

pubblicato da Federico Moretti

Uno dei tentativi di “cracking” più diffusi per i siti web riguarda l’inserimento di codice “maligno” a livello di database, una pratica nota come SQL Injection per quanto riguarda i DBMS basati appunto sul linguaggio SQL: fortunatamente esistono diversi strumenti atti a identificare e rimuovere le intrusioni — uno di questi è sqlmap, scritto in Python.

Tra gli aspetti più apprezzabili di sqlmap (distribuito sotto licenza GPLv2) c’è la documentazione – arricchita d’interessanti digressioni sul tema dell’SQL Injection – che è davvero completa e corredata di video esplicativi. Oltre al download dei sorgenti sono disponibili pacchetti precompilati in formato .DEB ed .RPM oltre a un eseguibile per Windows.

Il supporto di sqlmap – di recente giunto alla versione 0.8 – ai database esistenti sembra non dimenticare proprio nessuno: si parla infatti di MySQL, Oracle, PostgreSQL e Microsoft SQL Server cui si aggiunge la possibilità di monitorare Microsoft Access, DB2, Informix, Sybase e Interbase. Un tool che ogni DBA dovrebbe tenere d’occhio.

condividi condividi 0 commenti martedì 23 marzo 2010

Comparativa Python WSGI Web Server

pubblicato da Lpt on fire!


In Python sono disponibili molti WSGI server ed ognuno è dotato di caratteristiche peculiari.

Nicholas Piël ha realizzato un’interessante comparativa utilizzando una piccola funzione WSGI su una macchina Debian Lenny/AMD64 con Python 2.6.4. Per ogni software sono state provate le risposte HTTP/1.0 e HTTP/1.1. I dati sono stati raccolti utilizzando autobench.

Quale sarà il migliore? In realtà Nicholas alla fine commenta correttamente che non esiste un solo e vero vincitore perché ognuno ha caratteristiche differenti. È importante notare, però, che la maggior parte dei server testati ha delle ottime prestazioni.

Continua a leggere: Comparativa Python WSGI Web Server

condividi condividi 0 commenti mercoledì 17 marzo 2010

PyPy raggiunge la versione 1.2

pubblicato da Lpt on fire!

Il team di sviluppo ha annunciato la versione 1.2 di PyPy,

Il leitmotiv di questa release sono le prestazioni. Secondo gli sviluppatori grazie al nuovo Just-In-Time compiler PyPy dovrebbe già essere più veloce di CPython e Unladen Swallow in test con applicazioni reali. Per tenere traccia dei miglioramenti prestazionali è stato creato un mini sito con grafici e statistici generati automaticamente con il codice nel repository.

Gli unici problemi del nuovo JIT sono una richiesta di memoria che potrebbe essere ancora alta ed il supporto solo per x86 a 32bit.

Via | MorePyPy

condividi condividi 0 commenti martedì 16 marzo 2010
Network Blogo