PHP yi OO prensiplerine uygun olarak (PHP ne kadar object tabanlı olabilirse o kadar tabii:) kullanarak MVC patterninde bir web uygulamasını bir framework kullanmadan geliştirmek isteyenlerin incelemek isteyebileceği bir çalışma paylaşmak istiyorum. PHP hakkında bilgi sahibi olan ancak Object Oriented kullanmamış kişiler öncelikle bu linkteki bilgileri sindirmesi yararlı olabilir.Çalışmada Doctrine ORM kullanılmıştır. Böylece veritabanını entitylerinizle generate edilebilmektedir. Autoloader ve Composer tool implementasyonu yapılmış olup, proje Netbeans üzerinde test edilmiştir. MVC folder yapısı modellenmiş olup, örnek entity class lar yaratılmış ve bu entity lerin veritabanında oluşmuş olduğu görülmüştür. Doctrine run komutunun Netbeans üzerinde nasıl çalıştırıldığı burada görseller ile anlatılmıştır. Proje hakkındaki dokümantasyon için google grubundaki Türkçe içerikler okunabilir.PHP ye yeni başlayanların da hızlıca adapte olabilmesi (mysql ve tomcat kurulumu hazır) için xampp klasörünün tümünü (proje htdocs altındaki mvc klasöründedir) paylaşıyorum.Güzel, ücretsiz bir PHP eğitimi için PHP eğitim (ingilizce) sayfasını ziyaret edebilirsiniz. Umarım, ilgililere yardımı olur. Kolay gelsin...

Bölgelerde yerel olarak java konusunda faaliyetler gösteren user group lar mevcut. Ülkemizde bu alanda bir oluşum yoktu. Arkadaşım Mimar Aslan’ın vesile olduğu turkeyjug.org kurulmuştur. Destek verenlere teşekkür ederiz.Kuruluş hikayesine şu link ten ulaşabilirsiniz.

Piyasada en çok kullanılan iki adet Web Scanning 3rd party library lerinden Atala ve DynamSoft kullanılarak yaptığım POC çalışması projesini buradan indirebilirsiniz.Proje, JDeveloper 11.1.2.4 versiyonunda hazırlanmıştır.Official web sayfalarından trial license kodlarını elde edebilirsiniz.

