Arda Çetinkaya Yazılım ve arada kendim ile ilgili karaladıklarım…

Güzel bir etkinlik haberi Ankara’dan… ODTÜ TEKNOKENT ATOM ve CRYTEK’in ortaklaşa düzenlediği ve bilgisayar oyunları geliştirenlerin oldukça ilgisini çekebilecek CryEngine 3 oyun moturu ile oyun geliştirme etkinliği 26-28 Kasım 2012 tarihlerinde gerçekleşecek. Çok özel ve değerli olacağını inandığım bu etkinlik için kontenjan ne yazık ki çok sınırlı. Ayrıntıları ve başvuru bilgilerini aşağıda bulabilirsiniz.


26-28 Kasım 2012 tarihleri arasında gerçekleşecek olan CryENGINE 3 çalıştayı, ODTÜ TEKNOKENT ATOM ve CRYTEK işbirliği ile oyun geliştiricilerine ücretsiz verilecek. Çalıştay, Ankara Kalkınma Ajansı tarafından desteklenen “Ankara Dijital Oyun Kümesi Kapasite Geliştirme Projesi” kapsamında, Animasyon Teknolojileri ve Oyun Geliştirme Merkezi (ATOM)’da gerçekleştirilecek.

Üstün üç boyutlu oyun teknolojisi CryENGINE 3 ile oyun geliştirmek için gerekli tüm adımların anlatılacağı bu çalıştay genç oyun geliştiricilere katkı sağlayacak. Katılım için metutech-atom@metutech.metu.edu.tr adresine CV göndermeniz yeterli olacaktır. Eğitime katılım 20 kişi ile sınırlıdır.

Başvuru için son gün: 20.11.2012

TARİH: 26-28 KASIM 2012
YER: Metutech ATOM – ODTÜ Teknokent Galyum Blok

İletişim:
Emek Barış Kepenek
Adres: ODTÜ TEKNOKENT Galyum Blok 06800 Ankara/Türkiye
Tel: +90 312 210 64 00/134
E-posta: metutech-atom@metutech.metu.edu.tr

Çalıştığım firma için daha önce alışma arkadaşı aradığımızı belirten bir yazı paylaşmıştım. Güzel cevaplar gelmişti…Yine böyle bir ihtiyacımız olduğundan aşağıdaki ilanımsı şeyi paylaşıyorum.

Finans sektörünin ihtiyaçlarını paketleyip, ürün geliştiren, geliştirirken öğrenmeyi, öğrendikçe de yeni ürünleri geliştiren bir yazılım firması için;
.NET Framework ile uygulama geliştiren, Asp.Net ile haşır neşir olan,bunları yaparken C# tercih eden, tüm bunları yaparken bir de araştırmayı seven, araştırırken öğrenen ve öğreten, fazla tecrübeden çok, öğrenme isteği yüksek veya nereden başlayacağını kestiremeyen yeni mezun çalışma arkadaşları arıyoruz.

Temel yazılım presiplerini bilen, neyi neden yaptığını bilen veya sorgulayan, ya da neyi neden yapmamasını anlayabilecek analatik düşünceye sahip, yazılım geliştirme süreçlerine ilgisi olan ve hatta yazılım mimarisi ile ilgilenen, bu konular hakkında konuşmayı seven, konuştuğu kadar da bir şeyler üretmeye çalışan, sorumluluk alabilecek ve aldığı sorumlulukları zamanında tamamlayabilecek kişiler CV’lerini gönderebilirler çekinmeden…

