Osman KURT

Yazılım Uzmanı | MVC Eğitmeni

Türkiye'de Yazılım Neden? Kalitesiz!

Merhabalar,

Profesyonel çalışma hayatımda 5. yılı geride bıraktım. Bundan önce de bu işlerin içindeydim. Yaklaşık olarak 10 yıllık bir geçmişim var bu sektörde. Ama hala neden kalitesiz yazılımların geliştirildiğini çözemedim. Tamam kabul ediyorum Türkiye olarak var olan sistemi editliyor ve kullanıcıların isteklerini karşılar hala getiriyoruz bilgisayar sistemlerini, iyi ama yazılımcı olmak bu mudur? Bence değil. Hadi kendimden geçtim daha yaşımız nicelerine göre genç eyvallah ta bugün bir yazı okudum, amerika da yaşı 12 ile 19 arası gençler öyle işler çıkarmış ve 20 yaşına geldiklerin de milyoner olmuşlar ki akıllara zarar. Neyin neresin de hata yapıyoruz abi aklı eren söylesin.


Olmuyor Türkiye'de kaliteli yazılım yapılamıyor. Bunu da nereden çıkardın diyebilirsiniz. Zaman dan çıkardım. Çünkü işlerin nasıl yürüdüğünü birilerinin tatmin olması gerektiği için bazı işlerin baştan salma yapıldığı bir ülkedeyiz malesef. Ha bunu dünyada başaran kaç ülke var tartışılır ama biz neden yapamıyoruz abi. Şahit olduğum ve işlerin şansa bırakılmadığı tek alan banka sistemleri. Eeee bırak oda olsun der gibisiniz, olsun tabi ama bir işi yapmak lazım ve iyi yapmak lazım. Yoksa diğer türlü başkası yapar biz kullanırız. Ülkecek nasıl olsa alışık olduğumuz bir durum. İnsanlar bence hala birşeylerin farkında değiller. Ülkemizin asırlık çınarı Türk Telekom ile dünkü çocuk whatsapp'in satış fiyatlarını karşılaştırın anlarsınız demek istediğimi. Ben artık geri kalan zamanımı kendime kalite katarak ama gerçek anlamda kaliteden bahsediyorum bu şekilde geçireceğim. Gerekirse bununla alakalı bir platform kurmayı planlıyorum.

Umarım söylemek istediklerimi anlatabilmişimdir.

Osman KURT
Yazılıma atarlanan adam!

Microsoft ile Surface Pro 4

Merhabalar,

Microsoft gün itibarı ile bombaları patlatmaya başladı. Surface 4 gerçektende muazzam özelliklerle ve Macbook Air'den %50 daha perfomanslı bir şekilde karşımıza çıktı. Benim en çok kararsız kaldığım noktalardan biridir mesela. Geçtiğimiz haftalarda 2 haftalık bir macbook pro maceram oldu ve gerçekten de çok memnun kaldım. Kullanımı insana çok rahatlık veren bir makina. Isınma nedir bilmeyen sıfır ses dayanaklılık ve daha neler neler. Sanırım bu sefer microsoft dersine her zamankinden daha fazla çalışmış ki, böyle bir makine ile karşımıza çıktı.

Başlangıç fiyatı olarak yurt dışında 899 $ olarak belirtildi. Tabi bizim ülkemiz de buna ne katarlar bilemem. Aslında tahmin etmesi zor değil malum dövizin durumu ortada. Apple ürünleri ile yarışacak fiyatlara sahip olacaktır muhtemelen. Ee kalite ucuz olmaz.

Özellikleri;

12.3-inç büyüklüğünde ve 2160 x 1440 piksel çözünürlüğünde bir ekrana sahip olan Surface Pro 4'ün bu ekranı ise 267 ppi piksel yoğunluğuna sahip. Diğer taraftan gücünü ise Intel'in son Core M işlemcisinden alan cihazda, 16 GB RAM ve 1 TB depolama alanı gibi özellikler bulunuyor.

Umarım sahip olursunuz

Osman KURT
Microsoft Sever Developer

Entity Framework AsNoTracking Kullanımı

Merhaba arkadaşlar,

bu yazım da sizlere AsNoTracking() konusundan bahsedeceğim. Basit bir kod ama yerinde kullanıldığında performans bakımından gerçekten de verim sağlayacağımız birşey. Kullanımı basit. Lambda sorgu yazarken tablo adından sonra AsNoTracking yazarak kullanabiliyoruz.