ms3_loves_linuxYazının başında belirteyim ki herhangi bir  yazılım diliyle ilgili fanatik bir görüşüm yok. Eğitim hayatım dışında MS ürünleriyle bir geliştirme yapmadım. Bence, her projenin kendi isterlerine, vizyonuna ve gereksinimlerine göre teknoloji seçilmesi ideal olandır. Dinamikliğine, yönetilebilirliğine, olası entegrasyon arayüzlerine, kullanım genişliğine ve amacına göre yol haritası işin başında yani tasarım aşamasında planlanması gerekmektedir..Net dünyasındakilerin bildiği gibi zaten bu yönde mono project adıyla bir çalışmaları mevcutmuş. Roselyn derleyicileri ile açtıkları kapıdan sonra 12 Kasım 2014’te ise peyder pey ürünlerini cross platform yapısında çalışacak hale getireceklerini beyan etmişler. Hayırlı olsun diyoruz. Programcılık açısından güzel, linux tabanlı sistemlerin değerinin anlaşılabilmesi için sevindirici bir haberdir diyebiliriz.  Sonuçta kapalı kaynak bir dil opensource olmuş. En karlı çıkacak olan ise ilk bakışta .Net geliştiricileri olacak gibi.Mono nun planlarına buradan ulaşılabilir. Gelinen noktada open source dünyasında community nin gücü kendini kanıtladı. Gerçekten kullanımı kolay, rekabetçi, değişime açık ve iyi dokümante edilmiş implementasyonlar rekabet ortamında kendine yer buluyor ve bir süre sonra sıyrılarak standartlaşarak main stream i oluşturuyor. Herhalde bu rüzgarın kendisine de güç vermesini isteyen Microsoft, bu stratejik atılımı gerçekleştirmiş görünüyor. Ama meyvelerini yemesi ne kadar sürer bilemiyorum. Sonuçta yıllar önce Java, write once, run everywhere mottosuyla VM ini ortaya çıkartmış, uzun yıllar içindeki knowhow i ile geliştirmiş, olgunlaştırmış.Zaten şimdinin trendi olan mobil pazar çıkışını MS Nokia ile yakalamaya çalışmış ancak bu alan için beklenen başarıyı yakalayamadığı görülüyor. Bu karar da yine bu bağlamdaki bir stratejik atılım olarak görülebilir.Microsoft firması, Intel’in HTML5 ve JS ten gücünü aldığı cross platform geliştirme ortamı XDK ‘nın muadili bir ortamı kendi IDE’lerinde kullanılabilir hale getirmişler. Şu an için bildiğim kadarıyla C# yazılmıyor, yine XDK ve benzer platformlarda olduğu üzere HTML ile Javascript kullanılıyor. Yani tam olarak Oracle MAF gibi bir platform değil, yani HTML ile JS üzerinde bir de OO (Object Oriented) dil (MAF’ta Java) geliştiren hybrid bir platform değil. Ancak bu hamleyle Mobil fanlarını kutunun dışına kaçırmayacak, konfor alanlarını bozmadan kendi platformunda uygulama geliştirmelerine imkan vereceğe benziyor.Bu atılımların sonuçlarını ancak birkaç yılda gözlemleyebileceğiz şeklinde forumlarda görüş birliği öne çıkmış. Ancak şahsen mevcut tercihlerde büyük bir kayma beklemiyorum. Belki şöyle olabilir; zaten Türkiye’nin eğitim kurumlarında büyük oranda aktarılan MS taraftarlığını güçlendirecek ve bu değişimin açtığı yolu da görerek bunu mantıklı bulan daha fazla .Net geliştiricisi yetişir. Bence olasılığı yüksek:)Benim bu konu hakkındaki naçizhane görüşüm; .Net ile uygulama geliştirme öğrenilirken öncelikle OOP mantığının sindirilmesidir. Yoksa pek tabii ki .Net dünyasında çok güzel, kaliteli işler çıkartılabilir. Yalnız bir şekilde .Net geliştiricileri projeler tamamlayıp işler ortaya çıkarabilirken hiçbir prensipten nasibini almamış olabiliyor. Open source dünyasındaki dillerde ise işler pek öyle yürümüyor, yani doğası gereği bir proje çıkartılabilmesi için agile metodolojilerin bir şekilde öğrenilmesini ekosistemindeki insanlar için zorunlu kılıyor.Son olarak, .Net geliştiricisi arkadaşlarımla sohbetlerimden aklıma takılan bir konu var. Uygulama geliştirmeleri sırasında hayli MS işletim sisteminin dll lerini kullanıyorlar. Hal böyle iken cross platform a geçmeleri hayli meşakkatli olacak gibi görünüyor. Ayrıca Linux üzerine geliştirmelerine ne zaman ne ölçekte destek verecekler henüz net bir açıklamaya denk gelmedim.

Öncelikle kendi hikayemden yola çıkarak başlayacak olursam; boğaz tokluğuna (asgari ücretin yüzde 20 daha fazlası idi sanırım) bir maaşla başlamıştım. Sonra zamanla yükselerek piyasa ortalamalarına tekabül etti.Bu konu oldukça aranan merak edilen bir konu.  Ve arama yapılan keyword lerde sıkça geçmekte. Bu konuya uzun yıllar önce Cihat arkadaşım değinmişti, ben de güncel bir anketle konu hakkında merakımı ve merakları gidermek için yola çıktım. Cihat Altuntaş’ın ilgili yazısına buradan ulaşılabilir.Tabi bu işin biraz da kısmet işi olduğunu düşünüyorum ben kendimce. Aynı eğitim basamakları, benzer teknolojiler ve çalışılmış yıllar olsa da bazı kimseler aynı unvan ile piyasanın taban fiyatini alırken bazıları tavan fiyatını yada farklı ünvanları dahi alabilmekteler. İster network, ister kendini ifade yeteneği, ister doğru zamanda doğru yerde olma yada şans faktörü deyin ama bu gözlemlenen bir gerçek.Genel olarak kriterlerin, çalışılan teknoloji ve deneyim yılı olduğunu düşünerek bu şekilde bir anket sunmaya çalıştım.

Konuyla ilgili webrazzi detaylı bir çalışma yayınlamış => görmek için tıklayın.

Buyrun ankete, sonuçları görelim.

Sonuçlar

Katılanların; %63′ ü Java Geliştiricisi%25′ i .Net Geliştiricisi%9′ u Front End Geliştiricisi

