mercoledì 20 aprile 2016

pgAdmin 4

C'è molto fermento ed eccitazione dopo l'annuncio che la versione 4 del famoso tool specifico per la gestione di un cluster PostgreSQL è vicina alla meta!
Come già anticipato un paio di anni fa, questa versione abbandona le wxWidget per lasciare spazio a Python e web frameworks, in modo da offrire maggiore flessibilità.
Con l'occasione gli autori hanno rivisto l'intera UI per migliorare l'esperienza di utilizzo del prodotto. Inutile dire che non vedo l'ora di provarlo!

Sysadmin panics: history

Uno dei metodi migliori per imparare una cosa è l'emulazione, ovvero il tentativo di ripetizione di un insieme di operazioni.
Capita allora di incontrare qualche sysadmin che, forse imbarazzato dal chiedere spiegazioni o aiuto, inizia a emulare i comandi dati da un altro sysadmin nella speranza di riuscire a fare le stesse cose.
Capita anche che si voglia non condividere la soluzione ad un problema, e quindi non si voglia essere emulati.
A me capitò di essere "spiato" attraverso una delle funzioni piu' stupide e banali: la shell history.
E' presto detto: io inserivo dei comandi attraverso il mio utente, tali comandi rimanevano nel ring della shell history e un altro sysadmin, mediante superutente, leggeva i miei comandi. Addirittura in tail come fosse un log.
La cosa ovviamente mi mandò su tutte le furio, ed ecco che linkare la history a /dev/null e azzerare il numero di entries fu' la mia reazione immediata. Per poi trovarmi i settaggi rimodificati al login successivo.
Ovviamente non si può molto contro un superutente, ed ecco quindi che viene in mio soccorso ancora una volta Emacs: dired e un qualche package per terminale e la battaglia fu' presto vinta.

martedì 19 aprile 2016

Sysadmin Panics: eliminare i commenti

Quando si produce del codice, in qualunque linguaggio, sia di scripting che di programmazione, i commenti rappresentano una parte fondamentale del sistema stesso. Si prenda esempio da quei progetti che non permettono a buon codice di "colpire" l'albero principale se non è opportunamente commentato e documentato.
L'idea è ovvia: anche se il codice è funzionalmente il migliore del mondo deve essere manutenibile da altre persone, che potrebbero non capire a prima vista (e anche alle viste successive!) il comportamento stesso.

Io credo, ho sempre creduto anzi, nell'importanza dei commenti nel codice, a qualunque livello.
Altri esperti non la pensano come me.
Mi è quindi capitato, mantenendo un sistema composto da diversi server, di trovare alcuni miei script modificati da un giorno all'altro. La modifica era semplice: tutti i commenti erano stati rimossi.
Motivo? Portavano via spazio!

Meglio non commentare sia l'azione che la motivazione.

Vediamo però di essere maliziosi: se si è un dipendente il costo/stipendio non viene stabilito in base al tempo nel quale si risolve un problema, e anzi si cerca di ottimizzare lo stipendio fisso risolvendo piu' problemi nello stesso tempo. E' quindi di importanza strategica la documentazione per una rapida comprensione di cosa un programma/script/task sta tentando di fare.
Se invece si è un consulente esterno, pagato a tempo, il fatto che occorra piu' tempo per leggere e comprendere un programma decommentato non è un problema per il sysadmin stesso, anzi potrebbe essere fonte di ulteriori guadagni...
Pensateci la prossima volta che vi trovate da uno dei due lati della barricata: potreste evitare figuracce o costi inutili.

sabato 16 aprile 2016

Mi sono ricordato il nome di quell'arco...

Quando ero un piccolo arciere, nella mia palestra c'era un signore che aveva un arco stranissimo e affascinante: era un incrocio fra un compound e un ricurvo.
Aveva i flettenti con corda singola, come i ricurvi, ma lo scarico come i compound.
Non ero sicuro mi sarei ricordato il nome di quella strana bestia da tiro, che non avrei rivisto piu' su nessun campo (credo fosse solo un arco da caccia/pesca).
O N E I D A !
Questo il nome del produttore di quell'arco, e cercando sul web si trova qualcosa di molto piu' elaborato di quel "rudimentale" modello che avevo ammirato così tante volte.


venerdì 15 aprile 2016

