Bir yazılımcı mesleğine adım atmak için hazırlandığı okul yıllarından, emekli olup hobi amaçlı çalışacağı günlere kadar, çeşitli tipte teknik kaynaklara başvurur. Başucu kitapları, dergiler, görsel eğitim setleri bir yana ağırlıklı olarak internet içerikleri değerlendirilir ve en büyük yardımcı hiç şüphesiz Google'ın sihirli kutucuğudur.
Yazılımcı açısından tehlikeli olan bir gerçekse, Internet’in sınırsıza yakın ve sürekli genişleyen bir evrene benziyor olmasıdır. Bu evren içerisinde her dilden sayısız içeriğe ulaşmak bir lütuf gibi görünse de görmezden gelinemez gerçek ortaya çıkan bilgi kirliliğidir. Bilgi, herkes için değerlidir. Ama herkes en kalitelisine ulaşmak isterken, farkında olmadan bu evren içerisinde kaybolabilir.
İçinde bulunduğumuz 2013 yılının Kasım ayında, internet ortamında yaptığım teknik paylaşımların 10ncu yılını tamamlıyor olacağım. Dopdolu, inişlerle çıkışlarla geçen bir on yıl. .Net Framework için 1.0 dan başlayıp 4.5’e kadar geçen bir dönem. Visual Studio.Net’ den Dark Side’a geçmiş Visual Studio 2012’ye geçtiğimizi gördüğümüz bir dönem. 56K modemler üzerinde surf yaparken, bulut bilişim hızlarına eriştiğimizi gördüğümüz bir dönem.
Netron firmasının altın dönemlerinde çalışan birisiyken 200ncü makalem şerefine pasta kesmişlerdi. Sevgili Emrah Uslu önderliğinde.
Aslına bakılırsa yapmış olduğum, yapmaya devam etmek istediğim bu teknik yazarlık sevdasının çıktıları olan makaleler çok çok da önemli değil. Ancak bu kadar yıldan sonra ve özellikle gelişim toplumu olarak, geldiğimiz şu günleri görünce, iyi bir teknik yazı için nelere dikkat edilmesi gerektiği noktasında biraz ahkam kesebilirim diye düşünüyorum. Bunun en büyük nedeni son zamanlarda üretilen içeriklerde kalitenin düşüşü. Ama öncesinde sizi yakın geçmişe götürüp biraz sıkayım.
Paylaştığım fikirlerin hiç birisi sevgili meslektaşım ve kadim dostum Özgür Altuntaş’ın da belirttiği üzere kanun hükmünde kararname değildir. Sadece birer tavsiye ve öneridir.
Yakın Geçmiş
Internet ortamında ilk teknik paylaşımımı 2003 yılının soğuk bir Kasım ayında yapmıştım. On altı aylık yedek subaylık serüvenimi tamamlayalı bir kaç ay olmuştu. O yıllarda Visual Basic.Net programlama dilini ve .Net Framework platformunu Türkçe kaynaklardan öğrenmeye çalışıyor, bunu yaparken de aynen üniversite yıllarında olduğu gibi defterlere cicili bicili kalemlerle kişisel notlarımı alıyordum. Hatta program kodlarını bilgisayarda değil defter üzerine yazıp, zihnimde derlemeye çalışıyordum. Bir gün bunları neden bir internet sitesinde toplamıyorum diye düşünmeye başladım. (Nasılsa işsizdim yapacak bir iş yoktu, boş boş oturmanın kime ne faydası vardı)
Öğrendiklerimi dilimin döndüğünce, kendimce zenginleştirdiğim örneklerle, daha düzenli olarak, her yerden ulaşılabilir ve her ortamda gösterilebilir şekilde sunmak...İtiraf etmek gerekirse daha ilk yazımı hazırlarken büyük keyif almıştım. Halen daha almaktayım.
Kendime bir web sitesi açtım. Üstelik Asp.Net ile kendim geliştirmeye çalıştım. Rezalet bir tasarım kabiliyetim vardır. Ancak bunu önemsemiyordum. Amaç öncelikle kendim için bilgilendirici içerik barındırmaktı.
O yıllar Türkiye’ de yerli internet topluluklarının da(Community) yükselişe geçtiği zamanlardı(O günleri arar olduk). Bir elin nesi var iki elin sesi var misali, teknik anlamda iyi seviyede olan veya kendisini daha da ileriye götürmek isteyen kişilerin bir araya geldiği topluluklardı. Öyleki, insanların çeşitli toplantılar vesilesi ile buluşup beyin fırtınası yaptığı ortamlarda, sadece havada uçan kelimeler bile, yeni mezun olan veya sektörün içerisinde uzun zamandır yer alan bir profesyonelin istediği, arayıp da bulmakta zorlanacağı bilgi deposunu oluşturur nitelikteydi.
O yıllarda teknik toplulukların revaçta olmalarının önemli nedenlerinden birisi de, iş verenlerin dikkate aldığı platformlara dönüşmeleriydi. Sektörün pek çok firması bu gibi teknik seviyesi yüksek topluluklarda yazısı yayınlananları daha çok dikkate alıyordu. Bu dikkate alma farkındalığının oluşmasında, Microsoft gibi yazılım devlerinin topluluklara olan desteği ve özellikle kurucuların belirli bir kaliteyi korumak için gösterdikleri çaba da önem arz etmekteydi.
Bu durum halen böyle mi bilmiyorum? Açıkçası elimde bunu ispat edecek sayısal bir veri mevcut değil. Ama o yıllarda sırf bu sebepten bir iş görüşmesinde avantaj sağladığımı ifade edebilirim. Hatta çalıştığım yerde pek çok arkadaş bu teknik paylaşımlardan yararlanmıştı. Halen daha bu teknik paylaşımlardan yararlanılabildiğini düşünüyor olsam da, topluluklara karşı bir güven kaybının oluştuğuna da inanmaktayım.
Topluluk Savaşları
Halen internet ortamında pek çok teknik topluluk bulunmakta. Zaman içerisinde aralarında kapananlar olduğu gibi, herhangi bir içerik üretmeyenlerine de rastlamak mümkün.
Üzücü olan nokta ise potansiyele sahip olan toplumumuzun halen daha bir Code Project, Geeks With Blogs, Stack Overflow çıkartamıyor oluşu. Bu amaçla yola koyulan toplulukların sayısı neredeyse yok denecek kadar az ve çoğu Kızgın Yazılımcı sevgili dostum Nezih Tınas’ın tabiriyle Kervan misali yolda düzülmekte.
İkibinli yılların ilk yarısı ve ortalarında, teknik toplulukların arasında kimsenin tahmin edemeyeceği rekabetler yaşanırdı. İlk paylaşımlarımı yaptığım da, bunların mümkün olduğunca fazla insana ulaşması için çabaladığımı ve bu yüzden birkaç teknik toplulukta ilgili yazılarımı yayınladığımı hatırlıyorum. Topluluklardan birisi bu duruma karşı çıkmış ve sadece kendi grubunda yazmamı istemişti. Hatta Netron tarafından düzenlenen bir parti de, diğer topluluk üyeleri ile bir araya gelmemem özellikle istenmişti. Bu tabiri caizse sidik yarışı olarak nitelendirebileceğimiz çatışmalar ne yazık ki halen daha devam ediyor. Bu gün ticari meseleler yüzünden yapılan paylaşımların rahatça silinebildiği bir ortam da yaşıyoruz.
Asıl Mevzu
Gelelim yazımızın asıl konusuna. Bundan sonrası teknik topluluklarda yazarlık yapan, kendi bloğunda bir şeyler paylaşmaya çalışan veya bu yolda ilerlemeyi düşünen hevesli yazarlara gelecek. Her bir madde sadece bir öneri ama kulağınıza küpe etmeye değer.
Tarzınız Olsun
Her ne kadar üretmekte olduğumuz teknik yazılar edebi birer eser olmasa da, yazarın kendine ait bir tarzı olması önemlidir. Bu yazım tarzı pek çok şekilde kendini belli eder. Yazının uzunluğu, cümlelerin konuyu ifade ediş biçim, giriş kısmı, resimleri vb. Konuyu anlatmak için benimsenen esprili bir yaklaşım dahi, yazarın tarzının bir parçasıdır.
Tarzı tutturmak ne kadar zorsa bunu korumak da oldukça güç bir meseledir. Bu, biraz da istikrarı ne kadar koruyabildiğinizle alakalıdır. Tüm yazılarınızı aynı konsantrasyon içerisinde yazamazsınız. Çevresel faktörler bunun önüne geçer.
Yine de bir yazının sahip olması gereken giriş-gelişme-sonuç misali sizin de kendinize has tarzınızın olması, hem üreteceğiniz yazıyı kurgulama hem de yazma aşamalarında fayda sağlayacaktır. Kıssadan hisse bir planınız olmalı.
Düzenli olarak gazete okuyanlarımızın çoğunun eminim ki yakından takip ettiği yazarlar vardır. Dikkat edin hepsinin bir tarzı ve asla vaz geçmedikleri uslupları bulunur. Bir usluba sahip olmak hiç olmamaktan çok daha iyidir.
İtiraf etmek gerekirse kendi yazım tarzımı bulmam epey yılımı aldı. Bu yüzden arada çok kötü yazılar da çıktı. Geriye dönüp baktığımda çoğundan nefret ediyorum.
İstikrar
Pek çok dalda olduğu gibi belki de en zor olan istikrarı sağlayabilmektir. Bir yazar için istikrar sayısal olarak kolayca belirlenebilir. Her ay 2 teknik makale 1 görsel eğitim. Her Pazartesi bir makale. Her ay uzun metrajlı bir makale. Her 3 ayda bir seminer gibi.
Böyle bir yaklaşıma karar vermek her ne kadar kolay olsa da, zor olan uygulamaya geçirmektir. Hatta uygulamaya geçirseniz bile bunu çok uzun süre boyunca korumanız pek de mümkün değildir. Buna sebebiyet verecek pek çok etken vardır ama hepsini sıralamaya gerek yok. Hayat desek yeterli olur.
Zamanın da C#Nedir? topluluğunda editör olduğum dönemlerde her hafta Perşembe gecesi yayımlanan bir serim vardı(Şu an boşuna bakmayın göremezsiniz ama buradan ulaşabilirsiniz). Java ile 24 Kahve Molası. 24 bölümde Java dilini öğrenmeye çalışmıştım. İstikrar göstergelerinden birisi şuydu. Her hafta aynı gün bir yazı mutlak suretle yayındaydı.
İstikrarı engelleyebilecek öngörüleriniz varsa bunu mutlaka uygulayın. Örneğin iş yaşamınızda çok yoğun olduğunuz dönemlerde, herhangi bir kazanç elde edemediğiniz bu işlere vakit ayıramayabilirsiniz. Çünkü para önemlidir. Ne demişler, “Aşksız yaşanır ama parasız yaşanmaz”. Ama belki bir içerik havuzunuz olabilir. Yazdıklarınızı hemen paylaşmak zorunda değilsiniz. Bir süre birikebilirler.
MVP unvanımı iade ettiğim 2010 yılında 24 makalelik bir havuzum vardı. Yeni bir yazı yazınca hemen yayınlamazdım. Bu havuzdan ilk sırada olanı paylaşırdım. O zamanlar hafta da bir yazı yazmaya gayret ettiğim düşünülecek olursa 6 aylık içeriğin garanti olduğunu ifade edebilirim.
Tek sıkıntı yazılanların güncel konu olması halinde kolayca eskiyebileceğiydi. O havuz halen var mı diye merak edebilirsiniz? Evet var. Ve yine 24 yazıdan oluşmakta. Tabi bu sefer haftada bir aralığı geçersiz. Eğer eskimeyen konular olduğunu düşünür ve iki haftada bir içerik çıkartırsanız bir sene boyunca yan gelip yatabilirsiniz. Ya da, havuzu beslemeye devam eder o bir seneyi sürekli öteleyerek, istikrarı uzun yıllara yayarsınız.
Pek tabi kimse sizden gönüllü olarak yaptığınız bu paylaşımlarda ömür boyu çalışmanızı bekleyemez, beklememelidir. Ama yayında olduğunuz müddetçe koruyacağınız istikrar sizin gelecek nesillere vereceğiniz kıymetli bir mesaj olabilir.
İspat
Teknik yazı paylaşmak zor bir zanaattır. Özellikle yazılım konusunda bir sonuca ulaşmanın pek çok yolu vardır ve her birinin kendine has avantajları olasıdır.
Çoğu zaman bir anlatım bir de iddia içerir. Bunu ispat edebilmeli ve sizden daha teknik olan insanları ikna edebilmelisiniz. Ne yazık ki bu konuda acı tecrübelerim var. Bu tip teknik paylaşımlarda yer alan bir hata, tüm doğruları götürür niteliktedir. Kimse size acımaz, verir veriştirir.
Teknik olarak burada mevzu olan ispat, matematiksel bir denklemin ispatından çok daha farklıdır. Bir matematik teorisi ispatlandığında bilimsel olarak kendini kanıtlar ve bu tez kolay kolay çürümez. Ancak gelişen yazılım teknolojileri, bu gün ispat ettiğimiz bir performans vakasını yarın kolaylıkla çürütebilir. Çünkü hep daha iyisi olması için gelişen bir ortam vardır. Dolayısıyla teknik içeriklerin çok çabuk eskiyebileceğini unutmamak gerekir.
Yılmamak
Bir önceki maddenin son paragrafında belirtildiği üzere bir hatanız tüm çalışmalarınıza mal edilebilir. Bu yüzden pek çok teknik yazar zaman zaman küser ve “bu son olsun bir daha asla” der. Ama ilk başta düşünülen amaç bu cümleyi telafuz ederken unutulmuş olabilir.
İlke olarak insanların övgüsünü almaya çalışmaktan ziyade, kendimiz için tuttuğunuz bu düzenli notların birilerinin yararına olacağını düşünmek yılmamızı engelleyecek geçerli sebeplerden sadece birisidir.
Sarf ettiğim son cümle aynı zamanda çok tehlikelidir. Bazen gerçekten de bırakmanız gerekebilir. Çünkü bu işi yapamadığınızı anlamış olabilir ve en azından bilgi çöplüğüne katkıda bulunmayarak toplumsal bir yarar sağlayabilirsiniz.
Yazım Stili ve İmla
Bu günlerde okuduğum pek çok teknik makale de hep aynı sorunlar bulunmakta. Devrik cümleler, imla hataları, anlaşılamayan ifadeler, bozuk formatlar vb. Oysaki bir yazının içerisinde, okurun gözüne sokmak istediğimiz kelimeleri kalın formatta işaretlemek bile yeterli olabilir. Sadece paragrafların düzeni, ilk kelimenin girintisi bile okunurluğu kolaylaştıran ve etkiyi arttıran unsurlardandır.
Dikkat ederseniz pek çok gazete ve mecmuanın köşe yazılarının belirli bir boyutu ve düzeni vardır. Hatta bu yazıların editör onayından geçmelerinin de belirli şartları bulunmaktadır. Örneğin olması gereken en az kelime sayısı gibi…
MVP olduğum bir dönemde Windows.Net & Magazine dergisinin Türkiye sayısında bir yazı yazmam istenmişti. Meğer son sayısıymış. Dergi kapandı ve yazı sadece o ay derginin gönderildiği bir kaç kişiye gitti. Bir tane de bana geldi. Her neyse…O zamanlar editör bana kelime sayısını bildirmişti. En az 1200 kelime gibi.
İmla konusunda söylenebilecek pek çok şey var. Çoğumuz bir imla kılavuzuna bakmadan yazıyoruz. Açıkçası teknik bir yazım için vakit kaybettirici ama bu konuda Word gibi uygulamaların yazım düzeltimi özelliklerine de başvurabiliriz. En azından imla hatalarının önüne geçmemizi kolaylaştıracaktır. Yine de, ikinci ve hatta üçüncü bir gözün söz konusu aday yazıya bakması önemlidir. Hatta bir editör bakışı çok ama çok daha kritiktir.
Ben her yazımı önce Draft olarak kayıt etmeyi tercih ederim. Ertesi gün veya ilk fırsatta tekrar okurum. Bir sürü yazım hatası çıkar ve onları düzeltirim. Yine de yeterli olmaz. Publish ettikten sonra bir kere daha okurum ve yine düzeltme yaparım. Ama yine de yeterli olmaz. Bu nedenle keşke bir editör arkadaşım olsa derim benim için gönüllü olarak çalışacak.
Dil
Teknik paylaşımlarımızın en büyük özelliği de Türkçe olmalarıdır. Ancak mesleğimiz gereği çok fazla yabancı terim kullanmamız icap etmekte. Bazı terimlerin Türkçe karşılıkları çok anlamsız olabilir ki yabancılarda zaten çoğu kez kendi dillerini bozar. O yüzden oldukları gibi bırakabiliriz ama bu durumda Türkçe’mize sahip çıkamama sorunu ile karşılaşırız.
Zaten İngilizce ‘ye giren teknik terimlerin, İngilizce dili için yarattığı sorunlar ortada iken, onları aynen Türkçe’mize sokmak da ne kadar mantıklı olabilir ki. Orta bir yol var mıdır peki? Belki de İngilizce terimi yazıp yanında bir parantez açmak ve içerisine Türkçe ifadesini koymak veya tam tersi şekilde bir ifadeye yer vermek düşünülebilir.
Bir Resim 40 Kelimeye Bedel
Bazen anlatılmak istenen konu çok sıkıcı olabilir. (Genelde de böyledir zaten) Dümdüz metin olarak işlemek her ne kadar bilgiyi sunmak noktasında kafi görünsede bazen bir şekil, bir grafik veya bir fotoğraf, koca bir paragrafı özetlemeye yeterli gelir. Bırakın her ikisi de yazıda olsun.
Pek tabi resim çizmek kolay olmayabilir. Ama bunun için ille de Photoshop bilmenize veya Powerpoint ile taklalar atmanıza gerek yoktur. Kağıt, kalem ve yanınızdan hiç ayırmadığınız yüksek çözünürlükte fotoğraf çekebilen akıllı telefonunuz yeterlidir.
Sürekli klavye başında çalışan ve hatta uzun yıllar içerik üretenlerin yakalandığı hastalıklardan birisi de karakter bozukluklularıdır. Korkmayın. Karakter den kastım el yazısı harflerinden başka bir şey değil. Gerçekten de bu insanların zaman içerisinde el yazıları çok daha kötüleşmektedir. Hatta düzeltmek için ilkokul sıralarına dönüp sağa sola eğik çizgiler ile yeniden yazı yazmayı öğrenmeye başlamak gerekebilir.
Odaklanmak
Teknik bir içerik nerede hazırlanır? Büyük olasılıkla bilgisayar başında. Peki bilgisayar başında geçirdiğimiz zaman diliminde bağlı kaldığımız ortamlar nelerdir?
Şu an bu yazıyı okuyan pek çok okurun tarayıcısında Facebook, Twitter, Linkedin gibi hesaplarının açık olduğuna, Youtube’ dan bir video izlediklerine, aynı zamanda arkada bir kaç dosya indirme işlemini başlattıklarına, posta kutusuna düşen bildirimlere gözucuyla baktıklarına adım gibi eminim. Belki bir PDF kitabı bile açıktır ve ara ara oradan bir kaç cümle okunuyordur. Ha üzgünüm. Müzik dinlediğinizi de ifade etmem gerekir.
Şimdi de bu yazıyı okuyan bir yazar gözüyle olaya bakalım. Ortamın, odağı kaybettirici ve bulanıklaştırıcı unsurlardan arındırılmış olması gerekir. Yazım hızını düşürecek, konuya olan hakimiyeti kaybettirecek ne kadar unsur varsa soyutlanmalıdır. Bu etkenler yazının kalitesini doğrudan etkiler. Mümkünse sessiz bir ortam, günün çok erken saatleri veya gecenin geç vakitleri iş başında olmak yerinde tercihler olabilir. Yanınızda bir fincan kahve veya çay, ya da hoşunuza gidecek bir içecek yer alabilir. Hatta atıştırmalık bir şeyler de. Şimdi bu iş bu kadar ciddiyet mi gerektiryor diyebilirsiniz. Aynen öyle. Teknik yazı yazmak en başından sonuna kadar ciddi disiplin gerektirir.
Ne için Yazdığınızı Unutmayın
Kendimce en önemli maddeyi en sona bıraktım. Bazen kendinizi yazmak zorunda olduğunuz için yazıyor halde bulabilirsiniz. Bunu yaşadığım için rahatlıkla söyleyebilirim. Ancak bu zaman içerisinde ürettiklerinizin kalitesinin düşmesine neden olur. Bunu siz fark etmeseniz de takipçileriniz inanın bana anlar. Sonuçlar pek de hoş olmayabilir.
Pek çoğumuz MVP yenilenme dönemlerinde bazı yazarların daha da bir cevvalleştiklerine şahit oluruz. İşte mesele de tam olarak budur. Son ana sıkıştırılan bu çabanın gayesi bellidir. Evet teknik olarak iyi paylaşımlar çıkar(gerçi acele işe şeytan karışır) ama amaç bir unvanı korumak olmamalıdır.
Bu sebepten bir yazarın henüz işin başında , “ben bunu niye yapayım ki?” sorusuna cevap bulabilmesi gerekmektedir. Bu, benim ilk başta belirttiğim üzere, kendiniz için tuttuğunuz düzenli notların bir paylaşımı olabilir. Bu, üniversite deki öğrenciler için onların anlayacağı dilde basitleştirilmiş teknik içerik üretimi olabilir. Bu, akademik kariyerinizle ilişkili denemelerinizi yayınlamak olabilir. Bu, yazılımcı olması muhtemel çocuğunuz için bırakmak isteyeceğiniz bir vasiyet de olabilir. Bu, … Sonrasını siz kendiniz için doldurun.
Sonuç
Edebi bir eser olmasa da yapılan teknik yazı mutlaka bir sonuca bağlanır. Bir kitaba isim vermek ne kadar zorsa, bir yazının gerek girişini yazmak gerek sonucunu bağlamak da o denli güçtür. Örneğin şu an da yazıyı sonuca nasıl bağlayacağımı bilemediğim gibi.