RFM, chi è questo sconosciuto?

Si sente spesso parlare di LTV (Lifetime Value),un termine che infesta i blog di CRM ma che viene raramente applicato a causa della complessità e delle molteplici variabili che entrano in gioco per una corretta analisi.

L’RFM o Recency, Frequency, Monetary Value, e una tecnica di analisi per segmentazione in uso da oltre 40 anni nel settore dei direct marketing.
Pur essendo una metodologia datata, è comunque attuale e relativamente semplice da utilizzare, rendendola una scelta consigliata per chi inizia a fare analisi sul ROI (ritorno dell’investimento) senza addentrarsi in sofisticate tecniche di data mining. [more]

Alla base della metodologia, si presuppone che il cliente che ha comprato di recente e acquista con frequenza spendendo molto, è il cliente migliore per le campagne di marketing future.

Detto così sembra addirittura stupido e ovvio, ma in termini operativi, permette di focalizzarsi su un segmento di clienti che a seguito di una campagna di marketing mirata, dovrebbero dare gli stessi risultati di una campagna massiva ma con un minore impiego di risorse.

In sostanza si vuole comunicare solo con chi è pronto a rispondere riducendo di molto l’investimento in comunicazione.

Ma vediamo come funziona:

La segmentazione semplice consiste nel prendere i 3 elementi di valutazione, ovvero

  1. Attualità
  2. Frequenza
  3. Spesa

Per ognuno degli elementi si va a disporli in ordine ascendente suddividendoli in 5 blocchi portando i più rilevanti al vertice.
Otterremo così 3 colonne da 5 elementi ciascuna dove la prima riga contiene l’insieme dei clienti più interessanti in assoluto.

A questo approccio di base si possono poi applicare svariati metodi di permutazione statistica che offrono diversi punti di vista nell’interpretazione del dati, tenendo sempre d’acconto che l’Attualità dell’acquisto è più importante della frequenza, che a sua volta è più importante della spesa.

Nella realtà poi ci si può trovare in particolare condizioni in cui a prevalere è la spesa o la frequenza a causa di una migliore risposta di quel dato segmento. Ma in termini genali, questo è un buon punto di inizio.

Approfondimenti:
http://www.staffordsbsg.com/RFM_Whitepaper.pdf

Le nuvole si addensano sul Cloud Computing di SugarCRM


Sono passati tre mesi dall'ingresso in Sugar CRM di Larry Augustin come nuovo CEO al posto dell'uscente fondatore John Roberts, che è stato defenestrato senza particolari spiegazioni.

Ad un intervista rilasciata nei giorni scorsi a Search CRM. com, Larry ha parlato dei vantaggi di avere i sorgenti (*), e di come i competitor sono rimasti indietro sul concetto di aggiornamento con rilasci periodici compresi nel canone [more] (ndr e dove sta la novità?).

Insomma, niente di nuovo in merito a strategie e futuro di un business in cui tutti sembrano guadagnare grazie al loro lavoro, ma che per quanto li riguarda non sta dando i frutti sperati.

IL cambio al vertice di Sugar CRM lascia aperti parecchi interrogativi sulla sostenibilità del modello fino ad ora applicato dalla società statunitense.

Fondata nel 2004, ha trasformato quelle che era in origine un progetto opensource, in un business con alle spalle finanziamenti per oltre 46 milioni di dollari.

L'obiettivo era quello di competere con il gigante del CRM web-based americano SalesForce.com, ma dai dati di vendita dichiarati, il target dei clienti paganti è medio-basso, e ne conta appena 4000.

Troppo pochi a fronte di un enorme investimento che evidentemente ha portato ad un prodotto che si discosta troppo poco dalla sua versione free e che non fa breccia negli utilizzatori più esigenti.

In che modo il nuovo CEO risolverà la questione e riuscirà a soddisfare gli investitore che non vedono alcuna via d'uscita da questo business?

