Перш за все, це проекти та проекти. Якщо ви спробуєте якусь технологію чи бібліотеку чи щось інше, ви, ймовірно, створите проект у своєму IDE, з’ясуйте, цікава вам ця чи ні, а потім видаліть проект. Це добре, всі роблять це.
Інший тип проекту - це реальне програмне забезпечення / сайти / тощо. Це бізнес, де ті "проекти", файли, програми - лише інструменти, а розробка таких складних речей вимагає мотивації та цілей :
- що ви розробляєте (веб-сайт / текстовий редактор / мобільний додаток / ...)
- для чого це потрібно (заробляйте гроші, підбирайте нову технологію / сприяйте відкритому коду / ...)
- коли б ви робили (скільки часу присвячуєте своєму проекту, як довго ви плануєте це робити)
Те, що ви розробляєте, має бути новим . Якщо ви хочете зробити ще один текстовий редактор, оскільки ви вважаєте, що потрібна необхідна функція вам, мабуть, цього не потрібно робити. Є сотні інструментів з відкритим кодом, які сприяють одному з них.
Навіть якщо ви зробите невеликий засіб для одноразового використання, як скрипт, вам слід зазначити перелічені речі, щоб було легше вирішити проблему.
Якщо ви застрягли в написанні коду (наприклад, масово переписуєте свій код), ви, мабуть, недостатньо досвідчені для цього. Візьміть хорошу книгу з інженерії програмного забезпечення, своєї платформи (mac / web / тощо), прочитайте код, написаний більш досвідченими розробниками, який робить подібні речі. Зараз існує багато місць для цього (github, google code, блоги програмування, stackoverflow).
Не намагайтеся вирішити дуже складну проблему (наприклад, написати компілятор або операційну систему) з нуля, спочатку розкладіть її на більш дрібні завдання, частіше за все, хтось уже створив бібліотеки, які допоможуть вам вирішити вашу проблему.