4 Ocak 2021 Pazartesi

Üniversitelerde Not Sistemi: Harf Notları, 4.0 Sistemi ve 100'lük Sistem

Üniversitelerde "not sistemi," öğrencinin akademik performansını değerlendiren ve bu performansı belirli bir ölçekte gösteren bir sistemdir.


Üniversitelerde yaygın olarak kullanılan not sistemleri şunlardır:

Harf Not Sistemi

Harf not sistemi, öğrencinin derslerdeki başarısını A, B, C, D ve F gibi harflerle ifade eden bir sistemdir. Her harf notunun karşılığı olan bir puan değeri vardır. Örneğin:

  • A (90-100 puan arası): Mükemmel
  • B (80-89 puan arası): İyi
  • C (70-79 puan arası): Orta
  • D (60-69 puan arası): Geçer
  • F (0-59 puan arası): Başarısız
Burada verilen puanlar örnektir...

4.0 Not Sistemi

Bu sistemde, öğrencilerin derslerden aldığı harf notlarının karşılığı olan bir 4.0 ölçeği kullanılır. Örneğin:

  • A (4.0): Mükemmel
  • B (3.0-3.9): İyi
  • C (2.0-2.9): Orta
  • D (1.0-1.9): Geçer
  • F (0.0-0.9): Başarısız

100'lük Not Sistemi

Bazı üniversiteler, öğrencilerin notlarını 100 üzerinden değerlendirir. Bu sistemde her ders için alınan puan, öğrencinin diploma notuna katkıda bulunur. Örneğin:

  • 90-100: Mükemmel
  • 80-89: İyi
  • 70-79: Orta
  • 60-69: Geçer
  • 0-59: Başarısız

Genel Not Ortalaması (GPA)

Genel not ortalaması (GPA), öğrencinin tüm derslerden aldığı notların ortalamasıdır ve genellikle 4.0 veya 100'lük sistemde ifade edilir. Diploma üzerinde, öğrencinin mezuniyet notu genellikle bu ortalama ile gösterilir.

Her üniversitenin kendi not sistemi ve değerlendirme yöntemleri olabilir. Bu nedenle, spesifik bir üniversitenin not sistemini öğrenmek için o üniversitenin akademik yönetmeliklerine bakmak faydalı olacaktır.

2 Aralık 2020 Çarşamba

35 yaşından sonra yazılımcı olunur mu?

Evet, 35 yaşından sonra da yazılımcı olabilirsiniz. Yaş sadece bir sayıdır ve bir kişinin yeni beceriler öğrenmesi veya kariyer değiştirmesi için bir engel değildir. Yazılım geliştirme gibi teknoloji alanları, yetenek, öğrenme isteği, pratik ve deneyim gibi faktörlere dayalıdır.

yazılımcı olmak için yaşın önemi yoktur

Yazılım geliştirme, genellikle yaş sınırlamaları olmayan esnek bir alandır. İlgili becerileri öğrenmek için çeşitli kaynaklar mevcuttur ve birçok yazılım geliştirme pozisyonu için formel eğitim gerekli değildir. Önemli olan, motivasyonunuz, öğrenme isteğiniz ve bu alanda kendinizi geliştirmek için zaman ayırma kararlılığınızdır.

Çoğu zaman, farklı bir kariyerden gelen deneyimler, yazılım geliştirme sürecine farklı bakış açıları getirebilir ve bu da kişinin değerini artırabilir. Dolayısıyla, yaşınız ne olursa olsun, yazılım geliştirme alanında yeni bir kariyere başlamak mümkündür.

2 Kasım 2020 Pazartesi

Paralel Algoritmalar


Paralel algoritmalar, bir problemi çözmek için birden fazla işlemciyi eş zamanlı olarak kullanarak çalışan algoritmalardır. Bu tür algoritmalar, büyük ve karmaşık problemleri daha küçük parçalara ayırarak her bir işlemcinin bir parçayı ayrı ayrı ve eş zamanlı olarak işlemesine olanak tanır. Bu yaklaşım, problemin çözülme süresini önemli ölçüde azaltabilir ve verimliliği artırabilir.

Paralel algoritmalar genellikle yüksek performanslı hesaplama görevlerinde, büyük veri analizinde, bilimsel araştırmalarda, görüntü işlemede, makine öğrenmesi uygulamalarında ve benzeri durumlarda kullanılır. Paralel hesaplama, verilerin ve görevlerin birden çok işlemci arasında dağıtılmasını gerektirdiğinden, bu tür algoritmaların tasarımı ve uygulanması genellikle daha karmaşıktır. Paralel algoritmaların etkinliği, kullanılan donanıma, algoritmanın problemi nasıl böldüğüne ve iş parçacıkları veya süreçler arasındaki iletişim ve koordinasyon mekanizmalarına bağlıdır.

