Skip to content
/ skynet Public
forked from buraksenyurt/skynet

Some kinds of programming tutorials on MacOS/Windows/Linux.

Notifications You must be signed in to change notification settings

gkhanC/skynet

 
 

Repository files navigation

skynet

Kodlama tarafında pas tutmamak ve iyi vakit geçirmek adına internetten bulup çalıştığım bazı konuların örnek kodlarını burada toplamaya çalışıyorum. README.md dosyaları içerisinde amacımı ve az biraz proje başlangıç adımlarını da tarifliyorum. Bir sene sonra aynı örneğe tekrar dönüp baktığımda kodlar tanıdık geliyor ve anlıyorsam çalışmam boşa gitmemiş demektir. Ve sen sevgili yazılım sevdalısı arkadaşım; giriş yazılarından faydalanıp proje açılışlarını yapabiliyorsan, kodları kendi ortamında çalıştırabiliyorsan, sağıyla soluyla oynayarak bozup düzeltiyor hayal gücünle bir şeyler ekliyorsan, senin için de işe yaramış demektir. (Asla bir Saturday Night Works olamayacak ama olsun.)

Konular

Burada Ahch-To (MacOS Mojave - Intel Core i5 1.4Ghz, 4 Gb 1600 Mhz DDR3) üzerinde geliştirmeye çalıştığım kişiel öğretilerim yer almaktadır. Örnekleri bir süredir Heimdall isimli Ubuntu yüklü makinede geliştiriyorum. Ancak ara sıra şirket bilgisayarındaki Windows'u da kullandığım oluyor. Heimdall üstünde 64 bit Ubuntu yüklü. 16GB Ram kapasitesine sahip. 4 çekirdekli Intel i5 işlemcisi ve GeForce GTX 1050 ekran kartı var. Bir masaüstü oyun bilgisayarı ama onu Linux üstünde bir şeyler öğrenmek için kullanıyorum. Ahch-To kod adlı sistem ise bir MacOS. 4GB Ram'i olduğu için oldukça yavaş. Bu nedenle çok sık uğramıyorum.

Projelerdeki zorluk seviyelerini T-Shirt Size ile belirtmeye çalıştım. Beni ne kadar zorladıklarını az çok anlayabiliyorum. Örneğin XL, o örnekte çok zorlandığım anlamına geliyor. 15nci örnekle birlikte uygulamalar içerisine bombalar (zararlı değil eksik kodlama veya strateji) koymaya karar verdim. Yani örnek çalışıyor ama önemli bir eksiği var. İyice test edilince ortaya çıkan ve repoyu indiren tarafından çözülmesi beklenen.(Uygulamaya Bırakılan Bomba! kısımlarına dikkat)

No Konu İlerleme Seviye Ortam Bomba Soru? Ödev?
23
22 Go Dilinin Temellerini Hatırlamak %50 M Heimdall Var
21 .Net Core Üzerinde Roslyn Pratikleri Yapmak %50 S Heimdall Var Var
20 Bir Web API Hizmetinde Request'ler ile CQ Arasında Mediator Kullanmak Tamamlandı M Heimdall Var Var
19 Daha Kolay REST Api Yazmak için Angel Paketini Kullanmak Tamamlandı S Heimdall Var Var
18 DART Programlama Diliyle Az Biraz Uğraşmak %50 M Heimdall Var Var
17 MQTT Protokolünün Kullanıldığı Basit Bir Publisher/Subscriber Senaryosu Tamamlandı S Heimdall Var Var
16 Bir Nginx Container'ını Load Balancer Yetkinliğiyle Kullanmak %90 L Heimdall Var Var
15 Eğlenceli SignalR (Turşunun iyisi limonla mı yapılır yoksa sirkeyle mi?) %80 M Heimdall Var
14 Bir Asp.Net Core Web Api Projesinde Generic Repository Deseninin Kullanımı %75 L Heimdall
13 Bir .Net Core Web Api Bir Nodejs Bir Python Servisi Bir Araya Gelip docker-compose'a Misafirliğe Gitmişler Tamamlandı XL Heimdall
12 Sequelize Kullanılan Bir NodeJs Rest Servisi Geliştirmek %80 S Heimdall
11 Basit Bir .Net Core Worker Servisi (Linux Daemon Olarak) Tamamlandı S Heimdall
10 Python Tarafında ProtoBuf Serileştirme Tamamlandı S Heimdall
09 Distributed Cache Gerekiyorsa Elbette Redis Tamamlandı S Heimdall
08 Yine Yeni Yeniden ELK (Bu sefer E ve K için docker-compose işin içinde) Tamamlandı M Heimdall
07 Sıkça Duymaya Başladığım Deno'ya Minik Bir Merhaba %80 M Heimdall
06 DT-Training (.Net Core Eğitimi için Hazırlık) %20 XL Heimdall Windows 10 Var Var
05 gRPC Tabanlı Basit Bir .Net Core Servisi Geliştirmek ve Kullanmak %70 M Windows 10
04 IKU Meetup (MongoDB, Web API, Unit Test) Tamamlandı L Windows 10
03 Razor Öğreniyorum %80 M Windows 10
02 MongoDB ile Bir GO Uygulamasını Konuşturmak %85 L Ahch-To
01 Ruby Tarafından Redis (Docker bazlı) Veritabanı ile Konuşmak %95 M Ahch-To

