Главная | Все статьи | Дневник студента

Хекслет + Codewars = Liuboff

Время чтения статьи ~3 минуты
Статья написана студентом Хекслета. Мнение автора может не совпадать с позицией редакции
Хекслет + Codewars = Liuboff главное изображение

Я поняла, что учусь эффективнее, если периодически отклоняюсь от программы, чтобы осмотреться в смежных темах. Это помогает лучше увязывать новые знания с жизнью.

Последовательность vs. работа на опережение

Например, мне очень нравится Хекслет в связке с Codewars. На Хекслете все очень подробно, последовательно и системно, и это просто дофаминовый рай. Задания в рамках курсов и испытаний всегда учитывают, что студент знает на данный момент, а что нет. И каждая решенная задача приносит чистое удовольствие: вот я не умела и уже умею.

На Сodewars все по-другому. Там, конечно, есть возможность выбирать задачи по теме и по уровню сложности, но я использую метод по умолчанию — автоматический рандом с легкой поправкой на уровень уже решенных задач, естественно в сторону усложнения. Практика показала, что даже базовых знаний Python (в рамках первого блока на Хекслете) для решения задач достаточно. Просто приходится много выкручиваться или, наоборот, решать слишком уж в лоб.

Поэтому сервис иногда сам просит меня оптимизировать решение, но чаще всего мне просто становится стыдно, когда я сравниваю свое решение с лучшими решениями этой задачи от других людей. И вот за это я Codewars люблю. Не то, чтобы мне очень нравилось страдать после каждой решенной задачки, просто это задает перспективу и идет работа на опережение: у меня создается ощущение нехватки определенных знаний. После такой встряски нежная и последовательная подача этих знаний на Хекслете воспринимается с ещё большей благодарностью.

Теория переводит навыки на следующий уровень

Например, как это работает. Именно Codewars заставил меня обратить внимание на то, что не всякое решение — это хорошее решение. И я поняла, что совершенно ничего не знаю о вездесущих алгоритмах, их сложности и оптимизации. И тут выручил Хекслет.

Я люблю просматривать списки доступных курсов, и недавно нашла в Песочнице курс по «Введению в алгоритмы для Python». Он помечен как устаревший и больше не поддерживается, но для меня оказался очень полезным. Этот курс наглядно показывает, в чем суть оптимизации и почему одни алгоритмы лучше других. Курс теоретический, и мои знания Python от него не улучшились (поэтому Codewars пока на том же уровне), изменилось другое. Уже после половины курса я чувствую, как много непонятных моментов по работе уложилось в систему и разрешилось.

Как аналитик, я часто работаю с базами данных. И, например, раньше я не понимала, зачем оптимизировать SQL-запросы, чем так плохо использование команд сортировки в них и когда вообще их можно применять, а когда нет. Теперь же я, как минимум, знаю, что для обычных полей в базе данных сортировка происходит линейным методом, что очень затратно при больших массивах данных. Зато для проиндексированных полей сортировка происходит двоичным методом и не требует практически никаких дополнительных ресурсов. (Про индексацию я знала, про её эффекты не задумывалась.) Кроме того, теперь я понимаю, что поля с часто интересующими меня показателями и нужно индексировать, а это уже оптимизация всей БД.

Итог

В общем, Codewars помог мне увидеть проблему, а Хекслет помог решить её быстро и легко. Тот же курс по алгоритмам и оценке их сложности оказался мне полезен в текущей работе. Плюс в будущем, благодаря нему, я уверена, мне будет сильно интереснее разбираться в более сложных структурах данных и алгоритмах Python уже на практике.

Но, конечно, такие отклонения от программы полезны, только когда эта программа есть, иначе можно годами «исследовать мир», никуда толком не продвигаясь.

Аватар пользователя ema
ema 23 ноября 2020
7
Рекомендуемые программы
профессия
от 6 300 ₽ в месяц
Разработка фронтенд-компонентов для веб-приложений
10 месяцев
с нуля
Старт 25 апреля
профессия
от 6 300 ₽ в месяц
Разработка веб-приложений на Django
10 месяцев
с нуля
Старт 25 апреля
профессия
от 6 183 ₽ в месяц
Ручное тестирование веб-приложений
4 месяца
с нуля
Старт 25 апреля
профессия
от 6 300 ₽ в месяц
Разработка приложений на языке Java
10 месяцев
с нуля
Старт 25 апреля
профессия
от 5 025 ₽ в месяц
новый
Сбор, анализ и интерпретация данных
9 месяцев
с нуля
Старт 25 апреля
профессия
от 6 300 ₽ в месяц
Разработка веб-приложений на Laravel
10 месяцев
с нуля
Старт 25 апреля
профессия
от 5 840 ₽ в месяц
Создание веб-приложений со скоростью света
5 месяцев
c опытом
Старт 25 апреля
профессия
от 9 900 ₽ в месяц
Разработка фронтенд- и бэкенд-компонентов для веб-приложений
16 месяцев
с нуля
Старт 25 апреля
профессия
от 6 300 ₽ в месяц
Разработка бэкенд-компонентов для веб-приложений
10 месяцев
с нуля
Старт 25 апреля
профессия
новый
Автоматизированное тестирование веб-приложений на JavaScript
8 месяцев
c опытом
в разработке
Старт 25 апреля
профессия
Верстка с использованием последних стандартов CSS
5 месяцев
с нуля
Старт в любое время