Riviste PDF: come riceverle via Email

Ho scoperto con piacere Tabbloid, un servizio che riesce a generare una rivista partendo da una lista di feed RSS. Il risultato è un documento PDF, in stile magazine, ovvero una rivista su due colonne contenente gli articoli estratti dai feed. Ogni articolo è corredato da titolo, testo e immagini come in un normale giornale acquistato in edicola.

Rivista PDF

Il promotore dell’iniziativa è Hewlett-Packard Development Company, quindi un nome una garanzia. Il sistema si imposta attraverso una semplice paginetta in cui si inseriscono tutti i feed RSS voluti e si dettagliano i parametri di invio del PDF. Tabbloid infatti funziona inviando la rivista via email alla propria casella di posta a cadenza fissa personalizzabile in ogni suo dettaglio.

rivista pdf

Le caratteristiche del servizio sono:

  • Design professionale
  • Consegna automatica
  • Configurazione intuitiva
  • Gratuito
  • Non è necessario un account

Altra nota positiva è la possibilità di interagire attraverso le API messe a disposizione dal sistema, in modo da ingolosire gli sviluppatori più incalliti.

Questo servizio automatico potrebbe far concorrenza ad altre riviste PDF che sono nate nella blogosfera visto che se ne possono creare senza limiti di quantità e possono essere fatte su misura dei nostri personalissimi interessi.

FlexiGrid, le tabelle HTML prendono vita

Le tabelle HTML, tanto in voga fino a qualche anno fa, ora sono cadute in disgrazia, soppiantate da codice più “semantico” e dai fogli di stile. In questa nuova era del web, JQuery le riporta alla luce, nella loro funzione originaria, cioè per impaginare tabulati di dati.

Flexigrid, tabelle in jquery

Sto parlando di un plugin per JQuery, FlexiGrid, che costruisce tabelle in stile “desktop”, in modo elegante e semplice. Con un’unica riga di codice:
$('.flexme').flexigrid();
verrà convertita una tabella HTML in una tabella ricca di funzioni e interattività. Ecco alcune sue peculiarità:

  • Colonne ridimensionabili
  • Tabella ridimensionabile in altezza e larghezza
  • Colonne ordinabili
  • Gestione temi
  • Converte tabelle ordinarie
  • Recupero dei dati via AJAX (con XML e JSON)
  • Paginazione
  • Colonne attivabili/disattivabili
  • Toolbar
  • Ricerca
  • API

FlexiGrid, come mostrano gli esempi sul sito ufficiale, trasforma la vostra applicazione web in un’interfaccia usabile e agile, sempre più vicina alle esigenze degli utenti.

Google Maps pubblica le API per la luna, Marte e le stelle

google maps apiE’ fresca fresca la notizia della pubblicazione di nuove API che consentono di mostrare su Google Maps le stelle della volta celeste. I dati erano belli pronti visto che erano già presenti su Google Earth. L’integrazione anche sul framework web si è conclusa proprio in questi giorni e appunto oggi Google ne ha dato notizia.

Quindi oltre al layer "cielo" (così viene chiamato su Google Earth), sono stati incluse altre mappe da poter utilizzare tramite le API. Per chi ha un po’ di pratica con il javascript di Google Maps, solitamente il tipo di mappa (GMapType) poteva essere la cartina stradale o la vista fotografica dal satellite (G_NORMAL_MAP o G_SATELLITE_MAP ). Ora ci ritroviamo anche queste altre tipologie:

  • G_MOON_ELEVATION_MAP
  • G_MOON_VISIBLE_MAP
  • G_MARS_ELEVATION_MAP
  • G_MARS_INFRARED_MAP
  • G_MARS_VISIBLE_MAP
  • G_SKY_VISIBLE_MAP

Queste mappe sono per:

  • mappa altimetrica della luna,
  • mappa del visibile sulla luna,
  • mappa altimetrica di Marte,
  • mappa all’infrarosso di Marte,
  • mappa del visibile di Marte, 
  • la mappa del cielo.

Google ha già predisposto una pagina di esempio che mostra le mappe in funzione. La notizia è veramente interessante. Non aspetto altro di vedere le prime applicazioni fatte alla luce di queste novità.

Google Maps API per il cielo, marte e la luna

Google gears, le applicazioni web diventano offline

Google Gear, una nuova invenzione di GoogleGoogle gears, il nuovo servizio di google, sta rappresentando un punto di svolta nel panorama delle integrazioni più strette tra client e server. Esso infatti, nelle intenzioni degli sviluppatori, dovrebbe servire a colmare un gap, peraltro tuttora esistente, fra applicazioni tradizionali e applicazioni web-based; questi si sono fatti una semplice domanda: in cosa questi due tipi di applicazione hanno il maggior numero di differenze, e sono arrivati ad una conclusione: la differenza più incisiva riguarda la gestione dei dati, ma soprattutto il fatto ovvio che per far girare un’applicazione web-based sia necessario giocoforza una connessione ad internet.

