Free Code Camp — это сообщество с открытым исходным кодом, которое помогает вам научиться программировать, работая над самостоятельными задачами кодирования и создавая проекты. Он предлагает проверенные сертификаты, полностью бесплатен, и вы можете помогать некоммерческим организациям, когда узнаете. Он также очень популярен на GitHub.
Этот учебный курс для программистов в настоящее время находится в тренде в соответствии с диаграммой GitHub «Тенденции в открытом исходном коде», диаграмма, изменяемая ежедневно, чтобы отразить то, что больше всего волнует сообщество GitHub. В настоящее время FreeCodeCamp занимает третье место, что является впечатляющим достижением, учитывая обильную конкуренцию проектов с открытым исходным кодом в сфере Github.
FreeCodeCamp имеет два системных компонента: внутреннюю кодовую базу, исходный код которой открыт через GitHub, в рамках разрешительной BSD3, и его внешний интерфейс, использующий реальную платформу электронного обучения, в комплекте с собственной учебной программой, на FreeCodeCamp.com.
Вы можете прийти к выводу, что третье место связано с популярностью кодовой базы, а не с самим учебным курсом по электронному обучению, но FreeCodeCamp требует, чтобы каждый подписался, чтобы пометить его репозиторий на GitHub, поэтому накопленные звезды являются реальным показателем. популярности платформы — что само по себе интересный трюк.
FreeCodeCamp нацелен на всех новичков в программировании, и его цели хорошо резюмированы в:
«FreeCodeCamp — это дружелюбное сообщество разработчиков ПО с открытым исходным кодом, в котором вы учитесь программировать и помогаете некоммерческим организациям.
Мы помогаем нашим туристам создавать достойные работы портфели реальных приложений, используемых реальными людьми, а также помогаем некоммерческим организациям »
Чтобы получить эти достойные должности и стать программистом, необходимо получить четыре сертификата, пройдя ряд испытаний. Крещение огнем сопровождается сертификатом Front End Development. Здесь вы начинаете с самых основ разметки HTML и CSS, выполняя примитивные задачи, такие как добавление изображений на ваш сайт, добавление закругленных углов с радиусом границы, установка семейства шрифтов элемента и т. Д., Но вы медленно и неуклонно решаете более сложные задачи, такие как как адаптивный дизайн с помощью Bootstrap и JQuery.
После завершения подтемы JQuery вы готовы приступить к проектам, начиная с проекта Basic Front End Development, где вы применяете на практике все, чему уже научились, создавая «Tribute Page» с помощью онлайн-среды IDE CodePen.
Следующая тема, которую нужно решить, — это базовый JavaScript, который включает в себя такие задачи, как добавление двух чисел с помощью JavaScript, объединение строк с оператором плюс и т. Д., Наиболее продвинутой из которых является инверсия совпадений регулярных выражений.
Обратите внимание, что JQuery предшествует Javascript, намекая на то, что знание Javascript не является необходимым условием для JQuery! Если это так, то зачем вообще заниматься Javascript? Причина в том, что для понимания концепций объектно-ориентированного и функционального программирования, которые следуют ниже, вы должны познакомиться с настоящим языком программирования, а не просто познакомиться с работой библиотеки.
Все задачи и задачи выполняются в онлайн-редакторе на основе node.js и mongodb. Следуя пошаговым инструкциям, вы узнаете, как решить поставленную задачу. Например, в самой первой задаче вам просто нужно изменить текст элемента h1, чтобы он произносил «Hello World» вместо «Hello», а затем нажмите кнопку «Выполнить тесты».
Это может показаться тривиальным, но так долго не продлится, пока сложность задач возрастает. Например, в задаче «Обратить строку», которая является частью главы «Основы сценариев алгоритма», вам предлагается изменить следующий фрагмент кода так, чтобы он переворачивал строковый аргумент функции:
function reverseString (str) {
return str;
}
reverseString («привет»);
Перечислены шаги, которые необходимо выполнить:
Глобальный строковый объект
String.split ()
Array.reverse ()
Array.join ()
которые, если следовать им, дают такое решение, как:
function reverseString (str) {
вар myarray = str.split («»);
myarray = myarray.reverse ();
вар mystr = myarray.join («»);
return mystr;
}
reverseString («привет»);
После главы, посвященной Javascript, для завершения материала по основам фронтенд-разработки подходят API-интерфейсы JSON и Ajax.
Далее следуйте разделам Intermediate и Advanced Front End Development, где вы участвуете в очень интересных проектах:
(Средний)
Создание машины случайных котировок
Отображение местной погоды
Создание средства просмотра Википедии
Использование JSON API Twitch.tv
(Передовой)
Создание калькулятора JavaScript
Изготовление часов-помидоров
Создание игры в крестики-нолики
Создание игры Саймона
Это включает в себя сначала прохождение промежуточных и расширенных сценариев алгоритмов, где вы изучаете алгоритмы и проблемы, которые они решают, такие как суммирование всех номеров в диапазоне или проверка телефонных номеров в США.
После выполнения всех задач и проектов пришло время подать заявку на ваш самый первый сертификат.
Но впереди еще три!
Ситуация усложняется с сертификацией визуализации данных, которая охватывает Sass, React и D3. Чтобы получить этот сертификат, вам нужно будет создать пять приложений React и пять приложений визуализации данных с использованием D3.js.
Затем идет сертификация серверной части, включающая Node.js, Express, MongoDB и Git. Чтобы получить эту сертификацию, вам нужно будет создать пять API и пять приложений с полным стеком.
Наконец, сертификация Full Stack Certification, где вы объединяетесь с другим кемпером и вместе работаете над реальными проектами для некоммерческих организаций. Вы будете работать над двумя проектами с нуля, которые затем вам придется обновлять или поддерживать.
В качестве показателя количества необходимого времени ожидается, что вы потратите 400 часов на задачи и проекты для самой первой сертификации Front End Development, а для завершения всех сертификатов вам нужно будет посвятить 2080 часов. Однако вы можете идти в своем собственном темпе и тратить на это столько времени, сколько захотите.
После того, как вы освоите все четыре сертификата, вы почувствуете себя хорошо подготовленными к трудному собеседованию. Организация FreeCodeCamp снова сияет благодаря тому, что она предоставляет своим студентам помощь как во время учебы, так и после нее.
Как платформа, сильно управляемая сообществом, она способствует взаимодействию студентов через свои чаты, где студенты проводят время и задают вопросы, обращаются за помощью или ищут партнера по программированию. Кроме того, через группы Campites в Facebook организуются реальные мероприятия «кофе и код», на которых вы встречаетесь со своими коллегами лицом к лицу с целью обмена идеями, помощи друг другу или сплочения в команде.
Студентам также предлагается выходить в Интернет и размещать всю свою работу в своих репозиториях на GitHub (предварительным условием для присоединения к FreeCodeCamp является учетная запись GitHub, которую очень легко получить), таким образом постепенно создавая свои портфолио, а также учясь сотрудничать и координировать свои действия.
Услуги по окончании учебы включают бесплатную подготовку к собеседованию, а также советы по трудоустройству, где предприятия напрямую нанимают выпускников FreeCodeCamp.
В конце концов, вопрос, который необходимо задать, должен быть следующим:
«Что делает FreeCodeCamp менее оснащенным или менее уважаемым, чем материализованное учреждение из кирпича и стен, такое как настоящий колледж?»
На мой взгляд, FreeCodeCamp сумел уловить представление о том, как должно выглядеть современное учебное заведение 21 века. Всемирно и децентрализовано с хорошо спланированной учебной программой, завершение которой дает хорошие шансы, что кандидаты получат работу, с гибкими форматами электронного обучения и средой, не требующей настройки со стороны пользователя, и, несмотря на его физическое отсутствие, поощряет физическое или иное сотрудничество между его студентами.
Давайте также не будем забывать о благотворительном аспекте работы в некоммерческих организациях, цель которого — привить самоотверженный и заботливый менталитет новейшим классам программистов в качестве обязательства на будущее.
В заключение, записка для опытных разработчиков. Несмотря на то, что учреждение ориентировано на новичков, есть кое-что и для опытных разработчиков.
В списке карты есть задачи, список, который содержит все задачи всей учебной программы, отмеченные звездочкой *, что означает, что их выполнение является предварительным условием для получения доступа к проектам, а остальные задачи являются необязательными. . Таким образом, для опытного разработчика должно быть легко выполнить эти задачи, а затем сразу перейти к проектам. Возможно, вы захотите сделать это, чтобы получить сертификат, получить опыт или просто помочь в уважении.
Итак, у вас есть это, новичок или опытный, FreeCodeCamp есть что-то для всех. Он бесплатный, имеет хорошо развитую инфраструктуру и обещает своим кандидатам светлое будущее. Может пора попробовать?