Şahane çalışma arkadaşları, rahat ama kesinlike deneyim kazandıracak ve bir çok şey öğretecek bir çalışma şekli garanti. (:

İletişim kısmındaki e-mail adresine CV’lerinizi gönderebilirsiniz…

Edit: Firma bilgisi söyleyemiyorum ancak lokasyon Maslak,İstanbul. Gelen yorumlar için teşekkürler.

Yazının başlığı, bilenler için belki biraz tanıdık gelir. The Psychology of Computer Programming kitabından, “The Ten Commandments of Egoless Programming” başlığının kendi çapımdaki türkçe hali…Açıkcası okuduğum bir kitap değil, bir blog‘dan denk gelmem ile dikkatimi çeken bir kitap olduğunu söyleyebilirim. Blog’da geçen kitap içeriği de, uzun zamandır aklımda olan bazı şeyleri özetlediğinden, böyle bir yazı yazmak ve sonrasında da o içeri paylaşmak istedim…

Öncelikle hem Türkiye’deki, hem de yurtdışında ki bir çok yazılım platformunu(e-mail grupları, bloglar, içerik sağlayan siteler,eğitimler vs.) kendi çapımda takip ediyorum. Mesleğim ve yaptığım işin doğası ve içeriği gereği de bir çok başka yazılımcı ile sürekli iletişim halindeyim. Hem arkadaşlık çerçevesinde, hem de profesyonel iş anlamında… Teknik olarak farklı seviyelerde ve yönlerde ilerleyen,gelişen bir çok yazılımcı tanıyorum diyebilirim kendimce. Çoğu da başarılı… Çok fazla tanımadığım ama mesleğim dolayısıyla takip ettiğim yine başarılı yazılımcılar da biliyorum diyebilirim. Bu şekilde tanıdığım ve takip ettiğim yazılımcıların, beni çok ama çok rahatsız eden bir ortak noktası var ki, o da “ego”… Cidden yazılımcı egosu diye bir şey var sanırım ve cidden çok gereksiz bir şey…Bu arada tabi ki tanıdığım herkes böyle değil. Oldukça vizyonu geniş, kendini bilen, kendini eleştirebilen yazılımcılarda var. Neyse…

Çok hızlı ilerleyen teknoloji, insanların ihtiyaçlarını karşılama derecesine göre, teknolojiden öte bir konuma gelip, insanları kendine bağımlı haline getirdiğini düşünüyorum. Teknolojideki “Fan-boy”‘luk da sanırım bunun bir çıktısı… Yazılım sektöründe de bu ne yazık ki var. Bir yazılımcı için bunun seviyesinin çok önemli olduğunu ve fazlasının çok tehlikeli olduğunu düşünüyorum, hatta görüyorum. Bazen o kadar kaptırıldığını görüyorum ki, bunun kişisel olarak insanları kıracak seviyeye ulaştığını, yazılımcıların sahip olduğu bilgi ve tecrübeleri düşünmeden, ilgilendiği konulardan dolayı küçümsendiğini gözlemliyorum. Ve açıkcası bu biraz sinirimi bozuyor.

Hiç bir yazılımcı bu mesleğe başladığında, sahip olabileceği bilgilere önceden sahip bir şekilde başlamıyor. Kişisel özveri ve çalışma ile öğrenilebilen, insanların çeşitli ilgileri doğrultusunda da gelişebilen bir şey olduğunu düşünüyorum yazılımın. Teknoloji çeşitliliği ve ihtiyaçlar da zaten, bu “çeşitli iglilerin” ortaya çıkmasını sağlıyor. Ancak yukarda bahsettiğim bu “Fan-boy”luk, X teknolojisi ile uğraşan bir kişinin, Y teknolojisi ile uğraşan bir kişiyi küçümsemesine kadar gidebiliyor. O kişinin ilgilendiği konuları göz ardı ederek, bulunduğu konumu ya da sahip olduğu tecrübeleri yok sayarak, kendi egoları yüzünden gereksiz bir şekilde Y teknolojisini ve o teknoloji ile ilgilenleri küçümseyen bir konuma gelinebiliniyor. Hiç ama hiç gerek yok…Aynı şekilde X teknolojisi ile uğraşan egosu yüksek bir insan, başka bir X teknolojisi ile uğraşan kişiyi de küçümseyebiliyor. Hiç ama hiç gerek yok… Başkalarının yaptığı hatalar, ne yazık ki başkalarının egoları yüzünden faydalı bir şeye dönüşemiyor. Neyse çok uzatıp, yazının başlığından uzaklaşmak istemiyorum. Bu konuda belki ilerleyen zaman içerisinde fayda sağlayacağını düşündüğüm bir şeyler yazıp daha fazla başınızı şişirebilirim, ama şimdilik hazır yazılmışı var diyip, yazının başında bahsettiğim içeriği aşağıda paylaşıyorum ve şimdilik susuyorum…

 

  1. Understand and accept that you will make mistakes. The point is to find them early, before they make it into production. Fortunately, except for the few of us developing rocket guidance software at JPL, mistakes are rarely fatal in our industry. We can, and should, learn, laugh, and move on.
  2. You are not your code. Remember that the entire point of a review is to find problems, and problems will be found. Don’t take it personally when one is uncovered.
  3. No matter how much “karate” you know, someone else will always know more. Such an individual can teach you some new moves if you ask. Seek and accept input from others, especially when you think it’s not needed.
  4. Don’t rewrite code without consultation. There’s a fine line between “fixing code” and “rewriting code.” Know the difference, and pursue stylistic changes within the framework of a code review, not as a lone enforcer.
  5. Treat people who know less than you with respect, deference, and patience. Non-technical people who deal with developers on a regular basis almost universally hold the opinion that we are prima donnas at best and crybabies at worst. Don’t reinforce this stereotype with anger and impatience.
  6. The only constant in the world is change. Be open to it and accept it with a smile. Look at each change to your requirements, platform, or tool as a new challenge, rather than some serious inconvenience to be fought.
  7. The only true authority stems from knowledge, not from position. Knowledge engenders authority, and authority engenders respect – so if you want respect in an egoless environment, cultivate knowledge.
  8. Fight for what you believe, but gracefully accept defeat. Understand that sometimes your ideas will be overruled. Even if you are right, don’t take revenge or say “I told you so.” Never make your dearly departed idea a martyr or rallying cry.
  9. Don’t be “the coder in the corner.” Don’t be the person in the dark office emerging only for soda. The coder in the corner is out of sight, out of touch, and out of control. This person has no voice in an open, collaborative environment. Get involved in conversations, and be a participant in your office community.
  10. Critique code instead of people – be kind to the coder, not to the code. As much as possible, make all of your comments positive and oriented to improving the code. Relate comments to local standards, program specs, increased performance, etc.

Microsoft, bildiğiniz üzere Windows 8 ile beraber Windows RT adı altındayeni bir versiyon daha çıkarıyor. Aslinda bu versiyon yeni ve farklı bir işletim sistemi değil. Windows 8‘in ARM cihazlarında;-ki bunlar daha çok tabletler oluyor, çalışabilen versiyonu demek daha doğru olacaktır sanırım.

Bu işletim sistemi ile beraber Microsoft, tablet piyasasında da yer edinebilmek için geçtiğimiz aylarda Surface’i duyurdu. Hatta geçtiğimiz günlerde ön siparişleri topladı ve önümüzdeki hafta da artık piyasaya sürüyor olacak. Bayaa hızlı bir ilerleme durumu var yani…Oldukça güzel reklamlar ve teknoloji ile ilgili sitelerde de tanıtımlar ile bir beklenti, bir heyecan ister istemez oluştu, oluşturuldu. Peki bu heyecan, hayal kırıklığına dönüşebilir mi?
Windows RT, başta söylediğim gibi Windows 8’in bir alt kümesi gibi birşey. Dolayısıyla Windows 8’in sunduğu özellikleri beklemek çok da doğru olmaz. Windows RT‘li bir cihaz alırken bunun farkında olun. Sonra “Yok anam bu niye böyle?” falan diye çemkirmeyin… Windows RT, tablet piyasasını ve kullanıcı etkileşimli cihazlara yönelik olduğundan Windows 8’in son kullanıcı için komplike ve gereksiz gelebilecek özelliklerinden tamamen arınmış durumda. Windows 8’de ki gibi çok fazla müdahale etmek mümkün değil. Gerçi ne kadar gerekli olacak bunu bilemiyorum ama Windows söz konusu olunca, akılda bir soru işareti kalmıyor değil.

Windows RT, uygulama açısından Windows 8’e göre daha kısıtlı. Windows RT, sadece Windows Store App(ex-Metro Style) olarak adlandırılan uygulamaları çalıştırabilecek. Yani mevcut eski Windows işletim sistemlerinde kullandığınız uygulamaları Windows RT‘de çalıştırmayı beklemeyin. Aynı şekilde Windows 8 de masaüstü uygulamaları olarak kullanabileceğiniz uygulamaları Windows RT‘de kullanamayacaksınız. Bu nokta yazılım geliştiriciler için oldukça geniş ve ucu açık bir nokta. Bir çok uygulamanın Windows Store App versiyonlarını yazmak için artık çok beklemeye gerek yok. Benzer platformlarda yüzbinlerce uygulamanın olduğu düşünülürse, Windows RT bu konuda oldukça değişik ve güzel uygulamalara ev sahipliği yapacak gibi.

Kullanılamayacak masaüstü uygulamalar diyince, Office uygulamaları ilk akla geliyor. Windows RT‘nin Office versiyonu biraz farklı olacak. Windows RT, sadece 4 tane Office uygulamasını çalıştırabilecek. Word,Excel,PowerPoint ve OneNote… Bu uygulamalar da, hali hazırda kullandığınız bazı özellikleri içermiyor olacak. Mesela Excel’de macro’ları kullanamayacaksınız. Macro içeren mevcut dökümanlarınızı, Windows RT‘de açmak biraz sıkıntılı olacak. Ve evet ne yazık ki Outlook yok. Kurumsal dünyanın iletişim platformu Outlook’un olmaması beni biraz şaşırtsa da, Hotmail’in Outlook adı altında yenilenmesi ve Windows RT‘de yer alıyor olması, kötünün iyisi olarak olaya bakmamı sağliyor. Ama ne yazik ki Outlook’un Exchange desteği mevcut değil. Ancak Exchange Active Sync, özelliği ile sanırım kısmen de olsa biraz kullanmak mümkün olacak. Kısaca Office ürünleri ile alakalı yazılımlar geliştiren kişiler, bu kısıtlamalardan bayaa bir etkilenecek gibi.

Windows RT, domain’e bağlanma desteğinin olmaması(ki olsa, kurumsal şirketlerde sadece belli uygulamaların kullanılmasına izin veren group policy’leri ile baya güzel bir kullanım alanı olabilirdi), şifreli dosya sisteminin eksikliği kurumsal tarafta Windows RT‘li tabletlerin öne çıkmasını engeleyecek en önemli noktalardan bir kaçı bence. Hali hazırda Windows 8’de olan bu özellikleri bir şekilde Windows RT versiyonuna da aktarsalar güzel olabilirdi sanki.

Windows RT‘nin bir diğer eksikliği de Windows Media Player’in olmayışı. Bu eksikliği XBox Music ve XBox Video ile kapatmaya çalışsada, müzik konusunda biraz sıkıntıları olacak gibi.

Peki ya Surface?

Microsoft’un bu yeni tableti bir kere Türkiye’de satışa sunulmayacak. En azından şimdilik. Hatta uzun bir sürede böyle olabilir. Ayrıca bu cihazın şu an Windows RT‘li versiyonu mevcut. Windows 8 Pro’lu bir başka versiyonu daha olacak, ancak henüz onun ayrıntıları çok net değil. Bu cihazda ne yazık ki 3G ya da 4g bir bağlantı seçeneği mevcut değil. Sadece wireless bağlantı opsiyonun olması, mobilite konusunda diğer rakiplerine çok büyük avantaj sağlıyor. Bu nokta uygulama geliştirenler açısından da bir sıkıntı. Sürekli online olamayan uygulamalar ve sync. konusunda oldukça dikkat edilmesi gereken durumlar ortaya çıkacaktır.

Özetle, şu an Windows RT ve Windows RT‘li cihazlara oldukça mesafeliyim. Mevcut sahip olduğum cihazlar ve kullandığım teknolojiler ile ihtiyaçlarimi oldukça kolay karşılayabiliyorum. Daha iyisi için alternatif arayışlarım içerisinde de ne yazık ki şu an Windows RT ve onu içeren cihazlar bana hitap etmiyor gibi. Biraz bekleyip, 2.nesil versiyonlarını kullanmak benim için sanırım daha mantıklı olacak gibi.
Neyse, bu gereksiz kafa karışıklığımı bir şekilde paylaşmam gerekiyordu…Bu yazı ortaya çıktı, umarım bir şekilde de faydalı olur…

WOWZAPP 2012: Worldwide Hackathon for Windows! adı altında, dünya çapında bir hackathon(?) düzenleniyor. Bu etkinliğin bir ayağı da İstanbul’da… Eğitim temalı bu etkinlikte, Windows 8 için bir uygulama geliştirmeniz bekleniyor. 19 Kasım 2012’ye kadar geliştirmiş olduğunuz uygulamayı, Windows Store’a koyup değerlendirme sürecine katılabilirsiniz ve değerlendirme süreci sonunda başarılı olursanız çeşitli ödüller sizi bekliyor olacak.

Süreç ile ilgili bilgileri ve katılmak için gerekli adresleri aşağıda bulabilirsiniz.

8 Kasım 2012: WOWZAPP etkinliğine katılmak için kayıt sürecinin bitmesi. Yerimiz sınırlı hemen kayıt olun!

9 Kasım 2012:Açık Akademi’den Windows 8 eğitimlerini al!

10 Kasım 2012: WOWZAPP 2012’ye katıl, ihtiyacın varsa yüz yüze eğitimini al, uygulamanı geliştirmeye başla. Yerimiz sınırlı hemen kayıt ol!

11 Kasım 2012: Tech Days Lab Session: Uygulamanı geliştirmeye devam et!

12 – 16 Kasım 2012: Uygulamaların review edilmesi

16 – 19 Kasım 2012: Uygulamanı gönder: Uygulamanın Windows Mağaza linkini veya uygulama daha yayınlanmadıysa uygulamanın installation dosyasını (kodlarını değil) *.rar haline getirip Skydrive’a koyup download linkini değerlendirme için wowzapptr@msakademik.net adresine gönder.

19 – 27 Kasım 2012: Windows Mağaza değerlendirme süreci

27 – 30 Kasım 2012: Jüri Değerlendirmesi

5 Aralık 2012: Ödül Töreni