Python common functions

Just in case somebody will have to do the same thing that I did. I had to extract everything inside parenthesis in a line. For example, if I have a line like ‘US president (Barack Obama) met with …’ and I want to get only ‘Barack Obama’ this is solution:

import re
regex = '.*\((.*?)\).*'
matches = re.search(regex, line)
line = matches.group(1) + '\n'

If you wish to extract inside square brackets, regular expression become:
regex = '\[(.*)\]'

Caine Best-practice

CAINE Live CD uses the USA keyboard layout.

We suggest to change the layout using the program “Keyboard Preferences” in System -> Preferences, in the GNOME menu or using the command “sudo setxkbmap -layout xy” (xy = “it”, “gb”, “de”…) in the command line. BTW there is a launcher on the desktop.
In the CAINE TEXT MODE only, change the keyboard layout by

“sudo loadkeys xy” (xy = “it”, “gb”, “de”…)

Andiamo a vedere le partizioni del pc

fdisk -l

Instructions:

Left-click the disk icon to mount a device.
Right-click the disk icon to change the system mount policy.
Middle-click will close the mounter application. Relaunch from the menu.

The mounted devices will not be affected by mount policy changes. Only subsequent mounting operations will be affected.

– If the user decides to mount a device via terminal, he can use the “mount” command but all the mount options must be specified.
– If the user wants to mount and write on an NTFS media should instead use the “ntfs-3g” command (e.g., $ sudo ntfs-3g -o rw /dev/sda1 /media/sda1).

sudo ntfs-3g -o rw /device-path /your-mount-point

You can redirect the output on an RW mounted device in these ways:

  • Terminal window –> sudo su –> (eg. fdisk -lu > /media/sdb1/fdisk.txt)
  • Terminal window –> output redirect in, for example: /home/caine, then sudo cp fdisk.txt /media/sdb1
  • sudo bash -c “fdisk -lu > /media/sdb1/fdisk.txt”

The ext3 driver will be ignored when ext2 and ext3 partitions are mounted in the future and the ext2 driver used instead. This protects any ext3 partitions from a forensic point-of-view. Ext2 does not use journaling, so when an ext3 partition is mounted, there is no danger of modifying the meta-data when increasing the count inside said journal.
Applying a special patch (Maxim Suhanov’s patch) we fixed the bug, that changed the journal of the ext3/ext4 file system, when the computer was switch off not using the shutdown procedure. Fixed in the fstab: forbidding the auto-mounting of the MMCs and put a control for the “esotic names” like /dev/sdad1

Bash Scripts Tools directory:
the tools MUST be launched by sudo sh script_name.sh

Check ‘foremost.conf’ you can add your own definitions there for headers, also see the magic file ‘whereis magic’, it has headers to be able to identify file types:

Code:
#------------------------------------------------------------------------------
# sql:  file(1) magic for SQL files
#
# From: "Marty Leisner" <mleisner@eng.mc.xerox.com>
# Recognize some MySQL files.
#
0	beshort			0xfe01		MySQL table definition file
>2	byte			x		Version %d
0	belong&0xffffff00	0xfefe0300	MySQL MISAM index file
>3	byte			x		Version %d
0	belong&0xffffff00	0xfefe0700	MySQL MISAM compressed data file
>3	byte			x		Version %d
0	belong&0xffffff00	0xfefe0500	MySQL ISAM index file
>3	byte			x		Version %d
0	belong&0xffffff00	0xfefe0600	MySQL ISAM compressed data file
>3	byte			x		Version %d
0	string		 	\376bin		MySQL replication log

Now just add a new entry to the ‘foremost.conf’ follow the other examples there.

 

VirtualBox Best Hard disk

Be able to use dynamic sizing

VDI, VMDK, and VHD all support dynamically allocated sizing. VMDK has an additional capability of splitting the storage file into files less than 2 GB each, which is useful if your file system has a small file size limit.

Be able to have snapshots

All four formats support snapshots on VirtualBox.

Be able to move my virtual machine to another OS or even another free virtualization solution with minimal effort (probably something that would run fine on Ubuntu).

VDI is the native format of VirtualBox. I didn’t search for any other software that supports this format.

VMDK is developed by and for VMWare, but Sun xVM, QEMU, VirtualBox, SUSE Studio, and .NET DiscUtils also support it. (This format might be the most apt for you because you want virtualization software that would run fine on Ubuntu.)

VHD is the native format of Microsoft Virtual PC. This is a format that is popular with Microsoft products.

Performance

The format should not affect performance, or at least, performance impacts are negligible.

The factors that influence performance are:

Your physical device limitations (much more noticeable on a hard disk drive than a solid-state drive… Why?)
expanding a dynamically allocated virtual disk drive (write operations are slower as the virtual disk expands, but once it’s large enough, expanding should happen less)
virtualization technology (hardware vs. software; hardware virtualization helps VirtualBox and improves the speed of virtual operating systems)
the fact that you are running a virtual operating system. Performance is always slower than running an operating system on the host because of the virtualization process.

VMDK seems to offer the panacea I’ve been searching for in terms of incremental backups: I no longer have to back up an enormous, monolithinc VDI for a single bit change in the guest.

VDI, is the native format of VirtualBox;
VMDK (VMWare format) will increase compatibility with other virtual machine software.

VirtualBox will run fine on Ubuntu, so if the goal is Windows/Ubuntu interoperability, VDI would be a perfectly valid choice.

Both formats will fulfill your requirements.
As for the other two, VHD is a Microsoft-developed format, and HDD is an Apple-developed format; these are both proprietarily-licensed, so limit cross-platform support; I wouldn’t recommend them.

However a more universal option might be to use the VirtualBox File/Export function to create an “Open Virtualization Appliance” .ova file that can then be imported into VMware. With that approach, you can port to any virtualization system that supports .ova without caring what disk image format you use in VirtualBox.

If you need to export from the same VM at regular intervals, e.g. every day, that could be a pain. But if you only move to a different technology occasionally, it should be fine.

If you have a .vdi file already, You can test whether this works without having to create a new virtual machine. Export it to a .ova, then try importing with vmware.

Come evitare che le e-mail vengano intercettate dai filtri anti-SPAM

COME I FILTRI ANTI-SPAM BLOCCANO LE E-MAIL
Per prima cosa ribadiamo che lo SPAM danneggia internet, le aziende, le persone e i siti che agiscono nel rispetto dei propri utenti, da qui il motivo di questa mini-guida: tutelare chi (con estrema facilità) rischia di finire indebitamente nelle grinfie di filtri anti-SPAM (tutt’oggi ancora poco accurati).

Premesso questo, passiamo all’analisi dei “discriminanti” che separano ciò che appare come SPAM da ciò che, al contrario, così non appare. Ogni filtro anti-SPAM opera in modo differente dagli altri ma i sistemi di valutazioni sono fondamentalmente tre:

  • Analisi della e-mail – Ogni elemento costituisce un’informazione utile che sancisce la probabilità che le nostre comunicazioni siano o meno moleste; tra i parametri più comunemente analizzati troviamo: gli header, l’oggetto, il corpo del messaggio, l’IP di provenienza, il dominio di riferimento, la frequenza di invio, il numero di invii nel tempo, la presenza o meno sulle blacklist, il destinatario (ecc.).
  • Analisi umana – Dal professionista all’utente comune chiunque può segnalare un dato indirizzo o un dato messaggio come SPAM. Nel primo caso, quello dell’esperto, è difficile che cadere in errori di valutazione, mentre nel secondo, quello dell’utente casual, errori, malizia e giudizi superficiali sono sempre in agguato. Non capita di rado che una newsletter regolare (con istruzioni per la deiscrizione, ecc.) venga bollata come SPAM per una semplice comodità del destinatario che, non avendo interesse ad informarsi su come essere rimosso, ignora contratti e accordi e blocca la comunicazione.
  • Liste altrui – Si tratta delle famose whitelist (indirizzi e server attendibili), blacklist (indirizzi e server non attendibili) e greylist/liste temporanee (indirizzi e server non attendibili fino a conferma). Se da un lato è facile finire in una blacklist, dall’altro è assai complesso entrare in una whitelist: occorre aderire rigorosamente alle norme imposte dal fornitore di turno e mantenere un profilo cristallino. Non tutti i filtri anti-SPAM impiegano le liste.

