CSS3 FLEX YAPISI, GRID YAPIMI

[vc_row][vc_column][vc_column_text css=”.vc_custom_1563529735538{margin-bottom: 0px !important;}”]CSS3 ile gelen bu yeni özellikle siteleri ana yapısını oluşturma konusunda bize yardımcı olacak en uygun yöntemlerden biri olarak merkeze oturdu. CSS3 flex yapısı ilk olarak display: box; (2009) olarak kullanıma başlayan bu özellik daha sonrasında display: flexbox; (2011) olarak evrimleşti, 2014’ten itibaren ise günümüzde kullandığım son hali olan display: flex; şeklinde kullanıyoruz.

Bir kaç cümle ile bize sağladığı avantajlardan bahsetmek gerekirse, site ana yapının oluşturulmasında (grid yapısı olarak değerlendirebilirsiniz) ve herhangi bir bölüm içerisinde bize daha esnek ve belirsiz bir düzende çalışma imkanı sunmakta.  Ayrıca div değil de table tercih etmenize sebep olan vertical-align(dikey ortalama) konusuna da kesin bir çözüm oluyor. Şimdi flex yapısının detaylarını inceleyebiliriz.

 

CSS3 Flex yapısının özelliklerini anlatmak için aşağıda ki HTML örneği ile anlatmaya çalışalım.[/vc_column_text][/vc_column][/vc_row][vc_row][vc_column][vc_raw_html]JTNDY29kZSUzRSUwQSUyNiUyMzYwZGl2JTIwY2xhc3MlM0QlMjJmbGV4LWNvbnRhaW5lciUyMiUzRSUwQSUyMCUyMCUyMCUyMCUyNiUyMzYwZGl2JTIwY2xhc3MlM0QlMjJmbGV4LWJveCUyMiUzRSUyNiUyMzYwJTJGZGl2JTNFJTBBJTIwJTIwJTIwJTIwJTI2JTIzNjBkaXYlMjBjbGFzcyUzRCUyMmZsZXgtYm94JTIyJTNFJTI2JTIzNjAlMkZkaXYlM0UlMEElMjAlMjAlMjAlMjAlMjYlMjM2MGRpdiUyMGNsYXNzJTNEJTIyZmxleC1ib3glMjIlM0UlMjYlMjM2MCUyRmRpdiUzRSUwQSUyMCUyMCUyMCUyMCUyNiUyMzYwZGl2JTIwY2xhc3MlM0QlMjJmbGV4LWJveCUyMiUzRSUyNiUyMzYwJTJGZGl2JTNFJTBBJTI2JTIzNjAlMkZkaXYlM0UlMEElM0MlMkZjb2RlJTNF[/vc_raw_html][/vc_column][/vc_row][vc_row][vc_column][vc_column_text css=”.vc_custom_1563541765209{margin-bottom: 0px !important;}”]Flex özelliğini devreye girmesi için container’ınıza yani kutularınızın bulunduğu div’e display: flex; veya display: -flex; yazmanız gerekmektedir. Bu CSS kodunu yazdığınız da artık container’ınız esnek bir hale gelmiş oluyor.

 

Ek olarak conitaner’ın düzenleme konusunda flex yapısında alacağınız desteği inceleyelim.

 

Flex yapısını kullanların ilk aklına gelen sorulardan biri ise flex hale gelen bir div’in genişliğini kendiniz ayarlayamadığınız, bu problemi de flex-basis özelliği bu problemi çözmekte. Yüzdeli değer vererek responsive (flex-basis: 50%) diğer konularda problemlerinizi çözecektir. Daha öncesinde yaptığımız float: left ve width: 50% yazmamıza eşit oluyor

 

justify-content

Yazılışı justify-content: (değer);

En çok işinizi kolaylaştıracak özellikler arasında bulunan justify-content item, box’larınızın hangi konumda duracağını belirleme konusunda yardımcı oluyor. Daha öncesine kadar kullandığımız float ve position’a artık gerek kalmıyor.  Aldığı değerler aşağıda ki gibidir.

 

