Smartphone

How to import contacts on your phone from vcf file: only one app is truly working

Transfering contacts from phone to phone, or from one SIM card to another, may look easy..there are a lot of apps doing the job after all.

WRONG. You might disgracefully realize that most of the apps on Google Play (if you are using an Android operating system) pretending to do this not even read a vcf file, and yet grab  your phone memory.

A Google Play screenshot of the app I recommend

The only app working is named Import Export Contacts, is free and allows you to import contacts from the a vcf file chosen from the phone’s memory through a single command. A second version, named Import Export Contacts Pro, has also been released, which is always free and also associates more features.

Striking Fact: it is an app from India and has just 3 stars out of 5 even if it’s the only app working.

Once the app is open, click on “Open File” and select the file to import. After selecting it, press the “Import” or “Import Excel” button. Don’t care so much about that “Excel”, it also imports vcf files. After that, just go see the phone book to see that all the contacts have been imported.

Smartphone

Come importare contatti sul telefono da file vcf: solo una app funziona ed ecco qual’è

Nel caso vi doveste trovare a dover trasferire dei contatti da un telefono all’altro, o da una sim all’altra,  potreste rendervi spiacevolmente conto che la maggior parte delle app presenti su Google Play (nel caso abbiate come sistema operativo Android) che si offrono a questo proposito sono non riescono poi a leggere il file vcf che inserite, rivelandosi una perdita di tempo e di spazio per il vostro smartphone.

La pagina Google Play dell’app che vi consiglio

L’unica app funzionante a questo proposito si chiama Import Export Contacts, è gratuita e permette attraverso un solo comando di importare i contatti dal file scelto dalla memoria del telefono. E’ stata anche rilasciata una seconda versione Import Export Contacts Pro, sempre gratuita, che associa anche altre funzioni.

Una volta aperta la app, cliccate su “Open File” e selezionate il file che volete importare. Dopo averlo selezionato premete il tasto “Import” o “Import Excel”. Non importa se c’è scritto Excel, importa comunque anche file vcf, e con successo. Fatto questo, basterà andare a vedere la rubrica del telefono per accorgersi che tutti i contatti sono stati importati.

 

VR

Muoversi in un video 360 come in VR: quando il 6-DOF (video volumetrico) fa da collante

Negli ultimi anni abbiamo assistito ad una evoluzione rapidissima del concetto di video, e in meno di tre anni termini prima semi-sconosciuti come video immersivo e virtual reality sono entrati invece a far parte del nostro vocabolario, nel senso che comunque puoi introdurli in un discorso senza che la controparte ti guardi stupita.

Negli ultimi tempi poi, mentre la realtà virtuale sta facendo il suo corso, i video immersivi sono rimasti praticamente allo stesso punto di quando nel 2015 furono introdotti su Youtube. Nessuna modifica sostanziale e un gruppo di portali dedicati ai video a 360 gradi che sono però quasi finiti nel dimenticatoio.

Certamente bisognerebbe però far presente a qualcuno che il vero passo avanti potrebbe arrivare, per esempio, quando la realtà virtuale incontrerà quella dei video immersivi, cioè quando la realtà stessa potrà essere interamente e fedelmente riprodotta attraverso i visori.

Da un lato, infatti, i video a 360 gradi sono limitati ad un singolo punto di osservazione, senza possibilità di movimento. Dall’altro, anche volendo prendere la VR più seriamente possibile, rimane sempre il problema di non poter fare più di 10 passi in avanti senza inciampare in qualche mobile di casa e cadere rovinosamente a terra.

Il punto di convergenza tra i due tipi di tecnologie si è avuto quando si è iniziato a parlare di 6-DOF, ovvero sei libertà di movimento all’interno di un video (avanti/indietro, destra/sinistra, su/giù). Per fare questo (ci hanno lavorato diverse grandi aziende) non si faceva altro che montare più videocamere insieme da posizioni diverse, in modo da simulare un minimo movimento in tutte le sei direzioni allo spettatore che guarderà il video. Questo tipo di video viene chiamato volumetrico, in quanto è come se si creasse una piccola sfera entro cui lo spettatore può muoversi all’interno del video, come se stesse camminando al suo interno, ma senza potersi spostare più di tanto.

Un passo in più è stato fatto quando nel 2017  dei ricercatori dell’Università di Stanford che lavoravano per conto della Adobe hanno ideato un sistema per creare video 6-DOF con una singola videocamera. Praticamente il l’operatore gira per la stanza riprendendo da più posizioni e poi il rendering fa il resto.

 

 

 

