Programlamaya meraklılar okusun...

Olszer

Üye
8 Ocak 2013
125
0
İstanbul
Programcılara öğütler...

Bu forumdaki "yeni programım", "şöyle programım", "böyle programım" tarzı başlıkları görmekten gurur duyuyor, ancak bir yandan da tiksiniyorum. İnsanların programlamayla ilgilendiğini görmek cidden muhteşem bir şey ve kimsenin hevesini kırmak istemiyorum. Ancak bazı insanların, programcılığın getirdiği sorumlulukları kabul etmesi gerektiğini düşünüyorum.

CD Rom aç-kapa
Bas Bakalım(Çok saçma hiç açmasanız da olur)
Araba Yarışı
Bilgisayarı kapatan V1.0
4 işlem oyunu beta

vb. Programının ismini paylaştığım arkadaşlar lütfen yalnızca size hitap ettiğimi sanmayın lütfen, yanlış anlaşılmak istemem. Ancak dikkat edilmesi gereken birkaç nokta var ve bunları hep beraber okursanız, belki ileriye dönük bir programcılık hayatınız olabilir. Böyle bir durumda hem siz, hem ben mutlu olurum, çünkü Türkiye'nin programcılara ihtiyacı var.

Öncelikle, insanların Freehand, Google Chrome, Audacity, GTA Vice City tarzı programları indirmesinin sebebi talep. Programlarınızın indirilmemesinin sebebi de talep. Kimse, bilgisayarı kapatmak için veya 4 işlem oyunu oynamak için 2 MB'lik rar dosyaları indirip klasörlerini kirletmez. İnsanlar programlarınızı indirmiyor diye üzülmeyin, çünkü bir gün, geleceğin programını siz yazabilirsiniz. O program, insanların hayatlarının birer parçası olduğunda, o programa karşı deli gibi bir talep olduğunda, o zaman kaç kişinin indirdiği önemli olmayacak zaten.

İkincisi, programlarınızın çoğu, yalnızca bir adet ".vb" dosyasından oluşuyor ve bütün kod yalnızca bir klasörde tutuluyor. Kod, en fazla 2 dosyada yer alıyor ve iki dosyada toplam en fazla.. 300 satır kod var diyelim. Bu programları büyük ihtimalle buraya paylaştığınız günden itibaren ellemeyeceksiniz bile. O programlar, orada, sizin "Projeler" klasörünüzün altında bir biblo gibi kalacak, ve 30 yıl sonra, ihtiyarladığınızda, yeni evinize taşınırken yanınıza almak istemeyeceğiniz küçük eşyalar olarak kalacak. "Hatırası var", diyebilirsiniz; ama aslında o programı o kadar sevmiyorsunuz. Bırakın program uçsun gitsin. İndiren zaten indirdi. 2 sayfa kod, Google'dan araştırma yapa yapa yazmaya kalkışsanız en fazla 20 dakikada bütün projeyi tamamlarsınız. İşte böyle bir program yazıyorsanız, bkz. "Bilgisayarı Kapatan", bkz. "4 İşlem Oyunu Beta", programlarınıza versiyon numarası vermeyin. İkinci versiyon gelmeyecek. Diyelim ki geldi, orada kalacak.

Ben sırf eleştiri olsun diye yazmıyorum bu yazıyı, bu arada. Versiyon numaralandırması ELBETTE gerekli bir şey. Ancak doğru yapıldığı zaman. Küçükken, herhangi bir şey yaptığımda, Versiyon 1, Versiyon 1.1, Versiyon 1.1.1 tarzı şeyler kullanarak, ilkokuldaki arkadaşlarımın tabiriyle "inek" gibi takılırdım. Ancak hoş bir şey. Kendi eserinize bir versiyon numarası vermek, bir projenin ardından bütün yorgunluğu atıp, nihayet meyvesini yemenin vaktinin geldiğine olan ispattır. O zaman versiyon numaralandırması nasıl yapılır? Bunu öğrenmelisiniz. Herkesin farklı bakış açısı vardır bu olaya, ancak kabul gören sistem birazdan anlatacağım sistemdir. Bilgisayarımda "git" diye bir program var, ve bu programın an itibariyle versiyon numarası:

git version 1.8.1.1

Burada, sağdan sola teker teker bütün rakamların anlamlarını inceleyeceğim. En sağdaki "1", EN küçük detaylar. Yazım hataları, küçük buglar, vb. detaylardır. Bu versiyonlar, haftada bir çıkar. 1.8.1.1 versiyonu 11 GÜN önce çıktı, düşünün yani. Siz bu yazıyı okurken, 1.8.2 veya 1.8.1.2 versiyonun çıkması öngörülebilir.