var liste = entity.tbl_User.AsNoTracking().ToList();

Şimdi diyeceksiniz ki yazarsak ya da yazmazsak ne olur arada ki fark nedir?

Olay şu arkadaşlar, AsNoTracking kullanırsak yaptığımız select üzerinde herhangi bir update işlemi uygulayamıyoruz. Yani değişikliği yaptıktan sonra entity.SaveChanges() diyerek update işlemi yapamayacağız. Tabi ki her sorgumuz da update işlemi yapmadığımız içinde bize gerçek anlamda kar sağlıyor.

Görüşmek üzere,

Osman KURT
C# Yazılım Uzmanı

Entity Framework İncelikleri

Merhaba arkadaşlar,

Entity framework kullanan bir çok arkadaş belki karşılaşmıştır. Bazı tablolar var ki ne yaparsanız yapın bir türlü entity model içine dahil edemezsiniz.

Geçen günlerde benim de başıma geldiği için yazma gereği duydum. Arkadaşlar eğer bir tablo entity model içine dahil edilemiyorsa bunun ilk sebebi tablonun bir primary key alana sahip olmamasıdır. Dİyebilirsiniz ki her tablo zaten dahildir. Ben şahidim değil :) olmadığı durumları da gördü bu gözler.

Eee Osman efendi bunun çözümü nedir diye soracaksınız. Basit arkadaşlar PK yoksa bile PK olarak kullanabilecek bir alan için nulleble alanını null geçilemez olarak ayarlamak gerekir. Eğer gerekli ayarlamayı yaparsak Entity bu alanı readonly olarak key atayacak ve tabloyu modelinize dahil edecek. Siz de istediğiniz gibi kullanabilirsiniz.

Kolay gelsin,

Osman KURT
Yazılım Uzmanı C# Uzmanı

MsSql Joinli Sorguda Update İşlemi

Merhabalar,

Sql'de update işlemi basit fakat bunu aynı anda birden çok tabloda yapmak bazı arkadaşlar için sıkıntı olabiliyor. Basit ama kullanışlı bir paylaşım olacaktır diye yazıyorum bu gönderiyi. Gerçekten ihtiyaç duyulabiliyor. Join işlemine eminim ki birçok arkadaşımız zaten hakimdir. Şimdi alt kısımda asıl paylaşımı veriyorum.

 
UPDATE f
SET    f.AnketID = a.AnketID
FROM   Firma AS f
       INNER JOIN Anketler AS a
       ON  a.FirmaID = f.FirmaID
WHERE  f.AnketID IS NULL

Kodumuz bu kadar arkadaşlar, umarım işinizi kolaylaştırmıştır.

Osman KURT
C# Yazılım Uzmanı

Sql de While Döngüsünün Kullanımı

.Net programlamada kullandığımız gibi birçok olayı SQL üzerinde de gerçekleştirebiliriz. Bunlardan bir tanesi de while döngüsü. SQL üzerinde birçok yazılımcı arkadaşın eksik olduğu aşikar. Bu durumu bir nebze olsun aza indirgemek için SQL konusun da birkaç yazı paylaşmaya karar verdim.

Örneğimiz kısaca 1'den 100'e kadar olan rakamları sırayla ekrana basmak olacak. Basit bir örnek ama anlamak için birebir.


 
DECLARE @Number INT = 0;
WHILE 
@Number < 100 BEGIN PRINT @Number;
SET @Number += 1;
END;
GO

Görüldüğü üzere şartı sağlayana kadar bir döngümüz var ve her seferinde print ile ekrana basıyoruz. Şart sağlandığı anda da döngümüz sonlanıyor.

Görüşmek üzere,
Osman KURT

Yazılım Geliştirme Uzmanı

100 Yıllık Ayıp

Tesla Kimdir biliyor musunuz?

2 hafta önce ki Sırbistan Belgrad gezim de gitme fırsatı bulduğum, ismen biliğim ama bize miras bıraktıkları hakkın da en ufak bilgi sahibi olmadığım bir mucittir. Eminim ki siz de bu bu yazıyı okumadan önce ismen bile olsa biliyordunuz ama buluşları hakkın da net bilgi sahibi değildiniz.

İlk olarak söylenmesi gereken sadece Belgrad kentinin havalimanı adından ibaret değildir ve bütün Sırbistan halkının gurur kaynağıdır. 