%60′ ı 2-5 yıl arası çalışan%25′ i 0-2 yıl arası çalışan%12’si 5-10 yıl arası çalışan%3’ü 10+ yıl çalışan

%6′ sı 1500-2500 TL aralığında kazanmakta,%18’i 2500-4000 TL aralığında kazanmakta,%53’ü 4000-6000 TL aralığında kazanmakta,%13’ü 6000-7000 TL aralığında kazanmakta,%10’u ise 7000 ve yukarısında kazanmakta imiş.

Javacılar genel olarak 2-5 yıl arasını işaretleyerek 2500-4000 ile 4000-6000 aralığını işaretlemişler..Net geliştiriciler ise genelde 2-5 yıl arası ile 2500-4000 ve 6000-7000 aralığında seçim yapmışlar.Front End geliştiriciler 0-2 yıl çalışma ile 2500-4000 arasında yoğunlaşmışlar.Mobil Geliştiriciler 2-5 yıl ile 6000-7000 seçeneğinde yoğunlaşmışlar.

Hem günlük yaşamımızda doğru bir iletişim hem de yaptığımız iş ne olursa olsun doğru bir şekilde yapabilmek için cevaplara ihtiyacımız var. Ancak bu cevapları bulabilmede ciddi bir ön çalışmaya gereksinim duyulabilir. Çalıştığım bilişim sektöründe bu konu yüksek önem taşımakta olduğundan bu konuda bir yazı paylaşmak istedim.Başarılı bir analiz ve sonrasında geliştirme için anlamlı bir tasarım için doğru soru sormanın önemini yine bu konunun anlatımı için en çok tercih edilen bir resim ile özetleyelim :)software_analysis_design

Doğru Soru Sorma konusunda bilinmesi gerekenler:

  • Konu hakkında yeterince bilgi edinmek için gereken araştırmayı yap. Anlamını bilmediğin terimleri kullanma, hatta teknik terim kullanmaktan kaçın yada gerçekten gerekliyse terimleri ifade edebilmek için ön çalışma yap ki ne demek olduğunu basitçe ve hızlıca sıkmadan ifade et. Unutmayalım ki fazlaca detay bilgi karşı tarafı sıkarak anlaması için gerekli olacak motivasyonu dağıtacaktır.
  • Yazılı olarak anlatılması gerekecekse örneğin mail yada forum sorusu olacaksa, basit ve kısa olarak soruyu/konuyu en iyi özetleyen birkaç kelime seçilmelidir. Ancak kısa olmasının temel amaç olmaması gerektiğini belirteyim, önemli olan ifade gücüdür.
  • Yine yazılı ifadelerde bilinmeyen kısaltmalar kullanılmamalı, kullanılsa da bkz linkleri es geçilmemeli, ve dilbilgisi kurallarına uyulmalıdır.
  • Eğer ana diliniz dışında bir soru soracaksanız, öncelikle sorunuzu hazırlayıp bu dili orta ve üstü seviyede bilen bir arkadaşınıza sorunuzu okutup ne anlayıp anlamadığını öğrenerek kontrol etmenizde fayda var.
  • Sorunuzun daha iyi anlaşılması adına, daha önce cevaplar için kafa yormuşsanız muhtemel senaryoları kısaca aktarma yoluna gidebilirsiniz. Ancak bunu eğer soracağınız kişinin konuya bir şekilde vakıf olduğuna gerçekten inanıyorsanız yapmalısınız, aksi halde daha fazla kafa karıştırabilirsiniz.
  • Sorunuz bir yönlendirme içermemelidir. Değil mi? Bu şekilde mi? gibi…
  • Özetleme konusu, konuya verdiğiniz başlığın biraz daha detaylandırılmış ve sonuçta bekleneni en iyi şekilde vurgulamalıdır.

Konuyla ilgili özlü sözlerden bazıları:Bir insanı cevapları ile değil, sorularıyla yargılayın. – VoltaireDoğru soruları sormak, doğru cevapları vermekten daha fazla yetenek gerektirir. – Robert HalfBilgisayarlar çok da kullanışlı değillerdir, çünkü sadece sorulara cevap verebilirler. – Pablo PicassoYanlış sorular için doğru cevaplar yoktur. – Ursula K. Le GuinCevaplarımız var diye düşünmüştük; Yanılmışız, onlar sorularımızmış. – BonoÇözümün görülmesinden önce sorunun görülmesi önemlidir. – G.K. Chesterton