Pubblicare annunci su subito.it: trucchi, consigli, esperienze

1 Trucchi e consigli


La disponibilità di siti web per lo scambio e la vendita di materiale usato è ormai cosa consolidata, e anche io mi sono fatto prendere dalla spirale della vendita e così ormai da un anno pubblico e seguo costantemente i miei annunci.
Come motore principale uso subito.it, uno dei piu' conosciuti motori.
Nell'ultimo anno ho venduto con successo oltre 30 articoli, realizzando alcune centinaia di euro, nulla di cui "campare", ma questo mi ha permesso di liberarmi di oggetti che non usavo piu' e di ricavare qualche soldino extra.
Vorrei quindi, in questo articolo, condividere alcuni consigli e trucchi per aiutare altre persone a vendere i propri oggetti inutilizzati. Si badi bene: sono solo consigli dettati per lo piu' dal buon senso, non si tratta di regole esatte per il successo di una vendita.
Posso dire che la maggior parte degli annunci on-line non segue affatto questi consigli, e forse è proprio questo che rende i miei annunci leggermente piu' appetibili e interessanti rispetto agli altri.

Vediamo quindi come fare per mettere in vendita on-line un oggetto. Tenete presente che lo scopo principale è permettervi di vendere velocemente un oggetto senza perdere troppo tempo, ma un piccolo sacrificio iniziale è richiesto: il tempo speso per la preparazione dell'annuncio (foto, dimensioni, descrizione) verrà ripagato dal tempo risparmiato nel rispondere sempre alle medesime domande (quanto è grosso? quanto pesa? lo spedisci?).
Consiglio di lavorare off-line in questa prima fase, ovvero di compilare con calma la descrizione dell'annuncio e riportarla solo una volta completata sul sito dell'annuncio. Meglio anche se ci si crea un piccolo file di testo con la descrizione e si archiviano le foto: ciò farà risparmiare tempo qualora si voglia inserire l'annuncio anche in altri siti o lo si voglia ripubblicare da zero.



1.1 Fotografie


Le fotografie permettono di dare un colpo d'occhio all'oggetto stesso, e molti potenziali acquirenti scartano a priori degli annunci se le foto non sono convincenti. Ma quali sono le regole per dotare un annuncio di buone fotografie?

  1. evitate le foto fatte con il cellulare. Non importa quanto abbiate pagato il vostro telefono, le foto risulteranno sempre sbiadite e poco dettagliate. Abbiate un po' di pazienza e scattate qualche bella immagine con una macchina fotografica seria (anche una compatta digitale).
  2. fotografate i dettagli: i dettagli permettono di far risaltare lo stato di conservazione del vostro oggetto.
  3. usate sfondi neutri ove possibile. Se fotografate il vostro oggetto buttato in un angolo della soffitta, con al suo fianco altri oggetti non inclusi con la vendita, darete una cattiva impressione. Cercate di posizionare l'oggetto su sfondi neutri (ove possibile) e con forte contrasto, in modo da far risaltare l'oggetto stesso e non confondere chi legge il vostro annuncio con particolari inutili.
  4. fotografate etichette, confezioni, accessori: se il vostro oggetto dispone dell'imballaggio originale o ha etichette che identificano marca, anno, modello, potenza, caratteristica, fotografateli! Farete capire ai potenziali acquirenti che non state "mentendo" e gli darete la possibilità di verificare il reale valore dell'oggetto.




1.2 Titolo


Il titolo serve per la ricerca veloce, e quindi deve essere sintetico ma includere quanti piu' dettagli possibili circa l'oggetto. Se riuscite, indicate marca e modello dell'oggetto. Non inserite nel titolo lo stato di conservazione, non serve a molto (a meno a che non si tratti di un oggetto nuovo).


1.3 Descrizione


Ed eccoci alla parte piu' lunga. Io inizio sempre con una descrizione sommaria dell'oggetto, in sostanza descrivo quello che si vede dalle foto. A questo aggiungo sempre sistematicamente:

  1. dimensioni e peso dell'oggetto;
  2. stato di conservazione;
  3. elenco dettagliato di eventuali accessori;
  4. motivo per il quale lo vendo (inutilizzo, doppione, sostituito);
  5. se il prodotto è ancora sul mercato ed eventualmente se vi sono ancora pezzi di ricambio disponibili.


