Uzunca bir süre laptoplar ile takıldıktan sonra bu işin laptopla olmayacağına kanaat getirdim. Acer laptopumun BIOS'unu hack edip virtualization modunu bile açmıştım. Fakat zaten düşük olan CPU ve RAM benim işlerim için yetersizdi. Birde üstüne 64bit işletim sistemi kurulunca bu iş hiç olmayacak dedim. Dell Alienware bir laptop bile alsam ki paraya yazık olurdu, bana yetmeyecekti. Amacım zaten portable olmak değil.

Benim yapmak istediğim işler şunlar.
MAC OS kurup IOS geliştirmeye bakmak,
Android geliştirmeye bakmak,
LAMP sunucu kurup OsCommerce, WordPress, Drupal gibi projeleri denemek,
SQL Server, Oracle gibi veritabanlarını kurmak,
Visual Studio zaten olmazsa olmaz, fakat endüstriyel kurulumları deneyebilmek ve en azından iki sunuculu bir cluster oluşturabilmek,
Linux veya Solaris tabanlı sunucu sistemlerini kurmak ve kullanmak,
Aklıma gelecek şeyleri donanım problemleri olmadan deneyebilmek istiyordum.

Bu kadar iş için kaç tane bilgisayar gerekir siz hesaplayın. İşin içinden çıkılacak gibi değil. Belki bende biraz maymun iştahlığı yapıyorum ama bana bunlar sanki minimum ihtiyaçlar gibi geliyor.

Yukarıdaki gereksinimlerimin çoğu sanal işletim sistemleri ile çözülebilir. Seçeneklerden biri VMWare diğeri ise Oracle'ın Virtual Box programı. Biraz araştırınca torrent veya özel sitelerde istediğiniz işletim sistemini kurulu ve çalışır halde indirmenizin mümkün olduğunu göreceksiniz. Hatta Android tablet sürümünü veya MAC OS sürümünü bile indirebiliyorsunuz. Eğer birden fazla sanal işletim sistemi çalıştıracaksanız, CPU ve RAM ihtiyaçları çoğalıyor. Sistemin boğulmaması için en güçlü CPU ve en fazla RAM tercih sebebimdi. Ek olarak hızlı birde sabit disk.

Benim topladığım bilgisayarın son hali şu şekilde oldu:
thermaltake1Anakart: ASUS Sabertooth-990FX /R2 990FX AM3
CPU: AMD AM3+ x8 FX-8350 4.0Ghz/8Core/16M/125W
RAM: Patriot Signature 8GBX4 Single DDR3 1333 - PSD38G13332H
Ekran kartı: Gigabyte R7870-2GD5TOC 2G DDR5 7870-OC PCI-E
Disk: Hitachi 3.5" Deskstar 0F12117 2TB 32M SATA III HDD
Kasa: Thermaltake VN450A1W2A Commander MS-I USB3.0 Mid Tower Case w/500W. PSU
Monitör: LG 27" 5ms 1920x1080 HDMI,DVI,USB Hub,SPK Height Adjustment. LED Backlight LCD Monitor
Wireless kart: ASUS PCE-N15 PCI-E 300M Wireless-N Network Card

Ek olarak WD 3TB USB3.0 harici disk zaten vardı.

Toplam 32GB RAM ve 8 core CPU ile sanırım 6 adet sanal işletim sistemini sorunsuz çalıştırabilirim. Alalı 2 hafta oldu ve şimdilik en fazla 3 tane sanal sistem çalıştırdım ve performans çok iyi. Monitörün geniş olması her programı yerleştirmenize yarıyor. Aleti tam olarak kurmak zaman alacak ama şimdilik iyi gidiyor. Windows 8'i tam olarak kullanabiliyorum, 64 bit olması da sanal sunucu sistemlerinin kurulumu için iyi oluyor. Çok oyun oynamasam da istediğim oyunu da rahatça oynayabilirim. AMD işlemcisini ise fiyat farkından dolayı tercih ettim.