Gençlik yılların da ne kadar zeki olduğu hocaları tarafından farkedilen ve gelişmesi için Edison'nun yanına gönderilen, sırf Edison'un egosu yüzünden hakkı yenilen ve birçok buluşunu ortaya çıkarmakta geç kalınan. Ayrıca elde ettiği başarılar sonucun da kendisine Edison başarı ödülü verilen bir mucittir. Anlam vermekte güçlük çekiyorum lütfen biri bana açıklasın. Dünya üzerinde sizden geride olan biri adına alınan bir ödül ne kadar acı verici olabilir bir insan için. Üstelik bütün gayesi insanlık olan bir insana yapılan bir haksızlık bu. Bütün çalışma hayatı byunca elde ettiği parayı buluşlarına harcayan bir adam düşünün en büyük hayali dünyanın her yerine kablosuz olarak elektriği yayabilmek ve ücretsiz olmasını sağlamak. Günümüz dünyasın da henüz elektrik ile tanışmamış milyonlarca insanı düşününce işin boyutunu ve önemini anlayacağınızı düşünüyorum.

Bütün dünyası insanlık olan bir adam evlilik yok, çocuk yok, eş yok sonun da otel odasın da biten bir hayat. İşin garip tarafı günümüz wifi teknolojisini yıllar yıllar önce bulan bir adamdan bahsediyoruz. Emin olun ki böyle birşeyi ortaya atmakla kalmıyor, bunların hepsini kanıtlayan uygulamaları da sergiliyor. Ama ne fayda.

Özellikle belirtmek istediğim bir konu var. İnsanlığa değer vermenin dinle renkle ırkla alakası yoktur. Amaç faydadır. Hala içimizde bunun için çabalayan kişiler olduğunu biliyoruz ve farkındayız. Amaç bazı şeylerin kıymetini geç olmadan anlamak, yaşamak gibi insanlık gibi. 

Yazıma son vermeden önce Tesla gibi bir dahiyi geç tanıdığım için kendisinden milyon kere özür diliyorum. Ama bu yazıyı sonuna kadar okuduysanız siz de lütfen geç kalmayın ve biran önce anlamaya anlatmaya başlayın. Çünkü kişiler geçer düşünceleri kalır. 

Osman KURT

Yazılım Uzmanı Grafiker

MVC C# Factory Kullanımı

Merhaba,

MVC factory nedir?

Bilindiği üzere mvc bir projeye request geldiğinde ilk olarak controller kısmına düşer ve daha sonrasında view işlenir kullanıcıya sonuç döndürülür. Yani kabaca anlatmak gerekirse durum budur. Bizim factory kullanmamızda ki amaç ise request controller kısmına gelmeden karşılamak ve gerekli işlemleri yapmaktır ya da gerekli yönlendirmeyi.

Ben bu gibi durumlar genellikle bir yönlendirme yapmam gerektiğinde kullanıyorum. Sizin kullanım yerinize göre değişim gösterebilir.

Kullanımı ise çok basittir. Oluşturacağınız bir class ve global.asax dosyasında Application_Start kısmın da yapılacak ufak bir düzenleme ile işlem tamamlanacaktır.

Bu aşama da alt kısmıda ki kod işinizi görecektir.

 
public class Factories : DefaultControllerFactory
    {
        public override IController CreateController(RequestContext requestcontext, string controllerName)
        {
            IController controllerObject = null;
            Type controllerType = null;

            if (controllerType == null)
            {
                controllerType = base.GetControllerType(requestcontext, controllerName);
            }

            if (controllerType != null)
            {
                controllerObject = (IController)Activator.CreateInstance(controllerType);
            }

            return controllerObject;
        }
    }
protected void Application_Start()
        {
            AreaRegistration.RegisterAllAreas();
            FilterConfig.RegisterGlobalFilters(GlobalFilters.Filters);
            RouteConfig.RegisterRoutes(RouteTable.Routes);
            BundleConfig.RegisterBundles(BundleTable.Bundles);

            ControllerBuilder.Current.SetControllerFactory(typeof(FirstExample.Helpers.Factories));
        }

Breakpoint koyduğunuz takdirde, ilk isteğin factory kısmına düşeceğini göreceksiniz. Artık kontrol sizde.

Osman KURT

Yazılım Uzmanı & Mobil Yazılım Uzmanı

İşin Kuralı Bu sanırım

