• Как учиться JavaScript'у?

    dzencot
    @dzencot
    Наставник на https://ru.hexlet.io
    Приветствую! Не стоит рассчитывать, что после изучения теории вы сразу научитесь писать правильный код, ведь это такой же навык, как например вождение автомобиля. Я бы порекомендовал практиковаться на простых задачах, если сложные ставят в тупик. Самое важное на этом этапе - это приобрести навык формирования алгоритма решения и переноса его в код.
    Не зацикливайтесь на изучении названий методов или функций - это мало что даст. Лучше изучайте различные структуры данных и работу с ними. Например умение работать с коллекциями, деревьями или графами в значительной мере прокачает ваш навык программирования(должен заметить, что даже не все опытные программисты умеют работать с этими моделями). Постарайтесь найти опытного наставника, кто бы мог указать на ошибки - это довольно важный момент, так как сейчас вы приобретаете навык, и то, какой это будет навык, закладывается сейчас. Если вы приобретете навык написания плохого кода(пусть и рабочего), то потом переучиваться будет сложнее. Всегда рефлексируйте, оценивайте что делаете не так.
    Еще очень важный момент, знание синтаксиса не сделает вас хорошим программистом. Вам нужно знать как построить архитектуру приложения, выделить правильные абстракции. Увы, этому мало кто учит, а многие просто забивают. Я сам в свое время через это прошел: без особого опыта начал делать проект, в итоге весь код превратился в кашу. В итоге пошел учиться на курсы как строить архитектуру.
    Если подытожить, я хочу сказать, что не стоит ставить вопрос так "Как учиться JavaScript'у?". Лучше изучайте само программирование, а не язык программирования. Быть может это вам кажется непонятным, но если вы познакомитесь с другими языками(даже если это будет язык из семейства лиспов или функциональный язык), то вы обнаружите между ними много общего. То, о чем я говорил выше: работа с моделями данных, построение абстракций - это и является истинным программированием независящим от конкретного яп.
    Сорян, что так много всего понаписал, но мне реально обидно, что мало кто думает об этом. Я встречал(и встречаю) много классных чуваков, которые просто сгорают на работе выполняя монотонную работу("формошлеперы" - как мы их называем, и они сами себя тоже)) и просто не видят куда развиваться. И при этом у них нет важных навыков про которые выше писал. В общем если вам все это зашло, про что я тут понаписал, то могу порекоммендовать зайти на https://ru.hexlet.io/. Это может показаться рекламой, но я реально по своему опыту скажу, что мало образовательных ресурсов дают такой материал. Все что тут понаписал - это все впитал благодаря им(сам там учился). Желаю успехов в учебе!
    Ответ написан
    Комментировать
  • Есть ли польза от курсов по веб-разработке?

    dzencot
    @dzencot
    Наставник на https://ru.hexlet.io
    Хочу рассказать свою историю. Я сам пошел на курсы, до них изучал теорию по книжкам(Perl, Python, PHP). Изучив синтаксис начал пилить свой коммерческий проект. В итоге промучавшись год или два, я понял, что знание одного синтаксиса мало. Весь код превратился в кашу, работать над проектом было невозможно, хоть и заложил какую-то модульность. Возможно мне надо было пойти во фриланс, как вы хотите. В общем пошел на курсы с определенной целью: научиться правильно строить архитектуру приложения и устроиться на работу программистом. Видимо меня спасло то, что уже были кое-какие знания в яп, поэтому попал именно на те курсы, где учат как раз тому, что мне надо было: построение архитектуры, правильное выделение абстракций, работа с моделями данных. Создатели этих курсов сами являются работающими программистами, и кроме своей образовательной платформы пилят кучу других проектов. Это школа https://ru.hexlet.io/. Не знаю подойдут ли вам они, наверное материал будет излишним для фриланса. Но я не жалею. Примерно на половине до конца обучения устроился на работу программистом и довольно быстро поднялся до мидла.
    Ответ написан
    Комментировать
  • Есть ли практическая польза от книги sicp?

    EvilsInterrupt
    @EvilsInterrupt
    System programming, Reversing Engineering, C++
    SICP учит думать по-программерски. Учит находить решения в программерском мире. Есть огромная разница между программистом знающим как использовать фреймворк1, фреймворк2, ..., фреймворкN и другим программистом, который может даже и не знать как использовать эти фреймворки, но сможет отличить что вон тот код очень похож на работу за O(n) , а вон тот вроде как за O(1) и сможет сделать более правильный выбор. Грубо говоря есть некий базис, который одному позволяет создавать решения более стабильные, более эффективные, а другому из-за не хватки приходится городить костыли.

    К примеру общеизвестная задачка на программирование "банерокрутилка". Когда имеется банер1, банер2, ..., банерN и нужно вывести "псевдослучайно" каждый банер по одному разу. Один программер может применить массив и указвать в нем какие номера он уже выводил, а другой применит математику и при этом решение будет одно проходным и не потребует выделения массива. И таких задачек в программировании хватает!
    Ответ написан
    4 комментария
  • Где большие чаты рускоговорящих web-разработчиков?

    toxicmt
    @toxicmt
    CTO at hexlet.io
    В чате хекслета slack-ru.hexlet.io около двух тысяч разработчиков
    Ответ написан
    Комментировать