• Реально в 36-40 лет стать тестировщиком или программистом если есть свободное время?

    iCoderXXI
    @iCoderXXI
    Богдан, так держать! По части теории я всегда рекомендую Зоракса (sorax) на ютубе, ES5 он разжевывает отлично, рекомендую смотреть под запись на несколько кругов. В последствии это поможет хорошо проходить собесы в плане теории. Что касается ES6+ то там все достаточно просто и очевидно.

    Из списка языков я бы Пых исключил, когда есть node.js, зачем php?

    Если решить на кодварс задачек эдак 100+, лучше 200+ и более, то это дает что-то вроде "мышечной памяти" в разработке приближенной к боевой.

    Поясню на примере. Вот у тебя есть некая структура данных и тебе нужно провести некие операции с ней. Допустим это массив объектов. Если у тебя нет базовых навыков и рука не набита на простых операциях, то ты постоянно будешь путаться и блуждать в трех соснах. Если же ты уже порешал кучу мелких простых и чуть более сложных задачек, то ты на рефлексах умеешь в циклы, массивы, всякие кучерявые условия, преобразовать массив в объект и наоборот, сделать выборку и т.п.

    Таким образом обработка данных, к коей, в основном, и сводится большая часть так называемого программирования, у тебя проходит на рефлексах и ты спокойно концентрируется на сути, стратегии, абстракциях.

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

    На самом деле, как и в любом занятии, будь то хоть иностранные языки, хоть музицирование, хоть забивание гвоздей, нужно попрактиковаться минимум 1000 часов, чтобы почувствовать себя более-менее уверенно и 10+ тысяч часов, чтобы достичь некоторого мастерства. Вот кодварс - это как арпеджио, пальцевые гимнастики и гаммы для музыкантов, или распевки для певцов, или разогревающие упражнения для спортсменов, все предназначены для одного - ввести на рефлексы повторяющиеся относительно простые действия.

    Кодварс удобен тем, что там есть обратная связь в плане того а то ли ты делаешь. Если тесты проходят, значит код рабочий. Если нет - значит есть ошибки или что-то не учел. Если просто писать код, без кодварс, это тоже работает, но на два порядка сложнее, знаю по себе, я учился кодить в 1995 и далее, когда никаких кодварс не было и в помине, а работоспособность кода ты проверял собственными руками и глазами, так сказать эмпирически. Бывало какая-нибудь пропущенная запятая могла стоить пары дней яростного дебага и доводить до исступления. :)

    Что еще могу порекомендовать - это читать много чужого кода. И не просто читать, а добиваться понимания. Благо сегодня на том же гитхабе да и много еще где этого добра полно.
  • Записная книжка программиста?

    iCoderXXI
    @iCoderXXI
    KirisameCat, Вот щас обидно было так-то. Ушел тихо плакать в уголке...
  • Как передать переменную из PHP в JS?

    iCoderXXI
    @iCoderXXI
    Либо передать внутри тега <script> в HTML, но это будет глобальная область видимости, либо подключить модулем если есть поддержка модулей, либо запросить из JS посредством AJAX.
  • Где искать информации о основах основ программирования?

    iCoderXXI
    @iCoderXXI
    То о чем Вы спрашиваете, называется Computer Science. Гуглофпомасч. :)
  • Где хранить большой массив объектов в реакт приложении?

    iCoderXXI
    @iCoderXXI
    2к строк это не много, а почему не должен то?

    Выбора у тебя не густо, либо ридакс, либо локальный стейт компонента, либо контекст/провайдер. Как по мне Ридакс оптимальный, хотя если ты уже переехал на хуки, то можно без ридакс.
  • Как оптимизировать ajax запрос при input on keyup jquery?

    iCoderXXI
    @iCoderXXI
    Такие вещи, по классике жанра, принято дебаунсить.
  • Как на основе одного массива заменить элементы у другого массива?

    iCoderXXI
    @iCoderXXI
    Из вопроса полностью не понятно что нужно, например откуда взялось 55 и что оно значит. Соответственно рабочий алгоритм придумать нереально. Постарайся четче сформулировать задачу, даль больше вводных. Что у тебя в голове и какая перед тобой стоит задача ведомо только тебе одному. Все штатные телепаты давно и безнадежно в отпуске.
  • Как найти удаленную работу в команде?

    iCoderXXI
    @iCoderXXI
    Шахмаев Анвар, да, еще принципиально важно не только выучить API какого-либо фреймворка или библиотеки, но и достаточно хорошо понимать философию, принципы на которых это дело работает, и ту боль, которую оно решает. Если этого бэкграунда не будет - придется очень многое запоминать через немогу и нехочу, и действовать без полного осознания.

    Так же очень помогает глубокое понимание как в принципе работает язык, на котором ты пишешь. Например для JavaScript принципиально важно понимать EventLoop, промисы и пр. Я встречал немало недосиньоров, которые промисы воспринимали как нечто неважное, и не владели матчастью. Писать адекватный код такие господа затрудняются, как правило. Человек просто не может учесть того, чего недопонимает.
  • Как найти удаленную работу в команде?

    iCoderXXI
    @iCoderXXI
    Шахмаев Анвар, стек разнится от проекта к проекту, я выполнял кучу туториалов по стеку. Например TypeScript мне вначале не зашел от слова совсем, только по прошествии примерно пары лет и нескольких проектов на нем я привык, освоился и теперь не понимаю как можно без него.

    С пет-проектами проблема в том, что на тебя сразу наваливается очень много вопросов по всяким мелким нюансам "а как?", и ты просто тонешь в них. Мне повезло и я достаточно быстро оказался на боевых проектах, где, так сказать, в обстановке приближенной к реальной, на ходу вникал, перенимал и пр.

    Но такое возможно, когда у тебя за плечами в принципе достаточно большой опыт разработке и тебе уже не принципиально на чем именно писать.
  • Как найти удаленную работу в команде?

    iCoderXXI
    @iCoderXXI
    Шахмаев Анвар, Чтобы попасть в команду, нужно пройти собес. Чтобы тебя пригласили на собес, нужно чтобы тебя заметили и детектировали, что ты потенциально подходишь для вакансии. С ходу скажу, что нужно грамотно презентовать хотя бы 3-4 проекта (лучше больше) с подходящим стеком. Соответственно у тебя должно быть грамотно составленное резюме.

    Мне в этом плане повезло, т.к. в момент смены стека в 2015-2017 годах у меня за плечами был стаж работы разработчиком 15+ лет, и у меня было много проектов, пусть не в стеке, но достаточно сложных. Соответственно ко мне вопрос был один - достаточно ли хорошо я уже овладел стеком.

    Если есть что показать - показывай смело, но грамотно упакуй. С резюме у тебя вообще есть 5-10 секунд чтобы произвести первое впечатление, чтобы его стали хотя бы читать. Очень многие вообще забивают на резюме, почем зря. В целом такое равнодушие к самому себе весьма дорого обходится, если считать упущенную потенциальную прибыль.
  • Как разбираться в огромных исходниках?

    iCoderXXI
    @iCoderXXI
    Filipp42, пониманию кода способствует мощная самодисциплина всех участников при его разработке, единые соглашения и контексты.

    Бывает приходишь на престарелый МВП-переросток, который живет годами и допиливается в атмосфере дичайшей текучки, когда кадры сменяются раньше, чем успевают разобраться и вникнуть. В итоге имеем такой разнобой и кто-в-лес-кто-подровизм. Десятки подходов и приемов для одного и того же.

    Мы практикуем довольно жесткое ревью кода. Но этот процесс ломается если сваливают ключевые разработчики. Но это уже продолб руклей.
  • Можно ли устроиться миддлом без опыта работы?

    iCoderXXI
    @iCoderXXI
    В Яндексе джуны и мидлы суровые, это факт.
  • Как правильно формировать запросы к базе на php?

    iCoderXXI
    @iCoderXXI
    DBSimple весьма удобен чтобы ходить в базу из пыхи.
  • Нужно ли художнику платить налоги за пожертвования на Patreon?

    iCoderXXI
    @iCoderXXI
    Касса нерентабельна при оборотах менее 100к в месяц, имхо.
  • Какие паттерны существуют для отрисовки ui?

    iCoderXXI
    @iCoderXXI
    В JS ООП весьма специфический. :) Он как бы есть, но его как бы нет... :)

    Вся форма делилась на страницы, секции, поля. Для каждой сущности каждого вида и типа я написал шаблоны, соответственно конфиг имел древовидную структуру. Сборщик проходился по конфигу рекурсивно, распознавая типы сущностей, и применяя к ним соответствующие шаблоны. Остальной код отвечал за ран-тайм, валидацию, сборку данных и отправку на бэк.
  • Самозанятые и Upwork?

    iCoderXXI
    @iCoderXXI
    Филипп Бондарев, консультации например, наставничество. Их нерентабельно отдельно переводить на патент, т.к. фикса перекрывает 6% от доходов с них.