{"action":"created","issue":{"url":"https://api.github.com/repos/eksisozluk/api/issues/1","repository_url":"https://api.github.com/repos/eksisozluk/api","labels_url":"https://api.github.com/repos/eksisozluk/api/issues/1/labels{/name}","comments_url":"https://api.github.com/repos/eksisozluk/api/issues/1/comments","events_url":"https://api.github.com/repos/eksisozluk/api/issues/1/events","html_url":"https://github.com/eksisozluk/api/issues/1","id":191594773,"number":1,"title":"AMA","user":{"login":"gokaygurcan","id":1509413,"avatar_url":"https://avatars1.githubusercontent.com/u/1509413?v=3","gravatar_id":"","url":"https://api.github.com/users/gokaygurcan","html_url":"https://github.com/gokaygurcan","followers_url":"https://api.github.com/users/gokaygurcan/followers","following_url":"https://api.github.com/users/gokaygurcan/following{/other_user}","gists_url":"https://api.github.com/users/gokaygurcan/gists{/gist_id}","starred_url":"https://api.github.com/users/gokaygurcan/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/gokaygurcan/subscriptions","organizations_url":"https://api.github.com/users/gokaygurcan/orgs","repos_url":"https://api.github.com/users/gokaygurcan/repos","events_url":"https://api.github.com/users/gokaygurcan/events{/privacy}","received_events_url":"https://api.github.com/users/gokaygurcan/received_events","type":"User","site_admin":false},"labels":[{"id":490175508,"url":"https://api.github.com/repos/eksisozluk/api/labels/important","name":"important","color":"b60205","default":false},{"id":487920064,"url":"https://api.github.com/repos/eksisozluk/api/labels/wontfix","name":"wontfix","color":"ffffff","default":true}],"state":"open","locked":false,"assignee":{"login":"gokaygurcan","id":1509413,"avatar_url":"https://avatars1.githubusercontent.com/u/1509413?v=3","gravatar_id":"","url":"https://api.github.com/users/gokaygurcan","html_url":"https://github.com/gokaygurcan","followers_url":"https://api.github.com/users/gokaygurcan/followers","following_url":"https://api.github.com/users/gokaygurcan/following{/other_user}","gists_url":"https://api.github.com/users/gokaygurcan/gists{/gist_id}","starred_url":"https://api.github.com/users/gokaygurcan/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/gokaygurcan/subscriptions","organizations_url":"https://api.github.com/users/gokaygurcan/orgs","repos_url":"https://api.github.com/users/gokaygurcan/repos","events_url":"https://api.github.com/users/gokaygurcan/events{/privacy}","received_events_url":"https://api.github.com/users/gokaygurcan/received_events","type":"User","site_admin":false},"assignees":[{"login":"gokaygurcan","id":1509413,"avatar_url":"https://avatars1.githubusercontent.com/u/1509413?v=3","gravatar_id":"","url":"https://api.github.com/users/gokaygurcan","html_url":"https://github.com/gokaygurcan","followers_url":"https://api.github.com/users/gokaygurcan/followers","following_url":"https://api.github.com/users/gokaygurcan/following{/other_user}","gists_url":"https://api.github.com/users/gokaygurcan/gists{/gist_id}","starred_url":"https://api.github.com/users/gokaygurcan/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/gokaygurcan/subscriptions","organizations_url":"https://api.github.com/users/gokaygurcan/orgs","repos_url":"https://api.github.com/users/gokaygurcan/repos","events_url":"https://api.github.com/users/gokaygurcan/events{/privacy}","received_events_url":"https://api.github.com/users/gokaygurcan/received_events","type":"User","site_admin":false}],"milestone":null,"comments":1,"created_at":"2016-11-24T21:49:02Z","updated_at":"2017-07-03T19:17:51Z","closed_at":null,"body":"\r\n# Neden?\r\n\r\nNeden böyle bir proje başlatıldı? Yıl 2017'ye yaklaşırken, aşağı yukarı 5 senedir `ekşisözlük` public API ismi ortalıkta dolaşıyor. Bir sürü kişi, özellikle sub-etha olayına bulaşmış ya da bulaşacak olanlar, bunun hayaliyle yaşıyor. Yetkililer konuyla ilgili tarih ya da süreç hakkında açıklama yapmıyor ve olayı sürekli geciktiriyor/erteliyor gibi davranıyor. \r\n\r\nBirisi çıksa dese ki \"Arkadaşlar, biz reklam geliriyle ayakta kalan bir şirketiz, API üzerinden içeriği sağlamanın bize gelir sağlamak yerine zarar vereceğine inanıyoruz. Bu ve bunun gibi sebepler neticesinde, public bir API beklemeyin.\" bunu rahatlıkla anlayabileceğimizi ve hatta hak verebileceğimizi düşünüyorum. Fakat durum öyle de değil, [subetha forum](https://groups.google.com/forum/#!forum/subetha)'una bakarsanız, bir çalışma var gibi ortada. Tarih konusu halen belirsiz. API ne sunacak? Sadece entry/başlık gibi bilgilere mi erişilecek? Bu konular da alabildiğine belirsiz. \r\n\r\nSonuç olarak, hem API ile ilgili beklentileri anlamak adına, hem de bu durumun artık kaçınılmaz bir hale gelmesi sebebiyle böyle bir proje başlatıldı. Projenin, organizasyonun, hesapların ve sahiplerinin `ekşisözlük` yönetimi ve/veya `ekşi teknoloji` firmasıyla hiçbir alakası yoktur; fakat istemeleri durumunda kendilerine kapımız sonuna kadar açıktır. /ping @ssg\r\n\r\nDaha önce de birçok kişi başta `ekşisözlük` olmak üzere, tüm sözlükler için API yazmayı denedi (/ping @azer). Bu projenin farkı biraz daha planlı ve programlı şekilde hareket edilecek olması diyebilirim kısaca. @GitHub'da @eksisozluk organizasyonunu açmak, @Heroku 'da `eksisozluk` app'ini yaratmak, @npm 'de `eksisozluk` paketini yaratmak gibi biraz daha amaca yönelik isimler kullanmak bunun bir diğer göstergesi. \r\n\r\n---\r\n\r\n# Nasıl?\r\n\r\nOrganizasyon altında 2 temel repository mevcut: \r\n- https://github.com/eksisozluk/eksisozluk (https://www.npmjs.com/package/eksisozluk)\r\n- https://github.com/eksisozluk/api (https://eksisozluk.herokuapp.com/)\r\n\r\nBunlardan ilki, npm'de bulunan `eksisozluk` paketine ait. İkincisi ise Heroku'daki homepage, login ve API endpoint'lerine ait. `eksisozluk` paketi biraz daha genel kullanıma yönelik olup, başkaları tarafından da rahatlıkla kendi projelerine eklenip kullanılabilecek yapıda olacak. API ise, bu paket üzerinden istenen sonuçları döndürme işini üstlenecek. \r\n\r\nBaşlangıçta, GitHub OAuth ile kayıt olup bir `accessToken` alacak, sonrasında tüm API işlemlerinizi bu token yardımıyla yapıyor olacaksınız. Neden? Çünkü bir şekilde toplam kullanıcı sayısı, ilerde kullanmak için güzel bir veri. Bu demek değil ki yapılacak tüm işlemler kayıt altına alınacak, aksine, tüm kod ve projeye ait tüm diğer kısımlar anonim şekilde sorgu yapmaya ve cevap almaya destek verecek şekilde tasarlanacak. Yani bir diğer deyişle, `ekşisözlük` ya da bu organizasyon kimin ne yaptığını bilmiyor olacak. Toplam yetkilendirilmiş kullanıcı sayısı hariç, ki o da GitHub'ın sağladığı bir veri, kimseye ait kullanıcı adı, email adresi, ad soyad, yaşadığı şehir gibi veriler saklanmayacak ve/veya başkalarının erişimine sunulmayacak. \r\n\r\nBahsettiğim şey yalnızca şöyle bir ekrandan ibaret, merak edenler için:\r\n![image](https://cloud.githubusercontent.com/assets/1509413/20641827/1bc83ad2-b409-11e6-8746-e74cd3d863ef.png)\r\n\r\n\"Tamam her şey güzel de, ne zaman kullanmaya başlıyoruz?\" diye soranlar için, \r\n`/entries`, `/titles` ve `/users` endpoint'leri için `GET` methodları ilk öncelik. Sonrasında, yapılabilecekler doğrultusunda `POST`, `PUT` ve `DELETE` dener; başlık açmayı, entry ekleme/değiştirme/silmeyi başarabiliyor muyuz görürüz. İlk üçlü bitmeden bir şey söylemek zor olsa da önümüzdeki hafta ortasında bir şeyler yapabiliyor olacağımızı düşünüyorum.\r\n\r\n\r\n---\r\n\r\n# Q&A\r\n\r\n> `ekşisözlük` yönetimi bu duruma ne diyor?\r\n- Bu konudan bahsettiğim herkesle aynı şeyi konuştuk ister istemez. Sanırım en büyük sorulardan bir tanesi bu. Açıkçası, bilmiyorum. Böyle bir oluşumdan haberleri şu an için yok, haberdar oldukları zaman ne düşüneceklerini bilmek güç. Umarım GitHub, Heroku ve npm yönetimlerine ulaşıp, \"İsim hakları bize ait, verin bunları bize\" gibi bir çaba içine girmezler. Bunun yerine beraber sürdürebileceğimiz, istekli insanların da katkıda bulunabileceği, mümkün olduğunca transparan bir yapıda devam etmeyi başarabilmeyi umuyorum. Yukarıda da belirtildiği üzere, böyle bir API, reklam gelirine darbe vuracağı için tek temennim haftasonu eğlencesi olarak başladığım bu projenin yasal bir sürece dönüşmemesi ;)\r\n\r\n> Sen kimsin?\r\n- A concerned 3rd party.\r\n\r\n> Her şey tamam da data nereden geliyor?\r\n- Sayfaya request atıyoruz, gelen sonucu parse edip ilgili kısımları çekiyor sonra da result olarak döndürüyoruz. Yavaş mı olacak? Eh biraz. \"Hiç olmamasındansa 2-3 saniye sonra cevap almayı tercih ederim\" diyen bir tek ben olamam.\r\n\r\n> Kullanılacak dil ne olacak? \r\n- JavaScript. \r\n\r\n> Nasıl katkıda bulunabilirim?\r\n- [CONTRIBUTING.md](https://github.com/eksisozluk/api/blob/master/.github/CONTRIBUTING.md) zaman içinde daha faydalı olana kadar, şimdilik `master` 'ın npm ya da Heroku'ya bağlı olduğunu, tüm geliştirmenin `develop` 'ta yapıldığını söyleyebilirim. Lütfen geliştirmelerinizi ve bugfix'lerinizi `develop` üzerinde yapıp, o şekilde PR açın. PR'dan önce `npm test` ile hata almadığınızdan emin olursanız tadından yenmez. Daha ayrıntılı bir rehber önümüzdeki hafta içinde hazır olur muhtemelen.\r\n\r\n> Bazı şeyler Türkçe, bazıları İngilizce. Ne iş?\r\n- Bildiğimiz üzere, GitHub, Heroku ve npm dünyanın her yerinden insanların kullandığı platformlar. Tüm commit mesajları, tüm yorum satırları, tüm açıklamalar bu yüzden İngilizce ve öyle de kalacak. Türkçe olması muhtemel üç şey var: homepage, dökümantasyon (İngilizce'ye ek olarak), ve başkalarından gelecek olan issue'lar. \r\n"},"comment":{"url":"https://api.github.com/repos/eksisozluk/api/issues/comments/312717477","html_url":"https://github.com/eksisozluk/api/issues/1#issuecomment-312717477","issue_url":"https://api.github.com/repos/eksisozluk/api/issues/1","id":312717477,"user":{"login":"gokaygurcan","id":1509413,"avatar_url":"https://avatars1.githubusercontent.com/u/1509413?v=3","gravatar_id":"","url":"https://api.github.com/users/gokaygurcan","html_url":"https://github.com/gokaygurcan","followers_url":"https://api.github.com/users/gokaygurcan/followers","following_url":"https://api.github.com/users/gokaygurcan/following{/other_user}","gists_url":"https://api.github.com/users/gokaygurcan/gists{/gist_id}","starred_url":"https://api.github.com/users/gokaygurcan/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/gokaygurcan/subscriptions","organizations_url":"https://api.github.com/users/gokaygurcan/orgs","repos_url":"https://api.github.com/users/gokaygurcan/repos","events_url":"https://api.github.com/users/gokaygurcan/events{/privacy}","received_events_url":"https://api.github.com/users/gokaygurcan/received_events","type":"User","site_admin":false},"created_at":"2017-07-03T19:17:51Z","updated_at":"2017-07-03T19:17:51Z","body":"Merhaba @cantsdmr,\r\n\r\nAçıkçası devam etmek istiyorum fakat her taraftan yazmama ve mention/tag'lememe rağmen kimseden cevap alamayınca durup bi düşünmeye karar vermiştim. İki gün sonra kalkıp saçma sapan yasal süreçler başlatacaklarsa bunu baştan bilip hareket etmek istemiştim oysa ki. \r\n\r\nHer türlü geliştirmeye açığım ve mutluluk duyarım."}}
{"actor":{"display_login":"gokaygurcan"}}