Showing posts with label google. Show all posts
Showing posts with label google. Show all posts

Monday, March 4, 2013

Image publishing checklist

  1. Don't embed important text inside images
  2. Describe your image. Give a good description. Beware of long "alt" attibute values. Or google rank you as a spam because of "keyword stuffing".
  3. License your images. Add a small "Terms of Use". You will like Creative Commons.
  4. Generate your images different size formats for your needs.
  5. Specify your image dimensions in html.

future reading https://www.magic-picture.com/5-best-ways-to-optimize-images-for-seo/

Thursday, August 18, 2011

Google Profanity ile istenmeyen kelime filtreleme meselesi

wdyl.com açılalı epey oldu. wdyl altında bir basit servis ve google'ın resmi bir apisi olan profanity api ile bir kelimenin istenmeyen ifade olup olmadığını anlayabilirsiniz.
"xxx"
"porno"
gibi ifadeler

Kullanımı basit
http://www.wdyl.com/profanity?q=ankara
"q" parametresine kelimenizi verin "true" veya "false" alacaksınız. "true" olması istenmeyen bir kelime olması demektir.
örnek çıktı (json formatında veriyor)

http://www.wdyl.com/profanity?q=ankara
{"response": "false"}


http://www.wdyl.com/profanity?q=porno
{"response": "true"}


As Wade notes, a simple snippet of PHP code can be used with apps via a JSON call to query whether or not Google thinks any given text contains rude words.
meseleyi irdeleyin http://labs.phurix.net/posts/googles-official-profanity-api


Tuesday, July 5, 2011

Google Suggest Api

Aslında official olarak bir api değil.
Şu şekilde epey kullandım
http://www.google.com/complete/search?hl=tr&client=suggest&js=true&q=test

hl parametresi dil ayarıdır.

Bir kaç gündür test ediyorum ve fark sanırım bir gün için bir ip'ye 50.000 sorgu kadar limit verilmiş. Çünkü artık 403 hatası vermeye başladı.

Ayrıca Yahoo suggest de var o ise günlük bir IP'ye 5.000 sorgu limiti veriyor ve google kadar güzel sonuclar vermiyor

Friday, July 1, 2011

Artık Google Appscript

Çeşitli medya takip sistemlerimi artık google app script ile google docs a taşiyorum. İnanılmaz kolay. Javascript olmasi bir yana network islemlerinde cross-doamin sorunlari yaşamadan kodlayabiliyor, diger kullanicilarin scriptlerinden de faydalanabiliyorsunuz.
Online editor ve debugger'i ile pratik cozumler yaratabilirsiniz. Simdilik sadece twitter ve google dan cesitli datalari fetch ediyorum ve raporluyorum.


Konuyu irdelemek icin : http://code.google.com/googleapps/appsscript/

Bi kaç ekran görüntüsü.



Wednesday, January 19, 2011

Analytics annotation bug?

Analytics'de annotation eklerken bazı html tagların geçerli olduğunu fark ettim.


1.

2.

Sunday, September 12, 2010

Google Wave meselesi için son sözlerim


Google Wave üzerine bir çok teknik ve sosyal deneyler yaptık. Hepsi de harikaydı. Elimizde değerlendirmek üzere bir çok da veri oldu. Ancak bu yıldan sonra hizmet vermeme kararı moralimi bozdu açıkcası - link. Google Wave üzerine daha fazla deney yapmayı bırakıp Google Docs ve Etherpad üzerinden deneyler yapmaya yöneleceğim.
Kendi wave sunucumu da kolaylıkla kurabilirdim aslında, zira yıl sonuna gelmeden tam anlamıyla açık kaynak bir proje olacağı söyleniyor. Bu konuda fikrim değişebilir.

Asıl mesele bu tarz hizmetlerin sonu hep böyle oluyor. Yani herhangi bir kar amacı olmayan hatta bir gelir politikası dahi olmayan tam anlamıyla ücretsiz collaborative çalışma imkanı sunan hizmetler. Hala hizmet verenler ise profesyonel anlamda hizmet verip "pro" üyelikleri ve kuruluşlara özel destekleri ile hizmet veren servisler oluyor. Gerçi Google'un neden Wave'i kapatacaklarına dair yaptığı açıklamayı gayet anlamlı bulsam da insanlar adına utanmıyor değilim :). Ne yalan söyleyim ben de bir çok Google fanı gibi bu projenin inanılmaz derece tutacağını düşünüyordum.