Özellikler (Değer)

  • Center
  • Flex-end
  • Flex-start
  • Space-around
  • Space-between
  • Space-evenly

[/vc_column_text][/vc_column][/vc_row][vc_row][vc_column][vc_raw_html]JTNDY29kZSUzRSUwQS5mbGV4LWNvbnRhaW5lciU3QiUwQSUyMCUyMCUyMCUyMGp1c3RpZnktY29udGVudCUzQSUyMCUyOGRlJUM0JTlGZXIlMjklM0IlMEElN0QlMEElMEElM0MlMkZjb2RlJTNF[/vc_raw_html][/vc_column][/vc_row][vc_row][vc_column][vc_column_text css=”.vc_custom_1563530027503{margin-bottom: 0px !important;}”]

Align-items: (Değer)

Flex yapısının bu özelliği ile dikey anlamda box’ların yerini belirlemek hizalama konusunda yardımcı olan bir özelliktir.

  • Center
  • Flex-end
  • Flex-start

 

 

Flex-direction: (Değer)

Bu özelliği kullanarak flex container içerisinde bulunan item’ların diziliş sırasını tam tersine çevirme işlemi yapabilirsiniz. Eski css yöntemleri ile bunu yapmak neredeyse imkansızdı. Responsive konusunda bu özellik işimizi kolaylaştırmaktadır.

  • Column-reverse
  • Row-reverse

 

[/vc_column_text][/vc_column][/vc_row][vc_row][vc_column][vc_column_text]

Kaynaklar

https://fatihhayrioglu.com/yenilenmis-flex-modulu/

 

Diğer Yazılarımız

https://peakup.org/blog

[/vc_column_text][/vc_column][/vc_row]

Dynamics 365 Customer Engagement yeni depolama seçenekleri

Dynamics 365 Customer Engagement yeni depolama seçenekleri2016 yılından bu yana Dynamics 365 için depolama seçenekleri her 20 tam kurumsal kullanıcı için 5 GB eklenmesiyle oluşuyordu; ekstra depolamayı ise GB başına ücretlendirilen sistem ile kiralayabiliyorduk.

Depolama alanı içerisinde mail ekleri, sistem dataları ve loglar yer kaplıyordu. Özellikle çok büyük yer kaplayanlar arasında mail ekleri yada sisteme eklenen ekler yer almaktaydı.

Ek kapasite satın almaları genellikle dosya eklerinin biriktirilmesi ve tüketilen bulut depolamasıydı.

 

Dynamics 365 Customer Engagement Yeni Depolama Seçenekleri

Yeni depolama yöntemi ile tüm başlıklar bölünmüş şekilde karşımıza çıkıyor ve bu da Dynamics kullanıcılarına daha fazla esneklik sağlıyor.

 

Yeni gelen depolama bölümleri şu şekilde;

-Common Data Service for Apps Database Capacity

Varlık tanımları ve kayıt verileri için işlemsel veritabanı depolaması.

-Common Data Service for Apps File Capacity

Notlar veya e-postalar için ekleri D365 Müşteri Anlaşması uygulamalarında ve PowerApps’lerde saklama kapasitesi. Bu, Word belgelerini, görüntü dosyalarını, PDF dosyalarını, elektronik tabloları, videoları ve diğer işletme dosyalarını içerebilir.

-Common Data Service for Apps Log Capacity

Denetim günlükleri için ayrı depolama kapasitesi, kayıt ve özelliklerin veri değişikliklerini izleyecektir.

Dynamics 365 Varsayılan depolama

Dynamics 365 Varsayılan depolama

Aktif hale getirilen yeni Dynamics 365 abonelikleri için, varsayılan kiracı çapında depolama kapasitesi:

  • Database Capacity: 10 GB
  • File Capacity: 20 GB
  • Log Capacity: 2 GB