Yukarıdaki sistemin yavaş olan bir unsuru var. Bunu bulabilecek misiniz?

734155_10152852675895634_559282557_n

İşte uygulamaya kalktığınızda her şeyini kullanamadığınız, organizasyonun gereksinimlerine göre değişikliğe uğramış, yapılan işlere göre şekil almış, sizinde geliştirdiğiniz bir kaç teknikle harmanlanmış proje yönetimi. Yukarıdaki Bruce Lee resimleri de bunu anlatıyor.

Gerçektende uygulama sahasında öyle kitaplarda yazıldığı gibi harfiyen uygulayamıyorsunuz. Tabii organizasyonun belli bir eko-sistemi var. Patron, patron gibi hissetmek istiyor, işi yapanlar “bu konuyu en iyi biz biliyoruz” diyor. Arada kalan Kurumsal Mimar ne yapsın. İkisinin arasında patlamadan bir şeyler halletmeye çalışıyor.

En komiği şu. Çaktırmadan Agile kurallarını uygulamak, araya Scrum karıştırmak, aylık sprintler yapıp çaktırmadan işleri bitirmek.

Sonra sonuçları gören patronun mutluluktan sırıtması.

Senelerdir bilişim sektörünün içindeyim. Genelde hükümet departmanlarında çalıştığım için, bilişim sektörünün insan ilişkileri kısmını daha iyi kavradım. İşin teknolojik yanından çok bu tür işlere kafa yoruyorum.

- Bir müşteri var
- Gereksinim analizi yapacaksın
- Aynı zamanda sistemin çalışacağı alt yapıyı tasarlayacaksın
- Organizasyon içindeki diğer sistemlerle entegre olacak
- Harici sistemlerle entegre olacak
- Dışarıya hizmet sunacak

- Bir müşteri var
Müşteri yazılımı kullanacak kişi. Organizasyon içindeki bir birim. Bu kişi(ler) ile olan ilişkin yazılımın kalitesini belirleyecek. Eğer istediğin an müşteriye erişemiyorsan, bürokratik yollardan geçmen gerekiyorsa, müşteriye değil bu işe atanmış kişilerle görüşüyorsan; bu problemleri yöneticilerine belirtmen lazım.

- Gereksinim analizi yapacaksın
Yaptığın analizi bilgisayarlar için değil, insanlar için yapıyorsun. Analiz sırasında bilgi sistemlerini düşünüyorsan, veri tabanını, ekranları düşüyorsan bil ki analizini bilgisayarlar için yapıyorsun. Bunun hakkında daha evvel yazmıştım. Müşterinin problemini müşteri için çözmen gerekir. Sonra ki adım o çözümü bilgisayarlar ile uygulamaktır. "Uygulama" bu yüzden bir uygulamadır.

- Aynı zamanda sistemin çalışacağı alt yapıyı tasarlayacaksın
Alt yapıyı sağlamak için gerekli donanım, network, yedekleme, destek konularında hizmet verecek birimler gene insanlar. Bu kişilerle iyi ilişkide olmazsan ileride çıkacak problemleri çözmek çok uzun zaman alabilir. Daha projenin başında alt yapı gereksinimleri ortadadır. Mevcut alt yapı kapasitesi nedir, nasıl yeni donanım istenir, bunun için bütçe yeterli midir, kurulum nasıl yapacak, kim yapacak, na zaman yapacak, özel ekipman gerekiyor mu gibi soruların cevapları kişilerden gelecek.

- Organizasyon içindeki diğer sistemlerle entegre olacak
Bu "diğer" sistemlere bakan kişiler ve ekipler senin en yakın arkadaşın gibi olmalılar. Analiz aşamasında bu entegrasyonun sınırları iyi çizilmezse, ilerleyen zamanlarda tamiri, bütçe açıklarına neden olabilir. Entegrasyon analizi sırasında diğer sistemlerin sabit kaldığını varsaymak çok yanıltıcı olur. Sizin bu ekiplerle olan ilişkiniz güncellemeleri de ilk ağızdan ve erkenden öğrenmenizi ve analizlerinizi doğru olarak güncellemenizi sağlar.