Hashtag

Örnekleri yaparken kendimce bir hashtag bilgilendirmesi de yapmaya çalışıyorum. Nelerden bashedilmiş sonradan hatırlayayım diye.

#cSharp #dotNetCore #docker #dockerCompose #nodejs #deno #gRPC #workerService #dameon #rest #nginx #pm2
#redis #distributedCache #razor #ruby #go #express #python #flask #postrgres #sqlite #migration #morgan
#entityFramework #elasticSearch #kibana #logstash #sequilize #protobuf #unitTest #xUnit #mongoDb #upstream
#repositoryPattern #genericRepository #dependencyInjection #async #await #curl #signalR #libman #hub #loadBalancer
#dart #future #asyncFor #pub #angelFramework #MediatR #CQRS #roslyn #dotnet-script #pointer

Kolay Klasör Açma

Gerek saturday-night-works olsun gerek skynet, çok sık tekrar ettiğim işlerden birisi de örneğe ait klasörler (genelde No ile başlayan ana klasör ile src ve assets ile ilgili alt dizinler) ile Readme dosyasını açmak. İşi biraz kolaylaştırmak adına easy_setup.sh isimli bash script dosyasını kullanmaya karar verdim. Şimdilik iş görüyor.

bash_screen.png

Nasıl Çalışmalı?

Buradaki öğretileri çalışmak isteyenlerin en önemli destekçileri klasörlerdeki README.md dokümanları ve kodlardaki yorum satırlarıdır. Örneklerin amacı README giriş kısımlarında kısaca ifade edilmektedir (Samimi bir dil kullanılmaya özen gösterdim) Çalışırken bu kılavuzdan yararlanarak örneği/örnekleri en başından itibaren kendi sisteminizde yapmaya çalışmak çok daha yararlı olur. İster Windows ister Linux ister MacOS olsun, örneğin oluşturulması için gerekli ortamı kurgularken karşılaşacağınız sorunları çözmek bile size önemli bir tecrübe kazandıracaktır. Bazı örneklerdeki eksik kısımları tamamlamaya çalışmak da aynı şekilde.

## Çalışma Tekniğim

Ahch-To üzerindeki Skynet çalışmalarımda pomodoro tekniğini kullanıyorum. Buna göre genelde 22:00 sularında masa başına geçiyorum ve 4x25 dakikalık çalışma periyotları uyguluyorum. Her pomodoro arasında standart olarak 5 dakikalık dinlenme molası veriyorum. Zamanlayıcı için tomato-timer sitesinden yararlanıyorum.

About

Some kinds of programming tutorials on MacOS/Windows/Linux.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

  • C# 55.5%
  • Go 12.4%
  • Dart 9.3%
  • HTML 9.0%
  • JavaScript 6.2%
  • Ruby 2.6%
  • Other 5.0%