13 Ekim 2020 Salı

STREET FIGHTER II Oyununun Yapımı

The Making of Street Fighter II

10 Eylül 2020 Perşembe

\n ve \r nedir? Aralarındaki fark nedir?

 \n ve \r, C, Java, Python gibi programlama dillerinde ve birçok başka dilde kullanılan özel karakter dizileridir. Doğrudan görünmeyen ancak metnin formatını veya davranışını kontrol eden bazı özel kontrol karakterlerini temsil etmek için kullanılırlar.

Yeni Satır

\n (Line Feed - New Line): \n yeni satır karakteridir. İmleci bir sonraki satırın başına taşır. Birçok programlama dilinde ve metin düzenleyicide, \n bir satırın sonunu temsil etmek için kullanılır. Bir string’de  \n gördüğünüzde, kendisini takip eden metnin yeni bir satırdan başlayacağı anlamına gelir.

Satır Başı

\r (Carriage Return): Bu karakter, imleci geçerli satırın başına geri taşır. Bir sonraki satıra değil. Bu, daktilo ve eski dönem yazıcıların zamanından kalan bir kalıntıdır. O dönemde yeni bir satıra başlamak için taşıyıcıyı satırın başına geri getirmeniz gerekiyordu.

Modern kullanımda, uygulaması değişiklik gösterir. Ağ protokolleri ve bazı metin işleme bağlamlarında hala kullanılıyor. Tek başına, \r yeni bir satıra geçmez; sadece mevcut satırın başına döner.

Farklar:

Kullanım: \n, Unix ve Unix benzeri sistemlerde (Linux, macOS vb.) yeni satır karakteri olarak yaygın olarak kullanılırken, \r eski Mac sistemlerinde kullanılır. Windows sistemleri, yeni bir satırı temsil etmek için her ikisinin bir kombinasyonunu (\r\n) kullanır.

Etki: \n imleci bir sonraki satıra taşırken, \r imleci mevcut satırın başına taşır.

Basitçe ifade etmek gerekirse, \n metinde aşağıya doğru ilerler ve \r yatay olarak satırın başına sıfırlar. Metin çıktısında bunları kullandığınızda görsel fark açıkça ortaya çıkar.

Örneğin, "Merhaba\nDünya" yazmak kelimeleri ayrı satırlarda gösterirken, "Merhaba\rDünya" yazmak, "Dünya"nın "Merhaba"nın üzerine yazılmasına neden olur. Elde edilen sonuç “Dünyaba” şeklinde olacaktır.


11 Ağustos 2020 Salı

CSS Units: px (Pixel), em ve rem

Bir öğrencimden gelen güzel bir soruyu cevaplarken bir yandan başkalarının da ihtiyacı olabileceğini düşünerek kısa bir yazı yazmak istedim.

SORU: Web tasarımda ölçülendirme yaparken pixel ve yüzde kullanımı dışında em diye bir şey görüyorum. Nedir bu em? Bilmediğimiz başka şeyler de var mıdır?

em, web tasarımında kullanılan bir ölçü birimidir. Em birimi, belirli bir elementin yazı tipi büyüklüğünün, o elementin ata elementinin yazı tipi büyüklüğüne oranı olarak tanımlanır. Yani, em birimi, kullanılan yazı tipinin büyüklüğüne bağlı olarak otomatik olarak ölçeklendirilir.

Örneğin, bir elementin yazı tipi büyüklüğü 16 piksel ve bu elementin genişliği 4em olarak belirlenmişse, o elementin genişliği 64 piksel olur. Burada 1em, kullanılan yazı tipinin büyüklüğüne eşittir.

Em birimi, kullanılan yazı tipinin büyüklüğüne bağlı olarak otomatik olarak ölçeklendiği için, sayfanın yeniden boyutlandırılması veya farklı cihazlarda görüntülenmesi durumunda daha esnek ve duyarlı bir tasarım sunar. Bu nedenle, web tasarımcıları ve geliştiriciler em birimini sıklıkla kullanır.

Bunun dışında, rem (root em) birimi de mevcuttur. Rem birimi, kök elementin (genellikle <html>) yazı tipi büyüklüğüne bağlı olarak ölçeklendirilir. Rem birimi, em birimi gibi esnek ve duyarlı tasarımlar oluşturmak için kullanılır, ancak em birimi ata elemente bağlı olduğu için rem birimi tercih edilebilir.

