Задать вопрос
  • Как правильно мержить в main из dev, если там есть незаконченные фичи?

    AshBlade
    @AshBlade
    Просто хочу быть счастливым
    Решение более правильное - не делать так. Мержить надо когда все работает, а если есть неработающий функционал, то:
    - Либо комментировать функциональность которая еще не работает
    - Либо сделать эту функциональность доступной через фича-флаги. Эти флаги соответственно никто не должен выставлять
    - Либо мержить только работающие ветки, а та, в которой не работает/не закончена - в нее мержить уже готовую мастер ветку

    Мержить через cherry-pick - такое себе: одна ошибка и ты ошибся (фатально)
    Ответ написан
    Комментировать
  • Как правильно мержить в main из dev, если там есть незаконченные фичи?

    bingo347
    @bingo347
    Crazy on performance...
    Фича ветки делаем только от актуального main.
    Для проверки мержим фича-ветку в dev, но не удаляем.
    Когда одна или несколько фичей проверены и готовы, то делаем от main релизную ветку и мержим туда все готовые фичи, прогоняем тесты и если всё ок, то мержим релизную вету в main.
    Ну и полезно мержить main в фича ветки, когда main обновился.
    Ответ написан
    Комментировать
  • В чём принципиальное отличие Eager/Explicit Loading от прямого использования Join-ов через LINQ в контексте EF Core?

    AshBlade
    @AshBlade Куратор тега C#
    Просто хочу быть счастливым
    То что ты описал - разные понятия.

    Например, у тебя есть one-to-many и это представляется списком (ICollection).
    class User
    {
         public string Name { get; set; }
         public ICollection<Subscription> Subscriptions { get; set; }
    }


    Eager/Explicit/Lazy Loading

    Это КОГДА ты данные будешь получать.

    Тогда действия будут следующими:
    - Eager - не важно нужны тебе эти данные или нет - они все равно будут загружены. Тут ты сразу получишь все подписки (Subscriptions) даже если тебе просто нужно узнать Name
    - Lazy - они будут загружены, только когда обратишься к этому полю, т.е. в момент обращения к полю Subscriptions
    - Explicit - это стратегия когда ты сначала подгружаешь объекты в DbContext, а потом (в будущем) когда понадобятся загрузить из памяти - без сетевых запросов. Это уже про метод Load() у DbContext.

    Select/SelectMany/GroupMany

    Это ЧТО ты хочешь получить

    Пример все тот же:
    - Select - например, тебе нужно получить только имена, тогда ты создаешь анонимные объекты:
    context.Users.Select(u => new { u.Name });
    - SelectMany - тебе нужен только список подписок всех пользователей из списка
    context.Users.Where(u => someIds.Contains(u.Id)).SelectMany(u => u.Subscriptions); // Не уверен что запрос корректный

    - GroupBy - это уже JOIN

    Смысл ты понял - это разные зоны ответственности: КОГДА получать данные и КАКИЕ данные получать
    Ответ написан
    3 комментария
  • Как в ubuntu полностью удалить python?

    @asmelnik
    В Linux на python очень много завязано-написано.
    Вам зачем? чем он вам так не угодил?
    Может оказаться, что после полного удаления всех питонов (а их там может оказаться больше одного) система станет не юзабельна.
    Ответ написан
    8 комментариев
  • Как в телеграм-боте сделать каждому игроку отдельный баланс?

    @Everything_is_bad
    Стандартная проблема, ты не освоил основы python, а сразу полез писать ботов, а так бы знал, что минимум можно через словарь сделать отдельный баланс на каждого игрока, а максимум, что эти данные надо куда-то сохранять для восстановления после перезапуска бота.
    Ответ написан
    6 комментариев
  • Как в телеграм-боте сделать каждому игроку отдельный баланс?

    Zagir-vip
    @Zagir-vip
    Web dev, Game dev, app dev, Разработчик на Python!
    ладно помогу тебе малой!

    создаёшь словарь глобальный points = dict()
    В проверке if ... == "Воркать": вставляешь код:
    user_id = message.from_user.id # получаем ID отправителя.
    if points.get(user_id, False): # Обращаемся к глобальному словарю points и проверяем на наличие пользователя.
       points[user_id] = 0 # пользователь не найден поэтому добавим его.
    points[user_id] += ran # Пользователь уже точно добавлен, а значит добавляет деньги.
    
    # получаем кол-во денег у пользователя с помощью:
    cash = points.get(user_id, None) # Получаем пользователя, если нету то вернём None


    P.S: Пожалуйста, назови бота: "Слово разраба. Бот на асфальте." или добавь меня в разрабы ) У тебя очень крутой бот.
    Ответ написан
    3 комментария
  • Как вычленить из текста ФИО на python, при том что конкретных шаблонов нет?

    trapwalker
    @trapwalker Куратор тега Python
    Программист, энтузиаст
    В общем случае эта задача не решается на 100% по определению.
    Вы говорите, что вокруг фамилий у вас произвольный текст, а это значит, что среди этого текста попадаются слова, которые чем-то похожи на ФИО, но не ФИО, или имя отчество, без фамилии, или что-то вроде "светкин василёк Игоревич". Можно это считать таким экзотическим ФИО, или отчество тут просто отдельно стоит и искать его не надо?
    В любом случае схема решения примерно такая. Если у вас есть знаки препинания, то можно разбить по ним фрагменты текста, ФИО не разделяется знаками препинания (кроме дефиса), но дефис отличается от тире пробелами по бокам.
    Далее у вас есть цепочки слов. Если в цепочке N слов, то в ней, можно сказать, N-2 кандидата на ФИО.
    Каждая трока-кандидат на ФИО может быть проклассифицирована по ряду признаков, свидетельствующих в пользу того, является ли эта тройка ФИО. Осталось только определить набор признаков и веса этих признаков. Каждый признак определяет два показателя: 1) насколько этот признак добавляет шансов тройке быть ФИО; 2) на сколько несовпадение по этому признаку отнимает шансов быть ФИО. Показатели определяются от нуля до 1 и перемножаются. Подбор признаков и их показателей будет настройкой вашего классификатора.
    Тут дальше можно двигаться разными путями.
    Часть детектов вы сможете надёжно определять по окончанию отчества.
    Часть признаков у вас будут словарными словами, которые, по вашему, не могут быть именем и\или фамилией.
    На этом этапе уже будет довольно хорошая детекция. Вопрос что вам важнее, отсутствие false positive, или отсутствие false negative.
    Так же по-разному может повезти с входными данными. Если у вас много "ловушек" в виде разбросанных по тексту бесхозных отчеств, если у вас много очень странных имён... в общем тут вам никто не выдаст идеальное решение. При отсутствии четкого ТЗ результатом будет расплывчатое ХЗ.
    В целом обычно на настройку таких классификаторов под текст на первое время сажают людей. У нас сейчас есть ChatGPT и ему, думаю, вполне можно скидывать наборы имён, чтобы он вычеркивал те, которые вряд ли именами являются. Если вы приняли, что какое-то слово не может являться именем, или фамилией, то такое решение хорошо бы кэшировать, а затем для консистентности придерживаться аналогичного в других случаях.

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

    Если коммит уже сделали, то делайте cherry-pick в нужную ветку
    https://git-scm.com/docs/git-cherry-pick

    Если коммит еще не сделали, то сделайте stash изменений, переключитесь на нужную ветку и примените то, что положили в stash
    https://git-scm.com/docs/git-stash
    Ответ написан
    5 комментариев
  • В чем может быть проблема?

    Rsa97
    @Rsa97
    Для правильного вопроса надо знать половину ответа
    Должен вернуть одну строку с id 10 (последняя строка в выборке на скриншоте)
    Кому должен? Программа должна делать только то, что вы в ней написали. Строки по колонке mentions отсортированы, десятая строка выбрана. То, что нет других правил сортировки означает, что строки с одинаковым значением mentions можно выдавать в любом порядке.
    Ответ написан
    Комментировать
  • Микроразметка Schema org, что можно указать в поле price?

    yarkov
    @yarkov
    Помог ответ? Отметь решением.
    Никак. Это вам наказание за политику компании ))
    За "цена по запросу," "ответила в личку" и прочий бред.
    Ответ написан
    Комментировать
  • Что лучше для опроса статусов платежей, крон задача или отложенные сообщения через rabbitmq сервер?

    myks92
    @myks92
    Нашёл решение — пометь вопрос ответом!
    Ни тот и ни другой. Переходите на Message Driven архитектуру. Вместо того, чтобы делать постоянные запросы кроном к сервису лучше сделайте публикацию события в RabbitMQ.

    В момент, когда платеж был выполнен публикуется интеграционное событие PaymentPaid. В это событие вкладываете все нужные данные, в том числе и ID по которым связываются платежи. Далее сервисы, которые заинтересованы в этих событиях подписываются на них и совершают нужные действия.

    При работе с RabbitMQ нужно помнить:
    1. Он гарантирует как минимум 1 раз доставить ваше сообщение. Это значит, что вполне может быть дубль и вам нужно быть готовым к этому. То есть делать идемпотентный консьюмер.
    2. Сообщение может быть не доставлено по причине недоступности сервиса очередей, так же и сообщение может быть потеряно, в том числе из-за недоступности сервиса. Поэтому вам нужно гарантировать доставку через Outbox.
    Ответ написан
    Комментировать
  • Как заставить php скрипт корректно работать?

    @artem-dainov
    Php, java, js. Boot spring, jquery, git
    Использовать функцию mb_substr и в ней указать кодировку для японских символов.
    Ответ написан
    1 комментарий
  • Как переписать код c jquery на js?

    delphinpro
    @delphinpro Куратор тега JavaScript
    frontend developer
    Ответ написан
    Комментировать
  • Как на сайте показывать псевдо-3д?

    @its2easyy
    часто просили клиенты, поэтому оформил это в библиотеку.
    https://github.com/its2easy/animate-images

    Хотя если не нужна интерактивность то проще зацикленное видео использовать
    Ответ написан
    Комментировать
  • Что означает +0 в запросе SQL?

    AshBlade
    @AshBlade
    Просто хочу быть счастливым
    Конвертирование в число

    StackOverflow
    Ответ написан
    Комментировать
  • Как найти работу со сложными и комплексными проектами если нету опыта работы в таких проектах?

    sergey-gornostaev
    @sergey-gornostaev
    Седой и строгий
    У большинства программистов первое рабочее место - это унылая маленькая компания с примитивными технологиями и простыми задачами. Следующая работа немного лучше. Следующая ещё лучше. И так пока не заберëшься на максимально доступную тебе высоту. Потолок и скорость развития у всех разные, зависят в основном от того, на сколько сильно стараешься. Некоторые так никогда и не выбираются из эникейщиков и крутильщиков cms'ок. Немало тех, кто выбирается лет десять.
    Ответ написан
    Комментировать
  • Возможно ли раздать Wi-Fi через спутник?

    Vindicar
    @Vindicar
    RTFM!
    Передавать-то на Wi-Fi частоте ты может и сможешь... а вот как телефон спутнику отвечать будет? Антенну и батарейки придётся в рюкзаке носить. =)
    Ответ написан
    1 комментарий
  • Как проверить сайт на айфоне?

    VoidVolker
    @VoidVolker
    Dark side eye. А у нас печеньки! А у вас?
    Использовать сторонний сервис для тестирования, например: https://www.browserstack.com/test-on-iphone
    Ответ написан
  • Как экранировать sql запрос внутри texarea?

    ipatiev
    @ipatiev Куратор тега PHP
    Потомок старинного рода Ипатьевых-Колотитьевых
    Это очень просто сделать.
    Надо всего лишь освоить подготовленные выражения.
    Например, почитав вот тут https://habr.com/ru/articles/662523/

    И все запросы, в которых участвуют переменные, выполнять только таким образом.
    А texarea там, или tinymce - это уже без разницы.
    Ответ написан
    1 комментарий