Как стать автором
Обновить
0
0.1

Пользователь

Отправить сообщение

Самая лучшая ТУДУха была "Нужно пофиксить в ближайшее время" оставленная 3 года назад)

Нельзя было без use client понять что в коде есть useEffect и контекст?(

Потом уберут и придется по всему коду ходить и удалять use client, как в свое время удаляли import React

Проблема в том, что 80% усилий дают 20% результата, иногда при планировании это забывают. Ну и еще влеты задач в спринт - нельзя впихнуть невпихуемое, и тут либо убирать какие то задачи ради влетевшей, либо заранее планировать время для вот таких вот влетов, а они всегда будут.

По своему опыту скажу, что была самая идеальная система поднятия зп 2 раза в год. 1 раз по годовой инфляции, 2 раз по фактическом приросте прибыли, который принес мой отдел. Именно отдел, а не я сам, т.к. это зависит именно от всего отдела, а не от моих личных вкладов - когда пилил фичу, а она не выстрелила, и получил 0, а коллега в этом же отделе делал фичу, которая принесла миллионы, и ему и зп подняли и премию еще дали. В общем больше от везения зависит, чем от меня.

Но потом эту фирму купила другая, у которой система сменилась на "пилил фичу, а она не выстрелила, и получил 0, а коллега..."

Если это 134 статья, то там повышение зп "в порядке, установленном коллективным договором, соглашениями, локальными нормативными актами."

Т.е. у вас в договоре прописано, когда повышать.

тоже задело)) тут наверное имелось ввиду не усиления по громкости, а усилению мастерства. ну в общем все все поняли)

Вот если бы придумали гитару, которая исправляет кривизну рук)) т.е. не попал по ноте в соло, а он тебе бац и подставил нужную ноту)

А в целом да, не хватает гитары, которая будет в рюкзаке, чтобы достать и поиграть. но не за 45к))

Количество включивших камеру влияет))

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

Тест кейсы можно писать до разработки (или во время) по макетам фигмы и/или спекам.

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

Тест кейсы можно писать до разработки (или во время) по макетам фигмы и/или спекам.

А анализ комментариев из статьи про анализ комментариев из статьи про анализ комментариев будет?

Фантик это для мажоров, у нас листья были в качестве денег)

Несколько дополнений из далекого 2024 (не все из статьи очевидно):

Если у вас сборщик (webpack или еще что то) используйте пакеты

'@firebase/app-compat';
'@firebase/messaging-compat';

Тогда инициализация на странице будет выглядеть так:

import firebase from '@firebase/app-compat';
import '@firebase/messaging-compat';

const fcmConfig = // ваш конфиг из FCM
const fcmApiKey = // ключ от сертификата

// относительная ссылка на сервис воркер
const serviceWorkerUrl = '/push-notifications-sw.js';

const serviceWorkerRegistration = await navigator.serviceWorker.register(
    serviceWorkerUrl,
    {
        updateViaCache: 'all', // чтобы сервис воркер обновлялся при изменении
    },
);

firebase.initializeApp(fcmConfig);

const messaging = firebase.messaging();

// Если событие пришло при активной вкладке
messaging.onMessage(async (payload) => {
    // копируем объект data
    payload.data.data = JSON.parse(JSON.stringify(payload.data));
    await serviceWorkerRegistration.showNotification(payload.data.title, payload.data);
});

const currentToken = await messaging.getToken({
    vapidKey: fcmApiKey,
    serviceWorkerRegistration,
});

// отправка currentToken на сервер

А сервис воркер будет выглядеть так

import firebase from '@firebase/app-compat';
import '@firebase/messaging-compat';

//fcmConfig все тот же конфиг
firebase.initializeApp(fcmConfig);

const messaging = firebase.messaging();

// Если событие пришло при неактивной вкладке
messaging.onBackgroundMessage((payload) => {
    // копируем объект data
    payload.data.data = JSON.parse(JSON.stringify(payload.data));
  
    return self.registration.showNotification(payload.data.title, payload.data);
});

// Клик на пуш (работает и при активной и при нективной вкладке)
self.addEventListener('notificationclick', (event) => {
    const {click_action = '/'} = event.notification?.data;
  
    event.notification.close();

    event.waitUntil(
        clients
            .matchAll({
                type: 'window',
                includeUncontrolled: true,
            })
            .then((clientList) => {
                for (let i = 0; i < clientList.length; i++) {
                    const client = clientList[i];
                    if (client.url === click_action && 'focus' in client) {
                        return client.focus();
                    }
                }
              
                // Открываем новое окно
                return clients.openWindow(target);
            }),
    );
});

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

На самом деле не так. Для простых запросов и маппинга ОРМ действительно хорош (а в основном такие и пишутся, если у вас не супер математически сложная система). Для всего остального можно и хранимки и триггеры (для этого придумали всякие миграции, чтобы в них все это писать и отслеживать) и напрямую запросы писать через ту же ОРМ библиотеку. ОРМ это не замена, а приятное дополнение.

Пока по телефону звонишь, раз 5 отдубасят. Ну и например если гдето спрятался и нет возможности разговаривать.

правильно, лучше избавляться от бэм и переходить на модули или styled)

Информация

В рейтинге
3 621-й
Зарегистрирован
Активность