- Harici sistemlerle entegre olacak
Organizasyon dışındaki sistemlerin sahipleri de bizim yakın dostumuz gibi olmalı. Dökümanlardan dış sistemlerin özelliklerini okursunuz ama dış sistemlerin güncel halini ancak kişilerden sorarak öğrenebilirsiniz.

- Dışarıya hizmet sunacak.
Sunulan hizmetleri kullanacak firma ve kişilerin ne istediğini biliyor muyuz? Bu kişilerle ilişkimiz nasıl olacak; iletişim mekanizmamız nasıl olacak hiç düşündük mü?

Yukarıda saydığım maddelerin birini dahi yapmıyorsanız, proje için risk oluştururlar.

Öte yandan teknik alt yapı önemini yitirmiş değil. Sakın böyle düşünmeyin. Sizin teknik alt yapınız projenin parçalarını birbirine yapıştıran yapışkan gibidir.
- Programla dili
- Kullanılan araçlar
- Donanım alt yapısı
- Ağ ve haberleşme alt yapısı
- Yedekleme ve geri dönüş uygulamaları
- Veri tabanı kurulum, yedekleme
- Cluster biçiminde sunucu kurulumu ve bunları örneğin F5 kullanılarak yapılandırılması
- Web sunucuları ve kurulması
- Sunucu işletim sistemleri
- Özel donanım gereksinimleri
Gibi pek çok teknik konu sizin gözetiminizdedir. Bu konulardaki bilginiz ve deneyiminiz, organizasyonun sunduğu alt yapı ile birleşince size ve projelerinize yeni ufuklar açacaktır.

Arama



Hakkımda

Merhaba, ben Gürkan Yeniçeri. 10 yılı aşkın süredir özel sektör ve hükümet iştiraklerinde yazılım mühendisliği yapıyorum. Bu sitede 2005 Mart ayından beri genelde yazılım mühendisliği ve hobilerim hakkında yazmaktayım. Profesyonel iş geçmişim hakkında daha fazla bilgiyi aşağıdaki Linkedin.com linkinden alabilirsiniz.
Gürkan Yeniçeri'nin profilini görmek için tıklayın

Kontak

Soru sormak veya öneride bulunmak isterseniz buradaki kontak formunu kullanın. Mesajlarınıza en kısa zaman içinde cevap vermeye çalışacağım. Ayrıca Windows Live Messenger kullanarak gyeniceri {AT} hotmail {DOT} com adresinden bana ulaşabilirsiniz.

Eğer İngilizce blogumu okumak isterseniz buraya buyrun.
Blogumu RSS Bandit gibi bir RSS okuyucusu ile de takip etmek için kullanın.
Ayrıca aşağıdaki linklerden hakkımda ayrıtılı bilgi alabilirsiniz.
Twitter
Friendfeed
Facebook

RSS 2.0

Reklamlar


Vezir

Vezir Proje Danışmanı
Sitede birde Vezir isminde wikimiz var. Bu wikiyi yazmayı düşündüğüm bir kitap için oluşturmuştum daha sonra herkese açmaya karar verdim. Vezir yazılım firması kurmak isteyenlere tavsiyeler vermek için hazırlandı. Ayrıca UML ve Modül Tabanlı Geliştirme hakkında da bilgiler mevcut. Vakit buldukça yeni eklemeler yapıyorum. Değişikliklerden haberdar olmak için RSS çıktısına üye olabilirsiniz.

Tag Bulutu

Tüm taglar...
www.flickr.com
This is a Flickr badge showing public photos from gurkanyeniceri. Make your own badge here.
Bu blogda 265 yazı ve 509 yorum var. Diğer sitelerden 26 adet link gelmiş.

Reklamlar