Reti

Creare un micro-network locale con rete mesh tra più dispositivi wi-fi collegati

Quando nel 2010 ci fu quel terremoto devastante ad Haiti, la maggior parte delle infrastrutture di telecomunicazione vennero distrutte. Dall’altra parte del mondo, ad Adelaide, Paul Gardner-Stephen pensò ad una rete locale che potesse collegare un dispositivo con quelli vicini.

Il ricercatore australiano ha avviato di conseguenza un curioso progetto, denominato Serval, finalizzato alla creazione di una rete mesh tra smartphone che potesse costituirsi valida alternativa alle reti di comunicazione tradizionali, se non altro per il fatto che le reti mesh sono fondamentalmente gratuite.

Le reti mesh, cioè a maglie, si differenziato dalle altre fondamentalmente per il fatto che i dati non sono accentrati ma ripartiti su ogni dispositivo, il quale ne riceve, ripete e trasmette il flusso.

Il progetto Serval permetterebbe di effettuare chiamate gratuite, inviare sms e condividere file. Sono state poi sviluppate delle app accessorie come Serval Maps, che ha lo scopo di costruire un sistema collaborativo di mappazione geografica sullo stile di Google Maps.

Rete mesh wifi all’interno di una abitazione

E’ evidente però che fin qui si sta parlando di grandi network, con la partecipazione di migliaia di dispositivi collegati tra di loro. Si potrebbero considerare invece, anche le potenzialità dei micro-network, gli stessi che, per intenderci, si possono creare in casa collegando più dispositivi con un access point.  Con questo tipo di reti ogni computer può accedere contemporaneamente ai dati di qualsiasi altro dispositivo connesso.

Ma con la rete mesh non è necessario un access point. Bastano solamente i dispositivi, ovvero più smartphone collegati tra di loro tramite wi-fi.  Luoghi pubblici frequentati (scuole, parchi, biblioteche, università, hotel e dormitori..) riuniscono tra loro centinaia di dispositivi collegati, e molto probabilmente beneficerebbero molto di un network locale di libero e gratuito accesso.

Mondo

Sul costruire un’isola artificiale ed indipendente: i casi celebri

Installazione di una piattaforma simile a quella di Sealand

A tutti gli internauti sarà capitato di sentire parlare di Sealand, la piattaforma al largo delle coste inglesi che viene rivendicata come nazione. Una storia fuori dall’ordinario e dal tono eccentrica quella del proprietario, il britannico  Roy Bates, e del del suo microstato, iniziata quando nel 1966 Bates occupò una ex-fortezza della Royal Navy situata a circa 4 miglia nautiche dalla costa. Costruite come difesa dagli attacchi tedeschi, queste piattaforme vennero successivamente abbandonate dai militari. Considerato che all’epoca dell’occupazione di Bates le acque territoriali del Regno Unito non si estendevano oltre le 3 miglia nautiche dalla costa, il Principato di Sealand, questo il nome ufficiale, costituisce di fatto un caso senza precedenti. Una sentenza emessa da un tribunale inglese nel 1968 ha dichiarato tra l’altro che la piattaforma di Sealand si trova in acque internazionali essendo di conseguenza fuori dalla competenza del Regno Unito. Secondo Bates poi, il fatto nel 1978 la Germania intervenne per trattare riguardo la liberazione di un cittadino tedesco (che si era illegittimamente appropriato di Sealand occupando la piattaforma insieme ad un gruppo di arditi) dimostra de facto il riconoscimento del principato da parte dei tedeschi.

Ma cosa succederebbe se a qualcuno venisse in mente, oggi, di occupare un forte abbandonato o costruire un’isola artificiale in mezzo al mare?

Innanzitutto, bisogna considerare che le acque territoriali dal 1982 non si estendono più per 3 miglia natiche, ma per 12 (Convenzione di Montego Bay). Inoltre la stessa convenzione stabilisce delle zone economiche esclusive di 200 miglia nautiche (370 km) entro le quali ogni nazione esercita delle competenze esclusive quali sfruttamento delle risorse, giurisdizione e ricerca scientifica.

Un sistema di galleggianti modulari messo a punto nei Paesi Bassi

Le ZEE (zone economiche esclusive) pongono di fatto l’inizio delle acque internazionali solo oltre la piattaforma continentale, rendendo quindi di fatto improbabile il ripetersi di nuovi casi Sealand, a meno che non si ci trovi in acque bassissime, come ad esempio il Mare del Nord. Questo, naturalmente, a meno che a qualcuno non venga in mente di far nascere isole artificiali nel Pacifico.