Concludo poi sempre specificando, in calce, altri punti nel tentativo (spesso vano) di filtrare gli acquirenti alla fonte:

  1. possibilità o meno di spedizione e se quest'ultima includa un sovrapprezzo;
  2. possibilità o meno di permuta con altri oggetti;
  3. possibilità o meno di consegna a domicilio.





1.4 Prezzo


Qualunque prezzo voi inseriate sarà sempre troppo!
Scherzi a parte, il prezzo è un punto nodale. Valutate attentamente il vostro oggetto e confrontantelo con i prezzi di oggetti identici o simili. Ponetevi la domanda se voi comprereste un oggetto usato a tal prezzo, ma non scendete immediatamente di prezzo, dopotutto a scendere siete sempre in tempo!



Con questi piccoli consigli sarete in grado di pubblicare in maniera un po' piu' professionale gli annunci, e questo nel lungo periodo vi ripagherà per il tempo risparmiato nel filtrare i messaggi dei potenziali acquirenti.
Nonostante questi consigli però inciamperete in ogni tipo di acquirente, alcuni anche palesemente maleducati.
Io ho raccolto le mie esperienze e ho cercato di catalogarli simpaticamente.


2 Prima di pubblicare


Può sembrare banale, ma prima di procedere alla pubblicazione dovete essere certi dello stato e del funzionamento del vostro oggetto, nonché della accuratezza del vostro annuncio.

Poneti anche la domanda se siete disposti o meno a svendere il vostro oggetto.
Vendere è molto diverso da /svendere/!
Siate consapevoli che ci potrebbe volere del tempo per concludere la vendita, anche dei mesi.
Accettatelo, non fatevi intimidire dai racconti di amici e conoscenti che nel giro di 5 minuti hanno venduto un rottame per qualche migliaio di euro. Potrebbe capitare anche a voi, ma il piu' delle volte non capita.
Se invece avete urgenza di vendere, ad esempio perché non avete posto dove tenere la roba, accettate il fatto che la priorità è cedere l'oggetto in rapidità e quindi anche ad un prezzo inferiore.
Stabilite la priorità per voi: ricavo o velocità di vendita. Dopodiché tenete presente quale sia la vostra priorità nel momento della trattativa.


3 Categorie di acquirenti


Nella mia breve carriera di venditore di oggetti inutilizzati ho avuto a che fare con qualche centinaia di potenziali acquirenti, e di questi solo tre mi hanno richiamato per ringraziarmi dell'oggetto ricevuto o acquistato.
Gli altri, spesso inconcludenti, li ho categorizzati come segue.



3.1 Categoria: "l'educazione non fa per me"


Molti, quasi tutti i potenziali acquirenti che mi contattano sembrano non riuscire a digitare sulla tastiera parole abbastanza semplici quali "buongiorno", "buonasera", "salve".
Se pubblicare un annuncio ordinato è un buon modo per fare vendite di successo, dall'altro lato rispondere agli annunci in modo educato evita che voi acquirenti siate scartati a priori.


3.2 Categoria: "Spedito?"


Anche se nel vostro annuncio avete indicato chiaramente termini e modalità di spedizione, qualcuno vi farà comunque la domanda se cedete l'oggetto al prezzo indicato compresa la spedizione. Se per oggetti piccoli si tratta di una possibilità non da scartare, a me è capitato di ricevere tale domanda per oggetti ingombranti, il cui costo di spedizione era di circa 25 euro.
Fate voi i conti.
Se sono in una buona giornata tendo a rispondere, educatamente, che sono disposto a spedirlo compreso nel prezzo a patto che l'acquirente mi convinca dell'affare che sto facendo in tal modo.


3.3 Categoria: "Offro io"


Avete pubblicato il vostro oggetto ad un certo prezzo, e qualcuno vi offre la metà per tale oggetto.
Sulla base di quale valutazione o calcolo?
Nessun calcolo, ma semplicemente:

  • non ha altri soldi da offrire;
  • sa che l'oggetto vale il prezzo che dite ma non li vuole spendere;
  • vuole rivendere l'oggetto a sua volta, al prezzo indicato da voi, e quindi lo deve acquistare a meno.

Si, tutte queste sono affermazioni reali, che mi sono state fornite come motivazione dell'offerta al ribasso.


