Когда я пишу это, я только что закончил третью неделю интенсивной программы разработки программного обеспечения через General Assembly и свой первый проект. За последние несколько недель у меня были домашние задания с приличным количеством начального кода, на выполнение которых у меня уходило от трех до пяти часов в определенный вечер, а в неделю было пять домашних заданий. Моим первым проектом было создание личного веб-сайта-портфолио, и мне потребовалось двадцать девять часов кодирования в соответствии с пакетом wakatime моего текстового редактора Atom. Планирование на бумаге и на доске заняло около шести часов. Время, потраченное на онлайн-исследования, чтение документации Bulma и поиск решений проблем с кодированием, легко заняло еще четыре-пять часов.

В общей сложности я потратил не менее тридцати шести часов за четыре дня, чтобы добраться до того места, где я сейчас нахожусь в своем портфолио, используя JavaScript, HTML, CSS и CSS-фреймворк под названием Bulma. Ссылку на Bulma я размещу в конце статьи.

Первые несколько часов я провел с юридическим блокнотом, планируя макет своего веб-сайта и готовя график работы.

Я использовал Московский метод, чтобы спланировать свое расписание, разбив свой проект на 4 части: обязательные функции, обязательные функции, возможные функции и потенциальные функции. Я очень внимательно следил за этим расписанием, чтобы в первую очередь выполнить минимальные требования моей работы, прежде чем переходить к необязательным функциям. Я также подсчитал, что у меня будет около 32 часов прямого времени кодирования за 4 дня работы над проектом (в итоге я потратил 29 часов на свой текстовый редактор).

После Московского метода и основной макет был разработан на бумаге. Я устанавливаю для себя ежедневные цели по программированию, чтобы быть уверенным, что не выйду за график на выходные. Я также установил приложение под названием TimeOut, которое затемняло мой экран на 30 секунд каждые 20 минут и на 5 минут каждый час, чтобы заставить меня делать перерывы. Вот фото моего макета белой доски. Слева — для рабочего стола, справа — макет для мобильных устройств.

С этого момента я начал читать документацию о том, как использовать фреймворк CSS под названием Bulma, и начал понемногу дорабатывать свой веб-сайт, следуя своему графику приоритетов. Нерешенные проблемы моего проекта были более или менее проблемами, которые, как я знал, не были обязательными и потребовали бы очень много времени для реализации. Для этих нерешенных проблем я бы сначала посмотрел в Интернете, чтобы увидеть, как другие решили подобные проблемы. Если решение было слишком сложным для решения даже с готовым кодом, я отказывался от этой функции или, по крайней мере, планировал вернуться к проблеме, когда остальная часть проекта будет завершена.

Моя самая большая победа в этом проекте заключалась в том, что я был очень терпелив в процессе кодирования и оставался организованным. Как и в случае с домашними заданиями перед этим проектом, я узнал много нового, разрабатывая портфолио. Ответы на мои проблемы и новые материалы, которые я узнал, были найдены на таких сайтах, как medium, stackoverflow, w3schools, и даже на некоторых сайтах, с которыми я столкнулся впервые, например, alligator.io, на который я ссылался при некоторых проблемах с использованием свойств области просмотра в CSS.

Самая большая проблема на моем веб-сайте заключалась в том, чтобы сделать его адаптивным и реализовать функцию карусели. Чтобы веб-сайт хорошо выглядел на телефоне, он часто плохо выглядел на настольном компьютере или ноутбуке. Чтобы смягчить эту проблему, я обычно открывал свой сайт на двух вкладках. На одной вкладке были инструменты разработчика Chrome, настроенные для iphone 6, а на другой вкладке инструменты разработчика Chrome, настроенные для полноэкранного ноутбука.

Проект никогда не бывает выполнен на 100%, но всегда есть сроки. Мой проект удовлетворительный, как сейчас, и я планирую возвращаться к нему каждые несколько недель, чтобы применить новые вещи, которые я узнаю, к своему веб-сайту-портфолио. Хотя в итоге на это ушло около 40 часов, у меня есть страсть к программированию, поэтому для меня это никогда не было работой. Все дело в том, чтобы ставить перед собой небольшие цели и учиться время от времени делать перерывы. Вот ссылка на фреймворк Bulma: https://bulma.io/