Kullanım eklemeleri ile oluşan haklar

          Ek depolama hakkı, D365 Enterprise kullanıcı lisansı başına tahakkuk etmektedir. Aşağıdaki tabloda kişi başı ekleme detayları mevcuttur.

  • Database Capacity: 250 MB kişi başı
  • File Capacity: 2 GB kişi başı
  • Log Capacity: yok

 

Kuruluşunuzun Dynamics 365 bulut depolama yetkisini kontrol etmek için bugün bize ulaşabilirsiniz.

 

Ek Üretim Dışı / Üretim Ortamları

Önceden, Dynamics 365 yetkilendirmeleri, müşterilerin ek bir ücret karşılığında daha fazla ekleme seçeneğiyle, her abonelikte tek bir üretim ve bir üretim dışı ortam dağıtmalarını sağlamaktaydı.

Aktif hale getirilen yeni abonelikler için, artık ek ortamlar satın almaya gerek kalmayacak. Apps veritabanı kapasitesi için en az 1 GB CDS (Common Data Service) olması koşuluyla yeni üretim veya sanal alan örnekleri oluşturulabiliyor. Oluşturulan her bir ek Dynamics ortamı, en az 1 GB veritabanı kapasitesi tüketiyor.

Depolama Kullanımını Yönetme

Depolama Kullanımını Yönetme

Yeni raporlama merkezi, yöneticilere mevcut depolama kapasitesi hakkında detaylı bir rapor sunmaktadır. Uygulama Veri Kapasitesi, Uygulama Günlüğü Kapasitesi ve Uygulama Dosya Kapasitesi için CDS’de depolama dağılımlarını ve kullanımlarını ayrıntılandıracak başka raporlar da sunuyor.

Yöneticiler, depolama sınırlarına yaklaşıldığında veya aşıldığında bir e-posta bildirimi alıyorlar. Eğer istenirse yeni kapasite eklentileri satın alarak daha fazla depolama alanı eklenebilir.

6 Basit Adımda Online Siber Güvenlik

Artan farkındalığımıza rağmen hala çok sayıda siber sızıntı görmeye devam ediyoruz, neden dersiniz? Son yıllarda gerçekleşen siber güvenlik zaafiyetlerinin sebeplerini incelediğimizde 3 temel unsur ortaya çıkıyor : İnsan Faktörü, Kimlik ve Parolalar, Sistemlerin Zayıf Noktaları.

Zaman ilerledikçe halka açık daha fazla bilgi paylaşan dijital bir topluluk olmamız, kendimizi sosyal mühendislik ve kopya sistemler aracılığıyla yapılan ataklara karşı daha açık hale getirmektedir. Bu atakların nihai amacı finansal dolandırıcılık yapmak için cihazınızı ele geçirmek ya da kurumunuzda Active Directory gibi sistemler üzerindeki dijital kimliğinizi çalarak şirket kaynaklarına erişmektir. Bu durum aynı zamanda fotoğraflar, yazışmalar gibi kişisel bilgilerin açığa çıkması riskini de taşımaktadır. Eğer parolanız çalınırsa, siber saldırgan geleneksel güvenlik önlemlerini kolayca aşabilir. Ve eğer hesabınız önemli işlemleri yapmaya yetkili ise hacker ataklarını sizin adınız ile kolayca gerçekleştirebilir.

Online servislere, şirket içindeki uygulama ve sunuculara bağlanırken hem kişisel olarak hem de şirketiniz siber atakların kurbanı olma riski taşıyor. Bu yüzden siber saldırganların kurbanlarını nasıl hedef aldığını, riski azaltmak için neler yapabileceğinizi ve dijital kimliğinizin, bilgilerinizin ya da paranızın çalınmasını saldırganlar için nasıl daha zor hale getireceğinizi bilmek kritik öneme sahiptir.

digital vulnerability