COME EVITARE DI FAR FINIRE UNA E-MAIL TRA LA POSTA INDESIDERATA
Senza scendere in dettagli esageratamente tecnici ecco alcuni consigli su come raggiungere onestamente i propri destinatari e approdare alla loro casella di posta in arrivo:

  • Testo o HTML? – Se non è strettamente necessario (ad esempio dal punto di vista del marketing) è sempre meglio inviare e-mail testuali (in genere vengono viste meglio dai filtri anti-SPAM). Se optiamo per l’HTML, teniamo presente che alcuni client web sottopongono a replace (sostituzioni) il codice inviato: è perciò importante che il markup sia valido e conforme alle norme del W3C (con tanto di title e doctype).
  • I link – Nei messaggi HTML i testi dei collegamenti ipertestuali esposti come url devono corrispondere all’indirizzo effettivo di destinazione (es. se il link nell’attributo “href” porta a “http://www.sito.com/sez1/” non dobbiamo scrivere “http://www.sito.com/” bensì “http://www.sito.com/sez1/”). Controlliamo inoltre che tutti i collegamenti siano funzionanti, che non siano numerici (es. “http://123.45.67.89”) e che non superino la decina.
  • Gli attributi dei link – Nei messaggi HTML tutti gli attributi dei link vanno messi dopo aver esplicitato gli “href”. L’attributo “target” deve essere impostato su “_blank”. L’attributo “title” deve essere sempre esplicitato.
  • A chi scrivere – Non inviamo le nostre e-mail ad indirizzi inesistenti, scaduti o che le rispediscono al mittente le nostre comunicazioni; che inviamo 1 o 10.000 e-mail dobbiamo dimostrare di sapere a chi stiamo scrivendo e non di “sparando nel mucchio”.
  • Oggetto e corpo del messaggio – Non scriviamo in maiuscoletto, con spazi tra le lettere (es. “c a s a”), non lasciamo oggetto o messaggio vuoti ee eliminiamo gli spazi bianchi superflui. Se possibile personalizziamo il testo per ciascun destinatario (inserendo nickname, nome, cognome, data, ora, ecc.). Non partiamo  nell’oggetto o nel testo del messaggio con numeri o peggio cifre in denaro.
  • Specifiche dell’oggetto – Nell’oggetto della e-mail è utile non dilungarsi oltre le 4-5 parole per un totale di 35-40 battute al massimo.
  • Specifiche del corpo del messaggio – Non iniziamo il messaggio con la parte a sinistra dell’indirizzo del destinatario (es. con “Egregio Mario .rossi” nello scrivere a “mario.rossi@lamail.com”). Non specifichiamo che la legge sulla privacy è stata rispettata, dovrebbe essere naturale (il farlo è tipico della posta indesiderata).
  • Parole da evitare – Non scriviamo parole come “viagra”, “offerta imperdibile”, “hai vinto”, “test”, “free”, “guaranteed”, “hello”, “prova”, “lavoro” (ecc.). Limitiamoci anche in termini di punteggiatura (evitiamo di esagerare con i punti di domanda e quelli esclamativi). Non inseriamo solo testo cliccabile ma anche testo normale.
  • Parole positive – Scriviamo parole come “list”, “news”, “in review”, “newsletter” (ecc.). Usiamo date e ore in formato inglese. Nelle e-mail HTML al posto delle lettere accentate usiamo i relativi codici (es. “&egrave;”), in quelle testuali solamente apostrofi.
  • Variazioni – Se possibile non mandiamo e-mail uguali a troppe persone, tentiamo piuttosto di personalizzarle quanto più ci è possibile (sia nell’oggetto che nel copro del messaggio). Usiamo nomi, indirizzi, date, personalizzazioni (ecc.).
  • Formattazione – In una e-mail HTML conviene evitare di formattare in modo esagerato il testo nonchè di scrivere in rosso o blu (colori largamente impiegati dagli SPAMMER). I CSS (se indispensabili) vanno specificati inline e lo sfondo del testo deve essere bianco. Il layout deve risultare liquido e tabellare (niente posizionamenti assoluti). Le tag più consone sono quelle del markup XHTML. Per andare a capo usare le tag “<br>” e non i paragrafi “<p>”.
  • Niente complicazioni – Evitiamo: tutte le tecnologie poco diffuse, pesanti, le animazioni Flash, gli script Java, Javascript, i form, le tag input e select. Evitiamo l’uso di pixel di tracciamento per sapere se la e-mail è stata aperta/recapitata o meno: si tratta di indici poco sicuri e utilizzati in prevalenza dagli SPAMMER.
  • Le immagini – Il peso di ciascuna e-mail inviata non dovrebbe superare i 50Kb (immagini incluse). Per le immagini grandi è utile che siano spezzettate e che non siano allegate ma online. Il messaggio deve essere leggibile anche senza immagini. Niente immagini di sfondo, niente nomi di file generici (es. “a.jpg”) o contenenti spazi. Specifichiamo l’attributo “alt” e “title” per ogni immagine.
  • Usi e abusi – Occorre prestare particolare attenzione all’evitare che terzi, con o senza il nostro consenso, (rappresentanti, SPAMMER, clienti, amici, ecc.) utilizzino i nostri server/domini/account a scopo di SPAM. A tal proposito può essere d’aiuto specificare sul proprio sito un’area dedicata alle segnalazioni di abusi nonchè effettuare controlli a campione.
  • L’aspetto formale – Cerchiamo di scrivere solo a chi ci ha dato consenso esplicito (tramite accettazione di un contratto) e di specificare sempre le modalità di deiscrizione; in questo modo evitiamo di essere segnalati come SPAMMER e manteniamo i contatti con le persone che davvero sono interessate a ciò che proponiamo.
  • L’aspetto umano – Cerchiamo di non essere mai inopportuni, di offrire contenuti di valore (utili, interessanti e/o divertenti), non dobbiamo imporci ma farci scegliere (ecco alcuni consigli su come scrivere una newsletter efficace).
  • Modalità di invio – L’indirizzo e-mail del mittente visualizzato deve corrispondere a quello di effettivo invio, non deve comparire in nessuna blacklist e deve essere univoco (evitiamo di creare un mittente casuale per ogni e-mail). Se ci è possibile non scordiamo di impostare il record SPF (per farci autenticare come mittenti validi).
  • Il server di invio – La reputazione dei server è molto importante. Mai inviare grossi quantitativi di e-mail da un IP non statico, da un server open relay (senza autenticazione), o ancora da un server già inserito in blacklist; è altresì importante mantenere i record DNS inversi validi per gli indirizzi IP da cui inviamo (devono puntare al nostro dominio). L’HELO deve infine corrispondere all’MX impostato nei DNS.

Seguire queste norme naturalmente non garantisce un recapito certo (ogni client ha parametri e filtri differenti) ma riduce di un buon 95% la probabilità di essere ingiustamente intercettati. Va infine detto che non tutti i parametri descritti sono determinanti, anzi, queste indicazioni vanno prese come piccole gocce che da sole non danno problemi ma che insieme possono riempire  e far traboccare il “bicchiere”. A coronare un buono studio su come non essere catalogati come SPAM non può non mancare una seria e ampia fase di test su  più client (Gmail, Outlook, Yahoo, Hotmail, ecc.).

Using PHP to change file permissions on the webserver

Symptom:

  • “Permission Denied” When trying to work with your site over FTP.
  • You cannot modify directories inside the /files folder that were created by server program.

Solution:

  • Tell Apache to give you back control of your files.

One side effect of having files created by server program (eg the image module), is that your user account might not have ownership of them any more. And you might not be able to delete the or move them around.

There is a workaround though. You can create a small PHP script containing the commands you want to carry out and upload it to the server. Once uploaded, you can run it from your web browser by entering the URL for it. The script will run as the user account the webserver runs as. Be sure to remove the script after you have used it though.

simple case:

Important: this code should only be used if you remember to delete it immediately after use. As above, its use may put your site into an insecure state.

 

<?php
file_fix_directory(dirname(__FILE__));
function file_fix_directory($dir, $nomask = array('.', '..')) {
if (is_dir($dir)) {
// Try to make each directory world writable.
if (@chmod($dir, 0777)) {
echo "<p>Made writable: " . $dir . "</p>";
}
}
if (is_dir($dir) && $handle = opendir($dir)) {
while (false !== ($file = readdir($handle))) {
if (!in_array($file, $nomask) && $file[0] != '.') {
if (is_dir("$dir/$file")) {
// Recurse into subdirectories
file_fix_directory("$dir/$file", $nomask);
}
else {
$filename = "$dir/$file";
// Try to make each file world writable.
if (@chmod($filename, 0666)) {
echo "<p>Made writable: " . $filename . "</p>";
}
}
}
}
closedir($handle);
}
}
?>

 

Il calo dei siti web aziendali. Servono ancora?

Superato dai social media, il sito aziendale vive un momento di difficoltà. «Non “uccidetelo”, ma fatene l’hub della vostra presenza digitale»: è il consiglio che arriva da un articolo di Forbes, dove però si prende atto che i segnali di crisi esistono

Già un paio di anni fa si iniziò a parlare del declino di queste pagine. Poi è arrivato il calo del 70% del traffico web e altri segnali ancora più forti. Il traffico del sito di Coca-Cola, per esempio, è sceso di oltre il 40% in 12 mesi e quello di Nabisco di quasi il 74% in un anno.

Uno studio condotto da WebTrends ha poi confermato che la maggioranza di Fortune 100 siti web (68%) ha registrato una crescita negativa, con un calo medio del 23% di visitatori unici, mentre  il traffico di Facebook è chiaramente in crescita.

E’ giunto il momento di chidere i siti e traslocare su Fb? In molti hanno risposto di no. Come quel cliente di una media agency che ha detto di non voler limitarte la sua presenza a quello che ha definito uno “stato autoritario”. Perché non bisogna dimenticare che su Fb non si è padroni a casa propria. Le regole del gioco possono cambiare. E un’altra piattaforma può soppiantare quella al momento vincente.

E allora la ricetta prevede che il sito di venti l’hub della presenza dell’azienda nel mondo digitale, mobile compreso. Contemporaneamente bisogna sempre essere presenti sui social media cercando di sfruttare  le caratteristiche di ognuno.

Così per Fb è fondamentale curare con attenzione l’immagine principale della pagina. Deve essere bella, accattivante e pertinente. La timeline deve raccontare una storia, ricordare gli eventi aziendali con l’obiettivo di creare quel coinvolgimento necessario perché la presenza sui social media abbia senso.

Davia Termin, autrice dell’articolo ed esperta di strategia online, parla anche di strategia seguita minuto per minuto in modo da adeguare in tempo reale i contenuti ai gusti e alla richieste degli utenti.

In questo è necessario utilizzare le app di Fb che permettono di avere una maggiore flessibilità dei contenuti e ospitare gare e iniziative promozionali interessanti per i brand.

Non bisogna essere timidi. Anche le piccole aziende che iniziano il loro viaggo su Fb devono cercare subito di aumentare la massa critica dei loro fan. Si parte dai dipendenti e dai loro amici per allargare poi il raggio d’azione.

L’immagine di copertina è importante anche per Linkedin dove  bisogna fare anche un uso accorto delle tab “”Approfondimenti”, “Servizi”, per esempio) che servono a diversificare la propria presenza.

