Интересно, а 3д моделлеры тоже математику (линейную алгебру и вычислительную геометрию) отвечают при собеседовании или достаточно демонстрации практических навыков?
Речь была про то что ФП в мире js надо знать. Foreach тоже можно и нужно использовать. А спреды использую когда нужны изменения иммутабельного стейта, например когда в одну строчку значение ключа объекта добавляешь или меняешь, это очень удобно в редаксе. Или удаляешь в том случае когда (...) это уже рест. Например данный кусок кода должен быть понятен любому js const key = 'item2'; const { [key]: _, ...newData } = data; а для человека из мира плюсов или тому кто готовился по алгоритмам это может быть тупик, потому я начал аргументировать в данную сторону.
Для меня будет важно как человек решает поставленную задачу и какие возможности языка для этого использует. Если вместо функциональных (мы в треде по js всё-таки) .map или спред (...) он будет писать цикл for на несколько строчек то такой человек мне не нужен. На мой взгляд использование возможностей языка натаскивает мышление не хуже алгоритмов, когда в одну строчку пишешь функционально то что императивно в циклах идёт на несколько строк. Вот пример задачи на собесе https://youtu.be/hkrmyIecHR0?si=SwLmw30fDbSdtF2P&t=1703 где человек показал и знание алгоритма и возможностей языка, и никаких бинарных деревьев и поисков от него не требовали. Алгоритмы можно заучить, в бинарном поиске нет ничего сложного если помнить что это такое (было это давно), но если человек не использует современные возможности языка то для меня он профнепригоден.
Если предметная специальность оптика, то человек может помнить формулу, если нет то скорее всего просто подсмотрит.
Жену в ветеринарной академии на микробиологии заставляли учить все бактерии, на каких средах растут, в какой цвет окрашиваются итд. В реальной жизни лаборанты это смотрят по книгам. А выпускник вет академии без практики не может даже простейшую операцию сделать, в вузе этому не учат.
Задачи с массивам конечно решает любой программист, вот только учили их решать с помощью циклов for, while итд. А в реальной жизни сейчас js разработчик больше использует функциональное программирование и будет использовать map, reduce, filter итд.
И например человек не работающий с 3д графикой не будет знать как работать с кватернионами в отличие от программиста на unity.
Несколько лет назад мне стало интересно разобраться с 3д графикой и unity. Взяв за основу туториалы https://catlikecoding.com/unity/tutorials/procedural-grid/ написал процедурный кубик рубика, добавил вращение. В какой-то момент потребовались матрицы, чтобы информацию о ходах пользователя хранить. И действительно было приятно когда 8 строчек кода ушли использованием формулы умножения матриц. Для саморазвития это все было очень приятно, вот только с тех пор в реальной жизни так и не пригодилось. Как пишу и бек и фронт так и пишу. А в свободное время сейчас лучше поучусь играть на гитаре, очень неплохо развивает моторику пальцев да и память, аккорды нужно помнить итд.
Знания имеют свойство выветриваться и не всегда нужно помнить наизусть многие вещи. На практике всегда можно подсмотреть алгоритм (формулу) и потом уже реализовать. Когда сдавал теорию по ПДД (правила дорожного движения) без ошибок отвечал на полностью на все вопросы, за 7 минут из 20 решал все задачи на экзамене. Через год когда решил освежить знания уже допустил несколько ошибок.
Автор статьи (не перевода) пользуется операционной системой и я уверен что он не особо вникает в подробности того что там происходит под капотом, просто пользуется. При этом у ОС также бывают уязвимости и не без помощи сообщества (при обновлении macos даже пишут кто нашел уязвимость) эти уязвимости правятся в новых обновлениях.
То же самое относится и к любому популярному (например js) фреймворку. Сообщество находит уязвимости, отправляет PR, уязвимости фиксятся, dependabot сообщает о критических уязвимости. Если ядро фреймворка своевременно обновляется и в случае если в него не вносились правки (ну править ядро это конечно very bad practice), то при условия что сам код разработчика не уязвим все достаточно безопасно. Примерно как в ОС с последними обновлениями.
Совсем другое дело, что автор статьи столкнулся с ситуацией где разработчики не смогли найти уязвимость в самом ядре. Хотя для этого достаточно было сравнить файлы ядра, как я понял из статьи. Не знаю чем они занимались два месяца, тк за это время можно было накатить код и базу (при условии что она не была скомпроментирована) на новое ядро (попутно проверяю руками файлы на момент взлома) и тем самим решить проблему.
By default, Apollo Client creates its own internal Redux store to manage queries and their results.
Интересно, а 3д моделлеры тоже математику (линейную алгебру и вычислительную геометрию) отвечают при собеседовании или достаточно демонстрации практических навыков?
В RTK уже завезли из коробки.
Что Вы используете для хранения глобального стейта в реакте?
Речь была про то что ФП в мире js надо знать. Foreach тоже можно и нужно использовать. А спреды использую когда нужны изменения иммутабельного стейта, например когда в одну строчку значение ключа объекта добавляешь или меняешь, это очень удобно в редаксе. Или удаляешь в том случае когда (...) это уже рест.
Например данный кусок кода должен быть понятен любому js
const key = 'item2';
const { [key]: _, ...newData } = data;
а для человека из мира плюсов или тому кто готовился по алгоритмам это может быть тупик, потому я начал аргументировать в данную сторону.
p.s. пример кода взял здесь https://stackoverflow.com/a/45898081
Для меня будет важно как человек решает поставленную задачу и какие возможности языка для этого использует. Если вместо функциональных (мы в треде по js всё-таки) .map или спред (...) он будет писать цикл for на несколько строчек то такой человек мне не нужен. На мой взгляд использование возможностей языка натаскивает мышление не хуже алгоритмов, когда в одну строчку пишешь функционально то что императивно в циклах идёт на несколько строк. Вот пример задачи на собесе https://youtu.be/hkrmyIecHR0?si=SwLmw30fDbSdtF2P&t=1703 где человек показал и знание алгоритма и возможностей языка, и никаких бинарных деревьев и поисков от него не требовали. Алгоритмы можно заучить, в бинарном поиске нет ничего сложного если помнить что это такое (было это давно), но если человек не использует современные возможности языка то для меня он профнепригоден.
Если предметная специальность оптика, то человек может помнить формулу, если нет то скорее всего просто подсмотрит.
Жену в ветеринарной академии на микробиологии заставляли учить все бактерии, на каких средах растут, в какой цвет окрашиваются итд. В реальной жизни лаборанты это смотрят по книгам. А выпускник вет академии без практики не может даже простейшую операцию сделать, в вузе этому не учат.
Задачи с массивам конечно решает любой программист, вот только учили их решать с помощью циклов for, while итд. А в реальной жизни сейчас js разработчик больше использует функциональное программирование и будет использовать map, reduce, filter итд.
И например человек не работающий с 3д графикой не будет знать как работать с кватернионами в отличие от программиста на unity.
Несколько лет назад мне стало интересно разобраться с 3д графикой и unity. Взяв за основу туториалы https://catlikecoding.com/unity/tutorials/procedural-grid/ написал процедурный кубик рубика, добавил вращение. В какой-то момент потребовались матрицы, чтобы информацию о ходах пользователя хранить. И действительно было приятно когда 8 строчек кода ушли использованием формулы умножения матриц. Для саморазвития это все было очень приятно, вот только с тех пор в реальной жизни так и не пригодилось. Как пишу и бек и фронт так и пишу. А в свободное время сейчас лучше поучусь играть на гитаре, очень неплохо развивает моторику пальцев да и память, аккорды нужно помнить итд.
Я так понимаю для Вас не составит также труда решить задачу по физике за 11 класс (без книжек и прочего, сходу) https://www.yaklass.ru/p/fizika/11-klass/elektrodinamika-geometricheskaia-optika-6928996/zakony-geometricheskoi-optiki-6927514/re-f6f0792f-8022-4001-8a30-ac94ed222025 ведь школу Вы закончили.
Знания имеют свойство выветриваться и не всегда нужно помнить наизусть многие вещи. На практике всегда можно подсмотреть алгоритм (формулу) и потом уже реализовать. Когда сдавал теорию по ПДД (правила дорожного движения) без ошибок отвечал на полностью на все вопросы, за 7 минут из 20 решал все задачи на экзамене. Через год когда решил освежить знания уже допустил несколько ошибок.
Также можно копнуть глубже.
Автор статьи (не перевода) пользуется операционной системой и я уверен что он не особо вникает в подробности того что там происходит под капотом, просто пользуется. При этом у ОС также бывают уязвимости и не без помощи сообщества (при обновлении macos даже пишут кто нашел уязвимость) эти уязвимости правятся в новых обновлениях.
То же самое относится и к любому популярному (например js) фреймворку. Сообщество находит уязвимости, отправляет PR, уязвимости фиксятся, dependabot сообщает о критических уязвимости. Если ядро фреймворка своевременно обновляется и в случае если в него не вносились правки (ну править ядро это конечно very bad practice), то при условия что сам код разработчика не уязвим все достаточно безопасно. Примерно как в ОС с последними обновлениями.
Совсем другое дело, что автор статьи столкнулся с ситуацией где разработчики не смогли найти уязвимость в самом ядре. Хотя для этого достаточно было сравнить файлы ядра, как я понял из статьи. Не знаю чем они занимались два месяца, тк за это время можно было накатить код и базу (при условии что она не была скомпроментирована) на новое ядро (попутно проверяю руками файлы на момент взлома) и тем самим решить проблему.