Google gears, come abbiamo già  detto vuole colmare questo gap, facendo in modo che alcune funzionalità  (e alcune applicazioni web-based) possano essere in parte od in toto scaricate localmente, gestite anche non in presenza di una connessione internet, e poi possibilmente rimandate indietro al server quando la connessione è¨ presente, operando una sorta di allineamento fra dati locali e dati del server. Questo articolo vuole essere una panoramica per capire cosa è possibile fare con google gears.

 

Innanzitutto per utilizzarlo, occorrono due cose fondamentali:

  • per il client, scaricare un piccolo plugin (disponibile per Firefox, Netscape, ecc.)
  • per il server, oltre al file .htm o .html all’interno del quale metteremo il codice javascript adeguato, occorre includere anche il file gears_init.js fornito da google gears, per poter utilizzare tutte le api fornite.

Per quanto riguarda invece le strutture di dati, essi, nella loro forma più completa, seguono uno schema del tipo:

  • Una User-Interface, lato client, che comunica attivamente con un commutatore di dati
  • il commutatore di dati, che (in base a come è programmato) salva alcuni dati localmente e altri nel server
  • i dati locali che sono presi o salvati in un database (sempre locale)
  • il database che scambia dati, tramite un sistema di sincronizzazione adeguato, con il server.

Ma google gears è un’ API fatta di tanti moduli, tra cui quelli più importanti sono:

  • Database : da la possibilità  di gestire non dei semplici cookie, ma dei veri e propri database SQL con i dati posti nella macchina locale.
  • LocalServer : serve a dare l’impressione che si è online, quando in realtà si caricano web-app o dati che sono conservati in locale
  • WorkerPool : serve ad eseguire del codice Javascript in modalità asincrona: in tal modo è possibile visualizzare intanto la pagina, ed eseguire contemporaneamente il JavaScript in background.

Per quanto riguarda invece gli oggetti che le api di google gears mettono a disposizione essi sono fondamentalmente window.google e google.gears , per cui per un javascript che vorrebbe controllare la presenza di googlegears installato in un computer, occorrerebbe semplicemente controllare questi oggetti. Per prima cosa vediamo come fare per scaricare alcune pagine automaticamente da un sito per poi essere visionati localmente; per questo abbiamo bisogno di un file .json che dovrebbe essere qualcosa come:

{
  "betaManifestVersion": 1,
  "version": "version 1.0",
  "entries": [
  { "url": "go_offline.html"},
  { "url": "go_offline.js"},
 { "url": "gears_init.js"}
  ]
}

Praticamente vi sono delle parentesi graffe iniziali e finali, seguite da coppie nome – valore del tipo
"nome1":"ValoreStringa1" oppure
"nome2":ValoreNumerico oppure ancora
"nomearray":[  { "nome3": "Valore3"}, { "nome4": "Valore4"}]

ovviamente nome1, nome2, nome3 sono nomi di variabili possibilmente predefinite, come ad esempio version e betaManifestVersion, che descrivono la versione, oppure entries, che descrive tutti i file che devono essere scaricati in locale.

Esiste poi uno spezzone javascript per inizializzare automaticamente tramite un evento onLoad (che però avviene in automatico col nome di funzione speciale init):

function init() {
  if (!window.google || !google.gears) {
  textOut("Devi istallare Google Gears per funzionare.");
  } else {
  localServer = google.gears.factory.create("beta.localserver","1.0");
  pagineoffline = localServer.createManagedStore("mie_pagine_offline");
  }
}

Come possiamo notare google.gears.factory.create insieme a beta.localserver come parametro, serve a creare un server locale che agisce come quello remoto in modo assolutamente trasparente all’utente. Per creare più specificatamente un set di file scaricabili in locale si utilizza invece localServer.createManagedStore("nome_dati_di_pagine_offline");

Inoltre si deve associare alle pagine offline che abbiamo creato il file manifest adeguato con il comando pagineoffline.manifestUrl = "nome_manifesto.json";

Volendo, come abbiamo già  detto si può creare un database in modo altrettanto facile, sempre utilizzando google.gears.factory.create ma stavolta col parametro beta.database e, dopo averlo associato ad una variabile-oggetto, lo si può indirizzare con nomeVariabileOggetto.execute(‘comando_semplice_con_due_parametri (?,?)’, [parametro1,parametro2]);
dove al posto di ‘comando’, va inserito un comando per gestire database, tabelle, eccetera.

Per avere una referenza completa di tutte le api cliccare qui

Google Ajax Feed API

Google Ajax feed apiGrazie a Google Code la comunità degli sviluppatori web beneficia di ottimi codici sorgenti da poter utilizzare nelle proprie applicazioni web.

Ne è un esempio Google AJAX Feed API, una libreria in javascript che permette di scaricare e utilizzare qualsiasi feed pubblico di tipo RSS o Atom. In questo modo è possibile inserire feed esterni all’interno delle proprie pagine. Il tutto è gestito tramite un’interfaccia di tipo AJAX, per cui asincrona rispetto alla richiesta HTTP della pagina web.