Web tasarımda başka ölçü birimleri de bulunabilir, ancak pixel, yüzde, em ve rem en yaygın kullanılanlardır. Tasarımın gereksinimlerine ve hedef kitlenize bağlı olarak farklı birimlerin kullanılması da mümkündür.

Konu hakkında daha detaylı bilgiler için aşağıdaki linkleri kullanabilirsiniz.

https://medium.com/frontend-development-with-js/css-units-pixel-em-ve-rem-6515563c69b4

https://www.yazilimkodlama.com/css/css-px-em-rem-kullanimi/

https://www.tercihyazilim.com/Page/responsive-font-size

https://www.elephdev.com/web/212.html


10 Ağustos 2020 Pazartesi

Binary Search Tree / İkili Arama Ağacı nedir?

Sizlerden sorular geldikçe olabildiğince cevapları yazılı olarak ve örneklerle vermeye çalışıyorum. İşte bir soru daha;

SORU: BinarySearchTree öğrenmem gerekiyor. Neden ihtiyaç duyulur? Nerelerde kullanılır? Örnek verebilir misin?

BinarySearchTree (BST), veri yapısı olarak ağaç yapısını kullanan bir veri yapısıdır. BST'de her düğüm, kendisinden daha küçük olan düğümlerin solunda ve kendisinden daha büyük olan düğümlerin sağındadır. BST'nin kullanımı birçok algoritma ve veri yapısı için önemlidir ve geniş bir uygulama alanı vardır. İşte BinarySearchTree'in neden ihtiyaç duyulduğu ve nerelerde kullanıldığına dair bazı örnekler:

Sıralama: BST, verileri sıralı bir şekilde depolayarak hızlı sıralama işlemleri yapılmasını sağlar. Düğümler arasındaki doğal sıralama düzeni sayesinde verilerin eklenmesi, aranması ve kaldırılması hızlı bir şekilde gerçekleştirilebilir.

Arama: BST, bir veri kümesinde hızlı arama işlemleri için kullanılabilir. Her düğüm, kendisinden daha küçük olan düğümlerin solunda olduğu için aranan değerin yerini bulmak için sadece düğümleri karşılaştırmak yeterlidir. Bu, arama işleminin ortalama olarak O(log n) karmaşıklığında gerçekleşmesini sağlar.

Veri Yapıları: BST, diğer veri yapılarının temelini oluşturabilir. Örneğin, öncelik kuyruğu (priority queue) veya dengeleme ağaçları gibi veri yapıları, BST'nin temel mantığından yararlanır.

Otomatik Tamamlama ve Önerme: BST, metin tabanlı uygulamalarda kullanıcıya otomatik tamamlama veya önerme sunmak için kullanılabilir. Örneğin, bir arama çubuğunda kullanıcının yazdığı kelimeleri tamamlamak veya benzer öğeleri önermek için BST kullanılabilir.

Örnek:
Bir müzik yayın platformunda şarkılar bir BST içinde depolanabilir. Her düğümde, şarkının adı, sanatçısı ve yayın tarihi gibi bilgiler bulunur. Kullanıcılar, şarkıları aramak, sıralamak veya belirli bir tarihten sonra yayınlanan şarkıları bulmak için BST'yi kullanabilirler. Ayrıca, kullanıcının yazdığı kısmi bir şarkı adına göre otomatik tamamlama özelliği sunulabilir. BST'nin düzenli sıralama ve hızlı arama özellikleri sayesinde kullanıcılar, istedikleri şarkıları kolayca bulabilir ve müzik deneyimlerini geliştirebilirler.

BinarySearchTree hakkında görselleri bulabileceğiniz birkaç kaynak önerebilirim.

Bu kaynaklar, BinarySearchTree'in nasıl çalıştığını görsel olarak anlamanıza yardımcı olacaktır.

Visualgo: Visualgo, çeşitli veri yapılarının görsel temsillerini sağlayan interaktif bir web sitesidir. BinarySearchTree'i de görsel olarak anlatan animasyonlara sahiptir. Aşağıdaki linkten Visualgo'nun BinarySearchTree sayfasına erişebilirsiniz:

https://visualgo.net/bn/bst

Wikipedia: Wikipedia'da BinarySearchTree hakkında bilgiler ve görseller bulunabilir. Aşağıdaki linkten Wikipedia'nın BinarySearchTree sayfasına erişebilirsiniz:

https://en.wikipedia.org/wiki/Binary_search_tree

CodesDope:

https://www.codesdope.com/course/data-structures-binary-search-trees/