O zaman online dünyada güvende olmak ve bir siber saldırı kurbanı olmaktan korunmanın 6 basit ipucuna bakalım :

1. Sık Sık Dosyalarınızı Yedekleyin :

Önemli dosyalarınızı düzenli olarak mevcut bilgisayarınızdan başka bir ortama yedeklediğinizden emin olun. Bu, siz ödeme yapana kadar dosyalarınızı şifreleyerek erişilmez hale getiren fidye isteme gibi kötü niyetli bir yazılımdan korunmanın en iyi ve en hızlı yöntemidir. Güncel bir yedeğinizin olması sayesinde hızlıca sisteminizi son haline getirebilir ve küçük bir etki ile dijital yaşamınıza devam edebilirsiniz.

2. Uygulama ve Sistemlerinizi Güncel Tutun

Uygulama, cihaz ve sunucularınızın ihtiyaç duyduğu güvenlik güncellemelerini almasına ve gerekiyorsa sisteminizi baştan başlatmasına izin verin. Bu, dönemin yaygın ataklarına karşı dijital kimliğinizin çalınması ve cihazınıza erişilmesinin önüne geçmenin en iyi yollarından biridir.

3. K0mpl3ks ve @k1ll1 Şifre & Parolalar Kullanın

Şifre/Parola seçerken, o hesaba özel ve güçlü bir şifre belirlediğinizden emin olun ve şüpheli bir işlem olduğunu düşündüğünüz anda parolanızı sıfırlayın. Sosyal ağlar gibi online sistemler parolanızın ne kadar eski olduğunu, ne kadar zayıf olduğunu ve ne zaman değiştirmenin iyi olacağını size hatırlatmakta hiç de iyi iş çıkarmazlar. Hesabını her ihtimale karşı korumak senin sorumluluğun. Ayrıca aynı şifreyi/parolayı farklı hesapların için kullanmanı tabi ki önermiyoruz. Bu şekilde kişisel hayatında kullandığın servislerden vereceğin bir açık, kurumuna zarar verebilir (ya da tam tersi).

Çalıştığın kuruma bir iyilik yapıp Active Directory ya da diğer kurumsal uygulamaların parolalarını sadece bir SMS atarak ve cevabını yine SMS ile alarak sıfırlamak için bir self-servis parola sıfırlama çözümü kullanması için onları yönlendirebilirsiniz.

4. Çok Aşamalı Kimlik Doğrulamadan (Multi-Factor Authentication) Faydalanın

Kullandığın sistemlerin çok aşamalı kimlik doğrulamasını aktifleştirerek ve etkin kullanarak, siber saldırganların online hesaplarına kolayca erişmesini ve bilgilerini çalmasını, onlar için zorlaştırabilirsiniz. Kötü niyetli kişileri durdurmak için tek güvenlik kontrolünün bir şifre olmasına izin vermeyin deriz.

5. Önünüze Gelen Her Linke Tıklamayın

Evet, bir şeylere tıklamayı ya da dokunmayı seviyoruz. Bir linke tıklamadan önce, üzerindeki mesajı okuyup kendinize şu 2 soruyu sormanız lazım : Bu beklediğim bir şey mi? Bunu gönderen kişiyi/kurumu tanıyor muyum? Eğer tıklamanız gerekiyor ama şüpheleriniz varsa gönderen kişiye ya da etrafınızdaki birilerine sorun. Çünkü tıkladığınız şey verilerinize erişmek ve çalmak isteyen kötü niyetli casus bir yazılım, fidye yazılımı ya da bir uzaktan erişim aracı olabilir. İnsanların %30’ü böyle linklere tıklıyor; bu yüzden her zaman uyanık ve dikkatli olun, tıklamadan önce durun ve düşünün.

6. Ortak Kullanıma Açık Şifresiz Wi-Fi Ağlarında Yaptıklarınıza Dikkat Edin

