• Как отслеживать онлайн статус пользователя, как в соц. сетях?

    sergey-gornostaev
    @sergey-gornostaev
    Седой и строгий
    WebSocket
    Ответ написан
    Комментировать
  • Как отслеживать онлайн статус пользователя, как в соц. сетях?

    Sanasol
    @Sanasol Куратор тега Веб-разработка
    нельзя просто так взять и загуглить ошибку
    Надо просто добавить какой-нибудь last_activity_at в базу-таблицу пользователей и при любом запросе юзера к бекенду ставить туда текущую дату.

    При выборе уже выбираете тех у кого (last_activity_at > текущее_время - 5 минут) например.

    Это и будут онлайн пользователи.

    https://qna.habr.com/answer?answer_id=1535663#answ...
    Ответ написан
    Комментировать
  • Как отслеживать онлайн статус пользователя, как в соц. сетях?

    samodum
    @samodum
    Какой вопрос - такой и ответ
    1. Websocket
    2. Периодически опрашивать страницу пользователя ajax-ом. Если есть ответ - он в онлайне, иначе - в оффлайне
    Ответ написан
    Комментировать
  • Как отслеживать онлайн статус пользователя, как в соц. сетях?

    @mletov
    Каких именно соц сетях?
    Например, у vk есть свое API, почитайте доку, а дальше, как уже сказал Сергей Горностаев, через WebSocket.
    Если речь о других соц сетях, то читайте, что у них есть для разработчиков.
    Ответ написан
    Комментировать
  • Как запретить использовать веб приложение с больше одной вкладки в браузере?

    @inFureal
    Самый простой вариант это через localStorage. При открытии вкладки генерируешь id вкладки. Добавляешь цикл в N времени и обновляешь. Если владыку закрыть, то цикл прервется.
    Там же добавляешь такой же цикл, но уже на проверку, нет ли других вкладок, которые обновляют время в localStorage
    Ответ написан
    5 комментариев
  • Как запретить использовать веб приложение с больше одной вкладки в браузере?

    sergiks
    @sergiks Куратор тега JavaScript
    ♬♬
    Написать Shared Web Worker.
    Подписаться на сообщения от него: он может прислать команду «деактивируйся!» (и «активируйся снова!» – в сложном варианте).

    При старте отправлять в него сообщение, регистрирующее вкладку по уникальному ID. Случайное-уникальное, хранится в скрипте во вкладке, запоминается и в воркере.

    Воркер по такому сообщению принимает новый ID и деактивирует остальные (отправляет им сообщения).
    Принцип «каждый новый побеждает предыдущих».

    Если нужно реализовать возврат полномочий к предыдущей вкладке, когда закрыли «активную» – можно придумать протокол. Воркер может по очереди пинговать ID вкладок: «жив?» – нет (таймаут) – следующий «жив?» – жив — «будешь главным».
    Ответ написан
    Комментировать
  • Как запретить использовать веб приложение с больше одной вкладки в браузере?

    bingo347
    @bingo347 Куратор тега JavaScript
    Crazy on performance...
    https://developer.mozilla.org/en-US/docs/Web/API/B...

    Но я бы не стал пользоваться "приложением" которое за меня решает сколько вкладок мне открывать
    Ответ написан
    1 комментарий
  • Зачем делают разные сайты для мобильной и десктопной версии веб-приложений?

    GamerDisclaimer
    @GamerDisclaimer
    Scratch Программист XD
    Просто те страницы, которые написаны под десктоп, они скорее всего будут долго запускатся на мобилах, а так ты сразу убиваешь двух зайцев:
    1. Быстрый запуск
    2. Не нужно так сильно парится с адаптивностью
    Но всё же, если у тебя простенькая свистоперделка, на которой простенький блог, и всё, то можно не парится, и сделать сайт адаптивным
    Ответ написан
    Комментировать
  • Зачем делают разные сайты для мобильной и десктопной версии веб-приложений?

    @Arik
    скорость загрузки страниц (десктопы бывают тяжелые совсем), PWA, AMP, Турбо-страницы и тд
    Ответ написан
    Комментировать
  • Зачем делают разные сайты для мобильной и десктопной версии веб-приложений?

    @Mercury13
    Программист на «си с крестами» и не только
    Сайт может быть:
    • преимущественно настольный (Посмотре.ли);
    • преимущественно мобильный (Эгея. Или вот знакомая пишет внутреннюю систему учёта отпускных — всё сделано, чтобы работало с мобилы);
    • адаптивный (Розетка — простите, я с Украины. Ну и Хабр Q&A);
    • с сильно разными шкурками под настольный и мобильный (Википедия, YouTube)

    Какие факторы на это влияют:
    • Умение веб-программиста — что он умеет, то и пишет.
    • Используемый инструментарий — скажем, у нас есть древний сайт, надо переписать под мобилу.
    • Соотношение «настольный/мобильный» — например, заказ пиццы обязательно делать преимущественно мобильным или адаптивным.
    • Контент — если много картинок, приходится думать. И наоборот, простой блог без проблем можно сделать преимущественно мобильным, что и сделал Бирман в своей Эгее.
    • Особый настольный инструментарий — например, вики смотрят и с мобилы, но редактирование с мобилы — крайне редкий сценарий и обычно ограничивается редактурой. YouTube с мобилы много глазеют, но залить с мобилы — дело значительно более редкое. И уж совсем редкое — управлять видеоблогом с мобилы.

    Кодовая база общая, разные только шкурки.
    Ответ написан
    Комментировать
  • Что делать, если тяжело работать?

    @somenkoea
    PHP программист (Symfony)
    Как справляться?
    Декомпозировать задачи до минимально понятных. Лучше на бумаге. Если надо кому-то показывать или спрашивать совета - в любом онлайн редакторе, хоть в те же гугл таблицах.

    Что делать, если тяжело работать?
    1. учиться внимательно;
    2. много писать кода;
    3. ясно доносить что тебе тяжело, явно просить помощи и получать ее;
    4. помнить, что ты пока ещё джун;
    5. помнить, что ты работаешь за деньги.

    Мне знакомо такое состояние постоянного давления, поэтому более приземленный и бытовой совет - меняй контору.
    Основные критерии выбора(по убыванию важности):
    0. отдел разработки должен либо создавать и развивать продукты, либо заниматься разработкой внутренних продуктов, на основе которых компания зарабатывает деньги;
    1. наличие опытных коллег;
    2. наличие и применение код ревью;
    3. наличие и использование стандартов\принципов разработки;
    4. наличие планов развития продукта.
    Ответ написан
    Комментировать
  • Как автоматически переместить блок в видимую часть окна браузера?

    Kozack
    @Kozack Куратор тега CSS
    Thinking about a11y
    В данный момент задачи такого рода решаются с помощью JavaScript и математики:
    Вычисляете размеры блока, смотрите размеры окра, смотрите положение блока. Если он как-либо вываливается за пределы видимой области -- сместить блок в сторону. Есть и готовые библиотеки для этого. Например popper.js
    Ответ написан
    2 комментария
  • Что делать, если тяжело работать?

    opium
    @opium
    Просто люблю качественно работать
    Либо уволиться либо перестать плакать, на проекты вы один, качество его вырастет только с ростом вашего качества а для этого нужно время, так что париться из за мелочей вам ещё рано
    Ответ написан
    Комментировать
  • Что делать, если тяжело работать?

    angrySCV
    @angrySCV
    machine learning, programming, startuping
    Делай, что должно, и будь, что будет​. . .
    Тебе стоит просто расслабиться, раз тебе одному дали проект, то тебе стоит делать то что ты считаешь нужным, ТАК как ты считаешь нужным. Ты же не бизнесом занимаешься, все риски от бизнес решений лежат на руководстве, с тебя спроса никакого.
    Ответ написан
    Комментировать
  • Что делать, если тяжело работать?

    alexgp13
    @alexgp13
    Руководитель ИТ-проектов
    Вы работаете на позиции как минимум мидла-сеньора, а не джуна. Поэтому и тяжело работать. Архитектурные решения уж точно не должны принимать. Работа джуна - написание кода по четкому ТЗ, при этом этот код обязательно должен проходить код-ревью.

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

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

    Zoominger
    @Zoominger
    System Integrator
    Ну тут вам вряд ли сопельки вытрут. Но вот тут:

    На проекте работаю один, собственно и помощи по каким-то вопросам в нём взять неоткуда, связь с бывшими разрабами отсутствует.

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

    glaphire
    @glaphire
    PHP developer
    Если у Вас нет ни команды, ни наставника, да еще и несколько проектов сразу - это действительно большой стресс, и не стоит винить себя в трудности реализации всех решений. Компания захотела сэкономить на поиске миддла, скорее всего
    Ответ написан
    Комментировать
  • Как убрать контур с кнопки, при клике с мыши, но, что бы он оставался при навигации через tab?

    Нормального, человеческого способа нет.
    Вариант 1) Забить болт, оставить нативное поведение
    Вариант 2) Если всё же пипец надо, то я бы сделал как-то так:
    • Всем кнопкам добавил бы какой-то дополнительный класс, типа "not-pressed"
    • Для кнопки с наличием этого класса прописал бы аутлайн нужный, а так как класс этот по умолчанию есть, то переключаясь табом мы обводку увидим
    • При клике на кнопку этот класс бы убирался js-ом, для кнопки без класса аутлайн в css скрыть надо
    • По какому-то тригеру возвращал бы кнопке класс, чтобы вернуть нормальное состояние с наличием обводки, какой триггер - вопрос хороший, тут надо экспериментировать. Так, чисто на правах размышлений - может что-то типа "по клику вне кнопки" или "по нажатию клавиши"


    Ничего подобного на практике не пробовал, но как адский костыль должно сработать. Вроде.
    Ответ написан
    1 комментарий
  • Как указать путь фоновому изображению из файла css?

    @MrYupi
    Указывая / в начале вы задание абсолютный путь от корневой директории, т.е он в вашем случае смотрит от диска D, в вашем случае надо указать - ../img/'ваши значения'. Что означает подняться на папку вверх и зайти в папку img
    Ответ написан
    Комментировать