Прежде всего, это проекты и проекты. Если вы попробуете какую-то технологию или библиотеку, или еще что-то, вы, вероятно, создадите проект в вашей IDE, выясните, интересна ли вам эта вещь или нет, а затем удалите свой проект. Это нормально, все так делают.
Другим типом проектов является реальное программное обеспечение / сайты / и т. Д., То есть бизнес, где эти «проекты», файлы, программы являются всего лишь инструментами, а разработка таких сложных вещей требует мотивации и целей :
- что вы разрабатываете (веб-сайт / текстовый редактор / мобильное приложение / ...)
- для чего вам это нужно (заработать деньги, приобрести новые технологии / внести свой вклад в открытый исходный код / ...)
- когда вы это сделаете (сколько времени вы посвятите своему проекту, как долго вы планируете это делать)
То, что вы разрабатываете, должно быть новым . Если вы хотите сделать еще один текстовый редактор, потому что вы думаете, что какая-то функция, которую вы требуете, отсутствует, вам, вероятно, не нужно это делать. Существуют сотни инструментов с открытым исходным кодом, внести свой вклад в один из них.
Даже если вы сделаете небольшой одноразовый инструмент, такой как сценарий, вы должны указать эти вещи в списке, было бы легче решить саму проблему.
Если вы застряли в написании кода (например, массово переписали свой код), вы, вероятно, недостаточно опытны, чтобы сделать это. Возьмите хорошую книгу по разработке программного обеспечения, вашей платформе (mac / web / etc), прочитайте код, написанный более опытными разработчиками, который делает подобные вещи. Есть много мест, где можно сделать это сейчас (github, google code, блоги по программированию, stackoverflow).
Не пытайтесь решить очень сложную проблему (например, написать компилятор или операционную систему) с нуля, сначала разбейте ее на более мелкие задачи, чаще всего, когда кто-то уже создал библиотеки, которые помогут вам решить вашу проблему.