<?xml version="1.0" encoding="UTF-8"?><!-- generator="wordpress.com" -->
<rss version="2.0"
	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/"
	>

<channel>
	<title>google-api &amp;laquo; WordPress.com Tag Feed</title>
	<link>http://wordpress.com/tag/google-api/</link>
	<description>Feed of posts on WordPress.com tagged "google-api"</description>
	<pubDate>Sat, 06 Sep 2008 06:34:33 +0000</pubDate>

	<generator>http://wordpress.com/tags/</generator>
	<language>en</language>

<item>
<title><![CDATA[Nowe jQuery.com]]></title>
<link>http://lukasztyrala.wordpress.com/?p=228</link>
<pubDate>Fri, 29 Aug 2008 15:05:41 +0000</pubDate>
<dc:creator>lukasztyrala</dc:creator>
<guid>http://lukasztyrala.wordpress.com/?p=228</guid>
<description><![CDATA[
jQuery.com zmieniło swoje oblicze. Redesign objął również Wiki, czyli dokumentację, a&nbsp;to]]></description>
<content:encoded><![CDATA[<p><a href="http://jquery.com"><img src="http://lukasztyrala.wordpress.com/files/2008/08/new_jquerycom_11.png" alt="" width="500" height="288" class="alignnone size-full wp-image-230" /></a></p>
<p><a href="http://jquery.com">jQuery.com</a> zmieniło swoje oblicze. <a href="http://docs.jquery.com/Main_Page">Redesign objął również Wiki</a>, czyli dokumentację, a&#160;to nie jest najczęściej spotykane rozwiązanie &#8211; zwykle Wiki pozostawia sie same sobie, duży plus. <acronym title="User Interface">UI</acronym> <a href="http://ui.jquery.com/">pozostało takie same</a>, ale że niedawno zostało odświeżone, to trudno się takiej decyzji dziwić.</p>
<p>Ogólnie podoba mi się ten nowy design, ale niektóre elementy straciły na czytelności (patrz screeny poniżej).</p>
<p><a href="http://jquery.com"><img src="http://lukasztyrala.wordpress.com/files/2008/08/new_jquerycom_2.png" alt="" width="500" height="311" class="alignnone size-full wp-image-231" /></a></p>
<p><a href="http://jquery.com"><img src="http://lukasztyrala.wordpress.com/files/2008/08/new_jquerycom_3.png" alt="" width="500" height="300" class="alignnone size-full wp-image-232" /></a></p>
<p>To co prawda czepianie się, bo pierwszy przykład, nie ma pokazywać kodu, tylko efekty wykorzystania tylko jednej jego linki, a&#160;<a href="http://code.google.com/apis/ajaxlibs/">problem najnowszych wersji rozwiązało już za nas Google</a> jakiś czas temu.</p>
<p><a href="http://lukasztyrala.files.wordpress.com/2008/08/new_jquerycom.png"><img src="http://lukasztyrala.wordpress.com/files/2008/08/new_jquerycom.png?w=500" alt="" width="500" height="548" class="aligncenter size-large wp-image-233" /></a></p>
]]></content:encoded>
</item>
<item>
<title><![CDATA[Easy To Create Blog Posts Frequnecy Graph Chart Through Google Chart]]></title>
<link>http://sakib.wordpress.com/2008/08/26/easy-to-create-blog-posts-frequnecy-graph-chart-through-google-chart/</link>
<pubDate>Mon, 25 Aug 2008 20:52:48 +0000</pubDate>
<dc:creator>Sakib</dc:creator>
<guid>http://sakib.wordpress.com/2008/08/26/easy-to-create-blog-posts-frequnecy-graph-chart-through-google-chart/</guid>
<description><![CDATA[Google Chart Creator. Google Chart API
&amp; Developer&#8217;s Guide - Google Chart API - Google Cod]]></description>
<content:encoded><![CDATA[<p><a href="http://www.clabberhead.com/googlechartgenerator.html">Google Chart Creator</a>. <a title="Read Google Chart API" rel="bookmark" href="http://andrewferguson.net/2007/12/10/google-chart-api/">Google Chart API</a></p>
<p>&#38; <a href="http://code.google.com/apis/chart/#text">Developer's Guide - Google Chart API - Google Code</a>. I am going to make one site post frequency based open graph chart for my visitors.<a href="http://www.clabberhead.com/googlechartgenerator.html"></a></p>
]]></content:encoded>
</item>
<item>
<title><![CDATA[Mashups using Ajax, Flex, Google API's and Ribbit]]></title>
<link>http://nileshbafna.wordpress.com/?p=6</link>
<pubDate>Mon, 25 Aug 2008 20:42:03 +0000</pubDate>
<dc:creator>nileshbafna</dc:creator>
<guid>http://nileshbafna.wordpress.com/?p=6</guid>
<description><![CDATA[Yesterday I sat for about 2 hours wanting to develop some mashup that uses a range of varied technol]]></description>
<content:encoded><![CDATA[<p>Yesterday I sat for about 2 hours wanting to develop some mashup that uses a range of varied technologies. So I have attempted to come up with some thing meaningful to demostrate that. This application uses Ajax, Flex with Google Maps and Search API along with Ribbit API's for making an internet call.</p>
<p>The idea is that users can locally search for their needs and the local search will list down businesses matching those needs The entries that the user is interested in can be added to the spread sheet. The user can then have it seen on Google Maps and if a telephone number has been registered he can use it to make an online call to them immediately. It can easily be extended to provide geo location based search by mapping the IP to location and using this to search thus providing relevant details to the users.</p>
<p>You can have a look at the application here and let me know any ideas that you'll have to extend this further to a very nice mashup.</p>
<p><a href="http://bkcrystals.com/Nilesh/mashup.html">http://bkcrystals.com/Nilesh/mashup.html</a></p>
]]></content:encoded>
</item>
<item>
<title><![CDATA[Why there are no Google events in Pakistan?]]></title>
<link>http://hameedkhan.wordpress.com/?p=70</link>
<pubDate>Wed, 30 Jul 2008 17:17:02 +0000</pubDate>
<dc:creator>Hameedullah Khan</dc:creator>
<guid>http://hameedkhan.wordpress.com/?p=70</guid>
<description><![CDATA[Google Developers Day, according to Google Code Blog:
We&#8217;ll be there to discuss our APIs and d]]></description>
<content:encoded><![CDATA[<p>Google Developers Day, according to Google Code Blog:</p>
<blockquote><p>We'll be there to discuss our APIs and developer tools, diving into topics around App Engine, OpenSocial, Android, and much more. There will also be ample time for mingling with fellow developers and Google engineers.</p></blockquote>
<p>The even will take place on following locations:</p>
<ul>
<li><a title="London, UK (Sept 16)" href="http://code.google.com/intl/en_uk/events/developerday/2008/home.html">London, UK (Sept 16)</a></li>
<li><a id="va.j" title="Paris, France (Sept 18)" href="http://code.google.com/intl/fr_ALL/events/developerday/2008/home.html">Paris, France (Sept 18)</a></li>
<li><a id="ntzc" title="Munich, Germany (Sept 23)" href="http://code.google.com/intl/de_ALL/events/developerday/2008/home.html">Munich, Germany (Sept 23)</a></li>
<li><a id="jn8n" title="Madrid, Spain (Sept 25)" href="http://code.google.com/intl/es_ALL/events/developerday/2008/home.html">Madrid, Spain (Sept 25)</a></li>
<li>Bangalore, India (Oct 11)</li>
<li>Milan, Italy (Oct 21)</li>
<li>Prague, Czech (Oct 24)</li>
<li>Moscow, Russia (Oct 28)</li>
</ul>
<p>Unfortunately Pakistan is not there, this is not the only event but every event that is arranged by Google does not takes place in Pakistan, why is that? May be the developers are not good here? May be Google does not like us? May be we the developers of Pakistan need to participate more in Open Source programs. But again there is a serious lack of awareness and time management. Teachers at local colleges and universities does not know anything about open source but only Microsoft, almost all universities have some kind of affiliation with Microsoft.</p>
<p>So, either Google start approaching universities here in Pakistan like Microsoft do, or either someone from us take initiative to introduce students to open source. I just want to see those type of events being arranged in Pakistan too. I hope the situation will get better soon.</p>
]]></content:encoded>
</item>
<item>
<title><![CDATA[Web Services ASP.NET &amp; Google API]]></title>
<link>http://alessandrofabozzi.wordpress.com/?p=108</link>
<pubDate>Mon, 14 Jul 2008 08:30:31 +0000</pubDate>
<dc:creator>Alessandro</dc:creator>
<guid>http://alessandrofabozzi.wordpress.com/?p=108</guid>
<description><![CDATA[SOA (Architetture Orientate ai Servizi) è più di una parola, è anche un efficace modello di proge]]></description>
<content:encoded><![CDATA[<p style="font-family:Calibri;font-size:11pt;text-align:justify;margin:0;">SOA (Architetture Orientate ai Servizi) è più di una parola, è anche un efficace modello di progettazione, che è possibile utilizzare per risolvere molti problemi di sviluppo.</p>
<p style="font-family:Calibri;font-size:11pt;text-align:justify;margin:0;"><span> </span>Al centro di SOA troviamo i servizi Web, che sono componenti modulari di software utilizzati su Internet che comunicano utilizzando standard XML.<span> </span></p>
<p style="font-family:Calibri;font-size:11pt;text-align:justify;margin:0;">Google, che non ha bisogno di presentazioni, ha rilasciato Web API che consentono agli sviluppatori di accedere ad alcune funzionalità utilizzando servizi Web.</p>
<p style="font-family:Calibri;font-size:11pt;text-align:justify;margin:0;">Le API permettono di usare Simple Object Access Protocol (SOAP) e Web Services Description Language (WSDL) per effettuare una query su più di 8 miliardi di pagine Web.</p>
<p style="font-family:Calibri;font-size:11pt;text-align:justify;margin:0;">In questo breve articolo esamineremo come sfruttare la potenza del motore di ricerca di Google, ma discuteremo anche su alcuni dei principi fondamentali alla base di servizi Web in</p>
<p style="font-family:Calibri;font-size:11pt;text-align:justify;margin:0;">Prima di usare le API Web di Google, è necessario seguire una serie di passaggi.</p>
<p style="font-family:Calibri;font-size:11pt;text-align:justify;margin:0;">In primo luogo, è necessario disporre di una connessione a Internet, oltre a una linguaggio di sviluppo in grado di interfacciarsi con i servizi Web. Per questo articolo, useremo C # e Visual Studio. NET, ma i servizi Web sono per natura molto flessibili, così si potrebbe anche utilizzare Java, Perl, C + +, o qualsiasi altro linguaggio desideriate.</p>
<p style="font-family:Calibri;font-size:11pt;text-align:justify;margin:0;">In secondo luogo, è necessario scaricare il Google API SDK e creare un account con Google.<span> </span></p>
<p style="font-family:Calibri;font-size:11pt;text-align:justify;margin:0;">È necessario disporre di un account, perché è necessario un generatore di chiavi di licenza per accedere a Google Web API.</p>
<p style="font-family:Calibri;font-size:11pt;text-align:justify;margin:0;">La versione delle API utilizzate in questo articolo è la beta1, questo implica alcune limitazioni. Ad esempio, il limite di risultati per ogni query è 10, e un limite di 1000 query al giorno.<span> </span></p>
<p style="font-family:Calibri;font-size:11pt;text-align:justify;margin:0;">Prima di considerare una soluzione si dovrebbe consultare la concessione di licenze relativa.</p>
<p style="font-family:Calibri;font-size:11pt;text-align:justify;margin:0;">Dunque, dopo aver sottoscritto un account e aver ricevuto una chiave di licenza di Google, apriamo Visual Studio .NET e creiamo un nuovo progetto web ASP.NET.</p>
<p style="font-family:Calibri;font-size:11pt;text-align:justify;margin:0;">In primo luogo creiamo uno user control che costituirà la GUI per l'esempio, ciò ci consentirà di concentrarci sulla logica in maniera più efficiente senza dover saltare continuamente tra modalità codice e design.</p>
<p style="font-family:Calibri;font-size:11pt;text-align:justify;margin:0;">Dopo aver creato un nuovo user control ASCX, aggiungiamo una tabella HTML che conterrà 5 Label:</p>
<ul style="margin-left:0.75in;direction:ltr;unicode-bidi:embed;margin-top:0;margin-bottom:0;" type="circle">
<li><span style="font-size:11pt;font-family:Calibri;">Ricerca di base</span></li>
<li><span style="font-size:11pt;font-family:Calibri;">Restrizione al dominio di un      sito</span></li>
<li><span style="font-size:11pt;font-family:Calibri;">Filtro su file</span></li>
<li><span style="font-size:11pt;font-family:Calibri;">Da </span></li>
<li><span style="font-size:11pt;font-family:Calibri;">Fino a</span></li>
</ul>
<p style="font-family:Calibri;font-size:11pt;margin:0 0 0 0.75in;">
<p style="font-family:Calibri;font-size:11pt;margin:0;">5 TextBox:</p>
<ul style="margin-left:0.75in;direction:ltr;unicode-bidi:embed;margin-top:0;margin-bottom:0;" type="circle">
<li><span style="font-size:11pt;font-family:Calibri;">txtBasic</span></li>
<li><span style="font-size:11pt;font-family:Calibri;">txtSiteRes</span></li>
<li><span style="font-size:11pt;font-family:Calibri;">txtFilter</span></li>
<li><span style="font-size:11pt;font-family:Calibri;">txtFromDate</span></li>
<li><span style="font-size:11pt;font-family:Calibri;">txtToDate</span></li>
</ul>
<p style="font-family:Calibri;font-size:11pt;margin:0 0 0 0.75in;">
<p style="font-family:Calibri;font-size:11pt;margin:0;">E un unico pulsante di ricerca: btnSearch.</p>
<p style="font-family:Calibri;font-size:11pt;text-align:justify;margin:0;">Successivamente inseriamo una GridView(dgResult) e quindi aggiungiamo altre due Label che chiameremo lblResults e lblError.</p>
<p style="font-family:Calibri;font-size:11pt;text-align:justify;margin:0;">Successivamente, trascinare e rilasciare una banca dati griglia dgResults chiamato dal tuo strumenti, quindi aggiungere altri due etichette di sopra della griglia chiamato lblResults e lblError.</p>
<p style="font-family:Calibri;font-size:11pt;text-align:justify;margin:0;">Nel mio esempio, ho aggiunto qualche stile per le etichette, e ho aggiunto un calendario popup javascript per i campi data.Tuttavia, la funzione è sempre più importante della forma, percui l'aspetto grafico non sarà oggetto della nostra trattazione.</p>
<p style="font-family:Calibri;font-size:11pt;margin:0;">
<p style="font-family:Calibri;font-size:11pt;text-align:center;margin:0;"><a href="http://alessandrofabozzi.files.wordpress.com/2008/07/prewiewapi.png"><img class="size-thumbnail wp-image-110 aligncenter" src="http://alessandrofabozzi.wordpress.com/files/2008/07/prewiewapi.png?w=128" alt="" width="128" height="73" /></a></p>
<p style="font-family:Calibri;font-size:11pt;margin:0;">
<p style="font-family:Calibri;font-size:11pt;text-align:justify;margin:0;">Ora che la GUI è pronta, possiamo proseguire nell' approfondire le funzionalità fondamentali di questo controllo.<span> </span>Ma prima di iniziare la scrittura del codice, Discutiamo rapidamente su alcuni dei principi fondamentali alla base dei servizi Web e la loro attuazione in . NET Framework. I Servizi web sono fondamentalmente programmi riutilizzabili esposti a Internet che utilizzano una struttura standard di messaggistica.<span> </span>I Servizi web generalmente utilizzano SOAP per la loro struttura di messaggistica. SOAP è uno protocollo standard basato su XML che definisce l'uso di XML e HTTP per l'accesso ai servizi Web indipendentemente dalla piattaforma utilizzata.<span> </span>A meno che non abbiate tenuto<span> </span>la testa sepolta nella sabbia per gli ultimi anni, probabilmente avete sentito su tutti parlare di servizi Web. Ciò che invece potrebbe non essere chiaro, tuttavia, è che il paradigma dei servizi Web è unico poiché ogni servizio Web (quando costruito correttamente) è auto-descrittivo.<span> </span>Vale a dire, si possono comprendere le sue funzionalità e le sue interfacce esaminando i metadati del servizio Web, ovvero il documento che lo descrive, secondo le specifiche WSDL (Web Services Description Language).</p>
<p style="font-family:Calibri;font-size:11pt;margin:0;">Bene, a questo punto possiamo cominciare.</p>
<p style="font-family:Calibri;font-size:11pt;text-align:justify;margin:0;">In primo luogo, aggiungere un riferimento alle Google API facendo clic destro sulla cartella Riferimenti e selezionare Aggiungi riferimento Web.</p>
<p style="font-family:Calibri;font-size:11pt;margin:0;">Aggiungiamo <a href="http://api.google.com/GoogleSearch.wsdl">http://api.google.com/GoogleSearch.wsdl</a>" per il campo URL.</p>
<p style="font-family:Calibri;font-size:11pt;text-align:justify;margin:0;">Ora possiamo riferirci alle Google API, come per ogni altro componente gestito attraverso la<span> </span>dichiarazione dello spazio dei nomi utilizzando una dichiarazione "using", o di un'istanza, e così via.<span> </span>E' possibile modificare il nome di un riferimento Web semplicemente cambiando il nome della cartella nella finestra Proprietà.<span> </span></p>
<p style="font-family:Calibri;font-size:11pt;text-align:justify;margin:0;">Un riferimento web(web-reference)<span> </span>non è altro che una classe proxy autogenerata, che potete trovare nella vostra directory Project,<span> </span>sotto la cartella WebReference. Siate consapevoli del fatto che quando cambiate il nome della proprietà, state anche cambiando il modo in cui si fa riferimento all'API nel codice (vale a dire, il namespace utilizzato dallo statement "using").</p>
<p style="font-family:Calibri;font-size:11pt;text-align:justify;margin:0;"><span> </span>Il nome di default di riferimento per<span> </span>Google API è "com.google.api" e così è utilizzato in questo esempio.</p>
<p style="font-family:Calibri;font-size:11pt;text-align:justify;margin:0;">Troverete Reference.cs, GoogleSearch.wsdl, e Reference.map nella Directory WebReference .<span> </span></p>
<p style="font-family:Calibri;font-size:11pt;text-align:justify;margin:0;">L'IDE . NET sostanzialmente astrae tutti i servizi Web e le interfacce proxy per voi quando si aggiunge un riferimento in questo modo. Ma molti di noi geek piace vedere cosa succede sotto le coperte, così ecco un'occhiata a un pezzo di codice generato per la classe proxy.</p>
<p style="font-family:Calibri;font-size:11pt;margin:0;"><span> </span>[System.Web.Services.Protocols.SoapRpcMethodAttribute</p>
<p style="font-family:Calibri;font-size:11pt;margin:0 0 0 0.375in;">("urn:GoogleSearchAction", RequestNamespace="urn:GoogleSearch", ResponseNamespace="urn:GoogleSearch")]<span> </span></p>
<p style="font-family:Calibri;font-size:11pt;margin:0;">[return: System.Xml.Serialization.SoapElementAttribute("return")]<span> </span></p>
<p style="font-family:Calibri;font-size:11pt;margin:0;"><span> </span>public GoogleSearchResult doGoogleSearch(string key, string q, int start, int maxResults, bool filter, string restrict, bool safeSearch, string lr,string ie, string oe)<span> </span></p>
<p style="font-family:Calibri;font-size:11pt;margin:0;">
<p style="font-family:Calibri;font-size:11pt;margin:0;">{</p>
<p style="font-family:Calibri;font-size:11pt;margin:0 0 0 0.375in;">object[] results = this.Invoke("doGoogleSearch", new object[] {key, q, start, maxResults, filter, restrict, safeSearch, lr, ie, oe});return ((GoogleSearchResult)(results[0]));</p>
<p style="font-family:Calibri;font-size:11pt;margin:0;">}</p>
<p style="font-family:Calibri;font-size:11pt;text-align:justify;margin:0;">Come si può vedere, il codice del proxy codice non serve ad altro che a trovare le informazioni nel file WSDL, ma permette inoltre di interagire con un servizio Web come se fosse un oggetto gestito sulla nostra macchina locale. Per la maggior parte, il codice proxy codice generato da . NET è identico al codice generato dallo strumento WSDL.exe utilizzabile dalla riga di comando.Una volta aver ottenuto un riferimento web alle API di Google, è possibile istanziare semplicemente un oggetto GoogleSearchService che ha tre metodi principali:doGoogleSearch, doGetCached, e doSpellingSuggestion.<span> </span>. NET genera anche un wrapper di metodi asincroni per ogni firma di metodo presente nel WSDL.Sarebbe impossibile coprire interamente tutte le funzionalità delle API di Google in questo articolo, noi ci concentreremo sul metodo doGoogleSearch e come si può usare nelle nostre applicazioni.<span> </span>Vediamo come fare una ricerca base:</p>
<p style="font-family:Calibri;font-size:11pt;margin:0;">
<p style="font-family:Calibri;font-size:11pt;margin:0;">/ / Crea un oggetto di Google</p>
<p style="font-family:Calibri;font-size:11pt;margin:0;"><span> </span>object<span> </span>GoogleSearchService gss = new GoogleSearchService();<span> </span></p>
<p style="font-family:Calibri;font-size:11pt;margin:0;">/ / Richiama il metodo di ricerca<span> </span></p>
<p style="font-family:Calibri;font-size:11pt;margin:0;">GoogleSearchResult results = gss.doGoogleSearch("Nostra_Chiave_Licenza", "Nostra_Query", 0, 10, false, string.Empty, false, string.Empty, string.Empty, string.Empty);</p>
<p style="font-family:Calibri;font-size:11pt;margin:0;">
<p style="font-family:Calibri;font-size:11pt;text-align:justify;margin:0;">Il metodo DoGoogleSearch restituisce un oggetto GoogleSearchResult, utilizzabile come un container per i risultati restituiti da Google. Strettamente connessa alla classe GoogleSarchResult è la classe ResultElement, che si utilizza per avere accesso ai dati restituiti.</p>
<p style="font-family:Calibri;font-size:11pt;text-align:justify;margin:0;">La classe ResultElement è fondamentalmente una matrice che permette di accedere a questi membri: cachedSize, directoryCategory, directoryTitle, hostname, relatedInformationPresent, snippet, riassunto, titolo, e l'URL.</p>
<p style="font-family:Calibri;font-size:11pt;text-align:justify;margin:0;">Come per la maggior parte delle applicazioni, il codice per la getione degli errori non si scrive da sé; è necessario dunque aggiungere un meccanismo di trapping , con un semplice blocco try/catch. Con i servizi Web, è necessario gestire un particolare tipo di eccezione chiamato System.Web.Services.Protocols.SoapException, perché un errore che si verifica all'interno di un servizio Web viene sollevato come eccezione SOAP per una maggiore interoperabilità. Piuttosto che mettere tutto il codice nel Button, ho incapsulato il controllo della funzionalità di questi metodi: BuildQuery, per la stringa di ricerca; FormatResults,che restituisce i risultati; ShowErrorMessage, che visualizza gli errori e GoogleHandler, che è l'interfaccia principale chiamata dal pulsante.</p>
<p style="font-family:Calibri;font-size:11pt;margin:0;">
<p style="font-family:Calibri;font-size:11pt;margin:0;">C # • incapsulare le API Web di Google</p>
<p style="font-family:Calibri;font-size:11pt;text-align:justify;margin:0;">Utilizzare il<span> </span>controllo utente GoogleIt. NET per accedere alle API di Google. GoogleIt utilizza metodi di aiuto per la costruzione della stringa di ricerca, formattazione dei risultati in una GridView, e la visualizzazione di errori nel GUI.<span> </span>Il codice seguente è una versione condensata.</p>
<p style="font-family:Calibri;font-size:11pt;margin:0;">
<p style="font-family:Calibri;font-size:11pt;margin:0;">public class GoogleIt : System.Web.UI.UserControl<span> </span></p>
<p style="font-family:Calibri;font-size:11pt;margin:0;"><span> </span>{<span> </span></p>
<p style="font-family:Calibri;font-size:11pt;margin:0;"><span> </span>// E' necessaria una chiave di licenza per avere accesso alle funzionalità di Google API</p>
<p style="font-family:Calibri;font-size:11pt;margin:0;"><span> </span>private const string LICENSE_KEY = "Chiave_Licenza";<span> </span></p>
<p style="font-family:Calibri;font-size:11pt;margin:0;"><span> </span>private void btnSearch_Click(object sender, System.EventArgs e)<span> </span></p>
<p style="font-family:Calibri;font-size:11pt;margin:0 0 0 0.375in;">{<span> </span></p>
<p style="font-family:Calibri;font-size:11pt;margin:0 0 0 0.75in;"><span> </span>try<span> </span></p>
<p style="font-family:Calibri;font-size:11pt;margin:0 0 0 0.75in;"><span> </span>{ GoogleHandler(); }<span> </span></p>
<p style="font-family:Calibri;font-size:11pt;margin:0 0 0 0.75in;">catch (System.Web.Services.Protocols.SoapException ex)<span> </span></p>
<p style="font-family:Calibri;font-size:11pt;margin:0 0 0 0.75in;"><span> </span>{ ShowErrorMessage(ex.ToString(),true); }<span> </span></p>
<p style="font-family:Calibri;font-size:11pt;margin:0 0 0 0.75in;">catch (System.Exception ex){ ShowErrorMessage(ex.ToString(),true); }<span> </span></p>
<p style="font-family:Calibri;font-size:11pt;margin:0 0 0 0.75in;"><span> </span>}<span> </span></p>
<p style="font-family:Calibri;font-size:11pt;margin:0 0 0 0.75in;">private void GoogleHandler()<span> </span></p>
<p style="font-family:Calibri;font-size:11pt;margin:0 0 0 0.75in;"><span> </span>{<span> </span></p>
<p style="font-family:Calibri;font-size:11pt;margin:0 0 0 1.125in;">// Create a Google Search object<span> </span></p>
<p style="font-family:Calibri;font-size:11pt;margin:0 0 0 1.125in;">GoogleSearchService gss = new GoogleSearchService();<span> </span></p>
<p style="font-family:Calibri;font-size:11pt;margin:0 0 0 1.125in;"><span> </span>// Invoca il metodo di ricerca<span> </span></p>
<p style="font-family:Calibri;font-size:11pt;margin:0 0 0 1.125in;"><span> </span>GoogleSearchResult results =<span> </span>gss.doGoogleSearch(LICENSE_KEY, BuildQuery(), 0, 10, false,<span> </span>string.Empty,<span> </span>false,<span> </span>string.Empty, string.Empty,<span> </span>string.Empty);<span> </span></p>
<p style="font-family:Calibri;font-size:11pt;margin:0 0 0 1.125in;">// Visualizza il numero di risultati della ricerca<span> </span></p>
<p style="font-family:Calibri;font-size:11pt;margin:0 0 0 1.125in;">lblResults.Text = "Results Found: " + results.estimatedTotalResultsCount;<span> </span></p>
<p style="font-family:Calibri;font-size:11pt;margin:0 0 0 1.125in;">lblResults.Visible = true;<span> </span></p>
<p style="font-family:Calibri;font-size:11pt;margin:0 0 0 1.125in;">DataTable table = new DataTable();<span> </span></p>
<p style="font-family:Calibri;font-size:11pt;margin:0 0 0 1.125in;">DataColumn col1 =<span> </span>new DataColumn("Results", typeof(string));<span> </span></p>
<p style="font-family:Calibri;font-size:11pt;margin:0 0 0 1.125in;">table.Columns.Add(col1);<span> </span></p>
<p style="font-family:Calibri;font-size:11pt;margin:0 0 0 1.125in;">int pointer = 0;<span> </span></p>
<p style="font-family:Calibri;font-size:11pt;margin:0 0 0 1.125in;">while(pointer&#60;results.resultElements.Length)<span> </span></p>
<p style="font-family:Calibri;font-size:11pt;margin:0 0 0 1.125in;">{<span> </span></p>
<p style="font-family:Calibri;font-size:11pt;margin:0 0 0 1.5in;">DataRow row = table.NewRow();<span> </span></p>
<p style="font-family:Calibri;font-size:11pt;margin:0 0 0 1.5in;">row[0] = FormatResults(results.resultElements[ pointer]);<span> </span></p>
<p style="font-family:Calibri;font-size:11pt;margin:0 0 0 1.5in;">table.Rows.Add(row);<span> </span></p>
<p style="font-family:Calibri;font-size:11pt;margin:0 0 0 1.5in;">pointer ++;</p>
<p style="font-family:Calibri;font-size:11pt;margin:0 0 0 1.125in;">}<span> </span></p>
<p style="font-family:Calibri;font-size:11pt;margin:0 0 0 1.125in;">dgResults.DataSource = table;</p>
<p style="font-family:Calibri;font-size:11pt;margin:0 0 0 1.125in;">dgResults.DataBind();<span> </span></p>
<p style="font-family:Calibri;font-size:11pt;margin:0 0 0 0.75in;">}<span> </span></p>
<p style="font-family:Calibri;font-size:11pt;margin:0 0 0 0.75in;">private void ShowErrorMessage(string msg, bool bShow)<span> </span></p>
<p style="font-family:Calibri;font-size:11pt;margin:0 0 0 0.75in;">{<span> </span></p>
<p style="font-family:Calibri;font-size:11pt;margin:0 0 0 1.125in;">if (bShow == true)<span> </span></p>
<p style="font-family:Calibri;font-size:11pt;margin:0 0 0 1.125in;">{<span> </span></p>
<p style="font-family:Calibri;font-size:11pt;margin:0 0 0 1.5in;"><span> </span>lblError.Text = "&#60;br&#62;" + msg;<span> </span></p>
<p style="font-family:Calibri;font-size:11pt;margin:0 0 0 1.5in;">lblError.Visible = true;</p>
<p style="font-family:Calibri;font-size:11pt;margin:0 0 0 1.125in;">}<span> </span></p>
<p style="font-family:Calibri;font-size:11pt;margin:0 0 0 1.125in;">else<span> </span></p>
<p style="font-family:Calibri;font-size:11pt;margin:0 0 0 1.125in;">{<span> </span>lblError.Visible = false;<span> </span>}</p>
<p style="font-family:Calibri;font-size:11pt;margin:0 0 0 0.75in;">}<span> </span></p>
<p style="font-family:Calibri;font-size:11pt;margin:0 0 0 0.75in;">private string BuildQuery()<span> </span></p>
<p style="font-family:Calibri;font-size:11pt;margin:0 0 0 0.75in;">{<span> </span></p>
<p style="font-family:Calibri;font-size:11pt;margin:0 0 0 1.125in;">StringBuilder query = new StringBuilder();</p>
<p style="font-family:Calibri;font-size:11pt;margin:0 0 0 0.75in;"><span> </span>if(txtBasicSearch.Text.Length &#62; 0)<span> </span></p>
<p style="font-family:Calibri;font-size:11pt;margin:0 0 0 1.125in;">query.Append(txtBasicSearch.Text);<span> </span></p>
<p style="font-family:Calibri;font-size:11pt;margin:0 0 0 1.125in;">else<span> </span></p>
<p style="font-family:Calibri;font-size:11pt;margin:0 0 0 1.125in;">throw new Exception( "Devi specificare un criterio base di ricerca");</p>
<p style="font-family:Calibri;font-size:11pt;margin:0 0 0 1.125in;">if(txtSite.Text.Length &#62; 0)<span> </span></p>
<p style="font-family:Calibri;font-size:11pt;margin:0 0 0 1.125in;">{</p>
<p style="font-family:Calibri;font-size:11pt;margin:0 0 0 1.5in;">query.Append(" site:");</p>
<p style="font-family:Calibri;font-size:11pt;margin:0 0 0 1.5in;">query.Append(txtSite.Text);</p>
<p style="font-family:Calibri;font-size:11pt;margin:0 0 0 1.125in;">}<span> </span></p>
<p style="font-family:Calibri;font-size:11pt;margin:0 0 0 1.125in;">if(txtFilter.Text.Length &#62; 0)<span> </span></p>
<p style="font-family:Calibri;font-size:11pt;margin:0 0 0 1.125in;">{<span> </span></p>
<p style="font-family:Calibri;font-size:11pt;margin:0 0 0 1.5in;">query.Append(" filetype:");<span> </span></p>
<p style="font-family:Calibri;font-size:11pt;margin:0 0 0 1.5in;">query.Append(txtFilter.Text);<span> </span></p>
<p style="font-family:Calibri;font-size:11pt;margin:0 0 0 1.125in;">}<span> </span></p>
<p style="font-family:Calibri;font-size:11pt;margin:0 0 0 1.125in;">string txtDateFrom = Request.Form.Get("txtDateFrom");<span> </span></p>
<p style="font-family:Calibri;font-size:11pt;margin:0 0 0 1.125in;">string txtDateTo = Request.Form.Get("txtDateTo");<span> </span></p>
<p style="font-family:Calibri;font-size:11pt;margin:0 0 0 1.125in;">if(txtDateFrom.Length &#62; 0 &#38;&#38;<span> </span>txtDateTo.Length &#62; 0)<span> </span></p>
<p style="font-family:Calibri;font-size:11pt;margin:0 0 0 1.125in;">{<span> </span></p>
<p style="font-family:Calibri;font-size:11pt;margin:0 0 0 1.5in;">// Find the GregToJulian() method</p>
<p style="font-family:Calibri;font-size:11pt;margin:0 0 0 1.5in;">string fromDateJul =<span> </span>GregToJulian(txtDateFrom);<span> </span></p>
<p style="font-family:Calibri;font-size:11pt;margin:0 0 0 1.5in;">string toDateJul = GregToJulian(txtDateTo);<span> </span></p>
<p style="font-family:Calibri;font-size:11pt;margin:0 0 0 1.5in;">query.Append(" daterange:");<span> </span></p>
<p style="font-family:Calibri;font-size:11pt;margin:0 0 0 1.5in;">query.Append(fromDateJul);<span> </span></p>
<p style="font-family:Calibri;font-size:11pt;margin:0 0 0 1.5in;">query.Append("-");<span> </span></p>
<p style="font-family:Calibri;font-size:11pt;margin:0 0 0 1.5in;">query.Append(toDateJul);<span> </span></p>
<p style="font-family:Calibri;font-size:11pt;margin:0 0 0 1.125in;">}<span> </span></p>
<p style="font-family:Calibri;font-size:11pt;margin:0 0 0 1.125in;">return query.ToString();<span> </span></p>
<p style="font-family:Calibri;font-size:11pt;margin:0 0 0 0.75in;">}<span> </span></p>
<p style="font-family:Calibri;font-size:11pt;margin:0 0 0 0.75in;">private string FormatResults(ResultElement<span> </span>resultToFormat)<span> </span></p>
<p style="font-family:Calibri;font-size:11pt;margin:0 0 0 0.75in;">{<span> </span></p>
<p style="font-family:Calibri;font-size:11pt;margin:0 0 0 1.125in;">StringBuilder sb = new StringBuilder();<span> </span></p>
<p style="font-family:Calibri;font-size:11pt;margin:0 0 0 1.125in;">sb.Append("&#60;p&#62;&#60;b&#62;&#60;u&#62;&#60;a href=");<span> </span></p>
<p style="font-family:Calibri;font-size:11pt;margin:0 0 0 1.125in;">sb.Append(resultToFormat.URL);<span> </span></p>
<p style="font-family:Calibri;font-size:11pt;margin:0 0 0 1.125in;">sb.Append(" target=new&#62;");<span> </span></p>
<p style="font-family:Calibri;font-size:11pt;margin:0 0 0 1.125in;">sb.Append(resultToFormat.title);<span> </span></p>
<p style="font-family:Calibri;font-size:11pt;margin:0 0 0 1.125in;">sb.Append("&#60;/a&#62;&#60;/u&#62;&#60;/b&#62;&#60;/p&#62;");<span> </span></p>
<p style="font-family:Calibri;font-size:11pt;margin:0 0 0 1.125in;">sb.Append("&#60;p&#62;");<span> </span></p>
<p style="font-family:Calibri;font-size:11pt;margin:0 0 0 1.125in;">sb.Append(resultToFormat.snippet);<span> </span></p>
<p style="font-family:Calibri;font-size:11pt;margin:0 0 0 1.125in;">sb.Append("&#60;br&#62;");<span> </span></p>
<p style="font-family:Calibri;font-size:11pt;margin:0 0 0 1.125in;">sb.Append(resultToFormat.URL);<span> </span></p>
<p style="font-family:Calibri;font-size:11pt;margin:0 0 0 1.125in;">sb.Append(" ");<span> </span></p>
<p style="font-family:Calibri;font-size:11pt;margin:0 0 0 1.125in;">sb.Append(resultToFormat.cachedSize);<span> </span></p>
<p style="font-family:Calibri;font-size:11pt;margin:0 0 0 1.125in;">sb.Append("&#60;/p&#62;");<span> </span></p>
<p style="font-family:Calibri;font-size:11pt;margin:0 0 0 1.125in;">return sb.ToString();<span> </span></p>
<p style="font-family:Calibri;font-size:11pt;margin:0 0 0 0.75in;">}<span> </span></p>
<p style="font-family:Calibri;font-size:11pt;margin:0 0 0 0.375in;">}<span> </span></p>
<p style="font-family:Calibri;font-size:11pt;margin:0;">}</p>
<p style="font-family:Calibri;font-size:11pt;margin:0;">
<p style="font-family:Calibri;font-size:11pt;text-align:justify;margin:0;">Effettuiamo una ricerca di base per il termine "MSMQ", si potrà osservare ritornare un numero molto alto di risultati, ma si possono visualizzare solamente i primi 10 risultati di questi dati nella vostra GridView.</p>
<p style="font-family:Calibri;font-size:11pt;margin:0;">
<h2 style="font-family:Calibri;font-size:11pt;margin:0;">Query avanzate</h2>
<p><a href="http://alessandrofabozzi.files.wordpress.com/2008/07/optionapi.png"><img class="aligncenter size-full wp-image-111" src="http://alessandrofabozzi.wordpress.com/files/2008/07/optionapi.png" alt="" width="399" height="155" /></a></p>
<p style="font-family:Calibri;font-size:11pt;text-align:justify;margin:0;">Ora che si può fare una ricerca base, potreste chiedervi in quale modo questo potrebbe aiutarvi<span> </span>nelle vostre attività quotidiane di sviluppo Web. Ebbene, le API di Google offrono molto più che la sola funzionalità di ricerca di base. Si puòlimitare la ricerca ad un solo sito, ad una sola estensione di documento, o un intervallo di date, per citare solo alcune funzioni,Google API Web offre anche la possibilità di restringere i risultati per una particolare nazione e/o di una lingua specifica. Questo è facilmente realizzabile con il passaggio di altri parametri stringa al metodo doGoogleSearch:</p>
<p style="font-family:Calibri;font-size:11pt;margin:0;">
<p style="font-family:Calibri;font-size:11pt;margin:0;">
<p style="font-family:Calibri;font-size:11pt;margin:0;">/ / Filtro per nazione Germania</p>
<p style="font-family:Calibri;font-size:11pt;margin:0;"><span> </span>/ / Filtro per lingua</p>
<p style="font-family:Calibri;font-size:11pt;margin:0;">GoogleSearchResult results = gss.doGoogleSearch("Your License Key", "Your Query", 0, 10, false, "countryDE", false, "lang_de", string.Empty, string.Empty);</p>
<p style="font-family:Calibri;font-size:11pt;margin:0;">
<p style="font-family:Calibri;font-size:11pt;text-align:justify;margin:0;"><span> </span>Esaminiamo più da vicino alcune di queste ricerche avanzate e come si possono utilizzare nelle vostre applicazioni. L'unico settore nel esempio della nostra GUI che è veramente necessario è txtBasicSearch, ma diciamo che si desidera limitare la ricerca ad un particolare sito, ad esempio, <a href="http://www.aspitalia.com/">www.aspitalia.com</a>. Si può conseguire questo semplicemente concatenando "site: <a href="http://www.aspitalia.com/">www.aspitalia.com</a>" alla fine della vostra ricerca di base.BuildQuery e il metodo costruirà la stringa di ricerca che si passa nel metodo doGoogleSearch.</p>
<p style="font-family:Calibri;font-size:11pt;text-align:justify;margin:0;">Ad esempio, diciamo che stiamo effettuando una ricerca per MSMQ, e si desidera restringere la ricerca a <a href="http://www.aspitalia.com/">www.aspitalia.com</a>. Immettere "MSMQ" in txtBasicSearch, quindi immettere <a href="http://www.aspitalia.com/">www.aspitalia.com</a> in txtSite.<span> </span>Dopo aver eseguito la ricerca, si noterà che il numero di risultati restituiti si è ristretto enormemente. È possibile estendere questa funzionalità di ricerca a qualsiasi sito Web, come ad esempio il tuo blog o al sito web della vostra azienda (si prega di consultare l'accordo di licenza prima di uso in produzione).</p>
<p style="font-family:Calibri;font-size:11pt;text-align:justify;margin:0;">Il filtraggio per estensione o per data funziona alla stessa maniera. Ad esempio, è possibile cercare solo alcuni tipi di documento concatenando "filetype: pdf" alla fine della ricerca di base, che limiti i risultati ai documenti in formato PDF. Il filtraggio per data, anche se formattato allo stesso modo, necessita però di un accorgimento, dovuto al formato che la data deve possedere, il formato di data Giuliana. Il calendario Giuliano parte dal 1 ° gennaio 4713 aC<a href="http://code.visualstudiomagazine.com/vs0507vm.zip">.</a> Dopo aver generato la data Giuliana "a" e "da" , il formato della stringa di ricerca va concatenato allo stesso modo<span> </span>"daterange: &#60;start_date&#62; - &#60;end date&#62;" alla fine della vostra stringa di ricerca di base.</p>
<p style="font-family:Calibri;font-size:11pt;margin:0;">
<p style="font-family:Calibri;font-size:11pt;margin:0;"><a href="http://alessandrofabozzi.files.wordpress.com/2008/07/parameterapi.png"><img class="aligncenter size-medium wp-image-112" src="http://alessandrofabozzi.wordpress.com/files/2008/07/parameterapi.png?w=300" alt="" width="300" height="182" /></a></p>
<p style="font-family:Calibri;font-size:11pt;margin:0;">
<p style="font-family:Calibri;font-size:11pt;text-align:justify;margin:0;">È possibile estendere ulteriormente le funzionalità di Google API mediante la combinazione di una qualsiasi di queste parametrizzazioni. Ad esempio, è possibile limitare la ricerca a un sito Web, filtramdo per un determinato tipo di documento, e di limitare l'intervallo di date, tutti nella stessa stringa di ricerca. Questo articolo ha solo graffiato la superficie delle funzionalità di Google API.<span> </span>Ci sono molte altre funzionalità che è possibile utilizzare nelle applicazioni, tra cui il controllo ortografico, la cache di ricerca, e altro ancora.</p>
]]></content:encoded>
</item>
<item>
<title><![CDATA[Zoomii - E-commerce com uso de metáforas]]></title>
<link>http://santhiago.wordpress.com/?p=15</link>
<pubDate>Sat, 12 Jul 2008 14:42:44 +0000</pubDate>
<dc:creator>Santhiago Santos</dc:creator>
<guid>http://santhiago.wordpress.com/?p=15</guid>
<description><![CDATA[Estava procurando um livro ontem a noite quando encontrei esse site.
Achei super diferente e interes]]></description>
<content:encoded><![CDATA[<p>Estava procurando um livro ontem a noite quando encontrei <a title="Zoomii" href="http://zoomii.com/#" target="_blank">esse site</a>.<br />
Achei super diferente e interessante, ele é um e-commerce que usa o conceito de matáforas para navegação.</p>
<p>Metáfora é o uso de uma palavra em sentido diferente do próprio por analogia ou semelhança. Em navegação de web sites por exemplo, é usada para que o usuário se oriente através de algo conhecido. Para dar um exemplo prático ao invés de usar palavras no menu, utiliza-se imagens que represente o conceito ou idéia.</p>
<p>O site é uma junção entre os livros da Amazon e a API do Google Maps, o resultado é uma loja virtual com cara de livraria, com prateleiras identificadas por categorias e ordem alfabética.</p>
<p>Vale a pena conferir !</p>
[caption id="attachment_16" align="alignnone" width="300" caption="Zoomii"]<a title="Zoomii" href="http://zoomii.com/#" target="_blank"><img class="size-medium wp-image-16" src="http://santhiago.wordpress.com/files/2008/07/zoomii.jpg?w=300" alt="Zoomii" width="300" height="131" /></a>[/caption]
]]></content:encoded>
</item>
<item>
<title><![CDATA[Google API's and Mac]]></title>
<link>http://beanworks.wordpress.com/?p=173</link>
<pubDate>Mon, 07 Jul 2008 19:51:54 +0000</pubDate>
<dc:creator>Carol Bean</dc:creator>
<guid>http://beanworks.wordpress.com/?p=173</guid>
<description><![CDATA[I have an old iMac that I&#8217;ve been using as a server.  Because I like Linux, and because it was]]></description>
<content:encoded><![CDATA[<p>I have an old iMac that I've been using as a server.  Because I like Linux, and because it was easier to configure LAMP (Linux, Apache, MySql, PHP) than the similar components in OS X, I installed Kubuntu 6.06 on it (I've always liked the KDE desktop better than the Gnome desktop, which is the default for Ubuntu).  Everything was fine until I decided I wanted to try out a Google API.</p>
<p>Google APIs require PHP 5.1.4 or higher (actually it was needed for the Zend engine, which is required for the Google API).  But Ubuntu 6.06 (and Kubuntu 6.06) didn't have upgrades to PHP 5.1.4.  After a lot of trials and failures, I decided to fall back on Apple's OS X and install MAMP (Mac, Apache, MySql, PHP).  This particular machine could only take OS 10.3.* on it, which limited the MAMP I could use.  But it included PHP 5.1.6, so I was happy.  For a while.</p>
<p>I got everything up and running again, and even figured out how to get local network access working.  Then I got back to the Google API.  The first step, with MAMP, however, was to secure it, since the default install is with user "root" and password "root."  So far, that wasn't a problem since MAMP on this computer was only accessible on the local network, firewalled from the Internet.  But using a Google API requires access to and from the web.</p>
<p>The MAMP application has a FAQ page, accessible from the start page, that looks really helpful, but isn't.  You can get there by clicking in the FAQ button at the start page:</p>
<p><a href="http://beanworks.files.wordpress.com/2008/06/mampstart.jpg"><img class="alignnone size-full wp-image-175" src="http://beanworks.wordpress.com/files/2008/06/mampstart.jpg" alt="MAMP start page" width="450" height="214" /></a></p>
<p>Of course, the part about which versions of the included programs are installed is helpful.  But I had already checked that before I downloaded MAMP.  It's the part right below that, under the "How can I change the password for the MySQL database?" that is unhelpful.</p>
<p><a href="http://beanworks.files.wordpress.com/2008/06/mampfaq.jpg"><img class="alignleft size-full wp-image-176" src="http://beanworks.wordpress.com/files/2008/06/mampfaq.jpg" alt="MAMP FAQ page" width="449" height="354" /></a></p>
<p>First of all, mysqladmin is not in that location (/Applications/MAMP/bin/mysql4/bin/mysqladmin).  It's in /Applications/MAMP/Library/bin.  The php config file location is closer to what's listed: /Applications/MAMP/bin/phpMyAdmin/config.inc.php</p>
<p>Second, trying to run the suggested command in tcsh got me nowhere.  It turns out the default shell was changed to bash in OS 10.3, but upgrades (which this is) keep tcsh as the default.  Fortunately, bash is available, but the default has to be changed in the terminal preferences.</p>
<p>So, just to make sure bash is really there, go to the /bin directory in the terminal (using the Finder will just show the documentation):</p>
<p><a href="http://beanworks.files.wordpress.com/2008/06/findbash.jpg"><img class="alignnone size-full wp-image-178" src="http://beanworks.wordpress.com/files/2008/06/findbash.jpg" alt="bash in the Finder" width="450" height="196" /></a></p>
<p>Change the directory to root level by typing "cd /."  Then type "cd /bin" to get to the /bin directory.  Then type "ls" to list everything in that directory (see bash listed in the screenshot):</p>
<p><a href="http://beanworks.files.wordpress.com/2008/06/cdbindir.jpg"><img class="alignnone size-full wp-image-177" src="http://beanworks.wordpress.com/files/2008/06/cdbindir.jpg" alt="" width="367" height="156" /></a></p>
<p>While the terminal is open, go to the Terminal preferences:</p>
<p><a href="http://beanworks.files.wordpress.com/2008/06/termprefs.jpg"><img class="alignnone size-full wp-image-179" src="http://beanworks.wordpress.com/files/2008/06/termprefs.jpg" alt="Preferences" width="175" height="226" /></a></p>
<p>Notice the  path listed is for tcsh:</p>
<p><a href="http://beanworks.files.wordpress.com/2008/06/termprefstcsh.jpg"><img class="alignnone size-full wp-image-180" src="http://beanworks.wordpress.com/files/2008/06/termprefstcsh.jpg" alt="tcsh set" width="438" height="244" /></a></p>
<p>Change it to /bin/bash:</p>
<p><a href="http://beanworks.files.wordpress.com/2008/06/termprefsbash.jpg"><img class="alignnone size-full wp-image-181" src="http://beanworks.wordpress.com/files/2008/06/termprefsbash.jpg" alt="bash path" width="440" height="244" /></a></p>
<p>Close the Preferences window, quit the Terminal application, and relaunch it.   bash will be at the top of the Terminal window instead of tcsh now.</p>
<p>Now running the command listed in the FAQ page (with the path modification) will change the password in MySQL.  But before you actually press the Enter key to run the command, highlight the new password and copy it using the edit menu at the top of the screen.</p>
<blockquote>
<pre>/Applications/MAMP/Library/bin/mysqladmin -u root -p password NEWPASSWORD</pre>
</blockquote>
<p>(where NEWPASSWORD is the password it is to be changed to).  The php config file will also need to be edited.  I have eMacs on this machine, which worked nicely.  Don't try to do it in Text Edit.  That will not work nicely at all.  Open the config.inc.php file (in MAMP's phpmyadmin folder) in a code editor like bbedit or emacs. Find the lines</p>
<blockquote>
<pre>$cfg['Servers'][$i]['user']           =   'root';          //MySQL user</pre>
<pre>$cfg['Servers'][$i]['password']       =   'root';         //MySQL password</pre>
</blockquote>
<p>Replace 'root' in the password line with the one you copied. Save the file and close it.</p>
<p>Now, according to the MAMP faq page, it's finished. Not.</p>
<p>It turns out there's also a couple scripts to change in MAMP, documented over on <a href="http://www.network0.org/2006/09/23/how-to-secure-mamp/" target="_self">network0</a>.  There's also a handy section on securing MAMP itself by password protecting the htaccess folder using an online .htaccess password tool (http://www.tools.dynamicdrive.com/password/).  So now that I've got it locked down it's time to figure out how to open it up for Gdata on that Google API.  :)</p>
]]></content:encoded>
</item>
<item>
<title><![CDATA[WordPress και Google Gears]]></title>
<link>http://teomaragakis.wordpress.com/?p=235</link>
<pubDate>Sat, 05 Jul 2008 16:22:33 +0000</pubDate>
<dc:creator>Erevos</dc:creator>
<guid>http://teomaragakis.wordpress.com/?p=235</guid>
<description><![CDATA[Ίσως ορισμένοι bloggers του WordPress να παρατηρήσατε στο dashboard]]></description>
<content:encoded><![CDATA[<p>Ίσως ορισμένοι bloggers του WordPress να παρατηρήσατε στο dashboard σας τη νέα διακριτική επιλογή "Turbo" δεξιά από το όνομά σας. Θυμάστε στις εποχές που τα MHz των επεξεργαστών δεν ξεπερνούσαν τα 100 και οι υπολογιστές είχαν ένα κουμπάκι Turbo που το πατούσαμε όλοι με χαμόγελο νικητή και δεν έκανε τίποτα; Ε αυτό το link στο WordPress κάτι κάνει ;).</p>
[wp_caption id="attachment_237" align="aligncenter" width="273" caption="Η νέα επιλογή στο Dashboard"]<a href="http://teomaragakis.wordpress.com/files/2008/07/screenshot.png"><img class="size-full wp-image-237" src="http://teomaragakis.wordpress.com/files/2008/07/screenshot.png" alt="" width="273" height="108" /></a>[/wp_caption]
<p>Το σύστημα Gears το ανέπτυξαν τα εργαστήρια της Google και είναι ένα browser extension το οποίο χρησιμοποιείται για να αποθηκεύσει τοπικά, στον υπολογιστή του επισκέπτη δεδομένα από τη σελίδα στην οποία έχει ενεργοποιηθεί και τα ανανεώνει αθόρυβα στο background όποτε χρειάζεται, καθώς και να δημιουργήσει μια τοπική βάση δεδομένων. Τι σημαίνει αυτό; Μεγάλη αύξηση της ταχύτητας στη σελίδα που το έχει ενεργοποιήσει και αποφυγή περιττής κίνησης. Προς το παρόν το υποστηρίζουν οι εκδόσεις του Firefox 2 και 3 και του Internet Explorer 6 και 7, ενώ ο Safari 3 λίαν συντόμως θα ενταχθεί στην ομάδα.</p>
<p>Για να το χρησιμοποιήσετε, απλά κάντε κλικ στην επιλογή Turbo στο dashbard σας, περιμένετε να εγκατασταθεί στον browser και αφού επανεκκινηθεί ξανακλικάρετέ το για να ενεργοποιηθεί στο blog σας. Και μετά από αυτό, όπως λέει και η επίσημη αναφορά, blogging faster than the speed of light! Ήδη πολλοί bloggers ανέφεραν πως η αλλαγή της ταχύτητας είναι δραματική, ευχάριστη και δροσερή με άρωμα μέντας. ;)</p>
]]></content:encoded>
</item>
<item>
<title><![CDATA[Wordpress+Google = Wordpress Gears]]></title>
<link>http://migs.wordpress.com/2008/06/30/wordpressgoogle-wordpress-gears/</link>
<pubDate>Mon, 30 Jun 2008 11:27:43 +0000</pubDate>
<dc:creator>migs</dc:creator>
<guid>http://migs.wordpress.com/2008/06/30/wordpressgoogle-wordpress-gears/</guid>
<description><![CDATA[Turbo.. that&#8217;s the word i saw in my wordpress admin toolbar.

After i clicked it i got this:

]]></description>
<content:encoded><![CDATA[<p>Turbo.. that's the word i saw in my wordpress admin toolbar.</p>
<p><img style="border-right:0;border-top:0;border-left:0;border-bottom:0;" src="http://migs.files.wordpress.com/2008/06/gears0.jpg" border="0" alt="gears0" width="190" height="88" /></p>
<p>After i clicked it i got this:</p>
<p><img style="border-right:0;border-top:0;border-left:0;border-bottom:0;" src="http://migs.files.wordpress.com/2008/06/gears1.jpg" border="0" alt="gears1" width="345" height="230" /></p>
<p>It says:</p>
<blockquote><p>Speed up Wrdpress!</p>
<p>WordPress now has support for Gears, which adds new features to your web browser.</p>
<p>After you install and enable Gears most of WordPress’ images, scripts, and CSS files will be stored locally on your computer. This speeds up page load time.</p></blockquote>
<p><!--more--></p>
<p>I think Worpdress Gears has been around since last month but i only noticed it now.</p>
<p>Why install Wordpress Gears? So that you could...</p>
<ul>
<li>Let web applications interact naturally with your desktop</li>
<li>Store data locally in a fully-searchable database</li>
<li>Run JavaScript in the background to improve performance</li>
</ul>
<blockquote><p>For more information about google gears/gears api where the wordpress gears was made, check <a href="http://code.google.com/apis/gears/">here</a> and <a href="http://gears.google.com/support/">here</a>.</p></blockquote>
<p>How to install Wordpress gears?</p>
<p>Easy... First you must have google gears installed on your computer. If you don't have it yet, then when you click TURBO in your wordpress admin bar, you will be prompted to install google gears.</p>
<p><a href="http://migs.files.wordpress.com/2008/06/gears4.jpg"><img src="http://migs.files.wordpress.com/2008/06/gears4-thumb.jpg" border="0" alt="gears4" width="330" height="118" /></a></p>
<p>Restart your browser (i use fiirefox 3)</p>
<p>Then go to your blog's dashboard and click TURBO again.</p>
<p><img style="border-right:0;border-top:0;border-left:0;border-bottom:0;" src="http://migs.files.wordpress.com/2008/06/gears5.jpg" border="0" alt="gears5" width="334" height="223" /></p>
<p>Click enable if you really want to install Wordpress Gears.</p>
<p><img style="border-right:0;border-top:0;border-left:0;border-bottom:0;" src="http://migs.files.wordpress.com/2008/06/gears6.jpg" border="0" alt="gears6" width="302" height="223" /></p>
<p>Then you'll see Wordpress Gears starting to download your blog's settings on your pc.</p>
<p><a href="http://migs.files.wordpress.com/2008/06/gears7.jpg"><img style="border-right:0;border-top:0;border-left:0;border-bottom:0;" src="http://migs.files.wordpress.com/2008/06/gears7-thumb.jpg" border="0" alt="gears7" width="316" height="211" /></a></p>
<p>Several blogs says that wordpress gears will be included in wordpress 2.6.</p>
<p>Just a reminder, <strong>DO NOT INSTALL WORDPRESS GEARS ON A PUBLIC COMPUTER!</strong></p>
<p>The verdict on my next post.</p>
]]></content:encoded>
</item>
<item>
<title><![CDATA[Vizualizing metadata with Google maps ]]></title>
<link>http://stigl.wordpress.com/?p=22</link>
<pubDate>Wed, 18 Jun 2008 07:32:53 +0000</pubDate>
<dc:creator>stigl</dc:creator>
<guid>http://stigl.wordpress.com/?p=22</guid>
<description><![CDATA[I&#8217;m amazed by the imagery you get on google maps with terrain, images and wikipediaarticles.
I]]></description>
<content:encoded><![CDATA[<p><img class="alignright size-medium wp-image-23" src="http://stigl.wordpress.com/files/2008/06/google-maps-terrain-and-pictures.png?w=231" alt="Google maps" width="185" height="240" />I'm amazed by the imagery you get on <a href="http://maps.google.com/maps?f=q&#38;hl=en&#38;geocode=&#38;q=norway&#38;ie=UTF8&#38;ll=60.472024,8.468946&#38;spn=6.906677,22.763672&#38;t=p&#38;z=6&#38;lci=lmc:panoramio,lmc:wikipedia_en">google maps with terrain, images and wikipediaarticles.</a></p>
<p>I see a hammer I want to use, now to find some nails.</p>
<p>Lets say you work for a news publicist who wants to leverage their articles metadata quality to make navigation and search easier for their customers and researchers and writers.</p>
<p>Tagging with metadata requires that the metadata is applied correctly and in a standardized fashion. Vizualizing the metadata can make the categorization easier and be an incentive for revisiting already tagged metadata and improving it.<!--more--></p>
<p>Metadata can be vizualized on a timeline or a map. Lets say we want to connect Wikipediaarticles to a map of the world. The articles can be tagged with topics such as country, a city in that country, a person that lives in that city or a car used by that person. The identifiables (country, city) must be either geotagged, or searchable in a database that has information of names of places and latitude / longitude. If amount of work for tagging the articles is to hard, the topics of the text can be extracted by text mining.</p>
<p>If the articles have a picture related to them, this can be added to the vizualisation, if not, a picture can be added based on topic or nearby location.</p>
<p>The end result is that the researchers and writers get an incentive to improve the metadata because the information is easier to distinguish from one another, whereas the articles with poor metadata will appear in a messy ball, screaming for attention.</p>
<p>The next step is finding out how the <a href="http://code.google.com/apis/maps/">google maps API</a> works :)</p>
]]></content:encoded>
</item>
<item>
<title><![CDATA[Google Chart API]]></title>
<link>http://darmasetiawan.wordpress.com/?p=37</link>
<pubDate>Fri, 16 May 2008 01:54:37 +0000</pubDate>
<dc:creator>A.D Setiawan</dc:creator>
<guid>http://darmasetiawan.wordpress.com/?p=37</guid>
<description><![CDATA[Google Chart API adalah layanan dari Google untuk membuat grafik secara dinamik di web kita, tanpa p]]></description>
<content:encoded><![CDATA[<p>Google Chart API adalah layanan dari Google untuk membuat grafik secara dinamik di web kita, tanpa perlu memrogram sesuatu yang kompleks. Penggunaan Google Chart API sederhana saja. Mari kita coba dengan memasukan URL berikut (saya kutip dari web google chart API) ke WEB Browser favorit kita</p>
<blockquote><p><strong><span style="color:#993300;">http://chart.apis.google.com/chart?cht=p3&#38;chd=t:60,40&#38;chs=250x100<br />
&#38;chl=Hello&#124;World</span></strong></p></blockquote>
<p>Hasilnya ... luar biasa ... langsung keluar tuh pie chart lengkap dengan labelnya</p>
<p><!--more--> <a href="http://darmasetiawan.wordpress.com/files/2008/05/googlechart.jpg"></a></p>
<p style="text-align:center;"><img class="size-full wp-image-38" src="http://darmasetiawan.wordpress.com/files/2008/05/googlechart.jpg" alt="" width="400" height="280" /></p>
<p>Format dari perintah yang kita berikan di atas dapat dijelaskan pada pembahasan berikut ini.</p>
<ul>
<li><code><strong></strong></code><strong><span style="color:#000080;">http://chart.apis.google.com/chart?</span></strong> adalah lokasi dari google chart</li>
<li><strong><span style="color:#000080;">&#38;</span></strong> pemisah antar parameter</li>
<li><code><strong></strong></code><strong><span style="color:#000080;">chs=250x100</span></strong> adalah ukuran grafik dalam satuan piksel</li>
<li><code><strong></strong></code><strong><span style="color:#000080;">chd=t:60,40</span></strong> adalah data grafik</li>
<li><code><strong></strong></code><strong><span style="color:#000080;">cht=p3</span></strong> merupakan tipe dari grafik yang ingin ditampilkan, , tabel jenis grafik akan saya sampaikan di posting berikutnya</li>
<li><strong><span style="color:#000080;">chl=Hello&#124;World</span></strong> adalah label dari grafik</li>
</ul>
<p>Kita dapat menampilkan grafik dengan menyatukannya di dalam halaman web kita dengan menggunakan tag &#60;img&#62;. Berikut ini adalah contoh penggunaannya</p>
<blockquote><p><strong><span style="color:#993300;">&#60;img src="http://chart.apis.google.com/chart? chs=250x100<br />
&#38;chd=t:60,40<br />
&#38;cht=p<br />
&#38;chl=Hello&#124;World" alt="Sample chart" /&#62;</span></strong></p></blockquote>
<p>Anda lihat bahwa grafik yang ingin kita tampilkan akan muncul di dalam halaman ini</p>
<p style="text-align:center;"><img class="aligncenter" src="http://chart.apis.google.com/chart?chs=250x100&#38;chd=t:60,40&#38;cht=p&#38;chl=Hello&#124;World" alt="Sample chart" /></p>
<p>Topik lain tentang google chart API akan sampaikan di posting berikutnya. Semoga bermanfaat</p>
]]></content:encoded>
</item>
<item>
<title><![CDATA[Ajax Google Video Search Pop Up Embed Code Editor Wordpress Plugin]]></title>
<link>http://honewatson.wordpress.com/?p=281</link>
<pubDate>Wed, 30 Apr 2008 06:49:25 +0000</pubDate>
<dc:creator>honewatson</dc:creator>
<guid>http://honewatson.wordpress.com/?p=281</guid>
<description><![CDATA[
I&#8217;ve created this plugin called Video Search Pop N Code which allows you to search for videos]]></description>
<content:encoded><![CDATA[<p><img src="http://honewatson.com/files/2008/04/three-video-screen-print-300x216.png" alt="google video search pop up plugin" width="300" height="216" /></p>
<p>I've created this plugin called Video Search Pop N Code which allows you to search for videos, watch videos, get embed code, and format code within your wordpress editor without refreshing your browser.</p>
<p>This technology users the Google Ajax Search API.</p>
<p>Details and download of the <a href="http://honewatson.com/og/wordpress-video-plugin-search-pop-n-code/">plugin can be found here</a>.</p>
]]></content:encoded>
</item>
<item>
<title><![CDATA[Google abre Youtube API a 'interessados']]></title>
<link>http://snnangola.wordpress.com/?p=328</link>
<pubDate>Wed, 12 Mar 2008 21:52:15 +0000</pubDate>
<dc:creator>snnangola</dc:creator>
<guid>http://snnangola.wordpress.com/?p=328</guid>
<description><![CDATA[
A google pretende assumir uma posição de destaque total na area de reprodução de video baseado ]]></description>
<content:encoded><![CDATA[<p align="center"><img src="http://www.techcrunch.com/wp-content/youtiube-logo.png" align="middle" height="73" width="142" /></p>
<p>A google pretende assumir uma posição de destaque total na area de reprodução de video baseado na Web, e nada melhor para isso do que permitir que qualquer website possa <a href="http://www.techcrunch.com/2008/03/12/youtube-the-platform/">usar a API do Youtube</a>, permitindo a qualquer usuario se desejar, fazer uploads directamente ao Youtube sem estar lá, adicionar, editar metadados de cada reprodução (titulos, descrição, favoritos) etc. Mais uma boa jogada da Google numa altura em que a Yahoo <a href="http://www.techcrunch.com/2008/03/12/yahoo-to-join-opensocial-in-april/">anuncia</a> entrada no grupo Opensocial.</p>
]]></content:encoded>
</item>
<item>
<title><![CDATA[WikiStat, a Greasemonkey extension for viewing Wikipedia edit distributions]]></title>
<link>http://paragraft.wordpress.com/?p=9</link>
<pubDate>Fri, 15 Feb 2008 13:28:56 +0000</pubDate>
<dc:creator>Nathan Adams</dc:creator>
<guid>http://paragraft.wordpress.com/?p=9</guid>
<description><![CDATA[In my previous post I wanted to make a pie graph quickly, and so for the first time used Google]]></description>
<content:encoded><![CDATA[<p>In my previous post I wanted to make a pie graph quickly, and so for the first time used Google's relatively <a href="http://code.google.com/apis/chart/" title="The Google charts API">new charting API</a>. It's a pretty neat little concept, taking in all the data and parameters for the chart in a single URL and then giving you the resulting image. I thought there had to be a better use for that than a static joke pie chart. Then in a meeting of my quiet interest in information visualization and some previous experience at writing a Greasemonkey script (if you know Javascript but haven't tried GM, do so. It's actually quite fun and easy), I decided to have a stab at using the API in a slightly more dynamic and useful way.</p>
<p>It's called WikiStat and shows the time distribution of up to 250 of the most recent edits on an article, giving you a quick insight on how recently and intensively edited a page has been edited.</p>
<p><a href="void(0)" id="file-link-11" title="WikiStat screenshot" class="file-link image"><img src="http://paragraft.wordpress.com/files/2008/02/wikistat.png" alt="WikiStat screenshot" height="359" width="429" /></a></p>
<p>You'll need Firefox and <a href="http://www.greasespot.net/">Greasemonkey</a> to use it.  If you've got those, then <a href="http://syphoon.googlepages.com/WikiStat.user.js" title="WikiStat user script">click here to install it</a>.</p>
<p>I haven't tested it with anything other than GM 0.7 and FF3b3. I do recall that Opera can do user scripts these days, so it might be able to do it too. No promises though.</p>
<p>I'm most interested in suggestions for improvements.</p>
<p><b>Update:</b></p>
<p><a href="http://paragraft.wordpress.com/files/2008/02/wikistat2.png" title="WikiStat pie chart screenshot"><img src="http://paragraft.wordpress.com/files/2008/02/wikistat2.png" alt="WikiStat pie chart screenshot" /></a></p>
<p>Added a pie chart to show approximately how many of the edits were reversions. Makes for somewhat depressing viewing when you then consider there's an invisible but equally large and ultimately non-productive segment of the pie.</p>
]]></content:encoded>
</item>
<item>
<title><![CDATA[Experimente novas formas de busca no Google]]></title>
<link>http://snnangola.wordpress.com/?p=171</link>
<pubDate>Mon, 04 Feb 2008 09:35:23 +0000</pubDate>
<dc:creator>snnangola</dc:creator>
<guid>http://snnangola.wordpress.com/?p=171</guid>
<description><![CDATA[
O google é o principal buscador nao por causa de alguma empatia do publico por ele ou coisa pareci]]></description>
<content:encoded><![CDATA[<p align="center"><img src="http://www.google.com/experimental/shot_shortcuts.jpg" align="middle" height="200" width="230" /></p>
<p>O google é o principal buscador nao por causa de alguma empatia do publico por ele ou coisa parecida. Lembro bem que a 7 anos atrás apenas se falava em Altavista e Yahoo. Eu mesmo nao me consigo recordar quando foi que comecei a usar massivamente o Google, me parece apenas que quando a Yahoo acordou e comprou a <a href="http://en.wikipedia.org/wiki/Inktomi">Inktomi</a> ja era tarde demais.</p>
<p>Mas o objectivo deste pequeno texto é falar sobre algumas alternativas de busca que o Google proporciona, isso para quem já está cansado com o Layout dos resultados da busca e também necessita de novos recursos visuais e novas formas de buscas, como uso de atalhos como resultados baseados em mapas (Imagine se voce procura resultados para jogos olimpicos de Pequim). A google <a href="http://www.google.com/experimental/index.html">tem uma pagina criada para esse efeito</a>.</p>
<p>Obs: As noticias sobre a Google sao tao interessantes que fui obrigado a criar <a href="http://snnangola.wordpress.com/category/google/">uma categoria</a> somente para ela.</p>
]]></content:encoded>
</item>
<item>
<title><![CDATA[The Google Social Graph API]]></title>
<link>http://blackhatspider.wordpress.com/?p=148</link>
<pubDate>Sun, 03 Feb 2008 18:29:48 +0000</pubDate>
<dc:creator>blackhatspider</dc:creator>
<guid>http://blackhatspider.wordpress.com/?p=148</guid>
<description><![CDATA[From the site blurb:  &#8220;With so many websites to join, users must decide where to invest signi]]></description>
<content:encoded><![CDATA[<p><em>From the site blurb:</em>  "With so many websites to join, users must decide where to invest significant time in adding their same connections over and over. For developers, this means it is difficult to build successful web applications that hinge upon a critical mass of users for content and interaction. With the Social Graph API, developers can now utilize public connections their users have already created in other web services. It makes information about public connections between people easily available and useful."  Watch the video too - more info <a href="http://code.google.com/apis/socialgraph/">here </a></p>
]]></content:encoded>
</item>
<item>
<title><![CDATA[Grafici con Google Chart Api]]></title>
<link>http://pythonyan.wordpress.com/2007/12/07/grafici-con-google-chart-api/</link>
<pubDate>Fri, 07 Dec 2007 13:53:03 +0000</pubDate>
<dc:creator>pythonyan</dc:creator>
<guid>http://pythonyan.wordpress.com/2007/12/07/grafici-con-google-chart-api/</guid>
<description><![CDATA[Su Ajaxan c&#8217;è questo esempio che dimostra l&#8217;utilizzo della Api per i grafici fornita da]]></description>
<content:encoded><![CDATA[<p>Su Ajaxan c'è questo <a href="http://ajaxian.com/archives/use-the-google-chart-api-to-create-charts-for-your-web-applications">esempio </a>che dimostra l'utilizzo della Api per i grafici fornita da Google, con alcune delle opzioni che è possibile utilizzare.</p>
]]></content:encoded>
</item>

</channel>
</rss>
