View profile

Yazılımcılar İçin Haftasonu Okumaları - Sayı #15(Algoritmalar, Tasarım Prensipleri, Kod Basitliği ve daha fazlası)

Merhaba. Geçen hafta gibi bu hafta da Türkçe teknik makale açısından çok bereketli bir haftaydı. Bun
Yazılımcılar İçin Haftasonu Okumaları - Sayı #15(Algoritmalar, Tasarım Prensipleri, Kod Basitliği ve daha fazlası)
By Muhammed Hilmi Koca • Issue #15 • View online
Merhaba.
Geçen hafta gibi bu hafta da Türkçe teknik makale açısından çok bereketli bir haftaydı. Bunun yansıması olarak da tıka basa dolu bir sayı ortaya çıktı. Evet 15. sayı ile beraberiz aziz kârîlerim.
Bu hafta yeni bir başlık açmayı düşündüm: Sosyal Medya. Zaman zaman Twitter veya Linkedin gibi platformlarda paylaşılası floodlara veya tartışmalara denk geliyorum. Blog halinde olmayınca da buradan paylaşmıyordum. Bu yüzden bu başlığı eklemeyi düşündüm. Hayırlısı bakalım..

Tasarım Prensipleri
Nesne yönelimli programlamanın etiketten ibaret olmaması için dikkat edilmesi gereken bazı prensipler var. Örneğin C# nesne yönelimli bir dil ama C# ile geliştirilen her uygulama -gerçek- nesne yönelimli uygulama olmuyor. Böyle olmasını sağlayan belli tasarım prensiplerimiz var. Bunların da en meşhurları, SOLID( Single responsibility, Open/closed, Liskov substitution, Interface segregation, Dependency inversion) prensipleri.
Şaban Durna, bu prensipleri anlatan bir yazı dizisine başlamış. İlk yazı, doğal olarak Single Responsibility. Ama sıradışı bir giriş ve örnekle bu prensibi anlatıyor.

Port Ney?
Gökhan Şengün, bu haftaki yazısında ilginç bir problemi anlatıyor: Port Exhaustion. Yani bir istemcideki(client) bağlantı yapabilecek boş portların tükenmesi. Bunun nasıl olabileceğini düşünürken proxy sunucularında yaşanabileceğini öğrendim. Aynı zamanda bir TCP/UDP bağlantısı için kaç port kullanılabileceği ve portların tahsisinde nasıl bir mantık kullanıldığını da bu makaleden öğrenmiş oldum. 

Sizin Markanız Ne?
Adem İlter, geçtiğimiz günlerde haziran ayında yazdığı bir yazısını tekrar paylaştı. Belli anahtar kelimeler vererek (ör. Frontend, security vb.) Bu kelimeleri duyduğunda aklına kimlerin geldiğini söylüyor. Akabinde de bu insanların nasıl bu anahtar kelimelerle eşleştiğini, daha doğrusu belli anahtar kelimelerle insanların aklında kalabilmemiz için neler yapmamız gerektiğinden bahsediyor.

Dokümantasyon Okuma 
Yeni bir teknoloji, dil, framework, kütüphane vb. öğrenirken en temel başucu kaynaklarından biri ilgili konunun resmi dokümanları. Peki bu dokümanları en verimli şekilde nasıl okuyabiliriz? Tarık Güney, “Dokümantasyon okurken kaybolmak” yazısında bu meseleyi irdeliyor. 

Yurtdışında Çalışma
Son dönemin cazip meselelerinden biri yurtdışında çalışma. Tercih edilen ülkeler arasında da muhtemelen Ankara Anlaşması’ndan dolayı İngiltere, başı çekiyordur. Mert Susur da İngiltere’de çalışan Türk yazılımcılardan biri. Ama kendisi Ankara Anlaşması ile gitmemiş. Kendi tecrübeleri üzerinden İngiltere’de iş bulma yollarını anlatan bir yazı yazmış. Benim dikkatimi çeken en önemli şey, yazılımcılardan default olarak Unit Test, Docker, Continuous Integration vb. kavram ve teknolojilere hakim olmasının beklenmesi oldu. Almamız gereken çok yol var. 
Benzer şekilde Candost Dağdeviren de geçtiğimiz aylarda Almanya’da iş bulma ve işe başlama süreçlerini anlatmıştı. 

Yazılımcı Lazım
B. N. 32 yaşında. Girişimci olacak. Mükemmel bir fikri var. Parası yok. Beleşe veya girişimden 3–5 hisseye yazılımcı arıyor. Fikri harika olduğu için de çalınma ihtimaline karşı henüz kimseye söylemiyor. 
Sanırım bu profili yakından tanımayan bir yazılımcı yoktur. Giray Girişken de bu profilin hikayesini oldukça eğlenceli bir şekilde anlatıp, masanın diğer tarafındaki kişi olan bir yazılımcıların nasıl hareket etmesi gerektiğinden bahsediyor

Girişim, Yatırım
Geçen sayıda Countly CEO’su Onur Alp Soner’in Countly’nin hikayesini ve şirketteki uzaktan çalışma kültürünü anlattığı yazılarından bahsetmiştim. Taze çıkan bir yazısında da yatırım arama serüvenlerini ve tecrübeleri üzerinden girişimlerin yatırım aramaları/bulmaları konusundaki görüşlerini yazmış. 