3.4 Categoria: "lei non sa chi sono io!"


Prima o poi troverete qualcuno che si spaccia per un esperto del settore/categoria dell'oggetto che state vendendo e che vuole convincervi a lasciarglielo ad un prezzo piu' basso. Non importa quante argomentazioni oggettive voi portiate all'acquirente, questo ne saprà sempre piu' di voi (millantando magari di lavorare presso produttori dell'oggetto stesso).
Vendete un trapano? Troverete una persona che lavora per la Bosch (e che quindi non dovrebbe avere difficoltà ad acquistarne uno nuovo invece che uno usato).
Vendete un mobile? Troverete un falegname (che quindi potrebbe pure costruirselo il mobile).
Insomma, avete capito, non importa quanto sappiate del vostro oggetto, qualcuno saprà spiegarvi sicuramente perché dovete cederglielo a meno!


3.5 Categoria: "sono interessato"


Sono interessato.
Questo è il messaggio che spesso ricevo su molti articoli. Nessuna domanda, nessuna presentazione, niente.
Pare quasi un tentativo di frode, ma per quello che mi riguarda se non si è interessati a tal punto da dire almeno chi si è e come discuterne non vale nemmeno la pena di rispondere.


3.6 Categoria: "piu' foto"


Se avete seguito i miei consigli su come scattare e pubblicare le foto rimarrete abbastanza irritati dalla richiesta "mi mandi altre foto". E di quante foto hai bisogno per valutare l'oggetto? E soprattutto, quale particolare vuoi vedere dell'oggetto che non appare già in quelle pubblicate? E ancora, perché se a te scoccia alzare il culo e venirlo a vedere dal vivo, devo io sbattermi per farti avere altre foto?


3.7 Categoria: "domani ti pago"


Finalmente vi siete accordati per una vendita (con spedizione), manca solo il pagamento e poi potete spedire.
Intanto cominciate a rifiutare altre offerte, perché avete già tutti i dati dell'acquirente e siete solo in attesa della conferma di avvenuto pagamento.
Ma la conferma non arriva.
E comincia la litania del "oggi non ho avuto tempo ma domani ti pago", che si protrae per qualche giorno fino a che l'acquirente sparisce, lasciandovi con l'oggetto non piazzato.
Se siete morti di fame o avete cambiato idea ditelo, fate sicuramente una figura migliore.


3.8 Categoria: "domani passo"


Se invece la persona indecisa vuole venire a ritirare l'oggetto comincerà a fissare appuntamenti che poi vengono puntualmente disdetti, anche qui fino a quando l'acquirente sparirà del tutto.


3.9 Categoria: "mi credevo fossero due"


Avete predisposto il vostro annuncio con diligenza e precisione, specificando che avete l'oggetto in vendita (in singola quantità). Dalle foto si vede che l'oggetto è singolo.
Avete fissato un appuntamento per visionare l'oggetto con un potenziale acquirente.
Che poi disdice perché pensava che gli oggetti in vendita fossero due.
Certo:

  • sei così stupido che dalle foto non lo capisci che si tratta sempre dello stesso oggetto ripreso da piu' angolazioni;
  • sei così stupido che non hai letto la descrizione;
  • sei così stupido che pensi che io sia così stupido da fare un 2x1!





3.10 Categoria: "un piccolo sconto?"


Questa è la piu' frequente, e sempre piu' frequentemente la risposta che fornisco è che si comprino l'oggetto nuovo.
Uno non vende la roba usata per guadagnarci, ma doverci anche rimettere…


3.11 Categoria: "uno diverso costa meno ma vorrei il tuo"


Questa non capita spesso, ma quando capita è spassosissima.
Di fatto voi vendete un oggetto, magari di marca, il cui costo usato supera quello del nuovo di un prodotto analogo non di marca. Ed ecco che compare il "furbo" della situazione, che vi notare che lui vorrebbe prendere il vostro oggetto (perché di marca) ma è disposto a pagarlo il prezzo di quello non di marca.
Alcuni addirittura vi fanno presente che al supermercato a 10 km si trova nuovo al prezzo piu' basso.
Beh, buon viaggio verso quel supermercato!


3.12 Categoria: "ritiro subito con sconto"


E' una delle piu' irritanti per me: sostanzialmente in poche parole l'acquirente si rende disponibile a ritirare subito la merce offrendo quindi un prezzo molto piu' basso.
Ma scusa, dove sta scritto che io mi devo sbarazzare subito dell'oggetto e quindi accetto qualunque cifra purché tu lo venga prendere? A meno che non abbiate messo in vendita un pacco bomba o vi stiate trasferendo a Panama, questo acquirente va ignorato.


3.13 Categoria: "volevo solo un po' di compagnia"


I potenziali acquirenti di questa categoria sono educati, civili e tendono a sbrodolare pezzi della loro vita spiegandovi che vorrebbero il vostro oggetto perché ne avevano uno uguale al quale erano molto attaccati…o qualcosa del genere.
Alla fine però, al momento di accordarsi su prezzo e/o spedizione, questi acquirenti spariscono.




3.14 Categoria: "risponde me su account privato"


E' una truffa.
Non c'è altro da dire.
Cercate su google e state alla larga da queste risposte.


giovedì 14 aprile 2016

Non mollare mai

E' questa la frase che mi è stata lasciata.
Ma è difficile.
Quando ricevi una brutta notizia resti stordito, ti riprendi, reagisci, ma implicitamente abbassi la soglia di sopportazione. Così la successiva notizia, magari meno brutta, fa si che comunque tutto ti appaia peggiore di come oggettivamente è.

Ho fatto tante gare di tiro con l'arco, molte orribili, tutte per causa mia. Eppure non mi sono mai ritirato. 
Penso che sia la cosa che devo tenere a mente ora: la gara va finita, guarderemo il risultato alla fine.

mercoledì 13 aprile 2016

My story about using Eclipse

I started using Eclipse as my first Java IDE back in 2004.
I had always written code in Java, since version 1, but back in those days I was using some very simple editing (even the Microsoft Edit, it was even before I started using Emacs!) or some less expensive (in term of resources) IDEs.
My switch to a "real" IDE was during the fourth year of University, when I started using Borland. I remember the IDE was around 80 MB in size and required almost a minute to start on my Pentium IV. Nevertheless it was simple and to the point: it allowed me to develop in Java having syntax highlight, Javadoc inspection, project management and some other feature.
Ok, I have to say it was much more than I needed, since I was working on one or two projects at the same time back in those days. Morever, I was totally unaware of code versioning, and in fact I had developed my own way of doing incremental backups, but that's another story.

While approaching my master thesis, that of course had to be based on Java (not because of choice of mine), I started evaluating some other Java IDE. At that time the Forte For Java was a really famous piece of code, but it was a little hungry on resources and required almost two minutes to start up on my Celeron 700 MHz with 192 MB of RAM. Moreover, while the start up time was not such a big deal for me, having to work for a lot of hours without turning off the computer, the program itself was pretty much unusable with menus half-empty, rendering delays and freezes.
I tried then the Emacs extension for Java, but at that time I was a young Emacs users and the whole JDEE was too much complex for either my fingers and brain.
Having spent a couple of weeks searching for a product, I switched back to the Borland Java IDE, something I already know quite well and that allowed me to be productive from day one.

In the following years I experimented a lot with other two emerging products: IBM Eclipse and Netbeans IDE. However I was not working as a Java developer, or better, Java was not my main language after the university, and therefore I did not spent a lot of time using them for real projects.
In 2004 there was a shift: at the Principle and Practice of Programming Java (PPPJ) conference in Kilkenny I met Vivek Sarkar, an IBM fellow that shown us the magic power of Eclipse (and of Jikes RVM for what it matters). At that time there was Eclipse 2 (if my memory serves me well 2.2) and the main feature that astonished us was the "refactoring" capabilities of Eclipse.
Once I was back home I installed Eclipse and switched definitely to such environment, letting Emacs for quick-and-dirt editing.

Several year later, at the time of version 3, I got back to a Java-based job and developed an application with the Rich Client Platform (RCP), so I used Eclipse to develop another Eclipse application (a kind of recursion that computer scientist seems to appreciate very well).

Then I had to manage a PHP codebase, and did it with Eclipse too even if, I have to admit, the support to such language was not mature enough and the editor had some lag.

Today I use Eclipse on a regular day-by-day basis mainly for web development, and mainly for Java because I use Emacs for all the rest.