Konuyla ilgili sevdiğim bir videoyu da paylaşayım.

The Expert

İş arama ve mülakatlara gitme herkes için zorlu bir süreçtir. Hele de o sıra işsizseniz işler sizin için daha da zorlaşıyor, çünkü bir şekilde rahat hissetmediğinizde ieltişim kurmak ve kendinizi ifade edebilmeniz de dolayısıyla hayli zorlaşmakta.Özellikle IT sektöründe iyice yaygınlaşmış Recruiter (işe alım) firmaları ile işe alım yapmak isteyen firmalar dünayda ve ülkemizde oldukça çoğalmış görünüyor. Avantaj ve dezavantajları var elbette. Benim kişisel gözlemim avantajının -geneli için konuşayım- aday ve alıcı taraf için düzgün, detaylı ve yılmadan ilgileniyorlar.Tabi bazıları telefonla halledilebilecek konular için sırf görmek için ekstra araya girip öylesine bir görüşme yaparak alıcı şirkete gönderiyorlar. Profesyonel head hunter lara lafim yok, ancak o ilk görüşmeye gidecekseniz de kendinizi parçalamanıza gerek yok. Vakit yaratabiliyorsanız sırf firma görüşmesi randevusunu alabilmek için gidin bulunun derim. Çünkü birçok firma kariyer yada kendi site ilanlarına gelen taleplerinize dönmeyerek aracı kurum ve kişiler ile yürütüyorlar süreci.Ayrıca, IT sektöründe de birçok sektör gibi hep deneyimli uzman kişi aradıklarından ötürü, eğer çalıştığınız bir yer yoksa, gösterebileceğiniz basit de olsa 1-2 proje denemenizi erişebilir bir yere koyarsanız sizin için önemli avantaj sağlayacaktır.Malesef bizim sektörümüz pek de kaliteli ve yönetilebilir yazılımı önemseyerek çalışan aramıyor. Bilgi ve yetenek yerine deneyimli adam arama tercihlerinin sebebi de bir şekilde hızlıca o işin/projenin tamamlanması diye düşünüyorum. Böylece hızlıca proje tamamlanmasını sağlamayı hedefliyorlar. Durum böyle olunca, doğal olarak piyasa bu yönde evriliyor. O yüzden proje bazlı çalışan arayan bir sürü outsource danışmanlık firması türemiştir. Bu gidişatın avantaj/dezavantaj/ekonomik etkileri ve sonuçlarını ben de merak edenlerdenim. Bakalım zaman ne gösterecek :)Sektörün hareketliliği; kriz, yıl sonu hedeflerin tutturulması yada yeni yıl proje ve bütçe çalışmaları(ki Kasım Aralık aylarında orta ve büyük ölçekteki firmalarda kendi içlerindeki işlerden ötürü oldukça meşgul olabildiğini biliyoruz), yaz tatili dönemleri gibi değişkenlere bağlı olduğunu sanıyorum. Bu sebeple bunları da kariyer planlamasında göz önüne almayı ön hazırlık için atlamamak gerektiğini düşünüyorum.Mülakatlarda, sıklıkla karşılaştığım sorulardan biri de neden firmamız? Eğer size ulaşılıp da görüşmeye gitmişseniz, hele de bu büyük bir teknolojisi firması filan değilse -şahsen Bilişim sektöründe olan benim için – soru anlamsız gibi geliyor. Benim cevabım oldukça sade oluyor: “‘Burada iş var dediler geldim.’, ‘Çağırdınız geldik.’, ‘Daha iyi kazanabileceğim bir fırsat olabilir diye.'” gibi bir şeyin formal hali :) Şimdiye kadar bu durust cevaplar için can sıkıcı bir tepki ile karşılaşmadım neyse ki. Sonuçta rasyoneliteye karşı olması daha düşük bir ihtimal zaten.”Sizi ne mutlu eder, nasıl bir ortamda ne iş yapmak istersiniz?” şeklindeki sorularla karşılaşma yüzdesi yüksek. Eğer bu soru kendimi ifade edebilmiş ve bitmeye yakın sırada onem yüklenmediği belli bir şekilde sorulduysa, “Bir tatil beldesinde denize karşı şortla işimi yapsam çok daha mutlu olurum elbette” diye cevap vermekten çekinmiyorum.Bir de “Kendinizi 5 yıl sonra kariyer planında nerede görüyorsunuz?” sorusu var. Buna cevabım, genellikle aslında mülakatı gerçekleştirdiğim kişiyle ortak düşünceyi yakaladığım ve sohbeti başlatan bir cevap oluyor. Diyorum ki; “Öncelikle belirteyim ki, biliyorum yönetici ve teknik kişilerin yetenekleri ve verimliliği birbirinden oldukça farklıdır. Yani generalsiz savaşa girilemeyeceği gibi yalnız generallerle de savaşa girilmez. Ancak en azından benim gözlemlerime göre bir uzmanın/teknik personelin ücreti ile yöneticilerin ücret aralıkları hiç kesişmiyor. Dolayısıyla başka yerlerde 50 yaş ve üzerinde üretimde çalışan mühendisler yada kod geliştiren bilişim uzmanları olduğunu duysam/görsem de burada örnek alabileceğim henüz bir şey görmedim. Dolayısıyla 5-10 yıl içinde kazandığım tecrübelerle çalışanları yönlendirebileceğim edebileceğim yönetsel bir pozisyona gelmek istiyorum. Çünkü daha fazla para kazanmak istiyorum.”Önemli Not: Bunları sadece, belki birilerinin işine yarayabilir, faydalanabilir diye paylaştım. Kattığım esprili cümleler kesinlikle herhangi bir çalışanı yada aracı kurumu yermek kastıyla yazılmamıştır. Tüm sektörlerde emek veren her seviyedeki çalışana en az kendi meslektaşıma ve kendime saygı duyulması gerekliliğini önemsediğim kadar önemsiyor ve saygı duyuyorum.İş görüşme aşamalarıyla ilgili derlediğim genel bilgileri de aşağıda paylaşıyorum.Bildiğiniz gibi iş görüşmeleri belirli bir takım aşamalar ile gerçeleşen bir durumdur. Tüm bunları göze aldığımızda sizde bir iş pozisyonu için başvurduğunuzda belli başlı bir takım süreçlerden geçmeniz gerektiğini bilmelisiniz. İşte bu konuda siz değerli okurlarımızı bilgilendirmek amacı ile hazırladığımız iş görüşmesi aşamaları yazımıza hoşgeldiniz. Öncelikle ne tür kademelerden geçmeniz gerektiğini yüzeysel olarak belirtelim. İlk aşamanız, başvuru formunu doldurup ilgili firmaya iletmek olacaktır. Artık birçok firma iş başvuru imkanını online platform üzerinden tanımaktadır. Bu sebeple şirketlerin kendi web sitelerinden ya da iş ilanlarını yayınlayan web sayfalarından konu ile ilgili iş başvurularında zahmetsiz bir şekilde başvurabilirsiniz. Tabi bu sırada sizin özgeçmişinizi elit bir şekilde anlatan bir bilgi bankası oluşturmanız gerekecektir. Aynı zamanda başvuru yazısı da hazırlayarak neden o işe talip olduğunuzu ilgili firmaya iletebilirsiniz. Böylece yapmanız gereken ilk ve en önemli işi atlatmış olacaksınız. Ardından işverenin sizin başvurunuzu inceleme süreci doğacaktır. Bu zaman zarfında yeterli görülürseniz tarafınıza telefon ya da e- posta yolu ile bilgilendirme cevabı alacaksanız.İş görüşmesi aşamaları evresinin diğer bölümü tamamen firmanın izlediği personel alım süreci ile ilgilidir. Örneğin bazı firmalar net üzerinden ön eleme için bir takım sınavlar yapmaktadırlar. Online yapılan bu sınavı geçerseniz sizi görüşmeye davet etmekte ve bir dizi mülakattan geçirmeye devam etmektedirler. Bu süreçler ve değerlendirmeler sonucunda eğer yeterli bulunursanız tarafınıza yetkili kişi tarafından iş teklifinde bulunulmaktadır. Gerekli şartları görüşmek üzere son bir kez görüşmeye çağırılmak ve işi kabul ettiğiniz takdirde gerekli evrakları teslim ettikten sonra aktif olarak işinize başlayabilirsiniz. Bu bahsettiğimiz kriterler sizleri çok daha iyi bir iş sahibi yapmak için öncü bir kişi olma yönünde de ilerletecektir.Sevdiğiniz işi yaparak üretken olmamız ve yüksek hayat kalitesinde yaşamamız dileğiyle, hepimize bol şanslar…
Kısa cevap isteyenlere hemen verelim “Hayır, dişe dokunur bir gelir elde etmek pek de mümkün görünmüyor şimdilik.”İnternetin hayatımızın bir parçası olmasının ardından, internet üzerinden para kazanma yolları da yeni bir kazanç kapısı haline geldi. Ancak anket dolduranlar mı, para kazanma umuduyla site site gezenler sayesinde tık oranını artıranlar mı karda bilinmez. Peki kimler giriyor sitelere? Öncelikle belirli bir mesleği olmayan ev hanımları. Evde bilgisayarı bulunan kadınlar; temizlik yaparken, yemek arasında kısacası boş vakitlerinde ortalama 10-15 dakikada bir anket dolduruyorlar. Öğrencilerin de ilgisini çekiyor anket doldurararak para kazanma. Zamanlarının çoğunu bilgisayara başında geçirdikleri için, arada derede anket doldurabiliyorlar. Yine mesleği gereği bilgisayar kullananların da tercihi olabiliyor. Peki anket sitelerinin o uçuk vaatleri gerçek mi? Mesele bir anket doldurarark 25 dolar kazanmak mümkün mü? Tahmin ettiğiniz gibi cevabı hayır. Ne zamanki bir  anket başına 1 ila 3 dolar verildiği şeklinde reklam görürseniz o zaman, evet güvenilir diyebilirsiniz. Hangi siteler güven telkin ediyor şeklinde bir arama yaparsınız internette bir çok ante sitesiyle karşılırsınız. Bu isimlerin hemen altında, size referans numarasıyla anket formu gönderen kişiler göreceksiniz. Böylece o kişinin referansıyla siteye ulaşmış ve kendisine kazandırmış olacaksınız. Bu da kazanç elde etmenin başka bir yolu. Türkiye’de bilinen en popüler anket sitesi Napolyon. Bu siteye her girişinize 50 puan kazanıyorsunuz. Sık sık anket geliyor; ancak her anketten belirlenen puanı kazanacaksınız diye birşey yok. O anket ile ilgili hedeflenen kişi sayısına ulaşıldıysa küçük puanlarla yetiniyorsunuz. Site yine de boş göndermiyor yani sizi. Önemli alışveriş siteleriyle anlaşmalı olan Napolyon anket sitesi, Türkiye’nin en güvenilir sitelelerinden diyebiliriz. Ancak belirlenen alışveriş sitelerinden indirim kuponu almak konusunda iyi. En büyük ödül olan 100 lira için 100 bin puan elde etmek gerekiyor. O da öyle hemen olacak bir şey değil. Yani sabırlıysanız yapabilirsiniz ancak. Diğer güvenilir anket sitesi ise Ben derim ki! Medyada yaptığı araştırmalarla tanınan sitede puanlar akçe olarak adlandırılıyor. Tematik anketler yapılıyor sitede ve kamuoyu araştırmaları konusunda önemli anketler geliyor. burada Napolyon kadar sık gelmiyor anketler, burada da sebbat ederseniz bir kaç ayda elinize 10 lira felen geçebilir. Örnekleri çoğaltabiliriz. İngilizcesi olanlar yabancı sitelerden faydalanabilirler bu konuda(surveymonkey yi duymuşsunuzdur).  İpoll güvenilir bir anket sitesi; ancak fazla anket gelmeyen sitelerden. Mobrog ve All World panel de cüzi kazançlar getirebilir. Başta da söylediğimiz gibi yüksek kazanç elde edeceksiniz palavralarına kesinlikle inanmayın. Hepsi zaman kaybı. Onun yerine daha mantıklı işler peşine düşmenizde fayda var. Hele ki piyasadaki anket kitaplarına asla itibar etmeyin, tüm bunların para tuzağı olduğunu unutmayın. Herkese bol kazançlar dilerim…