Kod Basitliği
Birkaç yıldır Türk bloggerlar arasında çok güzel bir trend var: İngilizce teknik kitaplardan Türkçe notlar çıkarıp yayımlamak.(Vaay mis gibi Boca konusu). Bu kapsamda Malik Masis, yazılım dünyasının önemli kitaplarından Code Simplicity’den çıkardığı notları paylaşıyor. Geçen hafta itibariyle serinin 7. yazısını yayımladı. 

Java Okumaları
Yukarıda bahsettiğim kitaplardan notlar çıkarmanın farklı bir versiyonunu da Suat Karakuşoğlu gerçekleştiriyor: video çekip, kitaptan dikkatini çeken kısımları kod üzerinde anlatıyor. Şu an başladığı kitap ise Effective Java. Ben henüz ilk bölümü izledim ve baya faydalı buldum. Ayrıca bu videoda bir yazılım dilinin açık kaynak olmasının güzelliğini de görebiliyorsunuz. 

Algoritmalar Algoritmalar Algoritmalar Algoritmalar Alg…
Algoritmalar -bana göre- yazılımın mühendislik tarafını teşkil ediyor. Ve bence temelden öğrenmek, unuttukça hatırlamak gerekiyor. Bu aralar ben de Yaşar Safkan Hoca‘nın Youtube'daki Algoritmalar ve Veri Yapıları derslerini izlemeye başladım. Akın Kaldıroğlu Hoca da moderatör tadında iştirak ediyor. Her yazılımcının izlemesi şart. Kesin bilgi. Yayalım.
O esnada bazı temel algoritmalarla alakalı birkaç yazıya da denk geldim: Dijital imzaları, RSA ve DSA algoritmalarını anlatan şu yazı ile Diffie-Hellman anahtar değişimini anlatan şu yazı. Anlatıcı, adaşım Muhammed Karalar.
Diğer yandan bu hafta Barış Ceviz de yine bir algoritmayı anlatan ve tam sevdiğim tarzda bir yazı yayımladı: Shazam'ın müzik arama algoritması nasıl çalışır? Okuyalım, okutalım efendim.

İpuçları
Geçtiğimiz haftalarda biri Ionic ile uygulama geliştirme ve diğeri Go ile uygulama geliştirme üzerine 2 tane “ipuçları” içerikli yazı yayımlandı. Bu tip yazıların en önemli yönü, direkt tecrübe aktarımı olması. Yani tutoriallarda ifade edilmeyen veya üzerinde durulmayan püf noktaların, o teknoloji üzerinde uzun süre çalışan insanlar tarafından yılların tecrübesi olarak aktarılması. Ionic yazısı Bora Kaşmer'e, Go yazısı ise Oğuzhan Yılmaz'a ait.

Kısa Kısa
  • Zeki Seskir, yeni bir teknoloji ortaya çıkarmak için takip edilmesi gereken adımları içeren Teknoloji hazırlık seviyelerini anlatmış
  • Celil Bozkurt, özellikle yeni mezunları ilgilendiren bir iş bulma kılavuzu oluşturmuş
  • Ziyahan Albeniz, Haftanın Hackleri'nde Tor Browser üzerinde script çalıştırmayla ilgili bir zafiyeti ve normal tarayıcılarda adres satırı üzerinden saldırıya olanak sağlayan ilginç bir zafiyeti anlatmış.
  • Ahmet Usta, ABD'de hayata geçirilen dijital dolar denilebilecek bir girişimden ve kripto paraların geleceğini nasıl etkileyebileceğinden bahsetmiş.

Haberler

Sosyal Medya
Özellikle öğrenci arkadaşların şu Linkedin gönderisini ve altındaki onlarca yorumu tek tek okumasını tavsiye ediyorum:

Girişimcilik hakkında bir flood.
Ahmet Durmuşoglu
Genellikle genç arkadaşlar hep soruyor nereden başlayalım? Nasıl bir fikirle başlamalı? Girişimci olmak için fikri nerede aramayalım? Fırsat nerede? Ben kendimce son 10 sene içerisinde buna bir cevap buldum. Sizinle de örnekleriyle paylaşmak istiyorum.
2:29 PM - 22 Sep 2018
TED

Bitiriken
Nihayet bitti. Faydalı olmasını umuyorum.
Beğendiyseniz paylaşmayı unutmayın.
Zâtınıza çook iyi davranın
Bana ulaşmak için: LinkedinTwitter
Daha fazla motive etmek için: Patreon

TED: Parmak iziniz sandığınızdan çok daha fazlasını açığa çıkarıyor
Simona Francese: Parmak iziniz sandığınızdan çok daha fazlasını açığa çıkarıyor | TED Talk
Did you enjoy this issue?
Muhammed Hilmi Koca

Okuduğum, istifade ettiğim ve başka yazılımcılar için de faydalı olacağını düşündüğüm bir kısım makale ve haberleri haftalık olarak derleyip kısa kısa tanıtıyorum.
Cumartesi sabahları posta kutunuzu kontrol edin!

If you don't want these updates anymore, please unsubscribe here.
If you were forwarded this newsletter and you like it, you can subscribe here.
Powered by Revue