Microsoft ile Data Science (Veri Bilimi)

Microsoft Professional Program bünyesinde takip ettiğim Data Science (Veri Bilimi) başlıklı edX kurslarına paralel olarak bu yazı dizisini kaleme alıyorum. Seri, genel olarak veri bilimine ilgi duyan; ancak daha önce bilgisi olmayanlara yönelik. Yazılarda değinilen teknolojiler içerisinde Spark, R ve Python gibi Microsoft dışı yöntemler bulunmasına rağmen, ağırlıklı olarak Microsoft teknolojileri ile data science uygulamaları anlatılmaktadır.

Bu yazı, bütün alt başlıklara ait yazıların indekslendiği bir ana giriş yazısıdır.

Ek bir not olarak SQL bildiğini varsayarak ilerliyorum; buna göre SQL konusunda eksiğin olduğunu düşünüyorsan önce bunu tamamlayıp ardından bu yazıları okumanı tavsiye ederim.

Data Science

Microsoft ile Data Science konusunu şu alt başlıklarla ele almak mümkün :

Data Science Giriş

Data Scientist rolüne sahip birinin ne iş yaptığını tanımlayarak başlıyoruz. Görsel, analitik ve istatistiksel tekniklerle veri ile nasıl çalışılır ve keşfedilir, bu konuları irdeliyoruz. Bu konuyla ilgili mevcut yazılar şunlar :

 

Veriyi Analiz Etmek ve Görselleştirmek
Excel ve Power BI ile farklı veri kaynaklarından nasıl data alınacağını ve birleştirileceğini, nasıl analiz yapılacağını, verilerin nasıl görselleştirileceğini, hazırlanan dashboard’ların iş kullanıcıları ile mobil ve web platformunda nasıl paylaşılacağını inceliyoruz.

 

İstatistik Bilimini Anlamak

Giriş seviyesinde istatistik ve olasılık öğreneceksin. Bunları veri analizi ve veri bilimi temelleri üzerine Excel kullanarak gerçekleştiriyoruz.

 

Kod ile Veriyi Keşfetmek : Veri Bilimi için R’a ve Python’a Giriş

Data Science profesyonellerinin tercihi olan istatistiksel programlama dili R dilini öğreneceksin. Söz dizimi temellerini, değişkenleri, basit işlemleri, veri yapılarının (vektörler, matrisler, veri çerçeveleri, listeler vb.) nasıl ele alınacağını keşfedeceksin.

Basit aritmetik işlemler, değişkenler ve veri yapıları olmak üzere Python’un temellerini öğreneceksin. Python fonksiyonları ile akış kontrollerini keşfedip, gerçek zamanlı veri ile kendi görsel raporlarını oluşturacaksın.

 

Temel Data Science Konseptlerini Anlamak

İstatistiksel analiz, veri temizliği ve dönüşümü, R ve Python ile verinin görselleştirilmesi ve Microsoft Azure Machine Learning dahil olmak üzere veri bilimi ile uğraşırken işine yarayacak önemli konsept ve teknikleri öğreneceksin.

 

Machine Learning’i Anlamak

Sınıflandırma, regresyon, kümeleme ve tahminleme gibi makine öğrenmesi modellerini nasıl geliştireceğini, ölçeceğini ve optimize edeceğini öğreneceksin.

 

Kod ile Veriyi İşlemek ve Modellemek : R ve Python ile Data Science için Programlama

R ile programlamayı biraz ilerletiyoruz. R veri yapılarını ve söz dizimlerini keşfederek lokal bir dosyadan ya da bulutta bir veri tabanından nasıl veri okuyup yazılacağını, veri ile nasıl çalışılacağını, nasıl özet veriler elde edileceğini ve ihtiyacına göre veriyi nasıl dönüştüreceğimizi öğreneceksin.

Verinin içinde saklı olan desenleri ortaya çıkarmak için efektif ve iyi bilinen madencilik modellerini uygulayacak şekilde Python’ı nasıl kullanacağını öğreneceksin. Veri görselleştirmesi, niteliklerin seçimi (feature selection), boyutların azaltılması, kümeleme, sınıflandırmayı keşfedeceksin.

 

Uygulamalı Makine Öğrenmesi

Metin analitiği, konumsal veri analizi, imaj işleme ve zaman serileri tahminlemesi gibi predictive (kestirimci) problemleri çözmek için makine öğrenmesini nasıl uygulayacağını öğreneceksin.

 

HDInsight içinde Spark ile Predictive (Kestirimci) Çözümler Uygulamak

Kestirimci analizler ve makine öğrenmesi çözümleri üretmek için Microsoft Azure HDInsight içinde Spark’ı nasıl kullanacağını öğreneceksin. Apache Spark ile Python, Scala, R kullanarak veriyi nasıl temizleyip dönüştüreceğini, makine öğrenmesi modellerini nasıl oluşturacağını ve gerçek zamanlı makine öğrenmesi çözümlerini nasıl hayata geçireceğini öğreneceksin.

 

Microsoft R Server ile Büyük Veriyi Analiz Etmek

En güçlü programlama dillerinden biri olan R kullanarak Microsoft R Server ile büyük veri setlerinin nasıl analiz edileceğini öğreneceksin.

PeakUp Blog içinde yer alan bütün Data Science kategorisindeki yazılara ulaşmak için bu linki kullanabilirsin.

Data Scientist (Veri Bilimci) Olmanın Keyifli Yanları Neler?

Data Scientist olma yoluna girmeden önce bu mesleğin keyifli yanlarına göz atalım. Microsoft Corp’da çalışan gerçek profesyonellerin görüşlerinden derlediğim bu liste sana ilham verecek :

 

Problem çözmenin verdiği haz
İş kullanıcılarından çok sayıda kompleks problem gelir. Bir şeyler tahmin etmenizi isterler, ellerindeki verilerin, işlerini nasıl geliştireceğini anlamak isterler.

 

Mevcut verinin iş süreçlerine gerçekten değer katmak için, nasıl oyunun içerisine sokulacağını çözmeye çalışmak
Veriyle oynamak, veriyi farklı formatlara sokmak her an seni şaşırtabilir.

 

Data Scientist olmanın en keyifli yanlarından biri de meydan okumaktır.
Verilerin hikayesini araştırırken, neredeyse araştırmacı gazeteci olmakla eşdeğer bir hissiyat oluşur. Yeni bir veri seti ile uğraşırken, bir sonraki adımda ne keşfedeceğini hiçbir zaman bilemezsin.

 

Ürünle ilgili yeni bir bilgi elde etmek için gerekli soruları çözmek ve puzzle’ın parçalarını birleştirerek ilerlemek.
Bazen hiç bitmeyecek bir puzzle’ı tamamlamaya çalıştığını düşünürsün. Görünürde anlamsız olan terabyte’larca veri üzerinde çalışırsın; ama daha derinlere indikçe verinin içinde çözüm için çok önemli etkiye sahip bazı desenler ve anlamlar bulursun. Eğer veriyi dikkatlice dinlersen veri konuşur, sana hikayeler anlatır.

 

Farklı geçmişe sahip insanlarla birlikte çalışmak.
Bir veri bilimci kimya, biyoloji, psikoloji,  ekonomi ya da finans geçmişine sahip olabilir. Bu kadar çeşitliliğe sahip farklı insanlarla, farklı sektörlere yönelik farklı problemleri çözmek için farklı fikirleri bir araya getirmek çok zevklidir.

 

Veri bilimci olmak için ekstra heyecanlı bir dönemden geçiyoruz.
Dünyada şimdiye kadar biriken bütün verilerin toplamı, artık her birkaç yılda 2 katına çıkıyor. Bu, altına girdiğin işin zorluğunu gösterirken; sonuç gördüğünde alacağın keyfi garanti ediyor.

 

Microsoft Professional Program bünyesinde takip ettiğim Data Science (Veri Bilimi) başlıklı edX kurslarına paralel olarak bu yazı dizisini kaleme alıyorum. Seri, genel olarak veri bilimine ilgi duyan; ancak daha önce bilgisi olmayanlara yönelik. Yazılarda değinilen teknolojiler içerisinde Spark, R ve Python gibi Microsoft dışı yöntemler bulunmasına rağmen, ağırlıklı olarak Microsoft teknolojileri ile data science uygulamaları anlatılmaktadır.

Diğer makaleleri bulabileceğin serinin indekslendiği giriş yazısına erişmek için bu linki kullanabilirsin.

Excel Veritabanı Fonksiyonları (Database Functions)

Bu yazımızda sizlerle Excel Veritabanı Fonksiyonları’na İngilizce ifadesiyle Database Functions uygulamalarına ilişkin örnekler üzerinde çalışma yapacağız.

Veritabanı fonksiyonları İleri Excel eğitimlerinin en önemli konularından biridir.

Microsoft’a göre veritabanı fonksiyonunun tanımı:

Listede veya veritabanında bulunan bir kayıt alanında (sütunda), belirttiğiniz koşulları karşılayan sayılar içeren hücreleri hesaplar.

Yukardaki tanımın anlaşılması biraz zor gibi ama veritabanı fonksiyonları aksine çok kolay bir fonksiyon yapısıdır. Veritabanı fonksiyonları Excel’in çok işlevsel fonksiyonları olmalarına rağmen çok bilinmeyen fonksiyonlardır. Sql mantığından yola çıkarak tablolar üzerinden formül ile istenilen değerlerin bulunması yarar. Mantıksal fonksiyonlar olan Etopla, Eğersay, Eğerortalama, Çoketopla, Çokeğerortalama, Çokeğersay gibi fonksiyonlar ile yapacağımız işlemleri çok daha pratik ve kısa formüller ile yapmamızı sağlar. Veritabanı fonksiyonlarında normal Excel tabloları veritabanı kabul edilir. Ayrıca ölçüt tablosu oluşturmamız gerekir. Bu konuyu bir örnek üzerinden anlattığımızda daha anlaşılır olacaktır.