Halka açık bir Wi-Fi ağına VPN olmadan bağlanmayın. Eğer güvenli bir işlem yapacaksanız mümkünse telefonunuzdaki ağı tercih edin (3G/4G/LTE). Ortak ağlardan parolanızı değiştirmeyin ve şifrenizi gerektiren sosyal ağ, bankacılık sistemleri vb. sitelere girmeyin. Ortak kullanıma açık bir Wi-Fi ağına bağlanırken, bulunduğunuz yerdeki ağın sağlayıcısına Wi-Fi erişim noktasının tam adını ve şifresi olup olmadığını mutlaka sorun. Ortamda sunulan Wi-Fi ağ isminin benzeri bir ağ ismi ile yayın yapmak, bilgisayar korsanlarının yaygın kullandığı yöntemlerden biridir.

“Bilindik Ağlara Otomatik Bağlan” ayarını pasife çekin ya da “Ağa Bağlanırken Sor” ayarını aktifleştirin. Korsanlar “Havaalanı” ya da “Kafe” gibi ortak isimleri Wi-Fi erişim noktası ismi olarak kullanır ve bilgisayarınızın sizin bilginiz dışında bu ağa otomatik bağlanmasını hedeflerler. Bu yüzden genel bir alışkanlık olarak cihazlarınızın “Ağa Otomatik Bağlan” tarzı ayarlarını kapatın.

Sahte web sitelerine karşı güvenliklerini sürekli geliştirdikleri için web tarayıcınızın her zaman en güncel sürümünü kullanın. Bu, gerçeğiyle bire bir aynı görünüp kullanıcı adı ve şifrenizi girmenizi bekleyen sitelere karşı sizi koruyabilir. Güvendiğiniz bir sosyal ağdaki chat üzerinden fotoğrafınızı içeren bir video linki geldiğinde dahi, eğer o linkin şüpheli olduğunu düşünüyorsanız tıklamayın. Ayrıca sitelerde gezerken tıkladığınız bazı reklamların sizi doğrudan o sahte sitelere götürebildiğini unutmayın.

Bu en iyi uygulama önerileri ile online ortamlarda siber güvenlik çemberi içinde kalmanız ve bir sonraki siber suçun kurbanı olmamanız dileğiyle.

Çalışanların Parola Sıfırlama ve Kilitlenen Hesabı Açma İşlemlerini Uzaktan Gerçekleştirebilmeleri

Çalışanların Parola Sıfırlama ve Kilitlenen Hesabı Açma İşlemlerini Uzaktan Gerçekleştirebilmeleri

PassGate kullanarak bir şirket çalışanı, unuttuğu parolasını sıfırlama (resetleme) ve kilitlenen hesabını açma işlemlerini kendi kendine gerçekleştirebilir. Şirketler şunu biliyor ki çalışanlar özel hayatlarında facebook, linkedin vb. internet hesaplarının şifrelerini sıfırlamaya alışıklar. Buradan yola çıkarak Active Directory (AD) kullanıcı hesaplarını destekleyecek şekilde bu işlevi kendi organizasyonlarına getirmek anlamlı olacaktır.

Hali hazırda PassGate kullanan bir çok şirket ve kullanmayı hedefleyen diğerleri için ürünün -hem ofis içinde hem de ofis dışında olan- çalışana sağladığı bütün seçenekleri bildiğinizden emin olmak istiyoruz.

Unuttuğu parolasını sıfırlamak, kilitlenen hesabını açmak ya da güvenliğini artırmak için parolasını değiştirmek isteyen çalışana sağlanan 3 yöntem bulunmaktadır :

 

1.Seçenek : Kendi Telefonundan SMS Atarak

Aşağıdaki görüntüden anlaşılacağı gibi çalışan parola yazarak, telefonundan kısa mesaj (SMS) gönderir. Saniyeler içerisinde sıfırlanan parolası, yine çalışanın kendi telefonuna kısa mesaj olarak iletilir.

 

