<?xml version="1.0" encoding="UTF-8"?>
<?xml-stylesheet type="text/xsl" media="screen" href="/~d/styles/rss2full.xsl"?><?xml-stylesheet type="text/css" media="screen" href="http://feeds.feedburner.com/~d/styles/itemcontent.css"?><rss xmlns:content="http://purl.org/rss/1.0/modules/content/" xmlns:wfw="http://wellformedweb.org/CommentAPI/" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:atom="http://www.w3.org/2005/Atom" xmlns:sy="http://purl.org/rss/1.0/modules/syndication/" xmlns:slash="http://purl.org/rss/1.0/modules/slash/" xmlns:georss="http://www.georss.org/georss" xmlns:gml="http://www.opengis.net/gml" xmlns:geo="http://www.w3.org/2003/01/geo/wgs84_pos#" version="2.0">

<channel>
	<title>diploD</title>
	
	<link>http://www.diplod.it</link>
	<description>by Davide Del Monte</description>
	<lastBuildDate>Wed, 14 Dec 2011 08:43:16 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.0.1</generator>
		<atom10:link xmlns:atom10="http://www.w3.org/2005/Atom" rel="self" type="application/rss+xml" href="http://feeds.feedburner.com/diplod" /><feedburner:info xmlns:feedburner="http://rssnamespace.org/feedburner/ext/1.0" uri="diplod" /><atom10:link xmlns:atom10="http://www.w3.org/2005/Atom" rel="hub" href="http://pubsubhubbub.appspot.com/" /><geo:lat>44.696237</geo:lat><geo:long>10.627899</geo:long><feedburner:emailServiceId xmlns:feedburner="http://rssnamespace.org/feedburner/ext/1.0">diplod</feedburner:emailServiceId><feedburner:feedburnerHostname xmlns:feedburner="http://rssnamespace.org/feedburner/ext/1.0">http://feedburner.google.com</feedburner:feedburnerHostname><item>
		<title>Impedire la stampa e il copia incolla da pagine wiki su Sharepoint 2010</title>
		<link>http://www.diplod.it/2011/11/22/impedire-la-stampa-e-il-copia-incolla-da-pagine-wiki-su-sharepoint-2010/</link>
		<comments>http://www.diplod.it/2011/11/22/impedire-la-stampa-e-il-copia-incolla-da-pagine-wiki-su-sharepoint-2010/#comments</comments>
		<pubDate>Tue, 22 Nov 2011 11:23:44 +0000</pubDate>
		<dc:creator>Davide</dc:creator>
				<category><![CDATA[Sharepoint]]></category>
		<category><![CDATA[copia incolla]]></category>
		<category><![CDATA[CSS]]></category>
		<category><![CDATA[javascript]]></category>
		<category><![CDATA[sharepoint]]></category>
		<category><![CDATA[stampa]]></category>
		<category><![CDATA[wiki]]></category>

		<guid isPermaLink="false">http://www.diplod.it/?p=1307</guid>
		<description><![CDATA[L'esigenza è semplice: deve essere impedito all'utente medio di poter stampare o fare copia incolla da una pagina wiki di Sharepoint 2010.
Come fare? Ovviamente javascript e css. La rete è piena di esempi per disabilitare il cut&#038;paste o evitare la stampa di una porzione di pagina su carta; per il primo obiettivo useremo uno script semplicissimo, per il secondo un foglio di stile associato alla stampa. ]]></description>
			<content:encoded><![CDATA[<p>L&#8217;esigenza è semplice: <strong>deve essere impedito</strong> all&#8217;<em>utente medio</em> di poter <strong>stampare </strong>o fare <strong>copia incolla</strong> da una pagina wiki di <strong>Sharepoint 2010</strong>. La premessa sull&#8217;utente medio è fondamentale, perchè un utente scafato, in grado di leggere il codice e capire come fare lo troveremo sempre.. non è quindi questo il modo per proteggere fino alla morte un contenuto, si tratta semmai di un modo per sensibilizzare l&#8217;utente circa il contenuto confidenziale pubblicato su una pagina web.</p>
<p>Come fare? Ovviamente javascript e css. La rete è piena di esempi per disabilitare il <em>cut&amp;paste</em> o evitare la stampa di una porzione di pagina su carta; per il primo obiettivo useremo uno script semplicissimo, per il secondo un foglio di stile associato alla stampa. Tutto qui:</p>
<p><code>&lt;script language="JavaScript"&gt;<br />
&lt;!--<br />
// Disable selection of content<br />
function disableselect(e){return false}<br />
function reEnable(){return true}<br />
document.onselectstart=new Function ('return false')<br />
if (window.sidebar){document.onmousedown=disableselectdocument.onclick=reEnable}<br />
// --&gt;<br />
&lt;/script&gt;</code></p>
<p><code>&lt;script language="JavaScript"&gt;<br />
&lt;!--<br />
// Disable right mouse click Script<br />
var message="Function Disabled!";<br />
function clickIE4() {if (event.button==2) {alert(message);return false;}}<br />
function clickNS4(e) {if (document.layers||document.getElementById&amp;&amp;!document.all)<br />
{if (e.which==2||e.which==3){alert(message);return false;}}}<br />
if (document.layers) {document.captureEvents(Event.MOUSEDOWN);document.onmousedown=clickNS4;}<br />
else if (document.all&amp;&amp;!document.getElementById) {document.onmousedown=clickIE4;}<br />
document.oncontextmenu=new Function("alert(message);return false")<br />
// --&gt;<br />
&lt;/script&gt; </code></p>
<p><code> &lt;style type="text/css"&gt; @media print { body { display:none } } &lt;/style&gt;</code></p>
<p><span id="more-1307"></span></p>
<p>Con Sharepoint 2010 non è possibile però inserire javascript su una webpart di contenuto, inoltre per raggiungere lo scopo serve mettere alcune righe di codice nel tag <em>&lt;head&gt;</em> della pagina. Dovremo quindi utilizzare <strong>Sharepoint Designer</strong>, dove possiamo entrare nell&#8217;editor della pagina wiki e cliccando su <em>Modalità Avanzata</em> nel ribbon siamo in grado di modificare il codice. Ogni pagina Sharepoint contiene un tag, <em>PlaceHolderAdditionalPageHead</em>, pensato appositamente per aggiungere codice custom nell&#8217;head della pagina.</p>
<p><a href="http://www.diplod.it/wp-content/uploads/2011/11/designer.png"><img class="alignnone size-full wp-image-1309" title="designer" src="http://www.diplod.it/wp-content/uploads/2011/11/designer.png" alt="" width="870" height="546" /></a></p>
<p>Nell&#8217;immagine sopra ecco un esempio pratico:<strong> risultato raggiunto</strong>! :)</p>
<div class="feedflare">
<a href="http://feeds.feedburner.com/~ff/diplod?a=benmVjCP-UM:jkT7s-vqxZg:yIl2AUoC8zA"><img src="http://feeds.feedburner.com/~ff/diplod?d=yIl2AUoC8zA" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/diplod?a=benmVjCP-UM:jkT7s-vqxZg:V_sGLiPBpWU"><img src="http://feeds.feedburner.com/~ff/diplod?i=benmVjCP-UM:jkT7s-vqxZg:V_sGLiPBpWU" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/diplod?a=benmVjCP-UM:jkT7s-vqxZg:F7zBnMyn0Lo"><img src="http://feeds.feedburner.com/~ff/diplod?i=benmVjCP-UM:jkT7s-vqxZg:F7zBnMyn0Lo" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/diplod?a=benmVjCP-UM:jkT7s-vqxZg:7Q72WNTAKBA"><img src="http://feeds.feedburner.com/~ff/diplod?d=7Q72WNTAKBA" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/diplod?a=benmVjCP-UM:jkT7s-vqxZg:dnMXMwOfBR0"><img src="http://feeds.feedburner.com/~ff/diplod?d=dnMXMwOfBR0" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/diplod?a=benmVjCP-UM:jkT7s-vqxZg:pSxILM_nRGA"><img src="http://feeds.feedburner.com/~ff/diplod?d=pSxILM_nRGA" border="0"></img></a>
</div>]]></content:encoded>
			<wfw:commentRss>http://www.diplod.it/2011/11/22/impedire-la-stampa-e-il-copia-incolla-da-pagine-wiki-su-sharepoint-2010/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Better Life Index: javascript e statistiche sulle nazioni dell’OCSE</title>
		<link>http://www.diplod.it/2011/10/19/better-life-index-javascript-e-statistiche-sulle-nazioni-dellocse/</link>
		<comments>http://www.diplod.it/2011/10/19/better-life-index-javascript-e-statistiche-sulle-nazioni-dellocse/#comments</comments>
		<pubDate>Wed, 19 Oct 2011 22:26:59 +0000</pubDate>
		<dc:creator>Davide</dc:creator>
				<category><![CDATA[Ajax e Javascript]]></category>
		<category><![CDATA[Politica]]></category>
		<category><![CDATA[better life index]]></category>
		<category><![CDATA[indice]]></category>
		<category><![CDATA[javascript]]></category>
		<category><![CDATA[ocse]]></category>
		<category><![CDATA[oecd]]></category>
		<category><![CDATA[statistiche]]></category>

		<guid isPermaLink="false">http://www.diplod.it/?p=1273</guid>
		<description><![CDATA[Condividi il tuo Better Life Index, per scoprire qual è il Paese in cui preferisci vivere.. o semplicemente per confrontare il benessere nei Paesi OCSE.]]></description>
			<content:encoded><![CDATA[<p><iframe src="http://www.oecdbetterlifeindex.org/embed/?weight=23355524314&#038;display=alpha&#038;include=ITA" width="540" height="420" frameborder="0"></iframe></p>
<p>In attesa di tempi migliori per poter tornare a scrivere su queste pagine con più intensità (mi sono segnato davvero un sacco di appunti..), segnalo questo incantevole grafico fatto con sapienza. Si tratta del <strong><a title="better life index" href="http://www.oecdbetterlifeindex.org/#/11111111111" target="_blank">Better Life Index</a></strong>. Descrive l&#8217;indice di desiderabilità di una nazione in base ai propri valori, tenendo conto di una serie di indicatori sociali. Ecco il video di presentazione dell&#8217;iniziativa.</p>
<p><iframe width="560" height="315" src="http://www.youtube.com/embed/n2Zqj6CzDXs" frameborder="0" allowfullscreen></iframe></p>
<p><span id="more-1273"></span></p>
<p>Tutte le informazioni sull&#8217;iniziativa sono disponibili a <a href="http://www.oecdbetterlifeindex.org/about/better-life-initiative/" target="_blank">questa pagina</a>; per farla breve: vengono confrontati i <strong>34 Paesi facenti parte dell&#8217;<a title="OCSE" href="http://it.wikipedia.org/wiki/Organizzazione_per_la_Cooperazione_e_lo_Sviluppo_Economico" target="_blank">OCSE</a></strong>, l&#8217;Organizzazione per la Cooperazione lo Sviluppo Economico. Non è soltanto un mero gioco di <strong>javascript</strong>, da questo sito si possono imparare svariate cose, cliccando sul &#8220;fiore&#8221; della nazione è infatti possibile leggere un report sulle performance in generale e sulle politiche messe in atto nei singoli aspetti del Better Life Index.</p>
<p>Si può <strong>creare il proprio Better Life Index</strong> e condividerlo come ho fatto sopra, sia su un blog che via Facebook o Twitter. <strong>Perchè provare e condividere?</strong> Ogni volta che si crea un indice, entrerà in una banca dati accessibile al pubblico. Nel corso del tempo, questo aiuterà l&#8217;OCSE a costruire un quadro di quello che i cittadini di tutto il mondo considerano come forme di benessere. Buona condivisione..</p>
<div class="feedflare">
<a href="http://feeds.feedburner.com/~ff/diplod?a=oOXoAGXyALM:Z1pxdCcj9wQ:yIl2AUoC8zA"><img src="http://feeds.feedburner.com/~ff/diplod?d=yIl2AUoC8zA" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/diplod?a=oOXoAGXyALM:Z1pxdCcj9wQ:V_sGLiPBpWU"><img src="http://feeds.feedburner.com/~ff/diplod?i=oOXoAGXyALM:Z1pxdCcj9wQ:V_sGLiPBpWU" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/diplod?a=oOXoAGXyALM:Z1pxdCcj9wQ:F7zBnMyn0Lo"><img src="http://feeds.feedburner.com/~ff/diplod?i=oOXoAGXyALM:Z1pxdCcj9wQ:F7zBnMyn0Lo" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/diplod?a=oOXoAGXyALM:Z1pxdCcj9wQ:7Q72WNTAKBA"><img src="http://feeds.feedburner.com/~ff/diplod?d=7Q72WNTAKBA" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/diplod?a=oOXoAGXyALM:Z1pxdCcj9wQ:dnMXMwOfBR0"><img src="http://feeds.feedburner.com/~ff/diplod?d=dnMXMwOfBR0" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/diplod?a=oOXoAGXyALM:Z1pxdCcj9wQ:pSxILM_nRGA"><img src="http://feeds.feedburner.com/~ff/diplod?d=pSxILM_nRGA" border="0"></img></a>
</div>]]></content:encoded>
			<wfw:commentRss>http://www.diplod.it/2011/10/19/better-life-index-javascript-e-statistiche-sulle-nazioni-dellocse/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Fotolia: considerazioni post utilizzo</title>
		<link>http://www.diplod.it/2011/09/02/fotolia-considerazioni-post-utilizzo/</link>
		<comments>http://www.diplod.it/2011/09/02/fotolia-considerazioni-post-utilizzo/#comments</comments>
		<pubDate>Fri, 02 Sep 2011 12:18:53 +0000</pubDate>
		<dc:creator>Davide</dc:creator>
				<category><![CDATA[e-business]]></category>
		<category><![CDATA[audio]]></category>
		<category><![CDATA[audiomicro]]></category>
		<category><![CDATA[foto]]></category>
		<category><![CDATA[fotolia]]></category>

		<guid isPermaLink="false">http://www.diplod.it/?p=1262</guid>
		<description><![CDATA[Fotolia è un noto servizio online tramite il quale si possono acquistare immagini di qualità a prezzi relativamente bassi e contenuti. Si tratta di materiale Royalty Free, generato da utenti comuni che desiderano vendere qualcosa on line oppure altre volte da agenzie vere e propria che hanno scoperto in questo portale un ottimo canale di [...]]]></description>
			<content:encoded><![CDATA[<p><a href="http://www.diplod.it/wp-content/uploads/2011/09/fotolia.png"><img class="aligncenter size-full wp-image-1265" title="fotolia" src="http://www.diplod.it/wp-content/uploads/2011/09/fotolia.png" alt="" width="500" height="285" /></a></p>
<p><a title="Fotolia" href="http://it.fotolia.com/" target="_blank"><strong>Fotolia</strong></a> è un noto <strong>servizio online</strong> tramite il quale si possono acquistare immagini di qualità a prezzi relativamente bassi e contenuti. Si tratta di materiale <a href="http://it.wikipedia.org/wiki/Royalty-free" target="_blank">Royalty Free</a>, generato da utenti comuni che desiderano vendere qualcosa on line oppure altre volte da agenzie vere e propria che hanno scoperto in questo portale un ottimo canale di vendita.</p>
<p>Presentazioni aziendali, fotografie accattivanti, trame per background, file vettoriali: questo è ciò che si può acquistare per pochi spiccioli sul portale.<br />
Ho avuto modo di utilizzarlo negli scorsi giorni per preparare una presentazione aziendale, basta guardare una <a title="Fotolia - presentazione aziendale" href="http://it.fotolia.com/search?serie=6135219" target="_blank">serie come questa</a> per farsi venir voglia di iscriversi. Si riescono a fare cose piuttosto accattivanti con poco sforzo; quando è necessario figurare bene, quale miglior biglietto da visita della propria presentazione? :)</p>
<p>Il sistema di acquisto può essere a crediti, ovvero si paga una quota per ottenere determinati crediti da utilizzare scaricando files, oppure ad abbonamento, pagando quindi una quota fissa che da diritto a scaricare un certo numero di file al giorno o al mese. Per chi ne fa un utilizzo spot credo che la modalità a crediti sia la più indicata.</p>
<p>Un interessante parente di Fotolia è <a title="AudioMicro" href="http://www.audiomicro.com/" target="_blank"><strong>AudioMicro</strong></a>: stesso concetto ma ribaltato sui file audio, in cui Fotolia ha <a href="http://www.fastmediamagazine.com/blog/2011/02/01/fotolia-invests-750-000-in-audiomicro/" target="_blank">investito un buon gruzzoletto</a>. Se state facendo un montaggio video e avete bisogno di effetti o colonne sonore è il posto giusto.</p>
<p>Ne conoscete altri? Sono ben accetti suggerimenti..</p>
<div class="feedflare">
<a href="http://feeds.feedburner.com/~ff/diplod?a=w3nZtfINTvA:QgtiLZt1mzs:yIl2AUoC8zA"><img src="http://feeds.feedburner.com/~ff/diplod?d=yIl2AUoC8zA" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/diplod?a=w3nZtfINTvA:QgtiLZt1mzs:V_sGLiPBpWU"><img src="http://feeds.feedburner.com/~ff/diplod?i=w3nZtfINTvA:QgtiLZt1mzs:V_sGLiPBpWU" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/diplod?a=w3nZtfINTvA:QgtiLZt1mzs:F7zBnMyn0Lo"><img src="http://feeds.feedburner.com/~ff/diplod?i=w3nZtfINTvA:QgtiLZt1mzs:F7zBnMyn0Lo" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/diplod?a=w3nZtfINTvA:QgtiLZt1mzs:7Q72WNTAKBA"><img src="http://feeds.feedburner.com/~ff/diplod?d=7Q72WNTAKBA" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/diplod?a=w3nZtfINTvA:QgtiLZt1mzs:dnMXMwOfBR0"><img src="http://feeds.feedburner.com/~ff/diplod?d=dnMXMwOfBR0" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/diplod?a=w3nZtfINTvA:QgtiLZt1mzs:pSxILM_nRGA"><img src="http://feeds.feedburner.com/~ff/diplod?d=pSxILM_nRGA" border="0"></img></a>
</div>]]></content:encoded>
			<wfw:commentRss>http://www.diplod.it/2011/09/02/fotolia-considerazioni-post-utilizzo/feed/</wfw:commentRss>
		<slash:comments>2</slash:comments>
		</item>
		<item>
		<title>Branding di Sharepoint 2010: ABC e qualche appunto.</title>
		<link>http://www.diplod.it/2011/08/09/branding-di-sharepoint-2010-abc-appunti/</link>
		<comments>http://www.diplod.it/2011/08/09/branding-di-sharepoint-2010-abc-appunti/#comments</comments>
		<pubDate>Tue, 09 Aug 2011 14:20:04 +0000</pubDate>
		<dc:creator>Davide</dc:creator>
				<category><![CDATA[CMS]]></category>
		<category><![CDATA[Sharepoint]]></category>
		<category><![CDATA[branding]]></category>
		<category><![CDATA[customizzazione]]></category>
		<category><![CDATA[sharepoint]]></category>
		<category><![CDATA[sharepoint designer]]></category>
		<category><![CDATA[sharepoint2010]]></category>

		<guid isPermaLink="false">http://www.diplod.it/?p=1226</guid>
		<description><![CDATA[Sharepoint 2010 è sulla scena da ormai oltre un anno, è tempo di mettere nero su bianco qualche appunto ad imperitura memoria, magari tornerà utile ad altri. L&#8217;obiettivo è una semplice e sbrigativa customizzazione di un portale Sharepoint con colori personalizzati, un minimo di vestizione grafica e la scelta della master page e dell&#8217;icona di rappresentanza. [...]]]></description>
			<content:encoded><![CDATA[<p><a href="http://www.diplod.it/wp-content/uploads/2011/08/style-library.png"></a>Sharepoint 2010 è sulla scena da ormai oltre un anno, è tempo di mettere nero su bianco qualche appunto ad imperitura memoria, magari tornerà utile ad altri. L&#8217;obiettivo è una semplice e sbrigativa customizzazione di un portale Sharepoint con colori personalizzati, un minimo di vestizione grafica e la scelta della<em> master page</em> e dell&#8217;icona di rappresentanza.</p>
<p><a href="http://www.diplod.it/wp-content/uploads/2011/08/look-and-feel.png"><img class="alignleft size-full wp-image-1240" title="look-and-feel" src="http://www.diplod.it/wp-content/uploads/2011/08/look-and-feel.png" alt="" width="267" height="139" /></a></p>
<p>Tutto parte dal menù del sito su cui si intende intervenire: <em>Site Action</em> -&gt; <em>Site Settings</em>. Sotto al gruppo <em>Look and Feel</em> troveremo varie voci, come nell&#8217;immagine a sinistra. Una prima veloce sistemata ai colori si può dare cliccando su <em>Site theme</em>, da qui possiamo impostare la tavolozza cromatica che desideriamo. Va detto, a onor del vero, che se vogliamo salvare un nuovo tema cromatico dovremo <a title="Using power point create a custom theme in sharepoint 2010" href="http://sqlserverpedia.com/blog/sql-server-bloggers/using-powerpoint-2010-to-create-a-custom-theme-for-sharepoint-2010/" target="_blank">utilizzare Power Point</a>, ma l&#8217;idea di lavorare su un sito web attraverso power point mi sconvolge talmente tanto che non l&#8217;ho presa nemmeno in considerazione. Ma volenti o nolenti prima o poi sarà da fare.</p>
<p>Una volta decisi i colori, possiamo cimentarci nella creazione di una master page personalizzata, da utilizzare come base per la nostra web application, a cui associare un foglio di style CSS che conterrà le nostre personalizzazioni ed una eventuale favicon. Per fare ciò è necessario aprire <a title="sharepoint designer 2010" href="http://office.microsoft.com/it-it/sharepoint-designer-help/introduzione-a-sharepoint-designer-2010-HA010370548.aspx" target="_blank">Sharepoint Designer 2010</a> e caricare il sito web, dal menù di sinistra dobbiamo quindi selezionare la voce &#8220;List and Libraries&#8221; e successivamente entrare nella cartella &#8220;Style Library&#8221; (vedi figura sotto).<br />
<span id="more-1226"></span></p>
<p style="text-align: center;"><a href="http://www.diplod.it/wp-content/uploads/2011/08/Cattura1.png"><img class="size-full wp-image-1325 aligncenter" style="border-style: initial; border-color: initial;" title="Cattura1" src="http://www.diplod.it/wp-content/uploads/2011/08/Cattura1.png" alt="" width="675" height="523" /></a></p>
<p><a href="http://www.diplod.it/wp-content/uploads/2011/08/Cattura1.png"></a>In questa cartella andremo a creare una nuova cartella, chiamandola &#8220;mystyle&#8221; dove posizioniamo il CSS e la favicon, oltre a eventuali immagini utili per abbellire tramite CSS il nostro sito web.</p>
<p style="text-align: center;"><a href="http://www.diplod.it/wp-content/uploads/2011/08/Cattura2.png"><img class="aligncenter size-full wp-image-1327" title="Cattura2" src="http://www.diplod.it/wp-content/uploads/2011/08/Cattura2.png" alt="" width="415" height="181" /></a></p>
<p>A questo punto è il momento di creare la master page. Come prima, da menù, andiamo sulla voce &#8220;Master Pages&#8221; (vedi figura sotto).</p>
<p><a href="http://www.diplod.it/wp-content/uploads/2011/08/Cattura3.png"><img class="aligncenter size-full wp-image-1328" title="Cattura3" src="http://www.diplod.it/wp-content/uploads/2011/08/Cattura3.png" alt="" width="511" height="407" /></a></p>
<p>Noteremo che ci sono due pagine fondamentali, una dal nome &#8220;default.master&#8221; e l&#8217;altra &#8220;v4.master&#8221;. Le pagine master definiscono una struttura comune per tutte le pagine Web in Microsoft SharePoint Server. Per impostazione predefinita, quando viene richiesta una pagina, la pagina master e la pagina di contenuto sono combinate per produrre una singola pagina. Utilizzando una pagina master, tutte le pagine di contenuti e applicazioni condividono la stessa struttura della pagina e hanno lo stesso look &amp; feel. La pagina <em>default.master</em> è utile per la retro compatibilità con SharePoint 2007, la versione 2010 utilizza la pagina<em> v4.master</em>, famosa per l&#8217;interfaccia a ribbon tipica di Office.</p>
<p>Per completezza, ecco la descrizione delle master page di default dal sito Microsoft:</p>
<table>
<tbody>
<tr>
<th><strong>NAME / DEFAULT FILE NAME</strong></th>
<th><strong>DESCRIPTION</strong></th>
<th><strong>USES ON A SHAREPOINT SITE</strong></th>
</tr>
<tr>
<td>Primary master<br />
page<strong> </strong></p>
<p style="display: inline !important;"><strong>v4.master</strong></p>
</td>
<td>Used for content and administration pages. Provides the interface and layout for SharePoint 2010.</td>
<td>Team Site home page, list and library pages, and site settings page.</td>
</tr>
<tr>
<td>Minimal master page<br />
<strong> </strong></p>
<p style="display: inline !important;"><strong>minimal.master</strong></p>
</td>
<td>Contains minimal SharePoint content, used for full-screen functionality or embedded applications.</td>
<td>The home and search results pages on a Search Center, pages that host Word or Excel web applications.</td>
</tr>
<tr>
<td>Publishing master page<br />
<strong> </strong></p>
<p style="display: inline !important;"><strong>nightandday.master</strong></p>
</td>
<td>Used for pages on a SharePoint Server publishing-enabled site.</td>
<td>The home page, about us, or press release page on a publishing intranet, extranet, or Internet-facing site.</td>
</tr>
<tr>
<td>2007 default master page<br />
<strong> </strong></p>
<p style="display: inline !important;"><strong>default.master</strong></p>
</td>
<td>Used to support legacy SharePoint sites, which haven’t been visually upgraded to SharePoint 2010.</td>
<td>Home page, site pages, and list pages on a SharePoint 2007 site before visual upgrade.</td>
</tr>
</tbody>
</table>
<p>Copiamo quindi la pagina <em>v4.master</em> e nominiamola ad esempio <em>mypage.master</em>. Ora doppio clic sulla pagina appena creata e si presenterà davanti a noi una schermata, al centro c&#8217;è la voce &#8220;edit file&#8221;, clicchiamoci sopra per fare il check-in della pagina e iniziare a modificarla secondo le nostre esigenze. L&#8217;obiettivo è inserire il riferimento a un CSS che utilizzeremo per modificare esclusivamente ciò che ci interessa. Passiamo quindi alla visualizzazione del codice.</p>
<p>All&#8217;interno del tag <em>&lt;head&gt;</em> possiamo inserire i riferimenti al CSS e ad una favicon specifici.</p>
<p><code>&lt;SharePoint:SPShortcutIcon runat="server" IconUrl="/Style Library/mystyle/favicon.ico"/&gt;<br />
&lt;SharePoint:CssRegistration name="/Style Library/mystyle/style.css" After="corev4.css" runat="server"/&gt;</code></p>
<p>Abbiamo messo il riferimento ai file salvati in precedenza nella cartella appositamente creata. A questo punto dobbiamo salvare e impostare la master page appena creata come pagina di default. Per fare ciò, si può cliccare col tasto destro sul nome del file e selezionare la voce &#8220;Imposta come pagina master predefinita&#8221; oppure dal menù Site Action sul browser selezionare la voce &#8220;Master page&#8221; e impostare la pagina custom come quella predefinita (vedi immagine sotto).</p>
<p><a href="http://www.diplod.it/wp-content/uploads/2011/08/custom-master.png"><img class="aligncenter size-full wp-image-1252" title="custom master" src="http://www.diplod.it/wp-content/uploads/2011/08/custom-master.png" alt="" width="887" height="360" /></a></p>
<p>Ora siamo liberi di modificare il CSS come meglio crediamo, nel mio caso ad esempio ho inserito questo codice:</p>
<p><code>body {	background: #fff url(bg_erbetta.png) repeat-x bottom left;}<br />
.s4-title {	background: #fafafa url(header_bg.png) no-repeat bottom right;}<br />
.s4-socialdata-notif, s4-socialdata {<br />
background: #fafafa;<br />
/* Fallback for web browsers that doesn't support RGBa */<br />
background: rgb(250, 250, 250);<br />
/* RGBa with 0.6 opacity */<br />
background: rgba(250, 250, 250, 0.9);<br />
/* For IE 5.5 - 7*/<br />
filter:progid:DXImageTransform.Microsoft.gradient(startColorstr=#99fafafa, endColorstr=#99fafafa);<br />
/* For IE 8*/<br />
-ms-filter: "progid:DXImageTransform.Microsoft.gradient(startColorstr=#99fafafa, endColorstr=#99fafafa)"; }<br />
.s4-ca { background: transparent;}</code></p>
<p>Ovviamente le possibilità di personalizzazione della master page sono tante altre, si possono spostare gli elementi o inserire pezzi di codice specifici. In questi appunti ho trascritto solo l&#8217;ABC, chi più ne ha più ne metta..</p>
<p>Chiudo con alcune utili risorse per chi vuole approfondire il tema:</p>
<ul>
<li><a href="http://msdn.microsoft.com/en-us/library/gg430141.aspx">http://msdn.microsoft.com/en-us/library/gg430141.aspx</a></li>
<li><a href="http://office.microsoft.com/en-us/sharepoint-designer-help/customize-a-master-page-to-brand-your-site-HA102449505.aspx">http://office.microsoft.com/en-us/sharepoint-designer-help/customize-a-master-page-to-brand-your-site-HA102449505.aspx</a></li>
<li><a href="http://www.thesharepointmuse.com/sharepoint-2010-branding/">http://www.thesharepointmuse.com/sharepoint-2010-branding/</a></li>
<li><a href="http://nonsolosharepoint.wordpress.com/2010/01/26/its-a-ribbon-behaviour/">http://nonsolosharepoint.wordpress.com/2010/01/26/its-a-ribbon-behaviour/</a> -&gt; utile riferimento sul tema ribbon..</li>
<li><a href="http://nonsolosharepoint.wordpress.com/2009/12/23/migrare-una-master-page-da-sharepoint-2007-a-sharepoint-2010/">http://nonsolosharepoint.wordpress.com/2009/12/23/migrare-una-master-page-da-sharepoint-2007-a-sharepoint-2010/</a></li>
</ul>
<div class="feedflare">
<a href="http://feeds.feedburner.com/~ff/diplod?a=Owk916y0NAY:svYNyDbDv4I:yIl2AUoC8zA"><img src="http://feeds.feedburner.com/~ff/diplod?d=yIl2AUoC8zA" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/diplod?a=Owk916y0NAY:svYNyDbDv4I:V_sGLiPBpWU"><img src="http://feeds.feedburner.com/~ff/diplod?i=Owk916y0NAY:svYNyDbDv4I:V_sGLiPBpWU" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/diplod?a=Owk916y0NAY:svYNyDbDv4I:F7zBnMyn0Lo"><img src="http://feeds.feedburner.com/~ff/diplod?i=Owk916y0NAY:svYNyDbDv4I:F7zBnMyn0Lo" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/diplod?a=Owk916y0NAY:svYNyDbDv4I:7Q72WNTAKBA"><img src="http://feeds.feedburner.com/~ff/diplod?d=7Q72WNTAKBA" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/diplod?a=Owk916y0NAY:svYNyDbDv4I:dnMXMwOfBR0"><img src="http://feeds.feedburner.com/~ff/diplod?d=dnMXMwOfBR0" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/diplod?a=Owk916y0NAY:svYNyDbDv4I:pSxILM_nRGA"><img src="http://feeds.feedburner.com/~ff/diplod?d=pSxILM_nRGA" border="0"></img></a>
</div>]]></content:encoded>
			<wfw:commentRss>http://www.diplod.it/2011/08/09/branding-di-sharepoint-2010-abc-appunti/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Installare Chrome OS su VMware: come provare il nuovo sistema operativo di Google</title>
		<link>http://www.diplod.it/2011/07/04/installare-chrome-os-su-vmware-come-provare-il-nuovo-sistema-operativo-di-google/</link>
		<comments>http://www.diplod.it/2011/07/04/installare-chrome-os-su-vmware-come-provare-il-nuovo-sistema-operativo-di-google/#comments</comments>
		<pubDate>Mon, 04 Jul 2011 16:02:30 +0000</pubDate>
		<dc:creator>Davide</dc:creator>
				<category><![CDATA[Google]]></category>
		<category><![CDATA[Software]]></category>
		<category><![CDATA[chrome]]></category>
		<category><![CDATA[chromium]]></category>
		<category><![CDATA[OS]]></category>
		<category><![CDATA[virtualizzazione]]></category>
		<category><![CDATA[vmware]]></category>

		<guid isPermaLink="false">http://www.diplod.it/?p=1232</guid>
		<description><![CDATA[Sono arrivati in vendita i notebook con Chromium OS preinstallato, anche in Italia. Per la cronaca: trattasi del sistema operativo di Google, concepito per vivere completamente on-line. La notizia non è pù fresca fresca, e ti viene voglia di provare questo sistema operativo di cui tutti parlano.
Come fare? E' un attimo. Abbiamo due possibilità, metterlo su un supporto esterno USB oppure utilizzare VMware Player e avere a disposizione una macchina virtuale sul proprio computer. Ho scelto la seconda strada e metto per iscritto due appunti per chi volesse cimentarsi.]]></description>
			<content:encoded><![CDATA[<p style="text-align: center;"><a href="http://www.diplod.it/wp-content/uploads/2011/07/Immagine.png"><img class="aligncenter size-large wp-image-1234" title="Chrome OS" src="http://www.diplod.it/wp-content/uploads/2011/07/Immagine-1024x817.png" alt="" width="490" height="380" /></a></p>
<p style="text-align: left;">Sono arrivati in <a title="chrome book" href="http://www.google.com/chromebook/">vendita i notebook con Chromium OS</a> preinstallato, anche in Italia. Per la cronaca: trattasi del sistema operativo di Google, concepito per <em>vivere</em> completamente on-line. La notizia non è pù fresca fresca, e ti viene voglia di provare questo sistema operativo di cui tutti parlano.</p>
<p>Come fare? E&#8217; un attimo. Abbiamo due possibilità, metterlo su un<strong> supporto esterno USB</strong> oppure utilizzare <strong>VMware Player</strong> e avere a disposizione una macchina virtuale sul proprio computer. Ho scelto la seconda strada e metto per iscritto due appunti per chi volesse cimentarsi.</p>
<ol>
<li>Se già non è installato, <strong>scaricare e installare <a title="VMware player" href="http://www.vmware.com/products/player/" target="_blank">VMware Player</a></strong>, il tool di virtualizzazione gratuito di VMware. Per un&#8217;utenza <em>domestica </em>è più che sufficiente.</li>
<li>Scaricare la <strong><a title="Vanilla Nightly Build Chromium OS" href="http://chromeos.hexxeh.net/vanilla.php" target="_blank">Vanilla Nightly Build di Chromium OS</a></strong>. Vanilla che? Si tratta di una versione del sistema operativo di Google che ogni notte viene compilata fresca fresca dalla fabbrica e messa a disposizione per il download, così tutti coloro che non possono permettersi il notebook  riescono comunque a godersela. Ovviamente bisognerà scaricare la versione per VMware.</li>
<li>Una volta scaricato lo zip, scompattarlo, ad esempio nella cartella <em>C:\ChromeOS\</em></li>
<li>Rinominare il file <strong>ChromeOS-Vanilla-xxxxxxxxxxxxxxxxxxxxx-VMWare.vmdk</strong> in <strong>ChromeOS-Vanilla-VMWare.vmdk</strong></li>
<li>Aprire VMware player e cliccare su <em>Open a Virtual Machine</em></li>
<li>Selezionare la macchina virtuale dalla cartella <em>C:\ChromeOS\ </em>ed il gioco è fatto.</li>
</ol>
<p>Al primo avvio il sistema chiede di fare il logon con le proprie credenziali Google, ovviamente è necessario un account. La prima impressione è che si tratti di un sistema ancora un po&#8217; acerbo, ma prima di sbilanciarmi serve un minimo di esplorazione in più.</p>
<div class="feedflare">
<a href="http://feeds.feedburner.com/~ff/diplod?a=3I4dtnXts8g:K76Hfi-LodI:yIl2AUoC8zA"><img src="http://feeds.feedburner.com/~ff/diplod?d=yIl2AUoC8zA" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/diplod?a=3I4dtnXts8g:K76Hfi-LodI:V_sGLiPBpWU"><img src="http://feeds.feedburner.com/~ff/diplod?i=3I4dtnXts8g:K76Hfi-LodI:V_sGLiPBpWU" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/diplod?a=3I4dtnXts8g:K76Hfi-LodI:F7zBnMyn0Lo"><img src="http://feeds.feedburner.com/~ff/diplod?i=3I4dtnXts8g:K76Hfi-LodI:F7zBnMyn0Lo" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/diplod?a=3I4dtnXts8g:K76Hfi-LodI:7Q72WNTAKBA"><img src="http://feeds.feedburner.com/~ff/diplod?d=7Q72WNTAKBA" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/diplod?a=3I4dtnXts8g:K76Hfi-LodI:dnMXMwOfBR0"><img src="http://feeds.feedburner.com/~ff/diplod?d=dnMXMwOfBR0" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/diplod?a=3I4dtnXts8g:K76Hfi-LodI:pSxILM_nRGA"><img src="http://feeds.feedburner.com/~ff/diplod?d=pSxILM_nRGA" border="0"></img></a>
</div>]]></content:encoded>
			<wfw:commentRss>http://www.diplod.it/2011/07/04/installare-chrome-os-su-vmware-come-provare-il-nuovo-sistema-operativo-di-google/feed/</wfw:commentRss>
		<slash:comments>3</slash:comments>
		</item>
		<item>
		<title>HTML5 e jQuery: finalmente un player audio video coi fiocchi</title>
		<link>http://www.diplod.it/2011/04/08/html5-e-jquery-finalmente-un-player-audio-video-coi-fiocchi/</link>
		<comments>http://www.diplod.it/2011/04/08/html5-e-jquery-finalmente-un-player-audio-video-coi-fiocchi/#comments</comments>
		<pubDate>Fri, 08 Apr 2011 15:58:09 +0000</pubDate>
		<dc:creator>Davide</dc:creator>
				<category><![CDATA[Ajax e Javascript]]></category>
		<category><![CDATA[Design]]></category>
		<category><![CDATA[audio]]></category>
		<category><![CDATA[html5]]></category>
		<category><![CDATA[javascript]]></category>
		<category><![CDATA[jquery]]></category>
		<category><![CDATA[player]]></category>
		<category><![CDATA[video]]></category>

		<guid isPermaLink="false">http://www.diplod.it/?p=1209</guid>
		<description><![CDATA[Si chiama Projekktor, ed è davvero ciò che cercavo da tempo. Un player senza fronzoli, che funzioni su tutti i browser. Senza flash, che quegli aggeggi piccoli e cool così come gli attrezzi grossi e prestanti non supportano. jQuery certo, ma anche il pulitissimo HTML5.]]></description>
			<content:encoded><![CDATA[<p style="text-align: center;"><a href="http://www.diplod.it/wp-content/uploads/2011/04/thisisprojekktor.png"><img class="size-medium wp-image-1210 aligncenter" title="thisisprojekktor" src="http://www.diplod.it/wp-content/uploads/2011/04/thisisprojekktor-300x208.png" alt="" width="300" height="208" /></a></p>
<p>Si chiama <strong><a title="projekktor" href="http://www.projekktor.com" target="_blank">Projekktor</a></strong>, ed è davvero ciò che cercavo da tempo. Un player senza fronzoli, che funzioni su tutti i browser. Senza flash, che quegli <a title="iphone" href="http://www.apple.com/it/iphone/" target="_blank">aggeggi piccoli e cool</a> così come gli <a title="flash player 64 bit" href="http://www.adobe.com/it/support/flashplayer/ts/documents/6b3af6c9.htm" target="_blank">attrezzi grossi e prestanti</a> non supportano. jQuery certo, ma anche il pulitissimo HTML5.</p>
<p>Adoro questo pezzo di codice:<br />
<code><br />
&lt;video id="player_a" poster="intro.png" title="this is Projekktor" width="640" height="385" controls&gt;<br />
&lt;source src="intro.ogv" type="video/ogg" /&gt;<br />
&lt;source src="intro.mp4" type="video/mp4" /&gt;<br />
&lt;source src="intro.webm" type="video/mp4" /&gt;<br />
&lt;/video&gt;<br />
&lt;script type="text/javascript"&gt;$(document).ready(function() {projekktor('#player_a'); // instantiation<br />
});&lt;/script&gt;<br />
</code><br />
Chiaro e leggibile, grazie al nuovo tag <a title="HTML video tag" href="http://www.w3schools.com/html5/tag_video.asp" target="_blank">&lt;video&gt; HTML5</a> ormai supportato da diversi browser. In sostanza viene specificata nell&#8217;attributo poster una immagine di partenza da far visualizzare al caricamento dell&#8217;oggetto e diverse sorgenti video, questo per garantire una maggiore compatibilità sui diversi sistemi.</p>
<p>Il plugin jQuery si occupa del resto: <a href="http://www.projekktor.com/docs/playlists" target="_blank">playlist</a>, gestione dei <a href="http://www.projekktor.com/docs/theming">temi grafici</a>.. ci sono pure le <a href="http://www.projekktor.com/docs/api">API</a> disponibili.</p>
<p>Perfetto insomma!</p>
<div class="feedflare">
<a href="http://feeds.feedburner.com/~ff/diplod?a=_g5JzQ1ZF_M:x8veQbrk-f8:yIl2AUoC8zA"><img src="http://feeds.feedburner.com/~ff/diplod?d=yIl2AUoC8zA" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/diplod?a=_g5JzQ1ZF_M:x8veQbrk-f8:V_sGLiPBpWU"><img src="http://feeds.feedburner.com/~ff/diplod?i=_g5JzQ1ZF_M:x8veQbrk-f8:V_sGLiPBpWU" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/diplod?a=_g5JzQ1ZF_M:x8veQbrk-f8:F7zBnMyn0Lo"><img src="http://feeds.feedburner.com/~ff/diplod?i=_g5JzQ1ZF_M:x8veQbrk-f8:F7zBnMyn0Lo" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/diplod?a=_g5JzQ1ZF_M:x8veQbrk-f8:7Q72WNTAKBA"><img src="http://feeds.feedburner.com/~ff/diplod?d=7Q72WNTAKBA" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/diplod?a=_g5JzQ1ZF_M:x8veQbrk-f8:dnMXMwOfBR0"><img src="http://feeds.feedburner.com/~ff/diplod?d=dnMXMwOfBR0" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/diplod?a=_g5JzQ1ZF_M:x8veQbrk-f8:pSxILM_nRGA"><img src="http://feeds.feedburner.com/~ff/diplod?d=pSxILM_nRGA" border="0"></img></a>
</div>]]></content:encoded>
			<wfw:commentRss>http://www.diplod.it/2011/04/08/html5-e-jquery-finalmente-un-player-audio-video-coi-fiocchi/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Highcharts: grafici interattivi con jQuery ottimizzati anche per iPhone / Android</title>
		<link>http://www.diplod.it/2011/02/17/highcharts-grafici-interattivi-con-jquery-ottimizzati-anche-per-iphone-android/</link>
		<comments>http://www.diplod.it/2011/02/17/highcharts-grafici-interattivi-con-jquery-ottimizzati-anche-per-iphone-android/#comments</comments>
		<pubDate>Thu, 17 Feb 2011 17:52:14 +0000</pubDate>
		<dc:creator>Davide</dc:creator>
				<category><![CDATA[Ajax e Javascript]]></category>
		<category><![CDATA[Applicazioni Web]]></category>
		<category><![CDATA[Web 2.0]]></category>
		<category><![CDATA[applicazioni]]></category>
		<category><![CDATA[charts]]></category>
		<category><![CDATA[grafici]]></category>
		<category><![CDATA[highcharts]]></category>
		<category><![CDATA[javascript]]></category>
		<category><![CDATA[Open Source]]></category>

		<guid isPermaLink="false">http://www.diplod.it/?p=1176</guid>
		<description><![CDATA[Grafici interattivi e dinamici con Highcharts, un prodotto molto flessibile per costruire cruscotti o report. Possibilità di caricare i dati in maniera asincrona e svariati modi per visualizzarli.. da provare!]]></description>
			<content:encoded><![CDATA[<p><script src="http://www.diplod.it/wp-content/uploads/2011/02/highcharts.js" type="text/javascript"></script><br />
<script type="text/javascript">// <![CDATA[  
$(document).ready(function () { 
//GRAFICO CARICATO QUANDO IL DOM DEL DOCUMENTO HTML E' PRONTO             
chartTurnover = new Highcharts.Chart({               
chart: { 
//id del div all'interno del quale il grafico deve essere visualizzato                 
renderTo: 'content4',                  
zoomType: 'xy'},               
title: {
//descrizione grafico: titolo e sottotitolo
text: 'Fatturato - Obiettivi'
},               
subtitle: {
text: 'Confronto tra vendite effettive e target previsionali'
},
//definizione dell'asse X
xAxis: [
{
categories: ['Qrt1', 'Qrt2', 'Qrt3', 'Qrt4']
}],
//definizione dell'asse Y
yAxis: [{
// aggiungo il simbolo dell'euro alle etichette dell'asse Y
labels: {
formatter: function() {
return this.value +'€'; 
} 
},
//Descrizione posta a lato dell'asse Y
title: {
text: 'Targets'
}
}], 
//Definizione del testo da visualizzare nei tooltip
tooltip: {
formatter: function() {
return ''+ this.series.name + ' ' + this.x +': '+ this.y + '€';
}
}, 
//Posizionamento legenda
legend: {
layout: 'vertical',
align: 'left',
x: 120,
verticalAlign: 'top',
y: 0,
floating: true
},
//Definisco il tipo di rappresentazione grafica
plotOptions: {
column: {
stacking: 'normal'
}
},
//Definizione delle serie di valori
series: [{
name: 'Fatturato zona1',
type: 'column',
data: [14183, 12451, 7254, 9658]
},
{ 
name: 'Fatturato zona2',
type: 'column',
data: [2183, 10451, 5254, 7658]
},
{
name: 'Fatturato zona3',
type: 'column',
data: [2300, 451, 4254, 4658]
},
{
//Ultima serie, di tipo linea (spline), per valorizzare i target
name: 'Targets',
type: 'spline',
data: [18175, 21556, 17145, 19897]
}]
}); 
//end
});
// ]]&gt;</script><br />
<!-- div grafico turnover --></p>
<div id="content4" class="grid_12 box">
<div class="loading" style="background: url(http://www.diplod.it/wp-content/uploads/2011/02/ajax-loader.gif) no-repeat center center; text-align: center; min-height: 100px;">Loading..</div>
</div>
<p>Come ti sembra questo <strong>grafico</strong>? Prova a cliccare sugli elementi della legenda e vedrai che è <strong>interattivo</strong>, potresti utilizzarlo per simulare il rispetto degli obiettivi in assenza di fatturato ottenuto su alcune zone.. Prova a selezionare col mouse una zona del grafico e vedrai puoi fare lo <strong>zoom sui dati</strong> che ti interessano.. Queste e tante altre funzionalità si possono ottenere grazie ad <strong><a title="Highcharts - grafici interattivi" href="http://highcharts.com/">Highcharts</a></strong>, un validissimo <strong>javascript </strong>open source che lavora con jQuery per renderizzare grafici più o meno complessi e molto accattivanti.</p>
<p>Il tutto <strong>senza flash</strong>, cosa a cui difficilmente si poteva rinunciare in era pre-<a title="jquery" href="http://www.google.it/url?sa=t&amp;source=web&amp;cd=1&amp;ved=0CCoQFjAA&amp;url=http%3A%2F%2Fjquery.com%2F&amp;ei=MFtdTffFMMKDOrbx3bML&amp;usg=AFQjCNFA7CZ5sWRDhHPuipmhL7zVksjC2A" target="_blank">jQuery</a> se si volevano ottenere i medesimi risultati. Le tipologie di grafici sono molteplici: si va dalla immancabile <a title="Highcharts demo" href="http://highcharts.com/demo/?example=pie-basic&amp;theme=default" target="_blank">torta</a> alla più ricercata <a title="Highcharts demo" href="http://highcharts.com/demo/?example=bar-negative-stack&amp;theme=default" target="_blank">rappresentazione demografica</a>, dal <a title="Highcharts demo" href="http://highcharts.com/demo/?example=column-stacked&amp;theme=default" target="_blank">grafico a barre</a> al potente grafico zoomabile sull&#8217;<a title="Highcharts demo" href="http://highcharts.com/demo/?example=dynamic-master-detail&amp;theme=default" target="_blank">andamento delle quotazioni</a> in borsa. E&#8217; inoltre possibile caricare i dati direttamente da una tabella definita in HTML all&#8217;interno della pagina, con poche righe di codice javascript.<br />
<span id="more-1176"></span></p>
<p>Sotto è riportato il codice, opportunamente commentato, dell&#8217;esempio mostrato in questo articolo.<br />
<code>//Carico il javascript di highcharts, dopo aver caricato jQuery<br />
&lt;script src="js/highcharts.js" type="text/javascript"&gt;&lt;/script&gt;<br />
&lt;script type="text/javascript"&gt;// &lt;![CDATA[</p>
<div id="_mcePaste">$(document).ready(function () {</div>
<div id="_mcePaste">//GRAFICO CARICATO QUANDO IL DOM DEL DOCUMENTO HTML E' PRONTO</div>
<div id="_mcePaste">chartTurnover = new Highcharts.Chart({</div>
<div id="_mcePaste">chart: {</div>
<div id="_mcePaste">//id del div all'interno del quale il grafico deve essere visualizzato</div>
<div id="_mcePaste">renderTo: 'content4',</div>
<div id="_mcePaste">zoomType: 'xy'},</div>
<div id="_mcePaste">title: {</div>
<div id="_mcePaste">//descrizione grafico: titolo e sottotitolo</div>
<div id="_mcePaste">text: 'Fatturato - Obiettivi'</div>
<div id="_mcePaste">},</div>
<div id="_mcePaste">subtitle: {</div>
<div id="_mcePaste">text: 'Confronto tra vendite effettive e target previsionali'</div>
<div id="_mcePaste">},</div>
<div id="_mcePaste">//definizione dell'asse X</div>
<div id="_mcePaste">xAxis: [</div>
<div id="_mcePaste">{</div>
<div id="_mcePaste">categories: ['Qrt1', 'Qrt2', 'Qrt3', 'Qrt4']</div>
<div id="_mcePaste">}],</div>
<div id="_mcePaste">//definizione dell'asse Y</div>
<div id="_mcePaste">yAxis: [{</div>
<div id="_mcePaste">// aggiungo il simbolo dell'euro alle etichette dell'asse Y</div>
<div id="_mcePaste">labels: {</div>
<div id="_mcePaste">formatter: function() {</div>
<div id="_mcePaste">return this.value +'€';</div>
<div id="_mcePaste">}</div>
<div id="_mcePaste">},</div>
<div id="_mcePaste">//Descrizione posta a lato dell'asse Y</div>
<div id="_mcePaste">title: {</div>
<div id="_mcePaste">text: 'Targets'</div>
<div id="_mcePaste">}</div>
<div id="_mcePaste">}],</div>
<div id="_mcePaste">//Definizione del testo da visualizzare nei tooltip</div>
<div id="_mcePaste">tooltip: {</div>
<div id="_mcePaste">formatter: function() {</div>
<div id="_mcePaste">return ''+ this.series.name + ' ' + this.x +': '+ this.y + '€';</div>
<div id="_mcePaste">}</div>
<div id="_mcePaste">},</div>
<div id="_mcePaste">//Posizionamento legenda</div>
<div id="_mcePaste">legend: {</div>
<div id="_mcePaste">layout: 'vertical',</div>
<div id="_mcePaste">align: 'left',</div>
<div id="_mcePaste">x: 120,</div>
<div id="_mcePaste">verticalAlign: 'top',</div>
<div id="_mcePaste">y: 0,</div>
<div id="_mcePaste">floating: true</div>
<div id="_mcePaste">},</div>
<div id="_mcePaste">//Definisco il tipo di rappresentazione grafica</div>
<div id="_mcePaste">plotOptions: {</div>
<div id="_mcePaste">column: {</div>
<div id="_mcePaste">stacking: 'normal'</div>
<div id="_mcePaste">}</div>
<div id="_mcePaste">},</div>
<div id="_mcePaste">//Definizione delle serie di valori</div>
<div id="_mcePaste">series: [{</div>
<div id="_mcePaste">name: 'Fatturato zona1',</div>
<div id="_mcePaste">type: 'column',</div>
<div id="_mcePaste">data: [14183, 12451, 7254, 9658]</div>
<div id="_mcePaste">},</div>
<div id="_mcePaste">{</div>
<div id="_mcePaste">name: 'Fatturato zona2',</div>
<div id="_mcePaste">type: 'column',</div>
<div id="_mcePaste">data: [2183, 10451, 5254, 7658]</div>
<div id="_mcePaste">},</div>
<div id="_mcePaste">{</div>
<div id="_mcePaste">name: 'Fatturato zona3',</div>
<div id="_mcePaste">type: 'column',</div>
<div id="_mcePaste">data: [2300, 451, 4254, 4658]</div>
<div id="_mcePaste">},</div>
<div id="_mcePaste">{</div>
<div id="_mcePaste">//Ultima serie, di tipo linea (spline), per valorizzare i target</div>
<div id="_mcePaste">name: 'Targets',</div>
<div id="_mcePaste">type: 'spline',</div>
<div id="_mcePaste">data: [18175, 21556, 17145, 19897]</div>
<div id="_mcePaste">}]</div>
<div id="_mcePaste">});</div>
<div id="_mcePaste">//end</div>
<div id="_mcePaste">// ]]&gt;&lt;/script&gt;</div>
<p></code></p>
<p>Data la sua natura di puro css e javascript, questo grafico è agilmente fruibile anche da dispositivi mobili come iPhone o Android, inoltre è ben renderizzato dai principali browser. Si tratta di un prodotto davvero interessante che potrebbe tornare utile in diverse applicazioni stand-alone, a costo zero. Ben diverso dal classico <a href="http://www.diplod.it/2008/04/20/google-chart-api-grafici-dinamici-in-un-attimo/">Google Charts</a>, servizio comodissimo che però pecca in quanto ad interattività: all&#8217;utente viene infatti restituita in quel caso una immagine statica.</p>
<p><strong>Cosa Manca?</strong> Mancano i &#8220;<strong>geo-grafici</strong>&#8220;, ovvero la possibilità di visualizzare i dati su una cartina; mancano i <strong>tachimetri</strong>, per visualizzare in un colpo d&#8217;occhio l&#8217;andamento più o meno positivo di un indicatore. Sono comunque cose a cui si può sopperire spulciando bene l&#8217;elenco dei plugin jQuery..<br />
<strong>E voi? Che cosa utilizzate in questi casi?</strong></p>
<div class="feedflare">
<a href="http://feeds.feedburner.com/~ff/diplod?a=g6Ft3XpI0-M:hGKCCZqk55k:yIl2AUoC8zA"><img src="http://feeds.feedburner.com/~ff/diplod?d=yIl2AUoC8zA" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/diplod?a=g6Ft3XpI0-M:hGKCCZqk55k:V_sGLiPBpWU"><img src="http://feeds.feedburner.com/~ff/diplod?i=g6Ft3XpI0-M:hGKCCZqk55k:V_sGLiPBpWU" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/diplod?a=g6Ft3XpI0-M:hGKCCZqk55k:F7zBnMyn0Lo"><img src="http://feeds.feedburner.com/~ff/diplod?i=g6Ft3XpI0-M:hGKCCZqk55k:F7zBnMyn0Lo" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/diplod?a=g6Ft3XpI0-M:hGKCCZqk55k:7Q72WNTAKBA"><img src="http://feeds.feedburner.com/~ff/diplod?d=7Q72WNTAKBA" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/diplod?a=g6Ft3XpI0-M:hGKCCZqk55k:dnMXMwOfBR0"><img src="http://feeds.feedburner.com/~ff/diplod?d=dnMXMwOfBR0" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/diplod?a=g6Ft3XpI0-M:hGKCCZqk55k:pSxILM_nRGA"><img src="http://feeds.feedburner.com/~ff/diplod?d=pSxILM_nRGA" border="0"></img></a>
</div>]]></content:encoded>
			<wfw:commentRss>http://www.diplod.it/2011/02/17/highcharts-grafici-interattivi-con-jquery-ottimizzati-anche-per-iphone-android/feed/</wfw:commentRss>
		<slash:comments>7</slash:comments>
		</item>
		<item>
		<title>Chiamare e consumare un web service da una pagina aspx con C#</title>
		<link>http://www.diplod.it/2010/12/21/chiamare-e-consumare-un-web-service-da-una-pagina-aspx-con-c/</link>
		<comments>http://www.diplod.it/2010/12/21/chiamare-e-consumare-un-web-service-da-una-pagina-aspx-con-c/#comments</comments>
		<pubDate>Tue, 21 Dec 2010 11:41:40 +0000</pubDate>
		<dc:creator>Davide</dc:creator>
				<category><![CDATA[Applicazioni Web]]></category>
		<category><![CDATA[c#]]></category>
		<category><![CDATA[esempio]]></category>
		<category><![CDATA[Visual Studio]]></category>
		<category><![CDATA[web service]]></category>

		<guid isPermaLink="false">http://www.diplod.it/?p=1166</guid>
		<description><![CDATA[Un esempio pratico per interrogare un web service remoto e restituire il risultato su una pagina aspx scritta in C# con Visual Studio.]]></description>
			<content:encoded><![CDATA[<p>Cosa sono i <strong>web service</strong> e perchè possono essere davvero <strong>utili </strong>lo lascio raccontare ad altri:</p>
<ul>
<li><a href="http://it.wikipedia.org/wiki/Web_service" target="_blank">Web Service su Wikipedia</a></li>
<li><a href="http://server.html.it/guide/leggi/100/guida-web-service/" target="_blank">Guida Web Service</a></li>
</ul>
<p>L&#8217;obiettivo di questo articolo è fissare un <strong>esempio pratico</strong> per interrogare un web service e sfruttare i risultati che restituisce utilizzando <strong>C# e Visual Studio</strong>.</p>
<p>Supponiamo di dover accedere al webservice di esempio su W3C, descritto a questa pagina: http://www.w3schools.com/webservices/tempconvert.asmx<br />
La descrizione del servizio è fornita a questo URL:  http://www.w3schools.com/webservices/tempconvert.asmx</p>
<p>Il servizio ha 2 metodi  - <em>FahrenheitToCelsius()</em> e <em>CelsiusToFahrenheit() </em>- che accettano entrambi un solo parametro di input e convertono la temperatura da gradi fahrenhait a Celsius e viceversa.</p>
<p>La risposta del server è un XML di questo tipo:<br />
<code>&lt;?xml version="1.0" encoding="utf-8" ?&gt;&lt;string xmlns="http://tempuri.org/"&gt;38&lt;/string&gt;</code></p>
<p><span id="more-1166"></span>Su Visual Studio, cliccando sul nome del progetto web col tasto destro, si apre un menu dove è possibile aggiungere una <em>Web Reference</em>.</p>
<p><a href="http://www.diplod.it/wp-content/uploads/2010/12/ws1.png"><img class="alignnone size-large wp-image-1168" title="ws1" src="http://www.diplod.it/wp-content/uploads/2010/12/ws1-1024x640.png" alt="" width="800" height="580" /></a></p>
<p>Qui si inserisce l’indirizzo della descrizione WSDL del web service.</p>
<p><a href="http://www.diplod.it/wp-content/uploads/2010/12/ws2.png"><img class="alignnone size-full wp-image-1169" title="ws2" src="http://www.diplod.it/wp-content/uploads/2010/12/ws2.png" alt="" width="825" height="571" /></a></p>
<p>Il software identifica l’interfaccia del servizio web, con i metodi che mette a disposizione.<br />
Per aggiungerlo al progetto si clicca sul tasto Add Reference. Fatto questo ci troveremo l&#8217;oggetto nel Solution Explorer.</p>
<p><a href="http://www.diplod.it/wp-content/uploads/2010/12/ws3.png"><img class="alignnone size-full wp-image-1170" title="ws3" src="http://www.diplod.it/wp-content/uploads/2010/12/ws3.png" alt="" width="380" height="284" /></a></p>
<p>Ora nel codice della pagina aspx su cui vogliamo consumare il web service è necessario aggiungere il riferimento con questo codice:<br />
<code>using com.w3schools.www;</code></p>
<p><a href="http://www.diplod.it/wp-content/uploads/2010/12/ws4.png"><img class="alignnone size-full wp-image-1171" title="ws4" src="http://www.diplod.it/wp-content/uploads/2010/12/ws4.png" alt="" width="800" height="320" /></a></p>
<p>Ora dichiariamo un oggetto per la web reference, che sarà possibile utilizzare con tutti i sui metodi come qualsiasi altro oggetto:</p>
<p><code>com.w3schools.www.TempConvert MyProxy = new com.w3schools.www.TempConvert();</code></p>
<p><a href="http://www.diplod.it/wp-content/uploads/2010/12/ws5.png"><img class="alignnone size-full wp-image-1172" title="ws5" src="http://www.diplod.it/wp-content/uploads/2010/12/ws5.png" alt="" width="633" height="331" /></a></p>
<p>L’esempio finale completo potrebbe essere una pagine con una textbox che nella quale l’utente scrive la temperatura, un bottone di invio invoca il webservice e il risultato appare in una label. In questo caso il codice della classe sarebbe il seguente:<br />
<code><br />
using System;<br />
using System.Collections.Generic;<br />
using System.Linq;<br />
using System.Web;<br />
using System.Web.UI;<br />
using System.Web.UI.WebControls;<br />
using com.w3schools.www;<br />
public partial class _Default : System.Web.UI.Page{<br />
com.w3schools.www.TempConvert MyProxy = new com.w3schools.www.TempConvert();<br />
protected void Page_Load(object sender, EventArgs e)    { }<br />
protected void Button1_Click(object sender, EventArgs e)    {<br />
Label1.Text = MyProxy.CelsiusToFahrenheit(TextBox1.Text);<br />
}<br />
}<br />
</code></p>
<p>Mentre il codice della pagina il seguente:<br />
<code><br />
&lt;%@ Page Language="C#" AutoEventWireup="true" CodeFile="Default.aspx.cs" Inherits="_Default" %&gt;<br />
&lt;!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"&gt;<br />
&lt;html xmlns="http://www.w3.org/1999/xhtml"&gt;<br />
&lt;head runat="server"&gt;<br />
&lt;title&gt;&lt;/title&gt;<br />
&lt;/head&gt;<br />
&lt;body&gt;<br />
&lt;form id="form1" runat="server"&gt;<br />
&lt;div&gt;<br />
&lt;asp:TextBox ID="TextBox1" runat="server"&gt;&lt;/asp:TextBox&gt;&amp;nbsp;&lt;asp:Button ID="Button1" runat="server" onclick="Button1_Click" Text="Button" /&gt;&lt;br /&gt;<br />
&lt;asp:Label ID="Label1" runat="server" Text="Label"&gt;&lt;/asp:Label&gt;<br />
&lt;/div&gt;<br />
&lt;/form&gt;<br />
&lt;/body&gt;<br />
&lt;/html&gt;<br />
</code></p>
<p>E ora non resta che sbizzarrirsi, una volta imparato <strong>il mestiere va affinato</strong>.</p>
<p>Lascio qualche link per chi i web service li vuole anche costruire:</p>
<ul>
<li><a href="http://www.codeproject.com/KB/java/Invoke_Java_WS_In_CS.aspx" target="_blank">How to create and invoke Java web service</a></li>
<li><a href="http://www.codeproject.com/KB/webservices/myservice.aspx" target="_blank">Your first C# Web Service</a></li>
</ul>
<div class="feedflare">
<a href="http://feeds.feedburner.com/~ff/diplod?a=Q76tOi0U-5A:3j98o7xcblM:yIl2AUoC8zA"><img src="http://feeds.feedburner.com/~ff/diplod?d=yIl2AUoC8zA" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/diplod?a=Q76tOi0U-5A:3j98o7xcblM:V_sGLiPBpWU"><img src="http://feeds.feedburner.com/~ff/diplod?i=Q76tOi0U-5A:3j98o7xcblM:V_sGLiPBpWU" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/diplod?a=Q76tOi0U-5A:3j98o7xcblM:F7zBnMyn0Lo"><img src="http://feeds.feedburner.com/~ff/diplod?i=Q76tOi0U-5A:3j98o7xcblM:F7zBnMyn0Lo" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/diplod?a=Q76tOi0U-5A:3j98o7xcblM:7Q72WNTAKBA"><img src="http://feeds.feedburner.com/~ff/diplod?d=7Q72WNTAKBA" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/diplod?a=Q76tOi0U-5A:3j98o7xcblM:dnMXMwOfBR0"><img src="http://feeds.feedburner.com/~ff/diplod?d=dnMXMwOfBR0" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/diplod?a=Q76tOi0U-5A:3j98o7xcblM:pSxILM_nRGA"><img src="http://feeds.feedburner.com/~ff/diplod?d=pSxILM_nRGA" border="0"></img></a>
</div>]]></content:encoded>
			<wfw:commentRss>http://www.diplod.it/2010/12/21/chiamare-e-consumare-un-web-service-da-una-pagina-aspx-con-c/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>Lavorare con le date in javascript: il tool che salva la vita!</title>
		<link>http://www.diplod.it/2010/09/29/lavorare-con-le-date-in-javascript-il-tool-che-salva-la-vita/</link>
		<comments>http://www.diplod.it/2010/09/29/lavorare-con-le-date-in-javascript-il-tool-che-salva-la-vita/#comments</comments>
		<pubDate>Wed, 29 Sep 2010 14:43:22 +0000</pubDate>
		<dc:creator>Davide</dc:creator>
				<category><![CDATA[Ajax e Javascript]]></category>
		<category><![CDATA[date]]></category>
		<category><![CDATA[javascript]]></category>
		<category><![CDATA[utility]]></category>
		<category><![CDATA[vb]]></category>

		<guid isPermaLink="false">http://www.diplod.it/?p=1140</guid>
		<description><![CDATA[jsDate. Per chi non vuole impazzire con le classiche funzioni javascript, che sono utili ma non sempre funzionali, esiste questo comodo js da includere nei propri lavori per agire in maniera efficace sulle date. La funzione più importante è sicuramente il DateDiff(), comodissimo per fare somme e differenze al volo.]]></description>
			<content:encoded><![CDATA[<p><a href="http://slingfive.com/pages/code/jsDate/jsDate.html"><strong>jsDate</strong></a>: emulatore delle funzioni native Visual Basic in javascript. Ovvero, come fare somme e differenze, trasformare in diversi formati, ricavare il giorno della settimana o il mese da stringhe che rappresentano date.</p>
<p>Per chi non vuole impazzire con le classiche funzioni javascript, che sono utili ma non sempre funzionali, esiste questo comodo js da includere nei propri lavori per agire in maniera efficace sulle date. La funzione più importante è sicuramente il DateDiff(), comodissimo per fare somme e differenze <em>al volo</em> sulle date.</p>
<p>Ecco un po&#8217; di giochetti che si possono fare grazie a questo script, lo schema esplicativo sottostante è stato preso direttamente dal <a href="http://slingfive.com/pages/code/jsDate/jsDate.html">sito dell&#8217;autore</a>.<br />
<span id="more-1140"></span></p>
<p><script language="javascript" type="text/javascript" src="http://www.diplod.it/wp-content/uploads/2010/09/jsDate.js"></script><br />
<script language="javascript" type="text/javascript" src="http://www.diplod.it/wp-content/uploads/2010/09/jsDate_demo.js"></script> </p>
<div id="params" style="float: left; width: 40%">
<h6>1) Imposta i parametri:</h6>
<p>	<label for="txtDate1"><span>date1</span><br />
<input type="text" id="txtDate1" value="9/2/2005 1:23:45 am" /></label><br />
	<button onclick="oDate1.value = new Date();" title="set to Now">Crea una nuova data</button> </p>
<p>	<label for="txtDate2"><span>date2</span> </p>
<input type="text" id="txtDate2" value="12/5/2009 5:43:21 am" /></label><br />
	<button onclick="oDate2.value = new Date();" title="set to Now">Crea una nuova data</button> </p>
<p>	<label for="selInterval"><span>interval</span> </p>
<select id="selInterval">
<option value=""></option>
<option value="yyyy" selected="selected">yyyy (year)</option>
<option value="q">q &nbsp; &nbsp;(quarter)</option>
<option value="m">m &nbsp; &nbsp;(month)</option>
<option value="y">y &nbsp; &nbsp;(day of year)</option>
<option value="d">d &nbsp; &nbsp;(day)</option>
<option value="w">w &nbsp; &nbsp;(weekday)</option>
<option value="ww">ww &nbsp;&nbsp;(week of year)</option>
<option value="h">h &nbsp; &nbsp;(hour)</option>
<option value="n">n &nbsp; &nbsp;(minute)</option>
<option value="s">s &nbsp; &nbsp;(seconds)</option>
<option value="ms" style="color:red;">ms &nbsp;&nbsp;(milliseconds)</option>
</select>
<p></label> </p>
<p>	<label for="txtNumber"><span>number</span> </p>
<input type="text" id="txtNumber" value="1" /></label> </p>
<p>	<label for="selFirstDayOfWeek"><span>firstDayOfWeek</span> </p>
<select id="selFirstDayOfWeek">
<option value=""></option>
<option value="0">0 : vbUseSystemDayOfWeek (==1)</option>
<option value="1">1 : vbSunday</option>
<option value="2">2 : vbMonday</option>
<option value="3">3 : vbTuesday</option>
<option value="4">4 : vbWednesday</option>
<option value="5">5 : vbThursday</option>
<option value="6">6 : vbFriday</option>
<option value="7">7 : vbSaturday</option>
</select>
<p></label> </p>
<p>	<label for="selNamedFormat"><span>namedFormat</span> </p>
<select id="selNamedFormat">
<option value=""></option>
<option value="0" selected="selected">0 : vbGeneralDate</option>
<option value="1">1 : vbLongDate</option>
<option value="2">2 : vbShortDate</option>
<option value="3">3 : vbLongTime</option>
<option value="4">4 : vbShortTime</option>
</select>
<p></label> </p>
<p>	<label for="txtFormat"><span>format</span> </p>
<input type="text" id="txtFormat" value="ddd mmm d, yyyy" 	title="possible values:</p>
<p>	c, d, dd, ddd, dddd, ddddd, dddddd, m, mm, mmm, mmmm, q, y, yy, yyyy</p>
<p>	h, hh, n, nn, s, ss, t t t t t, AM/PM, am/pm, A/P, a/p, AMPM, timezone, time24, time"/></label><br /> <br />
	<label for="chkAbbreviate"><span>abbreviate</span> </p>
<input type="checkbox" id="chkAbbreviate" value="true" /></label> </p>
</div>
<div id="functions" style="float: right; width: 40%">
<h6>2) Chiama una funzione:</h6>
<div style="display:table;">
	<button id="btnTestIsDate" assocCtlIDs="txtDate1"><b>IsDate</b> (date1)</button><br /> <br />
	<button id="btnTestCDate" assocCtlIDs="txtDate1"><b>CDate</b> (date1)</button><br /> <br />
	<button id="btnTestDateAdd" assocCtlIDs="selInterval,txtNumber,txtDate1"><b>DateAdd</b> (interval, number, date1)</button><br /> <br />
	<button id="btnTestDateDiff" assocCtlIDs="selInterval,txtDate1,txtDate2,selFirstDayOfWeek"><b>DateDiff</b> (interval, date1, date2, <i>firstDayOfWeek</i>)</button><br /> <br />
	<button id="btnTestDatePart" assocCtlIDs="selInterval,txtDate1,selFirstDayOfWeek"><b>DatePart</b> (interval, date1, <i>firstDayOfWeek</i>)</button><br /> <br />
	<button id="btnTestMonthName" assocCtlIDs="txtNumber,chkAbbreviate"><b>MonthName</b> (number, <i>abbreviate</i>)</button><br /> <br />
	<button id="btnTestWeekdayName" assocCtlIDs="txtNumber,chkAbbreviate,selFirstDayOfWeek"><b>WeekdayName</b> (number, <i>abbreviate</i>, <i>firstDayOfWeek</i>)</button><br /> <br />
	<button id="btnTestWeekday" assocCtlIDs="txtNumber,selFirstDayOfWeek"><b>Weekday</b> (number, <i>firstDayOfWeek</i>)</button><br /> <br />
	<button id="btnTestFormatDateTime" assocCtlIDs="txtDate1,selNamedFormat"><b>FormatDateTime</b> (date1, <i>namedFormat</i>)</button><br /> <br />
	<button id="btnTestFormat" assocCtlIDs="txtDate1,txtFormat,selFirstDayOfWeek"><b>Format</b> (date1, <i>format</i>, <i>firstDayOfWeek</i>)</button><br /> 
	</div>
</div>
<p><br clear="all" /> </p>
<h6 style="margin-top:-1em;">3) Ottieni questo risultato:</h6>
<div id="result" style="background: yellow;">&nbsp;</div>
<div class="feedflare">
<a href="http://feeds.feedburner.com/~ff/diplod?a=Trl3tlYl2yQ:aXqNK1YqRQc:yIl2AUoC8zA"><img src="http://feeds.feedburner.com/~ff/diplod?d=yIl2AUoC8zA" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/diplod?a=Trl3tlYl2yQ:aXqNK1YqRQc:V_sGLiPBpWU"><img src="http://feeds.feedburner.com/~ff/diplod?i=Trl3tlYl2yQ:aXqNK1YqRQc:V_sGLiPBpWU" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/diplod?a=Trl3tlYl2yQ:aXqNK1YqRQc:F7zBnMyn0Lo"><img src="http://feeds.feedburner.com/~ff/diplod?i=Trl3tlYl2yQ:aXqNK1YqRQc:F7zBnMyn0Lo" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/diplod?a=Trl3tlYl2yQ:aXqNK1YqRQc:7Q72WNTAKBA"><img src="http://feeds.feedburner.com/~ff/diplod?d=7Q72WNTAKBA" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/diplod?a=Trl3tlYl2yQ:aXqNK1YqRQc:dnMXMwOfBR0"><img src="http://feeds.feedburner.com/~ff/diplod?d=dnMXMwOfBR0" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/diplod?a=Trl3tlYl2yQ:aXqNK1YqRQc:pSxILM_nRGA"><img src="http://feeds.feedburner.com/~ff/diplod?d=pSxILM_nRGA" border="0"></img></a>
</div>]]></content:encoded>
			<wfw:commentRss>http://www.diplod.it/2010/09/29/lavorare-con-le-date-in-javascript-il-tool-che-salva-la-vita/feed/</wfw:commentRss>
		<slash:comments>2</slash:comments>
		</item>
		<item>
		<title>Si riparte con l’anello al dito!</title>
		<link>http://www.diplod.it/2010/09/14/si-riparte-con-lanello-al-dito/</link>
		<comments>http://www.diplod.it/2010/09/14/si-riparte-con-lanello-al-dito/#comments</comments>
		<pubDate>Tue, 14 Sep 2010 22:07:10 +0000</pubDate>
		<dc:creator>Davide</dc:creator>
				<category><![CDATA[Pensieri Sconnessi]]></category>
		<category><![CDATA[foto]]></category>
		<category><![CDATA[irlanda]]></category>
		<category><![CDATA[islanda]]></category>
		<category><![CDATA[matrimonio]]></category>

		<guid isPermaLink="false">http://www.diplod.it/?p=1134</guid>
		<description><![CDATA[Qualcuno forse avrà notato un'insolita calma su queste pagine negli ultimi mesi, qualcuno magari no. Ebbene sì, mi sono sposato. E la cosa fu davvero gradita, se non altro per le tre settimane di stop tra Islanda e Irlanda. Ora si riparte con le pubblicazioni.]]></description>
			<content:encoded><![CDATA[<p>Qualcuno forse avrà notato un&#8217;insolita calma su queste pagine negli ultimi mesi, qualcuno magari no. <strong>Ebbene sì, mi sono sposato</strong>. E la cosa fu davvero gradita, se non altro per le tre settimane di stop tra <strong>Islanda</strong> e <strong>Irlanda</strong>.</p>
<p>Su <a href="http://www.flickr.com/photos/diplod/">Flickr</a>, il mio album si sta popolando giorno per giorno, e si potranno sbirciare le foto del viaggio.. del quale rimane uno splendido ricordo. La lava, la birra, le luminose notti islandesi e le musicali notti irlandesi. Ora si torna alla carica, un po&#8217; come per la scuola o la pallacanestro, inizia la nuova stagione.</p>
<p><object width="400" height="300"><param name="flashvars" value="offsite=true&#038;lang=it-it&#038;page_show_url=%2Fphotos%2Fdiplod%2Fsets%2F72157624957876354%2Fshow%2F&#038;page_show_back_url=%2Fphotos%2Fdiplod%2Fsets%2F72157624957876354%2F&#038;set_id=72157624957876354&#038;jump_to="></param><param name="movie" value="http://www.flickr.com/apps/slideshow/show.swf?v=71649"></param><param name="allowFullScreen" value="true"></param><embed type="application/x-shockwave-flash" src="http://www.flickr.com/apps/slideshow/show.swf?v=71649" allowFullScreen="true" flashvars="offsite=true&#038;lang=it-it&#038;page_show_url=%2Fphotos%2Fdiplod%2Fsets%2F72157624957876354%2Fshow%2F&#038;page_show_back_url=%2Fphotos%2Fdiplod%2Fsets%2F72157624957876354%2F&#038;set_id=72157624957876354&#038;jump_to=" width="400" height="300"></embed></object></p>
<p><object width="400" height="300"><param name="flashvars" value="offsite=true&#038;lang=it-it&#038;page_show_url=%2Fphotos%2Fdiplod%2Fsets%2F72157607328712982%2Fshow%2F&#038;page_show_back_url=%2Fphotos%2Fdiplod%2Fsets%2F72157607328712982%2F&#038;set_id=72157607328712982&#038;jump_to="></param><param name="movie" value="http://www.flickr.com/apps/slideshow/show.swf?v=71649"></param><param name="allowFullScreen" value="true"></param><embed type="application/x-shockwave-flash" src="http://www.flickr.com/apps/slideshow/show.swf?v=71649" allowFullScreen="true" flashvars="offsite=true&#038;lang=it-it&#038;page_show_url=%2Fphotos%2Fdiplod%2Fsets%2F72157607328712982%2Fshow%2F&#038;page_show_back_url=%2Fphotos%2Fdiplod%2Fsets%2F72157607328712982%2F&#038;set_id=72157607328712982&#038;jump_to=" width="400" height="300"></embed></object></p>
<div class="feedflare">
<a href="http://feeds.feedburner.com/~ff/diplod?a=mUJOtXxkxCA:NsbUWmfLWmQ:yIl2AUoC8zA"><img src="http://feeds.feedburner.com/~ff/diplod?d=yIl2AUoC8zA" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/diplod?a=mUJOtXxkxCA:NsbUWmfLWmQ:V_sGLiPBpWU"><img src="http://feeds.feedburner.com/~ff/diplod?i=mUJOtXxkxCA:NsbUWmfLWmQ:V_sGLiPBpWU" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/diplod?a=mUJOtXxkxCA:NsbUWmfLWmQ:F7zBnMyn0Lo"><img src="http://feeds.feedburner.com/~ff/diplod?i=mUJOtXxkxCA:NsbUWmfLWmQ:F7zBnMyn0Lo" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/diplod?a=mUJOtXxkxCA:NsbUWmfLWmQ:7Q72WNTAKBA"><img src="http://feeds.feedburner.com/~ff/diplod?d=7Q72WNTAKBA" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/diplod?a=mUJOtXxkxCA:NsbUWmfLWmQ:dnMXMwOfBR0"><img src="http://feeds.feedburner.com/~ff/diplod?d=dnMXMwOfBR0" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/diplod?a=mUJOtXxkxCA:NsbUWmfLWmQ:pSxILM_nRGA"><img src="http://feeds.feedburner.com/~ff/diplod?d=pSxILM_nRGA" border="0"></img></a>
</div>]]></content:encoded>
			<wfw:commentRss>http://www.diplod.it/2010/09/14/si-riparte-con-lanello-al-dito/feed/</wfw:commentRss>
		<slash:comments>4</slash:comments>
		</item>
		<item>
		<title>Componenti Ajax e UI Toolkit per applicazioni web RIA</title>
		<link>http://www.diplod.it/2010/07/19/componenti-ajax-e-ui-toolkit-per-applicazioni-web-ria/</link>
		<comments>http://www.diplod.it/2010/07/19/componenti-ajax-e-ui-toolkit-per-applicazioni-web-ria/#comments</comments>
		<pubDate>Mon, 19 Jul 2010 06:42:17 +0000</pubDate>
		<dc:creator>Davide</dc:creator>
				<category><![CDATA[Ajax e Javascript]]></category>
		<category><![CDATA[Applicazioni Web]]></category>
		<category><![CDATA[Web 2.0]]></category>
		<category><![CDATA[.net]]></category>
		<category><![CDATA[ajax]]></category>
		<category><![CDATA[Java]]></category>
		<category><![CDATA[javascript]]></category>
		<category><![CDATA[RIA]]></category>
		<category><![CDATA[toolkit]]></category>
		<category><![CDATA[webdesign]]></category>

		<guid isPermaLink="false">http://www.diplod.it/?p=1087</guid>
		<description><![CDATA[Volete stupire con componenti dinamici pronti all'uso? Creare applicazioni web avanzate non è poi così laborioso, oggi si trovano un sacco di risorse in rete. Ecco una breve panoramica.]]></description>
			<content:encoded><![CDATA[<p style="text-align: center;"><a href="http://www.diplod.it/wp-content/uploads/2010/07/toolkit.png"><img class="size-full wp-image-1130 aligncenter" title="toolkit" src="http://www.diplod.it/wp-content/uploads/2010/07/toolkit.png" alt="" width="415" height="212" /></a></p>
<p><strong>Volete stupire con componenti dinamici pronti all&#8217;uso?</strong> Creare <strong>applicazioni web</strong> avanzate non è poi così laborioso, oggi si trovano un sacco di risorse in rete. Una di queste è il<strong> <a title="DHTMLX" href="http://www.dhtmlx.com/" target="_blank">DHTMLX UI Toolkit</a></strong>, una serie di <strong>librerie javascript</strong> corredate da tantissimi esempi. La documentazione è ciò che fa la differenza: gli script non documentati e con pochi esempi sono quasi inutilizzabili, se non perdendo un sacco di ore per studiarseli. UI Toolkit viene distribuito in uno zip con diverse pagine di pratiche demo.</p>
<p>Per chi lavora in <strong>ambiente .NET</strong> molto interessante è questo <a title="Ajax Control Toolkit" href="http://ajaxcontroltoolkit.codeplex.com/" target="_blank"><strong>Ajax Control Toolkit</strong></a>, un insieme di controlli utilizzabili direttamente in <strong>Visual Studio</strong> con il drag and drop, per costruire form e applicazioni accattivanti. Da Codeplex si possono scaricare anche i sorgenti, corredati da diversi esempi. In <a title="Ajax control toolkit - esempi" href="http://www.asp.net/ajax/ajaxcontroltoolkit/samples/" target="_blank">questa pagina</a> si può avere una panoramica di tutte le funzionalità disponibili, sono davvero parecchie:</p>
<p><span id="more-1087"></span></p>
<ul>
<li><a id="ctl00_SamplesLinks_ctl01_SamplesLink" href="http://www.asp.net/ajax/ajaxcontroltoolkit/Samples/Accordion/Accordion.aspx">Accordion</a></li>
<li><a id="ctl00_SamplesLinks_ctl02_SamplesLink" href="http://www.asp.net/ajax/ajaxcontroltoolkit/Samples/AlwaysVisibleControl/AlwaysVisibleControl.aspx">AlwaysVisibleControl</a></li>
<li><a id="ctl00_SamplesLinks_ctl03_SamplesLink" href="http://www.asp.net/ajax/ajaxcontroltoolkit/Samples/Animation/Animation.aspx">Animation</a></li>
<li><a id="ctl00_SamplesLinks_ctl04_SamplesLink" href="http://www.asp.net/ajax/ajaxcontroltoolkit/Samples/AsyncFileUpload/AsyncFileUpload.aspx">AsyncFileUpload</a></li>
<li><a id="ctl00_SamplesLinks_ctl05_SamplesLink" href="http://www.asp.net/ajax/ajaxcontroltoolkit/Samples/AutoComplete/AutoComplete.aspx">AutoComplete</a></li>
<li><a id="ctl00_SamplesLinks_ctl06_SamplesLink" href="http://www.asp.net/ajax/ajaxcontroltoolkit/Samples/Calendar/Calendar.aspx">Calendar</a></li>
<li><a id="ctl00_SamplesLinks_ctl07_SamplesLink" href="http://www.asp.net/ajax/ajaxcontroltoolkit/Samples/CascadingDropDown/CascadingDropDown.aspx">CascadingDropDown</a></li>
<li><a id="ctl00_SamplesLinks_ctl08_SamplesLink" href="http://www.asp.net/ajax/ajaxcontroltoolkit/Samples/CollapsiblePanel/CollapsiblePanel.aspx">CollapsiblePanel</a></li>
<li><a id="ctl00_SamplesLinks_ctl09_SamplesLink" href="http://www.asp.net/ajax/ajaxcontroltoolkit/Samples/ColorPicker/ColorPicker.aspx">ColorPicker</a></li>
<li><a id="ctl00_SamplesLinks_ctl10_SamplesLink" href="http://www.asp.net/ajax/ajaxcontroltoolkit/Samples/ComboBox/ComboBox.aspx">ComboBox</a></li>
<li><a id="ctl00_SamplesLinks_ctl11_SamplesLink" href="http://www.asp.net/ajax/ajaxcontroltoolkit/Samples/ConfirmButton/ConfirmButton.aspx">ConfirmButton</a></li>
<li><a id="ctl00_SamplesLinks_ctl12_SamplesLink" href="http://www.asp.net/ajax/ajaxcontroltoolkit/Samples/DragPanel/DragPanel.aspx">DragPanel</a></li>
<li><a id="ctl00_SamplesLinks_ctl13_SamplesLink" href="http://www.asp.net/ajax/ajaxcontroltoolkit/Samples/DropDown/DropDown.aspx">DropDown</a></li>
<li><a id="ctl00_SamplesLinks_ctl14_SamplesLink" href="http://www.asp.net/ajax/ajaxcontroltoolkit/Samples/DropShadow/DropShadow.aspx">DropShadow</a></li>
<li><a id="ctl00_SamplesLinks_ctl15_SamplesLink" href="http://www.asp.net/ajax/ajaxcontroltoolkit/Samples/DynamicPopulate/DynamicPopulate.aspx">DynamicPopulate</a></li>
<li><a id="ctl00_SamplesLinks_ctl16_SamplesLink" href="http://www.asp.net/ajax/ajaxcontroltoolkit/Samples/FilteredTextBox/FilteredTextBox.aspx">FilteredTextBox</a></li>
<li><a id="ctl00_SamplesLinks_ctl17_SamplesLink" href="http://www.asp.net/ajax/ajaxcontroltoolkit/Samples/HoverMenu/HoverMenu.aspx">HoverMenu</a></li>
<li><a id="ctl00_SamplesLinks_ctl18_SamplesLink" href="http://www.asp.net/ajax/ajaxcontroltoolkit/Samples/HTMLEditor/HTMLEditor.aspx">HTMLEditor</a></li>
<li><a id="ctl00_SamplesLinks_ctl19_SamplesLink" href="http://www.asp.net/ajax/ajaxcontroltoolkit/Samples/ListSearch/ListSearch.aspx">ListSearch</a></li>
<li><a id="ctl00_SamplesLinks_ctl20_SamplesLink" href="http://www.asp.net/ajax/ajaxcontroltoolkit/Samples/MaskedEdit/MaskedEdit.aspx">MaskedEdit</a></li>
<li><a id="ctl00_SamplesLinks_ctl21_SamplesLink" href="http://www.asp.net/ajax/ajaxcontroltoolkit/Samples/ModalPopup/ModalPopup.aspx">ModalPopup</a></li>
<li><a id="ctl00_SamplesLinks_ctl22_SamplesLink" href="http://www.asp.net/ajax/ajaxcontroltoolkit/Samples/MultiHandleSlider/MultiHandleSlider.aspx">MultiHandleSlider</a></li>
<li><a id="ctl00_SamplesLinks_ctl23_SamplesLink" href="http://www.asp.net/ajax/ajaxcontroltoolkit/Samples/MutuallyExclusiveCheckBox/MutuallyExclusiveCheckBox.aspx">MutuallyExclusiveCheckBox</a></li>
<li><a id="ctl00_SamplesLinks_ctl24_SamplesLink" href="http://www.asp.net/ajax/ajaxcontroltoolkit/Samples/NoBot/NoBot.aspx">NoBot</a></li>
<li><a id="ctl00_SamplesLinks_ctl25_SamplesLink" href="http://www.asp.net/ajax/ajaxcontroltoolkit/Samples/NumericUpDown/NumericUpDown.aspx">NumericUpDown</a></li>
<li><a id="ctl00_SamplesLinks_ctl26_SamplesLink" href="http://www.asp.net/ajax/ajaxcontroltoolkit/Samples/PagingBulletedList/PagingBulletedList.aspx">PagingBulletedList</a></li>
<li><a id="ctl00_SamplesLinks_ctl27_SamplesLink" href="http://www.asp.net/ajax/ajaxcontroltoolkit/Samples/PasswordStrength/PasswordStrength.aspx">PasswordStrength</a></li>
<li><a id="ctl00_SamplesLinks_ctl28_SamplesLink" href="http://www.asp.net/ajax/ajaxcontroltoolkit/Samples/PopupControl/PopupControl.aspx">PopupControl</a></li>
<li><a id="ctl00_SamplesLinks_ctl29_SamplesLink" href="http://www.asp.net/ajax/ajaxcontroltoolkit/Samples/Rating/Rating.aspx">Rating</a></li>
<li><a id="ctl00_SamplesLinks_ctl30_SamplesLink" href="http://www.asp.net/ajax/ajaxcontroltoolkit/Samples/ReorderList/ReorderList.aspx">ReorderList</a></li>
<li><a id="ctl00_SamplesLinks_ctl31_SamplesLink" href="http://www.asp.net/ajax/ajaxcontroltoolkit/Samples/ResizableControl/ResizableControl.aspx">ResizableControl</a></li>
<li><a id="ctl00_SamplesLinks_ctl32_SamplesLink" href="http://www.asp.net/ajax/ajaxcontroltoolkit/Samples/RoundedCorners/RoundedCorners.aspx">RoundedCorners</a></li>
<li><a id="ctl00_SamplesLinks_ctl33_SamplesLink" href="http://www.asp.net/ajax/ajaxcontroltoolkit/Samples/Seadragon/Seadragon.aspx">Seadragon</a></li>
<li><a id="ctl00_SamplesLinks_ctl34_SamplesLink" href="http://www.asp.net/ajax/ajaxcontroltoolkit/Samples/Slider/Slider.aspx">Slider</a></li>
<li><a id="ctl00_SamplesLinks_ctl35_SamplesLink" href="http://www.asp.net/ajax/ajaxcontroltoolkit/Samples/SlideShow/SlideShow.aspx">SlideShow</a></li>
<li><a id="ctl00_SamplesLinks_ctl36_SamplesLink" href="http://www.asp.net/ajax/ajaxcontroltoolkit/Samples/Tabs/Tabs.aspx">Tabs</a></li>
<li><a id="ctl00_SamplesLinks_ctl37_SamplesLink" href="http://www.asp.net/ajax/ajaxcontroltoolkit/Samples/TextBoxWatermark/TextBoxWatermark.aspx">TextBoxWatermark</a></li>
<li><a id="ctl00_SamplesLinks_ctl38_SamplesLink" href="http://www.asp.net/ajax/ajaxcontroltoolkit/Samples/ToggleButton/ToggleButton.aspx">ToggleButton</a></li>
<li><a id="ctl00_SamplesLinks_ctl39_SamplesLink" href="http://www.asp.net/ajax/ajaxcontroltoolkit/Samples/UpdatePanelAnimation/UpdatePanelAnimation.aspx">UpdatePanelAnimation</a></li>
<li><a id="ctl00_SamplesLinks_ctl40_SamplesLink" href="http://www.asp.net/ajax/ajaxcontroltoolkit/Samples/ValidatorCallout/ValidatorCallout.aspx">ValidatorCallout</a></li>
</ul>
<p>Per chi vuole essere indipendente da javascript e piattaforma tecnologica, esiste questo <strong><a title="Vaddin Toolkit" href="http://vaadin.com/home" target="_blank">Vaadin</a></strong>, tutto basato su <strong>Java</strong>. Quest&#8217;ultimo molto più simile ai più noti framewok come <a title="Mootools" href="http://mootools.net/" target="_blank">Mootools</a> o <a title="JQuery" href="http://jquery.com/" target="_blank">JQuery</a>: dispone di diversi componenti elementari che opportunamente combinati tra loro danno vita ad applicazioni web avanzate.</p>
<p>Da segnalare infine questo <a title="iwebkit" href="http://iwebkit.net/" target="_blank">iWebKit</a>, utile per chi vuole cimentarsi nella realizzazione di siti e applicazioni concepite specificatamente per iPhone.</p>
<p>Risorse di questo tipo ne esistono davvero a bizzeffe, ma <strong>non è facile distinguere</strong> quelle che sono effettivamente utilizzabili <strong>out of the box</strong> da quelle che invece necessitano di altro e magari nascondono limiti tali da sconsigliarne l&#8217;utilizzo. Personalmente ho utilizzato in un ambiente di produzione l&#8217;UI Toolkit di DHTMLX e posso confermare che si tratta di librerie pronte all&#8217;uso, davvero comode e funzionali. Ho intenzione di provare a breve l&#8217;Ajax Control Toolkit per .NET e vi farò sapere le mie considerazioni. <strong>Mi piacerebbe ovviamente sentire le vostre e capire se esistono altri strumenti oltre a quelli citati, che magari avete utilizzato direttamente</strong>.</p>
<div class="feedflare">
<a href="http://feeds.feedburner.com/~ff/diplod?a=dJItTIsp1tc:-ts8ke1S2Gs:yIl2AUoC8zA"><img src="http://feeds.feedburner.com/~ff/diplod?d=yIl2AUoC8zA" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/diplod?a=dJItTIsp1tc:-ts8ke1S2Gs:V_sGLiPBpWU"><img src="http://feeds.feedburner.com/~ff/diplod?i=dJItTIsp1tc:-ts8ke1S2Gs:V_sGLiPBpWU" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/diplod?a=dJItTIsp1tc:-ts8ke1S2Gs:F7zBnMyn0Lo"><img src="http://feeds.feedburner.com/~ff/diplod?i=dJItTIsp1tc:-ts8ke1S2Gs:F7zBnMyn0Lo" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/diplod?a=dJItTIsp1tc:-ts8ke1S2Gs:7Q72WNTAKBA"><img src="http://feeds.feedburner.com/~ff/diplod?d=7Q72WNTAKBA" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/diplod?a=dJItTIsp1tc:-ts8ke1S2Gs:dnMXMwOfBR0"><img src="http://feeds.feedburner.com/~ff/diplod?d=dnMXMwOfBR0" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/diplod?a=dJItTIsp1tc:-ts8ke1S2Gs:pSxILM_nRGA"><img src="http://feeds.feedburner.com/~ff/diplod?d=pSxILM_nRGA" border="0"></img></a>
</div>]]></content:encoded>
			<wfw:commentRss>http://www.diplod.it/2010/07/19/componenti-ajax-e-ui-toolkit-per-applicazioni-web-ria/feed/</wfw:commentRss>
		<slash:comments>3</slash:comments>
		</item>
		<item>
		<title>Leggere e visualizzare file XML con C# (C sharp): qualche esempio</title>
		<link>http://www.diplod.it/2010/07/13/leggere-e-visualizzare-file-xml-con-c-c-sharp-qualche-esempio/</link>
		<comments>http://www.diplod.it/2010/07/13/leggere-e-visualizzare-file-xml-con-c-c-sharp-qualche-esempio/#comments</comments>
		<pubDate>Tue, 13 Jul 2010 12:31:32 +0000</pubDate>
		<dc:creator>Davide</dc:creator>
				<category><![CDATA[Applicazioni Web]]></category>
		<category><![CDATA[web standards]]></category>
		<category><![CDATA[.net]]></category>
		<category><![CDATA[aspx]]></category>
		<category><![CDATA[c#]]></category>
		<category><![CDATA[csharp]]></category>
		<category><![CDATA[xml]]></category>
		<category><![CDATA[xsd]]></category>

		<guid isPermaLink="false">http://www.diplod.it/?p=1127</guid>
		<description><![CDATA[C# è ormai un linguaggio diffuso, Visual Studio volenti o nolenti è un IDE collaudato e comodo anche per lo sviluppo di applicazioni web. E quando si parla di web, si parla spesso di XML. Leggere i dati di un documento XML è un'operazione semplice e veloce, farli visualizzare su una pagina web è altrettanto rapido, ma è bene sapere alcune nozioni per potersi muovere con tranquillità e sicurezza.]]></description>
			<content:encoded><![CDATA[<p><strong>C#</strong> è ormai un linguaggio diffuso, <strong>Visual Studio</strong> volenti o nolenti è un IDE collaudato e comodo anche per lo sviluppo di applicazioni web. E quando si parla di web, si parla spesso di <strong>XML</strong>.</p>
<p>Leggere i dati di un documento XML è un&#8217;operazione semplice e veloce, farli visualizzare su una pagina web è altrettanto rapido, ma è bene sapere alcune nozioni per potersi muovere con tranquillità e sicurezza.</p>
<p>Andiamo con ordine e vediamo subito un esempio di un file XML che vogliamo trattare:</p>
<p><code>&lt;?xml version="1.0" encoding="ISO-8859-1" ?&gt;<br />
&lt;DataSet&gt;<br />
&lt;data&gt;<br />
&lt;period&gt;2010-06-06&lt;/period&gt;<br />
&lt;logunit id="myID"&gt;Milano&lt;/logunit&gt;<br />
&lt;entered matcode="ABC001"&gt;100&lt;/entered&gt;<br />
&lt;produced matcode="ABC002"&gt;101&lt;/produced&gt;<br />
&lt;delivered matcode="ABC002"&gt;100&lt;/delivered&gt;<br />
&lt;description&gt;Caramelline alla fragola&lt;/description&gt;<br />
&lt;updated&gt;2010-06-06T13:05:21+01:00&lt;/updated&gt;<br />
&lt;note&gt;tante belle cose..&lt;/note&gt;<br />
&lt;/data&gt;<br />
&lt;data&gt;<br />
[..]<br />
&lt;/data&gt;<br />
&lt;/DataSet&gt;</code></p>
<p>Questo file potrebbe rappresentare dei dati produttivi, riguardanti ad esempio i materiali entrati in magazzino, i materiali prodotti e il venduto.</p>
<p>Il modo più rapido e banale per leggere questo file e farlo visualizzare su una pagina ASPX è tramite il seguente codice:</p>
<p><code>DataSet ds = new DataSet();<br />
ds.ReadXml(@"C:\test.xml", XmlReadMode.Auto);<br />
DataView MyDataView = new DataView(ds.Tables[0]);<br />
MyDataGrid.DataSource = MyDataView;<br />
MyDataGrid.DataBind();</code></p>
<p>Il codice non fa altro che creare un nuovo DataSet per contenere i dati che andremo a leggere, leggere il file tramite il metodo ReadXml(), creare una DataView con la tabella creata nel dataset e assegnare quest&#8217;ultima come DataSource per la DataGrid.</p>
<p><span id="more-1127"></span></p>
<p>All&#8217;interno della pagina .aspx ci sarà quindi una DataSource così fatta:</p>
<p><code>&lt;asp:DataGrid id="MyDataGrid" runat="server" &gt;<br />
    &lt;HeaderStyle CssClass="th"&gt;<br />
    &lt;/HeaderStyle&gt;<br />
&lt;/asp:DataGrid&gt;</code></p>
<p>Tralasciamo lo stile attribuito alla testata della datagrid, ciò che è importante in questo caso è solo l&#8217;ID. </p>
<p>Così facendo però ottengo una tabella di questo tipo:</p>
<table id="MyDataGrid2" border="1" cellspacing="0" rules="all">
<tbody>
<tr>
<td>period</td>
<td>data_Id</td>
<td>description</td>
<td>updated</td>
<td>note</td>
</tr>
<tr>
<td>2010-06-06</td>
<td>0</td>
<td>Caramelline alla fragola</td>
<td>2010-06-16T13:05:21+01:00</td>
<td>tante belle cose..</td>
</tr>
</tbody>
</table>
<p>E tutti gli altri dati che fine hanno fatto? Sono stati salvati in altre tabelle del DataSet, assieme a tutti gli attributi dell&#8217;xml; queste tabelle avranno come riferimento il <em>data_Id</em> e potrò utilizzarle come meglio credo.</p>
<p>Se infatti cambiamo il primo codice, mettendo una tabella diversa, in questo modo:</p>
<p><code>DataView MyDataView = new DataView(ds.Tables[1]);</code></p>
<p>Verrà visualizzata una pagina con la seguente tabella:</p>
<table id="MyDataGrid2" border="1" cellspacing="0" rules="all">
<tbody>
<tr>
<td>id</td>
<td>logunit_Text</td>
<td>data_Id</td>
</tr>
<tr>
<td>MyID</td>
<td>Milano</td>
<td>0</td>
</tr>
</tbody>
</table>
<p>Se cambio e metto la terza tabella:</p>
<p><code>DataView MyDataView = new DataView(ds.Tables[2]);</code></p>
<p>Il risultato sarà:</p>
<table id="MyDataGrid2" border="1" cellspacing="0" rules="all">
<tbody>
<tr>
<td>matcode</td>
<td>entered_Text</td>
<td>data_Id</td>
</tr>
<tr>
<td>ABC001</td>
<td>100</td>
<td>0</td>
</tr>
</tbody>
</table>
<p>Mentre per le tabelle successive, avrò questi risultati visualizzati:</p>
<table id="MyDataGrid2" border="1" cellspacing="0" rules="all">
<tbody>
<tr>
<td>matcode</td>
<td>produced_Text</td>
<td>data_Id</td>
</tr>
<tr>
<td>ABC002</td>
<td>101</td>
<td>0</td>
</tr>
</tbody>
</table>
<table id="MyDataGrid2" border="1" cellspacing="0" rules="all">
<tbody>
<tr>
<td>matcode</td>
<td>delivered_Text</td>
<td>data_Id</td>
</tr>
<tr>
<td>ABC002</td>
<td>100</td>
<td>0</td>
</tr>
</tbody>
</table>
<p>Incrociando queste tabelle attraverso il campo <em>data_Id</em> potrei ricavare tutti i dati contenuti nell&#8217;XML, attributi e testi all&#8217;interno dei tag.<br />
Il mio obiettivo era però quello di far visualizzare questi dati senza gli attributi riportati nell&#8217;XML. Ciò che mi interessa sono solo i dati riportati all&#8217;interno dei tag. Vorrei avere un risultato di questo tipo:</p>
<table id="MyDataGrid2" border="1" cellspacing="0" rules="all">
<tbody>
<tr>
<td>period</td>
<td>description</td>
<td>updated</td>
<td>note</td>
<td>logunit</td>
<td>entered</td>
<td>produced</td>
<td>delivered</td>
</tr>
<tr>
<td>2010-06-06</td>
<td>Caramelline alla fragola</td>
<td>2010-06-16T13:05:21+01:00</td>
<td>tante belle cose..</td>
<td>Milano</td>
<td>100</td>
<td>101</td>
<td>100</td>
</tr>
</tbody>
</table>
<p>In questo caso potrebbe fare al caso nostro l&#8217; <a title="XML Schema" href="http://www.w3schools.com/schema/default.asp" target="_blank">XML Schema</a>. Si tratta di un file con estensione XSD, che descrive i dati contenuti in un file XML. Ogni file XML può avere uno schema associato che lo descrive. Esistono diversi <strong>tool</strong> che possono <strong>creare un file XSD a partire da un XML</strong>, uno di questi, che trovo molto pratico è <a title="XML 2 XSD" href="http://www.flame-ware.com/products/xml-2-xsd/default.aspx" target="_blank">quello di Flame-Ware</a> completamente on-line. </p>
<p>Il nostro file XML iniziale potrebbe essere descritto da questo XSD, supponendo che tutti i campi siano stringe.</p>
<p><code>&lt;?xml version="1.0"?&gt;<br />
&lt;!-- Generated using Flame-Ware Solutions XML-2-XSD v2.0 at <a href="http://www.flame-ware.com/Products/XML-2-XSD/">http://www.flame-ware.com/Products/XML-2-XSD/</a> --&gt;<br />
&lt;xs:schema id="DataSet" xmlns="" xmlns:xs="<a href="http://www.w3.org/2001/XMLSchema">http://www.w3.org/2001/XMLSchema</a>" xmlns:msdata="urn:schemas-microsoft-com:xml-msdata"&gt;<br />
  &lt;xs:element name="DataSet" msdata:IsDataSet="true" msdata:UseCurrentLocale="true"&gt;<br />
    &lt;xs:complexType&gt;<br />
      &lt;xs:choice minOccurs="0" maxOccurs="unbounded"&gt;<br />
        &lt;xs:element name="data"&gt;<br />
          &lt;xs:complexType&gt;<br />
            &lt;xs:sequence&gt;<br />
              &lt;xs:element name="period" type="xs:string" minOccurs="0" /&gt;<br />
              &lt;xs:element name="description" type="xs:string" minOccurs="0" /&gt;<br />
              &lt;xs:element name="updated" type="xs:string" minOccurs="0" /&gt;<br />
              &lt;xs:element name="note" type="xs:string" minOccurs="0" /&gt;<br />
              &lt;xs:element name="logunit" nillable="true" minOccurs="0" maxOccurs="unbounded"&gt;<br />
                &lt;xs:complexType&gt;<br />
                  &lt;xs:simpleContent msdata:ColumnName="logunit_Text" msdata:Ordinal="1"&gt;<br />
                    &lt;xs:extension base="xs:string"&gt;<br />
                      &lt;xs:attribute name="id" type="xs:string" /&gt;<br />
                    &lt;/xs:extension&gt;<br />
                  &lt;/xs:simpleContent&gt;<br />
                &lt;/xs:complexType&gt;<br />
              &lt;/xs:element&gt;<br />
              &lt;xs:element name="entered" nillable="true" minOccurs="0" maxOccurs="unbounded"&gt;<br />
                &lt;xs:complexType&gt;<br />
                  &lt;xs:simpleContent msdata:ColumnName="entered_Text" msdata:Ordinal="1"&gt;<br />
                    &lt;xs:extension base="xs:string"&gt;<br />
                      &lt;xs:attribute name="matcode" type="xs:string" /&gt;<br />
                    &lt;/xs:extension&gt;<br />
                  &lt;/xs:simpleContent&gt;<br />
                &lt;/xs:complexType&gt;<br />
              &lt;/xs:element&gt;<br />
              &lt;xs:element name="produced" nillable="true" minOccurs="0" maxOccurs="unbounded"&gt;<br />
                &lt;xs:complexType&gt;<br />
                  &lt;xs:simpleContent msdata:ColumnName="produced_Text" msdata:Ordinal="1"&gt;<br />
                    &lt;xs:extension base="xs:string"&gt;<br />
                      &lt;xs:attribute name="matcode" type="xs:string" /&gt;<br />
                    &lt;/xs:extension&gt;<br />
                  &lt;/xs:simpleContent&gt;<br />
                &lt;/xs:complexType&gt;<br />
              &lt;/xs:element&gt;<br />
              &lt;xs:element name="delivered" nillable="true" minOccurs="0" maxOccurs="unbounded"&gt;<br />
                &lt;xs:complexType&gt;<br />
                  &lt;xs:simpleContent msdata:ColumnName="delivered_Text" msdata:Ordinal="1"&gt;<br />
                    &lt;xs:extension base="xs:string"&gt;<br />
                      &lt;xs:attribute name="matcode" type="xs:string" /&gt;<br />
                    &lt;/xs:extension&gt;<br />
                  &lt;/xs:simpleContent&gt;<br />
                &lt;/xs:complexType&gt;<br />
              &lt;/xs:element&gt;<br />
            &lt;/xs:sequence&gt;<br />
          &lt;/xs:complexType&gt;<br />
        &lt;/xs:element&gt;<br />
      &lt;/xs:choice&gt;<br />
    &lt;/xs:complexType&gt;<br />
  &lt;/xs:element&gt;<br />
&lt;/xs:schema&gt;</code></p>
<p>Per associare questo schema al file XML, è necessario dichiararlo nell&#8217;intestazione, in questo modo:</p>
<p><code>&lt;?xml version="1.0" encoding="ISO-8859-1" ?&gt;<br />
&lt;DataSet <span style="color: #800000;">xmlns:xsi="</span><a href="http://www.w3.org/2001/XMLSchema-instance"><span style="color: #800000;">http://www.w3.org/2001/XMLSchema-instance</span></a><span style="color: #800000;">"<br />
xsi:noNamespaceSchemaLocation="schema.xsd"</span>&gt;<br />
&lt;data&gt;<br />
&lt;period&gt;2010-06-06&lt;/period&gt;<br />
&lt;logunit id="myID"&gt;Milano&lt;/logunit&gt;<br />
&lt;entered matcode="ABC001"&gt;100&lt;/entered&gt;<br />
&lt;produced matcode="ABC002"&gt;101&lt;/produced&gt;<br />
&lt;delivered matcode="ABC002"&gt;100&lt;/delivered&gt;<br />
&lt;description&gt;Caramelline alla fragola&lt;/description&gt;<br />
&lt;updated&gt;2010-06-06T13:05:21+01:00&lt;/updated&gt;<br />
&lt;note&gt;tante belle cose..&lt;/note&gt;<br />
&lt;/data&gt;<br />
&lt;/DataSet&gt;</code></p>
<p>Così facendo però, se rilanciamo la pagina costruita in precedenza, il risultato sarà identico: un unico dataset con diverse tabelle collegate tra loro dal campo <em>data_Id</em>.</p>
<p>Quindi? La soluzione c&#8217;è. <strong>Dobbiamo solo definire uno schema XSD semplificato all&#8217;interno dell&#8217;XML stesso</strong>. In questo modo:</p>
<p><code>&lt;?xml version="1.0" encoding="ISO-8859-1" ?&gt;<br />
&lt;DataSet&gt;<br />
<span style="color: #800000;">&lt;xs:schema id="NewDataset" xmlns="" xmlns:xs="</span><a href="http://www.w3.org/2001/XMLSchema"><span style="color: #800000;">http://www.w3.org/2001/XMLSchema</span></a><span style="color: #800000;">" xmlns:msdata="urn:schemas-microsoft-com:xml-msdata"&gt;<br />
  &lt;xs:element name="NewDataset" msdata:IsDataSet="true" msdata:UseCurrentLocale="true"&gt;<br />
    &lt;xs:complexType&gt;<br />
      &lt;xs:choice minOccurs="0" maxOccurs="unbounded"&gt;<br />
        &lt;xs:element name="data"&gt;<br />
          &lt;xs:complexType&gt;<br />
            &lt;xs:sequence&gt;<br />
              &lt;xs:element name="period" type="xs:string" minOccurs="0" /&gt;<br />
              &lt;xs:element name="description" type="xs:string" minOccurs="0" /&gt;<br />
              &lt;xs:element name="updated" type="xs:string" minOccurs="0" /&gt;<br />
              &lt;xs:element name="note" type="xs:string" minOccurs="0" /&gt;<br />
              &lt;xs:element name="logunit" type="xs:string" minOccurs="0" /&gt;<br />
              &lt;xs:element name="entered" type="xs:string" minOccurs="0" /&gt;<br />
              &lt;xs:element name="produced" type="xs:string" minOccurs="0" /&gt;<br />
              &lt;xs:element name="delivered" type="xs:string" minOccurs="0" /&gt;<br />
            &lt;/xs:sequence&gt;<br />
          &lt;/xs:complexType&gt;<br />
        &lt;/xs:element&gt;<br />
      &lt;/xs:choice&gt;<br />
    &lt;/xs:complexType&gt;<br />
  &lt;/xs:element&gt;<br />
&lt;/xs:schema&gt;<br />
</span>&lt;data&gt;<br />
&lt;period&gt;2010-06-06&lt;/period&gt;<br />
&lt;logunit id="myID"&gt;Milano&lt;/logunit&gt;<br />
&lt;entered matcode="ABC001"&gt;100&lt;/entered&gt;<br />
&lt;produced matcode="ABC002"&gt;101&lt;/produced&gt;<br />
&lt;delivered matcode="ABC002"&gt;100&lt;/delivered&gt;<br />
&lt;description&gt;Caramelline alla fragola&lt;/description&gt;<br />
&lt;updated&gt;2010-06-06T13:05:21+01:00&lt;/updated&gt;<br />
&lt;note&gt;tante belle cose..&lt;/note&gt;<br />
&lt;/data&gt;<br />
&lt;data&gt;<br />
&lt;period&gt;2010-06-06&lt;/period&gt;<br />
&lt;logunit id="myID"&gt;Milano&lt;/logunit&gt;<br />
&lt;entered matcode="ABC001"&gt;100&lt;/entered&gt;<br />
&lt;produced matcode="ABC002"&gt;101&lt;/produced&gt;<br />
&lt;delivered matcode="ABC002"&gt;100&lt;/delivered&gt;<br />
&lt;description&gt;Caramelline alla fragola&lt;/description&gt;<br />
&lt;updated&gt;2010-06-06T13:05:21+01:00&lt;/updated&gt;<br />
&lt;note&gt;tante belle cose..&lt;/note&gt;<br />
&lt;/data&gt;<br />
&lt;/DataSet&gt;</code></p>
<p>Il <strong>risultato finale</strong> sarà quindi una DataGrid che può essere visualizzata come sotto, utilizzando pari pari il <strong>codice C# definito all&#8217;inizio</strong> di questo articolo.</p>
<table id="MyDataGrid2" border="1" cellspacing="0" rules="all">
<tbody>
<tr>
<td>period</td>
<td>description</td>
<td>updated</td>
<td>note</td>
<td>logunit</td>
<td>entered</td>
<td>produced</td>
<td>delivered</td>
</tr>
<tr>
<td>2010-06-06</td>
<td>Caramelline alla fragola</td>
<td>2010-06-16T13:05:21+01:00</td>
<td>tante belle cose..</td>
<td>Milano</td>
<td>100</td>
<td>101</td>
<td>100</td>
</tr>
</tbody>
</table>
<p>Buon divertimento con l&#8217;XML..</p>
<div class="feedflare">
<a href="http://feeds.feedburner.com/~ff/diplod?a=TVw5kcX-NBU:E63UtOR_xDE:yIl2AUoC8zA"><img src="http://feeds.feedburner.com/~ff/diplod?d=yIl2AUoC8zA" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/diplod?a=TVw5kcX-NBU:E63UtOR_xDE:V_sGLiPBpWU"><img src="http://feeds.feedburner.com/~ff/diplod?i=TVw5kcX-NBU:E63UtOR_xDE:V_sGLiPBpWU" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/diplod?a=TVw5kcX-NBU:E63UtOR_xDE:F7zBnMyn0Lo"><img src="http://feeds.feedburner.com/~ff/diplod?i=TVw5kcX-NBU:E63UtOR_xDE:F7zBnMyn0Lo" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/diplod?a=TVw5kcX-NBU:E63UtOR_xDE:7Q72WNTAKBA"><img src="http://feeds.feedburner.com/~ff/diplod?d=7Q72WNTAKBA" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/diplod?a=TVw5kcX-NBU:E63UtOR_xDE:dnMXMwOfBR0"><img src="http://feeds.feedburner.com/~ff/diplod?d=dnMXMwOfBR0" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/diplod?a=TVw5kcX-NBU:E63UtOR_xDE:pSxILM_nRGA"><img src="http://feeds.feedburner.com/~ff/diplod?d=pSxILM_nRGA" border="0"></img></a>
</div>]]></content:encoded>
			<wfw:commentRss>http://www.diplod.it/2010/07/13/leggere-e-visualizzare-file-xml-con-c-c-sharp-qualche-esempio/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>Intranet Governance: intervista a Jane McConnel</title>
		<link>http://www.diplod.it/2010/06/02/intranet-governance-intervista-a-jane-mcconnel/</link>
		<comments>http://www.diplod.it/2010/06/02/intranet-governance-intervista-a-jane-mcconnel/#comments</comments>
		<pubDate>Wed, 02 Jun 2010 22:42:44 +0000</pubDate>
		<dc:creator>Davide</dc:creator>
				<category><![CDATA[ICT]]></category>
		<category><![CDATA[Web 2.0]]></category>
		<category><![CDATA[Blog]]></category>
		<category><![CDATA[enterprise20]]></category>
		<category><![CDATA[gestionale]]></category>
		<category><![CDATA[intervista]]></category>
		<category><![CDATA[intranet]]></category>
		<category><![CDATA[mcconnel]]></category>
		<category><![CDATA[wiki]]></category>

		<guid isPermaLink="false">http://www.diplod.it/?p=1117</guid>
		<description><![CDATA[Da un po' di tempo sono alle prese con lo sviluppo e la gestione di una intranet concepita per una azienda che ha filiali worldwide, ne ho approfittato per chiedere qualche consiglio a Jane McConnel, speaker dell'Enterprise 2.0 Forum.]]></description>
			<content:encoded><![CDATA[<p><a href="http://netjmc.com/intranet-trends-report/download-sample-pages-purchase-information" target="_blank">Global Intranet Strategies</a> è il report che ogni anni <strong>Jane McConnel</strong> produce dopo aver passato in rassegna diverse intranet aziendali, lo diffonde direttamente dal suo <a title="Jane McConnel" href="http://netjmc.com/blog" target="_blank">blog</a> (Globally Local.. Locally Global). Quest&#8217;anno Jane sarà presente come relatrice all&#8217;<strong><a title="E2.0 forum" href="http://www.enterprise2forum.it/">International Enterprise 2.0 Forum</a></strong>, il 9-10 Giugno a Milano; vista l&#8217;occasione scambiamo con lei qualche battuta. Una chiacchierata sulle modalità di governance e di gestione di una <em>robusta </em>intranet aziendale. Da un po&#8217; di tempo sono alle prese con lo sviluppo e la gestione di una intranet concepita per una azienda che ha filiali worldwide, ne ho approfittato per chiedere qualche consiglio. La <a title="Davide Del Monte Interviews Jane McConnel" href="http://www.enterprise2forum.it/it/node/190" target="_blank">stessa intervista</a>, nella versione inglese, la troverete sul blog dell&#8217;<em>E2.0 Forum</em>.</p>
<p><em><strong>Davide</strong></em><strong>: Che cosa dovrebbe avere una buona intranet?</strong><br />
<em> Jane</em>: Una buona intranet deve avere 3 cose:</p>
<ol>
<li>essere incentrata sull&#8217;utente,</li>
<li>avere una strategia allineata al business</li>
<li>Avere una governance e politiche di gestione integrate al modo con cui viene gestita l&#8217;impresa</li>
</ol>
<p><span id="more-1117"></span></p>
<p><strong><em> Davide</em>: Quali sono le best practices per adottare l&#8217;enterprise 2.0? Esiste una roadmap comune?</strong><br />
<em> Jane</em>: Ma dispiace ma non esistono roadmap comuni e collaudate. Alcune aziende definiscono prima la strategia, poi la implementano. Altre iniziano con sperimentazioni dal basso, poi ufficializzano ciò che funziona. Altri mettono in campo un minimo di strategia e un po&#8217; di sperimentazione dal basso, per poi farne una sintesi!</p>
<p>La chiave del successo è iniziare da ciò che è necessario al business, non dalla tecnologia. Fate progetti pilota dove c&#8217;è allo stesso tempo un bisogno e una sfida.</p>
<p><strong><em>Davide</em>: Wiki e blog dovrebbero essere utilizzati in una intranet? Se si, esiste un approccio da consigliare per spiegare agli utenti qual è il tool migliore da utilizzare , in base ai contenuti da pubblicare e al feedback che si desidera ricevere?</strong><br />
<em>Jane</em>: I Wiki servono per la co-creazione: fare cose assieme, fornendo uno strumenti per  &#8221;la voce del popolo&#8221;. Sono di proprietà del popolo o del singolo gruppo. Sono multi-dimensionali: i contenuti si creano spontaneamente. Potrebbero emergere talvolta anche cose inattese.<br />
I blog servono per fare esprimere una voce individuale, il punto di vista di un team, per condividere l&#8217;esperienza. Si fanno portatori del punto di vista di un singolo o di un gruppo di persone. Sono bi-dimensionali: viene riportato un certo punto di vista o una notizia, mentre tutte le altre persone possono commentare o fare domande.<br />
E&#8217; interessante notare che le mie ricerche degli ultimi anni, condotte per la Global Intranet Strategies survey, evidenziano che solo nell&#8217;ultimo anno i blog hanno assunto rilevanza al pari dei wiki nelle aziende. Entrambi hanno raggiunto il 45 % dell&#8217;utilizzo nell&#8217;inchiesta del 2009, su un campione di circa 300 organizzazioni in tutto il mondo.<br />
Fino all&#8217;anno scorso, i wiki la facevano da padrone. Credo che le società stiano famigliarizzando coi blog. I blog ottengono spesso più visibilità: persone che esprimono punti di vista. Richiedono probabilmente maggior tempo per la gestione rispetto ai wiki, basati sulla collaborazione, cosa che le imprese fanno da diverso tempo.</p>
<p><strong><em>Davide</em>: Connessioni col sistema ERP: è utile averle all&#8217;interno della intranet?</strong><br />
<em>Jane</em>: Assolutamente. Più che utile, è essenziale. E&#8217; la chiave di volta per far sì che la intranet diventi il luogo di lavoro all&#8217;interno dell&#8217;impresa.</p>
<p><strong><em>Davide</em>: Credi che esista una killing application? Si parla spesso di Sharepoint.. Lavoro su Sharepoint da quasi due anni, credo che sia una buona piattaforma per realizzare applicazioni web, molto malleabile per poter mappare i processi di business</strong><br />
<em>Jane</em>: Sharepoint è solo una delle tante soluzioni. Non penso che una soluzione da sola si possa considerare una killer app.</p>
<p><strong><em>Davide</em>: Accesso dall&#8217;esterno e tramite dispositivi mobili: credi che sia un obiettivo primario?</strong><br />
<em>Jane</em>: Non è primario ma è molto importante. E&#8217; uno dei 5 key trends che ho individuato per il 2010.</p>
<p><em><strong>Davide</strong></em><strong>: Qual è il miglior progetto che hai realizzato? Perchè?</strong><br />
<em>Jane</em>: Ce ne sono parecchi! I migliori sono quelli in cui la intranet ha cambiato il modo di lavorare dell&#8217;azienda, e il modo di fare business. La intranet esiste, in estrema sintesi, per servire i clienti. Per clienti, intendo i clienti esterni.<br />
Le intranet aiutano le organizzazioni a lavorare meglio: le aziende lavorano per servire i loro clienti.</p>
<p><strong><em>Davide</em>: Grazie mille per questa intervista Jane, spero di sentire qualche utile consiglio all&#8217;E2.0 Forum!</strong></p>
<div class="feedflare">
<a href="http://feeds.feedburner.com/~ff/diplod?a=RpuFgTkK0AQ:t6oUqBSRwmQ:yIl2AUoC8zA"><img src="http://feeds.feedburner.com/~ff/diplod?d=yIl2AUoC8zA" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/diplod?a=RpuFgTkK0AQ:t6oUqBSRwmQ:V_sGLiPBpWU"><img src="http://feeds.feedburner.com/~ff/diplod?i=RpuFgTkK0AQ:t6oUqBSRwmQ:V_sGLiPBpWU" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/diplod?a=RpuFgTkK0AQ:t6oUqBSRwmQ:F7zBnMyn0Lo"><img src="http://feeds.feedburner.com/~ff/diplod?i=RpuFgTkK0AQ:t6oUqBSRwmQ:F7zBnMyn0Lo" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/diplod?a=RpuFgTkK0AQ:t6oUqBSRwmQ:7Q72WNTAKBA"><img src="http://feeds.feedburner.com/~ff/diplod?d=7Q72WNTAKBA" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/diplod?a=RpuFgTkK0AQ:t6oUqBSRwmQ:dnMXMwOfBR0"><img src="http://feeds.feedburner.com/~ff/diplod?d=dnMXMwOfBR0" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/diplod?a=RpuFgTkK0AQ:t6oUqBSRwmQ:pSxILM_nRGA"><img src="http://feeds.feedburner.com/~ff/diplod?d=pSxILM_nRGA" border="0"></img></a>
</div>]]></content:encoded>
			<wfw:commentRss>http://www.diplod.it/2010/06/02/intranet-governance-intervista-a-jane-mcconnel/feed/</wfw:commentRss>
		<slash:comments>3</slash:comments>
		</item>
		<item>
		<title>100 mila persone per strada!</title>
		<link>http://www.diplod.it/2010/05/17/100-mila-persone-per-strada/</link>
		<comments>http://www.diplod.it/2010/05/17/100-mila-persone-per-strada/#comments</comments>
		<pubDate>Sun, 16 May 2010 23:20:50 +0000</pubDate>
		<dc:creator>Davide</dc:creator>
				<category><![CDATA[Fuori Tema]]></category>
		<category><![CDATA[assisi]]></category>
		<category><![CDATA[Informazione]]></category>
		<category><![CDATA[inter]]></category>
		<category><![CDATA[media]]></category>
		<category><![CDATA[pace]]></category>
		<category><![CDATA[perugia]]></category>
		<category><![CDATA[rai]]></category>
		<category><![CDATA[scudetto]]></category>
		<category><![CDATA[stadi]]></category>
		<category><![CDATA[violenza]]></category>

		<guid isPermaLink="false">http://www.diplod.it/?p=1112</guid>
		<description><![CDATA[Domenica italiana. 100.000 persone marciano da Perugia ad Assisi per chiedere a gran voce un mondo di Pace ed uguaglianza sociale; assieme a migliaia di studenti delle scuole italiane e a innumerevoli &#8220;testimoni&#8221; venuti da diverse nazioni del mondo, assieme a Don Ciotti di Libera e all&#8217;AVIS: il tutto mediamente ignorato dai media e dall&#8217;italiano [...]]]></description>
			<content:encoded><![CDATA[<p>Domenica italiana.</p>
<p><a title="per la pace" href="http://www.perlapace.it/index.php?id_article=4352" target="_blank">100.000 persone marciano da Perugia ad Assisi</a> per chiedere a gran voce un mondo di Pace ed uguaglianza sociale; assieme a migliaia di studenti delle scuole italiane e a innumerevoli &#8220;testimoni&#8221; venuti da diverse nazioni del mondo, assieme a Don Ciotti di <a title="Libera" href="http://www.libera.it" target="_blank">Libera </a>e all&#8217;<a title="AVIS" href="http://www.avis.it/" target="_blank">AVIS</a>: il tutto <em>mediamente </em>ignorato dai <em>media </em>e dall&#8217;italiano <em>medio</em>.</p>
<p>100.000 persone si riversano nelle strade di Milano per festeggiare lo scudetto dell&#8217;inter tra petardi, fumogeni e dita <em>medi</em> al cielo, il tutto in diretta RAI e idolatrato dall&#8217;italiano <em>medio</em>; che allo stadio ci vuole il ferro.</p>
<p><object width="480" height="385"><param name="movie" value="http://www.youtube.com/v/HB_lOaEfDfA&#038;hl=it_IT&#038;fs=1&#038;"></param><param name="allowFullScreen" value="true"></param><param name="allowscriptaccess" value="always"></param><embed src="http://www.youtube.com/v/HB_lOaEfDfA&#038;hl=it_IT&#038;fs=1&#038;" type="application/x-shockwave-flash" allowscriptaccess="always" allowfullscreen="true" width="640" height="385"></embed></object></p>
<p><object width="480" height="385"><param name="movie" value="http://www.youtube.com/v/t9VSzO2BTRg&#038;hl=it_IT&#038;fs=1&#038;"></param><param name="allowFullScreen" value="true"></param><param name="allowscriptaccess" value="always"></param><embed src="http://www.youtube.com/v/t9VSzO2BTRg&#038;hl=it_IT&#038;fs=1&#038;" type="application/x-shockwave-flash" allowscriptaccess="always" allowfullscreen="true" width="480" height="385"></embed></object></p>
<div class="feedflare">
<a href="http://feeds.feedburner.com/~ff/diplod?a=hizEt8klsyY:RGgILb5pdXU:yIl2AUoC8zA"><img src="http://feeds.feedburner.com/~ff/diplod?d=yIl2AUoC8zA" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/diplod?a=hizEt8klsyY:RGgILb5pdXU:V_sGLiPBpWU"><img src="http://feeds.feedburner.com/~ff/diplod?i=hizEt8klsyY:RGgILb5pdXU:V_sGLiPBpWU" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/diplod?a=hizEt8klsyY:RGgILb5pdXU:F7zBnMyn0Lo"><img src="http://feeds.feedburner.com/~ff/diplod?i=hizEt8klsyY:RGgILb5pdXU:F7zBnMyn0Lo" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/diplod?a=hizEt8klsyY:RGgILb5pdXU:7Q72WNTAKBA"><img src="http://feeds.feedburner.com/~ff/diplod?d=7Q72WNTAKBA" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/diplod?a=hizEt8klsyY:RGgILb5pdXU:dnMXMwOfBR0"><img src="http://feeds.feedburner.com/~ff/diplod?d=dnMXMwOfBR0" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/diplod?a=hizEt8klsyY:RGgILb5pdXU:pSxILM_nRGA"><img src="http://feeds.feedburner.com/~ff/diplod?d=pSxILM_nRGA" border="0"></img></a>
</div>]]></content:encoded>
			<wfw:commentRss>http://www.diplod.it/2010/05/17/100-mila-persone-per-strada/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		<georss:point featurename="assisi">43.0701666 12.6175185</georss:point>
	</item>
		<item>
		<title>Ricerche Maestre: il design di un motore di ricerca</title>
		<link>http://www.diplod.it/2010/05/06/ricerche-maestre-il-design-di-un-motore-di-ricerca/</link>
		<comments>http://www.diplod.it/2010/05/06/ricerche-maestre-il-design-di-un-motore-di-ricerca/#comments</comments>
		<pubDate>Thu, 06 May 2010 16:36:13 +0000</pubDate>
		<dc:creator>Davide</dc:creator>
				<category><![CDATA[Design]]></category>
		<category><![CDATA[bambini]]></category>
		<category><![CDATA[Google]]></category>
		<category><![CDATA[maestre]]></category>
		<category><![CDATA[ricerche]]></category>
		<category><![CDATA[scuola]]></category>
		<category><![CDATA[webdesign]]></category>

		<guid isPermaLink="false">http://www.diplod.it/?p=1090</guid>
		<description><![CDATA[Ricerche Maestre è un motore di ricerca per bambini, genitori e maestri che seleziona siti scelti da esperti insegnanti della Scuola Primaria. Si possono trovare risorse scolastiche per la scuola elementare e si può navigare all'interno di siti adatti a bambini dai 3 ai 14 anni, cercando contenuti educativi e di svago. La ricerca è immediata ed efficace. Il motore va dritto al bersaglio, tecnologia Google.]]></description>
			<content:encoded><![CDATA[<p><img class="aligncenter size-full wp-image-1105" title="ricmaestre" src="http://www.diplod.it/wp-content/uploads/2010/05/ricmaestre.png" alt="" width="380" height="250" /></p>
<p><a title="Ricerche Maestre" href="http://www.ricerchemaestre.it/" target="_blank">Ricerche Maestre</a> è un <strong>motore di ricerca</strong> per bambini, genitori e maestri che seleziona siti scelti da esperti insegnanti della Scuola Primaria. Si possono trovare risorse scolastiche <strong>per la scuola elementare</strong> e si può navigare all&#8217;interno di siti adatti a bambini dai 3 ai 14 anni, cercando contenuti educativi e di svago. La ricerca è immediata ed efficace. Il motore va dritto al bersaglio, <a title="Google co-op" href="http://www.google.com/cse/" target="_blank">tecnologia Google</a>.</p>
<p>E il <strong>design</strong>? Una paginetta che mi ha dato un sacco di soddisfazioni. Nulla di sconvolgente, ma c&#8217;era una piccola sfida da affrontare: mettere tutto  su una stessa pagina html, dal form di ricerca ai risultati, compresi i testi informativi e di corredo. Con un po&#8217; di javascript, si può.</p>
<p>Innanzi tutto, un <a title="coda slider jquery plugin" href="http://jqueryfordesigners.com/coda-slider-effect/" target="_blank">plugin di jQuery</a> per riprodurre il famoso effetto del <a title="Coda - Panic" href="http://www.panic.com/coda/" target="_blank">sito di Coda</a>. Una valida alternativa potrebbe essere <a title="coda slider javascript" href="http://www.ndoherty.biz/tag/coda-slider/" target="_blank">questo coda-slider</a>, anch&#8217;esso plugin jquery, con una buona documentazione sugli esempi demo. In secondo luogo alcuni div che contengono i risultati di ricerca ed il gioco è fatto!</p>
<p>Questo fantastico effetto è facilmente replicabile, l&#8217;idea è quella di riutilizzarlo per il prossimo tema wordpress, è un&#8217;anteprima!</p>
<p>Insomma, Ricerche Maestre è un motore di ricerca personalizzato a cura del <a href="http://www.albertopiccini.it/">Maestro Alberto Piccini</a>, al quale collaborano <a href="http://xoomer.alice.it/paolalimone/">Paola Limone</a>, <a href="http://maestralidia.netsons.org/">Lidia Pantaleo</a>, <a href="http://scientificando.splinder.com/">Annarita Ruberto</a>, <a href="http://quadernoneblu.splinder.com/">Renato Murelli</a>. Ricerche Maestre al momento indicizza circa 3.000 siti selezionati tra i migliori reperibili in rete, per bambini e famiglie, a carattere divulgativo e informativo, educativi, scolastici e di insegnanti.</p>
<p>Se avete bambini: il luogo giusto per iniziare le esplorazioni della rete!</p>
<div class="feedflare">
<a href="http://feeds.feedburner.com/~ff/diplod?a=caAiI1mDT4s:AvfgxKL4__0:yIl2AUoC8zA"><img src="http://feeds.feedburner.com/~ff/diplod?d=yIl2AUoC8zA" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/diplod?a=caAiI1mDT4s:AvfgxKL4__0:V_sGLiPBpWU"><img src="http://feeds.feedburner.com/~ff/diplod?i=caAiI1mDT4s:AvfgxKL4__0:V_sGLiPBpWU" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/diplod?a=caAiI1mDT4s:AvfgxKL4__0:F7zBnMyn0Lo"><img src="http://feeds.feedburner.com/~ff/diplod?i=caAiI1mDT4s:AvfgxKL4__0:F7zBnMyn0Lo" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/diplod?a=caAiI1mDT4s:AvfgxKL4__0:7Q72WNTAKBA"><img src="http://feeds.feedburner.com/~ff/diplod?d=7Q72WNTAKBA" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/diplod?a=caAiI1mDT4s:AvfgxKL4__0:dnMXMwOfBR0"><img src="http://feeds.feedburner.com/~ff/diplod?d=dnMXMwOfBR0" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/diplod?a=caAiI1mDT4s:AvfgxKL4__0:pSxILM_nRGA"><img src="http://feeds.feedburner.com/~ff/diplod?d=pSxILM_nRGA" border="0"></img></a>
</div>]]></content:encoded>
			<wfw:commentRss>http://www.diplod.it/2010/05/06/ricerche-maestre-il-design-di-un-motore-di-ricerca/feed/</wfw:commentRss>
		<slash:comments>9</slash:comments>
		</item>
		<item>
		<title>Ci mancava l’Enterprise 2.0 forum?! Beh, si..</title>
		<link>http://www.diplod.it/2010/04/26/ci-mancava-lenterprise-2-0-forum-beh-si/</link>
		<comments>http://www.diplod.it/2010/04/26/ci-mancava-lenterprise-2-0-forum-beh-si/#comments</comments>
		<pubDate>Sun, 25 Apr 2010 23:43:29 +0000</pubDate>
		<dc:creator>Davide</dc:creator>
				<category><![CDATA[ICT]]></category>
		<category><![CDATA[conference]]></category>
		<category><![CDATA[enterprise20]]></category>
		<category><![CDATA[eventi]]></category>
		<category><![CDATA[forum]]></category>

		<guid isPermaLink="false">http://www.diplod.it/?p=1083</guid>
		<description><![CDATA[L&#8217;occasione è quella del forum internazionale sull&#8217;enterprise 2.0, il 9 e 10 Giugno 2010. La location è Milano, non poteva essere altrimenti, l&#8217;edizione è già al terzo giro di boa. I temi sono i seguenti: Verso l&#8217;interno: Intranet 2.0, Community Management, Human Resources 2.0, Social Learning, Organizational Network Analysis, IT Governance Verso l&#8217;esterno: Social CRM, [...]]]></description>
			<content:encoded><![CDATA[<p>L&#8217;occasione è quella del <strong><a title="Forum Enterprise 2.0" href="http://www.enterprise2forum.it/" target="_blank">forum internazionale sull&#8217;enterprise 2.0</a></strong>, il <strong>9 e 10 Giugno</strong> 2010. La location è <strong>Milano</strong>, non poteva essere altrimenti, l&#8217;edizione è già al terzo giro di boa. I temi sono i seguenti:</p>
<blockquote>
<ul>
<li><strong>Verso l&#8217;interno</strong>: Intranet 2.0, Community Management, Human Resources 2.0, Social Learning, Organizational Network Analysis, IT Governance</li>
<li><strong>Verso l&#8217;esterno</strong>: Social CRM, Sales Community, Social Media Marketing, Social Media Monitoring</li>
<li><strong>Innovazione</strong>: Idea e Innovation Management, Crowdsourcing e Idea generation, Prediction market</li>
<li>Definire la strategia e costruire il business case</li>
<li>Nuovi schemi organizzativi e modelli di leadership</li>
<li>Sostenere l&#8217;adozione ed il cambiamento culturale</li>
<li>Driver di business, metriche e ritorno dell&#8217;investimento</li>
<li>Framework per coltivare le community ed ingaggiare i clienti e gli utenti</li>
<li>L&#8217;impatto dei social media sui processi di business: BPM 2.0, CRM 2.0, PLM 2.0</li>
<li>Best practice e lezioni attraverso casi di successo nazionali ed internazionali</li>
<li>Il passaggio dal marketing al social CRM</li>
<li>Software sociali e piattaforme collaborative</li>
</ul>
</blockquote>
<p>Sono temi che mi stanno particolarmente a cuore e coi quali mi sto scornando in prima persona; potrebbe essere una due giorni per approfondire qualche argomento. Gli <a title="speaker enterprise 2.0 forum 2010" href="http://www.enterprise2forum.it/speakers">speaker </a>sono parecchi, coi quali mi piacerebbe scambiare due chiacchiere. L&#8217;occasione è piuttosto ghiotta per poter discutere e analizzare casi concreti: tra i relatori leggo nomi come IBM, Oracle, Intel. Ovviamente si tratta di una conferenza a pagamento: per gli studenti senza portafoglio esiste però l&#8217;opportunità di partecipare gratuitamente inventandosi promoter dell&#8217;evento, per chi desidera maggiori informazioni <a title="E20 Forum" href="http://www.enterprise2forum.it/it/node/109" target="_blank">ecco il post dal blog ufficiale</a>.</p>
<p>Le date sono un po&#8217; proibitive per il sottoscritto, ma confido di farcela.. Qualcuno ha già fissato la data?</p>
<div class="feedflare">
<a href="http://feeds.feedburner.com/~ff/diplod?a=D18P-M4PnIU:ov9YwjpOHW8:yIl2AUoC8zA"><img src="http://feeds.feedburner.com/~ff/diplod?d=yIl2AUoC8zA" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/diplod?a=D18P-M4PnIU:ov9YwjpOHW8:V_sGLiPBpWU"><img src="http://feeds.feedburner.com/~ff/diplod?i=D18P-M4PnIU:ov9YwjpOHW8:V_sGLiPBpWU" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/diplod?a=D18P-M4PnIU:ov9YwjpOHW8:F7zBnMyn0Lo"><img src="http://feeds.feedburner.com/~ff/diplod?i=D18P-M4PnIU:ov9YwjpOHW8:F7zBnMyn0Lo" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/diplod?a=D18P-M4PnIU:ov9YwjpOHW8:7Q72WNTAKBA"><img src="http://feeds.feedburner.com/~ff/diplod?d=7Q72WNTAKBA" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/diplod?a=D18P-M4PnIU:ov9YwjpOHW8:dnMXMwOfBR0"><img src="http://feeds.feedburner.com/~ff/diplod?d=dnMXMwOfBR0" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/diplod?a=D18P-M4PnIU:ov9YwjpOHW8:pSxILM_nRGA"><img src="http://feeds.feedburner.com/~ff/diplod?d=pSxILM_nRGA" border="0"></img></a>
</div>]]></content:encoded>
			<wfw:commentRss>http://www.diplod.it/2010/04/26/ci-mancava-lenterprise-2-0-forum-beh-si/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>Un esempio di applicazione ajax ottimizzata per dispositivi mobili: xml e javascript.</title>
		<link>http://www.diplod.it/2010/04/22/un-esempio-di-applicazione-ajax-ottimizzata-per-dispositivi-mobili-xml-e-javascript/</link>
		<comments>http://www.diplod.it/2010/04/22/un-esempio-di-applicazione-ajax-ottimizzata-per-dispositivi-mobili-xml-e-javascript/#comments</comments>
		<pubDate>Thu, 22 Apr 2010 17:43:48 +0000</pubDate>
		<dc:creator>Davide</dc:creator>
				<category><![CDATA[Ajax e Javascript]]></category>
		<category><![CDATA[Web 2.0]]></category>
		<category><![CDATA[ajax]]></category>
		<category><![CDATA[blackberry]]></category>
		<category><![CDATA[cellulari]]></category>
		<category><![CDATA[iphone]]></category>
		<category><![CDATA[javascript]]></category>
		<category><![CDATA[mobile]]></category>
		<category><![CDATA[nokia]]></category>
		<category><![CDATA[web20]]></category>
		<category><![CDATA[xml]]></category>

		<guid isPermaLink="false">http://www.diplod.it/?p=1066</guid>
		<description><![CDATA[Ajax è sempre cool, se poi lo affianchi a iPhone &#038; Co. è ancora più cool. Perchè non vedere un esempio di applicazione web fruibile da cellulare che va a interrogare i dati contenuti in un file xml? Pensiamo ai webservices, ormai l'xml è un po' ovunque. Dobbiamo solo sfruttarlo.]]></description>
			<content:encoded><![CDATA[<p><strong><a title="ajax - wikipedia" href="http://it.wikipedia.org/wiki/AJAX" target="_blank">Ajax </a></strong>è sempre <strong>cool</strong>, se poi lo affianchi a iPhone &amp; Co. è ancora più cool. Perchè non vedere un esempio di applicazione web fruibile da cellulare che va a interrogare i dati contenuti in un file xml? Pensiamo ai <a title="Webservice - wikipedia" href="http://it.wikipedia.org/wiki/Web_service" target="_blank"><strong>webservices</strong></a>, ormai l&#8217;xml è un po&#8217; ovunque. Dobbiamo solo sfruttarlo.</p>
<p>Alcune utili consigli per chi sviluppa applicazioni ajax destinate ad essere fruibili attraverso dispositivi mobili:</p>
<ul>
<li><strong>Blackberry</strong>: il browser deve essere abilitato per usare javascript. Inoltre, se si fa largo uso dello script lato client, è bene evitare di spuntare tra le opzioni il flag &#8220;Termina script in esecuzione lenti&#8221;, un semplice <a title="bubble sort - wikipedia" href="http://it.wikipedia.org/wiki/Bubble_sort" target="_blank">Bubble Sort</a> lo manderebbe in tilt.</li>
<li><strong>Nokia </strong>(symbian): nel browser standard il metodo <em>open(&#8220;GET&#8221;,&#8221;xml/test2.xml&#8221;,true)</em> funziona solo in modalità asincrona, ovvero con l&#8217;ultimo parametro settato a true; scaricando il browser <a title="Opera Mini" href="http://www.opera.com/mobile/" target="_blank">Opera Mini</a> invece non ci sono problemi in entrambi i casi: sincrono/asincrono.</li>
<li><strong>iPhone</strong>: che dire.. finora nessun problem riscontrato: browser e processore appartengono a una categoria superiore.</li>
</ul>
<p>Purtroppo non ho ancora avuto modo di fare test su dispositivi con <a title="Android" href="http://www.android.com/" target="_blank">Android</a>..</p>
<p>Ma veniamo al dunque.. Tutto prende il via dagli <a title="W3C - ajax examples" href="http://www.w3schools.com/ajax/ajax_examples.asp" target="_blank">esempi sul sito W3C</a>, utilissimi per fare pratica.</p>
<p>L&#8217;obiettivo è realizzare una applicazione che va a interrogare un file xml, riportante i dati di produzione (magari estratti direttamente dal gestionale aziendale), visualizzandoli in maniera ottimizzata per schermi di modeste dimensioni.</p>
<p>L&#8217;esempio con il risultato finale è <a title="Esempio XML Ajax" href="http://lab.diplod.it/xml2" target="_blank">visibile qui</a>.</p>
<p>Questa è la struttura dela file XML:<br />
<code>&lt;?xml version="1.0" encoding="UTF-8"?&gt;<br />
&lt;db&gt;<br />
&lt;item&gt;<br />
&lt;period&gt;04.2010&lt;/period&gt; &lt;!-- Periodo: mese o giorno --&gt;<br />
&lt;logunit id="0010"&gt;Italy Milan&lt;/logunit&gt; &lt;!-- Divisione di produzione--&gt;<br />
&lt;delivered matcode="000123"&gt;268&lt;/delivered&gt; &lt;!-- Quantita' spedita --&gt;<br />
&lt;finished matcode="100123"&gt;265&lt;/finished&gt; &lt;!-- Quantita' versata --&gt;<br />
&lt;description&gt;Product One&lt;/description&gt; &lt;!-- Descrizione codice materiale  --&gt;<br />
&lt;update&gt;15.04.2010 - 16:43&lt;/update&gt; &lt;!-- Ultimo aggiornamento --&gt;<br />
&lt;/item&gt;<br />
&lt;/db&gt;<br />
</code><br />
<span id="more-1066"></span>Supponiamo di voler offrire all&#8217;utente un menù per selezionare la divisione logistica su cui fare l&#8217;analisi e filtrare così i dati relativi alla singola divisione raggruppati in righe in base agli intervalli temporali, cliccando sulla singola riga è poi possibile vedere il dettaglio.</p>
<p>Ecco il codice della pagina web, con il suo javascript:<br />
<code>&lt;html&gt;<br />
&lt;head&gt;<br />
&lt;title&gt;Mobile Web Access&lt;/title&gt;<br />
&lt;script type="text/javascript"&gt;<br />
var xmlDoc;<br />
var x; //array dove memorizzo la risposta xml<br />
//inizio chiamata<br />
if (window.XMLHttpRequest)<br />
{<br />
xhttp=new XMLHttpRequest();<br />
if (xhttp.overrideMimeType) {<br />
xhttp.overrideMimeType('text/xml');<br />
}<br />
}<br />
else // Internet Explorer 5/6<br />
{<br />
xhttp=new ActiveXObject("Microsoft.XMLHTTP");<br />
}<br />
xhttp.onreadystatechange = alertContents; //gestione eventuali errori<br />
xhttp.open("GET","xml/test2.xml",true); //chiamata asincrona<br />
xhttp.send("");<br />
// Questo metodo viene eseguito in modo asincrono quando arriva la risposta dal server<br />
function alertContents() {<br />
if (xhttp.readyState == 4) {<br />
if (xhttp.status == 200) {<br />
processResponse(); //gestione risposta<br />
}<br />
else {<br />
document.write('&lt;small&gt;There was a problem with the request, sorry. Try later or contact your system administrator..&lt;/small&gt;');<br />
}<br />
}<br />
}<br />
function processResponse() {<br />
xmlDoc=xhttp.responseXML;<br />
x=xmlDoc.getElementsByTagName("item");<br />
}<br />
//mostra i dati nel div in alto<br />
function show(i) {<br />
logunit=(x[i].getElementsByTagName("logunit")[0].childNodes[0].nodeValue);<br />
logunitID=(x[i].getElementsByTagName("logunit")[0].getAttribute("id"));<br />
period=(x[i].getElementsByTagName("period")[0].childNodes[0].nodeValue);<br />
description=(x[i].getElementsByTagName("description")[0].childNodes[0].nodeValue);<br />
delivered=(x[i].getElementsByTagName("delivered")[0].childNodes[0].nodeValue);<br />
deliveredCode=(x[i].getElementsByTagName("delivered")[0].getAttribute("code"));<br />
finished=(x[i].getElementsByTagName("finished")[0].childNodes[0].nodeValue);<br />
finishedCode=(x[i].getElementsByTagName("finished")[0].getAttribute("code"));<br />
update=(x[i].getElementsByTagName("update")[0].childNodes[0].nodeValue);<br />
txt="&lt;strong&gt;Logistic Unit&lt;/strong&gt;: "+logunitID+" - "+logunit+"&lt;br /&gt;&lt;strong&gt;Period&lt;/strong&gt;: "+period+"&lt;br /&gt;&lt;strong&gt;Description&lt;/strong&gt;: "+description+"&lt;br /&gt;&lt;img style='float:left; margin-right: 2px;' src='icon.png' alt='icon'/&gt;&lt;strong&gt;Delivered&lt;/strong&gt;: "+delivered+"&lt;br /&gt;&lt;strong&gt;Finished&lt;/strong&gt;: "+finished+"&lt;br /&gt;&lt;div style='border: 1px dotted #fff; padding: 2px; background: #f9f9f9; color: #666;'&gt;&lt;small&gt;&lt;em&gt;Last update: "+update+"&lt;/em&gt;&lt;/small&gt;&lt;br/&gt;&lt;small&gt;&lt;a href='#item"+i+"'&gt;Go Down To List..&lt;/a&gt; | &lt;a href='#show' onclick='show(" + (i-1) + ")'&gt;Prev..&lt;/a&gt; | &lt;a href='#show' onclick='show(" + (i+1) + ")'&gt;Next..&lt;/a&gt;&lt;/small&gt;&lt;/div&gt;"  ;<br />
document.getElementById("show").innerHTML=txt;<br />
}<br />
//crea tabella coi record relativi alla singola divisione<br />
function createTable(t) {<br />
document.getElementById("show").innerHTML="&lt;em&gt;"+t+": click on a table row to display the full production information.&lt;/em&gt;";<br />
txt="&lt;table style='border: 2px solid #ccc; width: 100%;'&gt;";<br />
altStyle=0;<br />
for (var i=0;i&lt;x.length;i++)<br />
{<br />
if (x[i].getElementsByTagName("logunit")[0].getAttribute("id")==t) {<br />
altStyle++;<br />
if (altStyle % 2 == 0) { txt=txt+"&lt;tr style='background: #e3efff;' onclick='show(" + i + ")'&gt;"; }<br />
else { txt=txt+"&lt;tr style='border-bottom: 1px dotted #ccc;' onclick='show(" + i + ")'&gt;"; }<br />
txt=txt+"&lt;td id='item"+i+"'&gt;&lt;img src='cal.png' alt='ico'/&gt;&lt;a href='#show'&gt;";<br />
txt=txt+(x[i].getElementsByTagName("period")[0].childNodes[0].nodeValue);<br />
txt=txt+"&lt;/a&gt;&lt;/td&gt;&lt;td&gt;&lt;img src='car.png' alt='ico'/&gt;&lt;a href='#show'&gt;";<br />
txt=txt+(x[i].getElementsByTagName("description")[0].childNodes[0].nodeValue);<br />
txt=txt+"&lt;/a&gt;&lt;/td&gt;&lt;/tr&gt;";<br />
}<br />
}<br />
txt=txt+"&lt;/table&gt;";<br />
document.getElementById("table-content").innerHTML=txt;<br />
}<br />
&lt;/script&gt;<br />
&lt;/head&gt;<br />
&lt;body&gt;<br />
&lt;img src='mobile-logo.gif' alt='logo' /&gt;&lt;br/&gt;<br />
&lt;div id='show' style='background: #e3efff; padding: 3px; margin: 3px 0; border: 2px solid #ccc;'&gt;&lt;em&gt;Select Logistic Unit then click on a table row to display the full production information.&lt;/em&gt;&lt;/div&gt;<br />
&lt;!--Per aggiungere una divisione, modificare questo menu --&gt;<br />
&lt;img src='industry.png' alt='ico'/&gt;&lt;a href='#show' onclick='createTable("0010")'&gt;Italy Milan&lt;/a&gt; | &lt;img src='industry.png' alt='ico'/&gt;&lt;a href='#show' onclick='createTable("0020")'&gt;Italy Rome&lt;/a&gt; | &lt;img src='industry.png' alt='ico'/&gt;&lt;a href='#show' onclick='createTable("0030")'&gt;USA&lt;/a&gt; | &lt;img src='industry.png' alt='ico'/&gt;&lt;a href='#show' onclick='createTable("0040")'&gt;Germany&lt;/a&gt; | &lt;img src='industry.png' alt='ico'/&gt;&lt;a href='#show' onclick='createTable("0050")'&gt;China&lt;/a&gt; | &lt;img src='industry.png' alt='ico'/&gt;&lt;a href='#show' onclick='createTable("0060")'&gt;Brasil&lt;/a&gt;<br />
&lt;!-- fine menu selezione divisione --&gt;<br />
&lt;div id='table-content'&gt;&lt;/div&gt;<br />
&lt;/body&gt;<br />
&lt;/html&gt;<br />
</code></p>
<p>Il codice è interamente commentato, e più che descriverlo a parole vale la pena scorrerlo e leggere i commenti. <strong>Se vuoi scaricare l&#8217;esempio completo, con sorgenti e immagini: </strong><a title="xml ajax - esempio" href="http://www.diplod.it/wp-content/uploads/2010/04/xml-demo.zip"><strong>ecco lo zip</strong></a>.</p>
<p>La scelta di incorporare css e javascript all&#8217;interno della stessa singola pagina è voluta, per ottimizzare il caricamento da parte di dispositivi mobili. Certo questa è solo una base di partenza, dalla quale si potrebbero sviluppare altre funzionalità: l&#8217;esigenza di avere dati disponibili anche su <strong>dispositivi mobili</strong> è sempre più sentita; è inevitabile che in <strong>futuro</strong> si debba far fronte a queste richieste.<br />
In fondo è pure divertente!</p>
<div class="feedflare">
<a href="http://feeds.feedburner.com/~ff/diplod?a=OukIexiLTxU:sgvDGunbR_0:yIl2AUoC8zA"><img src="http://feeds.feedburner.com/~ff/diplod?d=yIl2AUoC8zA" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/diplod?a=OukIexiLTxU:sgvDGunbR_0:V_sGLiPBpWU"><img src="http://feeds.feedburner.com/~ff/diplod?i=OukIexiLTxU:sgvDGunbR_0:V_sGLiPBpWU" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/diplod?a=OukIexiLTxU:sgvDGunbR_0:F7zBnMyn0Lo"><img src="http://feeds.feedburner.com/~ff/diplod?i=OukIexiLTxU:sgvDGunbR_0:F7zBnMyn0Lo" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/diplod?a=OukIexiLTxU:sgvDGunbR_0:7Q72WNTAKBA"><img src="http://feeds.feedburner.com/~ff/diplod?d=7Q72WNTAKBA" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/diplod?a=OukIexiLTxU:sgvDGunbR_0:dnMXMwOfBR0"><img src="http://feeds.feedburner.com/~ff/diplod?d=dnMXMwOfBR0" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/diplod?a=OukIexiLTxU:sgvDGunbR_0:pSxILM_nRGA"><img src="http://feeds.feedburner.com/~ff/diplod?d=pSxILM_nRGA" border="0"></img></a>
</div>]]></content:encoded>
			<wfw:commentRss>http://www.diplod.it/2010/04/22/un-esempio-di-applicazione-ajax-ottimizzata-per-dispositivi-mobili-xml-e-javascript/feed/</wfw:commentRss>
		<slash:comments>5</slash:comments>
		</item>
		<item>
		<title>Decidere se usare blog, wiki, IM, email o telefono..</title>
		<link>http://www.diplod.it/2010/04/14/decidere-se-usare-blog-wiki-im-email-o-telefono/</link>
		<comments>http://www.diplod.it/2010/04/14/decidere-se-usare-blog-wiki-im-email-o-telefono/#comments</comments>
		<pubDate>Wed, 14 Apr 2010 17:06:10 +0000</pubDate>
		<dc:creator>Davide</dc:creator>
				<category><![CDATA[Knowledge Management]]></category>
		<category><![CDATA[Web 2.0]]></category>
		<category><![CDATA[Blog]]></category>
		<category><![CDATA[comunicazione]]></category>
		<category><![CDATA[email]]></category>
		<category><![CDATA[IM]]></category>
		<category><![CDATA[intranet]]></category>
		<category><![CDATA[knowledge management]]></category>
		<category><![CDATA[telefono]]></category>
		<category><![CDATA[wiki]]></category>

		<guid isPermaLink="false">http://www.diplod.it/?p=1056</guid>
		<description><![CDATA[Enterprise 2.0 per chi è sul pezzo, nuovi strumenti lavorativi per chi semplicemente li usa. Fatto sta che sono sempre più diffusi, all'interno delle organizzazioni, strumenti come i blog e i wiki. Sono arrivati già da tempo anche i software di instant messaging, un altro noioso compagno d'ufficio dopo il telefono.
E' sempre difficile però la scelta su quale strumento utilizzare; vi sono strumenti più o meno adatti in base alle informazioni da condividere e ai feedback necessari. La tipologia della relazione spesso fa la differenza sul raggiungimento dei risultati.]]></description>
			<content:encoded><![CDATA[<p style="text-align: center;"><img class="aligncenter size-full wp-image-1064" title="comunicazione" src="http://www.diplod.it/wp-content/uploads/2010/04/comunicazione.jpg" alt="" width="416" height="260" /><br />
<small>[Foto <a title="Flickr" href="http://www.flickr.com/photos/assbach/262165233/" target="_blank">Flickr</a>]</small></p>
<p><strong>Enterprise 2.0</strong> per chi è sul pezzo, nuovi strumenti lavorativi per chi semplicemente li usa. Fatto sta che sono sempre più diffusi, all&#8217;interno delle organizzazioni, strumenti come i <strong>blog</strong> e i <strong>wiki</strong>; utilissimi ai team di lavoro per la gestione quotidiana delle attività, altrettanto utili all&#8217;azienda per conservare traccia del lavoro svolto e rendere questa conoscenza riutilizzabile in futuro. Sono arrivati già da tempo anche i software di <strong>instant messaging</strong>, un altro noioso compagno d&#8217;ufficio dopo il <strong>telefono</strong>. In fondo si tratta di tools per comunicare, ma non solo.</p>
<p>E&#8217; sempre difficile la scelta su quale strumento utilizzare, soprattutto per chi ne è a digiuno; vi sono strumenti più o meno adatti in base alle informazioni da condividere e ai feedback necessari. La tipologia della relazione spesso fa la differenza sul raggiungimento dei risultati.<br />
Per scrivere le riflessioni seguenti ho preso spunto da una <a title="LinkedIn" href="http://www.linkedin.com/groupAnswers?discussionID=16610347&amp;viewQuestionAndAnswers=&amp;gid=112679&amp;trk=EML_anet_qa_ttle-0Ut79xs2RVr6JBpnsJt7dBpSBA" target="_blank">discussione</a> sul tema che ho letto via <em>LinkedIn</em>, dove veniva citato <a title="Deciding when to use.." href="http://www.linkedin.com/redirect?url=http%3A%2F%2Fthelynchblog%2Ecom%2F2009%2F12%2F14%2Fdeciding-when-to-use-microblogging-e-mail-or-im%2F&amp;urlhash=3Ccz" target="_blank">questo interessante contributo</a>.</p>
<p><em>Veniamo al dunque, quando è meglio usare uno strumento piuttosto che un altro?</em></p>
<p><span id="more-1056"></span><em></em></p>
<ul>
<li><strong>Blog</strong>: è uno strumento informativo più che collaborativo. E&#8217; particolarmente indicato per team di lavoro distribuiti, dove il project manager deve tenere informati i vari attori, talvolta pure il cliente. Dagli articoli possono scaturire discussioni, ma generalmente si tratta di discussioni operative, destinate a perdersi col tempo poichè non sono strutturate. La discussione è asincrona. Le informazioni possono essere catalogate con tag e categorie, ma la componente cronologica è sempre prevalente e prima o poi le notizie finiscono nel dimenticatoio.</li>
<li><strong>Wiki</strong>: è un contenitore di conoscenza. Un repository all&#8217;interno del quale memorizzare la conoscenza, sia quella esplicita che tacita. L&#8217;informazione può essere strutturata attraverso menù di navigazione, link tra pagine ed eventualmente con una tassonomia. Il contenuto è vivo, viene continuamente modificato dagli utenti ma si conserva la traccia dell&#8217;evoluzione. Non è certamente adatto per sviluppare discussioni sulle faccende più operative e non si presta nemmeno come luogo di scambio col cliente, a meno di particolari situazioni. E&#8217; un luogo dove archiviare cose che possono tornare necessarie in futuro, come le best practices per lo sviluppo di un prodotto o per l&#8217;archiviazione di istruzioni operative.</li>
<li><strong>Instant Messaging</strong>: è perfetto per chiedere informazioni al volo senza disturbare troppo i colleghi o chi per loro. E&#8217; certamente meno invadente del telefono pur svolgendo la medesima funzione. La comunicazione è rallentata ma efficace: sincrona. Va usato con moderazione, ma è forse uno degli strumenti più rivoluzionari. Con i software di IM è inoltre possibile condividere file o la propria sessione del desktop, si tratta di funzionalità spesso poco utilizzate.</li>
<li><strong>Email</strong>: la rogna più grossa dei nostri tempi. Serve solo ed esclusivamente per comunicazioni ufficiali, come ad esempio la notifica di un appuntamento o l&#8217;assegnazione di un task. Sviluppare discussioni dove si chiede il parere di più persone così come collaborare su un file tramite mail è la cosa più sbagliata che si possa fare. Quando serve un feedback &#8220;evoluto&#8221;, mai usare la mail.</li>
<li><strong>Telefono</strong>: serve per chiedere &#8220;Dove sei?&#8221; ed eventualmente comunicare al volo alcune cose, come il classico &#8220;Arrivo più tardi!&#8221;. A volte, se servono molte informazioni immediatamente è meglio parlarsi, perchè l&#8217;instant messaging potrebbe rubare tempo ad entrambi. Si tratta di comunicazione sincrona; in fondo a volte è anche piacevole scambiarsi informazioni in modo naturale.</li>
</ul>
<p>A questi strumenti, inoltre, dobbiamo aggiungere i cosidetti <em>workspace</em>. Tipicamente siti web che raccolgono una o più funzionalità citate sopra e ne estendono le potenzialità con calendari o cartelle condivisi, dove archiviare file sui quali è richiesto l&#8217;intervento di più persone.</p>
<p>L&#8217;ultima frontiera della collaborazione è sicuramente il buon <a title="Google Wave" href="http://wave.google.com/" target="_blank">Google Wave</a>, che ancora in pochi utilizzano (me compreso) ma che alla lunga credo andrà a sostituire la mail, o perlomeno quel modo errato di usarla, che tutti prima o poi sperimentano. In sostanza unifica l&#8217;IM, l&#8217;editing collaborativo e la mail, aprendosi verso quel mondo infinito di applicazioni web: mappe, video, ecc..</p>
<p><strong>E voi, cosa ne pensate? Avete mai provato a spiegare a qualcuno che sia a digiuno di tutti quando è il momento di usare una cosa piuttosto che un&#8217;altra?</strong><br />
Nell&#8217;ottica della gestione delle informazioni, credo che sia importante istruire gli utenti circa gli strumenti che hanno a disposizione. Ma come farlo? Attraverso lunghe pagine descrittive del servizio? Può essere utile moderare i contributi e spostarli da un blog a un wiki e viceversa? Io sono ancora in fase di studio dei comportamenti..</p>
<div class="feedflare">
<a href="http://feeds.feedburner.com/~ff/diplod?a=86MJ3GAVoUg:61H0fOxilDw:yIl2AUoC8zA"><img src="http://feeds.feedburner.com/~ff/diplod?d=yIl2AUoC8zA" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/diplod?a=86MJ3GAVoUg:61H0fOxilDw:V_sGLiPBpWU"><img src="http://feeds.feedburner.com/~ff/diplod?i=86MJ3GAVoUg:61H0fOxilDw:V_sGLiPBpWU" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/diplod?a=86MJ3GAVoUg:61H0fOxilDw:F7zBnMyn0Lo"><img src="http://feeds.feedburner.com/~ff/diplod?i=86MJ3GAVoUg:61H0fOxilDw:F7zBnMyn0Lo" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/diplod?a=86MJ3GAVoUg:61H0fOxilDw:7Q72WNTAKBA"><img src="http://feeds.feedburner.com/~ff/diplod?d=7Q72WNTAKBA" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/diplod?a=86MJ3GAVoUg:61H0fOxilDw:dnMXMwOfBR0"><img src="http://feeds.feedburner.com/~ff/diplod?d=dnMXMwOfBR0" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/diplod?a=86MJ3GAVoUg:61H0fOxilDw:pSxILM_nRGA"><img src="http://feeds.feedburner.com/~ff/diplod?d=pSxILM_nRGA" border="0"></img></a>
</div>]]></content:encoded>
			<wfw:commentRss>http://www.diplod.it/2010/04/14/decidere-se-usare-blog-wiki-im-email-o-telefono/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>Un widget per fare l’embed sul proprio sito dell’andamento in borsa di un titolo</title>
		<link>http://www.diplod.it/2010/04/01/un-widget-per-fare-lembed-sul-proprio-sito-dellandamento-in-borsa-di-un-titolo/</link>
		<comments>http://www.diplod.it/2010/04/01/un-widget-per-fare-lembed-sul-proprio-sito-dellandamento-in-borsa-di-un-titolo/#comments</comments>
		<pubDate>Thu, 01 Apr 2010 11:07:28 +0000</pubDate>
		<dc:creator>Davide</dc:creator>
				<category><![CDATA[Economia e finanza]]></category>
		<category><![CDATA[borsa]]></category>
		<category><![CDATA[embed]]></category>
		<category><![CDATA[grafici]]></category>
		<category><![CDATA[stock exchange]]></category>
		<category><![CDATA[widget]]></category>

		<guid isPermaLink="false">http://www.diplod.it/?p=1054</guid>
		<description><![CDATA[Sembra cosa da poco, ma ho scoperto sulla mia pelle che trovare un buon widget da incorporare nel proprio sito, che mostrasse l'andamento in borsa di un titolo azionario non è immediato. I vari Google Finance o Yahoo Finance sono ottimi strumenti, ma in quanto a possibilità di sharing sono ancora scadenti. Ci sono le API certo, ma chi avrebbe voglia di studiarsele solo per ottenere un grafichetto e nulla più? Segnalo allora per tutti gli interessati questo comodissimo widget di Wikinvest.]]></description>
			<content:encoded><![CDATA[<p>Sembra cosa da poco, ma ho scoperto sulla mia pelle che trovare un buon widget da incorporare nel proprio sito, che mostrasse l&#8217;andamento in borsa di un titolo azionario non è immediato. I vari <a href="http://www.google.com/finance">Google Finance</a> o <a href="http://it.finance.yahoo.com/">Yahoo Finance</a> sono ottimi strumenti, ma in quanto a possibilità di sharing sono ancora scadenti. Ci sono le API certo, ma chi avrebbe voglia di studiarsele solo per ottenere un grafichetto e nulla più?</p>
<p>Segnalo allora per tutti gli interessati questo comodissimo widget di Wikinvest, che tra i vari <a href="http://www.wikinvest.com/special/BloggerCentral">tool per bloggers</a> offre anche questa robina.</p>
<p><script src="http://charts.wikinvest.com/wikinvest/wikichart/javascript/scripts.php" type="text/javascript"></script>
<div id="wikichartContainer_FD870296-D057-80C1-8D57-B909148BC352">
<div style="width: 100%; text-align: center; vertical-align: center; margin-top: 100px;"><a href="http://get.adobe.com/flashplayer/"><img src="http://cdn.wikinvest.com/wikinvest/images/adobe_flash_logo.gif" alt="Flash" style="border-width: 0px;"/><br/>Flash Player 9 or higher is required to view the chart<br/><strong>Click here to download Flash Player now</strong></a></div>
</div>
<p><script type="text/javascript">if (typeof(embedWikichart) != "undefined") {embedWikichart("http://charts.wikinvest.com/WikiChartMini.swf","wikichartContainer_FD870296-D057-80C1-8D57-B909148BC352","100%","400",{"startDate":"01-10-2009","showAnnotations":"true","endDate":"01-04-2010","ticker":"GOOG","liveQuote":"true","embedCodeDate":"2010-4-1"},{});}</script>
<div style="font-size:9px;text-align:right;width:100%;font-family:Verdana"><a href="http://www.wikinvest.com/chart/GOOG" style="text-decoration:underline; color:#0000ee;">View the full GOOG chart</a> at <a href="http://www.wikinvest.com/">Wikinvest</a></div>
<p>Nulla di trascendentale, ma ad offrire una cosa così senza registrazioni obbligatorie e con un comodo codice da copia-incollare non sono in molti. Fatene buon uso.<br />
NB: Ovviamente è flash.</p>
<div class="feedflare">
<a href="http://feeds.feedburner.com/~ff/diplod?a=8dYqmHU-AxU:2PxUdNVM3Vc:yIl2AUoC8zA"><img src="http://feeds.feedburner.com/~ff/diplod?d=yIl2AUoC8zA" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/diplod?a=8dYqmHU-AxU:2PxUdNVM3Vc:V_sGLiPBpWU"><img src="http://feeds.feedburner.com/~ff/diplod?i=8dYqmHU-AxU:2PxUdNVM3Vc:V_sGLiPBpWU" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/diplod?a=8dYqmHU-AxU:2PxUdNVM3Vc:F7zBnMyn0Lo"><img src="http://feeds.feedburner.com/~ff/diplod?i=8dYqmHU-AxU:2PxUdNVM3Vc:F7zBnMyn0Lo" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/diplod?a=8dYqmHU-AxU:2PxUdNVM3Vc:7Q72WNTAKBA"><img src="http://feeds.feedburner.com/~ff/diplod?d=7Q72WNTAKBA" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/diplod?a=8dYqmHU-AxU:2PxUdNVM3Vc:dnMXMwOfBR0"><img src="http://feeds.feedburner.com/~ff/diplod?d=dnMXMwOfBR0" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/diplod?a=8dYqmHU-AxU:2PxUdNVM3Vc:pSxILM_nRGA"><img src="http://feeds.feedburner.com/~ff/diplod?d=pSxILM_nRGA" border="0"></img></a>
</div>]]></content:encoded>
			<wfw:commentRss>http://www.diplod.it/2010/04/01/un-widget-per-fare-lembed-sul-proprio-sito-dellandamento-in-borsa-di-un-titolo/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>Enterprise 2.0 roadmap: un contest da 2000 dollari</title>
		<link>http://www.diplod.it/2010/03/22/enterprise-2-0-roadmap-un-contest-da-2000-dollari/</link>
		<comments>http://www.diplod.it/2010/03/22/enterprise-2-0-roadmap-un-contest-da-2000-dollari/#comments</comments>
		<pubDate>Mon, 22 Mar 2010 18:10:14 +0000</pubDate>
		<dc:creator>Davide</dc:creator>
				<category><![CDATA[ICT]]></category>
		<category><![CDATA[Web 2.0]]></category>
		<category><![CDATA[contest]]></category>
		<category><![CDATA[cultura aziendale]]></category>
		<category><![CDATA[enterprise20]]></category>
		<category><![CDATA[intranet]]></category>
		<category><![CDATA[roadmap]]></category>

		<guid isPermaLink="false">http://www.diplod.it/?p=1022</guid>
		<description><![CDATA[Avete mai definito una strategia per diffondere le logiche di web 2.0 in azienda? Ovvero, per arrivare alla tanto decantata enterprise 2.0.. Se si, sono il primo a volerlo sapere.! E dopo un commento a questo articolo, potreste andare a pubblicare la vostra roadmap sul sito di AIIM entro il 2 aprile 2009: è in corso un contest che potrebbe farvi vincere 2000 dollari.
]]></description>
			<content:encoded><![CDATA[<p style="text-align: center;"><img class="aligncenter size-full wp-image-1041" title="sketch" src="http://www.diplod.it/wp-content/uploads/2010/03/sketch.jpg" alt="" width="409" height="300" /><br />
<small>[Fonte: <a href="http://www.flickr.com/photos/purecaffeine/4325067780/">Flickr</a>]</small></p>
<p>Avete mai definito una strategia per <strong>diffondere le logiche di web 2.0 in azienda</strong>? Ovvero, per arrivare alla tanto decantata <strong><a title="Enterprise 2.0" href="http://it.wikipedia.org/wiki/Enterprise_2.0" target="_blank">enterprise 2.0</a></strong>.. Se si, sono il primo a volerlo sapere.! E dopo un commento a questo articolo, potreste andare a pubblicare la vostra roadmap sul sito di AIIM entro il <strong>2 aprile 2009</strong>: è in corso un <a title="AIIM: enterprise 2.0 roadmap contest" href="http://www.aiim.org/infonomics/aiim-wiki-enterprise20-contest.aspx" target="_blank">contest che potrebbe farvi vincere 2000 dollari</a>.</p>
<p>Diffondere la <strong>cultura 2.0</strong> in una azienda è una sfida notevole, sia dal punto di vista tecnico che dal punto di vista organizzativo. Se da un lato vi sono sempre più strumenti &#8220;all-in-one&#8221;, che permettono un veloce deploy delle applicazioni sociali e collaborative web based, dall&#8217;altra è sempre vivo il timore della perdita del controllo sui dati, ma anche e soprattutto sui processi o sulle prassi aziendali. Ecco perchè il coinvolgimento del top management divenda un punto fermo, senza questa sponsorship non riusciremo a raggiungere gli obiettivi. Così come è fondamentale definire i passi assieme al dipartimento HR, per tutti quegli aspetti legali dovuti alla privacy; infine sarà indispensabile individuare i <strong>key users</strong>, persone che possono dare grande valore aggiunto.</p>
<p><span id="more-1022"></span></p>
<p>Vi sono, a mio avviso, due tipologie di key user da scovare:</p>
<ul>
<li><strong>Gli Esperti</strong>: coloro che sanno come funziona l&#8217;azienda, il knowledge, come girano le informazioni, come le persone ottengono le cose. Sono tipicamente i &#8220;nonni&#8221;, lavorano in azienda da tempo e magari non hanno molta confidenza con gli strumenti informatici.</li>
<li><strong>I Visionari</strong>: coloro che sanno (nella loro testa) come dovrebbero apparire le informazioni, come dovrebbero essere taggate, come dovrebbero essere archiviate e presentate. Sono persone che sentono l&#8217;esigenza di comunicare e lavorare meglio, hanno la casella di posta elettronica intasata da discussioni con maree di allegati ma si sentono impotenti davanti a tutto ciò.</li>
</ul>
<p>Il <strong>fattore critico</strong> è sempre il <strong>tempo</strong> che questi utenti possono mettere a disposizione, dal top management ai key users, tipicamente nessuno ha mai tempo da dedicare all&#8217;IT per migliorare la propria condizione lavorativa. E&#8217; difficile far comprendere che si sta cercando di dare risposte a loro e forse proprio in questo senso la definizione della roadmap dovrebbe essere un punto di partenza ineluttabile.</p>
<p>Per chi volesse approfondire ecco <a href="http://aiimknowledgecenter.typepad.com/weblog/2010/03/share-your-enterprise-20-roadmap-and-win-2000.html" target="_blank">l&#8217;articolo di presentazione del contest </a>dal blog di AIIM. Ovviamente, finito il contest sarà interessante vedere i contributi pervenuti! I risultati sono attesi per l&#8217;11 Maggio 2010.</p>
<div class="feedflare">
<a href="http://feeds.feedburner.com/~ff/diplod?a=BAN3t7uVq04:tb_FFbTuGeA:yIl2AUoC8zA"><img src="http://feeds.feedburner.com/~ff/diplod?d=yIl2AUoC8zA" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/diplod?a=BAN3t7uVq04:tb_FFbTuGeA:V_sGLiPBpWU"><img src="http://feeds.feedburner.com/~ff/diplod?i=BAN3t7uVq04:tb_FFbTuGeA:V_sGLiPBpWU" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/diplod?a=BAN3t7uVq04:tb_FFbTuGeA:F7zBnMyn0Lo"><img src="http://feeds.feedburner.com/~ff/diplod?i=BAN3t7uVq04:tb_FFbTuGeA:F7zBnMyn0Lo" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/diplod?a=BAN3t7uVq04:tb_FFbTuGeA:7Q72WNTAKBA"><img src="http://feeds.feedburner.com/~ff/diplod?d=7Q72WNTAKBA" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/diplod?a=BAN3t7uVq04:tb_FFbTuGeA:dnMXMwOfBR0"><img src="http://feeds.feedburner.com/~ff/diplod?d=dnMXMwOfBR0" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/diplod?a=BAN3t7uVq04:tb_FFbTuGeA:pSxILM_nRGA"><img src="http://feeds.feedburner.com/~ff/diplod?d=pSxILM_nRGA" border="0"></img></a>
</div>]]></content:encoded>
			<wfw:commentRss>http://www.diplod.it/2010/03/22/enterprise-2-0-roadmap-un-contest-da-2000-dollari/feed/</wfw:commentRss>
		<slash:comments>3</slash:comments>
		</item>
	</channel>
</rss>