Aşağıdaki gibi bir tablomuz var ve bu tablodan bir değer bulmak istiyoruz.

 

Bunun için sorumuz ise şöyle: Ali isimli satış temsilcilerinin 15 Ağustos 2009 tarihinden önce Adana’da yapmış oldukları Satış tutarının toplamı nedir?

Evet yukarıdaki soruyu görenlerin ilk aklına gelecek şeyler şunlardır;

  1. Veriyi filtrelerim sonra en son elimde kalan veriden toplamı bulurum.Bu şekilde bir çözüme gidebilirsiniz ama soruda birkaç değişiklik yaptığınızda hemen filtreleri tekrar düzenlemek zorunda kalacaksınız ki eğer o tablolar farklı işlemler için kullanılıyorsa tümden bir karmaşaya sebebiyet verir.
  2. ÇokEtopla kullanırım. En çok kullanılan çözümlerden biridir ama bu çözümde de performansta düşme söz konusu olacaktır. Ayrıca her ölçüt için formül içine 2 parametre daha girmek gerekir ve formüller uzar gider haliyle hata yapma ihtimali de çok yükselir.
  3. Veritabanı fonksiyonlarını kullanırım. En sağlıklı çözüm yöntemi veritabanı fonksiyonlarını kullanmaktır. DSum ya da Türkçesi ile VSeçTopla kullanırım diyebilirsiniz.

Avantajları:

Hızlıdır, Formüller diğerlerine göre çok kısadır, Hata yapma ihtimali çok azdır.

Dejavantajı: Ölçütlere girilen değerler tablodakiler ile bire bir aynı olmak zorundadır ki bu diğer durumlar için de geçerlidir.

Veritabanı fonksiyonların ayırt etmek de çok kolaydır. Bütün veritabanı fonksiyonları Türkçe’de VSeç kelimesi ile İngilizce de ise D karakteri ile başlar. Örneğin VSeçTopla fonksiyonu DSum fonksiyonudur gibi. Toplamda 12 tanedir. En çok kullanlanları ise DSum, DAvarage, DMax, DMin ve DCount fonksiyonlarıdır.

Aşağıdaki Excel’de bulunan Veritabanı fonksiyoları bulunmaktadır.

Fonksiyon Açıklama
DAVERAGE Belirtilen koşulları sağlayan bir listenin veya veritabanının alanındaki değerlerin ortalamasını hesaplar.
DCOUNT Belirtilen koşulları sağlayan bir listede veya veritabanında bir alanda sayı içeren hücre sayısını döndürür
DCOUNTA Belirli koşulları sağlayan bir liste veya veritabanının alanındaki boş olmayan hücrelerin sayısını döndürür
DGET Belirtilen koşulları sağlayan bir listenin veya veritabanının alanından tek bir değer döndürür
DMAX Belirtilen koşulları sağlayan bir listenin veya veritabanının alanındaki maksimum değeri döndürür
DMIN Belirli koşulları sağlayan bir liste veya veritabanının alanından minimum değeri döndürür
DPRODUCT Belirtilen koşulları sağlayan bir liste veya veritabanının alanındaki değerlerin çarpımını hesaplar.
DSTDEV Belirli koşulları sağlayan bir liste veya veritabanının alanındaki standart sapmayı (popülasyonun bir örneğini temel alarak hesaplar) hesaplar.
DSTDEVP Belirtilen koşulları sağlayan, bir liste veya veritabanının alanındaki standart sapmayı (tüm popülasyona dayalı olarak) hesaplar.
DSUM Belirtilen koşulları sağlayan bir liste veya veritabanındaki alanın toplam değerini hesaplar.
DVAR Belirli koşulları sağlayan, bir liste veya veritabanının alanındaki değerlerin varyansını (bir popülasyondan bir örneğe dayalı olarak) hesaplar.
DVARP Belirli koşulları sağlayan bir listedeki veya veritabanındaki bir alandaki (tüm popülasyona dayalı olarak) varyansı hesaplar.

Veritabanı fonksiyonlarını kullanırken söz dizimi aşağıdaki gibidir.

=VSEÇTOPLA(veritabanı, alan, ölçüt)

VSEÇTOPLA işlevinin söz diziminde aşağıdaki bağımsız değişkenler bulunur:

  • Veritabanı    Gereklidir. Listeyi veya veritabanını oluşturan hücre aralığıdır. Başlıkları ile beraber taratmak gerekir.
  • Alan    Gereklidir. İlgili hesaplama için hangi sütunun kullanıldığını belirtir. Örneğimizde bulmak istediğimiz sonuç “Satış Tutarı” toplamlarıdır. Başlığı çift tırnak içine yazmak yerine sütunun listedeki konumunu gösteren bir sayıda (tırnak işareti arasına almadan) girebilirsiniz. Örneğin: ilk sütun için 1, ikinci sütun için 2, vb.
  • Ölçüt    Gereklidir. Belirttiğiniz koşulları içeren bir hücre aralığıdır. Başlıkları ile beraber taratılmak zorundadır.

Tekrar gelelim sorumuza;

Ali isimli satış temsilcilerinin 15 Ağustos 2009 tarihinden önce Adana’da yapmış oldukları Bilgisayar Satış tutarının toplamı nedir?

Bu soru için öncelikle her bir alan kadar ölçüt çıkarmamız gerekiyor.

Soruda İsim, Tarih, Bölge ve Ürün bilgileri geçtiği için 4 ölçüt alanımız var.

Ölçütleri aşağıdaki gibi çıkarırken iki duruma dikkat etmemiz gerekiyor. Birincisi Ölçüt başlıklarının tablo başlıkları ile aynı olması gerekiyor, İkincisi ise yazdığımız değerlerin tabloda bulunan bir veri olması gerekiyor. Aksi durumda sonuç sıfır 0 (Sıfır) gelebilir.

 

İlk önce bu soruyu ÇOKETOPLA fonksiyonu ile çözelim:

Yukarıda görüldüğü üzere fonksiyon karmaşık ve uzun olduğu için sonra değiştirilmesi gerekirse dikkatli şekilde düzenlenmesi gerekiyor. Aksi durumda çalışmayabilir.

Şimdi de VSEÇTOPLA fonksiyonunu kullanacağız. 4 farklı parametre olmasına rağmen formül uzunluğu aşağıdaki görüntüden daha uzun olmaz.

 

Görüldüğü üzere bu fonksiyon yapılarında ölçütler tablosu taratıldığı için parametreleri fonksiyonlara tek tek girmek gerekmez buda bizim için az kod çok iş anlamına gelir.

Başaka bir yazı görüşmek üzere.

SharePoint Framework’de Çok Dilli Geliştirme

SharePoint Framework ile uygulama geliştirirken çok dilli bir yapıya ihtiyacımız varsa bunu Resource yapısını kullanarak çok basit bir şekilde yapabiliriz.

Sharepoint Online ile bu özelliği kullanmak çok kolay. Eğer WebPart içerisinde tanımladığınız diller, kullanıcının alternatif olarak seçtiği diğer diller içerisinde yer alıyorsa gerekli dilde gösterim otomatik olarak yapılıyor.

Öncelikle kullanıcımızın varsayılan dil seçeneğinin yanında kullanmak isteyeceği alternatif dili nasıl ayarlayabiliriz bu adımı tamamlayalım. Bunu en kolay şekilde yapabilmek için aşağıda yer alan linki tıkladıktan sonra gereken adımları takip etmeniz yeterli olacaktır. https://eur.delve.office.com

 

Ben İngilizce diliyle SharePoint kullandığım için örneği de Türkçe ve İngilizce dil seçenekleri üzerinden anlatacağım. Görüldüğü üzere dil seçenekleri ve diğer alanlarla ilgili olarak Privacy(Gizlilik) ayarları da yapmak mümkün görünüyor.Çok dilli portalların yanında, birden fazla ülkeden SharePoint kullanıcısına sahipseniz buradaki ayarları kullanarak belli standartları genel olarak tanımlayabilmeniz mümkün.

Bir önceki SharePoint Framework’e Giriş ve WebPart Geliştirmek
makalesini takip ederek baştan bir WebPart projesi için kurulum yapabilirsiniz. Bu kurulumu yaptığınızı varsayıyorum.

Microsoft’un en son çıkarttığı, kısa sürede çok sevilen IDE diğer adıyla editörü yani VS Code veya Visual Studio kullanarak uygulamalarınızda gerekli kodu çok kolay bir şekilde yazabilirsiniz. Ben hafifliği ve Cross Platform geliştirmenin mümkün olabilmesi için bu makalede şimdilik Visual Studio Code kullanacağım.

Command Prompt ile gerekli klasörün içerisindeyken “code .” komutuyla projeyi VS Code ile açalım.

 


Kırmızıyla işaretlediğim alandan da görebileceğiniz üzere ağırlıklı olarak çalışacağımız klasör “src” klasörü. Bunun yanında WebPart uygulamaları geliştirirken versiyon kontrol sistemi olarak Git’de kullanabiliriz. Gerekli dosyalar varsayılan olarak gelmektedir.

Makalemizin ana konusu olan çok dilli yaptığı Resource üzerinden sağlayabilmek için srcloc klasörüne bir göz atalım.

