Это продолжение поста “Как научиться программировать”.
Научитесь продумывать задачу до того, как начнете её реализовывать. Я понимаю, что это легко говорить, но нелегко сделать. Но научившись продумывать задачу, вы получите +1 к опыту и +1 к скорости реализации следующих задач.
Разбивайте задачу на более мелкие для ускорения обдумывания и реализации. Например, если вы хотите написать Хабр, то разделите задачу на, например, такие:
1. создание регистрации пользователя
2. создание записи
3. создание комментария
и т.д.
Визуализируйте задачу. Делайте простые блок-схемы каждого мелкого блока и общую блок-схему для всей задачи.
Записывайте взаимодействия мелких блоков задачи между собой. Например: блок “А” принимает от блока “Б” параметр “Ц”. Соответственно вносим изменение в описание блока “Б”, что он отдает параметр “Ц” блоку “А”.
(Кстати, может подскажете программу, автоматизирующую эти действия?)
Записывайте свои успехи. У меня каждая задача имеет версию и дату. И есть файл у каждой задачи, в котором по датам расписано, что я сделал. Так же это поможет откатиться на рабочую версию, если Вы что-то сломали в текущей =)
И не забывайте сохранять изменения задачи. Если у Вас нет CVS, то можно просто создавать директории по датам и копировать файлы туда. Совместно с предыдущим пунктом данное действие поможет быстро вернуться к рабочему образцу. И лучше всего делать резервные копии еще где-нибудь на другом носителе.
Кстати, иногда у меня бывает несколько разных копий за день. Я их делаю, если собираюсь вносить глобальные изменения, которые могут сделать неработоспособной версию за сегодняшний день. В итоге у меня получается следующая структура папок:
project/300408-1
project/300408-2
project/300408-3
Записывайте все идеи, которые пришли к Вам в процессе создания очередной версии. Эти идеи можно реализовать в следующих версиях. А если идея “А вот это можно было бы сделать так…”, то она может быть полезна и в совсем другой задаче.
Записывайте где-нибудь отдельно всё, что Вы узнали нового. Например, узнали, как работать с новым (для себя) плагином jQuery - запишите сразу же. В notepad, notebook (бумажный или электронный) или в блог.
Если решение задачи зависит не только от Вас, то тоже запишите кто за что отвечает и как и когда должно быть это сделано.
И последний пункт. самый сложный, наверное. Доведите вышеописанные действия до автоматизма - привычки. Не жалейте времени на запись всех действий и взаимодействий. В будущем это поможет Вам сэкономить много времени, когда придется возвращаться к старой и забытой задаче или решать новую с применением существующих наработок.
Популярность: 13%
ROM
RSS Записей
Поддержи сайт!


15.05.2008 в 09:28
Насчет автоматизации не подскажу, но софтина, облегачающая многое, есть — mindjet mindmanager. Особенно удобна возможностью тут же превращать элементы карты в тудусы. К навыку работы с майндмапами (по-русски — интеллект-картами) очень полезно приложить навык разбиения любого фронта работ на Цели и Шаги. Цели — это как тесты, текст навроде “при каждом посещении страницы подписки выводится случайное фото” (скопировано с текущего проекта). Шаги — это как раз тудусы. Расписав цели, тудусы расставить намного проще. Появляется план.
Если ломать лень, существует онлайн-инструмент хороший — http://www.mindmeister.com/; а также опенсорс — freemind.
Все новое я сейчас начал заносить в evernote (evernote.com), посмотрим, будет ли это работать при накоплении большого объема, смогу ли я в этом ориентироваться.
Ну и вообще движение по жизни лично мне очень удобно организовывать в Backpack (backpackit.com), там же расписываю цели и тудусы для некрупных задач, которые можно обозреть без майндмапы.
15.05.2008 в 19:35
вам большое спасибо за пост. Вы научили меня чему-то новому) А я очень люблю что-то новое)))) Буду рад ещё постам!!
16.05.2008 в 13:41
Я всегда все записываю, потому что удержать в голове кучу информации просто нереально. Тем более графическое восприятие - самое лучшее.
18.05.2008 в 17:38
Согласен, что записывать надо все. Есть одно НО - надо все записывать быстро и понятным языком, ибо пока пишешь мысль пропадет, а если напишешь слишком кратко, то через месяц понять свои записи и восстановить исходную “гениальную” (как всегда кажется в тот момент) мысль будет не так-то просто.
P.S. поэтому комменты в своих исходниках пишу в расчете на полного идиота
Хм… горе от ума 