anton_reut
@anton_reut
Начинающий веб-разработчик

Полезно ли долго (и вообще) «велосипедить» в программировании?

Почему-то при обучении программированию (веб в частности) советуют как можно быстрее сесть на какие-то фреймворки, библиотеки и прочее, хотя я замечаю что гораздо лучше всё усваиваю когда делаю всё с нуля, например авторизаци, загрузка данных, файлов, сессии-куки и всё прочее - то есть при изобретении своих «велосипедов» всё становится гораздо понятнее. А как высчитаете, лучше подольше «велосипедить» или сразу в бой?
  • Вопрос задан
  • 1638 просмотров
Решения вопроса 3
Moskus
@Moskus
Когда советуют, убедитесь, что у вас и у аудитории этого совета одна цель. Потому что "как можно скорее начать пользоваться фреймворками" - это если задача - как можно скорее начать шлёпать продукт и деньги получать. А если задача - научиться программировать, фреймворки тут не при чем.
Ответ написан
я замечаю что гораздо лучше всё усваиваю когда делаю всё с нуля

Поверьте - так у всех.

Но вы обратили внимание, что в школе вам рассказывали про опыты Галилея, а не дали два шарика и не сказали - разберитесь какой из них падает быстрее?

Представьте что вы велосипедите долго-долго и разобрались с авторизацией и загрузкой файлов вдоль и поперек, а потом все же сталкиваетесь с каким-нибудь фреймворком и смотрите, а там загрузка сделана так же как у вас и вы бы могли не тратить год, на то чтобы дойти до этого, а просто сразу посмотреть. Смотрите на авторизацию и думаете - "о, а чо так тоже можно было?"

Объем знаний слишком велик чтобы полсностью сгенерировать его самостоятельно. Best practice много и ко всем сразу сам не придешь. Чему-то учиться придется.
Поэтому наилучшая схема чуть-чуть повелосипедить. Изучить пару фреймворков. Попробовать опять повелосипедить. Изучить еще один, а там, может быть, присоединиться к разработке какого-то..
Ответ написан
Комментировать
ApeCoder
@ApeCoder
Закон дырявых абстракций

Из-за закона дырявых абстракций вот что получается: придумает кто-нибудь чудесный новый генератор кода, с которым у программиста работа наконец-то станет эффективной, а ему и говорят: «Сперва научись делать это руками, а потом уж пользуйся генератором, чтобы сэкономить время». Генераторы кода, абстрагирующие разработку кусков кода, так же дырявы, как и все прочие абстракции. А единственный компетентный способ залатать эти дыры — выучить, как работают абстракции, и какие подробности они скрывают. Итак, абстракции экономят наше рабочее время, но не экономят учебное время.

Отсюда парадоксальное следствие: в то время как инструментарий программиста забирается на всё более высокие уровни сложности со всё более развитыми абстракциями, стать высококвалифицированным программистом становится всё труднее.
Ответ написан
Комментировать
Пригласить эксперта
Ответы на вопрос 9
php666
@php666
PHP-макака
Индустрия сожрала сама себя и вогнала в коллапс.
Фреймворки, которые по идее должны давать некое облегчение, сейчас представляют собой монстроподобные механизмы.
Скоро в вакансиях будет не просто "программист ЯП", а "программист на ЯП на Фреймворк"
Всё к тому идёт.

Не путать это утверждение с библиотеками.
Ответ написан
sim3x
@sim3x
Полезно редко, но глубоко велосипедить (переписать фреймворк, апи, сортировку, драйвер,...)
Для себя
Ответ написан
Комментировать
@McBernar
Да, я тоже часто пишу велосипеды. Правда, сейчас уровень абстракции великов стал выше, но все равно.

Это хорошая практика, с опытом коммерческой разработки вы рано или поздно уйдете от этого, потому что важнее будет результат здесь и сейчас, но на первом этапе это отлично бустит понимание программирования в целом. Как минимум у вас не будет глупых вопросов на Тостере - "как добавить метод к классу в Ларавеле" или что-то в этом духе.
Ответ написан
Комментировать
Sanes
@Sanes
Если вам так удобней, то продолжайте. Некоторым проще идти в обратном направлении.
В любом случае от вас будут требовать результат.
Ответ написан
profesor08
@profesor08
Если способен написать, для примера, роутер для сайта, без гугления как такие вещи делаются, а взять, поставить себе задачу и решить ее, тогда, возможно, нужды велосипедить нет, разве что по фану. В противном случае надо как-то учиться всему, и набивать руку на велосипедах вполне себе нормально.
Ответ написан
Комментировать
alex-1917
@alex-1917
Если ответ помог, отметь решением
да,полезно.
небольшой лайф-хак от нашей команды:
spoiler
на два порядке продуктивнее не изучать кусками фреймворк, как тут некоторые насоветовали, а просто тупо погуглить
Ответ написан
solotony
@solotony
покоряю пик Балмера
Почему-то при обучении программированию (веб в частности) советуют как можно быстрее сесть на какие-то фреймворки,


плохой совет. при обучении программировнию надо обучаться программировать самому. поэтому

А как высчитаете, лучше подольше «велосипедить» или сразу в бой?


велосипедить. а вот "в бою" (то есть когда уже занимаешься заказной разработкой) уже вовсю применять фреймворки
Ответ написан
titov_andrei
@titov_andrei
All my life I learn - and die a fool!
Каждый раз представляйте себе, что вы находитесь на рабочем месте и в конце дня, недели, месяца вам нужно отчитаться перед начальством (или заказчиком) о том что сделано, чтобы получить оплату труда и перед своими коллегами по проекту, о том, что сделано для его продвижения.

Если после этого у вас остаётся время на велосипеды - то продолжайте педалировать с чистой совестью и высоким уровнем мотивации.
Ответ написан
@vladdimir
Верстальщик
Библиотеки и фреймворки не только экономят время. Выше уже писали о том, что они дают возможность мыслить на более высоком уровне абстракции. Хочу присоединится к этому мнению и добавить, что фреймворки и библиотеки разрабатывают обычно не на коленке, а на основе паттерном и хороших практик.
И чтобы использовать эти инструменты хорошо, все равно придется так или иначе с этими практиками и паттернами познакомиться. Чтобы понять, как правильно и эффективно пользоваться инструментом ранее незнакомым, нужно в какой-то мере выйти за рамки собственного привычного мышления, а значит вырасти качественно.
При велосипедировании, человек остается в рамках привычного мышления, он конечно учится новому, но это уже рост количественный. Больше знаний, но в рамках привычного опыта.

Нельзя сказать, что одно хорошо, а другое плохо. Можно сказать, что для прокачки навыков полезно делать и то и другое.
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы