altre destinazioni

ultimi articoli

ultimi commenti

tag principali

categorie

archivi

Amici e famiglia

powered by

  • luambo 0.1.2320

copyright

  • © 2004-2008
    Ludovico Magnocavallo
    tutti i diritti riservati

Che noia...

5 feb 2008

8 commenti

tag

categorie

Aggiornamento. Marco mi ha scritto e ci siamo chiariti a vicenda. Lui ha un po' esagerato nel giudicare il mio commento originale, io nella reazione al suo post. Grazie Marco per essere uscito allo scoperto e avermi contattato direttamente, è stato un bel gesto che apprezzo. Avrò un carattere un po' burbero ma le cose poi si chiariscono se c'è la volontà.

Che noia quelli che pretendono l'Open Source sul lavoro di altri, senza capire minimamente perchè in certi casi non ha senso (un servizio è molto diverso da uno strumento, o da una applicazione), e soprattutto senza aver mai donato nulla alla comunità se non un po' di chiacchiere sul proprio blog. E per la cronaca, la mia affermazione “parlo per esperienza su altri progetti Open Source che ho creato o cui ho contribuito” non è “superficiale e spocchiosa”, caro il mio blogger. Prima di scrivere cazzate informati:

Tra l'altro, gli ultimi due progettini sono pezzi di BlogBabel. Certo non sono Linus Torvalds, ma tu dall'alto della comoda turris eburnea da cui sputi sentenze, che hai fatto in questi anni?

Bachechina annunci: lavoro Java e PHPday 2008

5 dic 2007

2 commenti

Se programmate in Java e siete alla ricerca di un lavoro part-time per i prossimi mesi, date un'occhiata all'annuncio pubblicato ieri sul blog di Enrica. Se invece siete uno di quei brontosauri che ancora usano PHP (Fullo perdonami ma non ho resistito), il phpDay 2008 potrebbe fare per voi.

Qix, versione 3.0

6 ott 2007

22 commenti

1 trackback

tag

categorie

Qualcuno se ne sarà già accorto: ieri sera ho girato la chiavetta e abbandonato finalmente Wordpress (+Lightpress) dopo 3 anni di onorato servizio. Il nuovo software che fa girare questo blog è scritto in Django, ed è la versione monoblog di quella che — spero — diventerà una piattaforma multiblog e multiutente stabile, facile da gestire e con qualche funzionalità interessante, come scrivevo un po' di tempo fa.

Mancano ancora parecchie cose, prime fra tutte il caching delle pagine pubbliche (ora sono tutte generate dinamicamente) e una console di amministrazione su misura, invece di quella standard di Django con qualche modifica che sto usando ora. Altre cose ci sono già (temi, plugin, trackback, weblogs ping, editor WYSYWIG, ecc.), e soprattutto l'applicazione è strutturata in maniera lineare, in modo da permettere a chi mastica un po' Python di estenderla facilmente. Credo infatti (e lo sostengo da tempo) che sia ora che qualcuno sviluppi una piattaforma alternativa a WordPress e MovableType, con un'architettura più semplice e moderna che garantisca prestazioni decenti e una facile estendibilità da parte di sviluppatori, designer e utenti. Non so se sarà la mia, ma intanto ci provo.

Il nuovo software segue la tradizione ufficiosa delle applicazioni Django (e di Django stesso) che dà alle applicazioni il nome di un musicista famoso: Django (Reinhardt), (Duke) Ellington, (Luis Armstrong detto) Satchmo. Il nome che ho scelto è Luambo, in onore di François Luambo Makiadi detto Franco, forse il più grande musicista di rumba congolese — genere musicale che da un po' di tempo accompagna le mie ore di coding.

Oltre al software ho cambiato anche layout: era tempo che volevo qualcosa di più semplice e leggibile, il vecchio layout a tre colonne (che pure ai tempi era abbastanza innovativo) va bene per un blog commerciale, ma mi stava sempre più stretto e insieme a Wordpress finiva per togliermi la voglia di scrivere. Il nuovo layout è stato abbozzato da me e rivisto da Antonio Cavedoni, che è tra i pochi in Italia in grado di coniugare web design e tipografia.

Se avete commenti o curiosità, fatevi sentire nei commenti. E abbiate pazienza se salta fuori qualche bug, vedrò di sistemarlo più velocemente possibile.

Visual Basic per il Web

5 set 2007

7 commenti

tag

categorie

So che la definizione farà storcere il naso a parecchia gente, ma sono sempre più convinto che uno dei maggiori punti di forza di Django sia di essere una sorta di Visual Basic per le applicazioni web. Un effetto forse non previsto della eccellente interfaccia di amministrazione preconfezionata, che rende di fatto Django un eccezionale toolbox per generare rapidissimamente interfacce di qualità per basi dati.

