Sözleşme hazırlamak ile programlama yapmanın benzerlikleri ve farklılıkları

Avukatlık meslek hayatım sözleşme hazırlamak, hazırlanmış sözleşmeleri iyileştirmekle geçti. Bir taraftan programlamaya da meraklı, alaylı bir yazılım geliştirici olarak bu iki meşgalenin benzer ve farklı yönlerini sıralayayım istedim.

Benzerlikler

  • Sözleşme hazırlamak ile program yazmanın birçok ortak yönü var. İkisinde de bir satır yazmadan önce bir saat düşünüp araştırma yapmanız gerekebilir.
  • İkisi de son derece titiz ve sabırlı olmayı ve iyi bir muhakemeyi gerektirir.
  • İkisi de çok yoğun bir odaklanma, bütün metne ve o metnin üzerinde yükseldiği yapılara (API ya da mevzuat/içtihat) hakim olmayı gerektirir.
  • İkisini de kopyala-yapıştır yöntemiyle yapmaya çalışan kolaycılara rastlanır. Sonuçta ortaya kötü sonuçlar çıkarabilirler.
  • Bu biraz şahsi ama yazayım: Sözleşme veya yazılım, işe yarar ve iyi tasarlanmış bir ürün ortaya koymaktan/bu uğurda çalışmaktan hoşlanıyorum. Programlama yaparken zorlukları aşmaktan, yeni şeyler öğrenmekten, sorun çözmekten ve kendini kaptırarak (“in the flow“) çalışmaktan büyük zevk alıyorum (aynı kendini kaptırma halini sözleşmeler üzerinde çalışırken de yakalayabiliyorum).

Farklılıklar

  • Sözleşmeler genellikle iki taraf arasında gizli kalır. Yazılım ise herkesçe kullanılabilir.
  • Sözleşmeyi bir veya birkaç avukat, zaman zaman hukuk dışındaki teknik uzmanlardan bilgi alarak hazırlar. Yazılımlar toplu geliştirilmeye açıktır.
  • Sözleşmeler imzalandıktan sonra zorunluluk yoksa değiştirilmezler. Yazılımlar -genellikle- devamlı değiştirilir, güncellenirler.
  • Sözleşmeler imzalandıktan sonra genellikle bir dosyaya konulup bir sorun çıkana kadar orada unulur (unutulmazsa gerilim dolu bir macera başlıyor olabilir). İyi bir sözleşmeniz olduğunu sorun çıkana kadar anlamayabilirsiniz. İyi yazılım-kötü yazılım kendini her gün belli edebilir.
  • Kötü bir yazılım ile veri ve zaman kaybedebilirsiniz ama verilerinizi yedeğinden geri yükleyerek onları kurtarabilirsiniz. Kötü bir sözleşme ile çok şey kaybedebilirsiniz ve yedeğinden geri yükleyemezsiniz.
  • Yazılımdaki hataları bugfix yayınlayarak giderebilirsiniz. Sözleşmedeki hatanızı gideremezsiniz; bunun yerine geceleri uykunuzu kaçıracak nur topu gibi bir dert sahibi olursunuz.
  • Sözleşmeler uzmanlık ister ve hazırlayanların çok yoğun fikri emeği vardır; ancak hiçbir sözleşmeden onu kimin hazırladığını anlayamazsınız. O cümleleri kimin yazdığını bilemezsiniz. Hazırlayanların adı geçmez. Bir yazılımı kimin kodladığını bilirsiniz.
  • Yazılımda çocuğunuza “bak kızım/oğlum, bu yazılımı ben programladım, işte bak, adım yazıyor” diyerek ona ilham verebilir, örnek olabilirsiniz. Sözleşmede bunu yapamazsınız; bilgisayarınızdaki sözleşmeleri açıp gösterebilirsiniz en fazla…
  • Sözleşmeler fikri eser olmasına rağmen onları hazırlayanlar bu fikri eserler üzerinde hiçbir koruma talebinde bulunamazlar. Dileyen onları dilediği gibi kopyalayabilir, değiştirebilir. Yazılımlarda bu konuda programlayan özgürdür, dilediği lisansı seçebilir. Fikri mülkiyet korumasından yararlanabilir.
  • Bir sözleşme avukatının ortaya koyduğu ürünü (sözleşmeyi) işe yarar kılabilmesi için müvekkillere ihtiyacı vardır. Müvekkilin ihtiyacına göre sözleşme hazırlanır. Yazılım mühendisi bir ürün ortaya koymak için kimseye ihtiyaç duymaz. Ürünü ortaya koyabilir ve ihtiyacı olan herkes yararlanabilir.
  • Yazılımın bir diğer güzelliği, hata yaparsanız başınızın belaya girmesini önleyen CAPS LOCK açıkken yazılmış sorumsuzluk şartlarınızın sizi korumasıdır; avukatlıkta asla sahip olamayacağınız bir lükstür bu… :)