Sağdan ikinci, "1" ise minör versiyondur. Küçük özellikler, ne bileyim, Minecraft'ı örnek alırsak mesela, en sağdaki sayının değişmesi benim için ne anlama gelir? Elmanın verdiği can değişmiş olabilir? Sandıklara animasyon gelmiş olabilir?

Soldan ikinci, "8", versiyondur. Yani, git 1.0.0.0'dan sonraki SEKİZİNCİ git olarak düşünebilirsiniz. Büyük özellikler, devrimler, dizayn değişiklikleri, vb. bu kategoriye girer.

En soldaki, "1" ise, majör versiyondur. Yani, CİDDİ değişiklikler burada yer alır. İşte bu yüzden, 15 yıldır kullandığımız program "git" hala birinci majör versiyonda. Henüz devasa bir uçurum yaşanmadı ama şöyle düşünebilirsiniz. Windows 7 ile 8 arasında ne kadar büyük bir fark vardı?


Üçüncü dikkat etmeniz gereken şey ise, kullanışlı programlar yapmanız. Programın ismini; "Bas Bakalım(Çok saçma hiç açmasanız da olur)" yaparsan, açmam. Önce, programın kullanışlı olduğuna kendin inanmalısın, ve sonra programı kendin kullanmalısın. Eğer programı bizimle paylaşmaya değer görüyorsan, paylaşırsın ve biz de sana teşekkür ederiz! Yeni başladığınız için direk "Bas Bakalım" tarzı projeler yapmak zorunda değilsiniz. Programcı dünyasında size destek olmak için can atan binlerce insan var. Siz yeter ki istekli olun ve insanların kullanacağı bir şey üretmek için çalışın. Önce plan yapın, sonra üretin. Proje yönetimini size öğretemem, ama bu konu hakkında çok güzel kitaplar var. Plan yapmalısınız.

Son madde: açık kaynak kodlu projeler üretin. Programcılıkta milyon yıl geçse de değişmeyecek gerçek şudur: kimsenin, senin yaptığın herhangi programın kaynak kodunu çalıp kendi programını yapmaya hakkı yoktur. Böyle bir şey yaparsa, programına açık açık, "Bu program, Falanca tarafından yazılan Filanca Programının kaynak kodlarından bir parça kullanmaktadır." Sizin programlarınız, istediğiniz her türlü lisansla korunabilir ve PARA ÖDEMENİZE GEREK YOK. GPL v3, v2 lisansları, BSD lisansları, MIT lisansları sizin hakkınızı korumak için buradalar. Kimse emeğinizi çalamaz, çalanlar fikir hırsızlığından dolayı suçlanır. Emin ellerdesiniz.

Ha, ayrı bir detay da var: sen yeni nesil bir işletim sistemi de hazırlasan, "bas bakalım" da hazırlasan, "4 işlem oyunu" da hazırlasan farketmeyecek. Kimse, senin programının kodunu merak etmiyor. Açık kaynak kod demek, bu demek değildir.

Açık kaynak kod demek, demin altını çizdiğim kalın ve kırmızı yazıdan ibarettir: Programcı dünyasında size destek olmak için can atan binlerce insan var.

Kodu kapattığınız sürece, programcılar da sizle olan muhabbetlerini kapatırlar. "CD aç/kapa" programının yazılma hikayesinin ardında eminim ki, bir Google'dan araştırma seansı yer almakta. Eğer, sen, Google'a

"visual basic cd insert eject"

yazıp, adam akıllı sonuçlar alabiliyorsan, tamamını açık kaynak koda borçlusun. StackOverflow, LearnProgramming tarzı topluluklarda insanlar sana BU yüzden yardımcı olabiliyorlar. Binlerce kişi, senin sorunlarını çözmek için bir araya geliyor ve gerektiğinde adam sana 20 satırlık örnek yazıp veriyor, KULLAN diye. O adam, hiç soruyor mu sence? "Kullan ama ismimi yaz. Kullan ama benim reklamımı yap." diye? Hayır. Adam, kodu sana teslim ediyor, ve unutup gidiyor. Kod, sandığından daha önemsiz bir şey. Önemli olan insani değerlerin korunması ve fikirlerin özgürce ifade edilebilmesi. Bu yüzden sen, kodunu paylaşmayarak bencilliğini sergilemiş oluyorsun.