GÜVENLİ ŞİFRE NASIL OLUŞTURULUR? Günümüzde teknolojinin gelişimi ile birlikte internet kullanımının artması sonucunda elektronik şifre ve bilgi güvenliği gibi riskler de gündeme geldi.Ortalama bir internet kullanıcısının e-posta adresleri,forum ve web siteleri üyelikleri,sosyal medya hesapları,işletim sistemi hesapları bulunmaktadır.Ayrıca online alışverişler,kredi kartı kullanımları,online bankacılık,online para transferleri gibi yüksek güvenlik gerektiren işlemler de artık oldukça popüler uygulamalardır.

 İnternet üzerinden yapılan bu gibi işlemler için kullanılan sisteme göre kullanıcı ismi,sanal klavye kullanımı,şifre ve güvenlik kodlamaları gibi bazı güvenlik seviyelerini başarıyla geçmeniz gerekmekmektedir.Tam güvenliğin sağlanması açısından ilk adım ise hatırlanması daha kolay ama tahmin edilmesi zor şifrelerle siber korsan saldırılara karşı dayanıklı şifreler oluşturabilmektir oldukça önemlidir.Zayıf oluşturulan şifreler hacker denilen kişiler ve gruplar tarafından farklı yöntemlerle kolayca kırılarak hesapları kolayca ele geçirebilmektelerdir. Peki bu tip güvenlik sorunlarına ve risklerine karşı güvenli şifre oluşturmak için dikkat edilmesi gereken noktalar nelerdir? Şifrelemede bazı önemli noktalar:-Oluşturduğunuz şifreler,ardışık sayı veya kelimelerden oluşmamalıdır.Örneğin;1,2,3,4,5. a,b,c,d,e gibi.-Şifreler kısa ve tek kelimeden oluşmamalıdır.Örneğin;Ahmet,Fenerbahce,Ankara-Şifreler kesinlikle sadece karakter ya da sayı grubundan oluşmamalıdır.Örneğin;111111,aaaaaa gibi.  Güvenlikli ve güçlü şifreler en 8 karakterden ve rakam,harf ve simgelerden oluşmalıdır.Farklı yöntemler kullanarak güçlü şifreler oluşturulabileceği gibi hiç unutmayacağınız bir deyim,söz gibi önemli noktalar ile şifreler oluşturulabilir.   Oluşturduğunuz şifreniz ne kadar uzun ve karışık olursa o oranda güçlü ve kırılması zor olmaktadır.Aynı zamanda da kolay hatırlanabilir şekilde olmalıdır.Bu tür  şifreler de Keylogger programlarına karşı çok fazla etkili olmasa dahi güçlü şifre oluşturmak kadar onu güvenle korumak da önemlidir.Bu yüzden şifrelerinizi herkesin görebileceği şekilde bilgisayar veya kağıt üzerinde bulundurmayın.Şifrelerinizi başkaları asla paylaşmayın.Özellikle internet tarayıcıların şifre hatırlama özelliğini kullanmayınız ve belli aralıklarla mevcut şifrelerinizi değiştirmeyi ihmal etmeyin.

