Это копия, сохраненная 13 октября в 21:02.
Скачать тред: только с превью, с превью и прикрепленными файлами.
Второй вариант может долго скачиваться. Файлы будут только в живых или недавно утонувших тредах. Подробнее
Если вам полезен архив М.Двача, пожертвуйте на оплату сервера.
Больше пары строк кода в посте или на скриншоте ведут в ад.
Для программирования на HTML https://codesandbox.io
Для Node.js с консолькой https://repl.it/languages/nodejs
Если рассчитываешь получить дельный ответ, сформулируй правильно вопрос: «что я хочу получить, что я для этого делаю, что я вместо этого получаю». Если/когда самостоятельно найдёшь решение — поделись в треде, мы за тебя переживаем.
Документация - https://developer.mozilla.org
Руководство для вката - https://github.com/acilsd/wrk-fet#javascript
На втором это джуны собеседуются в IT в 2024?
// ==UserScript==
// @name 2ch tree post
// @namespace http://tampermonkey.net/
// @version 1.2
// @description делает треды древовидными
// @author You
// @match http://2ch.hk//res/
// @match https://2ch.hk//res/
// @match http://2ch.life//res/
// @match https://2ch.life//res/
// @grant none
// @grant GM_addStyle
// ==/UserScript==
(function () {
"use strict";
console.time("tree script");
//находим все ссылки в постах
const post = document.querySelectorAll(
`.post__message > :nth-child(1)[data-num]`
);
//функцию вызываем на все посты в треде
//Перемащает пост и применяет стили для создания дерева
function postMove(linkPost, newpost = false) {
const nodePostCurr = linkPost.parentNode.parentNode;
const nodePostReply = document.querySelector(
`#post-${linkPost.innerText.match(/\d+/)[0]}`
);
//если эта ссылка ведёт на оппост или другой тред или пост не существует - пропускаем
if (/OP|→/.test(linkPost.innerText) || !nodePostReply) {
return;
}
nodePostReply.append(nodePostCurr);
if (newpost) {
nodePostCurr.addEventListener(
"click",
() => {
nodePostCurr.style["border-left"] = "2px dashed";
},
{ once: true }
);
}
}
//перебираем и вызываем функцию
for (const key of post) {
postMove(key);
}
//наблюдаем за появлением новых постов
const fromThreads = document.querySelector(".thread");
const observer = new MutationObserver((mutationRecords) => {
for (const key of mutationRecords) {
if (key.addedNodes.length > 0) {
const post = key.addedNodes[0].querySelector(
`.post__message > :nth-child(1)[data-num]`
);
if (post) {
postMove(post, true);
}
}
}
});
observer.observe(fromThreads, { childList: true });
console.timeEnd("tree script");
function GM_addStyle(css) {
const style = document.getElementById("GM_addStyleBy8626") || (function() {
const style = document.createElement('style');
style.type = 'text/css';
style.id = "GM_addStyleBy8626";
document.head.appendChild(style);
return style;
})();
const sheet = style.sheet;
sheet.insertRule(css, (sheet.rules || sheet.cssRules || []).length);
}
GM_addStyle('.post .post_type_reply { border-left-color: white; }');
})();
// ==UserScript==
// @name 2ch tree post
// @namespace http://tampermonkey.net/
// @version 1.2
// @description делает треды древовидными
// @author You
// @match http://2ch.hk//res/
// @match https://2ch.hk//res/
// @match http://2ch.life//res/
// @match https://2ch.life//res/
// @grant none
// @grant GM_addStyle
// ==/UserScript==
(function () {
"use strict";
console.time("tree script");
//находим все ссылки в постах
const post = document.querySelectorAll(
`.post__message > :nth-child(1)[data-num]`
);
//функцию вызываем на все посты в треде
//Перемащает пост и применяет стили для создания дерева
function postMove(linkPost, newpost = false) {
const nodePostCurr = linkPost.parentNode.parentNode;
const nodePostReply = document.querySelector(
`#post-${linkPost.innerText.match(/\d+/)[0]}`
);
//если эта ссылка ведёт на оппост или другой тред или пост не существует - пропускаем
if (/OP|→/.test(linkPost.innerText) || !nodePostReply) {
return;
}
nodePostReply.append(nodePostCurr);
if (newpost) {
nodePostCurr.addEventListener(
"click",
() => {
nodePostCurr.style["border-left"] = "2px dashed";
},
{ once: true }
);
}
}
//перебираем и вызываем функцию
for (const key of post) {
postMove(key);
}
//наблюдаем за появлением новых постов
const fromThreads = document.querySelector(".thread");
const observer = new MutationObserver((mutationRecords) => {
for (const key of mutationRecords) {
if (key.addedNodes.length > 0) {
const post = key.addedNodes[0].querySelector(
`.post__message > :nth-child(1)[data-num]`
);
if (post) {
postMove(post, true);
}
}
}
});
observer.observe(fromThreads, { childList: true });
console.timeEnd("tree script");
function GM_addStyle(css) {
const style = document.getElementById("GM_addStyleBy8626") || (function() {
const style = document.createElement('style');
style.type = 'text/css';
style.id = "GM_addStyleBy8626";
document.head.appendChild(style);
return style;
})();
const sheet = style.sheet;
sheet.insertRule(css, (sheet.rules || sheet.cssRules || []).length);
}
GM_addStyle('.post .post_type_reply { border-left-color: white; }');
})();
USDT. Деньги вперед или через гаранта.
>но сам понимаешь, надо как-то, чтобы без деанона.
пизда тут трясуны.
как ты в магазин ходишь вообще? тебя же люди увидють!!
Я прочел что в условном unity это можно прописать в коде (но пока конкретных примеров не нашел). Важно еще чтобы айди могли читать чтобы удостовериться что это условно "тот самый билд с прошлого четверга" и т.п.
>прокачаться в работе с JS и его типами данных
чтобы что? общего понимания достаточно.
Применяй в реальных задачах на вью/реакте.
>>25281
>с другой стороны они нахуй нигде кроме собесов не нужны
Проси тестовое.
Задачками с литкода на собесе будут дрочить только опущенные гики. Нормальные челики что-то реальное попросят, а не абстрактные задачки с литкода.
Ты можешь не понравиться лично тому кто собеседовать будет, он тебе дроченную задачку даст чтобы завалить, а ты блять потом себя ковырять будешь, мол дурак проебался, будешь тратить время и энергию на хуйню.
Реальные задачи, портфолио, пет проекты, тестовые задания на гитхабе, покажут что ты не совсем лох.
>Кто знает где можно прокачаться в работе с JS и его типами данных
Учись как писать сложную и большую, запутанную хуйню.
Мастерством овладеешь позже.
Разбирайся в чужом коде.
Бери тестовые и решай для себя.
Мимо 4 года, гуглю как фильтровать массив с объектами, знаю пару методов массива.
>Мимо 4 года, гуглю как фильтровать массив с объектами, знаю пару методов массива.
Да хуль, всего не запомнить, пользоваться сниппетами или записками нормально.
>Учись как писать сложную и большую, запутанную хуйню.
Вот это мне интересно. Я хочу знать когда мне пользоваться замыканиями, когда строить функции всевышнего высшего порядка, как и когда делать композиции функций. Но этого нигде нет, хз как в этом практиковаться. Есть только задачи на кручение деревьев и перевод римских цифор. Нахер мне это.
>замыканиями, когда строить функции всевышнего высшего порядка, как и когда делать композиции функций.
Читай СИКП, там все, что ты перечислил, на пальцах объясняется, и не только. Если "кишочки" ЯП не особо интересны, то можно ограничиться первыми тремя главами. Алсо, JS - это Scheme (язык который там используется), только в си-подобном синтаксисе, так что просто читаешь(решаешь) и применяешь у себя без регистрации и смс.
Ну так ты начни делать сложную и запутанную хуйню.
В какой-то момент придешь к тому, что это нужно будет сделать.
Или придет понимание, что вот эта сложная и непонятная залпа тут будет работать.
Мастер Анальник может знать 10 000 тысяч методов массива.
Но работающий Анальник знает и использует только пару.
спасибо за помощь 😘
А зачем тебе нужен редюсер.
>Какой положняк в рекате со стейт менеджментом?
Стейт менеджеры - это не про состояние. Это про взаимодействие с апи. Весь смысл в том, что когда у тебя много апи, допустим users, products, discounts, cart, search и так далее, то тебе надо всё это добро обрабатывать. Приводить к нужному типу, кешировать запросы, показывать загрузку, ошибки, делать оптимистичное обновление UI, периодически получать новые данные и так далее. И всё надо как-то абстрагировать и выносить функционал.
Примерно ту же функцию выполняет SWR https://swr.vercel.app/ru или React Query хотя они стейт-менеджерами не являются.
В чем преимущество у websocket перед xmlhttprequest ?
По сколько часов в день работаити? Сколько отдыхаете?
На выходных у меня вторая работа по совместительству.
Конечно будешь, иначе нохаир.
>Ведь в спецификации ecma ничего нет ни про первое ни про второе
Не ври
https://262.ecma-international.org/6.0/#sec-lexical-environments
https://262.ecma-international.org/6.0/#sec-execution-contexts
а типо у бэкэендера куда то ведет? и там и там можно стать тим лидом. для того, чтобы таковым стать не нужно быть мастером всего
Да спору нет, другой вопрос чем заняться фронтендеру помимо своего формошлёпства, я задумался над тем что будет с нами через пять-десять лет и пока не решил, что выглядит перспективно.
Очевидный ai может так же лопнуть как пузырь.
Middle+ JavaScript Developer
хз, я шкила, учил плюсы для спортпроги, с ноября где то, щас просто решил вкатиться в js, хотя во фронты идти не собираюсь так то, но и на плюсах особо интересного тоже нет, но думаю в вузике они пригодятся поэтому не забываю их, думал еще джангу/фаст апи выучить, все это чтобы начать просто хотя бы на кусок хлеба самому зарабатывать с курса второго, сразу после вуза меня никто не будет обеспечивать и давать деньги, все силы и финансы потратили на моего брата, оплатили и учебу и машину и квартиру и еще девку содержали, моя надежда поступить на бюджет и выпросить оплачивать мне хатку, как то так...)
А куда, как ты думаешь, пойдут все эти волки, не сумевшие вкатиться в реакт? На курсах скажут весьма логичную мысль - жабаскрипт ты уже (не) знаешь, вкатывайся в бэкенд на ноде, 3 года опыта в подставной фирме у тебя уже есть.
Middle+ JavaScript Developer
Так они уже, сука, говорят это много лет. Поэтому сейчас в условной пышке, сишарпе или гошке одна конкуренция, а вот в ноуджэес по 5000 хуев на место.
Короче все, то связано с жс, мертвая хуйня. Не вкатывайтесь, а то вам будет пиздец, как мне
И что дальше? Его попросят какой-нибудь простой иннер джоин сделать в лайв режиме, он в лужу и сядет. А на вопросы про какую-нибудь балансировку серверов выключит вебку и убежит.
понял. усвоил правду жизни
>Что отвечать на собесах на вопрос: Чем отличается лексисеское окружение от контекста выполнения в js?
Очень странный вопрос. Для человека хотя бы чуть-чуть понимающего JS это звучит примерно так: чем руль отличается от автомобиля. А еще есть отдельные организмы, которые под "контекстом" понимают this, имея в виду, что он меняется в зависимости от контекста исполнения.
Поэтому я бы начал с того, что дал определение лексического окружения и уточнил у интервьюера, что конкретно он имеет в виду, говоря контекст.
Метод с внедрением стилей работает, т.е. я могу перекрасить все дивы, но мне логики стилей не хватает - мне нужно через querySelector найти определенный "a" по определенному href, а уже от него через closest нужный div. Если есть вариант реализовать это в самом css - буду рад наводке, полностью решит проблему.
Вопрос решен - через chrome.scripting.executeScript нужно вызвать другой файл с жсом. Нелогично нихуя, но работает зато. Животворящий двач.
Спасибо, теперь понял, ещё что то видимо типа того тоже есть в эйфории с переходом на Си
Вот сижу кубатурю
Калич как учебник, особенно для совсем новичка
А есть ли в треде прошаренные сеньоры? Те, которые вот уже 5 лет в индустрии работают, которые TypeScript хорошо знают. Вопрос к ним. Чувствуете ли вы, что бекенд на ноде катится в пизду? Что это умирающий тонущий корабль? Видели ли вы вообще в своей жизни бекенд на ноде? Мне кажется, уже скоро про него все забудут
Так он всегда был там, нода из коробки проигрывает жабе, чтобы сделать из нее что то приличное приходиться добавлять тайпскрипт, линтер, искать хорошие пакеты среди сотен непонятных м заброшенных библиотек, итд
Ну а сколько тебе надо лет, чтобы научиться составлять джейсоны? Это в европейских компаниях ставят 8 лет (максимум видел 12 лет опыта), потому что к ним со всего мира хотят попасть.
База бэка это java/c#, все остальное либо избыточно сложно (rust), либо нет типизации (php, python, js)
java/c# база корпоративного раба, который до седых мудей не может понять простую истину - хочешь жни, а хочешь куй, все равно получишь...
Хз, глубоко его не трогал, но в целом пойдет
Прямиком, сама концепция Java/C# это паттерн на паттерне
>Ну а сколько тебе надо лет, чтобы научиться составлять джейсоны?
Пару месяцев.
Но причем тут сеньерство?
Тайпскрипт как раз явился миру после того, как эти деды пришли в жс.
Свобода/несвобода работника влияет на выбор инструмента. Если чел выбирает жаву, сишорп или го, то он ориентируется быть исполнителем в большой компании. Если чел пишет веб дрисню для своего бизнеса или бизнеса небольшей компании, то он скорее выберет язык без необходимости компилировать код перед запуском. Смотри как пример руби, DHH и 37signals.
Вообще признаки корпоративного раба это
1) Чрезмерное пристрастие к типизации
2) Любовь к компиляции и любому виду сборки. Пока код компилится на каждый пук (особенно в запущенном случае разработка ведется в кубернетесе). Зато можно законно весь день продунасить, добавив в проект всего пять строк кода...
3) Чрезмерное пристрастие к архитектурным вопросам и к гибкости/расширяемости кода. Чел никак не может понять что бизнес первичен, а код вторичен и может быть переписан не один раз
4) Любовь к ивент дривен, кафке, микросервисам, как будто бы это самоцель
5) Любовь к хайлоаду как будто бы это самоцель. Такие челы особенно любят изучать вопросы конкаренси, мультитрединга, как будто бы это рокет саенс и этому интересно свою жизнь посвятить.
Мм, ну выглядит как проф. деформация, да, согласен
Зачем мне слушать что-то рельсовое. Это вообще никак к моей специальности не относится.
Т.к. по бэкэнду явно перегрев по кадрам. И бекенд сейчас можно бля слепить за 15 минут на nocode платформах -- Firebase, Appwrite, Supabase, либо headless Wordpress/CMS.
Т.е. бекенд хуяк и готов, а вот разработка интерфейса реально требует человеческих ресурсов и времени.
Такой подход значительно ускоряет выход MVP, следовательно зачем платить больше?
И Джяваскрипт сейчас везде можно сказать, для фронтенда, для бекенда если надо, для разработки мобильных приложений/игр.
По сути стек сейчас такой, если заказчику нужно быстрее выпустить MVP продукта и не транжирить кеш:
Бекенд: Firebase, Appwrite, Supabase, либо headless Wordpress/CMS.
Фротенд: Reactон как бы считается надежным решением/Vue/Angular
Mobile: React Native/Flutter
Мнение?
>бекенд сейчас можно бля слепить за 15 минут на nocode платформах
1. На ноукод платформах лепят ноукодеры. Ноукодер и фронтенд предпочтет слепить ноукод способом.
2. Человеку далекому от айти легче обяснить нейронке, какой он хочет фронтенд, чем, то что ему нужно на бекенде. Он вообще не понимает разделения бекенд -фронтенд.
3. Фронтенд нагляден, поэтому порог входа минимален и туда прут таксисты и домохозяйки
Так что согласен, это наиболее перспективно для заказчика, но малоперспективно для исполнителя...
>но малоперспективно для исполнителя...
Что в этом случае более перспективнее для йобогигачада, уникума?
Чтобы платили наносеки и дорожили как мамой?
Какой-нибудь C?
>но малоперспективно для исполнителя...
зочем? это просто оптимизация процессов.
оптимизация бекенда, и смещение фокуса на ui/ux, уникальность интерфейсов.
>>29548
>Ноукодер и фронтенд предпочтет слепить ноукод способом.
Все таки речь про галеру и коммерческую разработку, и задачи сложнее чем просто круд слепить, а такие сложные пользовательские сценарии все равно требуют доработки и программирования.
>>29548
>3. Фронтенд нагляден, поэтому порог входа минимален и туда прут таксисты и домохозяйки
Не все так просто. Прут то прут, другое дело сколько из них осилило.
React/React Native это сложный продукт, высокий уровень абстракции, использование многих инструментов разработки.
Это вам бля не шаблон под вордпресс верстать или лендинг.
>Что в этом случае более перспективнее для йобогигачада, уникума?
чел, ты видишь что происходит?
https://ratingruneta.ru/agency-appfox/
Вот глянь компании, "Клиенты по годам" - по вебу почти у всех спад, по мобильной разработку у кого-то тоже спад у кого то сохранение и рост, вероятно сместили фокус, т.к. веб макак дохуя на фрилансе, конкуренция пизда и демпинг на падающем рынке.
>Какой-нибудь C?
Программист С/С++ Embedded
https://izhevsk.hh.ru/vacancy/103036516
Но это бля реально гиком очкастым надо быть...
> >но малоперспективно для исполнителя...
> Что в этом случае более перспективнее для йобогигачада, уникума?
> Чтобы платили наносеки и дорожили как мамой?
> Какой-нибудь C?
Софтскилы и ебало чеда нужны чтобы платили. Языки программирования не нужны.
>Софтскилы и ебало чеда нужны чтобы платили. Языки программирования не нужны.
не пизди, выдумщик.
с эйчаршой базарил, говорит хардовых челиков им надо, У компании нет денег обучать.
и такая ситуация много где.
еще бля у компаний некоторых висят вакансии годами для вида, типа их заказчики нагуглят а там ебать у них какие зп, вот не исключаю что немало кто таким маразмом балуется.
Надо делать не как DHH, удаляя нахуй существующую типизацию в мажорке, в попытках оседлать а истоки, а как Рич Харрис - хотя бы положить JSDoc аннотации, которые всё равно не распидорасит в процессе перепердолинга и можно прыгнуть в сурсы с максимальной точностью.
DHH просто ёбаный тиран, который всех тянет в своё болото без выбора.
мимо
> попытках оседлать а истоки, а как Рич Харрис - хотя бы положить JSDoc аннотации,
ты в проде на js/ts?
Я в проде на TS, но в отличие от DHH я не пилю попенсурсную либу, которая в один момент превращается в кусок JS для избранных.
Но это не значит, что я адепт TS-везде. Заранее пошлю нахуй, просто на всякий случай.
Он оттуда особо и не выкатывался. Ноде пророчили большие перспективы основной технологии для микросервисошлепинга, всячески ее пиарили, даже выкатили неплохой продакшен фреймворк Nest. Но го перехватил инициативу и начал активно внедряться вместо ноды.
>Чувствуете ли вы, что бекенд на ноде катится в пизду?
Ну у меня инвайты на собесы где-то с Мая резко упали с 3/мес до 1/мес. Мб просто период такой, но мне кажется что действительно приходит пизда, так что я экстренно перекатываюсь в сишарп
нафиг ты нужен без реакта?
бекенд на фаярбейзе/аналогах, фронт/мобилки реакт.
ну устроиться можешь ковырять чота там писанное неск лет назад...
Мамкин теоретик, работу себе найди.
Тот который не на JavascriptCore
>Но го перехватил инициативу и начал активно внедряться вместо ноды.
https://benchmarksgame-team.pages.debian.net/benchmarksgame/fastest/go-node.html
Выцеживать проценты в производительности есть что-то уровня озона.
В других случаях просто имеется Джяваскрипт разработчик, который может нашлепать продукту и фронт и бек.
Да нихуя нет смысла. Главное , что бы сносно работало, один хуй ебаное менеджерье всегда будет хотеть обвесить проект метриками и аналитикой.
>Выцеживать проценты в производительности есть что-то уровня озона.
Дело не в производительности. Голеньк - это облегченный язык с мизерным бинарником, где нет ничего лишнего, который быстро учится и внедряется. JS - это раздутый за 30 лет существования монстр с огромной спецификацией + телекой всякой хуйни которую нужно к нему пристраивать (тайпскрипт, линтеры, сомнительные либы и пр.)
>В других случаях просто имеется Джяваскрипт разработчик, который может нашлепать продукту и фронт и бек.
Ничего подобного. 80% жс-макак - это фронтендеры, которые не знают БД, ООП, паттернов, принципов работы серверов и распределения нагрузки между ними, не знают про кафки с куберами. На реальном проекте они могу разве что контроллер какой-нибудь написать, и то не с первого раза.
Челиков может и надо а платить они будут чеду с софтскилами. Мб тебе надо чтобы жена готовила и убирала а все деньги ты онлифанщице отнесешь и тут так же.
>облегченный язык с мизерным бинарником
Какой размер рантайма для хттп сервера с двумя ресурсами и сериализацией/десериалидацией жсонов?
>JS - это раздутый за 30 лет существования монстр с огромной спецификацией
Не пизди. JS это не WEB API.
>Ну у меня инвайты на собесы где-то с Мая резко упали с 3/мес до 1/мес.
Во-во, у меня раньше по 3 собеса в неделю было, сейчас нихуя инвайтов нет. Теперь приходится самому откликаться. Это признак конца.
Чего за собесы такие? Вы чего никак устроиться не можете или это альтернатива основной работе?
Давно работаю (почти 5 лет нга стеке), просто есть чувство, что мой бекенд мёртв и надо бы куда-то валить. А просто уходить в никуда нельзя, надо совмещать собесы и заработок
это альтернативно одаренные разработчики, которые долгое время устроиться не могут))00)), ибо выебываются много. А вот я с остальными волками(ААУУУУУ) - уже давно лутаю 300к наносек
>Не пизди. JS это не WEB API.
базза.
в ноде бля используешь ограниченный набор методов и приемов.
С каждым годом всё сложнее и сложнее находить новую работу, когда опыт и резюме только улучшается
Добавлю. Когда с 2мя годами опытами искал на 150к, у меня было по 3 собеса в неделю. Потом искал на 180к, было по собесу в неделю. ПОтом 200к, был уже собес в месяц(!!!)
Попробуй на getmatch поискать и где-нибудь зарубежом. Скорее всего дело в том что в РФ нода никому не нужна.
Там даже какая-то техподдержка есть. Мне hr с этого гетматч писали, давали всякие рекомендации, рекомендовали меня заказчикам. Другое дело что в моем случае (рякт фронтенд) там вариантов было не много и я там толком ничего не нашел подходящего. Там выше спрос как раз на ноду и ангуляр.
Так и на фронте обычно этот вебапи не трогается, так как работаешь с фреймфорком, который трогает дом за тебя.
Стандарт - это пыха, у на которой более 70% всего мирового бэкенда крутиться. Остальное не играющие роли мелочи.
// ==UserScript==
// @name 2ch Tree Post
// @namespace http://tampermonkey.net/
// @version 1.2
// @description Makes threads tree-like by sorting posts based on replies
// @author You
// @match http://2ch.hk//res/ (М)
// @match https://2ch.hk//res/ (М)
// @match http://2ch.life//res/
// @match https://2ch.life//res/
// @grant none
// @grant GM_addStyle
// ==/UserScript==
(function() {
"use strict";
console.time("tree script");
// Function to move the post and apply styles for creating the tree
function postMove(linkPost, newpost = false) {
const nodePostCurr = linkPost.closest('.post');
const postIDMatch = linkPost.innerText.match(/\d+/);
if (!postIDMatch) return;
const postID = postIDMatch[0];
const nodePostReply = document.querySelector(`#post-${postID}`);
// Skip if the link points to the OP post, another thread, or the post doesn't exist
if (/OP|→/.test(linkPost.innerText) || !nodePostReply) {
return;
}
nodePostReply.append(nodePostCurr);
if (newpost) {
nodePostCurr.addEventListener("click", () => {
nodePostCurr.style["border-left"] = "2px dashed";
}, { once: true });
}
}
// Find all links in posts and call the function for each post
const posts = document.querySelectorAll(`.post__message > :nth-child(1)[data-num]`);
posts.forEach(post => postMove(post));
// Observe for new posts appearing in the thread
const fromThreads = document.querySelector(".thread");
if (fromThreads) {
const observer = new MutationObserver((mutationRecords) => {
mutationRecords.forEach(record => {
record.addedNodes.forEach(node => {
const post = node.querySelector(`.post__message > :nth-child(1)[data-num]`);
if (post) {
postMove(post, true);
}
});
});
});
observer.observe(fromThreads, { childList: true });
}
console.timeEnd("tree script");
// Function to add custom styles
function GM_addStyle(css) {
const style = document.getElementById("GM_addStyleBy8626") || (function() {
const style = document.createElement('style');
style.type = 'text/css';
style.id = "GM_addStyleBy8626";
document.head.appendChild(style);
return style;
})();
const sheet = style.sheet;
sheet.insertRule(css, (sheet.rules || sheet.cssRules || []).length);
}
// Apply styles
GM_addStyle('.post .post_type_reply { border-left-color: white; }');
})();
// ==UserScript==
// @name 2ch Tree Post
// @namespace http://tampermonkey.net/
// @version 1.2
// @description Makes threads tree-like by sorting posts based on replies
// @author You
// @match http://2ch.hk//res/ (М)
// @match https://2ch.hk//res/ (М)
// @match http://2ch.life//res/
// @match https://2ch.life//res/
// @grant none
// @grant GM_addStyle
// ==/UserScript==
(function() {
"use strict";
console.time("tree script");
// Function to move the post and apply styles for creating the tree
function postMove(linkPost, newpost = false) {
const nodePostCurr = linkPost.closest('.post');
const postIDMatch = linkPost.innerText.match(/\d+/);
if (!postIDMatch) return;
const postID = postIDMatch[0];
const nodePostReply = document.querySelector(`#post-${postID}`);
// Skip if the link points to the OP post, another thread, or the post doesn't exist
if (/OP|→/.test(linkPost.innerText) || !nodePostReply) {
return;
}
nodePostReply.append(nodePostCurr);
if (newpost) {
nodePostCurr.addEventListener("click", () => {
nodePostCurr.style["border-left"] = "2px dashed";
}, { once: true });
}
}
// Find all links in posts and call the function for each post
const posts = document.querySelectorAll(`.post__message > :nth-child(1)[data-num]`);
posts.forEach(post => postMove(post));
// Observe for new posts appearing in the thread
const fromThreads = document.querySelector(".thread");
if (fromThreads) {
const observer = new MutationObserver((mutationRecords) => {
mutationRecords.forEach(record => {
record.addedNodes.forEach(node => {
const post = node.querySelector(`.post__message > :nth-child(1)[data-num]`);
if (post) {
postMove(post, true);
}
});
});
});
observer.observe(fromThreads, { childList: true });
}
console.timeEnd("tree script");
// Function to add custom styles
function GM_addStyle(css) {
const style = document.getElementById("GM_addStyleBy8626") || (function() {
const style = document.createElement('style');
style.type = 'text/css';
style.id = "GM_addStyleBy8626";
document.head.appendChild(style);
return style;
})();
const sheet = style.sheet;
sheet.insertRule(css, (sheet.rules || sheet.cssRules || []).length);
}
// Apply styles
GM_addStyle('.post .post_type_reply { border-left-color: white; }');
})();
Имеет в виду контекст выполнения очевидно, не?
Ну хз, довольно логично, как еще доставить кусок джс кода на страницу, если до этого там его не было? Правильно загрузить на страницу новый скрипт.
Довольно часто встречаю ноду как bff (прокладка между клиентом и легаси бэком, ну и не только легаси)
мимо джун 4 года
Макака, сеньерство по-твоему это хуйню заковыристую знать для всратых собесов? Это умение работать и выполнять задачи, коммуникация, выбор правильных решений, умение выстраивать отношения и объяснять, это огромный кусок опыта. И абсолютно похую веб это, игрульки или дрочня битов в железках.
>покупку
Да вас потреблядей вообще забанить надо.
Меня поражают вопросы А СТОИТ ЛИ ПОКУПАТЬ???
То есть, не "стоит ли читать", "что я получу от прочтения" и т.д.
а СТОИТ ЛИ ПОКУПАТЬ.
Какие же промытые, пиздос просто.
Что за отдельные версии сайтов, можно подробнее?
Всем сап, вопрос возник. Пытаюсь освоить Node.js для разработки веб приложения, чтобы оно с бд работало и документы обрабатывало. Пытался на голой ноде это сделать, но чем сильнее изучаю тем сильнее убеждают что с такими приколами надо использовать только связку ноды и экспресса, что на чистой ноде это куда более гемморно. Это так?
Смотря от задач, если всё примитивно, то можно и на http, если говнокода на десяток файлов - то сразу же, решительно, используй либу. Если нужно произвоидтельность, то можешь взять hyper-express, если хочешь быстро наговнокодить - nest.js хорош.
>>31558
>>31559
Модуль-то понятно что оборачивается, это нашёл, а если скрипт ничего не экспортирует? Хотя его можно обернуть в модуль, хм
Логично конечно, но никогда не знаешь что ожидать от стека js.
На чистой ноде можно сделать более элегантное решение, но потребуется время. Если хочешь побыстрее, то бери express/fastify. А лучше Nest.js, там можно шлепать круды одной командой.
Какой ужас, фреймворк на фреймворк
>Судя по материалам, мне даже трудно представить область задач где понадобится только чистая нода, максимум апи какое нибудь написать
На чистой ноде можно написать все что угодно и можно написать хорошо. Другое дело что продакшн разработка не про элегантные и продуманные решения, а про скорость высирания фич с сохранением относительно вменяемой структуры. Быстрее шлепать фичи чем на Nest.js пока еще не придумали. Это в том числе разрабы с других ЯП отмечают
Та я понял.
Да кому нахуй нужны джуниоры/начинающие. Во всём айти переизбыток программистов. Если вакансий 5 тысяч штук, а претендентов 10 тысяч, то куда деть остальные 5 тысяч человек? Они блять останутся без работы. Тем более, конкуренция на джуниоров в 10 раз выше. Если на обычную вакансию претендует 5 человек, то на джуниора смело умножай на десять = 50 человек на место. Ты даже не полноценный программист, ты делаешь только половину сайта (визуальную часть), нахуй ты кому обосрался.
Ищи не джуном. Ищи работу, как полноценный самостоятельный программист.
За полгода мог бы запилить несколько сайтов с нуля ради опыта, зафигачить там крутой фронтенд. Получил бы горы опыта, стал бы увереннее.
Вон тред был
https://2ch.hk/pr/res/3121177.html (М)
Мог бы в чём-нибудь таком поучаствовать. Набрался бы реального опыта.
Джуны не нужны, качайся сразу до обычного разработчика.
Так везде коммерческий опыт просят, где не джун/стажер. А пиздеть я не намерен в таких вопросах, потом сам себя сожру.
О треде таком не знал, спасибо, буду мониторить вдруг кому понадобится такой редкий кадр как фронтендер на реакте.
Ну так ты можешь получить реальный опыт самостоятельно. Просто займись чем-то реальным. Какой-то полноценный проект.
На гитхабе что-то найди, или ещё что-то типа такого.
Вот например сайт есть:
https://github.com/storybookjs/frontpage
Разверни его у себя локально. Изучай реальный код.
Редактируй.
Потом зайти в issues и начинай править баги, который там описаны.
Может быть даже свой pull request сделаешь когда-то.
Заодно гит изучишь. И что такое сторибук тоже узнаешь.
Ты СТОЛЬКО ОПЫТА получишь, не представляешь даже, если по-норомальному будешь вникать и разбираться. Учиться.
Потом просто скажешь на собесе, что неофициально работал. И это правда будет, птому что ты работал над реальным кодом.
>везде коммерческий опыт просят, где не джун/стажер
ЕСТЕСТВЕННО. У компании нету цели "помочь вон тому чуваку". Они нанимают ТЕБЯ чтобы ты ПОМОГ ИМ. Если бы компания всё знала и всё умела, нахуя им нужен ты?
Вы блять необучаемые. Везде просят опыт. Ты идёшь устраиваться на днищеработу за 30к чтобы получить опыт. А на эту днищеработу уже стоит очередь из сотни человек, чтобы тоже получить опыт. В итоге тебя шлют нахуй и даже не смотрят твоё резюме. Ты идёшь плакаться на двач и спрашивать чё мне делать. Тебе советуют врать про опыт. Ты идёшь накручиваешь опыт и где-то с сотой попытки кое-как устраиваешься на работу с зп как у курьера.
>Другое дело что продакшн разработка не про элегантные и продуманные решения, а про скорость высирания фич с сохранением относительно вменяемой структуры.
Сохранение кстати опционально. Понял тебя, спасибо за помощь
>На чистой ноде можно написать все что угодно и можно написать хорошо.
Судя по всему такое никто не делает кроме задротов
А если мне платят 90к это норм или говно пора дропать
>Ты идёшь устраиваться на днищеработу за 30к чтобы получить опыт. А на эту днищеработу уже стоит очередь из сотни человек,
преувеличваешь.
краснодар, ремонт электросамокатов, крупная компания, 3.5к в день.
это при том что устроиться без опыта очень легко там, если не шизофреник/даун.
в мск такой хуйни тоже навалом.
NextJs-TS
Синька чмо
https://hh.ru/vacancy/104200371
конкретно там работал в прошлом году.
еще вуш есть.
в миллиониках есть вакансии у них, крд, рнд, мск, спб, казань.
в поиск на хх электросамокат вбиваешь.
Тут ещё хуже, на самом деле. Регулярно обсуждают, как использовать CSS. Или обычный CSS или через tailwind.
Но иногда сюда заглядывает уважаемый господин Намбер Прототайп. Разбавляет обстановку.
А что ты от неё хочешь? Работает и работает.
> А пиздеть я не намерен в таких вопросах
Дебс, работа кому нужна? Тебе и работодателю? Я без опыта вкатился, причем в вакансии было написано было, что требуется мидл-синьёр. Напиздели, конечно, но и я напиздел.
пхп вордпресс энжоер, ты?
Джавист/котлинист вкатывает в жс и сидит в ахуе. Даже в питоне можно нормально объекты сравнивать. Почему у вас нет Symbol.equals и Symbol.hashCode?
>не можете даже два списка друг с другом сравнить.
Зачем нам гонять O(n) алгоритмы?
>Но если нужно хранить списки внутри Set? Set не умеет сравнивать по другому, кроме как по ссылке.
new Set([1,2,3]).isSubsetOf(new Set([1,2,3]))
> Как вы живёте без equals и hashCode??
Точно так же как живут бэкендеры. Загугли что такое ключ.
>Почему у вас нет Symbol.equals и Symbol.hashCode?
Потому что они нахуй не нужны. ТрупСтрауса уже даже вроде как признал, что перегрузка операторов это ебаное зло и из-за неё одни проблемы.
Прочитал я про эти equals и hashCode - там же самому нужно писать как сранивать, чем это лучше?
>Получается, каждый раз когда тебе что-то нужно сделать с этим сетом, придётся или кодировать в JSON или раскодировать обратно.
Зачем? Привёл к строке, сравнил строки. Всё.
>new Set([1,2,3]).isSubsetOf(new Set([1,2,3]))
У тебя здесь сет состоит из примитивов, а не из объектов.
>ТрупСтрауса уже даже вроде как признал, что перегрузка операторов это ебаное зло и из-за неё одни проблемы.
Причём тут перегрузка операторов? Я говорю о некоем универсальном способе сравнить объекты между собой. Необязательно через оператор. У вас этого нет, хотя это очень удобно. По сути без такого сравнения вообще нет смысла использовать Set для объектов. Или использовать объект как ключ в Map. Я так понимаю для таких случаев, как написал >>32343 , вы используете преобразование к строке?
>>32343
>Зачем? Привёл к строке, сравнил строки. Всё.
Я именно это и имел в виду. Через JSON проще всего привести некую структуру данных к строке, разве нет?
И с преобразованием в строку всё не так просто. Как пример, два сета: { 1, 2 } и { 2, 1 }. По сути они одинаковые, просто в разном порядке были добавлены элементы. Но при преобразовании в строку, нужно это учесть и отсортировать их. В джабе мне поебать, я могу без проблем использовать эти сеты как ключ в мапе. Я по первому сету в мапу что-то положил, затем по второму это же самое и достану. У вас придётся ебаться с переводом в строку, и не дай бог проебаться с неправильной сортировкой. Жесть какая-то.
>по сути они одинаковые
Нет, не одинаковые.
>я могу без проблем использовать эти сеты как ключ в мапе
Ты себе ребро удалил?
>Прочитал я про эти equals и hashCode - там же самому нужно писать как сранивать, чем это лучше?
Более универсально и производительно. Переводя объект в строку, ты по сути делаешь то же самое. Наверняка ваш сет под капотом точно так же считает хешкод для строк.
1. Универсально.
Имея функции equals и hashCode можно любой объект (с правильно определёнными этими функциями) использовать как ключ к мапе или внутри сета. И тебе не надо думать, как правильно приводить объект к строке, чтобы это работало всегда (чек кейс с сортировкой сета выше). Просто сравнивай поля объекта лооол. А если в поле сидит объект, то вызови equals у него. Все объекты имеют equals!
2. Производительно.
Не создаётся лишней строки, которая нужна просто чтобы что-то с чем то сравнить. Внутри equals сравниваются поля объекта напрямую. Хешкод вообще тупо считает целое число на основании полей объекта.
Это правда. Но из-за невозможности изменить механизм сравнения (всегда по ссылке) в этом нет особого смысла. Пустой список не равен другому пустому списку. И мапа используется такое же сравнение всегда.
Так и не должно. Один объект не равен другому. Это объекты. С чего бы сюда вдруг впихивать сравнение объектов по полям и значениям?
Офигеть. Мы мыслим вообще по-разному. Для меня эта такая неотъемлимая база, что когда у меня её забрали, я побежал сюда срать по этому поводу. А вас удивляет моё сраньё, и вы думаете нахуя оно надо.
Ладно, в принципе я ответ получил. Как ключ используй строку всегда и не еби мозги. Но я ещё буду в ахуе какое-то время.
>У тебя здесь сет состоит из примитивов, а не из объектов.
Нахуя тебе сет из объектов?
>Причём тут перегрузка операторов?
При том, что плюсовики уже обосрались с этим "универсальным" способом сравнения сложных структур данных. Это выглядит красиво в теории, но на практике это просто рассадник говнокода и багов.
>это очень удобно
Только в теории. На практике тебе как раз манипуляции с ключами намного чаще придется выполнять, чем ты думаешь.
>вы используете преобразование к строке?
Я только один такой случай знаю. И для него преобразование к строке на 100% достаточно.
>Для меня эта такая неотъемлимая база
Чел, ты вообще в курсе за сколько времени идет сравнение древовидных структур данных? Учитывая квалификацию большинства веб макак ты должен молиться за человека, который сделал в ЖС сравнение по ссылкам.
>Для меня эта такая неотъемлимая база
Это отклонение. Везде и всегда объекты сравниваются по ссылке. Если нужно сравнить структуру, поля и значения, то это отдельные специальные случаи со спец подходом.
>>32373
>>32376
Да, это правда. В большинстве случаев в сет/ключ мапы кидается айдишка/енам какой-нибудь. Хотя иногда бывает очень удобно какие-нибудь объекты-обёртки использовать как ключ. Приходится иногда что-нибудь связанной с датой и временем так юзать как пример, оч удобно просто закинуть стандарный LocalDate (класс представляющий чисто дату, без инфы о времени) сразу в мапу.
>Если нужно сравнить структуру, поля и значения, то это отдельные специальные случаи со спец подходом.
Меня просто смущает, что язык в принципе не предоставляет возможности такие спец подходы реализовывать со стандартными Map/Set. Мне как-то приходилось использовать композитный ключ из двух айдишек в мапе для чего-то. По сути да, можно привести к строке, но объект гораздо удобнее.
>Почему вы все ещё не свитчитесь в бекенд? Фронтенду же точно пиздец полный
как раз нет.
бекенд хуяк хуяк и все, а интерфейс переживает постоянные изменения и правки, т.е. работы больше как бы
>Я без опыта вкатился, причем в вакансии было написано было, что требуется мидл-синьёр. Напиздели, конечно, но и я напиздел.
Портфолио было, на собесе сильно гоняли?
>ТрупСтрауса уже даже вроде как признал, что перегрузка операторов это ебаное зло и из-за неё одни проблемы.
Анус твой не нужен.
в остальном конкуренция еще более бешенная.
При этом оба на ТС. Затипизированна вся хуйня.
>Были только тестовые задания. Спрашивали самую обычную хуйню.
в резюмешке много напиздел, какой опыт был указан, портфолио?
Напиздел много, 4 года нарисовал при нуле.
Имею в виду, что в портфолио были только тестовые задания. С чем в тестовых хоть немного имел дело, всё хуярил в опыт.
>Попробовал 5 разных - вечно что-то не работает или не реализовано/реализовано по даунски.
ты уверен что ты не испоганил что-то?
а то мухи везде видят говно, пчелы везде видят мед.
Печально видеть мёд, там где реально говно
Напиши на бекенде, попроси перевести чатгпт на жс.
Я на вот этом остановился https://tanstack.com/virtual/latest/docs/framework/react/react-virtual
Из всех опенсорсных, кстати, самым говном оказалась самая популярная либа.
В таких случаях спрашивают про то, какую проблему ты пытаешься решить. И всегда оказывается, что дебил вместо грамотной архитектуры и чистого кода, хочет себе сравнение объектов не по ссылке, а по значению его полей или хеша. При этом дебил даже и не задумывается о таком простом решении как добавление .uid поля и использовании его для определения, нужно тебе этот объект в сет складывать или нет.
Взял уже react-virtuoso. В основной массе вроде работает, но всё равно приходится вручную докостыливать скролл т.к. у меня данные лежат в деке и я её постоянно транкейчу до определённого объёма.
Ага, понял. Объект всегда должен восприниматься как true в булевых выражениях. Но a == b это не булево выражение, хотя его результат и булев. Конкретно в этом случае один из операндов - это примитив, и именно это заставляет объект-обёртку преобразоваться в примитив.
Используй строгое сравнение и будет щастье.
Была бы у нас перегрузка операторов, у нас был бы в джаваскрипте 3д движок уровня годот и АИ революция.
Чет в голос с говнокода в посте, вот тебе самый простой вариант:
const posts = [...document.getElementsByClassName("post")].slice(1);
posts.sort((p1, p2) => getRepliesLength(p2) - getRepliesLength(p1));
const thread = document.getElementsByClassName("thread")[0];
[...thread.children].forEach(c => c.remove());
posts.forEach(p => thread.appendChild(p));
function getRepliesLength(post) {
const repliesRefsContainer = post.querySelector(".post__refmap");
if (!repliesRefsContainer) {
return 0;
}
return repliesRefsContainer.children.length;
}
function getRepliesLength(post) {
const repliesRefsContainer = post.querySelector(".post__refmap");
if (!repliesRefsContainer) {
return 0;
}
return repliesRefsContainer.children.length;
}
Чет в голос с говнокода в посте, вот тебе самый простой вариант:
const posts = [...document.getElementsByClassName("post")].slice(1);
posts.sort((p1, p2) => getRepliesLength(p2) - getRepliesLength(p1));
const thread = document.getElementsByClassName("thread")[0];
[...thread.children].forEach(c => c.remove());
posts.forEach(p => thread.appendChild(p));
function getRepliesLength(post) {
const repliesRefsContainer = post.querySelector(".post__refmap");
if (!repliesRefsContainer) {
return 0;
}
return repliesRefsContainer.children.length;
}
function getRepliesLength(post) {
const repliesRefsContainer = post.querySelector(".post__refmap");
if (!repliesRefsContainer) {
return 0;
}
return repliesRefsContainer.children.length;
}
Он был вторым кандидатом, но там много лишнего и вроде не так прост в настройке оказался.
Базовые вещи настраиваются не сложнее чем в других либах, но частный случай инфинитскролла напердолить - це піздець.
Ну в этом твоём си есть перезагрузка методов. И чо? Когда увидим сталкер хттп сервер уровня экспресса?
Я так понимаю без html и css вкатываться в макакинг js смысла нету? Если так, то я перекатываюсь в другой язык. Синтаксис поучил, мышление понял и хватит с меня.
Есть. html и css на самом деле очень простые, когда выучишь flex и grid, сможешь сверстать почти любой макет
дебилы когда говорят о жабаскрипте постоянно подразумевают именно фронтенд
Прав во всем. А я завтыкал и продолжил ебаться с этим всем - теперь сижу в параше. Уже пять раз бы выдрочил нормальный язык и вкатился в него, нежели с этим "дизайнерским" говном ебался.
>Уже пять раз бы выдрочил нормальный язык и вкатился в него
хватит копиумом упарываться, раз не выдрочил значит мозгов нет.
и конкуренция на беке пизда, сейчас "дизайнеры" могут сами бек сделать из nocode services like firebase/appwrite/etc.
Для бэкенда тебе нужно будет знать SQL и работу с многопоточностью. И так в любой области, знаний только лишь синтаксиса языка нигде не достаточно.
И я установил rimraf и запускаю модуль локально из соседней папки и заработало. Но как мне тогда запускать из npm репозитория?
Это никак не связано с виндовс или линкус.
Это связано с тем установлен ли у меня римраф.
Ситуация 1: У нас установлен римраф в npm проекте мы находимся в папке с проектом, мы жмем
npx @ecma/module
работает.
Ситуация 2:
У нас нет римрафа в проекте.
npx @ecma/module
Не работает, а надо чтобы работало.
Гугл не может справиться с моим запросом. Он в принципе показывает только ответы для людей не различающих npx и npm. Но ты видимо тоже не различаешь.
>учи базу
>Начини с того как устроен любой node пакет, как он работает с зависимостями
>РЯЯ ГУГЛ НИСПРАВИЛСЯ ПАКАЗЫВАЕТ НИРАЗЛИЧАЮЩИХ!!!!!!!1 Я ТО ВОТ РАЗЛИЧАЮ Я УМНЫЙ ! А ГУГЛ ТУПОЙ НИПАКАЗАЛ
>...
>Надо было перенести rimraf из devDependencies в dependencies.
Надеюсь тебе хоть немного стыдно стало от собственной тупости.
Надеюсь что тебе стало стыдно от собственной тупости. Ведь ты кретин не различающий npm и npx.
Что значит любой пакет? Почему запускаемый с помощью npx пакет является любым пакетом? Это нихуя не любой пакет над ним надо попердолиться чтобы он запускался.
Вот я над ним попердолился и он запускался с римрафом в dev секции. И он запускался так полгода.
Чтобы папку удалить, дурачок.
Дегрод, во-первых, npx уже давно стал частью npm, во-вторых, все это инструменты для работы с node пакетами, ты же не изучил то с чем собираешься работать, пытаешься при этом использовать инструмент, закономерно срешь в штаны и продолжаешь ими трясти в публичном месте, хотя мог бы напрячь свой тухлый мозг и попытаться вникнуть в тему.
Вкат закрыт, уходи.
Не работает твой скрипт. А тот скрипт уже доработан в древовидные ответы, а не сортировку по количеству постов.
>с нуля
Год
>За какое время можно устроиться на работу мидлом?
Сразу после года ответственного изучения языка можно рисовать опыт и устраиваться мидлом
>сортировал посты в треде по ответам
Что и делает этот скрипт, сортирует по ответам, от наибольшего количества ответов к наименьшему.
Но ты слишком тупоголовый для того чтобы даже сформулировать свой запрос, чего уж тут о имплементации говорить.
Я про это и говорю. У меня не работает.
Пчел, в любой профессии болименее скил качается за 10_000 часов.
>Сколько времени уходит на изучение чистого JS с нуля?
БЛЯЯЯЯ!!!! Клиент покупает не знание ДжиЭс!!! Он покупает у тебя качественный сайт!!!! Это же не вещь в себе, ты программируешь не ради программирования!!! Помимо ДжиЭса там ещё миллион вещей: accessibility, адаптивность, seo-оптимизация, pwa, формы, скорость загрузки сайта и т.д. Будь ты хоть самим Господарем Богом ДжиЭса, если твой сайт тормозит, не оптимизирован для поисковиков, у него плохая адаптивность, то кому он нахуй нужен!!!! Знание ДжиЭса нужно не само по себе, а в связке с другими знаниями, которые помогут дать качественный сайт на выходе.
НЕЕЕТ НУЖНО ЗНАТЬ ЧЕМ ОТЛИЧАЕТСЯ КОНТЕКСТ ОТ ЛЕКСИЧЕСКОГО ОКРУЖЕНИЯ
Ващет было бы неплохо.
Работал у нас такой деятель. А чойта сервер раз в сутки падает? Так ведь в ноде всего полтора гига памяти, добавьте флажок)))
Щас бы обоссывать на собесах мемами для троллинга с двача.
А чем стековерфлоу ошибка хуже чем бесконечное зависание программы когда она пытается зацикленный объект обойти например?
Если программа упадёт это же лучше чем если программа зависнет.
Выход из цикла проще контролируется. В твоем случае ты всегда можешь проверить, что здесь ты уже был. Рекурсия плохо, когда глубина рекурсии зависит от пользовательского ввода. Ошибок быть не должно в любом случае. Если есть ошибка, то ее надо устранять. Если у глубина рекурсии зависит от ввода, то переполнение стека теоретически неустранимо. Переполнение стека может использоваться для того чтобы запустить зловредный код.
Сектанты, сектанты никогда не меняются.
Если не запустится - ещё лучше. Можно тебя просто уволить.
>В твоем случае ты всегда можешь проверить, что здесь ты уже был.
А если не могу?
>Ошибок быть не должно в любом случае.
Я могу ошибку в трайкеч завернуть. Завернуть зависание в трайкеч я не могу. Ты просто трясешься от слова ошибка, перестань трястись, это не помогает.
> Было бы славно иметь опыт разработки на vue.
Это то, что вижу в КАЖДОЙ нахуй пхп-вакансии. То есть я вполне могу свитчиться туда без потери зарплаты?
>А если не могу?
Всегда можешь, иначе ты не кодер, а макака.
>Я могу ошибку в трайкеч завернуть.
В жс навеное оверфлоу не происходит, там заранее Maximum call stack size exceeded error. Но ты привыкнешь так писать и не задумываясь говно на сишке напишешь. Там не будет исключения. А будет сегфолт. Шелкодеру похуй на твои трайкетчи. В жс мирке ломают распылением кучи.
>>34405
Причем здесь эксепшены и хттп коды?
Можешь если знаешь SQL. Работал долго фулкеком пхп жс. в том числе на вуе. Для красивых версток обычно был кадр который умеет верстать красиво. А фулкеки пилили правки и фичи на легаси вуе говнину. Но это их от бекенд задач не спасало. Кабану всегда надо какое-нибудь говно аналитическое из БД вытащить.
>Можешь если знаешь SQL
Очень хорошо знал и использовал года 4 - сначала в унике, потом полгода работы фулкеком. Сейчас все позабывал нахуй, но планирую уйти из фронтенда снова
> работал долго фулкеком
А сейчас куда свитчнулся? В обычный вуе что ли?
>и не задумываясь говно на сишке напишешь.
Мы же всегда должны думать о том че я напишу на сишке когда устраиваемся джаваскриптизером.
Короч опять ничего кроме тряски.
И все твои тряски всё еще никак не решают проблемы с зависанием.
Допустим я проверил что мы тут были. А если зависло по какой-то другой причине? Например мы неправильно проверили. У юзера завис браузер вместо того чтобы насрать в консоль как нормальный человек.
Зацикливаться будет только у дебса без мозгов. Нормальный чел всегда предпочтет цикл. Если нуден стек, он явно стек создаст. Кол стек в жс если не пуст, блокирует обработку ивент лупа. Так что ты и со свой рекурсией можешь браузер повесить, если у тебя будет неопределенное число коллов.
>Кол стек в жс если не пуст, блокирует обработку ивент лупа.
Ебать ты братишка долбоеб. Цикл тоже блокирует и это и есть зависание, кретин блядь. Всё я катапультируюсь чтобы тупостью не заразиться. Трясунчик испугался слова ошибка и выдумал какую-то срань.
Нет ты. Ты зачем-то написал, что пеимущество рекурсии в том что брузер не зависает. Я так и написал, что у дебса браузер всегда зависнет. Нет такого преимущества. Цикл просто контролируется лучше, логичнее. Читай не жопой.
>Цикл просто контролируется лучше, логичнее.
А логика в том что его нельзя остановить блядь. Его можно остановить если мы сделали 10000 итераций. Поздравляю ты наколхозил стековерфлоу рядом с нативным, гениально.
Лучше всего свитчиться в ангуляр. Предметная область та же, просто стек немного другой. Пыха это дыра ебаная, свитчиться с фронта туда это боль. Плюс будет падение зп, так как в связке пыха + вуе от тебя будут требовать в первую очередь опыт в пыхе, которого у тебя совсем нет. А в ангуляре просто научишься делать все то что умеешь на новом фреймворке и все.
> Его можно остановить если мы сделали 10000 итераций
Откуда ты это взял?
Всегда надо продумывать условия выхода и инварианты.
Что касается эксепшенов это совсем другая тема, не относящаяся к рекурсии и циклам. Эксепшены в логике == GOTO оператор. Эксепшены предназначены не для обработки ветвлений логики, а для случая когда логика нарушается с данными условиями. Для ветвлений есть IF
>которого у тебя совсем нет
В пыхе есть, но всего полгода. Все забыл нахуй
> В ангуляр
Вот это пиздатый фреймворк, да. У меня коллеги укатились из вуе в него. Я бы тоже укатился, но скорее всего не успею - кабан осенью сократит половину штата, а я должен к тому времени найти новую работу. Буду искать опять вуе
В вуе даже Го танцовщица вкатилась (по ее словам в мвп, пару лет назад, зепку сеньки получала). Чего ты хочешь...
Готовь финансовую подушку безопасности (хотя вообще она всегда должна быть)
Да там дело даже не в нищете, а в целом в бесперспективности. Перспективы, хорошие бабки - это крупный продукт (в частности бигтех). А там реакт и ангуляр. На бэке го или джэва, а никак не пыха.
>А там реакт
Я пытался вкатиться в рякт (целый год писал на нем петы и курсачи), но из-за конкуренции не смог даже с годом накрученного опыта - а вот на вую с 0 залетел. Поэтому его даже не рассматриваю
> ангуляр
Хотеть. Еще это перспективно хотя бы по той части, что реально знаю людей, которые укатались ангулярщиками в бигтех. А уже там без потери зп укатились в ямл-девелоперов (девопсин) и гошников
Но я пока просто облизываюсь. Хочу дорисовать опыт и пойти хотя бы работать за норм зепкумне уже нечего терять - я 10-11 месяцев вчерную "стажировался" у первого кабана. А возьмут ли меня после 2-3 лет в ангулярщики вуи - хуй знает
>А возьмут ли меня после 2-3 лет в ангулярщики вуи
А возьмут ли меня после 2-3 лет вуи в ангулярщики
>Перспективы, хорошие бабки - это крупный продукт (в частности бигтех)
Нихуя подобного. Бигтех это та же помойка, что и галера. Перспективы и хорошие бабки в реалиях СНГ наверное есть только во всяких нелегальных казиках и мутных конторах. Ну и вне СНГ работу на западного или арабского барина.
помидор из яндекса
>реалиях СНГ наверное есть только во всяких нелегальных казиках и мутных контора
Помидор, а как потом пруфать, что работал там? Я вот поработал у первого кабана в серую и уже трясусь, что не пройду куда-то проверку сб. А тут годы отдать крипто-, полулегальной, базирующейся в Таиланде помойке?
>помидор из яндекса
Имелся в виду остальной бигтех. Сбер, Тинек, другие банки, Авито и пр. Про Яндекс многие плохо отзываются почему-то.
Нужна своя криптопомойка и нанимать жс ждунов за еду...
>Перспективы, хорошие бабки - это крупный продукт
Это если ты корпоративная мразь.
Если нравится писать код, то лучше в мелких стартапах.
Так было раньше. Когда на программистов был спрос и человек с опытом мог найти новую работу за неделю. Сейчас ты устраиваешься каким-то чудом в стартап, минуя стаю нарисовавших опыт волков, затем твой стартап скамится через год, как и 90% всех остальных стартапов и вот ты опять сидишь без работы и конкурируешь с волками. Сейчас актуальны надежные варианты, когда можно сесть на проект и сидеть там несколько лет стабильно и получать бабло. Ведь каждое увольнение может теперь стать последним...
>Про Яндекс многие плохо отзываются почему-то.
Раньше яндех платил зепку сильно ниже рынка. Сейчас уже ситуация выровнилась и яндех вполне норм бигтех.
>>34509
>а как потом пруфать, что работал там?
А нахуя? Это нужно только всяким миддл и ниже, все что выше легко понять в рамках разговора о том, что человек делал на прошлой работе. У меня вообще собес на помидора в один из бигтехов был с простейшей тех секцией и просто побазарить с тимлидом. Все. Даже литкод секции не было.
>уже трясусь, что не пройду куда-то проверку сб.
Ну не пройдешь - пойдешь в другое место. Если ты тру сеньор тебя с руками оторвут.
>Ну не пройдешь - пойдешь в другое место. Если ты тру сеньор тебя с руками оторвут.
У меня пара лет вуе ну и мне 22 всего. Хочу крутануть до 3, и то - ссу. Поэтому мне до синьора очень далеко
> А нахуя? Это нужно только всяким миддл и ниже
Кхм. Я думал, что наоборот нужно больше пруфать всяким претендентам на место лида или помидора
>У меня пара лет вуе
Так у меня реальных 2.5 года ряхта.
>нужно больше пруфать всяким претендентам на место лида или помидора
Ну вот пруфанешь своими предыдущими проектами, которыми ты занимался. Расскажешь про технологии, проблемы с которыми столкнулся и оффер у тебя в кармане.
Я не про рендеринг компонентов.
Я не про кастомный консоль-лог.
Я не про isLoading для отслеживания загрузки.
Я не про срать на двощах.
Я не про темную магию.
Я не про генерацию регексов.
Я не про намбер прототайп.
На собесах спрашивают часто. Больше задач нет.
А кому-нибудь из бекендеров на JS/TS сами пишут эйчары? Вот типо приглашают на собес, пишут в личку.
Ну на хх если открыта резюмешка, бывает шерстят хрки, там видно кто смотрел. Так что нормально получать какие-то предложения, если реально спэц.
Естественно что если опыта менее 2-3 лет, ты мало кому интересен в айти сфере.
У меня суммарно более 8. Всё равно не смотрят и не пишут.
Отзывы пишут обученные менеджеры.
>Пока нету понимания как хоть на базовом уровне фильтровать компании
Это знание придёт лишь с сеньорности. До этого надо пройти сотню собесов
Такие сычи как я, кайфуют от удалёнки и чтобы не больше тысячи строк в неделю.
>с удовольствием катается в офис
нужно жить так, что бы не приходилось съебывать в офис от твоего тнуса и тугосерь.
Практически никак
>вообще ахуел, вкатун еще и фильтрует что-то кроме пиздежа гнилого
Это. Чем более низкокачественный кабан тем тебе лучше. Твоя задача за опыт работать сейчас.
> Чем более низкокачественный кабан тем тебе лучше
Мой первый кабан платил мне со старта 40 и за год поднял до 70. Но при этом я почти первый год работал в черную и только потом устроили по трудовой. Теперь я похож на волка
Поэтому вредные советы даешь. Лучше устроиться к кабану получше
>Но при этом я почти первый год работал в черную и только потом устроили по трудовой. Теперь я похож на волка
и похер.
ты работал над портфолио, какие-нибудь классне прикольные штуки делал? это показательно для РАБотодателя.
и между строк все равно чувствуется, человек реально крепкий спэц, или пиздаболволк
>ты работал над портфолио, какие-нибудь классне прикольные штуки делал? это показательно для РАБотодателя.
Хуярил как не в себя. Но возможно скоро всем станет похуй на это и будут требовать выписки с трудовой из 500000 человек на ваку
Но после этого менял работу 2 раза и пока не требовали
>Но возможно скоро всем станет похуй на это и будут
ну как бы нет.
эйчарка смотрит 2 одинаковых резюме - у обоих +/- попыт указан, скиллы, вышшка.
а другого еще и ссылка на портфолио, которые можно потыкать - она потратит на тебя больше времени, по работам впечатление уже какое-то положительное будет возможно.
в совокупности это мощно может забустить успех.
Даже не знаю что это такое. Слышал что это секретное свойство у объектов, пока не тыкал, да и хуй с ним.
Middle+ JavaScript Developer
Вниманиеблядь, тебя еще не забанили?
Почему-то такое чувство, что это Павел щитпостит тут. Похоже когда моча выпилила возможность рекламиться этому додику, тот решил демеджконтрить и получать внимание другим способом.
Получил внимание у тебя за щекой. Порекламился своим додиком тебе по губам.
Middle+ JavaScript Developer
Вот это манямир. Как там в 2019-м?
>эйчарка смотрит 2 одинаковых резюме - у обоих +/- попыт указан, скиллы, вышшка.
>а другого еще и ссылка на портфолио, которые можно потыкать - она потратит на тебя больше времени, по работам впечатление уже какое-то положительное будет возможно.
Сейчас это не так делается. Эйчарка размещает вакансию, получает 100+ откликов в первый час, берет наугад штук 20 одинаковых резюме (просмотр всей инфы по соискателю занимает около 10 секунд, акцент идет на цыферку попыта и подробность заполнения обязанностей на прошлых работах). Этих 20 человек записывают на собесы, остальные отправляются на помойку. Из 20 человек всегда кто-то находится подходящий, если нет, то цикл повторяется.
На околоджунских вакансиях еще дают тестовые и отсеивают по тем, кто этот тест сделал, а потом см. прошлый абзац. На это на вакухах 1-3 опыта. На 3-6 такого не встречал.
Твой пет вообще нахер никому не обосрался, никто даже не будет открывать твою хуйню. Ссылку на гитхуб есть смысл разместить в CV просто чтоб была. Это как и ссылки на другие соцсетки может пойти в плюс.
Думаю под портфолио он имел в виду не туду листы и сверхниАбыЧные пет-проекты (и на те, и на те похуй всем. Только ебланы убьют на них время), а ссылки на реальных проекты, которые делали с кабанычем
Пилил сервис в edtech платформе - заебись
Запилил пару реальных магазинов елдаков с 10 к постоянных пользователей в секунду - заебись
И чтобы при этом было +2-3 года опыта. И чтобы можно было пруфануть его звонком кабанчику, трудовой, гпх или сз налогами
А вкатуны идут нахуй
>а ссылки на реальных проекты, которые делали с кабанычем
В любой нормальной компании код проекта попадает под NDA, работа с кодом как правило ведется с рабочего аккаунта гитхаб/гитлаб, а сам код находится в приватной репе. Это как бы база. Конечно в стартапе "Рога и копыта" на это все могут положить хер, вот только работодатель хочет слышать как ты за свои 3+ года работы успел поработать в крупном продукте со сложными задачами, возможно в бигтехе и соответственно с нормальной безопасностью и политикой неразглашения, а не "смотрите я вот магазин дилдаков делол, полюбуйтесь на исходники". Как раз вот такие открытые говнопроекты это палево. Лучше уж в попенсурц коммитить, это хотя бы честно. Пускай и бесполезно.
>В любой нормальной компании код проекта попадает под NDA
Да бля, я не исходники имел в виду (конечно они все нахуй будут лежать в приватных репах. По крайней мере у меня так было), а именно кучу урлов на сервисы, сайты елдаков или приложения
А вот если и разрабатываемый сервис под NDA на уровне упоминания (все нахуй под NDA, хотя чел работал якобы в паре компаний), или если сайты по урлам это демо-проекты с lorem ipsum, то это волчара и его надо хуярить
А если Славик проработал 4 года, разрабатывая CRM для финтехов, которые он по ссылкам запруфать не может, то его опыт выходит нерелевантен? Лучше вместо него взять Ваню, у которого есть запруфаный магазин дилдаков? Всякие SaaS продукты/стартапы так же являются админками под авторизацией, которые ты хрюшке не перекинешь.
>на хедхантере без отзывов, сайт если и указан то всратый или нерабочий вовсе
Бля а ты не думал, что это рекрутинговая компания? Это возможно частники-посредники между тобой и самой компанией. Им откатывают некоторую сумму за нанятого кандидата, допустим 50к. Вот они набрали 10 человек и получили пол-ляма. Естественно нахуй у них нет отзывов. А какие там должны быть отзывы? Или допустим, какой ты сайт ждёшь? Типа "мы рекрутинговая компания найми-лоха, оказываем услуги найма"? Нуууу иииии? Вот ты увидел сайт и телефон и чё дальше...? Чё произойдёт-то я не пойму...? Вы позвонили в рекрутинговое агентство "найми-лоха", чем можем быть вам полезны?
>А если Славик проработал 4 года, разрабатывая CRM для финтехов
Финтех сделает ему наверняка норм запись в трудовой без наебалова (хотя не сделать ни одного публичного сайта за 4-5 лет это удивительно необычно). А ИП Саркесян может и не поставить, и вот тогда твоему Ване придется пруфать дилдаками
Не знаю, я в этом всем зеленый поэтому и спрашиваю. Но твоя идея звучит крайне странно, лишний головняк.
>Не знаю, я в этом всем зеленый поэтому и спрашиваю. Но твоя идея звучит крайне странно, лишний головняк.
В чём головняк? В том, что челик посидел, посмотрела резюмешки пару недель и получила 10-15% от годовой зп программиста? Посмотри внимательно на названия компаний, которые публикуют вакансии: процентов 50% особенно всяких джуниор-вакансий публикуют рекрутинговые агентства. Они получают первую зарплату программиста. Если программист получает 150 тысяч, рекрутеру откатывается ровно 150к. Этих рекрутеров развелось как собак нерезанных. Они даже сканируют гитхаб например, и вылавливают даже там разрабов, пишут на почту.
Что думает за такое тестовое?
Я думаю, они реальную задачу раздробили на мелкие задачи и выдают их в виде тестовых, а потом собирают воедино.
>Я думаю, они реальную задачу раздробили на мелкие задачи и выдают их в виде тестовых, а потом собирают воедино.
чялодой малавек, не будем скочивать ваши вирусы, тут на лухи обидают.
предоставь линк на hh of employer.
Согласен, выглядит как будто хотят чтобы на них бесплатно поработали.
Недавно, для определения является ли инсианс класса производным определенного супер класса.
Я чёт ваще не выкупаю.
вкатывальщик, время от времени мозг опухает от количества информации
А, понял, спасибо. Если я объявляю в параметрах она остаётся в глобал скопе, а если внутри, то во внутреннем скопе функции.
Получается если я хочу избежать ужасов мутации, то я всегда ввожу переменную внутри функции?
>Получается если я хочу избежать ужасов мутации, то я всегда ввожу переменную внутри функции?
Почитай про ооп и функциональную парадигму.
Совсем немного, там описываются варианты написания структуры кода.
Если ты держишь какой-нибудь объект в руте, то это называется бог-объект и за такое Динамик карает.
Пишешь классы/функции. В каждой функции объявляются переменные, которые будут использованны внутри этой функции, каждая функция не должна быть на сотни строк. На пару, пару десятков-максимум.
Делаешь функции, которые принимают в себя параметры, внутри этой функции работаешь с параметрами, для упрощения кода объявляешь в этой функции дугие переменные.
Ну вот в том и дело, что это не одно и тоже. гугли InstanceOf и isPrototypeOf
Примитивы передаются по значению, так что оба три примера в некотором роде монопенисуальны.
Калич, тем более последние не переведены.
Вкратце попробую объяснить.
Не очень хорошая идея - использовать внутри функции какие-либо переменные извне. Это значит что функция зависит от того места в программе, где её написали, при том (не глядя в код функции) не ясно, от чего именно она зависит.
Лучше воспринимай функцию как нечто существующее отдельно (по-хорошему она и должна быть в отдельном файле, ну там export/import, но это потом).
Если какая-то переменная создаётся внутри функции - это ок, после выхода из функции она испарится. Можешь вернуть это значение через return, если например вычислял что-то.
Если нужно использовать значения извне - это параметры. function(па, ра, ме, тры){} - теперь функция не зависит от конкретной переменной, а может вызываться с любой.
Некоторые считают, что функция должна быть чистой, т.е. не изменять состояние этих переменных. (Если параметр это примитив, например число, то твоя функция не изменит переменную, которую ты туда послал, только внутри себя. Но если послать в функцию массив и поменять его внутри неё, он изменится и снаружи). Это приводит к неожиданным ситуациям, например ты захотел отсортировать массив и получить первое значение в нём, но сам массив тебе нужен в исходном состоянии. Функция [].sort мутирует массив, из-за чего тебе придется вначале сделать копию массива. А функция [].toSorted вернет копию, не тронув изначальный, и ты уже сам решишь что с ним делать.
А кстати функции, которые могут зависеть от внешних переменных, лучше (вместе с этими переменными) оформить в общий класс, чтобы было ясно что они не существуют в отдельности от этих переменных. Но классы это опять же потом, на десерт. Надеюсь помог )
Чтож, он и сам не знал JS.
>захотел отсортировать массив и получить первое значение в нём
Я бы тебе в руки насрал, принеси ты такое на ревью.
Зептасекундный оптимизатор, спокнись.
Нихуя подобного. 50 \ 50 я бы сказал. Чаще собешусь с откровенными задротами и лидами
С таким раскладом мне будут капать хоть какие-то приглашения и могу рассчитывать хотя бы на 130-160 к? Или все же крутануть год или два попыта
Каковы шансы найти работу на удаленке?
Просто у меня манямирок, в котором я делаю пару пет-проектов, начинаю проходить собеседования - и нахожу работу на удаленке, даже ходить никуда не надо.
Все, не вставая с кресла.
Такое возможно?
Не. Я даже с накрученными 1.5 годами опыта не нашел ее в 2022 и пересел на другой фреймворк
Необязательно спешить туда вуатываться. Я видел всего 5 svelte-вакансий за 3-4 года. Но зато каждая из них предполагала, "что нам похуй, если вы писали 3 года на вью или ректале - все равно возьмем"
Да.
Правда не ясно нахуй тебе експресс.
Фулстаком тебе вряд ли устроится.
NextJs (не NestJs) тебе надо учить. Либы. И всякое фронтовое. А не эти ваши кривые бекенды.
Полностью согласен и поддерживаю, но на нём ноль работы. И пока что не предвидится.
Я небольшой курс по ноде + экспрессу + монго глянул, в целом показалось полезным, многое встало на свои места, что раньше казалось какой-то магией черной. Но фулстак искать в любом случае не пытаюсь, это все явно не те скиллы которые я готов продавать.
А некстжс сейчас база, надо уметь.
Хз я с пол года опыта устроился, дали тестовое, чат на вебсокетах и на фронте виртуализацию. Так что если нормально выучишь, то устроишся, главное ищи где тестовое дают.
Либо опыт, либо тестовое. Я одно сделал за все время пока искал работу.
> тестовые зазря
Тестовые и вправду хуйня, согласен. И слышал, что в 99% случаев их игнорят после отправки обратно компаниям
Но у меня другая хуйня. 3 раза из 3 я получал работу после тестовых. Где-то было тестовое на 15 минут во время созвона (первая работа), где-то же на целую ночь (последняя)
Значит перед автокликом по "откликнуться" будем спрашивать у апи чатгпт, содержит ли вакансия подобную ловушку.
Следующий шаг - решите капчу чтобы откликнуться...
Middle+ JavaScript Developer
Нахуй съебал, вниманиеблядь несчастная.
Что за дебильная бездарная причина по которой они делают такие обложки?
Любая книга от O'REILLY - НОРМ. Совсем уж лютую хуйню они не выпускают. Главное смотри объём и год выпуска.
Да для CSS любой источник подойдет. Один хуй везде где я работал верстают кое-как, лишь бы на макет +- походило.
Ну так чини, ебалай. Разворачивай все скрипты в CDN где и сервера
выкинь свой роутер
> почему оно иногда что-то не прогружает и вываливает ошибки в калсоль и как это фиксить
Браузерным кэшированием, сжатием и ретраями.
Первый язык программиста - английский.
В ноду на базовом уровне умею, в связке с экспрессом.
Как работу найдешь тогда и занимайся чем-нибудь другим.
А пока ты юзлесс вкатун без какого либо опыта и навыков.
Твои "знания" не знания без ком. опыта, а юзлесс хуйня.
Я не спорю, но пока откликаюсь (а как известно это процесс не быстрый) хочется при деле быть.
Теорию учи. Литкоды решай. Петы пили.
Распылишься на десяток язков/фрейморков - будешь как местный шизик Ученый тут бесноваться.
Я занимаюсь около двух лет, теорию выучил уже как с год наверное, петов тоже с десяток просто учебных и штук пять "своих, качественных". Ну и с литкодом я не справился, решал на codewars. До каких-то крутых задач не дошел, после первой сотни душить начало капитально.
Жиза конечно
мимо изучил три фронтенд фреймворка и четыре бекенд фремворка и пять языков программирования
Найди на гитхабе какой-нибудь попенсорц и начни там чинить баги.
Херочки текут от контрибуторов.
бред про херочек
Бред ебанный
Один инфоцыган (Антон Назаров) устроил эксперимент. Попросил синьоров убрать весь коммерческий опыт из резюме, но оставить их опыт в опенсорсе, вышку, опыт в разработке полезных распространенных либ и так далее
В итоге 0 приглашений из 2000
Какой фреймворк сейчас самый актуальный?
У нас используют react, можете посоветовать годные бесплатные онлайн курсы\материалы по нему?
>>40519
Или учи тот, который хорошо сочетается с твоим стеком и часто объединяется с ним в единый стек
Пишешь на пхп - учи вью
Пишешь на сишарпе - учи ангуляр или Реакт
И так далее. Главное учи что-то из великой тройки (Реакт, вью, ангуляр), а не ноунейм фреймы, которые могут быть хороши, но их нет в проде РФ (свелт, солид, астро и так далее)
Я сам с ним не работаю, у нас фронты отдельно и они с ним работают. Я тут точно на беке останусь, чисто для себя хочу поучить, просто времени до фига свободного
Спасибо за ответ энивей
И в твоём случае необязательно учить SSR-метафреймворки. Достаточно попробовать потрогать SPA и дальше работать настоящим инженером, а не фронтендером
Svelte.
Какие курсы если ты уже работаешь? Это фреймворк - берешь документацию и используешь. Остальное приходит с практикой. Учить можешь что-то из этого - React, Vue, Angular (по убыванию популярности). Остальное это мертворожденное дерьмо на котором только легаси пишут.
Для выводов не хватает статистики по откликам с добавлением опыта.
Ну логично предположить, если человек контрибутит Линусу, то на вакансиях фронтенда это не нужно.
>верить экспериментам инфоцыгана
А ты не очень умный, да? Чел буквально учит накручивать опыт == обманывать других. Что мешает ему также "крутить" эксперименты для того того чтобы набирать просмотры и популярность?
Хуя шизик порвался. А вообще такие люди просто не пройдут автофильтра, даже несмотря на опыт в опенсорсе. И их существование (автофильтров) уже никто не отрицает - даже хрюши с кабанами
Да, не учите ноду, она непопулярна и работы нет, платят очень мало, конкуренция высокая, тут всё плохо.
Мимонодобекендер
Обычно примерно столько же, сколько и в других стеках. Но вот в крипте бекенд на ноде очень популярен, там платят ощутимо больше среднего.
А на нодежс все сразу - высокая конкуренция, нет работы и не нужны вкатыши...
С чего бы там не было конкуренции, если каждая фронтенд макака - ниибатца ноуджиес бекендер?
нету там нихуя работы, только в офис кататься как ебалай
- мимо бекендер с 5 годами опыта, за неделю ни одного оффера
Пиздеж
Щас уже и на пэхапэ с 1с начинается конкуренция
А на сладкую ноду будучи фронтендером руки сами тянутся перейти
Лучше решай литкоды, их сейчас уже даже в рогах и копытах просят решать, особенно если ты джун. Учи полезные в работе функции (debounce, throttle, compose/pipe, deepEqual...). На собесе тебя могут попросить написать кастомный промис или promiseAll, ты не должен обосраться на этом. Учи задачи типа "Чему равно this вот в этой хуйне" и "Назови очередность выводов в консоль в промисах, таймаутах, асинках" - эту всю херню тебя практически гарантированно спросят. Про паттерны GoF тоже почитай, адаптированные под жиес (есть в doka guide) и про SOLID, это тоже уже везде спрашивают. Ну и всякую такую хуйню.
Нет не бэкендер. Даже простой запрос в базу с первого раза не напишет и кролика не подключит.
Я тебе говорю чистосердечно, 2-3 года назад у меня с МЕНЬШИМ СТАЖЕМ офферы были по 3 за неделю
Спасибо за краткий гайд, анон. Как раз осенью буду менять работу. Но как глубоко нужно решать литкод - изи или желательно медиумы-харды? И именно литкод или самые типовые js-задачи*
Мимо вуеист с парой лет опыта
Ты где-то не там смотришь. Я смотрю в телеге группы по работе, смотрю в других сервисах-аналогах хэхэру, вакух по ноде достаточно. Вот ректала (без ноды) действительно нигде нет. Вот там пиздец с работой. А нода щас как ангуляр примерно. Работы может быть и не валом, но ломится туда народу не много и работа в целом достойная (почти везде Nestjs, а не легаси экспресс)
Чел, ты вообще не в курсе что в мире происходит? 2-3 года назад рынок труда был намного лучше во всех стеках и во всех странах, при чём тут блядь нода, лол.
>стек говна
PGSQL, RabbitMQ, MongoDB, Clickhouse
Node, nest, express, fastify (typescript!)
Чисто на этом 5 лет писал
>Ты либо не там смотришь
ххру
Тут дело прежде всего не в сложности, а в понимании шаблонов по которым решается большинство задач. Почитай вот тут (https://ru.hexlet.io/blog/posts/grokaem-algoritmy-gayd-po-algoritmam-dlya-teh-komu-slozhno-reshat-zadachi). Главное по условию задачи сдетектить какой шаблон где использовать. Выбираешь задачи по шаблону, например sliding window (можно изи можно медиум), решаешь несколько, переходишь к следующему шаблону. Еще смотри литкод марафоны с объяснением как что решается. Так быстрее придет понимание что как решать, а это главное, потому что на собесах прежде всего смотрят в какую сторону мыслишь и есть ли у тебя понимание как делать, а не просто бессистемный пердолинг.
Чел ну это кринж. В ноду вкатываются скучающие фронтендеры, которым надоело красить кнопки и хочется заняться чем-то другим. Вкатываться прям с нуля чисто на нодобэк и работать чисто нодобэкером это же шляпа полная. Свитчись скорее в го.
>Вкатываться прям с нуля чисто на нодобэк и работать чисто нодобэкером это же шляпа полная
Я так и сделал, в чём шляпа?
>Свитчись скорее в го.
Нах мне ещё один язык учить, если мне будут платить столько же, а скорее меньше? Ещё и работа будет сложнее и неприятнее, не нравится го.
>>41037
Ты сам откликаться не пробовал? Ты не какой-нибудь Тимур Шемсединов чтобы тебе по 3 оффера в неделю делали.
>Ты сам откликаться не пробовал?
Да, я именно так и нашёл текущую компанию. Отклинулся, прошёл адовое собеседование и вот я тут веслаю. Но мне нужна зарплата повыше с 5ю то годами
Что за компания, тир 3 галера какая-нибудь? Продуктовые тир 1 компании отлично платят, и тем более криптостартапы, ещё и полную удалёнку дают и зарплату в USDT.
>и зарплату в USDT
Лол, эта та хуйня, если ты выводшь 50 тысяч рублей, за тобой приезжает минивэн из ФСБ? Охуенный план, надёжный как швейцарские часы
Твои маняфантазии не имеют ничего общего с реальностью. Для меня зарплата в USDT преимущество, но такие компании при желании спокойно оформляют контракт для трясунчиков вроде тебя, правда с юрлицом любой страны кроме РФ.
>Нах мне ещё один язык учить
Го легкий, учится за неделю
>Ещё и работа будет сложнее и неприятнее
Зато будет. Сейчас го на подъеме
>Го легкий, учится за неделю
Я на нём уже писал и никогда не хочу делать это снова.
>Зато будет. Сейчас го на подъеме
У меня и так есть, нода тоже на подъеме, нест с каждым годом популярнее, практически каждый модный криптостартап берет для бекенда ноду (на ней не всё, очевидно - ботлнеки на го/расте) и заливает разработчиков VCшным баблом.
>Я на нём уже писал и никогда не хочу делать это снова.
Именно та причина, по которой надо вкладываться в голанг, но макаки всё не поймут
>криптостартап
А нахуй надо там работать? У меня за аренду рублями платить так-то надо, а не хомякойнами
>А нахуй надо там работать?
Хорошие условия, интересные задачи, много платят.
>У меня за аренду рублями платить так-то надо, а не хомякойнами
В чем проблема обменять крипту на рубли? Не нравится крипта получай зарплату в долларах США.
>>41098
>Надо быть мазохистом
Хорошо, но пожалуй я оставлю тебе твои фетиши.
>В чем проблема обменять крипту на рубли?
Нарушение ФЗ182, нелегальная банковская деятельность. пару таких переводов по 30 тысяч рублей в месяц и ты уже в тюрьме.
Хрюкни
>Нарушение ФЗ182, нелегальная банковская деятельность
Нет, ты троллишь?
>пару таких переводов по 30 тысяч рублей в месяц и ты уже в тюрьме.
Ладно, я понял, ты откровенно толстишь.
Если ты о алгоритмах, а судя по посту снизу ты о них, то я искренне не понимаю зачем они упали. Я согласен со всем остальным, в частности дроча на всю эту историю с callstack и eventloop, особенно в крупных компаниях. Но алгоритмы мне зачем? Я понимаю что это один из способов демонстрации "АНАЛитического склада ума", но в рамках фронтенда это все неприменимо ведь.
Там вакансии для плебса, зачем ты туда заходишь
В онгуляре есть либа zone.js она занимается прехватом всех асинхронных задач (не как цель а как средство). В принципе же можно похожий планировщик сделать
Вот этого двачую, все что назвал спрашивали, еще сети поверхностно, и TS
Упали кому? Собеседующим нужен надежный инструмент, чтобы отбривать волков и вкатышей. И литкоды подходят лучше всего. Если собеседуемый хоть что-то понимает, значит он не поленился заморочиться и ему программирование интересно.
Что за каналы?
Мы вам перезвоним. (нет)
С одной стороны там просто сконцентрированная инфа (местами по верхам и не углублённо) без всякого говна. С другой - как будто навык чтения документации при этом не нарабатывается от слова совсем, потому что дифиченто с видео тебе и так всё рассказал и показал и как бы смысла туда лезть гораздо меньше, а если и лезешь, то можешь охуеть от того, что там всё не так похоже на твой код.
Есть деньги - учись. Только в резюме не пиши об этом.
Учись по англоязычным пиратским. В факе были названия, попробуй.
Во всех скулбоксах и практикумах ты платишь в первую очередь чтобы у тебя все проверяли, дрочили сроками и подгоняли в целом. Ну и лишний раз заставлять себя учиться, ЯЖ ДЕНЬГИ ПОТРАТИЛ!
Работу ты в любом случае не найдешь
>Работу ты в любом случае не найдешь
Поезд ушёл, пузырь лопнул?
Вообще я, наверное, зря не написал большими буквами приставку НЕ в своём посте, но всё равно спасибо за ответ
Ну, если ты не синьйор-помидор мильйонер-трильйонер, то разбор какой-нибудь незнакомой хуйни всегда вызывает затуп как минимум, а обычно просто трудности
Срать не снимая свитер еще научат.
>>41990
Это просто бессмысленно. Все мало-мальски нормальные курсы - слиты. Ты платишь не за информацию, а за ее структуризацию и дядьку, который будет тебя нахваливать.
Буквально можно террабайты информации найти на том же рутрекере по языкунейм. Буквально по одному ангуляру, один курс - 17гигов, 1к файлов.
Да ёбаный насрал. Я ГОВОРЮ ПРО БЕСПЛАТНЫЕ КУРСЫ, всякое говно на ютубе обучающее и любое бесплатное / слитое говно.
Вопрос вообще не об этом, платить там кому-то или не платить, а о том, насколько это хуёво в принципе, когда ты не сам читаешь доку и что-то по ней пробуешь, а смотришь как добрый дядя тебе что-то объясняет и разжёвывает и так далее.
Ты слово курсы вообще забудь в этом треде, тут Анонов сразу триггерит.
>>42119
>Вопрос вообще не об этом, платить там кому-то или не платить, а о том, насколько это хуёво в принципе, когда ты не сам читаешь доку и что-то по ней пробуешь, а смотришь как добрый дядя тебе что-то объясняет и разжёвывает и так далее.
Собственно, так все и делают, если прям с технологией совсем не знакомы.
Вот берешь фреймворкнейм, гуглишь миникурс на часик-два, смотришь как делают а потом уже идешь в доку и читаешь все углублённо с пониманием того как и что примерно выглядит в коде.
Парой доку вообще открывать не нужно и все будет понятно из видосика уровня файрфиша.
Учиться по самим видосиком вообще не получится. Ознакомиться с технологией - да. Но не учить. Учатся на ком. проектах, доке.
Цистерну чая, спасибо за ответ
Ты берёшь две крайности. Между бесплатными курсами и курсами за 500к есть ещё полутона, типа cbt nuggets, zerotomastery, acloudguru, udacity, которые стоят вполне вменяемых денег. Можно учиться не влезая в кредиты.
>>42119
Любой курс - это полезно, если он сделан качественно и преподаёт эксперт в определенной области. С другой стороны, чтобы закрепить знания, нужно это всё пробовать на практике. Иначе это всё через полгода вылетит из головы.
Да ну, там фронтендеров несильно любят. Поэтому я пришел сюдас
Из-за литкода или чего?
Мимо сам боюсь менять работу каждый раз из-за ебанутой дрочи. Даже не знаю, что делать - уходить в другое направление ойти? Так там тоже вкатунов много и их кол-во растет
Каждый раз дрочат по разному. ТО очередями, то базами данными. И да, литкод (разные варианты) вообще в каждой первой НОНЕЙМ гавне
>ТО очередями, то базами данными
А, стоп, так ты ноджиэесер? Но тут даже во фротенде полегче будет переносить все это говно
А вообще тебе стоило бы поменять язык на другой - где меньше ебут и больше платят. Го, сишорп или даже пыху (я не шучу). Потому что нода мертва
>А как перейти, если я никак не смогу найти себе реальный стаж на новом языке?
Ну тут в джуны только пиздеть и не краснеть. Ебать кабанов да хрюшек. Хрю-хрюююю. И не испытывать никаких угрызений совести при 2х после смены стека
Хотя я сам боюсь найти работу на другому JS-фреймворке, лол. Потому что там будут свои подводные камни, инструменты и кабанам нужны работники с уже набитыми руками
Ну вот у меня на последнем собесе по ноде вообще практически ничего не спросили. Перечистить типы и назвать отличий heap\stack- это хуйня какая-то, а не вопрос. Вопросы по БД они к любому языку применимы
>нода мертва
Как же вас не заебали эти толстые набросы, лол.
>где меньше ебут и больше платят. Го, сишорп или даже пыху (я не шучу).
Ебут везде, обычно ещё больше, например в джаве. Платят везде примерно одинаково.
const evalFormula = (x, cells) => {
const idToText = id => cells.find(cell => cell.id === id).value;
const rangeRegex = /([A-J])([1-9][0-9]?):([A-J])([1-9][0-9]?)/gi;
const rangeFromString = (num1, num2) => range(parseInt(num1), parseInt(num2));
const elemValue = num => character => idToText(character + num);
const addCharacters = character1 => character2 => num => charRange(character1, character2).map(elemValue(num));
const rangeExpanded = x.replace(rangeRegex, (_match, char1, num1, char2, num2) => rangeFromString(num1, num2).map(addCharacters(char1)(char2)));
const cellRegex = /[A-J][1-9][0-9]?/gi;
const cellExpanded = rangeExpanded.replace(cellRegex, match => idToText(match.toUpperCase()));
}
Я думал я не совсем дебил, обучаемый, с техникой никогда проблем не было, английский знаю. Но вот от такой хуйни "функция в функции" 10 раз подряд (карринг) у меня голова пухнет, нахуя это нужно и как это уложить в голове? Я рекурсию и то быстрее понял (процентов на 90).
inb4: ты йододефицитный даун-аутист, айти не твое, уходи
Отборный гавнакод
Полная хуйня, сука. Написано говно из жопы. Можешь не волноваться, с тобой всё ок, это автор долбаеб.
Middle+ JavaScript Developer
Учусь сам после полноценной работы 5/2 вечерами (~4 часа) и почти с утра до вечера в выходные. Освоил вёрстку, штудирую Кантора, решаю задачки. Вроде прогресс имеется, но почему-то все чаще приходит ощущение, что я топчусь на месте, зря теряю время и что нужно дропать РАБотку и проходить обучение в какой-нибудь онлайн-школе за пару сотен тысяч вечнодеревянных.
Такие дела.
@Mocherator, почему этого додика не чистишь и не банишь?
>Двач — анонимная имиджборда. За злоупотребление трипкодами, аватарками или иными способами идентификации постеров возможны баны вплоть до перманентного.
Никогда претензии не было к моче этого треда, всех и все чистят по честному, но с этим додиком, как по мне, явно не дорабатываете.
Он уже пару тредов беснуется.
Это был бы самый твой тупой поступок за всю жизнь
В аналогичной ситуации. Но только похуже. 3 года работал на кабан кабаныча, пилил проект, в итоге слился от туда. Думал понаберусь опыта и 300наносек. Но по итогу ролевантность опыта - 0. Не могу ответить даже не простые вопросы на собесе. Сижу теперь изучаю заного. Очень не приятно и через силу дается, тоже думал на курсы пойти, ток на гошечку. Но пообщавшись с теми кто уже прошел, понял, что суть курсов в том, что тебя за твои же деньги учиться заставляют. Да хочется быстрее, но а че поделать, сижу теперь ебашу нахуй никому не нужные тестовые, учусь в реакте делать дерево. Вообще хотел бы найти вкатуна и вместе обучаться, почему-то кажется эффективнее будет
С полного нуля сейчас пытаться вкатиться во фронтенд это вообще наитупейшая идея сейчас. Сейчас это самый худший выбор во всей айтишке. Миллиарды вкатунов с курсов и не только, зарплаты задемпингованы так, что джуны уже буквально забесплатно готовы работать ради заветого года опыта, требования в вакансиях просто ебанутые, чтобы вкатиться надо знать БУКВАЛЬНО ВСЁ, верстка с адаптивом, тс, сборщики, докеры-хуекеры, фреймворки, фреймворки поверх фреймворков, и еще гору всякой параши которую называюют экосистемой роутеры, сторы итд.. Со своими усталыми 4 часами после батрачки шансов вкатиться ну просто пиздос как мало. Оно тебе надо? Почему бы не изучить пхп + фреймворк на выбор + работу с бд и идти откликаться на вакухи на которых особо нет конкуренции? В ДС и ДС2 куча галер которые делают интернет магазины дилдаков на заказ, им как раз таки вкатуны нужны. Через полгода придешь к своим 100к/мес, а то и еще раньше. Удачи кароче
Ну уже блядь поздно. Где ты раньше был? Пойду редюс задрачивать
Не прошел это сколько? У меня вот в прошлом году было 90, в этом году 100. IQ Mensa
А, ты ещё и тесты проходишь. Ну точно дурачок, таким не место в айти
> пхп + фреймворк на выбор + работу с бд
Например? Это какие-то технологии древних? Почему пыху так не любят, кстати?
Совмещал сис. админство и проект. Команды не было, был один, никакого код ревью, спросить не у кого. Ну а теперь представь, зеленый чел, залазит в не простой проект еще и совмещая с другими обязанностями (то есть не фулл тайм кодинг), сам определяет задачи, технологии, архитектуру.
>Сейчас это самый худший выбор во всей айтишке
А какие еще норм варианты? Я просто нихуя не понимаю как остальная хуйня работает, а фронтенд более-менее логичный, написал, увидел, кнопка покрасилась и отправила данные. А в бэке чем люди заняты, строчки в базах сортируют? Типа юзер Иван Говнов, заказ на Вайлдберриз носки черные, артикул 6666666, продавец ИП Амбарцумян.
Вкатунов не ждут нигде, независимо от направления.
Сортируют и делают поиск Иванов Говновых по запросу с фронта. В ответе возвращают Говнов Ивановых. Фронт показывает неправильно - ебут его.
Кайфовое место, но для человека с опытом. Если без опыта, то наверное фигово, да.
А кто до тебя проект писал? Такой же одиночка?
>Не прошёл тест IQ, можешь бросать айтишку
Спасибо что делишься своим опытом. Ты, кстати, чем занимаешься после того, как не прошел тест IQ и бросил айтишку?
Это он тебе писал, братишка, тебе бы на завод, раз даже диалог не в силах осилить.
Я его и породил, потому что при устройстве блестнул знаниями о веб разработке
А где-то еще системный дизайн требуют, да-да на формошлепа, ну ты же нарисовал 3 года опыта, должен знать
Крути до 4
Это копия, сохраненная 13 октября в 21:02.
Скачать тред: только с превью, с превью и прикрепленными файлами.
Второй вариант может долго скачиваться. Файлы будут только в живых или недавно утонувших тредах. Подробнее
Если вам полезен архив М.Двача, пожертвуйте на оплату сервера.