Ed in quest’ottica una realtà già c’è ed è quella del progetto BlueFrontiers, che prevede la costruzione di un’isola galleggiante nel Pacifico al largo di Tahiti nel 2022.

Dietro BlueFrontiers, il cui costo stimato (iniziale) si aggira sui 200 milioni di euro, ci sono diverse società di investitori tra cui Pether Thiel, fondatore di Paypal nonchè ideatore del progetto. Certo, è sicuramente meno economico rispetto all’installazione di una piattaforma non galleggiante come quella del Principato di Sealand (che fu messo però in vendita a 768 milioni di dollari nel 2008, ThePirateBay sognò di diventarne acquirente) o di una piattaforma offshore, per la cui costruzione servirebbe sborsarne (almeno) alcune decine di milioni.

 

Un semplice esempio di isola artificiale, situata nel porto di Copenhagen

Ricorrere alla più semplice delle soluzioni, cioè comprarsi direttamente un’isola, sarebbe senza dubbio l’idea più percorribile, se non fosse che tutte le isole che si possono acquistare sono collocate a pochi chilometri dalle coste, e tutti gli stati sovrani di guardano bene dal commettere la sventatezza di dar via i propri territori posti al di fuori delle acque territoriali. Ma non tutti cercano l’indipendenza come Sealand. Il sito Private Island è forse l’agenzia più celebre, almeno nel web, che effettua mediazioni tra “venditori” e “compratori” di isole. Curioso è il fatto che per comprarle non servono sempre cifre stratosferiche. Si parte addirittura da prezzi inferiori ai 100 mila euro, praticamente meno del costo di un appartamento.

 

 

 

 

 

 

 

CSV · PHP

How to extract a single column values from CSV file in PHP

Importing data from a CSV file with PHP may mean you need to store or print just the results of a single and specific column of the table. To make an example, in the following case, I need to extract data from “color” column:

fruit, color, price
tomatoes, red, 0.08
oranges, orange, 0.12
bananas, yellow, 0.12

To extract the single color column from the table, fgetcsv PHP function can be used. This function returns each line values from a CSV table. In the loop, changing the value of $c variable, will output results of each line starting from $c variable value. Now remove $num variable and add  $c=0; $c < 1 (if just first column is wanted) [or $c=1; $c < 2 for second column or also $c=0; $c < 2 for first and second columns and so on] prevents to print all the following columns of the table, restricting results to a single column:

FGETCSV Basic Usage (Extracts all columns results line by line):

 <?php
$row = 1;
if (($handle = fopen("test.csv", "r")) !== FALSE) {
    while (($data = fgetcsv($handle, 1000, ",")) !== FALSE) {
        $num = count($data);
        echo "<p> $num fields in line $row: <br /></p>\n";
        $row++;
        for ($c=0; $c < $num; $c++) {
            echo $data[$c] . "<br />\n";
        }
    }
    fclose($handle);
}
?>
 FGETCSV COLUMN “1” EXTRACTION (Extracts just first column results):
 <?php
$row = 1;
if (($handle = fopen("test.csv", "r")) !== FALSE) {
    while (($data = fgetcsv($handle, 1000, ",")) !== FALSE) {
        $num = count($data);
        echo "<p> $num fields in line $row: <br /></p>\n";
        $row++;
        for ($c=0; $c < 1; $c++) {
            echo $data[$c] . "<br />\n";
        }
    }
    fclose($handle);
}
?>
 FGETCSV COLUMN “2” EXTRACTION (Extracts just second column results):
 <?php
$row = 1;
if (($handle = fopen("test.csv", "r")) !== FALSE) {
    while (($data = fgetcsv($handle, 1000, ",")) !== FALSE) {
        $num = count($data);
        echo "<p> $num fields in line $row: <br /></p>\n";
        $row++;
        for ($c=1; $c < 2; $c++) {
            echo $data[$c] . "<br />\n";
        }
    }
    fclose($handle);
}
?>
 FGETCSV COLUMN “3” EXTRACTION (Extracts just third column results):
 <?php
$row = 1;
if (($handle = fopen("test.csv", "r")) !== FALSE) {
    while (($data = fgetcsv($handle, 1000, ",")) !== FALSE) {
        $num = count($data);
        echo "<p> $num fields in line $row: <br /></p>\n";
        $row++;
        for ($c=2; $c < 3; $c++) {
            echo $data[$c] . "<br />\n";
        }
    }
    fclose($handle);
}
?>
PHP · Wordpress

How to store WordPress Post Content in to a PHP variable