mystrings.d.ts dosyamız Resource mantığı içerisinde “Key” bilgilerinin tutulduğu dosyamız. Bu dosyayı çok dilli bir yapı kullanmıyorsanız bile şimdilik silmeminizi tavsiye ederim. Dosya içerisinde varsayılan olarak gelen 3 adet Property yani key bulunuyor. Bunun yanında ben ekstra olarak ApplicationTitle adında, string veri türünde bir Property/Key daha tanımladım.

Şimdi loc içerisinde tr-TR global Locale Standartını kullanarak bizim için gerekli dosyamızı oluşturalım. Burada kullanacağınız tire karakterinin, alttire yerine normal tire olması önemlidir. Dosya içeriğini aşağıda görebilirsiniz.

Artık dil dosyasıyla ilgili olarak tanımlamalarımız bitti. Hemen WebPart uygulaması üzerinde nasıl kullanacağımızı görelim.

Öncesinde bu dosyaların oluşturulması, intellisense desteği alabilmek ve css ile ilgili. Scss uzantılı dosyalardan gelen uyarılardan kurtulmak için “gulp build” komutunu çalıştırarak projemizi derleyelim.

Proje ile ilgili tüm geliştirmeyi yapacağımız HelloWorldWebPart.js dosyasını açalım. Burada HelloWorldWebPart isimi benim kurulum aşamasında verdiğim isim, elbette siz farklı bir isim vermişseniz farklı olacaktır.

Eğer C# veya Java gibi programlama dillerine hakimseniz dosyayı ilk açtığınızda TypeScript yapısı size çok tanıdık gelecektir.

15. satırda yer alan Render methodu tüm C#’daki Console uygulamalarında yer alan Main methodu gibi uygulamanın başladığı Entry Point olarak kabul edilebilir. Burada proje içerisindeki CSS’in dahi çok programatik bir şekilde kullanıldığını görmek mümkün. Oluşturduğumuz Resource dosyası içerisindeki anahtarlara ${strings.PropertyName } notasyonuyla ulaşmak ve bu aşamada intellisense desteği de alabilmek mümkün.

Uygulamamız en basit şekilde görüntülemek için hazır. “gulp serve” komutuyla uygulamayı çalıştıralım ve iki farklı kullanıcı tarafında hangi dillerin kullanıldığını görelim.

İki farklı Browser’da iki farklı hesaptan giriş yapıp Web Part uygulamasını bir sayfaya eklediğimde elde ettiğimiz sonuç aşağıdaki gibidir!

Makalenin kaynak koduna buraya tıklayarak PeakUp Github hesabından ulaşabilirsiniz.

Microsoft Connections ve Microsoft Listings: Çevrimiçi Asistanlarınızın Yardımıyla İşinizi Büyütün!

Office 365’i küçük ölçekli işletmeler için daha değerli ve verimli hale getirmek üzere, Microsoft’un Business Premium’a getirdiği üç önemli uygulama var:

  • Microsoft Connections: Kolay kullanımlı bir e-mail marketing ve pazarlama hizmeti sağlıyor.
  • Microsoft Listings: Yaptığınız işe dair bilgileri ve gelişmeleri, en popüler sitelerde kolayca ve hızlıca yayınlamanızı sağlayacak bir yol sunuyor.
  • Microsoft Invoicing: Profesyonel faturalar oluşturmanın ve ödeme süreçlerini hızlandırmanın yeni bir yöntemi olarak konumlandırılıyor.

Microsoft Invoicing, Türkiye pazarında yer almayacak, dolayısıyla onun üzerinde durmayacağız; ancak diğer iki ürünü inceleyeceğiz.

Microsoft Connections: Basit email marketing araçları ile satış süreçlerinizi destekleyin!

Email marketing, satışların artırılmasında kritik önem taşıyan bir süreçtir; ancak bu sürece başlamak ve onu yönetmek gerçekten zahmetli ve zor olabilir. Microsoft Connections sayesinde, önceden tasarlanmış bülten, duyuru, teklif ve referans şablonlarını kullanarak profesyonel görünümlü email marketing kampanyaları oluşturabilirsiniz ve daha da önemlisi, bunu gerçekten çok kolay bir şekilde yapabilirsiniz. Ek olarak, kullanıcıların ve müşterilerinizin, mailing listelerinize kolaylıkla abone olmalarını veya abonelikten çıkmalarını sağlayacak yöntemleri kullanabilirsiniz. Connections, yeni ve potansiyel müşterilerinize ulaşma, var olan müşterilerinizin memnuniyetini ve bağlılıklarını güçlendirme ve işinizi büyütme gibi konularda size yardımcı olacak, etkili bir uygulamadır.

Connections ile, mailing listeleriniz büyüdükçe, müşterilerinizi belirli özelliklerine göre, etkili ve net şekilde ayırıp gruplandırabilirsiniz. Performans grafikleri ve abonelerin aktivite güncellemeleri sayesinde, her kampanyanız için tıklamalar, yeni abonelikler, ödemeler, aboneliklerden çıkışlar gibi göstergeleri takip edebilir, böylelikle nelerin düzgün çalışıp yolunda gittiğini ve nelerin yolunda olmadığını görebilirsiniz.

Connections, Office 365 Business Premium (İş Ekstra) aboneliğine sahip kullanıcılar için, web’de ve iOS ile Android cihazlarda kullanılabilir durumdadır. Web’de Office 365 Business center panelinden, iOS veya Android cihazlarınızda ise Microsoft Connections mobil uygulaması ile erişebilirsiniz.

Connections, yakın gelecekte, tüm müşterilerin kullanımına açık bir Outlook eklentisi olarak da hayatımıza girecek.

Microsoft Listings: Firmanızın ve yaptığınız işin yeni müşterilerce keşfedilmesini sağlayın!

İşinizin ve faaliyetlerinizin çevrimiçi ortamda aktif ve takip edilebilir durumda olması, potansiyel müşteriler tarafından keşfedilebilmenin etkili bir yoludur. Bununla birlikte, çevrimiçi varlığınızı uygun şekilde düzenleyip geliştirmek, kritik sayılabilecek bilgileri güncel tutmak ve sitelerdeki performansları ayrı ayrı ölçümlemek, süreci karmaşıklaştırıp zaman alıcı bir hale getirebilir. Microsoft Listings, Facebook, Google, Bing ve Yelp gibi platformlarda, işinize ve firmanıza dair bilgileri yayınlamanız ve yönetmeniz için kolay ve ideal bir yöntem sunar.

Microsoft Listings, Office 365’i kullanmaya başlarken girdiğiniz şirket ve firma profili verilerinizi çekerek işe başlar. Bunun ardından, süreç dahilinde, Office 365 Business center panelinden ulaşacağınız Listings panonuzda iş profilinizi güncellediğinizde, bu değişiklikler, Facebook, Google ve Bing’e otomatik olarak yansır. Bu işlemleri gerçekleştirmek ve söz konusu platformlarda listelenelerek Listings’i yönetmek için, kullanıcınızın Office 365’te Genel Yönetici (Global Admin) rolüne sahip olması gerekir.

Listings, işinizle ve firmanızla ilgili yapılan derecelendirmeleri, değerlendirmeleri ve geri bildirimleri kolayca takip etmenizi sağlayacak bir web paneli de içerir. Tüm platformlardaki verileri tek seferde kontrol edebilir veya bunları ayrı ayrı gözlemleyip karşılaştırmayı da tercih edebilirsiniz.

Listings size, müşterilerinizin fikirlerini ve görüşlerini anlayıp çevrimiçi ortamdaki bilinirliğinizi güçlendirmeniz adına çok kolay ve etkili bir çözüm sunmuş olur.

Keyifli çalışmalar!

Azure NestedVM