PassGate SMS ile Parola Sıfırlama

 

2.Seçenek : Self-Servis Web Portalini Kullanarak

Çalışanlar, parolalarını self-servis web portalinden sıfırlayabilirler. Önce mail adresini yazan kişi, ardından sistemde yer alan cep telefonuna gelen kısa kodu girerek güvenlik adımlarını tamamlar. Kullanıcı dostu ara yüzden yapılan 2 yönlü doğrulamanın (2-Factor-Authentication) ardından kısa süre içerisinde yeni parolası çalışana SMS ile iletilir.

 

PassGate Self-Servis Web Portalinden Parola Sıfırlama

 

3.Seçenek : Bir Çalışan için IT Uzmanı, Yönetim Panelini Kullanarak

PassGate self-servis bir çözümdür. Ancak yetkisi olan bir IT Uzmanı, acil durumlarda bir çalışanın parolasını  sıfırlayabilir. IT uzmanı bu işlem sırasında yeni parolayı görmez. Yeni parolası çalışana SMS ile iletilir.

 

PassGate SMS ile Parola Sıfırlama

 

Çalışanlarınızın kendi parolalarını sıfırlamaya ya da kilitlenen hesaplarını açmaya ihtiyaçları olduğunda, PassGate kullanarak sahip olacakları çözümleri gördünüz. Bu noktada çalışanlarınızın her birinin kendisine uyan en iyi yöntemi kullanması için onlara seçenek vermek her zaman iyi bir fikirdir. Eğer PassGate kullanmıyorsanız ve denemek isterseniz bu linkten iletişime geçebilirsiniz.

Learning C# in 15 Minutes

I’ve come across these types of content on the internet over the years and always wanted to make my own, so here it is; I’m here to teach you C# in 15 minutes. Of course, you have to have a history with any type of OOP language (Java, C++ etc.) in general to get all this and make connections with your existing know-how. The whole purpose is to give you a cheatsheet to look at on your journey. If you believe you can learn any programming language from scratch in 15 minutes then your best bet would be to teach yourself C++ in 21 days

Alright then, let’s begin…

https://gist.github.com/fatihdgn/39309f25003270db4dc836cfd719433d

Let’s end it there. Please comment if you want me to include something that I haven’t yet.
Hope you enjoyed this, see you next time.

 

Build your first serverless app using .NET Core on AWS – dotnetKonf

3 Kasım 2018 Cumartesi günü, dotnetKonf etkinliğinde ‘Build your first serverless app using .NET Core on AWS’ başlıklı bir workshop gerçekleştirdik. Katılımın yoğun olduğu, çok keyifli bir etkinlik oldu.
Workshop içerisinde kullanılan sunumları ve yapılan demonun kaynak kodunu aşağıda bulabilirsiniz.

Konuşmacılar : Fatih Doğan , PEAKUP, Anıl Erduran , AWS

Sunumlar;  AWS sunumu Demo sunumu

Demo kaynak kodu; dotnetKonf.Registration

Bir sonraki etkinlikte görüşmek üzere.

Dynamics CRM Voice Of  The Customer – 1

Müşterinizden gelen geri bildirimleri tek bir arayüzden takip edebilmenizi sağlayan Dynamics CRM Voice Of  The Customer ile ilgili detaylı bir inceleme yapmaya çalışacağız.

Bir hizmet sonrası veya genel müşteri memnuniyetinizi hizmet alan taraftan alabilmek için birkaç farklı  yöntem bulunmakta. Bunlardan bir tanesi de müşterinize yapabileceğiniz anketler, Voice Of  The Customer  bu anketleri merkezi şekilde yönetmenizi ve olumsuz hizmetlere hızlı geri dönüşler yapmanızı sağlamakta. Voice Of  The Customer  Dynamics CRM içerisine ekleyebileceğiniz ücretsiz olarak sunulan bir uygulama.

Şimdi Voice Of  The Customer nasıl yüklenir ve nasıl anketler oluşturulur inceleyelim :

