Dogukan adlı üyeden alıntı: mesajı görüntüle
Yazılım mimarisi tamamen mühendislik gerektiren bir konudur. Bahsettiğim mühendislik üniversitelerde C öğrendin, java öğrendin hadi sen artık mühendissin olayı değil. Bir çok üniversite bu hatanın farkına vardı ancak halen devam ettirenler de yok değil. Mesela benim mezun olduğum zaman aynı üniversitede durum anlattığım şekildeyken şu an kardeşim aynı üniversitede okuyor, bu hatanın farkına varmışlar ve bu yönde gençleri yetiştiriyorlar.

Siz de biliyorsunuz yazılım geliştirilirken belli uluslararası standartlar, metodlar var ve bunun yanı sıra gelişen teknolojilerde var.

Mühendis; sorunu belirler, uygun çözümleri üretir, yazılımın mimarisini oluşturur, algoritma ve akış diyagramını oluşturur, kodlama yapısını dizayn eder, kullanılacak güncel teknolojileri ve donanımları belirler, algoritmaların analizini gerçekleştirir ve kodlanmasında da yer alır.

Basit bir örnekle; Wordpress, vBulletin mimarileri ile forumda satılan php'de kodlanmış bir emlak scriptinin mimarisi aynı olmuyor. Forumda satılan bir başka scripte rastladım, bir tanıdığım almış, yardıma ihtiyacı oldu. Mimarisi tamamen yanlış oluşturulmuş. Bu kadar satan bir scriptin bu kadar amatörce kodlanmasına hayret ettim. OOP kodlamaya çalışırken spagettiye dönmüş kodlar, anlamsızca dizinlere yerleştirilmiş dosyalar, hatta özelleştirilebilir olması gereken fonksiyonların ioncube ile şifrelenmiş olması, yarısı Türkçe yarısı İngilizce isimlendirmeler, dökümantasyonu zaten kim kaybetmiş... Bir yapı var ama aklı başında kimse o yapıya girip yaşamak istemez.

Bahsettiğim mühendislik burada devreye giriyor. Eğer başarılı bir mühendislik sergilenmişse; kodların belli bir düzeni olmalı ve geliştirilebilmeye açık olmalı.

Yazılım ile mühendislik alakalı ancak yeni mezun mühendislerin çoğu bunu kavrayabilmiş değil. Tabi bu işin donanım kısmı var ağ kısmı var. Onlara değinmiyorum.

--

Yazılımcıların neden ucuza çalıştığı da burada ortaya çıkıyor. Sadece yazılımcı olarak değerlendiriyorum. Senior seviyesindeki bir yazılımcı düşük fiyata çalışıyorsa salaktır. Aksi halde birkaç yıllık deneyimi olan, junior seviyesinde birisi veya d*landırıcıdır.
Ben 1995 doğumluyum, kendimi bildim bileli evimde internet ve bilgisayar var.

2006-2007 yıllarında kendim php ile yazdığım sistemlerle rapidshare premium hesaplar satıyordum (form mantığı ile çalışan.

2007-2008 yılında PVP Server kurulumu yaptım, bu yıl linux tabanlı sunucularla ilk çalışmaya başladığım yıllardı.

2008 yılından günümüze kadar; PHP ve C++ ile projeler yaptım, bu alanda en çok öne çıkan projelerim yıllar önce yapmayı bıraktığım r**tkitler ve b*tnerlerdi.

Bugün yeni bir dil çıksa, sadece syntax bakarak bile sıfırdan orta düzey projeler geliştirebilecek bilgi ve birikime sahibim.

Ben mühendislik okumadım hatta 2011 yılından beri bu sektörden hatırı sayılacak paralar kazandım ve farklı alanlara yatırım yaptım, bu arada okulu ihmal ettim ve hala açık öğretimde üni son sınıf öğrencisiyim.

Matematiğim iyi değildir ancak kritik matematik hesaplamaları yaptığım projelerim oldu.

Günümüzde kullandığımız bir çok yazılım dilinin yaratıcısı bilgisayar mühendisi ile alakasız bölümler okumuş, sizinde bildiğiniz gibi okulu yarıda bırakıp çok başarılı projelere imza atan insanlar var.

Mühendislik ve Matematik farklı şeylerdir, yazılımın mühendislikle hiç bir alakası yoktur, algoritma ve yabancı dil öğrenmekten farksız bence yazılım.

Bir oyun üretirken elbette gerçek dünya ile alakalıysa fizik konusunda yardıma ihtiyaç duyacağız, bu durumda fizikçi olmadan yazılımcı olmaz diye bir argüman türeyecektir.

Veya dilleri çeviren bir uygulama yapacaksak ingilizce bilmeyen yazılmcı olamaz illa ingilizce öğretmeni/dil bilimcisi mi olmalı diyeceğiz?

Bence bu tarz şeyleri bir kalıba sokmaya çalışmaktan vazgeçin.