If you are developing something with WordPress you may need to create a variable in which to insert the content of a post. Something like:

$content = ..post content..

Classic the_content() function just prints the content of the article but does not allow to save it as a variable, unless you use content buffer. On the other hand  the content can be easily stored into a variable using get_the_content() function, even if if it does not return the content in the same way the_content() does it, since text is unformatted.

You can call get_the_content() function even outside the loop using the global variable $post:

global $post;
$content = $post->post_content;
In so doing post content will be saved within the $content variable and will then be available to you when you want to use it.
Uncategorized

Messaggio non recapitato: perchè la email torna indietro e come risolvere il problema

Talvolta può accadere che inviando una e-mail, questa non venga recapitata. Quando ciò succede, solitamente il mittente è avvisato pressoché immediatamente dal server, dal momento che ci viene restituito quasi sempre un messaggio di errore come risposta.

Indirizzo irraggiungibile

Uno degli errori più comuni è quello 550 5.1.1, cioè di indirizzo irraggiungibile. Il testo che ci viene mostrato in questi casi è più o meno simile al seguente:

Delivery to the following recipient failed permanently:

     [email del destinatario]

The error that the other server returned was:
550 5.1.1: Recipient address rejected: undeliverable address.

L’errore di indirizzo irraggiungibile compare quando il server del destinatario non riconosce la e-mail a cui vogliamo spedire il nostro messaggio, e lo rimanda indietro al mittente. Questo avviene molto frequentemente in caso di indirizzo email sbagliato o quando un sito internet non è più attivo, e il server del provider di conseguenza non riconosce più l’e-mail ad esso associata. Altre volte invece può accadere a seguito di un malfunzionamento del server: in questo caso basterà attendere per poter inviare il messaggio.  Per risolvere il problema nel caso di irraggiungibilità permanente dal server è necessario trovare un indirizzo e-mail alternativo del destinatario a cui vogliamo inviare il nostro messaggio. Questa operazione può essere eseguita anche se il sito non è più raggiungibile, mediante servizi di archivio come la Wayback Machine, che permette di visitare un sito come era nel passato o indagando direttamente nello storico del whois del dominio.

Messaggio rifiutato per Spam

Un altro errore abbastanza frequente è quando un messaggio viene rifiutato. In questo caso la e-mail di errore in ritorno ha in chiara dicitura l’intestazione “Messaggio rifiutato”. Nella maggior parte dei casi succede perché l’indirizzo e-mail del mittente è stato riconosciuto dal server del destinatario come dannoso, e di conseguenza il messaggio viene bloccato come spam e non inviato. Cioè non compare in nessun modo al destinatario.

Questo problema è molto comune tra tutti coloro che gestiscono un sito e si trovano a dover inviare le e-mail automatiche ai propri utenti per mezzo di script automatici. In questi casi per risolvere il problema bisogna rivolgersi direttamente al provider email del destinatario e far includere il proprio indirizzo e-mail nella whitelist, affinchè non il messaggio non sia più contrassegnato come spam ma recapitato al destinatario.

 

 

Soldi

Microlavoro: cos’è e quali sono i migliori siti in per vendere e comprare servizi

E’ conosciuto spesso nella sua denominazione inglese, ovvero microjob, ma il microlavoro è realmente una concreta opportunità di guadagno per tutti coloro che hanno competenza in qualcosa. Prendono il nome di microlavoro infatti la compravendita di piccoli servizi tra un acquirente/cliente ed un offerente, spesso mediati da terzi. Il fenomeno del microlavoro comunque, ha trovato il suo grande sviluppo nel mondo di internet, a seguito della nascita dei portali di freelancing e poi più specificatamente dei portali dedicati alla vendita di servizi.

Upwork, Prontopro, Habitissimo

Tra i servizi online dedicati al mondo del lavoro e ai freelancers ci sono UpWork e Linkedin, che fanno da mediatori tra il lavoratore e le aziende o i clienti. Ci sono anche portali dedicati alla possibilità di richiedere preventivi online. I più famosi in Italia sono ProntoPro, Fazenda e Habitissimo, ma hanno più che altro una funzione di presentazione tra clienti e venditori: la parola microlavoro meglio si applica per tutti quei portali che offrono direttamente l’erogazione del servizio online.

Fiverr

Una schermata di Fiverr: tutti i servizi in vendita vengono mostrati per categoria.

E’ il caso del portale americano Fiverr, che permette a chiunque di vendere e comprare servizi in tutto il mondo: il pagamento avviene direttamente online tramite carta di credito o di debito ed i servizi offerti sono solitamente erogabili direttamente sul web, come per esempio traduzioni, correzioni di bozze, creazioni grafiche e multimediali.