Clean Code, ya da Temiz Kod – Kaliteli Kod, uzunca bir süredir etrafta dolaşan etkileyici  tamlamalardan birisi. Malum, böyle terimlere “buzzword” diyorlar İngilizce’de.

Google’da “Clean Code” araştırması yapınca karşınıza ilk iki sırada Robert C. Martin’in kitabı ve değişik bir tarzda hazırlanmış “Clean Code” eğitim videolarının bulunduğu Clean Coders sitesi geliyor. Martin’i ben 90’lı yıllarda C++ Journal gibi dergilere yazdığı nesne-merkezli programlamayla ilgili yazılarından tanıyorum. Kendisi bu dünyanın en eskilerindendir, 1964 yılında programlama başladığını kendisi ifade ediyor. Şu anda da “Clean Code” yaklaşımının öncülüğünü yapıyor.

Clean Code’un ne olduğu  ile ilgili bazı kısa tanımlar var. Örneğin Bjarne Stroustrup “elegant and efficient” yani “zarif ve etkin” derken Grady Booch “simple and direct” yani “basit doğrudan” diyor. Michael Feathers ise biraz daha uzun bir şekilde “dikkatli, önem veren birisi tarafından yazılmış görünen koddur” diyor Clean Code için. Bu konuda belki de en uzun tanımı Dave Thomas yapıyor:

“Temiz kod, orijinal yazarından başka developer tarafından okunabilir ve geliştirilebilir. Birim ve kabul testlerine sahiptir. Anlamlı isimleri vardır. Bir şeyi yapmanın pek cok yolundan ziyade tek bir yolunu saglar. Açık-seçik olarak tanımlanmış minimal bağımlılıklara sahiptir ve temiz ve minimal bir API sunar. Kod okunabilir olmalıdır, çünkü sadece programlama diline bağlı kalınırsa, her türlü gerekli bilgi kodda açık bir şekilde ifade edilemez.”Yazının Devamı İçin