Includete anche i vostri dipendenti e assicurategli anche risorse utili per il loro lavoro. Create un gruppo e incoraggiate dipendenti e stakeholder ad aderire. In questo modo le persone potranno avviare discussioni o brainstorming. Il gruppo però deve essere chiuso in modo da evitare spammer e altri input estranei. A questo punto però non dimeticatevi della pagina Linkedin perché sarà importante partecipare all discussioni, far sapere il punto di vista dell’azienda.

Nel caso di Google+ i consigli sono simili a quelli di Fb con l’aggiunta che è importante sincronizzare il tutto con Youtube, un ulteriore canale per i messaggi aziendali.

Tutte queste presenze dovranno poi essere armonizzate nel sito istituzionale che dovrà comunque avere contenuti dinamici e farsi trovare sui motori di ricerca. Forse non sarà più la home page della presenza sul web di un’azienda, ma luogo “sicuro” dove lanciare i propri messaggi poi declinati sulla altre piattaforme.

 

Fonte: ict4executive.it

Mobile Marketing in Italia, è l’ora di una vera strategia multicanale

Nel 2013 il Mobile Advertising nel nostro Paese è cresciuto del 129% superando i 200 milioni di euro, mentre milioni di utenti smartphone mostrano forte interesse per la pubblicità e i coupon ricevuti sui propri device. «La trasformazione delle abitudini dei consumatori impone un ridisegno completo dei punti di contatto con il cliente, in cui il Mobile gioca un ruolo chiave». I responsi della nuova edizione dell’Osservatorio Mobile Marketing e Service del Politecnico di Milano

La rivoluzione Mobile in Italia conta ormai su numeri di massa: 37 milioni di smartphone, e 27 milioni di persone che li usano per navigare su internet almeno una volta al mese, ma il 73% (tre su quattro) naviga ogni giorno, in media per 75 minuti: una quantità di tempo che in un solo anno è cresciuta del 25%.

A tutto ciò corrisponde una buona predisposizione dei consumatori in mobilità per l’interazione con il mondo del business: il 71% usa lo smartphone all’interno dei negozi (i cosiddetto “showrooming”), soprattutto per confrontare i prezzi (42%) o cercare più informazioni sui prodotti (25%), il 47% ha ricevuto buoni sconto su Mobile e, tra questi, quasi la metà ha valutato l’esperienza molto positiva (dando un voto da 9 a 10), mentre l’85% ricorda di aver visto annunci pubblicitari su smartphone e il 51% li ha cliccati almeno qualche volta. Un trend, quest’ultimo, che trova conferma nell’esplosione del mercato del Mobile Advertising, la pubblicità su Mobile, che considerando il solo formato smartphone, in un anno è più che raddoppiato nel nostro Paese (+129%) superando i200 milioni di euro in valore.

Questi i principali dati della nuova edizione dell’Osservatorio Mobile Marketing e Service della School of Management del Politecnico di Milano, presentato proprio stamattina al Campus Bovisa dell’ateneo milanese in un affollato convegno. Dati certamente positivi, che però, avvertono i ricercatori del Politecnico, devono segnare una discontinuità: è il momento in cui occorre smettere di considerare il Mobile come un canale a sé stante, e sfruttarne appieno le caratteristiche del tutto uniche all’interno di una nuova e completa strategia di relazione con il cliente.

«La trasformazione delle abitudini dei consumatori indotta dal Mobile impone a sempre più aziende un ridisegno completo dei punti di contatto con il cliente, dal punto vendita, ai canali promozionali, ai mezzi pubblicitari – ha detto alla presentazione del Report Giuliano Noci, Responsabile Scientifico dell’Osservatorio Mobile Marketing & Service -. E all’interno di tale ridisegno il Mobile gioca un ruolo chiave per la sua pervasivitàsia in termini di diffusione, sia di contesti e momenti d’uso (lo smartphone è sempre con noi), ma soprattutto per la sua capacità di potenziare gli altri mezzi. Ma per realizzare appieno i benefici potenziali dalle iniziative Mobile diventa necessario inserirle in una più ampia strategia multicanale».

Se questo “mobile CRM complessivo” è ancora in gran parte dei casi un traguardo da raggiungere, però, la ricerca mostra chiaramente un crescente interesse e livello di adozione da parte delle imprese in Italia di iniziative Mobile in tutto l’ambito che va dalla pubblicità (Mobile Advertising) alle promozioni (Mobile Promotion) all’uso di App e Mobile site, interni o di terze parti.

«L’impatto della diffusione del Mobile passa così dai consumatori alle aziende e a tutto l’ecosistema dei servizi di marketing e comunicazione, imponendo a centri media, concessionarie, editori e agenzie di comunicazione un ripensamento del ruolo, dell’offerta di contenuti editoriali, dell’integrazione tra questi e i contenuti pubblicitari e della continuità di esperienza su più mezzi, nonché dei rapporti tra i diversi attori», ha osservato Andrea Boaretto, Responsabile della Ricerca dell’Osservatorio Mobile Marketing & Service.

 

Display e Keyword Advertising, crescite a tre cifre