Öne çıkan

Üretkenlik için Masterlist!

Masterlist

Masterlist, iPhone, iPad ve iPod’lar için özenle geliştirdiğim yeni ve ücretsiz bir yapılacaklar listesi, hatırlatıcı ve zaman yönetimi uygulaması… Sade ve kolay kullanımlı tasarımı ve çok sayıda işleviyle işlerinizi organize etmenize ve daha üretken olmanıza yardımcı oluyor.

Masterlist ile yapılacak işlerinizi ve hatırlatıcılarınızı kaydedebilir ve organize edebilir, her göreve özel Pomodoro zaman sayacı sayesinde pomodoro tekniğini uygulayabilirsiniz. Böylece işlerinize daha iyi odaklanabilir, görevlerinize ne kadar zaman harcadığınızı takip edebilirsiniz.

Masterlist, sizi görev listesi, hatırlatıcı ve Pomodoro zaman sayacı için ayrı ayrı uygulamalar ve araçlar kullanmaktan kurtarır, tek bir uygulama ile tüm bu ihtiyaçlarınızı karşılarsınız.

Masterlist bütün verilerinizi cihazınızda tutar, buluta göndermez ve başka bir amaçla kullanmaz, gizliliğinize büyük önem verir.

Masterlist’in özelliklerinden bazıları:

  • Masterlist’in akıllı görev listelerinden yararlanabilirsiniz. Bugün yapılacak işler ve bugün tamamladığınız işleri “Today” listesinde görebilir, önemli işlerinizi “Important” listesinde elinizin altında bulabilirsiniz. Zaman kazanırsınız.
  • Kendi görev listelerinizi (checklist) oluşturabilirsiniz. Örneğin “Alışveriş”, “Kütüphane”, “Ders”, “İş”, “Spor”, “Ödev Projesi”, “Ödemeler” gibi ayrı ayrı yapılacaklar listeleri oluşturabilir, görevlerinizi bu listeler arasında taşıyabilirsiniz. Görev listelerinize özel simgeler atayabilirsiniz.
  • Görevleriniz için alt görevler (subtasks) oluşturabilirsiniz. Örneğin “Haftalık alışveriş” adlı bir göreviniz olduğunu varsayalım. Almayı planladığınız ürünleri bu görevin altında alt görevler olarak hızlıca ekleyebilir ve düzenleyebilirsiniz.
  • Görevlerinize dilediğiniz uzunlukta notlar ekleyebilirsiniz.
Masterlist
  • Görevlerinizi sola ve sağa kaydırarak o görevle ilgili notlara, alt görevlere ve Pomodoro Tekniği zamanlayıcısına hızlı erişim sağlayabilirsiniz.
  • Görevleriniz için hatırlatıcı kurabilirsiniz. Masterlist size dilediğiniz gün ve saatte görevi hatırlatır.
  • Tekrarlayan görevler (ve hatırlatıcılar) oluşturabilirsiniz. Örneğin aylık fatura ödemeleri için bir görev oluşturabilir ve bu görevin size son günden -örneğin- 1 gün önce hatırlatılmasını isteyebilirsiniz. Masterlist siz görevi tamamladıkça bir sonraki görevi ve hatırlatıcısını otomatik olarak ayarlar, sizin yeniden uğraşmanıza gerek kalmaz.
  • Bir görev için ne kadar çalıştığınızı Pomodoro zaman sayacı ile takip edebilirsiniz. Pomodoro Tekniğini kullanarak işlerinizi daha motive, hızlı ve verimli şekilde yapabilir, ertelemecilikten (procrastination) kurtulabilirsiniz.