Tutte le funzioni sono ben documentate, in perfetto stile Google e sono messi a disposizione 3 esempi con cui cominciare a prendere dimestichezza con queste API. E’ necessaria la chiave che si può ottenere tramite un qualsiasi account Google.

Ecco un esempio funzionante di un album fotografico fatto con Google Ajax Feed API:

Loading…

Pubblicato l’SDK Java per Nasa World Wind

Nasa World Wind Java SDKNella battaglia dei software per la visione e navigazione delle mappe satellitari, ora Nasa World Wind ha un’arma in più contro il suo celebre antagonista, Google Earth.

E’ stato infatti rilasciato l’SDK Java (pacchetto di sviluppo softare per applicazioni Java) che permette di integrare la tecnologia di Nasa World Wind all’interno delle proprie applicazioni Java. Il pacchetto è già disponibile per il download, mentre la documentazione delle API sarà pubblicata a breve.

Nasa World Wind demoA dimostrazione delle potenzialità di questo strumento è disponibile una demo. Su alcuni pc il rendering della terra non è dei migliori: il problema è causato dai driver grafici che devono essere aggiornati. In condizioni ottimali, la demo ha prodotto un risultato veramente lodevole, esattamente quello che si vede con Nasa World Wind. Interattività molto fluida e texture ad alta definizione. Un altro punto a suo favore è lo sforzo di aver condiviso un’ottima piattaforma. Siamo convinti che l’sdk sarà migliorato con il tempo e che gli sviluppi saranno sempre più interessanti.

FreeEarth, un clone flash di Google Maps

Free Earth, un Google Maps fatto in Flash e JavascriptFree Earth è un’applicazione Flash che riproduce la terra in tre dimensioni. Per chi già conosce Google Maps, è possibile Free Earth sembrerà familiare. E’ infatti un clone di Google Maps ma questa volta fatto in Flash

A dar valore a tutta l’applicazione, sono le API messe a disposizione, in tutto simili a quelle di Google Maps. Con poche righe di codice javascript è possibile ottenere una terra 3D, completamente interattiva, che si può ruotare, zoomare e personalizzare con markers, animazioni programmate e chi più ne ha, più ne metta. Tutte le API sono ben documentate con esempi e demo, in una pagina in tutto uguale alle pagine delle API di Google Maps.

Come dice lo slogan, Free Earth è un’applicazione cross-browser e cross platform che non richiede nessun download aggiuntivo oltre quello dell’applicazione stessa. L’altra faccia della medaglia è la bassa definizione della mappa satellitare, per cui è possibile zoommare solo fino ad un certo livello di dettaglio.  

Google Maps integra il supporto al GeoRSS

GeoRSS su Google Maps

Il blog ufficiale di Google Maps ha annunciato il supporto del formato GeoRSS su Google Maps. Si tratta di un formato leggero e basato su XML ideato con lo scopo di georeferenziare il contenuto dei feed RSS. Questo significa che si può dare in pasto a Google Maps il feed RSS del proprio blog opportunamente farcito di tag GeoRSS per vedere i propri articoli localizzati sulle cartine geografiche di Google Maps.

Per vedere un esempio funzionante di questa nuova caratteristica prendiamo in considerazione il mio feed Flickr:

http://api.flickr.com/services/feeds/photos_public.gne?id=97513367@N00&format=rss_200

Ora, dopo aver assegnato tramite l’interfaccia utente di Flickr una località ad una specifica foto, ecco il feed risultante:

http://api.flickr.com/services/feeds/photos_public.gne?id=97513367@N00&format=rss_200&georss=true

Basta copiare questo indirizzo sul campo di ricerca di Google Maps, ed ecco la foto essere visualizzata sulla cartina e segnalata con l’apposito marker. Fenomenale!

Nello stesso post, Google ha anche annunciato che Google Maps API supporta anche il caricamento di file KML. Questo significa che si possono caricare i file KML tipici di Google Earth direttamente sulle mappe del fratello web-based. Questa caratteristica in effetti era già presente da qualche mese, ma evidentemente è stato deciso di pubblicare la notizia ufficiale dopo un periodo di prova.

Applicazioni e Plugin su Flickr

Applicazioni FlickrFlickr, il portale che raccoglie la più grande collezione su internet di fotografie mette a disposizione una libreria API per la gestione e la ricerca delle foto dal suo database. Flickr-bits elenca le applicazioni che sono state fatte finora utilizzando queste API. Ecco la lista:

Web Applications

Plugins/Extensions

Mac Applications

Windows Applications

Linux Applications

Hacking Google Maps

Google Maps

Una cosa molto interessante di Google Maps è che funziona tramite XML. Per parlar chiaro, in sostanza Google maps è facilmente hackerabile. Questo piccolo tutorial mostra come costruire la propria google map dai propri dati GPS. In più, si può aggiungere immagini e video e creare in questo modo una mappa interattiva. Buona lettura!