Selamünaleyküm,
Bugün bir vize haftasının telaşından sizlere yazıyorum. Konumuz algoritmalar. İşin içinden tek başıma çıkamayınca, sizlerle paylaşmak istedim; belki birlikte çözüm buluruz.
Önce biraz tahayyül edelim. Sözlük manasıyla algoritma “belli bir problemi çözmek veya belirli bir amaca ulaşmak için tasarlanan yol” demek. Düşününce, aslında hepimiz hayatımızda algoritma kuruyoruz. Bir derdi çözmek için bulduğumuz her yöntem birer algoritma değil mi zaten?
Ama işin yazılım kısmına geçtiğinizde işler çığırından çıkıyor. Çünkü orada sorunlar bildiğimiz türden olmuyor, çözümler de bildiğimiz çözümler değil. Mesela bir listeyi küçükten büyüğe sıralamak için bile bir sürü farklı yöntem geliştirilmiş. Ve siz o yöntemleri anlamaya çalışırken bir anda kendinizi bambaşka bir dünyanın içinde buluyorsunuz.
Yazılımla uğraşmayan birinin aklına haklı bir soru gelir:
“Bir listeyi sıralamak senin ne işine yarayacak ki?”
Biraz nazarımızı değiştirirsek, hayatın büyük kısmının verilerden ibaret olduğunu görürüz. Ve bu hayatı düzenlemenin yolu, verileri işlemekten geçer.
Fiyatları sıralamak, filtrelemek, bir kahve siparişi vermek… Hepsi verinin içinden süzülüp çıkan işlemler. Düşünün, bir gün veri tabanları bir anda yok olsa… Ne sosyal medya kalır, ne de yazılımın bugünkü anlamı.
Bir gün veriler konusuna detaylı dalalım ama bugün, bu verilerle uğraşmanın kalbinde yatan algoritma üzerine biraz tefekkür edelim.
Çünkü algoritma sadece “kodda çözüm yolu” değildir. Hayatın kendisinde de bir algoritma vardır. Her problemin, her çıkmazın, her dönemeçte tıkanan yolun bir çözüm yolu bir algoritması vardır.
Ben hep buna inanırım, bir şeyin bir yolu vardır.
Bazen sadece henüz o yolu keşfetmemişizdir.
Tıpkı benim şu sınavlara çalışmanın doğru algoritmasını henüz bulamamam gibi.
Ama bulurum. Çünkü bu da bir problem, dolayısıyla bir algoritması olmalı.