Ayrıca eminim ki programcılığa yeni başlamış olan arkadaşlarım da vardır ve onlara da desteğimi şöyle bildirmek isterim: kodlarınızı açın, ki sizin gibi, yeni başlayanlar okuyup kendileri bir şey üretsinler. Veya tecrübeli insanlar kodunuzu okuyup, hatalarınızı ve düzeltmeniz gereken yerleri gösterip size yardımcı olsunlar. Bunu yapın.
 
Son düzenleme:

rApFapriK

Yeni üye
11 Şub 2013
6
0
güzel yazmışın eline saglık dedigin gerçeken çok dogru onemli olan kodu yazmak degil ,önemli olan fikir de diyebiliriz :D
 

hackmix

Yeni üye
31 Ağu 2006
11
0
bilinçli ve bilgili birisinin yazdığı belli ellerine sağlık hocam programlamaya yeni başladım ve de tavsiyelerini dikkate alacağım
 

HatayLe

Yeni üye
10 Nis 2013
48
0
Yurtdışı
Çok saol hocam arkadaşların dediği gibi bilgili birisin bence. Çok haklısın adam spammer botu yapıyo kaynak kodunu vermiyo verse geliştirecez düşman değiliz yani onunda adını yazarım programa ama yok. Bende mecbur olarak googleden ingiliz sitelerinden alıyom kodu ve ilk programım. Gerçekten cimri olmamak lazım insanlarla bişeyi paylaşmak lazım ilk programımı bile spammer yaptım ve googleden buldum kodları düzenledim düşün artık.
 
18 Ocak 2013
70
0
Bu forumdaki "yeni programım", "şöyle programım", "böyle programım" tarzı başlıkları görmekten gurur duyuyor, ancak bir yandan da tiksiniyorum. İnsanların programlamayla ilgilendiğini görmek cidden muhteşem bir şey ve kimsenin hevesini kırmak istemiyorum. Ancak bazı insanların, programcılığın getirdiği sorumlulukları kabul etmesi gerektiğini düşünüyorum.

CD Rom aç-kapa
Bas Bakalım(Çok saçma hiç açmasanız da olur)
Araba Yarışı
Bilgisayarı kapatan V1.0
4 işlem oyunu beta

vb. Programının ismini paylaştığım arkadaşlar lütfen yalnızca size hitap ettiğimi sanmayın lütfen, yanlış anlaşılmak istemem. Ancak dikkat edilmesi gereken birkaç nokta var ve bunları hep beraber okursanız, belki ileriye dönük bir programcılık hayatınız olabilir. Böyle bir durumda hem siz, hem ben mutlu olurum, çünkü Türkiye'nin programcılara ihtiyacı var.

Öncelikle, insanların Freehand, Google Chrome, Audacity, GTA Vice City tarzı programları indirmesinin sebebi talep. Programlarınızın indirilmemesinin sebebi de talep. Kimse, bilgisayarı kapatmak için veya 4 işlem oyunu oynamak için 2 MB'lik rar dosyaları indirip klasörlerini kirletmez. İnsanlar programlarınızı indirmiyor diye üzülmeyin, çünkü bir gün, geleceğin programını siz yazabilirsiniz. O program, insanların hayatlarının birer parçası olduğunda, o programa karşı deli gibi bir talep olduğunda, o zaman kaç kişinin indirdiği önemli olmayacak zaten.

İkincisi, programlarınızın çoğu, yalnızca bir adet ".vb" dosyasından oluşuyor ve bütün kod yalnızca bir klasörde tutuluyor. Kod, en fazla 2 dosyada yer alıyor ve iki dosyada toplam en fazla.. 300 satır kod var diyelim. Bu programları büyük ihtimalle buraya paylaştığınız günden itibaren ellemeyeceksiniz bile. O programlar, orada, sizin "Projeler" klasörünüzün altında bir biblo gibi kalacak, ve 30 yıl sonra, ihtiyarladığınızda, yeni evinize taşınırken yanınıza almak istemeyeceğiniz küçük eşyalar olarak kalacak. "Hatırası var", diyebilirsiniz; ama aslında o programı o kadar sevmiyorsunuz. Bırakın program uçsun gitsin. İndiren zaten indirdi. 2 sayfa kod, Google'dan araştırma yapa yapa yazmaya kalkışsanız en fazla 20 dakikada bütün projeyi tamamlarsınız. İşte böyle bir program yazıyorsanız, bkz. "Bilgisayarı Kapatan", bkz. "4 İşlem Oyunu Beta", programlarınıza versiyon numarası vermeyin. İkinci versiyon gelmeyecek. Diyelim ki geldi, orada kalacak.

