Я не понимаю то, что Вы спрашиваете. Вы спрашиваете, "Должен я использовать IDE вместо...", но я не понимаю то, что альтернатива - , Vim и Emacs выполняют много функций, которые любой IDE даст Вам. Единственный аспект они не обрабатывают это больший IDE, может быть вещами как разработчики UI. Затем Ваш вопрос сводит только к, "что IDE должен я использовать" с аргументами, которые будут сделаны для более простой области Vim и Emacs.
Agile - это философия, а не рецепт. Вы используете элементы, которые соответствуют вашему стилю разработки, вашему проекту и потребностям вашего бизнеса.
Я думаю, что ваше предложение «тестируйте часто, пишите понятный для человека код» - это идеально подходящий подход для создания хорошего программного обеспечения в одиночной команде для небольших проекты.
Вы можете посмотреть на c2.com Solo Programming Xp Workarounds . Картонный программист - один из тех, кого я почему-то нашел особенно забавным. Вы могли бы закодировать с картонным Джоном Скитом рядом с вами?
Ковбойское кодирование и agile-процесс - не одно и то же.
Что касается небольших личных проектов, конечно, есть много вещей, которые были бы излишними. Гибкая разработка, короткие итерации, частая проверка кода и самодокументирующийся код - вот правильный выбор.
В настоящее время я работаю в одиночку над проектом ASP.NET (хотя и не маленьким). Я довольно часто использую TDD и считаю, что разработка с использованием TDD не занимает много времени, фактически я экономлю время.
Это в первую очередь потому, что наличие набора модульных тестов позволяет очень быстро как тестировать, так и отлаживать систему. Например, когда функция не работает должным образом, гораздо быстрее подключить отладчик к процессу NUnit, чем запустить веб-сервер в режиме отладки, перейти на правильную страницу (сначала пройти экран входа в систему) и т. Д. Так что, не имея модульных тестов, я бы тратил гораздо больше времени на тестирование и отладку.
И модульные тесты также помогают мне создавать хорошо спроектированную систему, поскольку они вынуждают меня создавать более слабосвязанный дизайн.
Я бы сказал, что количество людей, работающих над проектом, - не единственный фактор, который следует учитывать. Я думаю, причина, по которой вы находите полный Agile (документация, рефакторинг, модульные тесты .......... это, вероятно, не совсем Agile , хотя они существуют уже давно ) тратить время, потому что сольные проекты, как правило, небольшие.
Для более крупных проектов, которые охватывают более полугода, я действительно ожидал, что правильный процесс действительно поможет вам. Вы можете посетить какой-нибудь код, который вы написали 5 месяцев назад. Без документации это то же самое, что и чужая работа. Без тестов вы так же боитесь его изменить, как и изменить чужой код.