* quando si parla di sorgenti aperti si parla solo dei vantaggi, ma ci sono anche degli svantaggi legati ad applicazioni mission critical. Questa ricerca in Google (http://www.google.com/search?q=SUGARCRM+VULNERABILITY) dimostra quanto la disponibilità di sorgenti sia utili nella ricerca di vulnerabilità da parte di hackers e malintenzionati o semplici concorrenti.

Fonti:

http://www.theregister.co.uk/2009/05/07/john_roberts_sugarcrm/
http://search crm. techtarget.com/news/article/0,289142,sid11_gci1364524,00.html

Un po’ di vecchi Post e il nuovo Blog

La voglia di scrivere sul blog va e viene, ed ad ogni interruzione, mi ritrovo a dover aggiornare il motore del blog, o come in questo caso a sostituirlo.

Passando a BlogEngine.Net ho avuto seri problemi di compatibilità con i vecchi post che non riuscivo più ad importare.

Ed è per questo che ho deciso di dare un taglio al passato e di tenermi solo alcune “perle di saggezza” tecnologiche che mi possono tornare utili.

L’argomento forte di questa nuova versione del mio blog, sarà il CRM, argomento che finora trattavo solo sul sito aziendale www.digita.it e su quello del nostro meraviglioso www.Tustena.com.

Allora si comincia!

FTP e nomi protetti

Windows e i servizi FTP non sono mai andati particolarmente d' accordo. In particolare Microsoft non ha mai prestato troppa attenzione a sviluppare un server FTP efficiente e sufficientemente sicuro. [more]

Un punto dolente è l'integrazione tra la logica FTP e il filesystem sottostante che, a tutto vantaggio dei "traders", permette di definire nomi di file e cartelle incompatibili con i nomi validi accettati da Windows.

Il risultato è che potremo trovare cartelle o file con nomi tipo: Com1, Lpt1, CON, PRN o nomi composti da uno spazio vuoto che non è più possibile cancellare ne aprire se non dall'FTP stesso.

A questo problema esiste una semplicissima soluzione che Windows eredita dal vecchio DOS.

E' vero che le cartelle create con "nomi riservati" non sono accessibili, ma è anche vero che ogni nome di file su Windows ha anche un vecchio nome in formato 8.3 che non soffre delle stesse limitazioni.

Quindi per cancellare una cartella "protetta" basterà recuperare il suo vecchio nome DOS 8.3 dando il comando:

dir /x

e quindi cancellarla utilizzando il nome 8.3 direttamente con un comando:

rd XXXXXX~1

N.B. La tilde (~) si fa con la combinazione Alt-126

Impossibile avviare Windows XP il seguente file manca o è danneggiato

Qualche volta può capitare che Windows si blocchi in fase di avvio segnalando su schermo blu [more] uno dei seguenti errori:

Impossibile avviare Windows XP. Il seguente file manca o è danneggiato: \WINDOWS\SYSTEM32\CONFIG\SYSTEM
Impossibile avviare Windows XP. Il seguente file manca o è danneggiato: \WINDOWS\SYSTEM32\CONFIG\SOFTWARE
Stop: c0000218 {Errore nel file del Registro di sistema} Il Registro di sistema non ha potuto caricare il file hive: \SystemRoot\System32\Config\SOFTWARE oppure il suo registro o la sua copia.

o in inglese (se come me preferite il sistema in lingua originale)

Windows XP could not start because the following file is missing or corrupt: \WINDOWS\SYSTEM32\CONFIG\SYSTEM
Windows XP could not start because the following file is missing or corrupt: \WINDOWS\SYSTEM32\CONFIG\SOFTWARE
Stop: c0000218 {Registry File Failure} The registry cannot load the hive (file): \SystemRoot\System32\Config\SOFTWARE or its log or alternate

in sintesi questi errori ci dicono che il registro di sistema è corrotto o che il sistema non può accedere alle voci System o Software dello stesso.

Per risolvere il problema, bisogna accedere al PC con il cd di installazione di Windows e attivare la "console di ripristino".

Una volta caricata la console, vi troverete nella cartella c:\windows in cui dovrete inserire la seguenza in quest'ordine:

cd system32\config
dir software (o system a seconda dell'errore riscontrato)

Se il sistema restituisce un risultato al comando dir, dovete rinominare il file, altrimenti saltate il passaggio sucessivo.
Per rinominare il file di registro danneggiato digitate:

ren software software.bak (o system a seconda dell'errore riscontrato)

quindi ripristinate il file danneggiato direttamente dalla cartella repair dove dovrebbe esserci una copia aggiornata all'ultimo avvio andato a buon fine digitando:

copy c:\windows\repair\system (o system a seconda dell'errore riscontrato)

A questo punto il registro è ripristinato, per uscire dalla console di ripristino e riavviare il sistema, digitate EXIT seguito da invio e rimuovete il CD.

Il PC dovrebbe ripartire chiedendovi quale modalità di avvio utilizzare; selezionate "avvia normalmente" e tutto dovrebbe essere come lo avete lasciato.

Avere A: senza avere il lettore di floppy disk

Un'amica di mia moglie ha un software che per funzionare cerca di accedere ai dati presenti in un dischetto fornito assieme al programma.

Il problema è che lei non ha il lettore di floppy sul suo computer portatile, e il programma vuole per forza accedere all'unità A: per leggere i dati. [more]

A mio parere la soluzione più semplice è copiare il contenuto del floppy su un computer che ne ha (ancora) uno  e travasarlo quindi in una cartella del PC su cui gira il programma.

A questo punto aprendo il command prompt (Start -> Esegui: cmd) vado a digitare:

net use a: \\127.0.0.1\c$\floppy /PERSISTENT:YES

presumendo che ho creato la cartella floppy in c: e il programma dovrebbe funzionare.

MySql LIMIT in SqlServer

Quando si sviluppano dei siti che devono rappresentare un gran numero dati, l'unica soluzione per non generare tabelle enormi è l'uso della paginazione.

CI sono molti modi di paginare, ma il più comune e utilizzando delle stored procedure, specialmente in SqlServer. [more]

MySql offre una soluzione molto interessante attraverso il comando LIMIT, dove oltre a passare la il numero di righe che voglio ricevere (cosa che in SqlServer posso fare con il comando TOP) devo specificare l'offset di inizio. Quindi il comando LIMIT 15,5 sestituirà i risultati da 16 a 20.>

Ed ora arriviamo al punto di questo post: come posso fare a replicare questo comando in SqlServer?

Dopo innumerevoli tentativi, il sistema più rapido e che offre il miglior rapporto carico/prestazioni sembra essere la seguente query:

SELECT TOP x * FROM table
WHERE id NOT IN (SELECT TOP y id FROM table ORDER BY id)
ORDER BY id;

dove:

"id" è la chiave primaria della tabella
"x" è il numero di risultati che vlglio ottenere
"y" è la riga di partenza o offset della mia query

Il risultato è identico, peccato che la sintassi è completamente diversa e comporta precchi problemi se si vuole usare lo stesso codice sia in SqlServer che in MySql.

Qualcuno è riuscito a emulare LIMIT in tutto e per tutto con un UDF o un Stored?