Her şeyden önce, projeler ve projeler var. Bir teknoloji veya kütüphane ya da başka bir şey denerseniz, muhtemelen IDE'nizde bir proje yaratırsınız, bu şeyin sizin için ilginç olup olmadığını öğrenin ve projenizi silin. Sorun değil, herkes bunu yapıyor.
Başka bir proje türü de gerçek yazılım / siteler / vb. Olup, bu 'projeler', dosyalar, programlar sadece bir araçtır ve bu tür karmaşık şeyleri geliştirmek motivasyon ve hedefler gerektirir :
- ne geliştirirseniz (web sitesi / metin editörü / mobil uygulama / ...)
- ne için ihtiyacınız var (para kazanın, yeni bir teknoloji edinin / açık kaynağa katkıda bulunun ...)
- ne zaman yapardın (projene ne kadar zaman ayırıyorsun, ne kadar zaman yapmayı düşünüyorsun)
Ne geliştirmek olmalıdır yeni . Talep ettiğiniz bazı özelliklerin eksik olduğunu düşündüğünüzden başka bir metin editörü daha yapmak istiyorsanız, muhtemelen bunu yapmanız gerekmez. Yüzlerce açık kaynak aracı var, bunlardan birine katkıda bulunuyoruz.
Bir komut dosyası gibi küçük bir tek kullanımlık araç yapmış olsanız bile, listelenen şeyleri belirtmelisiniz, sorunu çözmek daha kolay olacaktır.
Kod yazma zorunluluğu varsa (örneğin, kodunuzu büyük ölçüde yeniden yazın), muhtemelen bunu yapacak kadar deneyimli değilsinizdir. Yazılım mühendisliği, platformunuz (mac / web / etc), benzer şeyler yapan daha deneyimli geliştiriciler tarafından yazılmış kodları okuyun. Bunu şimdi yapacak çok fazla yer var (github, google code, blogları programlama, stackoverflow).
Çok karmaşık bir sorunu (örneğin bir derleyici ya da işletim sistemi yazar) sıfırdan çözmeye çalışmayın, ilk önce daha küçük işlere ayrıştırın, çoğunlukla çoğu zaman birileri sorununuzu çözmenize yardımcı olacak kütüphaneler oluşturmuştur.