Ridimensionare un gran numero di immagini con Linux

Il problema

Ridimensionare un immagine è un’operazione semplice: esistono molti software in grado di farlo. I più conosciuti sono Gimp e Photoshop. Ma qual’è la giusta procedura per ridimensionare un gran numero di immagini?

Immaginate di dover preparare le anteprime per una galleria o di dover ridimensionare tutte le immagini da inserire in una presentazione o, ancora, di dover ridurre delle foto da mandare via email, e così via.

Aprire le immagini con Gimp o Photoshop e ridimensionarle una ad una sarebbe una follia. Come si può eseguire questa operazione in modo semplice e senza stress?

La soluzione

Utilizzare la riga di comando di Linux. Ridimensionare più immagini con Linux è molto semplice se si utilizza la suite ImageMagick.

Continue Reading

Resize multiple images using Linux

Resize an image is a simple operation: there are many software able to do that. The most obvious are Gimp or Photoshop. But what’s the right procedure to resize lots of images?

Imagine you have to prepare thumbnails for a gallery or resize all images to insert into a presentation or, again, reduce photos to send them by email, etc.

Open each image with Gimp or Photoshop and resize them one by one is foolish. How can we perform this operation in a simple way and without stress?

The solution

Use Linux command line. Resize multiple images with Linux is very simple by using ImageMagick suite.

First of all, let’s install ImageMagick that includes lots of tools to manipulate images. To do that, execute following command in terminal window:

Continue Reading

Processi PHP con Gearman e Supervisor

Problema

Spesso in un progetto PHP capita di dover eseguire operazioni in modo asincrono. Alcuni esempi sono: lavorazione di code email, indicizzazione di dati, calcoli che richiedono lunghi tempi di elaborazione.

Prassi comune è gestire tali operazioni utilizzando cron per eseguire processi in backgroud. Tuttavia, utilizzare cron richiede espedienti per evitare l’accavallemento delle esecuzioni e ci costringe ad implementare procedure specifiche e meccanismi di stoccaggio dei dati necessari per l’elaborazione.

Soluzione: Gearman + Supervisor

La soluzione che concerne Gearman e Supervisor, invece, non richiede alcun meccanismo di data storage e fornisce un modo molto semplice per sviluppare processi in PHP.

Continue Reading

PHP jobs with Gearman and Supervisor

The problem

Often in a PHP project there could be operations that need to be executed asynchronously. Some example are: processing mail queues, indexing data, computation that requires long elaboration time.

A common behavior is handle those operations by using cron to execute processes in background. However, using cron requires expedients to avoid cross executions and forces us to implement some specific procedures and mechanism to store data needed to elaborate.

Solution: Gearman + Supervisor

The solution that involves Gearman and Supervisor, instead, don’t require any kind of data storage mechanism and supply a very simple way to develop processes in PHP.

Continue Reading

Zend Framework 3.0 branch started!

Yesterday, Evan Coury, Zend Framework contibutor, announced start of Zend Framework branch.

Development goals will be merged between ZF team ideas and community suggestions that will be collected in this topic. Anyway, Evan immediatly specifies that development will be focused on avoid dramatic migration as was for transition from ZF1 to ZF2.

For all developers that use Zend Framework for their projects, this is the best opportunity to take part to development process and be heard about their needs: power of Open Source.