Ben sırf eleştiri olsun diye yazmıyorum bu yazıyı, bu arada. Versiyon numaralandırması ELBETTE gerekli bir şey. Ancak doğru yapıldığı zaman. Küçükken, herhangi bir şey yaptığımda, Versiyon 1, Versiyon 1.1, Versiyon 1.1.1 tarzı şeyler kullanarak, ilkokuldaki arkadaşlarımın tabiriyle "inek" gibi takılırdım. Ancak hoş bir şey. Kendi eserinize bir versiyon numarası vermek, bir projenin ardından bütün yorgunluğu atıp, nihayet meyvesini yemenin vaktinin geldiğine olan ispattır. O zaman versiyon numaralandırması nasıl yapılır? Bunu öğrenmelisiniz. Herkesin farklı bakış açısı vardır bu olaya, ancak kabul gören sistem birazdan anlatacağım sistemdir. Bilgisayarımda "git" diye bir program var, ve bu programın an itibariyle versiyon numarası:

git version 1.8.1.1

Burada, sağdan sola teker teker bütün rakamların anlamlarını inceleyeceğim. En sağdaki "1", EN küçük detaylar. Yazım hataları, küçük buglar, vb. detaylardır. Bu versiyonlar, haftada bir çıkar. 1.8.1.1 versiyonu 11 GÜN önce çıktı, düşünün yani. Siz bu yazıyı okurken, 1.8.2 veya 1.8.1.2 versiyonun çıkması öngörülebilir.

Sağdan ikinci, "1" ise minör versiyondur. Küçük özellikler, ne bileyim, Minecraft'ı örnek alırsak mesela, en sağdaki sayının değişmesi benim için ne anlama gelir? Elmanın verdiği can değişmiş olabilir? Sandıklara animasyon gelmiş olabilir?

Soldan ikinci, "8", versiyondur. Yani, git 1.0.0.0'dan sonraki SEKİZİNCİ git olarak düşünebilirsiniz. Büyük özellikler, devrimler, dizayn değişiklikleri, vb. bu kategoriye girer.

En soldaki, "1" ise, majör versiyondur. Yani, CİDDİ değişiklikler burada yer alır. İşte bu yüzden, 15 yıldır kullandığımız program "git" hala birinci majör versiyonda. Henüz devasa bir uçurum yaşanmadı ama şöyle düşünebilirsiniz. Windows 7 ile 8 arasında ne kadar büyük bir fark vardı?


Üçüncü dikkat etmeniz gereken şey ise, kullanışlı programlar yapmanız. Programın ismini; "Bas Bakalım(Çok saçma hiç açmasanız da olur)" yaparsan, açmam. Önce, programın kullanışlı olduğuna kendin inanmalısın, ve sonra programı kendin kullanmalısın. Eğer programı bizimle paylaşmaya değer görüyorsan, paylaşırsın ve biz de sana teşekkür ederiz! Yeni başladığınız için direk "Bas Bakalım" tarzı projeler yapmak zorunda değilsiniz. Programcı dünyasında size destek olmak için can atan binlerce insan var. Siz yeter ki istekli olun ve insanların kullanacağı bir şey üretmek için çalışın. Önce plan yapın, sonra üretin. Proje yönetimini size öğretemem, ama bu konu hakkında çok güzel kitaplar var. Plan yapmalısınız.

Son madde: açık kaynak kodlu projeler üretin. Programcılıkta milyon yıl geçse de değişmeyecek gerçek şudur: kimsenin, senin yaptığın herhangi programın kaynak kodunu çalıp kendi programını yapmaya hakkı yoktur. Böyle bir şey yaparsa, programına açık açık, "Bu program, Falanca tarafından yazılan Filanca Programının kaynak kodlarından bir parça kullanmaktadır." Sizin programlarınız, istediğiniz her türlü lisansla korunabilir ve PARA ÖDEMENİZE GEREK YOK. GPL v3, v2 lisansları, BSD lisansları, MIT lisansları sizin hakkınızı korumak için buradalar. Kimse emeğinizi çalamaz, çalanlar fikir hırsızlığından dolayı suçlanır. Emin ellerdesiniz.

