How to use Cache Headers to speed up your website with Django and CloudFlare

Since I started working at bigger startups, like MinbilDinbil, I had to face the problem of providing pages to a larger amount of users every day. For this reason, it is really important to use a CDN service like CloudFlare, in order to provide a good user experience on our website: we don’t want our clients wait too much to load the homepage! How do we do that? The author of GNU grep once said:

The key to making programs fast is to make them
 do practically nothing

Mike Haertel, Sat Aug 21 2010. Source

So I decided to integrate our django servers with CloudFlare, improving the cache. According to their documentation, to enable the cache, the backend needs to provide specific headers in the HTTP response, like Cache-Control, Expires and others: by using these headers both the browsers and the CloudFlare servers will cache the file for a specific amount of time.

cf-logo-v-rgb

For this purpose, I created an open source customizable middleware to provide cache headers in a smart way. It is called django-smartcc (standing for “smart cache control”). Once installed, it will start considering not authenticated requests as public and disabling the cache when the user is logged in. You can read here the instructions to install it too:

pip install -U django-smartcc

Continue reading How to use Cache Headers to speed up your website with Django and CloudFlare

500$ di Soddisfazioni

Circa 6 mesi fa lavoravo ad un progetto abbastanza grosso, che tecnicamente parlando, aveva bisogno di scalare in modo del tutto automatico. Per questo motivo ho creato una libreria Python per interagire con le API di DigitalOcean, e così riuscire a soddisfare questa mia esigenza.  Nonostante la libreria fosse semplice, tramite GitHub in poco tempo ho avuto un riscontro positivo e diverse persone mi hanno aiutato a migliorare la libreria.

Quando ho letto questo tweet, ho pensato ci fosse un errore. Poi ho capito e sono scoppiato in un balletto isterico pieno di gioia 😀

Non mi aspettavo minimamente una cosa del genere: ho fatto qualche cosa di diverso, di utile e Digital Ocean, come già Telecom Italia, ha deciso di aiutarmi a continuare questo mio percorso.

Per me è molto importante avere un riscontro da parte degli altri. Quello che faccio ha più importanza di quello che dico… Anche se ci sono persone che preferiscono una frase o un titolo d’effetto, piuttosto che agire e cambiare veramente tutto.

…e poi non dover pagare i server per almeno 4-5 anni è molto utile per chi, come me, vuole contribuire e fare le cose. Sfrutterò al meglio questi soldi per i miei progetti personali, soprattutto quelli con licenze OpenSource 🙂

Perché adoro l’OpenSource: python-digitalocean

Oggi è successa una cosa che mi ha fatto felice. Da qualche mese mi sono spostato su Digital Ocean. Non ho scritto nulla su questo blog perché prima di dare un giudizio complessivo ho preferito aspettare qualche mese.

Digital Ocean, anche se non è avanzato come la concorrenza, si può considerare come una valida ed economica alternativa ad Amazon EC2. Una delle cose che ho più apprezzato è la piattaforma di FeedBack con la quale molti clienti suggeriscono features. Io ho proposto il pagamento in bitcoin. Dopo un po’ di tempo di utilizzo ho ricevuto questa email:

Digital Ocean Email
Digital Ocean Email

Dato che mi stavano coccolando per bene, ho deciso di ricambiare creando un semplice modulo python per gestire le macchine sulla loro piattaforma tramite API: python-digitalocean( il codice è  su GitHub ).

Poi la magia! Questa mattina, mi sono svegliato con il buon umore in quanto avevo ricevuto una pull request per delle migliorie che D. Yu aveva fatto al codice.

Adoro l’open source proprio per questo motivo, perché altre persone possono migliorare il codice e far crescere il progetto. Da quando ho abbandonato il mio progetto del sistema operativo, nessuno più mi ha fatto pull request. 🙂

Credo che sia la cosa più bella che mi sia capitata oggi! Credo che rimarrò su Digital Ocean per molto tempo 🙂

Telecom Italia lancia Cubomusica

Telecom Italia non vuole restare indietro e nonostante sappia benissimo quanto sia potente la concorrenza, si lancia nel mondo della musica: Nasce Cubomusica.

Cubomusica Telecom Italia
Cubomusica Gratis fino al 10 giugno 2011

Cubomusica è il nuovo servizio offerto da Telecom Italia, che permette a tutti i clienti di poter accedere dal PC ad una libreria musicale on-line. Grazie a degli accordi diretti con grandi case discografiche italiane, il servizio permette l’ascolto in streaming di più di 4 milioni di brani! Ma di cosa si tratta esattamente?
Continue reading Telecom Italia lancia Cubomusica