Per intenderci, quel tipo di applicazioni che in ambiente Enterprise vengono tradizionalmente realizzate (in ordine di schifezza crescente) con Visual Basic, Domino, Microsoft Access o quegli agghiaccianti fogli Excel salvati su una cartella condivisa che vi sarà capitato di vedere più di una volta (non c'è limite alle aberrazioni: giuro di aver visto un progetto in cui Excel veniva utilizzato per i diagrammi di flusso e di rete). Applicazioni che in Django sono semplicissime da sviluppare, con l'enorme vantaggio di avere una vera base dati relazionale alle spalle, e un'interfaccia web flessibile, intrinsecamente multiutente e scalabile.

Già che siamo in tema, per dopodomani mattina devo presentare una scaletta per un tutorial in italiano su Django, da comporre in tre-quattro articoli che verranno pubblicati su una nota rivista. Sto pensando di fare il tutorial sulla creazione di un blog, se avete consigli più originali o interessanti fatevi sotto.

Astoria, il ReST di Microsoft

2 mag 2007

1 trackback

tag

categorie

Codename "Astoria": Data Services for the Web è il nome di un progetto in incubazione da qualche mese, che rappresenta il primo vero passo di Microsoft verso ReST: "if you could provide a dead-simple way of programming against a relational data store that resides on the internet, what should the programming model look like? Could it be simpler than SOAP-based data access programming?"

Allo stato attuale, Astoria è un add-on per SQL Server che si appoggia sull'ADO.NET Entity Framework. Potete scaricarlo dalla pagina del progetto o, cosa forse più interessante, provarlo live su uno dei quattro database messi a disposizione sui server di Microsoft, tra cui un subset di Encarta. Post originale e commenti qui, via bytesized.

Chi ha bisogno di SOAP? Abbiamo MySQL

7 apr 2007

7 commenti

tag

categorie

MySQL è il vero dialetto universale, altro che SOAP.

I just pushed my first public release of my MySQL storage engine for AWS S3.

Mark Atwood

SphinxSE is MySQL storage engine which can be compiled into MySQL server 5.x using its pluggable architecure.

Sphinx search engine

The memcache_engine allows memcache to work as a storage engine to MySQL. This means that you can SELECT/UPDATE/INSERTE/DELETE from it as though it is a table in MySQL.

Tanget Software's memcache_engine

Eccetera...

Italia.it: il buco col baco intorno

26 feb 2007

4 commenti

3 trackback

tag

categorie

Guest blogger Neko, aka Numero Zero.

Sarà il logo bananiero, sarà l'accessibilità da edificio sovietico anni '60, sarà il presunto budget milionario, saranno i testi l33t ma non si riesce proprio a smettere di parlare di Italia.it, il portalone che dovrebbe promuovere l'immagine del nostro Paese all'estero, mentre invece riesce solo a promuovere le conigliette di Playboy. Non ci credi?

Guarda qua, allora: http://tinyurl.com/2gdhox

E che dire di questa interessante iniziativa di co-marketing con Google: http://tinyurl.com/ypsmyr

Spero almeno si facciano pagare due Euro per i click. E nel caso fosse gratis che importa, buco per buco almeno hanno avuto il buon gusto di scusarsi per i tanti soldi spesi a fronte di una realizzazione tecnica approssimativa: http://tinyurl.com/22cjfm

Che ci sia lo zampino di Silvio in tutto questo, sempre pronto ad approfittare di ogni passo falso della sinistra? Io dico di sì: http://tinyurl.com/27f3zr

Al di là del "giochino" innocente con URL e contenuti la cosa è piuttosto grave: trattasi di potenziale buco nella sicurezza tramite "JavaScript Injection" che, tra le altre cose, permette di modificare il contenuto di form e cookie. Visti i pezzi da novanta dietro a Italia.it (fra cui IBM, di cui ignoro il ruolo nel progetto ma che, ironia della sorte, proprio in questi giorni è in Tv con una serie di spot incentrati sulla sicurezza), l'augurio è quello di vedere questo e altri problemi sistemati una volta per tutte.

Per il momento invece non resta altro che offrire il nostro contributo partecipando al sondaggio apposito: http://snipurl.com/1bd25

J2EE sucks balls (e libevent per Python)

8 nov 2006

10 commenti

2 trackback

tag

categorie

I am sick and fucking tired of the shit that continuously goes wrong with that monstrous piece of bloatware that takes a zillion fucking days to write "hello, world" in. [...] J2EE will never see the light of day here again. And if the next Java project is not a resounding success, I know some people that better master C awful damned fast. I don't give a flying fuck if Java reduces my defect rate by 50%, if it increases my development time by a factor of six trillion, it's fucking useless.

Eccezionale commento su Slashdot (thanks Ryan) che esprime esattamente tutto quello che penso di Java e J2EE dopo alcuni anni di lavoro in ambienti "Enterprise". Giusto oggi sentivo parlare di crash incomprensibili della virtual machine sulle super-affidabili (secondo chi le vende) macchine virtuali zLinux che girano su processori dedicati su mainframe...

Passando ad argomenti più allegri, per rimediare allla fame di risorse della classifica dei blog (che comunque grazie uno sponsor generoso riceverà due bei server nuovi fra qualche giorno per sostituire il vecchio e stanco Celeron 900) sto riscrivendo l'architettura di backend. L'idea generale è quella di usare parallel per distribuire i task, specializzando i processi. Le interazioni con la rete (tutte GET e POST HTTP) saranno gestite da un singolo processo, che utilizza socket asincroni tramite libevent e pyevent.

Sto finendo la prima versione del client HTTP basato su libevent/pyevent, e sono assolutamente sbalordito dalle performance: su un portatile mediocre (credo non arrivi a 2Ghz) su cui girano sia il server che uso per i test (lighttpd) che il client che sto sviluppando, riesco a fare più 3000 GET al secondo della pagina di default di lighttpd. Dopo avere aggiunto il supporto ad alcune funzionalità indispensabili di HTTP/1.1 come il chunked transfer encoding e il parsing degli header, la cifra è scesa un po' ma è sempre sulle 2000 richieste al secondo. Libevent è veramente incredibile, e facilissima da usare anche per chi è alle prime armi con il network programming.

Se vi interessa approfondire date un'occhiata ad apricot, un server HTTP supersemplice in Python che va come un missile, o questo altro server che ha performance simili. Avendo tempo sarebbe bello trasformarli in server stabili e con le funzionalità che servono per usarli in produzione.

Post scriptum per il duo di Treviglio, non ho dimenticato il sito, settimana prossima dovrei avere un prototipo usabile. Spero non sia troppo tardi. Ah, e spazio per ospitarlo se serve.

1/6