CRM servisimizde Voice Of  The Customer  yüklü değilse bunu CRM admin rolü içeren bir kullanıcı ile CRM yapımıza dahil etmemiz gerekiyor.

CRM Admin portalı üzerinden yüklemek istdiğimiz örneğin üzerine tıklıyoruz ve çözümler bölümünden Müşterinin Sesi uygulamasına tıklayarak yüklüyoruz.

Uygulamamız eklendikten sonra yapmamız gereken aslında fazla bir ayar yok , genel ayarları otomatik olarak yapıyor. Bize düşen bu süreci dahil edeceğimiz akışı tasarlamak. Genel ayar ekranlarına bakalım,

İlk anketimizi oluşturalım,  anket formları arasında geçiş yapayarak hem genel anket ayarlarını yapabiliyoruz hemde anket arayüz değişikliklerini gerçekleştirebiliriz,

Anket içerisinde görünümler arası değişim yaparak hem anket tasarım aracını açabilir hem de o anketle ilgili ayarları yapabiliriz.

Öncelikle  bir anket giriş ekranı tasarlayalım. Bunu için sağ tarafta bulunan ve anketimizin içinde kullanabileceğimiz sürüklenebilir alanları kullanarak anketi dolduracak kişiden almak istediğimiz bilgi alanlarını oluşturuyorum.

İsim soy isim ve adres bilgisi isteyelim. Bu alanları istersek hızlı güncelleme butonuna basarak revize edebilir, istersek de detaylı güncelleme alanından değiştirebiliriz. Detaylı güncelleme alanına bastığımızda bu cevap ile ilgili takip ayarları, zorunluluk ayarları veya istersek ilerde kullanmak üzere bir alana bağlayabiliriz. Bu oluşturduğumuz alanlar aslında temel olarak ankette kullanacağımız alanları oluşturmaktadır.

Bu yazımızda temel olarak ilk anketimizi oluşturduk. Sonraki yazıda bu anketin genel ayarlarını yapmayı ve yayınlama ayarlarını inceleyeceğiz.

Python Hakkında Ufak Bir Söyleşi

Python son yıllarda popülerliği gittikçe artan ve artmaya devam eden bir programlama dili. Bu yazımızda bu popülerliğin arkasındaki sebepleri, yadsınamaz büyüklükteki topluluğunu ve tabii ki dilin kendisini inceleyeceğiz.

Geçmiş

Herşey, Guido van Rossum tarafından, aslında bir hobi projesi olarak geliştirilen Python’un 1991 yılında duyurulmasıyla başladı. Tabii çok daha öncesinde, 1980’li yıllara dayanan bir tarihi bulunan Python, 1989 yılında implemente edilmeye başlanmış. 1994 yılının Ocak ayında 1.0 stabil sürümüne ulaşabilmiş, en son stabil sürümü olan 3.6.5’e ise 28 Mart 2018 tarihinde ulaşmıştır.

Bugün

Stack Overflow Blog sayfalarında yayınlanan 6 Eylül 2017 tarihli ‘The Incredible Growth of Python’ adlı yazıda, Dünya Bankası’nın yüksek gelirli olarak belirlediği ülkelerin diğer ülkelere oranla farklı teknolojiler kullandığı ifade ediliyor ve yapılan araştırma sonucu elde edilen verilere göre Python’ın bu ülkelerde en hızlı büyüyen programlama dili olduğu sonucuna varılıyor.

Peki Neden?