Merhabalar, bu makale Azure’da NestedVM özelliğini test etmek için lab ortamı kuracağım. Azure’ da öncelikle sanal makine açmamız gerekiyor. NestedVM özelliğini kullanmak için birkaç dikkat etmemiz gereken bazı detaylar mevcuttur:

  • Açtığımız sanal makinenin boyutu (size) Dv3 serisi ve Ev3 serisi olmalıdır.
  • Açtığımız makinelerin bölgesine (region) dikkat etmemiz gerekiyor. Dv3 serisi ve Ev3 serisi makineler her bölgede (region) açılmamaktadır.
  • Dv3 ve Ev3 serisi makineler hangi bölgede açıldığını aşağıdaki makaleden bulabilirsiniz.
  • Makalenin içerisinde detaylı bilgi mevcut olucaktır.(https://azure.microsoft.com/en-us/regions/services/)

İlk olarak Azure’da bir sanal makine oluşturalım.

Sol alandan “Virtual Machine ” alanına tıklayalım. Ardından sol üst köşedeki “Add” butonuna tıklayalım.

Açılan ekrandan Azure’un bize sunduğu hazır image’lerin başlıklarını görüntülüyor olacağız. Biz Windows Server özellikli bir makine kuracağımız için “Windows Server”a tıkladıktan sonra sağda çıkan ekrandan kuracağımız sanal makinenin işletim sistemini seçiyor olacağız. Ben Windows Server 2016 Datacenter’ı seçerek devam edeceğim.

Resimde de göreceğiniz gibi kuracağımız sanal makineye bağlanacak olan kullanıcın adını, şifresini , Azure da görüntüleyeceğimiz adını, subscription’ını, Resource group’unu ve location’ını belirtiyor olacağız.

Ardından gelecek olan ekrandan makinenin boyutunu(size) belirteceğiz.

Makalenin ilk bölümünde de belirttiğim gibi seçmiş olduğumuz bölgeye göre sanal makine boyutlarını görüyor olacağız. Bize 3 adet önerilen makine boyutu sunacak. Eğer bizim kullanacak olduğumuz altyapı daha fazla kaynak harcayacaksa sağ üstte bulunan ” View All “a tıkladıktan sonra tüm boyutları görüyor olacağız.

Resimde de göreceğiniz gibi açılan ekranda ise makineyi bir sanal network’e dahil edebiliriz,oluşturduğumuz sanal network subnet ekleyebilir hatta network’ü 2 subnet’e ayırabiliriz. Makineye bir publıc ip ve network security group da ekleyebiliriz. Network security group’u ekleyerek makine üzerinde açılması ya da kapatılması gereken portları yönetiyor olacağız.

“Purchase(satın alma)” butonuna tıklayarak makinenin kurulumunu başlatmış olacağız.

Ardından Azure’da kurduğumuz makineye kullanıcı adı ve şifresi ile makineye uzaktan bağlantı gerçekleştirelim. NestedVM özelliğini kullanmak için Hyper-V rolünü konumlandırmamız gerekiyor. “Add Roles and Features”e tıklayalım.

Ardından kurmak istediğimiz Rolü ya da özelliği hangi makineye kurmak istediğimizi belirtip “Next” butonuna tıklayalım.

Ekleyeceğimiz olacağımız Hyper-V rolünü seçip “Next” tuşuna basalım.Ardından “Features” ekranına geldiğimizde bir özellik eklemeyeceğimizden dolayı “Next” diyelim.

“Virtual Switches” Alanına geldiğimizde bir network adaptör seçmemizi isteyecek. Biz seçmeden devam edeceğiz. Çünkü sanal içinde sanal oluşturacağımız için Hyper-V içerisindeki sanal makine ya da makineler internete çıkmayacak. Azure’ da oluşturduğumuz makinede “NAT” kuralı oluşturarak Hyper-V üzerinde olan makineleri internete çıkaracağız.

Hyper-V rolünün kurulumu tamamlandığında makineyi yeniden başlatmamız gerekecek.

“Virtual Switch Manager” alanına tıklayarak bir adet sanal switch oluşturalım. Sırasıyla;

  1. Sanal switch olarak “Internal”ı seçelim
  2. Create Virtual Switch’e tıkladıktan sonra ok tuşuna tıklayalım.

Oluşturmuş olduğum “Virtual Switch”i Azure’da açmış olduğum makinede de görüntülüyor olacağız.Azure da olan makinin network ayarlarına gelerek, eklemiş olduğumuz “Virtual Switch”in IPv4 ayarlarına girelim.

Sonrasında IPv4 ayarlarını konfigüre edelim. İstediğiniz bir network aralığından bir ip adresi tanımlayalım. Ben 192.168.0.0/24 network’ünü tercih ettim. IP adresini verdikten sonra Azure’daki makine de PowerShell’i Administrator olarak çalıştıralım.

Powershell üzerinden bir NAT kuralı yazalım. Internal IP adresi kısmına ise Azure’daki makinenin “Sanal Switch”ine verdiğimiz IP bloğunu yazalım.

New-NetNat
–Name
NVMNat
–InternalIPInterfaceAddressPrefix
192.168.0.0/24

Ardından Hyper-V ortamına dönüyoruz. Hyper-V de oluşturduğumuz makinelere oluşlturmuş olduğumuz Internal Swith’i tanımlıyorum. Sırasıyla;

  1. Sanal makineye sağ tıklayıp “Settings”
  2. Virtual Switch’den oluşturmuş olduğumuz Internal Switch’i seçelim.
  3. Ok tuşuna basarak ekranı kapatalım.

Hyper-V de oluşturduğumuz sanal makineye bağlanarak. Network ayarlarına gelelim sonrasında oluşturduğumuz NAT’ın network’ünden bir IP adresi verelim. Burada dikkat etmmiz gereken unsur Gateway olarak Azure’daki makinenin IP adresini Gateway olarak vermek olacaktır.

Yapmış olduğumuz işlemlerin ardından ,Hyper-V de olan sanal makine üzerinden internete çıkıyor ve kullanılıyor olacaktır.

GENERAL DATA PROTECTION REGULATION NEDİR, NELER GETİRMEKTEDİR?

General Data Protection Regulation (GDPR) bir süredir fazlasıyla kullanılan bir kalıp ve birçok kişi de konu üzerinde fikir beyanında bulunmakta. Tam olarak bu nedenle de GDPR’ ın ne olduğu ya da belki de ne olmadığıyla ilgili ciddi bir bilgi kirliliği mevcut. Bu nedenle de mümkün mertebe konu ile ilgili soru işaretlerine cevap vermeye çalışacağımız bir seri derlemenin sağlıklı olacağı kanaati ile seriye ilk olarak temel bilgilendirme notlarıyla başlamayı uygun gördük.

Yıllar süren tartışma, görüşme, düzenleme ve fikir teatisi sonunda Avrupa Parlamentosu nihayet 14 Nisan 2016 tarihinde gerçekleştirdiği oylama ile GDPR’ ı kabul etti. Parlamentonun onayını takiben GDPR çevirileri gerçekleştirilerek onay takibinden itibaren takribi bir aylık bir süre sonunda Resmî Gazete’ de (Official Journal) yayınlandı ve böylece resmi olarak kabul edilmiş oldu. Konu ile ilgili olanların bildiği ve hatta konu ile ilgili malumat sahibi olunan yegâne husus ise yürürlüğe girme tarihinden itibaren iki yıl içerisinde Avrupa Birliği ülkelerindeki GDPR’ a uymakla mükellef olanların, uyumluluk sürecini tamamlamış olmaları gerektiği. GDPR ile ilgili Resmî Gazete ilanında Parlamento, yeni veri korumasına ilişkin düzenlemesine yönelik gerekçelerini de paylaşmış ve gerçek kişilerin, kişisel verilerinin işlenmesi ile bağlantılı olarak korunması gerekliliğini temel bir hak olarak nitelendirmiş; düzenlemenin maksadının ekonomik birliğin özgürlükler ile güvenlik ve adalet alanlarında başarının, ekonomik ve sosyal gelişimin ve iç marketler bakımından ekonomilerin yaklaşımının ve bunun yanında gerçek kişilerin refahının sağlanmasına katkıda bulunması olduğunu belirtmiştir. 1

Resmî gazetede yayınlanmasını takip eden 20 günün sonunda yürürlüğe giren GDPR her ne kadar sıkça tartışılan ve belki de bir anlamda yepyeni bir düzenlemeymişçesine veri işleyen/işlemek yükümü ve/veya zorunluluğu bulunanları tedirgin etse de Avrupa Birliği’ nin konu üzerindeki ilk düzenlemesi esasen oldukça geriye dayanıyor. İlk olarak; 1950 tarihli Avrupa İnsan Hakları Sözleşmesi’ nin “Özel ve Aile Hayatına Saygı” kenar başlıklı 8. maddesinde “Herkes özel ve aile hayatına, konutuna ve yazışmasına saygı gösterilmesi hakkına sahiptir. Bu hakkın kullanılmasına bir kamu makamının müdahalesi, ancak müdahalenin yasayla öngörülmüş ve demokratik bir toplumda ulusal güvenlik, kamu güvenliği, ülkenin ekonomik refahı………….için gerekli bir tedbir olması durumunda söz konusu olabilir.” hükmü yer almaktadır.

1981 yılında yürürlük kazanmış olan Kişisel Verilerin Otomatik İşleme Tabi Tutulması Karşısında Bireylerin Korunmasına ilişkin 108 sayılı Konvansiyon (Convention 108 for the Protection of Individuals with Regard to Automatic Processing of Personal Data) veri koruması hususunda bağlayıcılık öngören ilk düzenleme olarak düşünülmektedir. Söz konusu Konvansiyon, hem Avrupa Birliği üyesi ülkeler bakımından hem de üye olmayan ülkeler bakımından katılıma açık olması esası ile gündeme gelmiş, Türkiye de verilerin korunması açısından Avrupa Birliği uyumluluk çalışmaları çerçevesinde 108 sayılı Konvansiyona yönelik çalışmalar gerçekleştirmiş ve son olarak 30.01.2016 tarihinde kabul edilen 6669 sayılı Kişisel Verilerin Otomatik Olarak İşleme Tabi Tutulması Karşısında Bireylerin Korunması Sözleşmesinin Onaylanmasının Uygun Bulunduğuna Dair Kanun ile 108 sayılı Konvansiyonu onaylamıştır. 2

108 sayılı Konvansiyonu takiben Avrupa Birliği nezdinde tam teşekküllü ilk düzenleme olarak yorumlanan ve 1995 yılında yürürlük kazanmış olan Kişisel Verilerin İşlenmesi ve Bu Tür Verilerin Serbest Dolaşımına Dair Bireylerin Korunmasına İlişkin 95/46/EC Direktifi (Directive 95/46/EC of the European Parliament and of the Council of 24 October 1995 on the Protection of Individuals with Regard to the Processing of Personal Data and on the Free Movement of Such Data)3 temelde Avrupa Birliği vatandaşlarının mahremiyetinin ve toplanan kişisel verilerinin korunmasına ilişkin bir düzenlemedir. Direktifin amacı birinci maddesinde yer aldığı biçimiyle “kişisel verilerin işlenmesi bakımından, bireylerin temel hak ve özgürlüklerinin korunması ve üye devletlerce verilen serbest dolaşımını engelleyecek düzenlemeler yapılmasının önüne geçilmesi” olarak belirlenmiştir.

95/46/EC yürürlük tarihi itibariyle tüm Avrupa Birliği üyesi ülkeler için geçerli olmakla beraber, her bir üye ülke bakımından kendi iç düzenlemelerini yapmalarına müsaade eden, belli ölçüde çerçeve bir düzenleme olarak düşünebilecek bir direktif iken GDPR; tüm 28 Avrupa Birliği ülkesi için aynı. Bu da demek oluyor ki; GDPR’ a uyum yükümü olan şirketler bakımın Avrupa Birliği içerisinde uymaları gereken tek bir standart söz konusu. Her ne kadar GDPR bakımından tek bir standart belirlenmiş olması ve bir üst uygulama standardı ile ülkeler bazında düzenlenmiş ayrıca bir uygulamaya uyumluluk yükümüne oranla daha pratik bir düzenleme olarak düşünülse de GDPR ile belirlenen standartlar oldukça yüksek ve birçok şirket bakımından uyumluluğun sağlanması ciddi bir yatırım anlamına geliyor.

Yukarıda bahsetmiş olduğumuz gibi GDPR’ a uyumluluk süresi olarak yürürlük tarihinden itibaren iki yıllık bir süre öngörülmüş durumda ve bu süre 25 Mayıs 2018 tarihi itibariyle sona erecek. Belirlenmiş olan işbu tarihe kadar ise Avrupa Birliği içinde, Avrupa Birliği vatandaşlarının verilerine erişim bakımından veri sorumlusu “controller” ve veri işleyen “processor” her bir şirket bakımından GDPR’ a uyum yükümünün yerine getirilmesi söz konusu. Bu iki terimin GDPR içerisindeki tanımı, 95/46/EC ile 95/46 direktifi göz önünde bulundurularak düzenlenmiş bulunan Kişisel Verilerin Korunması Kanunu “KVKK” tanımları ile temel noktalarda benzerlik göstermekle, veri işleyen bakımından herhangi bir veri kaybı durumunda kayda değer biçimde daha fazla hukuki sorumluluk yüklüyor olması gibi spesifik birtakım yükümlülükler öngörmüş bulunmakta. Veri sorumluları ise, veri işleyenin dahil olduğu durumlarda özellikle sözleşmelerinin GDPR uyumluluğunu sağlamak zorunda. Tüm bunların yanında uyumluluk yükümün doğması bakımından spesifik kriterler ise şöyle:

  • Bir Avrupa Birliği ülkesi içerisinde var olma,
  • Avrupa Birliği içerisinde bulunulmasa da Avrupa’ da yaşayan (European Resident) kişilerin kişisel verilerini işleme,
  • 250′ den fazla çalışanı olma,
  • 250′ den az çalışanı olmakla birlikte veri sahiplerinin hak ve özgürlüklerine etki eden veri işleme süreçlerinin bulunması ya da belli özel nitelikteki kişisel verileri içerme.

Kriterler temelde hemen tüm şirketleri kapsıyor olmakla, Pwc’ nin4 gerçekleştirdiği araştırmada Amerikan menşeili şirketlerin %92′ sinin GDPR’ ı verilerin korunması bakımından en öncelikli prosedür biçiminde yorumladığı tespiti yapılmıştır. Ovum raporuna5 göre; Amerika’ daki şirketlerin 2/3′ ü GDPR ile birlikte Avrupa’ daki stratejilerini değiştirmelerini gerekli kılacak. Yaklaşık %85′ lik bir kısmı ise GDPR’ ın Amerikan menşeili şirketleri Avrupalı rakipleri karşısında avantajsız bir konuma soktuğu görüşünde.

GDPR’ ın koruma alanı 95/46/EC direktifi ile 1998 tarihinde İngiltere’ de yürürlüğe girmiş olan Veri Koruması Kanunu’ nda (Data Protection Act “DPA”) olduğu gibi kişisel veri olmakla, GDPR’ ın tanımı çok daha detaylı ve IP adresi gibi online belirteçlerin de kişisel veri olarak kabul edilebilir olduğu hususunu açıkça dile getirmekte. Bu haliyle GDPR’ daki daha geniş kapsamlı tanım, sektörler arası veri işleme biçimleri göz önünde bulundurularak ve teknolojinin değişkenliği de hesaba katılarak kaleme alınmış gibi görünmekte. Regülasyon ile belirlenmiş olan spesifik kriterler çerçevesinde otomatik olarak işlenen veriler ile manuel olarak dosyalama sistemleri aracılığıyla işlenen kişisel veriler GDPR’ ın koruması altına girmekte. Bu düzenleme 95/46/EC ile DPA tarafından bakıldığında GDPR ile daha geniş bir kapsam anlamına geliyor.

KVKK ile birlikte özel nitelikli veri olarak tanımladığımız direktif ile ilgili düzenlemeler bakımından ise hassas kişisel veri (sensitive personal data) olarak betimlenmiş olan veri biçimi GDPR madde 96 ile kişisel verilerin özel kategorileri (special categories of personal data) olarak tanımlanmakta olup, tanım görece mülga düzenleme ile örtüşmekle beraber özel kategori olarak belirlenmiş bu veriler bakımından herhangi bir kişiyi özellikli olarak tanımlamaya yarayacak genetik ve biometrik veriler özellikle yer almakta.

GDPR ile detaylandırılmış bir diğer husus ise verilerin hukuka uygun işlenmesi. GDPR çatısı altında veri işlemenin hukuka uygun olabilmesi için uyumluluk yükümü olanların, kişisel veri işleme faaliyetlerine başlamadan önce çoğunlukla “işleme koşulları” olarak tanımlanan hukuka uygun bir temel belirlemeleri ve bu hukuka uygunluk temelini dokümante etmeleri gerekmekte. Hukuka uygunluk temeli oluşturma bakımından ise GDPR ile birlikte gelen değişikliklerden biri de verileri işlenen kişilerin haklarının belirlenen temele göre değişiklik gösterebilecek olması. Örneğin, bir uyum yükümü altındaki bir şirketin veri toplama temeli veri işlenen kişi/lerin rızasına dayanmakta ise, başka bir deyişle kişilerin rızası hukuka uygunluk temeli olarak belirlenmişse; bu noktada verisi işlenen kişinin veri işleyene karşı kullanabileceği daha güçlü haklara sahip olacağı; söz gelimi verilerinin silinmesini talep edebileceğini söylemek mümkün.

GDPR ile uyum yükümü altındakilerin belirlemesi ve dokümante etmesi gerekli görülen hukuka uygun işleme koşulları GDPR madde 67 ile düzenlenmiş bulunmakta. Bu koşullar ise özet olarak şu şekilde belirlenmiş bulunmakta:

  • 6(1)(a) Veri sahibinin rızası
  • 6(1)(b) Veri sahibi ile imza edilmiş bir sözleşmenin uygulanabilmesi veya sözleşmenin yürürlüğe girebilmesi bakımından veri işlemenin gerekli olması
  • 6(1)(c) Hukuki bir yükümlülüğe uyumluluk bakımından işlemenin gerekli olması
  • 6(1)(d) Veri işlemenin veri sahibinin yahut bir başka kişinin yaşamsal faaliyetleri bakımından gerekli olması
  • 6(1)(e) Kamu yararının sağlanması üzere gerçekleştirilen işlemler yahut veri sorumlusuna verilmiş kanuni bir yetkinin yerine getirilebilmesi bakımından veri işlemenin gerekli olması
  • 6(1)(f)8 Veri sorumlusunun haklarını, özgürlüğünü kısıtlamamak kaydıyla; veri sorumlusu yahut üçüncü kişi tarafından hukuki bir yararın sağlanması bakımından veri işlemenin gerekli olması

Veri işleme ile ilgili hukuka uygunluk temelinin belirlenmesi ve dokümante edilmesi yanında GDPR’ ın temellendirdiği ve 95/46/EC ile DPA göz önünde bulundurulduğunda detaylandırdığı konu başlıklarından biri de veri sahibinin rızası. Buna göre; GDPR’ a dayalı olarak verilen rıza veri sahibinin özgür iradesiyle, spesifik, bilgilendirilmiş ve kişinin isteklerinin belirsiz olmadığı bir biçime sahip olacaktır. Rızanın varlığından bahsedebilmek için onaylayıcı bir aksiyon yahut bir başka deyişle olumlu bir onay söz konusu; rızanın veri sahibinin sessiz kalması, hali hazırda tiklenmiş kutucuklar yahut veri sahibinin hareketsiz kalması onay olarak varsayılmayacağı belirlenmiştir. Ayrıca rıza uyumluluğa dair diğer hüküm ve koşullardan ayrı yer almalı ve veri sahibinin rızasını geri çekebilmesi için kullanıcı odaklı, basit yöntemler sunulmalıdır. Rızanın veri sahibinin özgür iradesi ile sağlanmış olduğuna ilişkin kamu makamları ile personellerin özel bir yükümlülüğü bulunmaktadır.

GDPR ile düzenlenen başka bir husus ise çocukların kişisel verileri. GDPR çatısı altında bu yönde bir düzenlemeye gidiliyor olmasının temel nedeni ise çocuklara ait kişisel verilerin korumasının artırılması. GDPR ile çocuklara yönelik verilerin işlenmesi ve çocuğun veri işlemesine ilişkin rızasının direkt çocuk nezdinde konu edilebilmesi bakımından öngörülen yaş alt sınırı 16 olarak belirlenmiş. 16 yaşın altındaki çocukların verilerinin işlenebilmesi bakımından başvurulacak merci ise kesin olarak çocuğun ebeveyn yükümlülüklerini üstlenenlere “holder of parental responsibility” özgülenmiş bulunmakta. Çocukların verisinin düzenlenmesinde yaş sınırının altında kalanlar bakımından başvurulacak mercii olarak yalnızca çocukların ebeveynleri değil aynı zamanda hukuki koruma sağlayanlar da düşünülmüş olduğundan, bu maddenin mevcut düzenlemeler göz önünde bulundurulduğunda çok daha geniş bir merci düzenlemesi sağlamış olduğunu söylemek mümkün. Çocukların verilerinin işlenmesine ilişkin düzenlenmiş işbu madde9 çerçeve bir düzenleme olarak düşünülmüş ve üye devletlerin kendi düzenlemelerine müsaade edilmiş. Ancak GDPR ile bu düzenleyici madde ile yine de bir alt sınır belirlenmiş ve verileri işlenecek çocuklar bakımından en az 13 yaş kuralı öngörülmüş bulunmakta. Bir başka deyişle verileri işlenecek çocuklar bakımından çocuğun rızasının alınabileceği yaş, üye devletlerin düzenlemeleri çerçevesinde en az 13 olabilecek. Bu sınırın altındaki çocuklar bakımından yine ebeveyn rıza beyanında bulunabilecektir. Uyum yükümlüsü olanlar bakımından yaş koşulu yanında bir de gizlilik bildiriminin çocukların anlayabilecekleri bir dille yazılması gerekliliği söz konusu. Yaş sınırı ile ilgili aktarılabilecek son bilgi ise ebeveyn/koruyucu rızasının aranmadığı durumlar ile ilgili. Bu haller ise GDPR kapsamında direkt olarak çocuğa yönelen önleyici yahut danışmanlık servisleri.

GDPR düzenlemeleri içerisindeki belki de en kayda değer yenilik -Avrupa Birliği üyesi ülkelerin her biri bakımından uygulanması gerekliliği göz önünde bulundurulduğunda- hesap verilebilirlik hükmüdür. Bu maddeye yakınsanabilecek yegâne düzenleme İngiltere’ nin konuya ilişkin düzenlemesi olan DPA ve buna bağlı kurulmuş ve çeşitli düzenlemeler getirmiş olan bilgi komisyonu ofisi (Information Commissioner’s Office) “ICO” olarak düşünülebilir olsa da GDPR, uyum yükümü altında olanların kanun hükümlerine uyumluluğun nasıl sağlandığının gösterilebilir olmasını örneğin; işleme faaliyetlerine ilişkin uyum yükümü altında olanların aldıkları kararların dokümante edilmesini öngörmekte.

Hesap verilebilirlik ile ilgili hüküm GDPR madde 5(2) ile düzenlenmiş olup, uyum yükümü altında olanların kanun hükümlerine uyumunu ve bu uyum yükümü sorumluluğun sarih biçimde yüküm altında olanlara ait olduğunu ifade etmektedir. Bu madde bakımından yüküm altında olanların uygun ölçüde teknik ve organizasyonel önlemler alarak uyumluluğun sağlanması ile ilgili tabir-i caizse bir garantör element oluşturmaları gerekliliği söz konusu. Gereklilik söz konusu olduğunda bir veri koruma yetkilisi atanması, dizayn olarak ve kendiliğinden veri koruması olarak ifade edilebilecek GDPR hükümlerine uyum için gerekli önlemlerin alınması, kişilerin veri işleme süreçlerini monitör edebilmelerinin sağlanması gibi koşullar ile de hesap verilebilirlik hükmü bakımından temel gerekliliklerin sağlanabilmesi öngörülmekte.

GDPR’ ın getirdiği yeniliklerden ve belki anahtar hükümlerden -üstünkörü de olsa- bahsetmişken, uyumu yükümü altında olanların en büyük çekincelerinden olan uyum yükümünün sağlanamaması/yerine getirilememesi halinde söz konusu olabilecek “ceza” tutarlarından da bahsetmek gerekecek. Belirlenen süre (25 Mayıs 2018) sonunda uyum yükümü altında olan şirketlerin uyumluluk hükümlerine uygun faaliyetleri gerçekleştirmemiş olması halinde, GDPR 20.000.000,00- Euro’ ya kadar ya da global yıllık cirosunun %4′ üne kadar cezayı -hangisi daha yüksekse onun uygulanması üzere- öngörüyor. Ovum raporuna10 göre uyum yükümü altında olan şirketlerin %52′ si uyumluluğu sağlayamadığından, bahsi geçen cezaların aleyhlerinde uygulanacak olduğunu düşünüyor. Söz konusu cezalara yönelik olarak öngörüler ise Avrupa Birliği’ nin ilk yıl sonunda 6.000.000.000,00- Euro’ ya kadar ceza uygulayacak olduğu. Bu konu ile ilgili olarak ICO ise şunu söylüyor; “GDPR cezalar ilgili değil, tüketici ve vatandaşları ilk sıraya koymakla ilgili. Cezai şart üst sınırının yükseldiği ve bu durumun şirketleri korkuttuğu doğru olsa da ICO; şirketlere kanuna uyumlulukla ilgili olarak yol gösterici olmaya, tavsiye ve eğitim veren misyonuna GDPR altında da devam edecektir. Geçtiğimiz dönem içerisinde (2016-2017) 17.300 talebi karara bağladık ve ilintili şirketlerden yalnızca 16 adedi cezaya hükmedildi.”11 Bu konu ile ilgili olarak Avrupa Birliği ülkeleri nazarında bir değerlendirme yapıldığında da ICO’ nun GDPR dönemine kadar benimsemiş olduğu yukarıda bahsedilen ilkeden sapmadıkları görülmekte. Dolayısıyla uyum yükümü altında olanların endişelenmesi her ne kadar haklı görülebilir olsa da minör ihlaller ile bunlara bağlı cezai yükümlerin uygulanmasının hiçbir zaman bir norm haline gelmediği ve GDPR sonrasında da bu politikadan sapılmayacağını söylemek yanlış bir değerlendirme olmayacaktır.

ICO’ dan bahsetmişken, İngiltere’ nin Brexit sonrası veri koruması ile ilgili tam olarak ne yönde ilerleyeceği belirsizliği de ortadan kaldırılmış gibi görünüyor. İngiltere’ nin Avrupa Birliği’ nden ayrılmasını takiben, diğer Avrupa Birliği üyesi olmayıp da Avrupa Birliği vatandaşlarının verilerini işleyenler gibi değerlendirilecek olduğuna şüphe yok. Hali hazırda bu konuda -GDPR- ICO gerekli çalışmaları başlatmış olup, uyum yükümü altında olanlara GDPR’ a uyumluluk ile ilgili birifinglerde bulunmaya başlamış olduğundan, Brexit’ in yürürlük tarihine kadar İngiltere menşeili şirketlerin GDPR uyumluluklarını yerine getirmek çabasında olacaklarını söylemek yanlış olmaz.12

Bir yandan GDPR’ ın öngördüğü cezalar uyum yükümü altında olanları ürkütmekte iken, diğer yandan 25 Mayıs 2018 tarihine kadar gerçekleştirilecek uyumluluk çalışmaları da ciddi bir bütçeyi öngörmekte. PwC’ nin gerçekleştirmiş olduğu bir araştırmaya göre, Amerikan menşeili şirketlerin %68′ i GDPR gerekliliklerini sağlayabilmek adına 1.000.000,00 ila 10.000.000,00-$ arasında bir harcama gerçekleştirmeleri gerektiğini öngörürken, %9′ luk bir kısım da 10.000.000,00- $’ ı aşacak oranda bir harcama gerekeceğini öngörmekte.

Temel olarak GDPR düzenlemeleri ele alındığında global bağlamda ve veri işleyenler özelinde ciddi değişiklikler yaşanacağının ve bu değişikliklerle birlikte, veri işleme faaliyetlerinde hali hazırda Anayasal bir hak olarak görülen kişilerin özel hayatının gizliliği hususlarının çok daha sık duyulacak olduğuna şüphe yok. GDPR uyum yükümü altında olanlar bakımından hem pahalı hem de cezai şart bakımından ürkütücü görünse de veri işleme bakımından devrim niteliğinde bir düzenleme olduğunu düşünen bir çevre de mevcut. GDPR’ ın şirketlerin veri stratejileri, big data ve veri temelinde ilerleyen inovasyonlar bakımından ve bu başlıkların önümüzdeki dönemlerde çok daha fazla zikredilecek olmasına dayalı olarak düzenlenmiş olduğunu ve önleyici hukuk düzleminde bir düzenleme olarak düşünülmüş olduğunu söylemek yanlış olmayacaktır.

Yukarıda özet olarak belirtilmiş olan veri korumasına ilişkin regülasyon ve düzenlemeler çerçevesinde GDPR’ ın temel çerçevesine ve veri işlemesi hususları bakımından yenilik olarak nitelendirilebilecek hükümlerine yönelik bir inceleme gerçekleştirmiş olsak da GDPR hükümlerinin her birine ve buna bağlı uygulamalar ile ilgili olarak devam ettirecek olduğumuz seri ile bu yazıda ele alınmayan konular, bahsedilmiş olsa dahi detaylandırılmamış olan düzenlemelere dayalı bilgilendirmeler devam eden yazılarda paylaşılacaktır.

[1] Official Journal of the European Union, L119/1, 04.05.2016

[2]http://www.resmigazete.gov.tr/main.aspxhome=http://www.resmigazete.gov.tr/eskiler/2016/02/20160218.htm&main=http://www.resmigazete.gov.tr/eskiler/2016/02/20160218.htm

[3] http://eur-lex.europa.eu/legal-content/en/TXT/?uri=CELEX%3A31995L0046

[4] http://www.pwc.com/us/en/increasing-it-effectiveness/publications/assets/pwc-gdpr-series-pulse-survey.pdf

[5] https://www.intralinks.com/resources/analyst-reports/ovum-report-data-privacy-laws-cutting-red-tape

[6] https://gdpr-info.eu/art-9-gdpr/

[7] https://gdpr-info.eu/art-6-gdpr/

[8] Bu madde ile belirlenmiş olan koşullardan (f) fıkrası, kamu kuruluşlarının görevleri esnasında işleyecekleri veriler bakımından geçerlilik arz etmemektedir.

[9] https://gdpr-info.eu/art-8-gdpr/

[10] https://www.intralinks.com/resources/analyst-reports/ovum-report-data-privacy-laws-cutting-red-tape

[11] https://iconewsblog.org.uk/2017/08/09/gdpr-sorting-the-fact-from-the-fiction/

[12] http://www.cio.co.uk/opinion/legal-briefing/brexit-law-what-cios-need-know-about-eu-gdpr-it-contracts-3642872/

.NET Core, .NET Standart ve Felsefe Taşı – Part I

Merak etmeyin, bu yazının ne Harry Potter, ne de maddeyi altına dönüştürme ile bir ilgisi yok. Bu yazı dizisinde daha çok, .NET Core ve .NET Standart’ın kendilerini, ortaya çıkmalarındaki nedenleri, ekosistemde yapacakları değişiklikleri ve bizim bu değişikliklere nasıl ayak uydurmamız gerektiği ile ilgili konuşacağız.

Giriş

Yakın zamanda .NET Core 2.0 ve ASP.NET Core 2.0 duyuruldu. Bir çok değişiklik ve güzel haber var fakat boşverin, şimdi oradan kopup, biraz daha geriye, bütün bunların başladığı zamana gidelim. Fazla değil Kasım 2014’te Microsoft, .NET Core’u (CoreFX) Open Source yaptı. Tabii kimse .NET Core’un ne olduğunu bilmiyordu. Blog yazısında, aslında bu teknolojinin içeride ASP.NET 5 (vNext) ve .NET Native’de -ki başlı başına ayrı bir konu- hali hazırda kullandıklarını, gelecekte .NET platformunun temel taşının bu yapı olacağını söylediler. Open Source olmasındaki sebep ise, .NET’in arkasında daha güçlü bir ekosistem oluşturmak ve cross-platform bir hale getirmek için hazırlıklara başlamaktı.

.NET Core’un arkasındaki ana sebep ise, .NET Framework yaklaşımının pek de doğru olmaması ve bunu değiştirmeye yönelik çalışmalar yaparken de aynı zamanda zaten olması gereken cross-platform desteğini de göz önünde bulundurmaktı. İki amaç da zamana göre daha fazla önem kazanabilir.

.NET Core’un alt yapısını anlatmadan önce size .NET Framework yaklaşımını ve yanında getirdiği problemleri biraz daha açmam gerek.

Bir Sorunun Tanımı

 

Yukarıdaki ekranı hatırladınız değil mi? Hiç görmediyseniz eğer ne mutlu size, bugünün şanslı 10.000 kişisinden birisiniz. Özetlemek gerekirse, yüklediğiniz bir uygulama, çalışmak için .NET Framework’ü gerektiriyor ve önce onu yüklemeniz gerek. Bunun sadece Windows içerisinde karşılaşılan bir durum olduğunu söylemiyorum, keza diğer sistemlerde yüklediğiniz paketler, başka paketleri gereksinim olarak isteyebiliyor, fakat buradaki ana sorun teknik değil. Ana sorun, yukarıdaki problemin son kullanıcı tarafından çözülmesinin beklenmesi. Aynı zamanda bu paket öyle elzem ki, bütün .NET uygulamaları* kullanıyor ve versiyonları var. Uygulama hangi versiyonu kullanıyorsa ona göre yüklenmesi gerek. Yukarıdaki “Yes” butonuna basınca sizi o paketin indirme sayfasına yönlendiriyor, siz de inen paketi kuruyorsunuz. Tabii paket kullandığınız işletim sistemi tarafından destekleniyorsa. Örneğin Windows 7 kullandığınızı varsayarsak ve açmaya çalıştığınız uygulama .NET Framework 4.6 kullanıyorsa eğer, SP1 yükseltmesini önceden yapmış olmanız gerek. Yapmamışsanız uygulama çalışmıyor. Yani bir uygulamayı kullanmak için önce sistem güncellemesi, sonra paket kurulumu ve en sonunda kullanmak istediğiniz uygulamanın kurulumunu yapmanız gerekebilir. Bu arada bütün bunları teknik bilgisi fazla olmayan birinin yapmaya çalıştını düşünürseniz, durum pek iç açıcı değil.

Diğer bir sorun, bu kütüphanenin içerisinde herşeyin olması. Siz bir uygulama yazarken sadece küçük bir kısmını bile kullansanız, bu o uygulamanın .NET Framework kullandığı gerçeğini değiştirmiyor. .NET Framework 4.6’nın kurulum paketi 62.4 MB. Kurulum sonrası boyutu 100 MB’ı aşıyor. Amacı iki sayı toplamak olan bir konsol uygulamasının çalışması için de bu kütüphanenin kurulması gerek.

Ha bu arada yukarıdaki bu iki uygulama da diğer işletim sistemlerinde çalışmıyor.

Sanırım yavaş yavaş problemin kaynağının ne olduğunu ve nasıl çözülebileceğini düşünmeye başlamışsınızdır. Öyle bir şey olmalı ki, uygulama herhangi bir dış kaynağa gereksinim duymamalı, yani kullandığı paketleri yanında götürmeli.

* = Bütün .NET Framework uygulamaları yani WinForm, WPF, ASP.NET gibi.

Bir Efsanenin Doğuşu

.NET Core işte bu fikrin hayata geçmiş hali. Tabi şu “kullandığı paketleri yanında götürmesi” kısmı için .NET Framework parçalara ayrıldı ve çoğu paket NuGet üzerinden referans edilebilir hale getirildi. En temel parçalar (CLR ve içerisindeki GC ve JIT) ise cross-platform çalışması için baştan yazıldı ve .NET Core CLR oluştu. Tabii hepsinin cross-platform çalışması için değiştirilen bir çok yaklaşım da oldu.

Peki Web?

ASP.NET 5 (vNext) yani ASP.NET Core ise, .NET Core’un üzerine ASP.NET mimarisinin bindirilmesi ile oluşmuş bir platform. Ocak 2016’ta ASP.NET 5 adı ASP.NET Core olarak değiştirildi çünkü ASP.NET  5 sanki ASP.NET 4.5’in bir üst versiyonu gibi anlaşılıyordu. Halbuki ASP.NET 5,  yapısal anlamda ASP.NET 4.5’i andırmıyordu bile ve bu insanlarda kafa karışıklığı yaratabilirdi. Bu sebeple isim değişikliğine gidildi.

Soru İşaretleri

Peki .NET Standart bunun neresinde. Bugün itibarıyla üç tane .NET platformu var; .NET Framework, .NET Core ve Xamarin. Her birisinin amacı ve kullandıkları altyapılar farklı. Tabii bu kullanılan dil aynı olsa bile oluşan paket uyuşmazlığı, yazılan kodların platformlar arası kullanılmasını engelliyor. Zaten her biri programlayan kişiye farklı API’lar sunuyor. Yani her türlü yazılan kod belirli bir platforma özel olmuş oluyor. Bu sorunu çözmek için üretilen PCL ise sorunu daha da büyük bir hale getiriyor.

Part II’de ise .NET Standart’ın ne olduğunu ve yukarıdaki probleme nasıl bir çözüm getirdiğini göreceğiz.

.NET Core, .NET Standart ve Felsefe Taşı – Part II

Email’lerin İletim Durumlarını “İleti İzleme” Özelliğini Kullanarak Kontrol Etme

Belli durumlarda size (organizasyonunuza) gönderilen veya sizin gönderdiğiniz (organizasyonunuzdan gönderilen) bir email’in durumunu, iletilip iletilmediğini kontrol etmeniz gerekebilir. Belirli email’ler ile ilgili ayrıntılı bilgi almak, iletim sorunlarını daha etkin bir şekilde takip ve tespit etmenize ve posta akışı sorunlarını gidermenize olanak sağlar. Office 365 Orta Ölçekli İşletme, Office 365 İş veya Office 365 Kurumsal yöneticisiyseniz, “Exchange Yönetim Merkezi > Posta Akışı > İleti İzleme” sayfaları ve menülerinde ilerleyerek ulaşacağınız ekrandaki “İleti İzleme” özelliği ile gerekli sorgulamayı gerçekleştirebilirsiniz.

“İleti İzleme” özelliği sayesinde, son 90 gün içerisinde organizasyonunuzdaki alıcılara gönderilen veya organizasyonunuzdaki göndericiler tarafından iletilen email’lerin durumunu kontrol edebilirsiniz:

  • Office 365 Yönetim Merkezinde, soldaki menüde “Yönetim Merkezleri”ni ve ardından “Exchange”i tıklayarak Exchange Yönetim Merkezine (http://outlook.office365.com/ecp) gidin:
  • “Posta Akışı > İleti İzleme” menülerinde ilerleyin:
  • Açılacak ekranda, aşağıda listelenen kriterleri isteğinize ve ihtiyaca göre belirleyin:
  • Tarih aralığı: Belirlenen şablonları seçebilir veya özel bir aralık belirtebilirsiniz. Son 7 günden daha eski bir email’e ulaşmak istiyorsanız, sonuçlar CSV formatında bir dosya ile verilecektir.
  • Teslimat durumu: Tüm email’leri, başarısız olanları, bekleyenleri, gruplara gönderilenleri (genişletildi) veya son durumu henüz bilinmeyenleri filtreleyebilirsiniz.
  • İleti kimliği: Söz konusu email’in header’ındaki “Message-ID:” değerini kullanarak spesifik aramalar yapabilirsiniz.
  • Gönderici: Email’i gönderen kişileri belirtebilirsiniz. Açılacak listede var olmayan kullanıcıları eklemek için, söz konusu adresi “Adları denetle” butonunun yanındaki kutucuğa girebilir ve bu butona tıklayarak ilerleyebilirsiniz. Belli bir kişi yerine belli bir etki alanından gönderilen tüm email’leri sorgulamak isterseniz, desteklenen “wildcard” kullanımını da tercih edebilirsiniz. Örneğin, bu alana gireceğiniz “*@peakup.org” değeri, contoso.com etki alanındaki tüm göndericilerin ilettiği email’lerin listelenmesini sağlayacaktır.
  • Alıcı: Email’i gönderildiği kişileri belirtebilirsiniz. Açılacak listede var olmayan kullanıcıları eklemek için, söz konusu adresi “Adları denetle” butonunun yanındaki kutucuğa girebilir ve bu butona tıklayarak ilerleyebilirsiniz. Belli bir kişi yerine belli bir etki alanına gönderilen tüm email’leri sorgulamak isterseniz, desteklenen “wildcard” kullanımını da tercih edebilirsiniz. Örneğin, bu alana gireceğiniz “*@peakup.org” değeri, contoso.com etki alanındaki tüm alıcılara gönderilen email’lerin listelenmesini sağlayacaktır.

    – Eğer 7 günden daha eski email’leri sorguluyorsanız, belirtebileceğiniz ek parametreler vardır:

    Rapora ileti etkinliklerini ve yönlendirme ayrıntılarını dahil et: Az sayıda email’i sorguluyorsanız, daha fazla detaya ulaşmanızı sağlayacak olan bu kutucuğu işaretli hale getirebilirsiniz. Sorgunuz sonucu çok fazla sayıda email döndürülmesini hedefliyorsanız, sürecin uzamasına ve süreç sonunda oluşacak raporun büyümesine neden olacağı için bu seçeneği atlamanız tavsiye edilir.

  • Yön: Tüm email’leri, organizasyonunuza gelenleri veya organizasyonunuzdan gidenleri filtreleyebilirsiniz.
  • Özgün istemci IP adresi: Email’i gönderen istemcinin IP adresini belirtebilirsiniz.
  • Rapor başlığı: Rapor için daha önce kullanılmamış, benzersiz bir başlık belirtilmesi gerekir. Varsayılan olarak dolu gelecek olan bu alanı, tercih etmeniz durumunda, ayırt edici şekilde değiştirebilirsiniz.
  • Bildirim e-posta adresi: İleti izleme işlemi tamamlandığında bildirimin gönderileceği, yapınızdaki kabul edilen etki alanlarında bulunan bir email adresi belirtebilirsiniz.
  • “Ara” butonuna tıklayarak ileti izleme işlemini başlatın.

İşlem tamamlandığında, eğer sorgunuz son 7 günden daha eski bir zaman dilimini kapsıyorsa bir CSV dosyası şeklinde, son 7 gün veya daha yeni bir zaman dilimini kapsıyorsa ayrı bir tarayıcı ekranında sonuçları göreceksiniz. Gelen ekrandaki listede, belirttiğiniz kriterlere uyan email’ler listelenecektir:

İncelemek istediğiniz email’i gösteren ögeyi açarak detayları görebilirsiniz:

7 günden eski ögelere yönelik izlemelerin listesini görüntülemek için, yine ileti izleme aracında “Bekleyen veya tamamlanan izlemeleri görüntüle” bağlantısını tıklayarak sorgularınıza ulaşabilirsiniz:

Sonuçlarda, gönderici, alıcı, konu, tarih, teslim durumu gibi detayları inceleyebilirsiniz.

Gönderilen email’lerin ileti izleme alanına yansıması, gönderildikten sonra yaklaşık 10 dakikayı bulabilir, nadiren de olsa belli durumlarda 1 saate kadar sürebilir.

Keyifli çalışmalar!

Mail Merge: Word Üzerinden Alıcısına Göre Kişiselleşmiş Toplu e-Postalar Gönderme

Yüzlerce müşterinize birkaç dakika içerisinde, adına özel e-posta göndermeniz için, Müşteri Ad-Soyad ve e-posta adresi yazan 2 sütuna sahip olmanız yeterli! Gerisi Word’ün işi!

Mail Merge – Adres mektup birleştirme işlemi, aynı anda birden çok belge oluşturmak için kullanır. Bu belgelerde metin, düzen, biçimlendirme gibi ana şablon birbirinin aynısıdır. Fakat her belgenin belirli bölümleri alıcısına göre  kişiselleştirilmiş hale getirilebilir. “Mail Merge” ile, bir etkinlik için katılımcıların isimlerine özel yaka kartlarını toplu halde hazırlayabilir, muhasebe departmanı olarak, firmalara borç bakiyelerini hatırlatan ya da insan kaynakları departmanı olarak personelinize kalan izin günlerini belirten e-postaları birkaç dakika içerisinde hazırlayıp gönderebilirsiniz.
Bu makalede Word’ün çok güçlü işlevlerinden biri olan bu özelliği kullanarak, aynı anda birden çok kişiselleşmiş e-posta oluşturacağız.

1.Adım:  Posta Listesini Hazırlama

Adres mektup birleştirme işlemindeki en önemli adım, posta listesini hazırlamaktır. Posta listesi, e-postadaki bilgileri doldurmak için kullanılan verileri içerir. Posta listenizi, Excel ya da Word’de tablo biçiminde hazırlayabilirsiniz. Listenizi, mutlaka sütun başlıkları olacak şekilde ve kayıtlar arasında hiç boş satır olmayacak biçimde hazırlamanız gerekmektedir.

2.Adım : Adres Mektup Birleştirmeyi Başlatma

Yeni bir Word belgesi açın. Adres Mektup Birleştirme, e-Posta gönderimi dışında, farklı kişiler adına yaka kartı bastırmak için ya da farklı firmalar adına düzenlenmiş Word belgeleri oluşturmak için de kullanılabilir. Mail gönderiminde kullanmak için,  Mailings  –> Start Mail Merge –> Letters    (Postalar –> Adres Mektup Birleştirme–>Mektuplar) düğmelerine basın.

3.Adım: .Ana Belgeyi Hazırlama 

 Sanki mailinizin gövdesini yazar gibi, e-postanızın herkes tarafından görülecek olan ortak içeriğini yazın. Belgeye İmzanızı, Şirket logosunu ya da resim eklemek isterseniz, Ekle / Resim sekmesinden ekleyebilirsiniz ya da istediğiniz yerden kopyalayıp yapıştırabilirsiniz. e-postanın alıcısına göre kişiselleşecek olan kısımlarını boş bırakın.

4.Adım: Alıcı listesi ile e-Posta Metnini Bağlama

İlk başta hazırladığımız Posta Listesinden (Excel ya da Word Tablosu) veriyi çekmek için Select Recipents –> Use an Exciting List… ( Alıcıları Seç–> Varolan Listeyi Kullan) düğmelerine basın. Excel kitabınız birden fazla sayfadan oluşuyorsa( sayfa1, sayfa2 vb.) kullanıcıların listenin hangi sayfada olduğunu seçmeniz için bir pencere açılır, ilgili sayfaya tıklayın.

5.Adım:  E-posta İletisine Kişiselleştirilmiş İçeriği Ekleme ve Önizleme

Şimdi sıra, alıcıya göre değişecek olan alanlara hangi bilginin geleceğini belirtmek. Sayın kelimesinden sonra bir boşluk bırakıp , İnsert Merge Field (Birleştirme Alanı Ekle )düğmesine tıklayın ve açılan listeden Ad Soyad’I seçin.  Preview Results (Sonuçların Önizlemesi) düğmesine tıklayarak, Excel listesindeki kayıtları nasıl çektiğini ön izleyebilir, ileri geri okları ile kayıtlar arasında gezinebilirsiniz.

6. Adım: Mail Merge İşlemini Tamamlama

Ve Son Adım! İnternete bağlı olduğunuzdan emin olduktan sonra e-posta gönderme işlemini başlatmak için Finish & Merge –> Send e-Mail Message   (Bitir ve Birleştir –> e-Posta Gönder) düğmesine tıklayın.
To, (Kİme,) e-posta adreslerini belirttiğimiz alandır. Excel sayfanızda, e-posta bilgisinin yer aldığı sütun adını seçin.
Subject Line, (Konu Satırı,) gönderilecek olan e-postanın konusunu yazın.
Send Records, (Kayıtlara Gönder) e-postanın kimlere gideceğini seçebileceğiniz alandır.
e-Postanın, Excel listenizdeki tüm alıcılara gönderilmesi için All ( Tümü ) seçeneği,
Preview Results düğmesine basarak önizleme yapıldıysa, o an önizlenen kayda gönderilmesi için Current Record (Güncel Kayıt )seçeneği,
Örneğin 5. satır ile 25. satır arasındakilere gönderilmesi için, From seçeneği seçilir  ve From: 5 To: 25 yazılır.
Karar verdikten sonra Ok düğmesine tıklayın ve işte mailleriniz otomatik olarak gönderilmeye başladı!
Dilerseniz, Outlook hesabınızdan Gönderilmiş Öğeler klasörünüzden gönderilen e-Postaları tek tek görüntüleyebilirsiniz.