Ne uçağı var, ne yatı
Carlos Slim Hélu
O açık ara dünyanın en zengin adamı. Serveti, bilindiği kadarıyla 75 milyar doların üzerinde. Peki, sizce dünyanın en zengin adamı nasıl olur? Yatları, katları, uçakları, dünyanın dört bir yanında özel adaları, hatta arada sırada “Ben bir Ay’a gidip geleyim” diyebileceği bir uzay gemisi? Hiçbiri yok. Carlos Slim Hélu, 5 yatak odalı 2 katlı bir evde yaşıyor. 10 yıldır da aynı arabayı kullandığı söyleniyor.
 

60 yıldır bu evde yaşıyor
Warren Buffet
70 milyar doların üzerinde bir servete sahip. Forbes’un 2008 listesinde “Dünyanın en zengin adamı” seçildi. Warren Buffet için kazandığı paranın pek de bir önemi yok gibi aslında. Hala Ohio’daki 1958’de 31 bin dolara aldığı yan fotoğraftaki iki katlı evde yaşıyor. Evin şu anki değerinin ise 200 bin dolar civarında olduğu tahmin ediliyor. Yani İstanbul Ulus’ta 2+1 sıradan bir apartman dairesinden daha ucuz! 
  
 
Arabasının değeri 30 bin dolar
Mark Zuckerberg
O, Facebook’un kurucusu ve teknoloji dünyasının en önemli birkaç adamından biri. Serveti 20 milyar doların üstünde… Ama Mark Zuckerberg’in arabası hala 30 bin dolarlık bir araba ve her gün işe onunla gidip geliyor. Üzerinde 7 dolarlık tişört serisi ve 30 dolarlık ortopedik terliklerinden vazgeçmediğini de ekleyelim.
 

Alışveriş yapmamak için nakit taşımıyor
T. Boone Pickens
87 yaşındaki girişimcinin serveti 3 milyar dolar düzeyinde. Pickens’ın “Yok artık!” dedirten bir alışkanlığı var ve bunu öğrencilik yıllarından beri uygulamayı sürdürüyor. Her gün evden çıkmadan önce ne kadar para harcayacağını hesaplıyor ve yanına o kadar para alıyor. Kredi kartı da kullanmıyor, yanında para taşıyan bir asistanı da yok. Böylece günlük harcama planının hiç dışına çıkmıyor. 
  
 
İndirim peşinde koşan 3 yıldız
Hillary Swank, Lady Gaga, Kristen Bell
Üç yıldız, üçünün de yıllık gelirleri milyon dolarları aşıyor. Ve üçü de birer indirim bağımlısı. Hillary Swank, bu özelliğiyle gurur duyuyor çünkü yoksulluk içinde bir çocukluk geçirmiş. Mağazaların indirime girdiği zamanları özenle takip ettiğini gururla anlatıyor. Çağımızın en çok kazanan pop starlarından Lady Gaga ise birçok defa bit pazarlarında ve indirime girmiş mağazalarda görüntülendi.
 

Üstündekiler 100 doları geçmiyor
Taylor Swift
O, şu anda dünyanın en çok kazanan pop yıldızı. Her gün kasasına binlerce dolar giriyor. Ama Taylor Swift’in sokakta giydiği kıyafetlerin servetiyle ilgisi yok. Ünlü şarkıcı kimi zaman 15 dolarlık bir tişörtle objektiflere gülümsüyor, kimi zaman da yandaki fotoğrafta görüldüğü gibi 30 dolarlık bir kombinasyonla karşımıza çıkıyor.
 
 
Menüdeki en ucuz ikinci şarap
Chuck Feeney
Duty Free’nin kurucusu. Dünyanın en bilinen yardım meleklerinden. Çocuk ve sağlık alanında çalışan derneklere bugüne kadar 4 milyar doların üzerinde yardım yaptı. Ne üstüne para harcıyor, ne yediğine içtiğine… Biyografisindeki bilgiye göre, bir restoranda her zaman menüdeki en ucuz ikinci şarabı seçermiş. Bunu alışkanlık haline getirmiş.
 

Markasının en ucuz ürünlerini kullanıyor
Ingvar Kamprad
O, IKEA’nın kurucusu. Serveti 4 milyar dolara yakın. Evi baştan aşağı IKEA'nın en ucuz ürünleriyle dekore edilmiş. Ucuz restoranların müdavimi, bir akşam yemeğine 50 dolardan fazla ödememek gibi bir prensibi olduğu söyleniyor. Kamprad’ın ucuzluk marketlerinde sık sık indirim kuponu kullandığı da söylentiler arasında…