{"id":931,"date":"2014-05-27T20:03:03","date_gmt":"2014-05-27T17:03:03","guid":{"rendered":"http:\/\/koddit.com\/?p=931"},"modified":"2025-03-29T10:51:25","modified_gmt":"2025-03-29T07:51:25","slug":"joel-testi-12-adimda-yazilim-gelistirme-kalitenizi-olcun","status":"publish","type":"post","link":"https:\/\/blog.koddit.com\/en\/yazilim\/joel-testi-12-adimda-yazilim-gelistirme-kalitenizi-olcun\/","title":{"rendered":"Joel Testi &#8211; 12 Ad\u0131mda Yaz\u0131l\u0131m Geli\u015ftirme Kalitenizi \u00d6l\u00e7\u00fcn!"},"content":{"rendered":"<h2 class=\"wp-block-heading\">Yaz\u0131l\u0131m geli\u015ftirme bi\u00e7iminiz&nbsp;ne kadar kaliteli?<\/h2>\n\n\n\n<p>Yaz\u0131l\u0131m ekibinizin <em>(siz de dahil olmak \u00fczere)<\/em> yaz\u0131l\u0131m geli\u015ftirirken kulland\u0131\u011f\u0131 y\u00f6ntemlerin&nbsp;kalitesini \u00f6l\u00e7mek i\u00e7in pek \u00e7ok y\u00f6ntem&nbsp;var.<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>Peki bu y\u00f6ntemlerden\u00a0hangisi <strong>size uygun<\/strong>?<\/li>\n\n\n\n<li>Se\u00e7ti\u011finiz y\u00f6ntemi uygulayarak sonu\u00e7 alabilecek bir <strong>uzmana sahip misiniz<\/strong>?<\/li>\n\n\n\n<li>T\u00fcm bunlar\u0131 d\u00fc\u015f\u00fcnmek bile i\u00e7inizi mi s\u0131kt\u0131?<\/li>\n<\/ul>\n\n\n\n<p>O halde kolay\u0131 var!<\/p>\n\n\n\n<p>T\u00fcm bunlar\u0131 yaln\u0131zca <em>&lt;g\u00f6receli k\u00fc\u00e7\u00fck bir say\u0131 girin&gt;<\/em> dakikada <strong>Joel Testi<\/strong> ile \u00f6l\u00e7ebilirsiniz!<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">Joel Testi derken?<\/h2>\n\n\n<div class=\"wp-block-image\">\n<figure class=\"alignleft\"><a href=\"https:\/\/blog.koddit.com\/wp-content\/uploads\/2014\/05\/joel.jpg\"><img decoding=\"async\" src=\"https:\/\/blog.koddit.com\/wp-content\/plugins\/wp-images-lazy-loading\/images\/grey.gif\" data-original=\"https:\/\/blog.koddit.com\/wp-content\/uploads\/2014\/05\/joel-150x150.jpg\" alt=\"Joel, testinden d\u00fc\u015f\u00fck puan alan ekiplere g\u00fclerken\" class=\"lazy wp-image-943\"\/><noscript><img loading=\"lazy\" decoding=\"async\" width=\"150\" height=\"150\" src=\"https:\/\/blog.koddit.com\/wp-content\/uploads\/2014\/05\/joel-150x150.jpg\" alt=\"Joel, testinden d\u00fc\u015f\u00fck puan alan ekiplere g\u00fclerken\" class=\"wp-image-943\"\/><\/noscript><\/a><figcaption class=\"wp-element-caption\">Joel, testinden d\u00fc\u015f\u00fck puan alan ekiplere g\u00fclerken<\/figcaption><\/figure><\/div>\n\n\n<p><strong>Joel Testi<\/strong>, isim babas\u0131 olan <strong><a href=\"https:\/\/www.joelonsoftware.com\/\" target=\"_blank\" rel=\"noreferrer noopener\">Joel Spolsky<\/a><\/strong>\u00a0<em>(CEO, Stackexchange)<\/em>\u00a0taraf\u0131ndan, biz \u00fc\u015fenge\u00e7ler i\u00e7in haz\u0131rlanm\u0131\u015f g\u00fczide bir test.<\/p>\n\n\n\n<p>Bu testle, <em>(d\u00fcr\u00fcst olursan\u0131z e\u011fer)<\/em> sadece 12 ad\u0131mda yaz\u0131l\u0131m geli\u015ftirme \u015feklinizin kalitenizi belirlemeniz m\u00fcmk\u00fcn!<\/p>\n\n\n\n<h2 class=\"wp-block-heading\"><\/h2>\n\n\n\n<h2 class=\"wp-block-heading\"><\/h2>\n\n\n\n<p><\/p>\n\n\n\n<p><\/p>\n\n\n\n<h2 class=\"wp-block-heading\">Akl\u0131ma yatt\u0131! Teste ge\u00e7elim madem&#8230;<\/h2>\n\n\n<div class=\"wp-block-image\">\n<figure class=\"alignright\"><a href=\"https:\/\/blog.koddit.com\/wp-content\/uploads\/2014\/05\/joeltest.png\"><img decoding=\"async\" src=\"https:\/\/blog.koddit.com\/wp-content\/plugins\/wp-images-lazy-loading\/images\/grey.gif\" data-original=\"https:\/\/blog.koddit.com\/wp-content\/uploads\/2014\/05\/joeltest-231x300.png\" alt=\"Stackoverflow'da yer alan Careers 2.0 i\u015f ilanlar\u0131nda pek \u00e7ok \u015firket Joel Testi skorlar\u0131n\u0131 payla\u015farak yetenekli\u00a0yaz\u0131l\u0131mc\u0131lar\u0131n dikkatini \u00e7ekmeye \u00e7al\u0131\u015f\u0131yor.\" class=\"lazy wp-image-934\"\/><noscript><img loading=\"lazy\" decoding=\"async\" width=\"231\" height=\"300\" src=\"https:\/\/blog.koddit.com\/wp-content\/uploads\/2014\/05\/joeltest-231x300.png\" alt=\"Stackoverflow'da yer alan Careers 2.0 i\u015f ilanlar\u0131nda pek \u00e7ok \u015firket Joel Testi skorlar\u0131n\u0131 payla\u015farak yetenekli\u00a0yaz\u0131l\u0131mc\u0131lar\u0131n dikkatini \u00e7ekmeye \u00e7al\u0131\u015f\u0131yor.\" class=\"wp-image-934\" srcset=\"https:\/\/blog.koddit.com\/wp-content\/uploads\/2014\/05\/joeltest-231x300.png 231w, https:\/\/blog.koddit.com\/wp-content\/uploads\/2014\/05\/joeltest.png 251w\" sizes=\"(max-width: 231px) 100vw, 231px\" \/><\/noscript><\/a><figcaption class=\"wp-element-caption\">Stackoverflow&#8217;da yer alan Careers 2.0 i\u015f ilanlar\u0131nda pek \u00e7ok \u015firket Joel Testi skorlar\u0131n\u0131 payla\u015farak yetenekli\u00a0yaz\u0131l\u0131mc\u0131lar\u0131n dikkatini \u00e7ekmeye \u00e7al\u0131\u015f\u0131yor.<\/figcaption><\/figure><\/div>\n\n\n<h3 class=\"wp-block-heading\">1. Versiyon kontrol sistemi kullan\u0131yor musunuz?<\/h3>\n\n\n\n<p>Yap\u0131lan hatalar\u0131 geri almak\/\u00f6nceden yap\u0131lan kay\u0131tlar\u0131 kar\u015f\u0131la\u015ft\u0131rmak\/kodunuzu g\u00fcvenceye almak i\u00e7in kulland\u0131\u011f\u0131n\u0131z bir <a href=\"https:\/\/koddit.com\/yazilim\/versiyon-kontrol-sistemi-nedir\/\" target=\"_blank\" rel=\"noreferrer noopener\">versiyon kontrol sistemi<\/a>niz var m\u0131?<\/p>\n\n\n\n<h3 class=\"wp-block-heading\">2. Tek ad\u0131mda uygulaman\u0131z\u0131 derleyebiliyor&nbsp;musunuz?<\/h3>\n\n\n\n<p>Yaz\u0131lm\u0131\u015f <strong>script<\/strong>lerin yard\u0131m\u0131yla, tek bir harekette,&nbsp;kullan\u0131labilir <strong>nihai<\/strong> uygulamay\u0131 <strong>otomatik<\/strong> olarak&nbsp;derleyebiliyor musunuz?<\/p>\n\n\n\n<p>E\u011fer <strong>ad\u0131m say\u0131n\u0131z<\/strong> birden fazlaysa, derleme esnas\u0131nda&nbsp;<strong>hata<\/strong>l\u0131 i\u015flemler yapma olas\u0131l\u0131\u011f\u0131n\u0131z ad\u0131m miktar\u0131 ile do\u011fru orant\u0131l\u0131 art\u0131yor.<\/p>\n\n\n\n<h3 class=\"wp-block-heading\">3. G\u00fcnl\u00fck derleme yap\u0131yor musunuz?<\/h3>\n\n\n\n<p><strong>G\u00fcnl\u00fck<\/strong> (mesai bitimine dakikalar kalacak \u015fekilde olmadan) &nbsp;<strong>derleme<\/strong>ler yap\u0131yor musunuz?<\/p>\n\n\n\n<p>G\u00fcn\u00fcn belirli saatlerinde <strong>otomatik<\/strong> derlemeler ger\u00e7ekle\u015ftirerek&nbsp;derlemede hataya sebep olabilecek bir problemi&nbsp;<em>(check-in yap\u0131lmas\u0131 unutulan bir dosya gibi)&nbsp;<\/em><strong>\u00f6nceden tespit<\/strong> etme yoluna gidiyor musunuz?<\/p>\n\n\n\n<p>Versiyon sistemine yap\u0131lan check-in&#8217;lerin, derleme a\u015famas\u0131n\u0131 \u00f6ng\u00f6r\u00fclemeyen bir hata sebebiyle bozmas\u0131 \u00e7ok y\u00fcksek bir ihtimal. Bu ihtimali en aza indirmenin yolu da bu tarz hatalar\u0131 <strong>erkenden g\u00f6zlemleme<\/strong>kten ge\u00e7iyor.<\/p>\n\n\n\n<h3 class=\"wp-block-heading\">4. Hata veritaban\u0131n\u0131z var m\u0131?<\/h3>\n\n\n<div class=\"wp-block-image\">\n<figure class=\"alignleft\"><a href=\"https:\/\/blog.koddit.com\/wp-content\/uploads\/2014\/05\/jira.png\"><img decoding=\"async\" src=\"https:\/\/blog.koddit.com\/wp-content\/plugins\/wp-images-lazy-loading\/images\/grey.gif\" data-original=\"https:\/\/blog.koddit.com\/wp-content\/uploads\/2014\/05\/jira-300x122.png\" alt=\"JIRA ile hata durum takibi\" class=\"lazy wp-image-954\"\/><noscript><img loading=\"lazy\" decoding=\"async\" width=\"300\" height=\"122\" src=\"https:\/\/blog.koddit.com\/wp-content\/uploads\/2014\/05\/jira-300x122.png\" alt=\"JIRA ile hata durum takibi\" class=\"wp-image-954\" srcset=\"https:\/\/blog.koddit.com\/wp-content\/uploads\/2014\/05\/jira-300x122.png 300w, https:\/\/blog.koddit.com\/wp-content\/uploads\/2014\/05\/jira.png 629w\" sizes=\"(max-width: 300px) 100vw, 300px\" \/><\/noscript><\/a><figcaption class=\"wp-element-caption\">JIRA ile hata durum takibi<\/figcaption><\/figure><\/div>\n\n\n<p>Markete giderken alaca\u011f\u0131m\u0131z \u015feylerin listesini unuttu\u011fumuz bir d\u00fcnyada yaz\u0131l\u0131mda ortaya \u00e7\u0131kan hatalar\u0131 kafam\u0131zda tutabilece\u011fimizi d\u00fc\u015f\u00fcnmek fazla <em>iyimser<\/em> olur. <em>(&#8220;\u0130yimser&#8221; fazla iyimser bir kelime se\u00e7imi oldu)<\/em><\/p>\n\n\n\n<p>Hatan\u0131n&nbsp;olu\u015fma <strong>sebebi<\/strong>ni, <strong>bulgu<\/strong>lar\u0131n\u0131, d\u00fczeltecek <strong>sorumlusu<\/strong>nu, d\u00fczeltilip d\u00fczeltilmedi\u011fini (<strong>stat\u00fcs\u00fc<\/strong>n\u00fc) bildiren bir hata veritaban\u0131 sa\u011fl\u0131kl\u0131 i\u015f ak\u0131\u015f\u0131 beklentisinde olan ekipler i\u00e7in&nbsp;olmazsa olmaz.<\/p>\n\n\n\n<p>Tuzlu <em>(g\u00f6receli)<\/em> ama sa\u011flam bir \u00f6rnek i\u00e7in sizi <a href=\"https:\/\/www.atlassian.com\/software\/jira\" target=\"_blank\" rel=\"noopener\">\u015f\u00f6yle<\/a> alal\u0131m:<\/p>\n\n\n\n<h3 class=\"wp-block-heading\">5. Yeni kod yazmadan \u00f6nce mevcut hatalar\u0131 d\u00fczeltiyor musunuz?<\/h3>\n\n\n\n<p>Yeni bir kod yazmaya ba\u015flamadan \u00f6nce eldeki hatalar\u0131 d\u00fczeltiyor musunuz?<\/p>\n\n\n\n<p>E\u011fer farketti\u011finiz hatalar\u0131 d\u00fczeltmeden yeni kod yazmaya ge\u00e7iyorsan\u0131z hatal\u0131 bir sistemin \u00fczerine yeni hatalara sebep olabilecek bir sistemi in\u015fa ediyorsunuz demektir.<\/p>\n\n\n\n<p>A\u015fina oldu\u011funuz konuya ait olan bir hatay\u0131 hemen d\u00fczeltmeniz, birka\u00e7 hafta sonra d\u00f6n\u00fcp bakt\u0131\u011f\u0131n\u0131zda&nbsp;hat\u0131rlayamayaca\u011f\u0131n\u0131z bir noktaya tekrar odaklanarak vakit kaybetmenizi de engelleyecektir.<\/p>\n\n\n\n<p>Ama\u00e7 hatas\u0131z bir yaz\u0131l\u0131m \u00fcretmekse: <em><strong>Erken<\/strong> hata <strong>giderim<\/strong>i = <strong>d\u00fc\u015f\u00fck<\/strong> <strong>maliyet<\/strong>.<\/em><\/p>\n\n\n\n<h3 class=\"wp-block-heading\">6. S\u00fcrekli g\u00fcncellenen bir zaman \u00e7izelgeniz var m\u0131?<\/h3>\n\n\n\n<p>\u0130\u015flerin ne zaman bitece\u011finin planland\u0131\u011f\u0131, \u00f6nem s\u0131ras\u0131na g\u00f6re aciliyetlerin belirlenebildi\u011fi bir takviminiz\/\u00e7izelgeniz mevcut mu?<\/p>\n\n\n<div class=\"wp-block-image\">\n<figure class=\"alignleft\"><a href=\"https:\/\/blog.koddit.com\/wp-content\/uploads\/2014\/05\/immortality.png\"><img decoding=\"async\" src=\"https:\/\/blog.koddit.com\/wp-content\/plugins\/wp-images-lazy-loading\/images\/grey.gif\" data-original=\"https:\/\/blog.koddit.com\/wp-content\/uploads\/2014\/05\/immortality.png\" alt=\"Jeff Atwood'un \u00f6l\u00fcms\u00fczl\u00fck ihtimali de\u011ferlendirmesi\" class=\"lazy wp-image-942\"\/><noscript><img loading=\"lazy\" decoding=\"async\" width=\"583\" height=\"183\" src=\"https:\/\/blog.koddit.com\/wp-content\/uploads\/2014\/05\/immortality.png\" alt=\"Jeff Atwood'un \u00f6l\u00fcms\u00fczl\u00fck ihtimali de\u011ferlendirmesi\" class=\"wp-image-942\" srcset=\"https:\/\/blog.koddit.com\/wp-content\/uploads\/2014\/05\/immortality.png 583w, https:\/\/blog.koddit.com\/wp-content\/uploads\/2014\/05\/immortality-300x94.png 300w\" sizes=\"(max-width: 583px) 100vw, 583px\" \/><\/noscript><\/a><figcaption class=\"wp-element-caption\">Jeff Atwood&#8217;un \u00f6l\u00fcms\u00fczl\u00fck ihtimali de\u011ferlendirmesi<\/figcaption><\/figure><\/div>\n\n\n<p><\/p>\n\n\n\n<h3 class=\"wp-block-heading\">7.&nbsp;Spec (\u015fartname) kullan\u0131yor musunuz?<\/h3>\n\n\n\n<p>Uygulamaya ait olan geli\u015ftirilecek <strong>\u00f6zelliklerin tan\u0131m\u0131<\/strong>,<strong> yapaca\u011f\u0131 i\u015f<\/strong> ve <strong>davran\u0131\u015f<\/strong>lar\u0131 <strong>a\u00e7\u0131k<\/strong>, <strong>anla\u015f\u0131l\u0131r<\/strong> bi\u00e7imde \u015fartname&nbsp;\u00fczerinden belirleniyor mu?<\/p>\n\n\n\n<p>Yaz\u0131l\u0131m geli\u015ftirilirken \u015fartnameye sad\u0131k kal\u0131n\u0131yor mu? <em>(\u015eartname kelimesi de pek resmi oldu)<\/em><\/p>\n\n\n\n<h3 class=\"wp-block-heading\">8. Programc\u0131lar sessiz bir ortamda m\u0131 \u00e7al\u0131\u015f\u0131yor?<\/h3>\n\n\n\n<p><strong>A\u00e7\u0131k ofis<\/strong> k\u00fclt\u00fcr\u00fcyle beraber kontrol\u00fcm\u00fcz\u00fcn d\u0131\u015f\u0131nda olan fakt\u00f6rlerden (<strong>g\u00fcr\u00fclt\u00fc<\/strong> gibi) dolay\u0131<strong> dikkat da\u011f\u0131n\u0131kl\u0131\u011f\u0131<\/strong>na sebep olabilecek ortamlara maruz kalabiliyoruz.<\/p>\n\n\n<div class=\"wp-block-image\">\n<figure class=\"alignleft\"><a href=\"https:\/\/blog.koddit.com\/wp-content\/uploads\/2014\/05\/isarkadasi.jpg\"><img decoding=\"async\" src=\"https:\/\/blog.koddit.com\/wp-content\/plugins\/wp-images-lazy-loading\/images\/grey.gif\" data-original=\"https:\/\/blog.koddit.com\/wp-content\/uploads\/2014\/05\/isarkadasi.jpg\" alt=\"Yan masadaki arkada\u015f\u0131na \u00e7ocu\u011fundan bahseden bir i\u015f arkada\u015f\u0131 (temsili)\" class=\"lazy wp-image-962\"\/><noscript><img loading=\"lazy\" decoding=\"async\" width=\"270\" height=\"188\" src=\"https:\/\/blog.koddit.com\/wp-content\/uploads\/2014\/05\/isarkadasi.jpg\" alt=\"Yan masadaki arkada\u015f\u0131na \u00e7ocu\u011fundan bahseden bir i\u015f arkada\u015f\u0131 (temsili)\" class=\"wp-image-962\"\/><\/noscript><\/a><figcaption class=\"wp-element-caption\">Yan masadaki arkada\u015f\u0131na \u00e7ocu\u011fundan bahseden bir i\u015f arkada\u015f\u0131 (temsili)<\/figcaption><\/figure><\/div>\n\n\n<p>Yaz\u0131l\u0131m geli\u015ftiricili\u011fi, tam verimli <strong>odaklanma<\/strong>n\u0131n 10-15 dakika s\u00fcrebildi\u011fi ve d\u0131\u015f fakt\u00f6rlerle bu oda\u011f\u0131n kaymas\u0131n\u0131n \u00e7ok kolay oldu\u011fu bir meslek t\u00fcr\u00fc. Hal b\u00f6yle olunca, yaz\u0131l\u0131mc\u0131n\u0131n sakin bir ortamda \u00e7al\u0131\u015fmas\u0131n\u0131 sa\u011flamak \u00f6nem kazan\u0131yor.<\/p>\n\n\n\n<h3 class=\"wp-block-heading\">9. Yap\u0131lan i\u015f i\u00e7in en iyi ara\u00e7lar\u0131 kullan\u0131yor musunuz?<\/h3>\n\n\n\n<p>Kulland\u0131\u011f\u0131n\u0131z <strong>ara\u00e7lar<\/strong>\/sahip oldu\u011funuz <strong>kaynaklar<\/strong> ger\u00e7ekten yapmakta oldu\u011funuz i\u015fi ger\u00e7ekle\u015ftirmek i\u00e7in <strong>en iyi<\/strong> se\u00e7im mi?<em> (Notepad ile kodlama yap\u0131p, MS Paint kullanarak logo d\u00fczenleyen bir insan ak\u0131l sa\u011fl\u0131\u011f\u0131n\u0131 uzun bir s\u00fcre muhafaza edebilir mi?)<\/em><\/p>\n\n\n\n<h3 class=\"wp-block-heading\">10. Test ekibiniz var m\u0131?<\/h3>\n\n\n\n<p>Geli\u015ftirdi\u011finiz uygulamay\u0131 s\u00fcrekli <strong>test<\/strong> etmeye atanm\u0131\u015f bir <strong>ekibi<\/strong>niz var m\u0131? Yaz\u0131l\u0131m\u0131n\u0131z\u0131 ba\u015ftan a\u015fa\u011f\u0131 test eden bir ekibiniz bulunmuyorsa hata dolu bir uygulamaya zemin haz\u0131rl\u0131yorsunuz demektir.<\/p>\n\n\n\n<h3 class=\"wp-block-heading\">11. \u0130\u015f g\u00f6r\u00fc\u015fmelerinde adaylara kod yazd\u0131r\u0131yor musunuz?<\/h3>\n\n\n\n<p>\u0130\u015f g\u00f6r\u00fc\u015fmelerinde adaylara kod yazd\u0131r\u0131rak aday hakk\u0131nda pek \u00e7ok \u015fey \u00f6\u011frenebilirsiniz. Anl\u0131k performansla %100 do\u011fru veriler elde edemeseniz bile, y\u0131llar\u0131n verdi\u011fi <strong>deneyim<\/strong>in etkilerini g\u00f6rebilmeniz,<strong> \u00e7\u00f6z\u00fcm y\u00f6ntemleri<\/strong>ni inceleyebilmeniz pek ala m\u00fcmk\u00fcn.<br>Kaliteli yaz\u0131l\u0131m \u00fcretebilmek i\u00e7in \u00f6nce <strong>yetenekli<\/strong> yaz\u0131l\u0131mc\u0131lar\u0131 bir araya getirmek gerekiyor.<\/p>\n\n\n\n<h3 class=\"wp-block-heading\">12. &#8220;Hallway usability&#8221; testi yap\u0131yor musunuz?<\/h3>\n\n\n\n<p><em>Koridor&#8230; kullan\u0131la&#8230; ne?!<\/em><\/p>\n\n\n\n<p>Basit\u00e7e anlatmak gerekirse: kodunuzu kullanacak insanlara g\u00f6sterip, <strong>kodun kullan\u0131m\u0131<\/strong>yla ilgili bir problem g\u00f6r\u00fcp g\u00f6rmedi\u011fini soruyor musunuz? Birka\u00e7 insan\u0131n fikrini sordu\u011funuzda,&nbsp;kod i\u00e7erisinde <strong>anla\u015f\u0131lmas\u0131 g\u00fc\u00e7 noktalar<\/strong>\u0131n neresi olaca\u011f\u0131n\u0131 kestirmeniz kolayla\u015facakt\u0131r.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">Sonu\u00e7 olarak&#8230;<\/h2>\n\n\n\n<p>Yukar\u0131daki sorulardan ka\u00e7 tanesine &#8220;evet&#8221; dediniz? Joel&#8217;a g\u00f6re 12 m\u00fckemmel, 11 kabul edilebilir, 10 ve alt\u0131 ise problemli bir skor.<\/p>\n\n\n\n<p>Joel&#8217;un testine g\u00f6re, uzun vadede kaliteli yaz\u0131l\u0131m \u00fcretebilmek i\u00e7in <strong>titiz<\/strong> (abartmadan) olmak gerekiyor.<\/p>\n\n\n\n<p>Peki sizin skorunuz ne?<\/p>\n\n\n\n<p><em>Yorumlayarak aktard\u0131\u011f\u0131m &#8220;<strong>The Joel Test: 12 Steps to Better Code<\/strong>&#8221; yaz\u0131s\u0131na\u00a0<a href=\"https:\/\/www.joelonsoftware.com\/articles\/fog0000000043.html\" target=\"_blank\" rel=\"noreferrer noopener\">buradan<\/a> ula\u015fabilirsiniz.<\/em><\/p>","protected":false},"excerpt":{"rendered":"<p>Yaz\u0131l\u0131m geli\u015ftirme bi\u00e7iminiz&nbsp;ne kadar kaliteli? Yaz\u0131l\u0131m ekibinizin (siz de dahil olmak \u00fczere) yaz\u0131l\u0131m geli\u015ftirirken kulland\u0131\u011f\u0131 y\u00f6ntemlerin&nbsp;kalitesini \u00f6l\u00e7mek i\u00e7in pek \u00e7ok y\u00f6ntem&nbsp;var. O halde kolay\u0131 var! T\u00fcm bunlar\u0131 yaln\u0131zca &lt;g\u00f6receli k\u00fc\u00e7\u00fck bir say\u0131 girin&gt; dakikada Joel Testi ile \u00f6l\u00e7ebilirsiniz! Joel Testi derken? Joel Testi, isim babas\u0131 olan Joel Spolsky\u00a0(CEO, Stackexchange)\u00a0taraf\u0131ndan, biz \u00fc\u015fenge\u00e7ler i\u00e7in haz\u0131rlanm\u0131\u015f g\u00fczide bir [&hellip;]<\/p>","protected":false},"author":1,"featured_media":960,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[168],"tags":[],"class_list":["post-931","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-yazilim"],"yoast_head":"<!-- This site is optimized with the Yoast SEO plugin v20.5 - https:\/\/yoast.com\/wordpress\/plugins\/seo\/ -->\n<title>Joel Testi - 12 Ad\u0131mda Yaz\u0131l\u0131m Geli\u015ftirme Kalitenizi \u00d6l\u00e7\u00fcn! - Koddit<\/title>\n<meta name=\"description\" content=\"Joel Testi ile yaz\u0131l\u0131m geli\u015ftirme bi\u00e7iminizin kalitesini \u00f6l\u00e7ebilirsiniz. Hem de yaln\u0131zca 12 ad\u0131mda!\" \/>\n<meta name=\"robots\" content=\"index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1\" \/>\n<link rel=\"canonical\" href=\"https:\/\/blog.koddit.com\/en\/yazilim\/joel-testi-12-adimda-yazilim-gelistirme-kalitenizi-olcun\/\" \/>\n<meta property=\"og:locale\" content=\"en_US\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"Joel Testi - 12 Ad\u0131mda Yaz\u0131l\u0131m Geli\u015ftirme Kalitenizi \u00d6l\u00e7\u00fcn! - Koddit\" \/>\n<meta property=\"og:description\" content=\"Joel Testi ile yaz\u0131l\u0131m geli\u015ftirme bi\u00e7iminizin kalitesini \u00f6l\u00e7ebilirsiniz. Hem de yaln\u0131zca 12 ad\u0131mda!\" \/>\n<meta property=\"og:url\" content=\"https:\/\/blog.koddit.com\/en\/yazilim\/joel-testi-12-adimda-yazilim-gelistirme-kalitenizi-olcun\/\" \/>\n<meta property=\"og:site_name\" content=\"Koddit\" \/>\n<meta property=\"article:author\" content=\"https:\/\/www.facebook.com\/r.caner.oncu\" \/>\n<meta property=\"article:published_time\" content=\"2014-05-27T17:03:03+00:00\" \/>\n<meta property=\"article:modified_time\" content=\"2025-03-29T07:51:25+00:00\" \/>\n<meta property=\"og:image\" content=\"http:\/\/blog.koddit.com\/wp-content\/uploads\/2014\/05\/checklist.jpg\" \/>\n\t<meta property=\"og:image:width\" content=\"600\" \/>\n\t<meta property=\"og:image:height\" content=\"315\" \/>\n\t<meta property=\"og:image:type\" content=\"image\/jpeg\" \/>\n<meta name=\"author\" content=\"Caner \u00d6nc\u00fc\" \/>\n<meta name=\"twitter:card\" content=\"summary_large_image\" \/>\n<meta name=\"twitter:creator\" content=\"@caneroncu\" \/>\n<meta name=\"twitter:label1\" content=\"Written by\" \/>\n\t<meta name=\"twitter:data1\" content=\"Caner \u00d6nc\u00fc\" \/>\n\t<meta name=\"twitter:label2\" content=\"Est. reading time\" \/>\n\t<meta name=\"twitter:data2\" content=\"6 minutes\" \/>\n<script type=\"application\/ld+json\" class=\"yoast-schema-graph\">{\"@context\":\"https:\/\/schema.org\",\"@graph\":[{\"@type\":\"Article\",\"@id\":\"https:\/\/blog.koddit.com\/yazilim\/joel-testi-12-adimda-yazilim-gelistirme-kalitenizi-olcun\/#article\",\"isPartOf\":{\"@id\":\"https:\/\/blog.koddit.com\/yazilim\/joel-testi-12-adimda-yazilim-gelistirme-kalitenizi-olcun\/\"},\"author\":{\"name\":\"Caner \u00d6nc\u00fc\",\"@id\":\"https:\/\/blog.koddit.com\/#\/schema\/person\/475b7f34a5b2ec63447d0f5735829ff9\"},\"headline\":\"Joel Testi &#8211; 12 Ad\u0131mda Yaz\u0131l\u0131m Geli\u015ftirme Kalitenizi \u00d6l\u00e7\u00fcn!\",\"datePublished\":\"2014-05-27T17:03:03+00:00\",\"dateModified\":\"2025-03-29T07:51:25+00:00\",\"mainEntityOfPage\":{\"@id\":\"https:\/\/blog.koddit.com\/yazilim\/joel-testi-12-adimda-yazilim-gelistirme-kalitenizi-olcun\/\"},\"wordCount\":1049,\"commentCount\":1,\"publisher\":{\"@id\":\"https:\/\/blog.koddit.com\/#organization\"},\"articleSection\":[\"Yaz\u0131l\u0131m\"],\"inLanguage\":\"en-US\",\"potentialAction\":[{\"@type\":\"CommentAction\",\"name\":\"Comment\",\"target\":[\"https:\/\/blog.koddit.com\/yazilim\/joel-testi-12-adimda-yazilim-gelistirme-kalitenizi-olcun\/#respond\"]}]},{\"@type\":\"WebPage\",\"@id\":\"https:\/\/blog.koddit.com\/yazilim\/joel-testi-12-adimda-yazilim-gelistirme-kalitenizi-olcun\/\",\"url\":\"https:\/\/blog.koddit.com\/yazilim\/joel-testi-12-adimda-yazilim-gelistirme-kalitenizi-olcun\/\",\"name\":\"Joel Testi - 12 Ad\u0131mda Yaz\u0131l\u0131m Geli\u015ftirme Kalitenizi \u00d6l\u00e7\u00fcn! - Koddit\",\"isPartOf\":{\"@id\":\"https:\/\/blog.koddit.com\/#website\"},\"datePublished\":\"2014-05-27T17:03:03+00:00\",\"dateModified\":\"2025-03-29T07:51:25+00:00\",\"description\":\"Joel Testi ile yaz\u0131l\u0131m geli\u015ftirme bi\u00e7iminizin kalitesini \u00f6l\u00e7ebilirsiniz. Hem de yaln\u0131zca 12 ad\u0131mda!\",\"breadcrumb\":{\"@id\":\"https:\/\/blog.koddit.com\/yazilim\/joel-testi-12-adimda-yazilim-gelistirme-kalitenizi-olcun\/#breadcrumb\"},\"inLanguage\":\"en-US\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\/\/blog.koddit.com\/yazilim\/joel-testi-12-adimda-yazilim-gelistirme-kalitenizi-olcun\/\"]}]},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\/\/blog.koddit.com\/yazilim\/joel-testi-12-adimda-yazilim-gelistirme-kalitenizi-olcun\/#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Anasayfa\",\"item\":\"https:\/\/blog.koddit.com\/\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"Joel Testi &#8211; 12 Ad\u0131mda Yaz\u0131l\u0131m Geli\u015ftirme Kalitenizi \u00d6l\u00e7\u00fcn!\"}]},{\"@type\":\"WebSite\",\"@id\":\"https:\/\/blog.koddit.com\/#website\",\"url\":\"https:\/\/blog.koddit.com\/\",\"name\":\"Koddit\",\"description\":\"Blog\",\"publisher\":{\"@id\":\"https:\/\/blog.koddit.com\/#organization\"},\"potentialAction\":[{\"@type\":\"SearchAction\",\"target\":{\"@type\":\"EntryPoint\",\"urlTemplate\":\"https:\/\/blog.koddit.com\/?s={search_term_string}\"},\"query-input\":\"required name=search_term_string\"}],\"inLanguage\":\"en-US\"},{\"@type\":\"Organization\",\"@id\":\"https:\/\/blog.koddit.com\/#organization\",\"name\":\"Koddit\",\"url\":\"https:\/\/blog.koddit.com\/\",\"logo\":{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\/\/blog.koddit.com\/#\/schema\/logo\/image\/\",\"url\":\"https:\/\/blog.koddit.com\/wp-content\/uploads\/2023\/04\/koddit-logo.png\",\"contentUrl\":\"https:\/\/blog.koddit.com\/wp-content\/uploads\/2023\/04\/koddit-logo.png\",\"width\":\"176\",\"height\":\"65\",\"caption\":\"Koddit\"},\"image\":{\"@id\":\"https:\/\/blog.koddit.com\/#\/schema\/logo\/image\/\"}},{\"@type\":\"Person\",\"@id\":\"https:\/\/blog.koddit.com\/#\/schema\/person\/475b7f34a5b2ec63447d0f5735829ff9\",\"name\":\"Caner \u00d6nc\u00fc\",\"image\":{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\/\/blog.koddit.com\/#\/schema\/person\/image\/\",\"url\":\"https:\/\/secure.gravatar.com\/avatar\/0e4ad628f2a21b0fb77e910ee24545b7?s=96&d=mm&r=g\",\"contentUrl\":\"https:\/\/secure.gravatar.com\/avatar\/0e4ad628f2a21b0fb77e910ee24545b7?s=96&d=mm&r=g\",\"caption\":\"Caner \u00d6nc\u00fc\"},\"sameAs\":[\"https:\/\/blog.koddit.com\",\"https:\/\/www.facebook.com\/r.caner.oncu\",\"https:\/\/twitter.com\/caneroncu\"],\"url\":\"https:\/\/blog.koddit.com\/en\/author\/caner\/\"}]}<\/script>\n<!-- \/ Yoast SEO plugin. -->","yoast_head_json":{"title":"Joel Testi - 12 Ad\u0131mda Yaz\u0131l\u0131m Geli\u015ftirme Kalitenizi \u00d6l\u00e7\u00fcn! - Koddit","description":"Joel Testi ile yaz\u0131l\u0131m geli\u015ftirme bi\u00e7iminizin kalitesini \u00f6l\u00e7ebilirsiniz. Hem de yaln\u0131zca 12 ad\u0131mda!","robots":{"index":"index","follow":"follow","max-snippet":"max-snippet:-1","max-image-preview":"max-image-preview:large","max-video-preview":"max-video-preview:-1"},"canonical":"https:\/\/blog.koddit.com\/en\/yazilim\/joel-testi-12-adimda-yazilim-gelistirme-kalitenizi-olcun\/","og_locale":"en_US","og_type":"article","og_title":"Joel Testi - 12 Ad\u0131mda Yaz\u0131l\u0131m Geli\u015ftirme Kalitenizi \u00d6l\u00e7\u00fcn! - Koddit","og_description":"Joel Testi ile yaz\u0131l\u0131m geli\u015ftirme bi\u00e7iminizin kalitesini \u00f6l\u00e7ebilirsiniz. Hem de yaln\u0131zca 12 ad\u0131mda!","og_url":"https:\/\/blog.koddit.com\/en\/yazilim\/joel-testi-12-adimda-yazilim-gelistirme-kalitenizi-olcun\/","og_site_name":"Koddit","article_author":"https:\/\/www.facebook.com\/r.caner.oncu","article_published_time":"2014-05-27T17:03:03+00:00","article_modified_time":"2025-03-29T07:51:25+00:00","og_image":[{"width":600,"height":315,"url":"http:\/\/blog.koddit.com\/wp-content\/uploads\/2014\/05\/checklist.jpg","type":"image\/jpeg"}],"author":"Caner \u00d6nc\u00fc","twitter_card":"summary_large_image","twitter_creator":"@caneroncu","twitter_misc":{"Written by":"Caner \u00d6nc\u00fc","Est. reading time":"6 minutes"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"Article","@id":"https:\/\/blog.koddit.com\/yazilim\/joel-testi-12-adimda-yazilim-gelistirme-kalitenizi-olcun\/#article","isPartOf":{"@id":"https:\/\/blog.koddit.com\/yazilim\/joel-testi-12-adimda-yazilim-gelistirme-kalitenizi-olcun\/"},"author":{"name":"Caner \u00d6nc\u00fc","@id":"https:\/\/blog.koddit.com\/#\/schema\/person\/475b7f34a5b2ec63447d0f5735829ff9"},"headline":"Joel Testi &#8211; 12 Ad\u0131mda Yaz\u0131l\u0131m Geli\u015ftirme Kalitenizi \u00d6l\u00e7\u00fcn!","datePublished":"2014-05-27T17:03:03+00:00","dateModified":"2025-03-29T07:51:25+00:00","mainEntityOfPage":{"@id":"https:\/\/blog.koddit.com\/yazilim\/joel-testi-12-adimda-yazilim-gelistirme-kalitenizi-olcun\/"},"wordCount":1049,"commentCount":1,"publisher":{"@id":"https:\/\/blog.koddit.com\/#organization"},"articleSection":["Yaz\u0131l\u0131m"],"inLanguage":"en-US","potentialAction":[{"@type":"CommentAction","name":"Comment","target":["https:\/\/blog.koddit.com\/yazilim\/joel-testi-12-adimda-yazilim-gelistirme-kalitenizi-olcun\/#respond"]}]},{"@type":"WebPage","@id":"https:\/\/blog.koddit.com\/yazilim\/joel-testi-12-adimda-yazilim-gelistirme-kalitenizi-olcun\/","url":"https:\/\/blog.koddit.com\/yazilim\/joel-testi-12-adimda-yazilim-gelistirme-kalitenizi-olcun\/","name":"Joel Testi - 12 Ad\u0131mda Yaz\u0131l\u0131m Geli\u015ftirme Kalitenizi \u00d6l\u00e7\u00fcn! - Koddit","isPartOf":{"@id":"https:\/\/blog.koddit.com\/#website"},"datePublished":"2014-05-27T17:03:03+00:00","dateModified":"2025-03-29T07:51:25+00:00","description":"Joel Testi ile yaz\u0131l\u0131m geli\u015ftirme bi\u00e7iminizin kalitesini \u00f6l\u00e7ebilirsiniz. Hem de yaln\u0131zca 12 ad\u0131mda!","breadcrumb":{"@id":"https:\/\/blog.koddit.com\/yazilim\/joel-testi-12-adimda-yazilim-gelistirme-kalitenizi-olcun\/#breadcrumb"},"inLanguage":"en-US","potentialAction":[{"@type":"ReadAction","target":["https:\/\/blog.koddit.com\/yazilim\/joel-testi-12-adimda-yazilim-gelistirme-kalitenizi-olcun\/"]}]},{"@type":"BreadcrumbList","@id":"https:\/\/blog.koddit.com\/yazilim\/joel-testi-12-adimda-yazilim-gelistirme-kalitenizi-olcun\/#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Anasayfa","item":"https:\/\/blog.koddit.com\/"},{"@type":"ListItem","position":2,"name":"Joel Testi &#8211; 12 Ad\u0131mda Yaz\u0131l\u0131m Geli\u015ftirme Kalitenizi \u00d6l\u00e7\u00fcn!"}]},{"@type":"WebSite","@id":"https:\/\/blog.koddit.com\/#website","url":"https:\/\/blog.koddit.com\/","name":"Koddit","description":"Blog","publisher":{"@id":"https:\/\/blog.koddit.com\/#organization"},"potentialAction":[{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https:\/\/blog.koddit.com\/?s={search_term_string}"},"query-input":"required name=search_term_string"}],"inLanguage":"en-US"},{"@type":"Organization","@id":"https:\/\/blog.koddit.com\/#organization","name":"Koddit","url":"https:\/\/blog.koddit.com\/","logo":{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/blog.koddit.com\/#\/schema\/logo\/image\/","url":"https:\/\/blog.koddit.com\/wp-content\/uploads\/2023\/04\/koddit-logo.png","contentUrl":"https:\/\/blog.koddit.com\/wp-content\/uploads\/2023\/04\/koddit-logo.png","width":"176","height":"65","caption":"Koddit"},"image":{"@id":"https:\/\/blog.koddit.com\/#\/schema\/logo\/image\/"}},{"@type":"Person","@id":"https:\/\/blog.koddit.com\/#\/schema\/person\/475b7f34a5b2ec63447d0f5735829ff9","name":"Caner \u00d6nc\u00fc","image":{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/blog.koddit.com\/#\/schema\/person\/image\/","url":"https:\/\/secure.gravatar.com\/avatar\/0e4ad628f2a21b0fb77e910ee24545b7?s=96&d=mm&r=g","contentUrl":"https:\/\/secure.gravatar.com\/avatar\/0e4ad628f2a21b0fb77e910ee24545b7?s=96&d=mm&r=g","caption":"Caner \u00d6nc\u00fc"},"sameAs":["https:\/\/blog.koddit.com","https:\/\/www.facebook.com\/r.caner.oncu","https:\/\/twitter.com\/caneroncu"],"url":"https:\/\/blog.koddit.com\/en\/author\/caner\/"}]}},"_links":{"self":[{"href":"https:\/\/blog.koddit.com\/en\/wp-json\/wp\/v2\/posts\/931"}],"collection":[{"href":"https:\/\/blog.koddit.com\/en\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/blog.koddit.com\/en\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/blog.koddit.com\/en\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/blog.koddit.com\/en\/wp-json\/wp\/v2\/comments?post=931"}],"version-history":[{"count":1,"href":"https:\/\/blog.koddit.com\/en\/wp-json\/wp\/v2\/posts\/931\/revisions"}],"predecessor-version":[{"id":3736,"href":"https:\/\/blog.koddit.com\/en\/wp-json\/wp\/v2\/posts\/931\/revisions\/3736"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/blog.koddit.com\/en\/wp-json\/wp\/v2\/media\/960"}],"wp:attachment":[{"href":"https:\/\/blog.koddit.com\/en\/wp-json\/wp\/v2\/media?parent=931"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/blog.koddit.com\/en\/wp-json\/wp\/v2\/categories?post=931"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/blog.koddit.com\/en\/wp-json\/wp\/v2\/tags?post=931"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}