Benim nezdimde ilk nedenin yazım kolaylığı ve okunabilirliği olduğunu söyleyebilirim. Bu faktörler , dilin öğrenilmesini de ciddi oranda kolaylaştırıyor. İnternette yapabileceğiniz küçük çaplı bir araştırma ile de büyük bir çoğunluğun bu sebeplerle tercih ettiğini görebiliyorsunuz. Örneğin, diğer popüler programlama dilleri ile karşılaştırdığınızda direkt göze çarpan fark, dilin space-sensitive yani boşluğa duyarlı bir dil olması oluyor. Dilin dizayn felsefesine göre okunabilirliği arttırması amaçlı alınmış bir karar aslında bu. Bizzat Guido van Rossum’un The History of Python‘da yayınladığı ‘Python’s Design Philosopy’ yazısında bahsettiği gibi, direkt olarak kendisinin belirtmediği dizayn ilkelerinin, dilin gelişiminde büyük katkısı olan Tim Peters tarafından yazıya dökülmeye çalışılması ile ortaya çıkan Zen of Python maddelerinden bir tanesi de ‘Readability counts’ yani ‘Okunabilirlik önemlidir’ maddesidir. Tabii dilin bu kadar popüler olmasını sağlayan tek şey ‘yazım kolaylığı’ ya da ‘okunabililiği’ değil.

Yapay Zeka Çağı

Başka bir neden ise son yıllarda popüler olan fakat geçmişi aslında o kadar da yakın tarih olmayan, AI, Deep Learning, Neural Network gibi konulara çok kolay bir şekilde girebilmenizi sağlayacak bir çok paketin, örnek kodların ve topluluk desteğinin bulunması. Aslında anlayabileceğiniz üzere bu konular çokta “basit” değil. Sadece teknik yetkinlik yetersiz kalıyor çünkü bu teknik yetkinlikleri edinebilmek için zaten öncelikle kendinizi biyolojik ve felsefik olarak yeterli bilgiye sahip olacak şekilde geliştirmeniz gerekiyor. Çünkü temelinde yapmaya çalıştığınız şey bir bilgisayarın insan gibi düşünmesini sağlamak. Topluluk buradaki bariyeri, yukarıda bahsettiğim etmenler ile biraz daha aşağı çekmeye çalışarak daha çok insana ulaşabilmesini sağlıyorlar ve topluluğun günden güne büyüme hızının artması da bir şeyleri doğru yaptıklarının bir göstergesi olsa gerek.

Web Geliştirme

Tabii başka bir etmen de Web uygulamaları geliştirebilmeniz. ‘Web Uygulamaları Geliştirebileceğiniz Diller ve Platformlar’ yazısında da incelediğimiz, Django, Flask ve Pyramid gibi paketleri kullanarak hızlı bir şekilde web uygulamaları çıkartabiliyorsunuz. Burada da topluluk desteğinin oldukça yüksek olduğunu belirtmekte fayda var.

Gelecek

Bugün başlığı altındaki Stack Overflow yazısı, Python’ın geleceği hakkındaki görüşlerini de belirtiyor ve tahminlerde bulunuyor. Bugüne kadar aldıkları trafik verisi ile 2018 yılı dahil olmak üzere önündeki iki yılı tahminlemeye çalışan Stack Overflow, Python’ın 2020’ye kadar Java ile arasındaki farkı oldukça açacağını söylüyor. Ayrıca Java trafiklerinin, eğitim sistemlerinde oldukça ağırlıklı kullanılan bir dil olduğundan sonbahar ve ilkbahar dönemlerinde trafiğin arttığını ve yaza doğru azaldığı da belirlenmiş ve öngörüde bu bulgular da düşünülerek tahminleme yapılırken ‘Seasonal and Trend composition using Loess’ (STL) modeli kullanılmış.

Ayrıca, büyüme oranlarına göre de diller karşılaştırıldığında, Swift ve R’a göre çok daha hızlı şekilde büyüme kat ettiğini görüyoruz.

Sonuç

Python, öğrenme zorluğu düşük, geniş bir uygulama yelpazesine sahip ve topluluk tarafından oldukça destek gören, programlamaya yeni başlıyorsanız ya da başlamayı düşünüyorsanız eğer kesinlikle önerebileceğim bir dil.

Bir sonraki yazıda görüşmek üzere.