Hayal kurmak plan yapmak değilmiş..

Şimdi anlatacağım durumu, yeni öğrendiğim bir durum veya farkettiğim eksik bir noktam olarak adlandırabilirim.

Bugüne kadar plan yapmak ve hayal kurmak arasındaki farkları bilen, bunları terminolojiye göre açıklayabilen fakat uygularken ikisini birbirine karıştıran bir insandım. Belki bir çoğumuz için de bu durum böyledir. “Nasıl?” derseniz bu rehaveti şöyle açıklayabilirim:

Plan yapmak. Belli bir zaman aralığında, belirli kişiler ile, belirli şekilde bir işi, oluşu eyleme geçirme halidir. Örneklersek. 1 Nisan – 10 Nisan aralığında, x kişisi ile çalışarak, belirlenen günlerde belirlenen kısımları tamamlayarak bir yazılım projesini tamamlamak. 11 Nisan gününü sunum tarihi olarak belirlemek. Negatif durumlar dahilinde sapmaları hesaplamak ve bunları da göz önünde bulundurarak bu işi yerine getirmek. Veya Haziran ayında çıkılacak tatil için 20 gün öncesinden bilet almaya karar vermek. Bu durumlara plan yapmak deniyor. Tutarlı, belirli, olası ve imkanlar dahilinde gözüken eyleme geçme kararları plandır. Gerçekleşmemesi durumunda sebepler gözden geçirilir ve kriz yönetimleri gerçekleştirilir.

Fakat hayal kurmak!..

“Mutlu bir birlikteliğe sahip olmak istiyorum!” diye düşünmek veya “Önümüzdeki 3 yıl içinde araba almak istiyorum.” demek hayaldir. Hayaller tutarlılık talep etmezler. Mars’a çıkmayı da pek tabii hayal edebilirsiniz. Ama.. İmkanlarınızı düşünmeden bu uçarı fikrin planını yapmaya başlarsanız ve çok emek harcarsanız maalesef tutarlılığınızı yitirir ve gerçeklikten uzaklaşırsınız. Bazı hayaller ulaşılmak için kurulur. Ulaşılması zorunlu değildir, hayale giden yol dahi değerli ve geçerli ise finale gelmek zorunda hissetmezsiniz.

Ben burada vaktiyle yanlış yapmış olabilirim 🙂

Geçtiğimiz aylardan birinde hayatımda şu zamana kadar geçerli olan tüm hayal, kalıp ve uzun vade planları gözden geçirmek zorunda hissettim. Sadece aynada gördüğü kendisini düşündükçe trajikomik bir hal alıyor insan. Şartlanmak insanı üzüyor.

Şimdilerde daha uçarı ve yapmak zorunda olmadığım hayallerim ve tutarlı şekilde gerçekleştirdiğim kısa vade planlarım var. Daha mutluyum, daha yargısız ve daha kendine kalmış bir insanım.

Çocukken ailemizin bizi nerede görmek istediğiyle, gençken rakiplerimizin varmak için çabaladıkları yerlerle ve hayatı deneyimledikçe “ben ne istiyorum?” sorusuyla cebelleşiyoruz. Ne yazık ki çoğu kez “kendimize ne istediğimizi sormamız” çok geç olabiliyor/muş. Ben kendimi bu konuda şanslı hissediyorum. Ben kendimi hissediyorum.

Terminal / Uçbirim kullanmak için başlıca sebepler

İşletim sistemlerinde kullanılan GUI (Graphical User Interface) yani Grafiksel Kullanıcı Arayüzü, yazılım geliştirme işlemlerinde sistemsel sınırlamalar ve yetersiz alanlar sebebi ile eksik kalmaktadır. Linux ve Mac OS sistemlerde bulunan “Terminal” penceresi, bu arayüzü geçip direkt sistemin çekirdeğine ulaşarak işlem yapmamızı sağlar. Basit bir örnek olarak; bir dosyayı indirmek, kullanıcı izinleri atamak, çoğaltmak, taşımak, kopyalamak, başka bir alana iletmek gibi işlemleri GUI kullanarak yapmaktan daha hızlı bir şekilde yapmamıza olanak sağlar. Fakat bunlar hali hazırda GUI ile yapabileceğimiz basit işlemlerdir. Terminal (uçbirim), Mac OS ve Linux işletim sistemlerinde kullanıcılar tarafından aktif bir şekilde kullanılmaktadır. Ama Windows üzerinde GUI’i aşıp direkt çekirdek (kernel) üzerinden işlem yapmak mümkün değildir.

Komutları öğrenmek ve geliştirme aşamasında bu komutlar ile çalışmak yeni başlayanlar için zahmetli olabilir. Peki bu aracı -terminal- kullanmak ve pek tabii ki öğrenmek için en ikna edici sebepler neler olabilir?

  • GIT (Dağıtık Çalışma Akışları) programlarını kullanarak repolarınız üzerinden işlem yapmak basittir. Fakat büyük sistemler yazarken imlecinizi efektif butonların üzerinde dolaştırmanın, çetrefilli checkboxları kliklemenin uzun vadede vaktinizi çaldığını fark edeceksiniz. Terminal üzerinden GIT kullanımı daha hızlı ve pratik bir hal alıyor.
  • Dosya izinleri ve güvenlik, sistem yöneticilerinin demirbaşlarındandır. Bu sebeple local veya public ağlar üzerinde Terminal aracılığı ile dosya ve dizin yönetimleri  -özellikle büyük projelerde- çok daha detaylı ve önizlenebilir olacaktır.
  • Paket kurulumları yaparken önce tarayıcıyı açmak, url alanına indireceğimiz dosyanın bulunduğu alan adını yazmak, indirme butonuna tıklamak, indirdiği klasörü açmak ve kurulum sihirbazını çalıştırmak, kurulumu tamamlamak belli bir seviye üstü kullanıcılar için gereksiz derecede meşakkat demektir. Terminal aracılığı bu işlemler sağ eliniz hiç mouse’a gitmeden çok daha hızlı bir şekilde yapılabilmektedir.

Bunlar benim bireysel en temel sebeplerim. Bu hız ve performans ihtiyacı tabii ki kişiden kişiye değişmektedir. Terminal – Uçbirim- kullanımı, bir game user için manasız gelebilecekken, bir Python Developer için vazgeçilmez ihtiyaçlardan olacaktır.