Masterlist Pomodoro
  • Aynı anda 2 pomodoro zamanlayıcı çalıştırabilirsiniz (örneğin yürüyüş yaparken podcast dinlemek görevlerinizin ikisini de aynı anda gerçekleştirebilirsiniz, veya bir işinize ara verip başka bir işe başladığınızda ikinci zamanlayıcıyı başlatarak ilkindeki ilerlemenizin kaybolmasını önlemiş olursunuz).
  • Görevleriniz, notlarınız ve alt görevleriniz arasında çok hızlı bir şekilde hızlı arama gerçekleştirebilirsiniz.
  • Masterlist görevlerinizi ve verilerinizi cihazınızda saklar. Buluta göndermez ve bu verileri başka bir amaçla kullanmaz. Mahremiyete, kişisel verilerin gizliliğine ve veri güvenliğine önem verenler için bunlar cazip özelliklerdir.
  • iOS 10 ve sonrası bütün iOS sistemlerinde kullanılabilir. Bu, iPhone 5 dahil sonraki tüm iPhone’ların desteklendiği anlamına geliyor.
  • iOS 13 ile birlikte kullanıma sunulan Dark Mode (karanlık mod) ile %100 uyumludur.

Yakında Türkçe 🇹🇷 dil desteğinin de ekleneceğinin müjdesini şimdiden vereyim. 🙂

Masterlist ile ilgili son gelişmeleri, yeni versiyonları, fırsat ve duyuruları kaçırmamak için Twitter hesabını takip edebilirsiniz: @MasterlistApp

Beğeneceğini düşündüğünüz kişileri uygulamadan haberdar ederek uygulamanın duyulmasına ve gelişimine destek olabilirsiniz.

Gelecek taleplere göre zaman içerisinde uygulamaya başka yeni özellikler eklenebilir. Görüşlerinizi paylaşarak uygulamanın geliştirilme sürecine katılabilirsiniz.

Görüş ve önerilerinizi bu yazıya yorum olarak bırakabilir, bana şuradan yazabilir veya en iyisi App Store’da uygulamaya puan verebilir ve görüşlerinizi oraya da yazabilirsiniz.

Teşekkürler!

Firefox’da önceki oturumu otomatik olarak geri yüklemek

Firefox kullanırken açık olan sekmelerin bir sonraki oturumda geri yüklenmesi mümkündür.

Örneğin tarayıcının beklenmedik bir şekilde kapanması veya tarayıcının güncellenmesi hallerinde Firefox önceki sekmelerin geri yüklenmesini kendisi önerir.

Siz de tarayıcıyı açtıktan sonra başka bir işlem yapmadan menüden History - Restore Previous Session seçeneğiyle önceki oturumdaki sekmeleri geri yükleyebilirsiniz. Ne var ki yeni bir sayfa açmak suretiyle isteyerek ya da istemeyerek yeni bir oturum (session) başlatmış bulunursanız artık bu komutu veremez, artık önceki oturumu geri yükleleyemezsiniz. Aşağıda anlatacağım otomatik geri yükleme seçeneği ile hem bu gibi durumların önüne geçebilir, hem de tarayıcıyı yeniden başlattığınızda her zaman kaldığınız yerden devam edebilirsiniz.

Her açılışta bir önceki oturumdaki açık sekmelerin otomatik olarak geri yüklenmesini kolay bir ayarla sağlayabilirsiniz. Bunun için Preferences - General - Startup bölümünde “Restore previous session” seçeneğini işaretlemeniz yeterlidir.

Ben bu ayarı oldukça kullanışlı buluyorum. Basit bir ayar olsa da tarayıcıyı kurduktan sonra seçili gelmediğinden gözden kaçabiliyor. Bu nedenle burada not etmek istedim.

Firefox eklentilerinin devre dışı bırakılmasını önlemek

Bir Firefox eklentisini devre dışı bırakmak kolaydır. Bunu zorlaştırmak için “Policy templates” kullanabilirsiniz. Kullandığınız Firefox sürümüne göre ilgili yönergeleri izlemelisiniz.

Firefox sürüm 67 için örnek vermek gerekirse policies.json dosyasına aşağıdaki satırlar eklenmelidir:

{
  "policies": {
    "Extensions": {
      "Locked":  ["addon_id@mozilla.org"]
    }
  }
}

Burada “addon_id@mozilla.org” kısmına kilitlemek istediğiniz eklentinin id’sini yazmanız gerekir. Örneğin Leechblock eklentisinin devre dışı bırakılmasına izin vermemek için şu kodu kullanmanız gerekir:

{
  "policies": {
    "Extensions": {
      "Locked":  ["leechblockng@proginosko.com"]
    }
  }
}

Bu id’yi nereden ve nasıl öğreneceğinizi şuradan okuyabilirsiniz. Bütünlük için atıftaki açıklamaları buraya da aktarayım:

Open about:memory. Click “measure” in Show memory reports. In the Main Process section, scroll down to Other Measurements. There you will find the installed (active) extensions with their names and their ids displayed as baseURL=moz-extension://[random-ids].

Peki policies.json dosyasını nerede bulursunuz? O da yine yukarıda linkini verdiğim yönergelerin içerisindeki README.md dosyasında anlatılmaktadır. Firefox 67 için açıklamalar şunlardır:

On Windows, create a directory called distribution where the EXE is located and place the file there. On Mac, the file goes into Firefox.app/Contents/Resources/distribution. On Linux, the file goes into firefox/distribution, where firefox is the installation directory for firefox, which varies by distribution.

MacOS ile dosya özgünlüğünün teyidi

MacOS kullanıcısı iseniz ve internetten indirdiğiniz dosya ve programların özgün (bozulmamış, değiştirilmemiş) olduğundan emin olmak istiyorsanız hash teyidini nasıl yapacağınızı bir örnekle açıklayayım.

İndirdiğiniz dosyanın adı “LibreOffice_6.1.4_MacOS_x86-64.dmg”,

İndirdiğiniz dosyanın hash dosyasının adı “LibreOffice_6.1.4_MacOS_x86-64.dmg.sha256”

ve

hash dosyasının içeriği

92bc95b55285e2a2df32ffb89123de0659dec79c3543e7edd7136a3d1ced2401 LibreOffice_6.1.4_MacOS_x86-64.dmg

ise,

her iki dosyayı aynı dizinde bulundurarak ve o dizinde bir terminal penceresi açtıktan sonra hash teyidi için

$ shasum -a 256 -c LibreOffice_6.1.4_MacOS_x86-64.dmg.sha256 

komutunu terminalde vererek teyit işlemini başlatabilirsiniz.

Aşağıdaki çıktıyı alırsanız teyit başarılıdır:

LibreOffice_6.1.4_MacOS_x86-64.dmg: OK

Outlook 2016 ile kendine gizli kopya (auto bcc) (Mac)

Outlook 2007 ile e-posta gönderirken kendine otomatik gizli kopya (auto bcc) göndermenin dolambaçlı yollarından daha önce söz etmiştim. Günümüzde güncel Outlook sürümü olan 2016 versiyonunda bile bu konuda Windows tarafında hatırladığım kadarıyla bir değişiklik yok iken Mac tarafında hoş bir sürprizle karşılaştım. Outlook 2016 Mac sürümü, kendine gizli kopya göndermeyi bir seçenek olarak sunuyor!

Outlook menüsünde Tercihler – Oluşturma isimli pencerede bu ayarı bulabilirsiniz:

“Varsayılan ağ geçidi kullanılamıyor” hatasına çözüm

Malum, Windows 10 güncellemeleri oldukça büyük boyutta oluyor ve zorunlu olarak uygulanıyor. Bu güncellemelerden 1709 kodlu olan bilgisayarı 1 saat kadar meşgul ettikten sonra kuruldu. Güncelleme sonrası internet bağlantısında kopmalar baş gösterdi. Bağlantı sorunlarını araştırma ekranında gördüğüm hata mesajı şu idi: “Varsayılan ağ geçidi kullanılamıyor.” (İng. “Default gateway is not available”)

Sorunun çözümü

Aygıt Yöneticisi’ne göz atarak ağ bağdaştırıcısı markanızı öğrenin. Bu markanın resmi sitesine giderek yeni sürücüleri indirin ve bilgisayarınızdaki sürücülerini güncelleyin. Mesela Realtek için sürücüler şurada.