Cinqueuro e Jobee

C’è da dire che se da un lato è vero che su Fiverr la maggior parte del pubblico è americano e ci sono pochi connazionali, esistono anche dei portali simili in Italia: il primo è Cinqueuro.it, un sito dove è possibile vendere qualsiasi cosa a partire dal prezzo di cinque euro, mentre il sito Jobee.it permette di costruire dei veri e propri profili dedicati a chi eroga il servizio, come nel caso di professionisti, offrendo inoltre la possibilità di effettuare la ricerca del servizio per località.

Wordpress

Come creare un tema per WordPress in 5 minuti

Creare un tema per WordPress può sembrare difficile, ma in realtà il punto è che la grande parte del lavoro viene compiuta per creare l’aspetto grafico e qualche altro carattere meramente funzionale del tema. La sua creazione nei contenuti essenziali è realmente un procedimento molto veloce che ora vi farò vedere. WordPress, per prima cosa, gira su PHP. Il PHP ne gestisce l’aspetto esecutivo, mentre per gli elementi strutturali si usa l’HTML più il CSS per quelli grafici. HTML+CSS vengono inseriti nelle pagine PHP.

Creazione dei file

Apriamo quindi molto semplicemente 5 nuovi documenti sul blocco note del nostro computer: il primo lo chiamiamo “header.php”, il secondo “sidebar.php”, il terzo “footer.php”, il quarto “style.css” e infine il quinto “index.php”.

Header, Sidebar e Footer sono le parti del layout di una pagina: l’header è l’intestazione, la sidebar la barra laterale, mentre la footer è lo spazio in fondo alla pagina. Nel file index ci va scritto quello che comprarirà nella parte principale o main della pagina, quella dei contenuti.

Il foglio di stile

Il file “style.css” serve a comunicare a WordPress comandi grafici. In questo caso, il nostro tema è molto semplice e non dobbiamo inserirci nessun comando, solamente i dati obbligatori, cioè i dati del tema. Inseriamo quindi nel file “style.css” il seguente codice:

/*
Theme Name: Nome del Tema.
Theme URI: Indirizzo autore del sito
Description: Una breve descrizione
Version: 1.0
Author: Nome Autore
Author URI: Indirizzo del sito internet
*/

La pagina index e il loop degli articoli

I file header,sidebar e footer possono essere lasciati vuoti. In “index.php” inserite il seguente codice:

<?php get_header(); ?>

<?php get_sidebar(); ?>

<?php if ( have_posts() ) : ?>
<?php while ( have_posts() ) : the_post(); ?>
<div id=”post-<?php the_ID(); ?>” <?php post_class(); ?>>
<div class=”post-header”>
<div class=”date”><?php the_time( ‘M j y’ ); ?></div>
<h2><a href=”<?php the_permalink(); ?>” rel=”bookmark” title=”Permanent Link to <?php the_title_attribute(); ?>”><?php the_title(); ?></a></h2>
<div class=”author”><?php the_author(); ?></div>
</div><!–end post header–>
<div class=”entry clear”>
<?php if ( function_exists( ‘add_theme_support’ ) ) the_post_thumbnail(); ?>
<?php the_content(); ?>
<?php edit_post_link(); ?>
<?php wp_link_pages(); ?> </div>
<!–end entry–>
<div class=”post-footer”>
<div class=”comments”><?php comments_popup_link( ‘Leave a Comment’, ‘1 Comment’, ‘% Comments’ ); ?></div>
</div><!–end post footer–>
</div><!–end post–>
<?php endwhile; /* rewind or continue if all posts have been fetched */ ?>
<div class=”navigation index”>
<div class=”alignleft”><?php next_posts_link( ‘Older Entries’ ); ?></div>
<div class=”alignright”><?php previous_posts_link( ‘Newer Entries’ ); ?></div>
</div><!–end navigation–>
<?php else : ?>
<?php endif; ?>

<?php get_footer(); ?>

Questo codice inserito non è altro che l’inserimento dell’header e della sidebar, poi il loop (cioè il comando che dice a WordPress che in quel punto può far vedere gli articoli pubblicati) e infine l’inserimento della footer. In questo caso compariranno solo gli articoli pubblicati perchè in header, sidebar e footer non abbiamo messo nulla.

A questo punto il vostro sito è fatto. Potete quindi inserire questi cinque file in un unico file compresso e caricarlo su WordPress.