Ha, ayrı bir detay da var: sen yeni nesil bir işletim sistemi de hazırlasan, "bas bakalım" da hazırlasan, "4 işlem oyunu" da hazırlasan farketmeyecek. Kimse, senin programının kodunu merak etmiyor. Açık kaynak kod demek, bu demek değildir.

Açık kaynak kod demek, demin altını çizdiğim kalın ve kırmızı yazıdan ibarettir: Programcı dünyasında size destek olmak için can atan binlerce insan var.

Kodu kapattığınız sürece, programcılar da sizle olan muhabbetlerini kapatırlar. "CD aç/kapa" programının yazılma hikayesinin ardında eminim ki, bir Google'dan araştırma seansı yer almakta. Eğer, sen, Google'a

"visual basic cd insert eject"

yazıp, adam akıllı sonuçlar alabiliyorsan, tamamını açık kaynak koda borçlusun. StackOverflow, LearnProgramming tarzı topluluklarda insanlar sana BU yüzden yardımcı olabiliyorlar. Binlerce kişi, senin sorunlarını çözmek için bir araya geliyor ve gerektiğinde adam sana 20 satırlık örnek yazıp veriyor, KULLAN diye. O adam, hiç soruyor mu sence? "Kullan ama ismimi yaz. Kullan ama benim reklamımı yap." diye? Hayır. Adam, kodu sana teslim ediyor, ve unutup gidiyor. Kod, sandığından daha önemsiz bir şey. Önemli olan insani değerlerin korunması ve fikirlerin özgürce ifade edilebilmesi. Bu yüzden sen, kodunu paylaşmayarak bencilliğini sergilemiş oluyorsun.

Ayrıca eminim ki programcılığa yeni başlamış olan arkadaşlarım da vardır ve onlara da desteğimi şöyle bildirmek isterim: kodlarınızı açın, ki sizin gibi, yeni başlayanlar okuyup kendileri bir şey üretsinler. Veya tecrübeli insanlar kodunuzu okuyup, hatalarınızı ve düzeltmeniz gereken yerleri gösterip size yardımcı olsunlar. Bunu yapın.


Aynen dediğin gibi hocam başka forumlarda sınırlı program bilgimle yeni başlayanlara destek olmaya çalışıyorum hedefim yazılım mühendisi olmak forumlarda insanlara programcılığı tanıtarak mümkün olduğunca bu işe sevk etmeye çalışıyorum. Kimse alınmasın ama ineğe tapan bir milletten dünyanın en iyi programcıları çıkıyor.Türkiye'ye yurt dışından programcı getiriliyor ben sırf vakit öldürmek için programla uğraşırım bazen zaman geçiyor yapılmış programları yeniden yaparım bilmediğim kodları araştırırım . Türkiye'de bunun farkına geçte olsa vardı ilk okullara seçmeli ders olarak programlama dilleri dersi koydu evet bazen sinir bozucu olabilir ama bu sizin yararınızadır programla uğraşmak soyut düşünme kapasitenizi geliştirir ve daha iyi analiz yapmanıza yardımcı olur... Ne olmak istediğiniz önemli değil programcılık çok zor bir şey değil deneyin...
 

PcGuarD

Yeni üye
23 Tem 2014
13
0
Açık kod aynı zamanda özgürlük demektir .Bu arada Windows, xp den sonra açık kaynak koda geçseydi inanın şimdi tüm dünya windows kullanırdı mac veya linüx değil .
 
Üst

Turkhackteam.org internet sitesi 5651 sayılı kanun’un 2. maddesinin 1. fıkrasının m) bendi ile aynı kanunun 5. maddesi kapsamında "Yer Sağlayıcı" konumundadır. İçerikler ön onay olmaksızın tamamen kullanıcılar tarafından oluşturulmaktadır. Turkhackteam.org; Yer sağlayıcı olarak, kullanıcılar tarafından oluşturulan içeriği ya da hukuka aykırı paylaşımı kontrol etmekle ya da araştırmakla yükümlü değildir. Türkhackteam saldırı timleri Türk sitelerine hiçbir zararlı faaliyette bulunmaz. Türkhackteam üyelerinin yaptığı bireysel hack faaliyetlerinden Türkhackteam sorumlu değildir. Sitelerinize Türkhackteam ismi kullanılarak hack faaliyetinde bulunulursa, site-sunucu erişim loglarından bu faaliyeti gerçekleştiren ip adresini tespit edip diğer kanıtlarla birlikte savcılığa suç duyurusunda bulununuz.