Scendendo più in dettaglio nel mercato del Mobile Advertising, nel 2013 in Italia il valore è cresciuto del 129%, raggiungendo così un valore stimato di 204 milioni di euro. Un dato che, scorporando la quota relativa alla messaggistica, rappresenta il 10% di tutti gli investimenti pubblicitari su internet e il 3% dell’intero mercato pubblicitario in Italia. Incrementi impressionanti si registrano in particolare sia per la componente di Display Advertising (+127%), sia per quella di Keyword Advertising (+237%), mentre per quanto riguarda i player del settore, Google e Facebook da soli rappresentano circa il 70% dell’intero mercato, con gli altri che, pur crescendo a due cifre, rappresentano ancora quote piuttosto piccole: altri ad-network, player specializzati in Mobile Advertising, concessionarie degli editori premium.

Per quanto riguarda invece la Mobile Promotion, le aziende stanno sfruttando – o progettando di sfruttare – le opportunità di dematerializzazione (volantini, cataloghi, carte fedeltà, coupon), personalizzazione, e “gamification” offerte dal Mobile. «Ad oggi, solo poco più del 10% dei Retailer italiani che hanno sviluppato un’App ha già inserito servizi di Mobile Couponing, ma ci aspettiamo nel 2014 un allargamento dell’offerta – ha spiegato Marta Valsecchi, Responsabile della Ricerca dell’Osservatorio Mobile Marketing & Service -. Non si tratta solo di dematerializzare i Coupon, ma di ripensare, grazie al Mobile, i modelli di distribuzione degli stessi, alla luce delle opportunità offerte dal Mobile: personalizzazione delle offerte, geo-localizzazione in prossimità o dentro il punto vendita».

Evidentemente, continua Valsecchi, questo richiede un ripensamento complessivo delle strategie di marketing legate a promozioni e fidelizzazione, e quindi importanti investimenti, ma visti i cambiamenti in atto tra i consumatori nel processo d’acquisto, in alcune aziende in particolare, tali dinamiche sono inevitabili, soprattutto se si considerano i benefici, che riguardano sia i produttori, sia i retailer, sia i consumatori. Quanto allagamification, cioè la capacità di indurre i consumatori a determinati comportamenti (condivisioni su social network, check-in in punto vendita, ecc.) premiandoli con punti fedeltà, il report parla ancora di sperimentazioni e adozioni a rilento.

 

App e Mobile Site: i casi (molto diversi) del Retail e del Largo consumo

Infine un ultimo punto riguarda l’approccio delle aziende ai “Mobile Asset”, e cioè App e Mobile Site. Per interagire con i consumatori è sempre più diffuso il ricorso a una o entrambe queste soluzioni, con penetrazioni in alcuni settori – come il Retail – già oltre il 50%. Gli obiettivi sono molto vari, e per dimostrarlo i ricercatori propongono un confronto tra il mondo Retail e i produttori del Largo consumo.

Per quanto riguarda il Retail, vi è una forte focalizzazione sui servizi di pre-vendita, come store locator, volantino e catalogo prodotti; il 100% delle App e dei Mobile site include almeno uno di questi servizi. Ancora ridotto invece appare l’uso di servizi di dematerializzazione delle Loyalty card e di Couponing. Al contrario, il Largo consumo(dove la penetrazione di App e Mobile site si “ferma” al 36%) si pone per lo più obiettivi di entertainment e condivisione social. Quasi la metà delle App in questo settore, infatti, punta a far condividere contenuti tra gli utenti, e quasi il 30% offre attività di gaming, mentre decisamente più ridotta risulta l’offerta di contenuti informativi e di servizio.

 

Fonte:

Daniele Lazzarin

http://www.ict4executive.it/

Piace l’acquisto online, specie se è operato in mobilità

Un elemento da non sottovalutare per i retailer interessati a mettere a frutto le potenzialità offerte da Internet introducendo nuovi modelli di acquisto, anche all’interno dei propri store fisici. Spazio, quindi, a QR code e Wi-Fi gratis all’interno degli store tradizionali.

Sempre più centrali nella vita di ogni consumatore, i device mobili sono sempre più utilizzati dai consumatori per fare acquisti o reperire informazioni durante lo shopping dentro o fuori le mura di casa.

Lo conferma l’indagine condotta da Portaltech Reply in collaborazione con eDigitalResearch su un campione di 1.000 consumatori inglesi, e i cui risultati, raccolti nell’Osservatorio Portaltech Reply sull’ecommerce, evidenziano nuove opportunità per i retailer interessati a fidelizzare i consumatori regalando nuove esperienze di acquisto.

Piace l’acquisto su tablet
Inclusi per la prima volta anche i possessori di tablet, il campione rappresentativo analizzato dalla realtà del gruppo Reply e dalla società di ricerca attiva nel settore business online e multicanale ha messo in luce come il 90% di chi possiede un dispositivo di questo tipo ricerchi informazioni online concludendo, in ben il 79% dei casi, il proprio acquisto via tablet.

Non solo.

Stando ai risultati contenuti nell’Osservatorio Portaltech Reply, il 66% del campione intervistato farebbe acquisti direttamente dal proprio device mobile, registrando un incremento di 14 punti percentuali nello shopping su base settimanale, ora al 32%, rispetto a quanto riportato solo un anno fa.

A crescere del 36% negli ultimi 12 mesi è stato anche il 68% dei possessori di smartphone che utilizza il proprio device connesso per fare acquisti o trovare informazioni su qualche prodotto anche mentre fa shopping fuori casa, nonostante sia tra le mura domestiche che si registra un ulteriore aumento di 10 punti percentuali degli acquisti via smartphone o tablet (78%).

Acquisti via sito mobile o applicazione ad hoc?
Tra chi si collega a Internet mentre è a fare shopping, il 47% lo fa per navigare, il 31% per passare il tempo, e il 20% per concludere un acquisto in un negozio, mentre si conferma la tendenza da parte del consumatore a preferire l’acquisto in Rete tramite sito mobile (48%) piuttosto che tramite applicazione ad hoc (41%).
Con ciò, resta da sottolineare che, tra coloro che utilizzano un’app, la frequenza di acquisto è maggiore grazie al fatto che, spesso, quest’ultima assicura un accesso più immediato al prodotto desiderato.

Nuove opportunità per i retailer che non temono l’ecommerce
Un elemento da non sottovalutare per i retailer interessati a mettere a frutto le potenzialità offerte da Internet introducendo nuovi modelli di acquisto, anche all’interno dei propri store fisici.

L’attenzione, si sa, è volta a iniziative da implementare quali la disponibilità di Wi-fi gratuito per i clienti, Qr code in grado di rimandare a ulteriori informazioni sui prodotti per coinvolgere maggiormente gli utenti e migliorare la loro esperienza di acquisto, fidelizzandoli.

Anche perché, sempre in base allo studio condotto, il 29% dei clienti che fanno acquisti dal proprio device, tramite sito mobile o applicazione, su base settimanale o mensile, sarebbe “molto interessato” a ricevere sul proprio dispositivo informazioni sulle offerte disponibili, magari appena varcata la soglia del negozio.
Una percentuale che sale fino al 50% tra coloro che acquistano regolarmente in Rete e si dicono interessati a ricevere offerte personalizzate dai propri brand preferiti.

Fonte: http://searchcio.techtarget.it/01NET/HP/0,1254,17_ART_155093,00.html

How to migrate existing Windows installations to VirtualBox

Scaricale il file MergeIDE.zip da Drive nella cartella Virtualbox e seguire le istruzioni sotto.

Windows installations, unlike Linux, cannot easily be moved from one hardware to another. This is not just due to Microsoft’s activation mechanism but the fact that the installed kernel and drivers depend on the actual hardware.

This document explains the common pitfalls and how to workaround these. We assume that either a physical Windows installation or a VMware image is the source of migration. It is also assumed that a suitable virtual disk image (either VDI or VMDK for VirtualBox >= 1.4) is already present.

There’s a step by step description below.

HAL