Bir de kendimce çok kısa bir değerlendirme yapayım. Projenin ilgi görmemesinin nedenleri arasında ki en büyük maddelerin şunlar olabilecğeini düşünüyorum
1. Evet gerçek zamanlı ancak Etherpad kadar hızlı değil. Etherpad 0,5sn de bir eşleme yaptığını söylüyoru bence bu rakam sanki Googl Wave de daha düşük gibiydi.
2. Tester iken yaşadığımız sık sık browser çökmelerini herkesin kullanımına açıldıktan sonra da yaşamaya başladık. Kullanıcı bunu asla affetmiyor.
3. Yavaşlığı sadece yazarken gezerken değil gezinirken dahi vardı.

Bu tarz platformlar hızlı ve ararlı olmalı. Blogger'ın yavaşlaması ve hatta bir ara sık sık hatalar vermesine karşın çok büyük bir tepki gelmezken Wave'in yavaş olması ve browser çökmelerine neden olması kullanıcı tarafından affedilmedi. Teknik ya da teknik olmayan portallarda genelde bu yavaşlık meselesi konuşuldu.



Tuesday, June 22, 2010

Google Command Line Tool

Google Cl diye bir şey çıkmış. Gerçekten harika.

İşte örnekleri


  • Blogger
  • $ google blogger post --title "foo" "command line posting"
  • Calendar
  • $ google calendar add "Lunch with Jim at noon tomorrow"
  • Contacts
  • $ google contacts list name,email > contacts.csv
  • Docs
  • $ google docs edit --title "Shopping list"
  • Picasa
  • $ google picasa create --title "Cat Photos" ~/photos/cats/*.jpg




Konuyu irdeleyin 

Thursday, March 11, 2010

Google Visualization Api - Interactive charts ve UTF-8 Karakter Sorunu

Visualization Api içinde "Interactive charts" son derece pratik ve gelişmiş bir şekilde grafik sunum ihtiyaçlarınızı karşılıyor. "Image Charts" için herhangi bir js kütüphanesi yüklemenize gerek olmazken bunda Google jsapi ile Visualization Api yi yükletiyorsunuz sayfanıza. Detay : http://code.google.com/apis/visualization/documentation/using_overview.html

Ben de harita üzerinden ağırlık dağılımını göstermek için kullandım şu şekilde

<script type="text/javascript" charset="utf-8" src="http://www.google.com/jsapi">
</script>
<script type="text/javascript" charset="utf-8">
    google.load('visualization', '1', {
        'packages': ['geomap']
    });
    var temp = 0;
    google.setOnLoadCallback(drawMap);


    function drawMap() {

        var data = new google.visualization.DataTable();
        data.addRows(81);
        data.addColumn('string', 'City');
        data.addColumn('number', 'Kelime Sayisi');

// ...
        data.setValue(4, 0, 'İstanbul');
        data.setValue(4, 1, 57);

        data.setValue(5, 0, 'Ankara');
        data.setValue(5, 1, 42);
// ...

var options = {};
   options['region'] = 'TR';
   options['colors'] = [0xA493FF, 0x4C51CD, 0x00065E]; // colors
   options['dataMode'] = 'regions';
   options['width'] = '540px';
   options['height'] = '348px';
 
   var container = document.getElementById('map_canvas');
   var geomap = new google.visualization.GeoMap(container); 
  
   var ikinci_sehir="";
   var ilk_sehir="";
   
  google.visualization.events.addListener(geomap, 'regionClick', function(e) {   
   sehir=e['region']; // tıklanan sehri su sekilde getirir : TR-06   : TR-PLAKA  
 });
 
 geomap.draw(data, options);
 
    };


Çok da güzel oldu aslında.



Fakat tek sorun Türkçe karakterlerde.
Tam şurada şehir adlarını eklediğim yerde :
  
        data.setValue(4, 0, 'İstanbul');
        data.setValue(4, 1, 57);
        data.setValue(5, 0, 'Ankara');
        data.setValue(5, 1, 42);

Bu grafiğin aynısı google analytics'de de var ve fakat orada Türkçe karakter sorunu yok. Yani çözümsüz bir şey değil fakat henüz çözüm bulamadım.

Mesela neler yaptığımı da yazayım, "şunu yap bunu yap öyle dene" demeyin yani :

1. Sayfanın karakter kodlaması gerçekten de UTF-8 mi diye kontrol ettim
2. header ('Content-type: text/html; charset=utf-8'); yaptım üstüne bir de
3. javascript tagına charset="utf-8" ekledim
4. google jsapi'ye karakter kodlaması parametresini utf-8 verdim bir d eöyle yüklettim
5. Gelen şehir isimleri "string" değerlerimi veritabanından doğrumu çekiyorum
6. iconv ile utf-8 gelen şehir adlarını bir de iso formatına çevirdim.
7. 6 dakininin tam tersini yaptım
8. bıktım usandm bıraktım
9. google araması yaptım
10. uykum geldi bu yazıyı yazdım


Çözüm bulur bulmaz yazacağım buraya. Fakat lurda okuyan bir bilinçli internet kullanıcısı çözümü biliyorsa yorum olarak yazsa ne güzel olur?

Saturday, March 6, 2010

Google Maps Api : Adresten haritaya

<!-- Açıklama yaz :) -->

 <script src="http://maps.google.com/maps?file=api&v=2&key=ApiKeyinizBurayaYazılacak&sensor=true"
        type="text/javascript"></script>
       
    <script type="text/javascript">
 var geocoder;
 var map; 
 function initialize() {
 var geocoder = new GClientGeocoder();
 var map = new GMap2(document.getElementById("map_canvas"));
   geocoder.getLocations("Ankara , TURKEY", function(result){
          if (result.Status.code != 200) {
            alert('Could not geocode "' + result.name + '"');
            return;
        }
          place = result.Placemark[0];
          point = new GLatLng(place.Point.coordinates[1],
                              place.Point.coordinates[0]);
          map.setMapType(G_HYBRID_MAP);
          map.setCenter(point, 8);
          marker = new GMarker(point);
         map.addOverlay(marker);
         alert("OK");
          marker.openInfoWindowHtml(place.address);
    
   });
 
 }
  
    $(document).ready(function(){
     initialize(); 
    });

    </script>


Konuyu irdeleyin:
geocoder.getLocations : 
 - http://www.google.com.tr/search?hl=tr&rlz=1C1GGLS_trTR355TR355&q=geocoder.getLocations&btnG=Ara&meta=&aq=f&oq=
http://www.developer.com/tech/article.php/3615681/Introducing-Googles-Geocoding-Service
google maps api ref. : 
http://code.google.com/apis/maps/documentation/reference.html

Thursday, May 28, 2009

Google Chart Api'den Çok Memnunum

TAVSİYE EDİYORUM

Bir süredir google chart api kullanıyorum ve gerçekten hayat kurtarır bir etken. kod kalabalığını yok eden oldukça sevimli ve bir o kadar da profesyonel bir api. Detaylar ve örnekler kendi sayfasında verilmiş.

Yampanız gereken tek şey parametreleriniz "<img" içinde "src" a eklemek. Eğer daha da tembelseniz birisi google chart api için sihirbaz yapmış : http://www.jonwinstanley.com/charts/

Kısa bir kaç örnek:
<img src="http://chart.apis.google.com/chart?
chs=400x200
&chco=859999|efe0a0|889955
&chd=t:60,10,30
&cht=p3
&chl=friendfeed|facebook|twitter|myspace"
alt="Sample chart" />
çıktısı:

<img src="http://chart.apis.google.com/chart?
cht=lc
&chs=400x200
&chco=0077CC
&chd=t:27,25,60,31,25,39,25,
31,26,28,80,28,27,31,27,
29,26,35,70,25" />
çıktısı:

<img src="http://chart.apis.google.com/chart?
cht=s
&chco=954141
&chd=t:12,87,75,41,23,96,68,71,34,9|98,60,27,34,56,79,58,74,18,76|84,23,69,81,47,94,60,93,64,54&chxt=x,y&chxl=0:|0|20|30|40|50|60|70|80|90|10|1:|0|25|50|75|100
&chs=400x200" />
çıktısı: