Kültür

Beni ben yapan, tanımlayan şeyler neler diye bakıyorum. Babaannemin çiğ börekleri ve annemin kalıcı mutsuzluğu, Tatar kovulmuşluğu ve babamın sigaraları, işçi ailesiyle köyde büyüyen Istanbul’lu olmanın acısı, meslek lisesinde okuyup, bir sürü okulda dolaşıp Boğaziçi’nden bir diploma almanın garabeti aralarında gidip geliyorum.

İnsanlara özeniyorum bazen, tuttukları futbol takımı ya da futbol takımlarından da fanatikçe tuttukları siyasi oluşumlarla kendilerini tanımlıyorlar, sonra da beyinlerini ve kalplerini tatile gönderiyorlar. Ölünce de “sahibinden, az kullanılmış…” neyse işte.

Adım Can, memnun oldum. Diğer etiketleri dökeli çok oldu, Tekila oynuyor onlarla artık. İnsanın kendinden memnun olması ve kendinden memnun olamayacağı noktalarda da kendiyle barışıp gelişme yollarını araması lazım. Yoksa her ailede bir şekilde paşa dedeler bulunuyor. Gerçi bizde herkes ya ilmiye taifesindenmiş ya da ağır delikanlı, bir bana bulaşmamış sanki.

Dedelerimi görmedim, hatıralarını severim ama bana tek faydaları anne ve babamı hayata getirip yetiştirmiş olmaları. Onlara layık olmak isterdim, ama ne biri gibi fotoğrafımı okullarımdan birinde rektörlük binasına asacaklar, ne de diğeri gibi adım geçtikçe mahallenin serserileri “geliyor mu acaba” diye etrafa bakacaklar. Olacak olan elimden geleni ben olarak yapmak. Bunu kabullenemeyen insanları anlamaya çalışmayı ise bir süre önce bıraktım, daha kolay.

Hatalar, tedbirler, tehlikeler v.s.

Özür dilemeyi öğrenmem vakit aldı. İlginç şekilde diğer kusurlarımın aksine bu konuda ailemi suçlamam mümkün değil, ellerinden geleni yaptılar. Dolayısıyla problemin benden kaynaklanan kısmı benim, geri kalanı vurup geçmeyi, kırıp dökmeyi erdem olarak gören toplumun.

Hala, her hatamı, kusurumu kabul edip yüzleştiğimi iddia edemiyorum. Bir kısmını bildiğim, bir kısmını bilmediğim, bir kısmını anladığım, bir kısmını anlamadığım çeşitli konularda kabahatin bir ya da büyük kısmını bende olduğu olaylar yaşadım. Burada beni çok rahatsız eden bir toplumsal alışkanlığın çok etkili olduğunu düşünüyorum. Türk kültüründe, özür dilediğiniz anda bunu tepenize çıkmak için kullanmaktan bir an bile çekinmeyecek insanlar yetiştiriyoruz.  Örnek olarak gösterebileceğim, ama göstermesem sağlığım için daha iyi olacak pek çok eskimiş defter yaprağı var hayatımda.

Öte yandan konunun bir de garip şekilde profesyonel yansıması var. Arkadaşlarla zaman zaman konuştuğumuz üzere, eğer hatalar olmasaydı bilgisayar programcılığı gayet farklı ve sıkıcı bir meslek olurdu. Bir programın, niteliğine bağlı olarak %40 ile %80 arasındaki kısmı insan hataları  başta çeşitli sıkıntıları ve bunların çeşitli teknik yansımalarını tespit edip engellemek ve düzeltmek için yazılır. Ben insanlarla uğraşmayı sevmeyen biri olarak, yıllarca insanlar tarafından kullanılmayan programlar yazdım. Aslında aksi çok daha eğlenceli. İnsanların görmediği bir programda harikalar yumurtlasanız, bir iki kişiden fazlası farkına varmıyor. Öte yandan insanlara sağı solu renklendirilmiş bir iki yanıp sönen ışık verdiğiniz zaman arkada ne olduğunu görmeden, anlamadan hayran kalıyorlar. Yani aslında hatalar kontrollü şekilde odakta tutulurlarsa genel kalitenin yükselmesini sağlıyorlar. Ama bu bir hayata bakış tarzı, muhtemelen belli bir oryantasyonun ve eğitimin sonucu olarak elde edilebilen bir yaklaşım.

How to change a user’s password in Django

In order to let Django users to change their own passwords, it is necessary to provide them with an interface, that is not “admin”. Following is a bare bone sample for the change view.

One item of importance and the reason I am writing this post is that, in most (maybe all) documents and samples I had access to, login() call (at 48th line of my view sample) after saving user instant, was not mentioned. That is required, because when you overwrite current request’s user’s records, you also need to relogin current user again, as credentials needed to be renewed in such situations.

View sample:

#coding: UTF-8
from django.shortcuts import render
from django.contrib.auth import authenticate, login, logout
from django.http.response import HttpResponseRedirect
from django.urls import resolve, reverse
from django.contrib.auth.models import User
from django.contrib.auth.decorators import login_required
from django.core.exceptions import ObjectDoesNotExist

from project.settings import LOGIN_URL

from cuser.middleware import CuserMiddleware

@login_required
def PassView(request):
    template_name='ServiceApp/pass.html'
    if request.method=="POST":
        current=request.POST['current']
        password_1=request.POST['password_1']
        password_2=request.POST['password_2']
        prob_mismatch=False
        prob_length=False
        prob_current=False
        prob_user_ex=False
        error_message=[]
        if password_1!=password_2:
            prob_mismatch=True
            error_message.append(u'New Passwords do not match')
        if password_1.__len__()<9:
            prob_length=True
            error_message.append(u'New password must be at least 9 characters long')
        try:
            user=User.objects.get(username=CuserMiddleware.get_user().__str__())
        except ObjectDoesNotExist:
            prob_user_ex=True
            error_message.append('Our user has experienced an existential crisis')
        if user.check_password(gecerli)==False:
            prob_current=True
            error_message.append(u'Current password given, do not match records)
        if prob_current or prob_length or prob_mismatch or prob_user_ex:
            context={
                'error_message':error_message,
                }
            return render(request,template_name,context)
        else:
            user.set_password(password_1)
            user.save()
            login(request,user)
            return HttpResponseRedirect(reverse('main_screen'))
    else:
        context={
            'error_message':error_message,
            }
        return render(request,template_name,context)

Kendime dersler

Vedat Türkali demiş ki:

Düşündüğünü söylemekten korkmaya başlarsa bir kişi, düşünmekten de korkmaya başlar.

Bu sabah Açık Gazete böyle başladı. Radyo saat sekizde otomatik açılıyor artık. Dolayısıyla bu gün duyduğum ilk sözler bunlar oldu. Sürekli programın kapanışını yakalamaktan sıkılmıştım bir süredir. İnsanın her sabah kendi kendine ne kadar dalgınlaştığını hatırlatması bir süre sonra espri niteliğini kaybediyor, ben de aletin saatini programladım sonunda.

Asıl konuya bakarsak, hepimiz, her yerde bu lafı ya da benzerlerini okuduğumuzda bugünlerde aklımıza devlet korkusu geliyor. Ben bu “devlet korkusu”‘nun içinde bazı kendi kendine söylenen yalanlar görüyorum, işin kötüsü bu yalanları konuşmak da devlete laf etmekten bile daha zor. Çünkü kendine “aydın” ya da “entellektüel” ya da “münevver” diyen insanlarımızın en büyük ortak noktaları kendilerinde hata olmadığına imanları. Kendine “entel” diyen insancıklarımızın durumunu yorumlayamayacağım, neyse ki çevremde yoklar, olmasınlar zaten.

Mevcut devlet ve hükümet yapımızı savunmaya çalışmıyorum, ne o yakınlıktayım pozisyon veya politika olarak ne de durumun/devletin/halkın “savunularak” gelişeceğini düşünüyorum. Bu “savunma” konusu önemli, toplumca (ki bu “toplum” konusu daha da önemli) bir savunma, kaçınma kültürümüz var, bu son 15-20 senenin işi de değil.

Adını anmaktan hoşlanmadığım bir yazarımızın lafıyla, hala Balkan Savaşları ve 1. Dünya Savaşı’nı kaybetmenin sendromunu yaşıyoruz. Politik olarak çok şey değişmiş olabilir ama kültürel olarak hala yabancı devletlere yaranmak için Tanzimat ilan eden insanların mirasından kurtulamamışlığı yaşıyoruz. Eh halk da devleti kendisi dışında bir şey sandığı, devlet memuru olan insanların kendisinin değilse komşusunun oğlu, kızı yeğeni olduğunu unuttuğu sürece halinden memnun, kabahat atacak bir odak bulmanın sevinciyle.

Bu  durumu dışsallaştırmaya da çalışmıyorum, bacak kadar çocukkenden hatırladığım en ağır terbiye lafı “elalem ne der” sorusudur, annemden yaptığım yaramazlıklara karşı gelen. Dolayısıyla ben de kendi iç huzurum, kendi namusum, kendi ahlak anlayışımla değil, komşuların, mahallelinin, akrabaların, arkadaşların beğenilerine, tercihlerine uygun bir hayat yaşamaya çalışarak büyütüldüm.

Neyse ki benim gibi olup da yine benim gibi “problem varsa kaynağı bende, bizde, bizim çevrede olabilir” demeyi beceren insanlar var. Yaygın bir laf vardır teknoloji çevrelerinde, “çözüm problemi görerek başlar” diye. Problemi görmeyerek, görmemeye çalışarak, gözlerini yumarak “benden başka herkes hatalı, probleminizi çözün, beni rahatlatın” diye şekeri alınmış çocuk gibi ağlayarak bir ilerleme sağlanmaz.

Geçenlerde eski ve iyi bir arkadaşımla konuştuk. Bizim okuldan, piyasasında saygın, liberal demokrat, ilerici v.s. v.s. niteliklerde olduğu iddiasında bir insan. Laf döndü dolaştı, bazı Anadolu üniversitelerinden mezun, iş emanet edilecek kalitede çalışanların daha kolay sömürülebilir, buna rağmen daha sadık olmalarıyla ilgili bir iki gözlem anlattı, tabii şahsi tecrübeye dayanarak. Eh yani, liberal demokrat ve ilerici olmak yerine sadece “liberal” olmak böyle bir şey.

“Tek kelime laf ettin mi?” derseniz, cevap hayır. Tamam takdirlerimi de ifade etmedim “ne güzel sömürüyorsunuz çocukları” diye, ama son noktada bir laf edilmesi lazımdı.

İşte böyle şeyleri söylemekten korka korka, sonunda üstlerinde düşünmekten de korkmaya başlanıyor. Arkadaş ne der, sevgili ne der, aile ne der, komşu ne der diye diye…

Jon Postel’i hatırlamak

Bugün Jon Postel’in ölüm yıl dönümü. İnsanları yılda bir kere hatırlamak bile zor gelirken, Postel’i arada geçen zamanda yirmi kere hatırlamam gerekiyordu, kaç kere becerdim bunu bilmiyorum. Internet’in oluşumunda ne seviyede önemli bir insan olduğunu anlatmak zor. Bunu okumak ise bilmeyenlere imkansız, bilenlere gereksiz.

Türkçe’deki “kahraman” kavramımız çok buraya uymasa da Postel kahramanımdı benim, Ritchie, Diffie ve Tanenbaum ile birlikte. Postel ile ilgili neyin beni en çok etkilediğini söylemek kolay değil. Ya, ben yıllarca IANA’yı kocaman bir organizasyon sanmışken, aslında çok uzun süre Jon’un tek başına ve olması gerektiği gibi yürüttüğü bir iş olduğunu anlamamdır, ya ISOC’un bir numaralı üyesi olmasıdır, ya da belki daha hüzünlü şekilde hiç bir zaman Jon olamayacağımı ölümüyle anlamış olmam…

Neyse, aralarındaki imaj farkına rağmen, Vint Cerf’ten daha iyi anlatmak mümkün değil, şunu okumakta fayda var: RFC 2468 Bu RFC yıllarca masamın üstünde, yanında, duvarımda asılı kaldı. En son, Internet’i bilmeyip, sadece sömüren birileri sebebiyle, taa okuldan beri sakladığım printout kaybolunca yenisini basmak istemedim. Önemli olan kağıtta değil kafada ve kalpte taşınan sonuçta.

. TR MOL