The hardware dependent portion of the Windows kernel is dubbed “Hardware Abstraction Layer” (HAL). While hardware vendor specific HALs have become very rare, there are still a number of HALs shipped by Microsoft. Here are the most common HALs (for more information, refer to this article:  http://support.microsoft.com/kb/309283):

  • Hal.dll (Standard PC)
  • Halacpi.dll (ACPI HAL)
  • Halaacpi.dll (ACPI HAL with IO APIC)

If you perform a Windows installation with default settings in VirtualBox, Halacpi.dll will be chosen as VirtualBox enables ACPI by default but disables the IO APIC by default. A standard installation on a modern physical PC or VMware will usually result in Halaacpi.dll being chosen as most systems nowadays have an IO APIC and VMware chose to virtualize it by default (VirtualBox disables the IO APIC because it is more expensive to virtualize than a standard PIC). So as a first step, you either have to enable IO APIC support in VirtualBox or replace the HAL. Replacing the HAL can be done by booting the VM from the Windows CD and performing a repair installation.

Hard Disk Support

For reasons we don’t understand, Windows memorizes which IDE/ATA controller it was installed on and fails to boot in case the controller changes. This is very annoying because you will run into this problem with basically all migrated images. The solution here is to perform several modifications to the Windows registry. This can be done while the installation is still running on the original system because all it does is relax the IDE checks. Therefore the installation will continue to work on the original system after the modification. The easiest way is to use the excellent MergeIDE Download utility from the German c’t computer magazine. Alternatively, instructions in Microsoft’s knowledge base article can be followed:  http://support.microsoft.com/kb/314082

agp440.sys / intelppm.sys

There are a few Windows device drivers that does not play nice on VirtualBox’ hardware. Many physical PC systems (and VMware) have a AGP graphics bus which will cause agp440.sys to be installed. VirtualBox’ virtual graphics card is on the PCI bus and the driver will cause a system crash. The most correct approach is to boot the recovery console from the Windows installation CD and disable this service. However, it is also possible to just rename/delete agp440.sys the C:\Windows\SYSTEM32\drivers directory. Here is a knowledge base article containing more information:  http://support.microsoft.com/kb/324764

A similar problem may exist with intelppm.sys, which can also cause a hang of the guest OS.

Step By Step Instructions For Windows XP

This should work for Win2k Vista and Windows 7 as well, but it’s untested.

  1. Run the MergeIDE utility as mentioned above on existing windows machine.
  2. Shut down windows machine.
  3. Either pull the drive from the windows machine or copy the data with a low level image tool (like dd) to a USB drive or other removable media. If making an image, DO NOT image just the partition, this will not work!
  4. Use VBoxMange convertfromfaw to convert the image or to copy from the drive you pulled from the windows machine.
    1. If you are converting from the image, the syntax is just
      VBoxManage convertfromraw ImageFile.dd OutputFile.vdi
    2. If you are converting from the drive, you need to use
      cat /dev/sdg | VBoxManage convertfromraw stdin OutPutFile.vdi NUMBEROFBYTES

      Note, if you use fdisk -l in Linux you can see how many bytes each drive is to supply this parameter. Example:

      # fdisk -l /dev/sda
      Disk /dev/sda: 1500.3 GB, 1500301910016 bytes

      To determine the same information on a Mac OS X host, you do

      # diskutil list
      # diskutil info /dev/disk0

      to list available disks and to show the number of bytes under Total Size:.

  5. Then use the media manager in VirtualBox to add the newly converted drive.
  6. Make a new virtual machine, using the drive you just added with the media manager.
  7. Once it is created, go in and turn on “Enable IO APIC”, select the # of processors you want etc.
  8. Try to boot the new virtual machine. It may “just work”, or you may get a BSOD. If it just works install guest additions and you are done. Depending on your license you might need to re-activate Windows.
  9. If it did not work, and you got a BSOD. Shutdown the virtual machine and boot up from a windows CD. Go through until you get to the select a partition, select the existing partition, and choose “repair”. It will basically reinstall windows and configure it for your new hardware (virtual hardware).
  10. Reinstall patches (Service packs) and updates.
  11. Install guest additions

Apps di successo in poche mosse

Esistono strumenti e nuove opportunità tecnologiche per riscuotere successo con un’app, a partire dall’indicizzazione delle applicazioni. Ecco cosa deve sapere uno sviluppatore per portare un’app in classifica

Indovinare il successo con un’app non è per niente facile: dipende dalla categoria, dalla fascia di prezzo, dal marketing e dal passa-parola. I download dagli App Store Mobili saliranno a quota 102 miliardi nel 2013, in crescita rispetto ai 64 miliardi del 2012. Le apps gratuite deteranno il 91% dei download complessivi del 2013, mentre gli acquisti in-app o in-app purchases (IAP) saliranno dall’11% del 2012 al48% dei ricavi degli app store dal 2017. Gli acquisti in-app (IAP) traineranno il 17% del fatturato degli store nel 2013, per crescere al 48% nel 2017. Si prevede che gli app store combinati di iOS e Android deterranno il 90% dei download globali nel 2017. Inoltre gli utenti pagano solo se soddisfatti e gli sviluppatori devono lavorare sodo per guadagnare, scommettendo su un buon design e sulleprestazioni delle loro applicazioni.

Ma chi realizza apps deve tenere conto che è in atto la convergenza di quattro potenti forzesocial, mobile, cloud ed informazione continuano a trainare il cambiamento e a creare nuove chance.

Tuttavia esistono strumenti e nuove opportunità tecnologiche per riscuotere successo con un’app, innanzitutto collegandola a un sito. Innanzitutto bisogna comprendere come viene utilizzato un sito Web tramite i social network (chi condivide determinato contenuto e attraverso quali canali). Shareaholic è uno  strumento prezioso di Web Analytics anche se è solo uno dei tanti strumenti a disposizione degli espertoni di usabilità per cercare di capire ed ottimizzare il funzionamento dei diversi canali della comunicazione digitale.

SimilarWeb invece, pur non offrendo dati quantiativi precisi ma solo approssimativi, sorprende per la precisione con cui misura l’andamento (trend), mentre la funzione App Indexing for Google Searchriesce a stupire gli addetti ai lavori.

Permette di collegare il proprio sito Web alla corrispondente app in modo tale che quando emerge un determinato risultato di ricerca, l’utente finale abbia la possibilità di aprire anche l’app a cui fa riferimento il risultato nella serp di Google (serp significa Search Engine Results Page). L’indicizzazione delle apps rappresenta un’altra freccia al proprio arco che permetterà a Google di consolidare ulteriormente il suo primato nei mercati dell’OS mobili.

Fonte: http://www.itespresso.it

Arrivano i nuovi domini Internet: un novità per il marketing

L’Icann dà il via ai suffissi come .auto, .shop, .shoes, ma anche .Gucci e .Ferrero: dai 22 attuali, esclusi quelli nazionali, potranno arrivare a 1.400. Una rivoluzione, che porta con sè non poche polemiche e che permetterà di indirizzare online comunità specifiche di consumatori. Ne parliamo con Jerome Sicard di MarkMonitor, registrar che aiuta i suoi clienti a disegnare una strategia per fronteggiare la nuova situazione

Ancora pochi giorni e scatterà la rivoluzione dei domini che dai 22 attuali, esclusi quelli nazionali, potranno arrivare a 1.400. Una nuova geografia dei General top level domain che prevede una maggiore verticalizzazione delle estensioni con l’arrivo di .auto, .shop, .shoes solo per fare qualche esempio. Senza contare che alcune aziende (in Italia Gucci, Ferrero e Fiat) avranno le estensioni che corrispondono al brand.

Una rivoluzione, spiega Jerome Sicard, Regional director Southern Europe di MarkMonitor, “che rappresenta un’opportunità per le aziende che possono in questo modo creare comunità formate dai consumatori appassionati dei loro marchi. Senza arrivare ad acquisire un dominio aziendale è possibile infatti acquistare una estensione all’interno del dominio principale. .car.nomeazienda, oppure .luxury.nomeazienda.

Sicard non nasconde che l’allargamento della base domini da parte dell’Icann non è stata una decisione esente da polemiche. “Il problema non sono i domini aziendali, ma quelli generici, circa 600 su 1.400, che se da una parte sono un’opportunità dall’altra complicano la vita delle aziende”. E qualcuno ha parlato anche di ricatto.

L’idea è di segmentare la Rete dirottando i consumatori su domini, per esempio .luxury che ospiteranno i maggiori brand mondiali. Per le aziende diventa quindi quasi obbligatorio essere presenti acquistando nuove estensioni. “Perché se qualcuno registra il .luxury.nomeazienda con il tuo marchio è poi possibile recuperarlo tramite un’azione legale, ma si tratta di procedure non certo economiche che comportano qualche mese per essere portate a termine”.

In più molte aziende non possono limitarsi a comprare un solo dominio ma ad assicurarsi anche la versione in cinese e quella che riguarda un settore di business confinante. Un brand del mondo fashion dovrebbe essere quindi presente nel .luxury, .shop se fa scarpe anche nel .shoes con le varie declinazioni in altre lingue.

Da cinquantamila a centomila euro con un centinaio di nuove estensioni per una società internazionale è la spesa stimata da MarkMonitor, il registrar che aiuta i suoi clienti a disegnare una strategia per fronteggiare la nuova situazione mettendo anche in sicurezza i nuovi suffissi. Si tratta di una stima “minima e conservatrice” precisa il manager della società.

La vicenda pone anche seri problemi di sicurezza. Da una parte infatti ci sono le forme di protesta di Anonymous e dall’altra le iniziative ben più pericolose di organizzazioni criminali che prendono il controllo di domini commerciali o dei server di mail. “le possibilità di attacco quando si prende il controllo di un dominio commerciale sono moltissime”, spiega Sicard, aggiungendo che basterebbe dotarsi di un registry lock che blocca l’accesso ai server per dormire sonni molto più tranquilli. Un servizio dal costo bassissimo, un migliaio di euro, che MarkMonitor assicura ai suoi clienti (fra i quali ci sono anche Google e Microsoft) ma che non è molto diffuso anche in Italia dove spesso la gestione dei domini in mano all’ufficio legale per le questioni legate alla proprietà intellettuale.

Negli Usa però tutto è nella mani del marketing soprattutto ora che arrivano le nuove estensioni “che cambieranno il modo di vendere online e porteranno a un approccio più collaborativo fra e-commerce e area legale”. I domini sono ormai entrati a fare parte del marketing mix.

 

Fonte:

Neelie Kroes lancia il Manifesto delle Startup

Bruxelles investirà 100 milioni di euro per promuovere le nuove imprese innovative. I cinque principi del Manifesto delle Startup voluto dal commissario Neeelie Kroes

Il commissario all’Agenda digitale, nonché vicepresidente della Comunità europea, Neeelie Kroes haannunciato il Manifesto per le startup. Si tratta di una piattaforma in cui Bruxelles investirà 100 milioni di euro per promuovere le nuove imprese innovative, attraverso open source, tutor per le startup e testimonial di case history di successo.

Il Manifesto delle startup si basa su due iniziative, i Future Labs e il vero e proprio Startup Manifesto. Il primo sito raccoglie le risorse per sviluppare applicazioni e realizzare nuove realtà Internet, dedicate a migliorare le infrastrutture pubbliche, salute, mobilità, l’economia europea.

Mentre il PIL europeo si contrarrà dello 0,4%, lo startupmanifesto.eu intende dimostra come l’economia digitale rappresenti una leva per tornare a crescere: secondo il Boston Consulting Group, il Fattore Internet crescerà dell’8% annuo nei mercati del G20 per i prossimi cinque anni, e l’Europa deve sfruttarlo al meglio per portare il segno più nel PIL.

Il manifesto si basa su cinque capisaldi: il primo principio verte sugli e-skills; valorizzazione dei talenti;accesso al capitale; servono policy sui dati e tutela della privay; ripensare la leadership.

L’Europa deve investire in competenze digitali e nella formazione IT dei docenti, visto che il 20% degli studenti della scuola secondaria non ha mai utilizzatoun computer nelle lezioni scolastiche. I talentidevono essere valorizzati: basta cervelli in fuga; o meglio i cervelli, che vanno altrove per imparare, devono poi poter rientrare. Cinquantamila tedeschi nella Silicon Valley, e quasi 500 startup che parlano francese a San Francisco Bay, dimostrano quali potenzialità abbia l’Europa. L‘accesso al capitale va migliorato, seguendo il modello israeliano, dal momento che gli investimenti VC si sono dimezzati sia nella zona euro che nell’Unione europea dal 2008. La UE deve aggiornare la normativa sulla privacyper evitare i Datagate e altre problematiche relative alla tutela di privacy e dati. Infine in Europa bisogna rimettere al cento la leadership: sono nate in Europa startup di successo globale come Skype, Spotify, Soundcloud, Dailymotion, ma sono mancate una narrazione che le valorizzasse e una leadership che ne monetizzasse la popolarità.

Speriamo che lo Startup Manifesto europeo, che guadagna il supporto di EIF, aiuti a creare una piattaforma europea dell’economia digitale. Secondo uno studio di School of Management-Politecnico di Milano, ogni ritardo dell’Agenda digitale manda in fumo risparmi per 20 miliardi e maggiori entrate per lo Stato pari a 5 miliardi in un triennio.

La nuova geografia del lavoro” di Enrico Moretti, docente all’università di Berkley, spiega che ogni posto di lavoro digitale promuove altri 5 posti di lavoro tradizionali.

How to install LAMP server on Ubuntu

LAMP, which stands for Linux, Apache, MySQL and PHP, is a popular open-source web server platform on Linux. The LAMP stack has been enjoying tremendous popularity among website administrators, due to its stability, open-source nature, and excellent community support.

To install LAMP server on Ubuntu, you can use a command line tool called taskselwhich allows you to (un)install various tasks, each of which is basically a collection of related packages. So just run tasksel command, and choose “LAMP server” option among a list of available tasks. The rest of installation procedure will be taken care of by the tool.

While tasksel is installed by default on Ubuntu Server, it is not available on vanilla Ubuntu Desktop. So if you are using Ubuntu Desktop, you need to install it first.

$ sudo apt-get install tasksel

Then go ahead and launch tasksel to install LAMP server on your system.

$ sudo tasksel

Install LAMP server on Ubuntu

On tasksel screen, any pre-installed task(s) will have asterisk mark next to its name. All you have to do is check “LAMP server” option, press TAB to move to “OK”, and press “ENTER”.

Once installation is completed, PHP-enabled Apache HTTP server as well as MySQL server will be up and running on your host, and are set to start automatically upon reboot.

Fonte:http://xmodulo.com

Raspberry Pi Camera Board – RaspiStill Command List

RaspiStill Camera App

=====================
Runs camera for specific time, and take JPG capture at end if requested
usage: RaspiStill [options]
Image parameter commands
-?, –help : This help information
-w, –width : Set image width <size>
-h, –height : Set image height <size>
-q, –quality : Set jpeg quality <0 to 100>
-r, –raw : Add raw bayer data to jpeg metadata
-o, –output : Output filename <filename> (to write to stdout, use ‘-o -‘). If not specified, no file is saved
-v, –verbose : Output verbose information during run
-t, –timeout : Time (in ms) before takes picture and shuts down (if not specified, set to 5s)
-th, –thumb : Set thumbnail parameters (x:y:quality)
-d, –demo : Run a demo mode (cycle through range of camera options, no capture)
-e, –encoding : Encoding to use for output file (jpg, bmp, gif, png)
-x, –exif : EXIF tag to apply to captures (format as ‘key=value’)
-tl, –timelapse : Timelapse mode. Takes a picture every <t>ms
Preview parameter commands
-p, –preview : Preview window settings <‘x,y,w,h’>
-f, –fullscreen : Fullscreen preview mode
-n, –nopreview : Do not display a preview window
Image parameter commands
-sh, –sharpness : Set image sharpness (-100 to 100)
-co, –contrast : Set image contrast (-100 to 100)
-br, –brightness : Set image brightness (0 to 100)
-sa, –saturation : Set image saturation (-100 to 100)
-ISO, –ISO : Set capture ISO
-vs, –vstab : Turn on video stablisation
-ev, –ev : Set EV compensation
-ex, –exposure : Set exposure mode (see Notes)
-awb, –awb : Set AWB mode (see Notes)
-ifx, –imxfx : Set image effect (see Notes)
-cfx, –colfx : Set colour effect (U:V)
-mm, –metering : Set metering mode (see Notes)
-rot, –rotation : Set image rotation (0-359)
-hf, –hflip : Set horizontal flip
-vf, –vflip : Set vertical flip
Notes
Exposure mode options :
off,auto,night,nightpreview,backlight,spotlight,sports,snow,beach,verylong,fixedfps,antishake,fireworks
AWB mode options :
off,auto,sun,cloud,shade,tungsten,fluorescent,incandescent,flash,horizon
Image Effect mode options :
none,negative,solarise,sketch,denoise,emboss,oilpaint,hatch,gpen,pastel,watercolour,film,blur,saturation,colourswap,washedout,posterise,colourpoint,colourbalance,cartoon
Metering Mode options :
average,spot,backlit,matrix

Creating Timelapse Videos With The Raspberry Pi Camera

Timelapse ProcessIn this post I will explain how I made some timelapse videos using the Raspberry Pi camera module. This is a two step process which involves getting the camera module to take a series of stills over a period of time and then combining them into an MP4 video file.

We can use the “raspistill” utility to take a set of time lapsed photos as described in my Taking Hi-Res Photos With The Pi Camera Module article. Make sure you have installed the camera and updated your operating system.

Step 1 – Taking the time-lapsed photos

This command will take a photo every 60 seconds (60000 milliseconds) for 2 hours (7200000 milliseconds) resulting in a sequence of 120 images.

raspistill -o myimage_%04d.jpg -tl 60000 -t 7200000

The “%04d” will result in a four digit number appearing in each filename.

myimage_0001.jpg
myimage_0002.jpg
...
myimage_0119.jpg
myimage_0120.jpg

Step 2 – Combine images into MP4 video

Once you’ve got your image sequence you will need a method to stitch them together. I decided to use “avconv”. You can install this useful library with the following command :

sudo apt-get -y install libav-tools

To construct the video file from your image sequence you use the command shown below. Although it appears on multiple lines for readability it should be entered as a single line on the command line :

avconv -r 10 -i myimage_%04d.jpg
       -r 10 -vcodec libx264 -crf 20 -g 15
       timelapse.mp4

The video will be the full resolution of the default image size (2592×1944).

To crop the images and create a more standard 1280×720 resolution video you can use the following command :

avconv -r 10 -i timelapse_%04d.jpg
       -r 10 -vcodec libx264 -crf 20 -g 15
       -vf crop=2592:1458,scale=1280:720
       timelapse.mp4

The “vf” option defines a video filter. In this case two filters which crop the incoming image to 2592×1458 and then scale them to 1280×720.

The “r” option tells avconv to create a video with a frames per second of 10. It appears twice to prevent avconv dropping frames that it thinks are similar.

The “crf” option tells avconv to aim for a quality level of “20″ which is a good starting point. Lowers values are better but will increase the file size.

The “-g” option sets the GOP value. The YouTube Advanced Encoding Settings page recommends that the GOP should be set to half the frame rate so this is set to 15.

The conversion process is very slow on the Pi compared to doing the same thing on a desktop PC. For long sequences with hundreds of frames I would recommend downloading an appropriate version of Libav on your desktop or laptop and build your MP4 files much faster!

use ffmpeg

When using ffmpeg to compress a video, I recommend using the libx264 codec, from experience it has given me excellent quality for small video sizes. I have noticed that different versions of ffmpeg will produce different output file sizes, so your mileage may vary.

To take a list of images that are padded with zeros (pic0001.png, pic0002.png…. etc) use the following command:

ffmpeg -r 60 -f image2 -s 1920×1080 -i pic%04d.png -vcodec libx264 -crf 15 -vpre normal test.mp4

where the %04d means that zeros will be padded until the length of the string is 4 i.e 0001…0020…0030…2000 and so on. If no padding is needed use something similar to pic%d.png.

  • -r is the framerate
  • -crf is the quality, lower means better quality, 15-20 is usually good
  • -s is the resolution
  • -vpre is the quality setting, better quality takes longer to encode, some alternatives are: default, normal, hq, max

the file will be output (in this case) to: test.mp4

Note: the -vpre command only works if the corresponding setting file is available

Finer Bitrate control (to control size and quality)

  • -b 4M

you can use the -b flag to specify the target bitrate, in this case it is 4 megabits per second

Testato:

ffmpeg -r 5 -i images_%04d.jpg -vcodec libx264 -crf 10 -vpre hq test.mp4

Mysqldump – backup di database MySql

Eseguire il dump di tutti i DB presenti:

mysqldump -u root -p --all-databases > alldb.sql
Ripristinare tutti i DB presenti:
mysql -u root -p < alldb.sql
Eseguire il dump solo di certe tabelle presenti in un db:
mysqldump -u root -p 'db_name' 'table_1' 'table_2' 'table_n' > 'nome_file_da_salvare.sql'

 

Ignorare alcune tabelle

mysqldump -u root -p --lock-tables --databases miodb --ignore-table=miodb.tab1 --ignore-table=miodb.tab2 --ignore-table=miodb.tab3 > backup_tables_miodb.sql


scp – Copia di files attraverso SSH

SCP protocol

The SCP protocol is a network protocol, based on the BSD RCP protocol,[1] which supports file transfers between hosts on a network. SCP uses Secure Shell (SSH) for data transfer and uses the same mechanisms for authentication, thereby ensuring the authenticity and confidentiality of the data in transit. A client can send (upload) files to a server, optionally including their basic attributes (permissions, timestamps). Clients can also request files or directories from a server (download). SCP runs over TCP port 22 by default. Like RCP, there is no RFC that defines the specifics of the protocol.

How it works

Normally, a client initiates an SSH connection to the remote host, and requests an SCP process to be started on the remote server. The remote SCP process can operate in one of two modes: source mode, which reads files (usually from disk) and sends them back to the client, or sink mode, which accepts the files sent by the client and writes them (usually to disk) on the remote host. For most SCP clients, source mode is generally triggered with the -f flag (from), while sink mode is triggered with -t (to).[2] These flags are used internally and are not documented outside the SCP source code.

Remote to remote mode

In remote-to-remote secure copy, the SCP client opens an SSH connection to the source host and requests that it, in turn, open an SCP connection to the destination. (Remote-to-remote mode does not operate by opening two SCP connections and using the originating client as an intermediary). It is important to note that SCP cannot be used to remotely copy from the source to the destination when operating in password or keyboard-interactive authentication mode, as this would reveal the destination server’s authentication credentials to the source. It is, however, possible with key-based or GSSAPI methods that do not require user input.[2]

Issues using talkative shell profiles

SCP does not expect text communicating with the ssh login shell. Text transmitted due to the ssh profile (e.g. echo “Welcome” in the .bashrc file) is intrepreted as an error message, and a null line (echo “”) causes scp to deadlock waiting for the error message to complete.[2]

SCP program

The SCP program is a software tool implementing the SCP protocol as a service daemon or client. It is a program to perform secure copying. The SCP server program is typically the same program as the SCP client.

Perhaps the most widely used SCP program is the command line scp program, which is provided in most SSH implementations. The scp program is the secure analog of the rcp command. The scp program must be part of all SSH servers that want to provide SCP service, as scp functions as SCP server too.

Some SSH implementations provide the scp2 program, which uses the SFTP protocol instead of SCP, but provides the very same command line interface as scpscp is then typically a symbolic link to scp2.

Typically, a syntax of scp program is like the syntax of cp:

Copying file to host:

scp SourceFile user@host:directory/TargetFile

Copying file from host:

scp user@host:directory/SourceFile TargetFile
scp -r user@host:directory/SourceFolder TargetFolder

Note that if the remote host uses a port other than the default of 22, it can be specified in the command. For example, copying a file from host:

scp -P 2222 user@host:directory/SourceFile TargetFile

As the SCP protocol implements file transfers only, GUI SCP clients are rare, as implementing it requires additional functionality (directory listing at least). For example, WinSCP defaults to the SFTP protocol. Even when operating in SCP mode, clients like WinSCP are typically not pure SCP clients, as they must use other means to implement the additional functionality (like the ls command). This in turn brings platform-dependency problems.

Fonte: en.wikipedia.org

Debian and Ubuntu Linux: Add a User To Group www-data ( Apache Group )

How do I a user to the Apache group called www-data under Ubuntu or Debian Linux server operating systems?

You need to use the useradd command to add a user to the group called www-data.

Add a new user to the www-data group

In this example, add a new user called vivek to the www-data group, enter:

 
sudo useradd -g www-data vivek

### set the password for vivek user ###
sudo passwd vivek

To verify new settings, enter:

id vivek
groups vivek

The group name www-data is the user’s initial login group i.e. vivek has been added to www-data primary group only.

www-data supplementary groups membership

To add a new user called vivek to supplementary groups called www-data and ftp, enter:

 
sudo groupadd vivek
sudo useradd -g vivek -G www-data,ftp vivek
sudo passwd vivek

To verify new settings, enter:

id vivek
groups vivek

Add a existing user to www-data group

Type the following command to add an existing user called vgite to the www-data group, enter:

 
sudo usermod -a -G www-data  vgite
id vgite
groups vgite

Above command will add the user vgite to the supplementary group called www-data. Use -a option only with the -G option.

Creare apps Android con Eclipse

La seguente guida vuole mostrare i primi passi per realizzare un ambiente di sviluppo per applicazioni Android basato sul software Eclipse. La guida è valida per sistemi operativi GNU / Linux, Microsoft Windows e OSX.

Eclipse è un ambiente di sviluppo integrato multi-linguaggio e multipiattaforma. Ideato da un consorzio di grandi società quali Ericsson, HP, IBM, Intel, MontaVista Software, QNX, SAP e Serena Software, chiamato Eclipse Foundation sullo stile dell’open source.
Eclipse può essere utilizzato per la produzione di software di vario genere, si passa infatti da un completo IDE per il linguaggio Java (JDT, “Java Development Tools”) a un ambiente di sviluppo per il linguaggio C++ (CDT, “C/C++ Development Tools”) e a plug-in che permettono di gestire XML, Javascript, PHP e persino di progettare graficamente una GUI per un’applicazione JAVA (Eclipse VE, “Visual Editor”), rendendo di fatto Eclipse un ambiente RAD.

1. Download e installazione di Eclipse
Per prima cosa è necessario prelevare ed installare il software.
Il software è ospitato presso il server centrale del programma, raggiungibile al seguente url:http://www.eclipse.org/downloads/
Sarà necessario scaricare la versione “Classic” ovvero la versione “vergine” del software.

The classic Eclipse download: the Eclipse Platform, Java Development Tools, and Plug-in Development Environment, including source and both user and programmer documentation

Nel momento in cui viene scritta questa guida l’ultima versione disponibile è la 4.2.2. La versione scaricata dal server ovviamente sarà in formato eseguibile precompilato.

2. Primo avvio e intallazione degli ADT plugin
Avviamo Eclipse (d’ora in avanti lo chiameremo IDE).
Per installare il plugin Eclipse ADT basta seguire questi tre semplici passi:

    1- Andate su Help/Install new software dalla barra dei menu
    2- Selezionate “Add” e specificate il nome del repository (per esempio “ADT plugin”)
    3- Inserite il seguente link https://dl-ssl.google.com/android/eclipse nel campo denominato “location folder”

Fatti questo vi verrà chiesto cosa installare dal repository tra:

    – Developer tools
    – Ndk plugins

Per i principianti sono sufficienti i Developer tools. Selezionati quest’ultimi basterà premere avanti finché l’operazione e l’installazione di essi non sarà conclusa. Al termine dell’installazione verrà richiesto il riavvio (operazione automatica) dell’IDE.

3. Selezione ed installazione API sulla quale basare l’app
Per selezionare la versione API sulla quale basare la nostra app sarà sufficiente spostarsi sul menu alla voce:
Window >> Android SDK manager
Selezionando questa voce otteniamo una schermata simile alla seguente:

API_ECLIPSE.png

Nel momento in cui scrivo la guida le API più recenti sono le 4.2.2, ovviamente se volete sviluppare una app per il vostro tablet/smartphone dovrete selezionare le API adeguate. Una volta selezionate, procedere con l’installazione.

4. Creazione di un nuovo progetto
Per la creazione della nostra prima app è necessario generare un progetto spostandosi nel menu alla voce:
File >> New >> Project
e nella categoria “Android”, selezionate “Android Application Project”.

android_project.png

In seguito vi verranno chieste informazioni varie quali nome dell’applicazione, nome del progetto, nome del pacchetto e le API minime/massime di compatibilità. Nell’esempio sotto riportato si impone un sistema Android superiore o uguale al 4.0.

android_project_sp1.png

Successivamente vengono chieste altre informazioni quali il tema da adottare e l’icona della app.
Arrivati a questo punto avete la massima libertà di programmazione della vostra applicazione.

5. Creazione/Esportazione dell’apk
Una volta terminata la vostra applicazione sarà possibile crearne l’eseguibile con la funzione Export (nel menu File).

android_exp1.png

Successivamente viene chiesto quale progetto esportare, e vi verrà richiesto di creare una keystore. La posizione del file può essere a vostra scelta, l’importante è che il file si chiami .keystore e che contenga una password di almeno 6 caratteri.
Successivamente vi verrà richiesto di inserire tutti i dati relativa all’app e all’autore (NB.inserite la stessa password inserita per generare il file .keystore).
In fine verrà chiesta la posizione dove creare il file apk. Se il progetto contiene errori di compilazione, ovviamente, l’apk non verrà generato.

Prossimamente proseguirò questa discussione ampliando la guida.
Hola

Da seguire su: Linux MX

Server di stampa e scansione con Raspberry

Categoria: Progetti
Pubblicato Lunedì, 24 Giugno 2013 22:40
Scritto da Christian – Linux Ludus Villafranca (VR)

Se avete più di un pc magari e una MPF o semplicemente stampanti escanner e siete stufi di doverli ogni volta collegare per stampare e o scansionare qualcosa, allora siete come me. Ciò che andrò a descrivere èvalido per qualsiasi periferica supportata da cups e da sane, ovvero i server di stampa e scansione di linux.

Requisiti generali:

  • raspberry funzionante, ovvero complessivo di SD.
  • sistema operativo (xbian, raspxbmc,openelc,raspbian) quello che più vi piace, io ho usato xbian
  • collegamento di rete (eth o wifi)

Per iniziare è opportuno aver configurato il raspberry per l’accesso in rete.

Stampante di rete

Configurare CUPS

Per prima cosa è opportuno installare cups che si proterà come dipendenza anche sane, usando il seguente comando:

1
sudo apt-get install cups

Il passo successivo sarà quello di aggiungere l’utente della vostra minidristro al gruppo lpdamin (amministratori gruppo stampa), nel mio caso xbian
usermod -aG lpadmin xbian
Questo passaggio è importante dal momento che noi necessitiamo dei permessi di root per aggiungere stampanti.
Ora dovremmo cambiare le impostazioni di accesso a cups per accedervi dalla rete, si deve modificare il file di configurazione di cups:

1
sudo nano /etc/cups/cupsd.conf

Per permettere l’accesso remoto alla interfaccia web di cups si deve quindi modificare il file nel seguente modo:
Cambiare Listen localhost: 631 con Port: 631
Se la vostra rete non è accessibile dall’esterno potete permettere a tutti di accedere a cups con il comando:

1
2
$ sudo cupsctl --remote-admin
$ sudo cupsctl --remote-any

evitando di editare il file sopra menzionato.
Quello che stiamo facendo è dire a cups quali IP della rete si potranno collegare, nel nostro caso tutti, per completare la configurazione è necessario riavviare cups:

1
$ sudo /etc/init.d/cups restart

Aggiungere stampante:

Con il vostro browser puntate all’IP del vostro RaspPI con la porta 631, esempio:

 https://192.168.1.169:631

Andate su amministrazione e poi cliccate su aggiungi stampante, vi verrà chiesto di inserire user e password dell’utente che state utilizzando, poi potrete selezionare la vostra stampante.
Ricordatevi di selezionare le opzioni di condivisione di rete e anche la stampa da internet.
Scanner di rete:

Come detto in precedenza, qualsiasi periferica riconosciuta da sane è facilmente gestibile da remoto, andando a dire al server saned chi può accedere alla periferica collegata editando il file, sul raspberry:

1
/etc/sane.d/saned.conf

aggiungendo semplicemente gli IP ammessi alla connessione al file.
Infine, accertiamoci che sane sia avviato al boot, editando il file:

1
/etc/default/saned

cambiando la linea impostando su yes come sotto:

1
RUN=yes

Dopo aver configurato la parte server dobbiamo configurare la parte client sul nostro computer, al quale diremo quale IP in rete condivide lo scanner modificando il file:

1
/etc/saned/net.conf

aggiungendo l’IP del raspberry
Ora la configurazione è terminata e potrete godere dei vantaggi di una multifunzione in rete.

————————————————–

Si ringrazia Linux Ludus Villafranca (VR), nello specifico Christian, per la guida.

Link: http://www.linuxludus.it/

Descrizione: LinuxLudus è il LUG di Villafranca di Verona. Il nostro gruppo non tratta unicamente il Sistema Operativo GNU/Linux ma anche altri Sistemi Operativi liberi ed in generale tutto il FOSS (Free Open Source