• Как обеспечить возможность одновременного вызова эндпойнта, пишущего в БД?

    AlexMcArrow
    @AlexMcArrow
    Люблю РНР, да я такой!
    Решение нужно искать не в последовательном исполнении, а понять что вы делаете с БД что два идентичных обращения вызывают дедлок.
    Например: если вы делаете апдейт одной и той же строки - то вопрос а может ли прийти 10 таких запросов на одну строку?
    Ответ написан
    2 комментария
  • Как обеспечить возможность одновременного вызова эндпойнта, пишущего в БД?

    @holllop
    Попытаюсь ответить как-то комплексно.
    Дедлоки в базе данных могут быть вызваны различными причинами, такими как конфликты параллельных транзакций, блокировки на ресурсы и другие. В вашем случае, если у вас возникают дедлоки при одновременных запросах, использование транзакций может помочь, но вам также необходимо управлять блокировками и избегать конфликтов. То есть воспользоваться блокировкой на уровне строки (Row Locking) и блокировкой на уровне транзакции (Transaction Locking) это всё механизмы Sequelize. Вполне возможно, что даже при использовании этих механизмов могут остаться дедлоки. И в таком случае использование Redis будет необходимо.
    Ответ написан
    2 комментария
  • Можно ли написать JS-регулярку, которая матчит строку только если в строке четное количество вхождений какого-либо символа?

    @Sozdavan
    Невозможно написать регулярное выражение, которое будет возвращать истину только в том случае, если в строке есть четное количество любых символов, используя только регулярные выражения, потому что регулярные выражения не имеют возможности «запоминать» количество совпадающих вхождений. Одним из возможных подходов к решению этой проблемы было бы использование комбинации регулярных выражений и языка программирования. Вы можете использовать регулярное выражение для сопоставления интересующих вас символов, а затем использовать язык программирования для подсчета количества вхождений этих символов и проверки их четности. Другим возможным подходом может быть использование другого алгоритма, такого как подсчет количества вхождений каждого символа в строку, а затем проверка четности числа для каждого символа. Этот подход может быть реализован с использованием цикла и структуры данных словаря на большинстве языков программирования. Наконец, вы можете использовать другой язык со встроенной функцией для этой проблемы, например, python с его функцией Counter(), он даст вам диктовку с количеством каждого символа в строке.
    Ответ написан
    1 комментарий
  • Как искать работу за границей?

    dmitrichenko
    @dmitrichenko
    CEO/Founder - GetMatch.ru
    Несмотря на то, что тред старый, дополню информацию. Мы делаем GetMatch - сервис для поиска работы в IT. Вот ссылка на список вакансий с возможностью переезда. Можно фильтровать по стеку, зарплате и уровню сеньорити.
    Ответ написан
    Комментировать
  • Стоит ли предпочитать экшены мутациям во Vuex?

    Rsa97
    @Rsa97
    Для правильного вопроса надо знать половину ответа
    Мутации - строго синхронные короткие процедуры, содержащие только логику смены состояния.
    Экшены - возможно асинхронные процедуры, относящиеся к бизнес-логике и вызывающие мутации для смены состояния.
    Так что вы всё делаете правильно. Бизнес-логика - открыть меню. Для этого надо сменить состояние, установив для меню статус "открыто".
    Если завтра вам понадобится перед открытием меню делать его предзагрузку с сайта, вы поменяете экшен, а мутация останется как есть.
    Ответ написан
    Комментировать
  • Есть ли боты, позволяющие переслать сообщение в Слак или на другой аккаунт?

    inoise
    @inoise
    Solution Architect, AWS Certified, Serverless
    Посмотри в сторону Zapier
    Ответ написан
    Комментировать
  • Как сгруппировать данные запроса на основе внешних данных?

    @galaxy
    Сложно предложить хорошее решение, не видя запроса, но, допустим, можно сконструировать промежуточную таблицу через values. Т.е. что-то типа такого:

    SELECT ...
      FROM table1 JOIN table2 ...
      JOIN (
        VALUES (123, ARRAY[123, 789]),
               (345, ARRAY[345])
      ) t (id, aliases) ON (table1.userid = ANY(t.aliases))
     ...


    Рабочий (вроде) пример:
    SELECT t.id, string_agg(tt.data, ',')
      FROM 
      (
        VALUES (123, 'a'),
               (123, 'aa'),
               (789, 'b'),
               (345, 'c'),
               (345, 'd')
      ) tt (userid, data)
      JOIN
      (
        VALUES (123, ARRAY[123, 789]),
               (345, ARRAY[345])
      ) t (id, aliases) ON (tt.userid = ANY(t.aliases))
     GROUP by t.id
    Ответ написан
    Комментировать
  • Как залить другим цветом часть текста через CSS и SVG?

    При экспорте в illustrator укажите текст шрифтом, а так же галочку отдельный css файл для удобства.
    Для минификации можно оставить галочку использовать в шрифте только используемые в макете символы, в таком случае шрифт будет состоять из 3-5 букв которые вы использовали
    в таком случае надпись в вашем логотипе будет в виде "Вася2" + стили
    Так же в свг прекрасно работают классы в общем проблем с этим вообще нет.
    Вообще в илюстраторе при экспорте много чего можно указать что облечет вам работу.
    вот пример работы анимации на шрифте. в данном случае его пришлось перезаливать в path посколкьу нужны контуры.https://ks03.ru/bustier/assets/img/logo.svg

    Вообще в свг можно сделать куда больше чем просто покрасить шрифт
    Ответ написан
    1 комментарий
  • Вложенность в теге article?

    delphinpro
    @delphinpro Куратор тега HTML
    frontend developer
    DIV - это элемент без семантики.
    Поэтому, даже если вы сделаете структуру
    article>div>div>div>(header>h4 + div>p + footer)
    Она будет такой
    article>(header>h4 + p + footer)
    Ответ написан
    1 комментарий
  • Почему много людей в IT недовольны своей работы?

    php666
    @php666
    PHP-макака
    отговаривают всех сюда идти,
    а что надо делать? Выйти в центр города и кричать "все идите в айти тут зп от 100 000!!"? Плодить конкурентов?

    но почему никто не уточняет что это он делает 12 часов 6 дней в неделю. Либо по суткам как работал мой знакомый. Почему никто не уточняет что часто заработанные деньги нужно пускать на починку машину. И разве это так легко каждый день стоят столько часов в пробках, стараться по быстрее дойти от точки А до точки B каждый день. Почему никто не уточняет что в этом деле о перспективах можно и забыть. Ты работаешь, получаешь деньги и всё. И кэмон ребята, они получают как средний программист с небольшим опытом работы. Зарплаты которые получаются ITшники с 5+ летом работ, им далеки.
    почему ТЫ не уточняешь, что:

    - 90% программистов с опытом в 5+ лет имеют вполне среднестатистическую зарплату по отрасли, никто с жиру не бесится и на мерседесах не разъезжает (вопреки рассказам некоторых о зарплатах в 200/300/400 "не напрягаясь"). Не знаю и не знал ни одного программиста, кто бы в 30/35/40 лет ездил на крутой тачке или имел бы уже купленное жилье.

    - что работают по долбанному графику 5/2, при котором в день если тратится от 2 до 4 часов на дорогу на работу, то в сумме принадлежат сами себе лишь ДВА дня в неделю. В отличие от мента или таксиста со сменным графиком.

    - что вся жизнь заключена в коробке монитора 30х40 и кроме долбанного кода в жизни ты не видишь ничего. День сурка длинной в карьеру.

    - что профдеформация влияет на характер, умение общаться с людьми, коммуникабельность и тп.

    - что сидячий образ жизни просто негативнейшим образом влияет на организм. Самое безобидное - ожирение. Посмотри на коллег-айтишников, в большинстве случаев любой охранник/мент выглядит в физ. плане лучше. Сидеть на стуле 10+ лет не проходят без последствий. И тут не поможет никакой спорт, просто сидячий образ жизни априори противоестественен для любого живого существа.

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

    - что перспективы у рядового программиста примерно такие же, как и у любой штатной офисной единицы. Можешь стать чуть повыше, а можешь и не стать. В любом случае ты такой же легко заменяемый винтик, как и таксист. Засиделся на работе на Н лет дольше и не успел выучить очередной фреймворк? Летишь на мороз. Офигенные перспективы!

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

    Сам уже года 2 как работа в IT сфере в Full time
    Когда у тебя будет юбилей в 10 лет - приходи и расскажи, как изменится твое мнение. 2 года - это ничто. Средний срок работы опытного программиста на одной из работ.

    почему люди вроде с большим опытом а мыслят так
    потому, что у них большой опыт, да. И поработав в 10/15 компаниях за жизнь они уже всего насмотрелись и не испытывают щенячьего восторга от коробки монитора и кода. Они видели, что все в целом похоже, понимают суть этой работы и, в целом, смотрят на мир без розовых очков.
    Ответ написан
    31 комментарий
  • Где вы учите/ли PHP?

    FanatPHP
    @FanatPHP
    Чебуратор тега РНР
    Я могу сказать, где точно учить не надо
    руселлер и прочие видеокурсы. это реальный ад
    какой-то дятел на ютубе, который толкает RedBean - это полная жесть. новичкам этот редбин ни к чему, им надо основы учить, а основ он не даёт, его курсы для тех кто уже знает РНР и SQL. Но фокус в том что тем кто знает, его курсы даром не сдались, а новички из ничего вообще ничего не выносят, но потом со слезами и соплями пытаются что-то ваять и у них вообще ничего не выходит.
    otus . ru - я тут недавно увидел на их сайте пример кода, и чуть не поседел. Долго искал подпись что это коллекция примеров того как не надо писать, но это они всерьёз.
    твое коде муму сейчас посмотрел - написано такими же макаками на материале прошлого века. Если будешь искать работу то тебя даже на порог не пустят с таким кодом.
    В общем не знаю. скрепя сердце могу посоветовать хтмлакадемию, но там во-первых платно, а во-вторых материал тоже местами проседает. Но хотя бы менторы вроде нормальные, а не какая-то школота "с вконтакте".

    В целом я рекомендую учить не какой-то конкретный язык, а программирование в целом
    Ответ написан
    2 комментария
  • Почему много людей в IT недовольны своей работы?

    У каждого своя причина. Кто-то выгорел, кто-то просто устал. Со временем понимаешь что зп это не главное, да и зарплата в IT не такая уж и большая. И что ты каждый день сидишь по 14, 16 а иногда по 18 часов в день перед монитором. Никакой физической активности. Решаешь какие-то странные хочухи клиентов. Результат твоей деятельности мало кто увидит, большая часть твоего кода уйдет на помойку. Что каждый день выходят новые языки, фреймворки. Что количество данных, которые нужно пропускать через мозг, растет с каждым днем. А мозги только стареют. Помнишь Ваас рассказывал про безумие? Так вот, это оно. Каждый день ты залипаешь перед монитором, пытаясь решать кем то придуманную проблему. У тебя уже искривление позвоночника, зрение -5, туннельный синдром где-то не за горами. А ничего, кроме как пялиться в монитор, ты не умеешь.
    Ответ написан
    31 комментарий
  • Как найти "разработчика"?

    tentrun
    @tentrun
    Fullstack (asp.net /react, vue, angular) deletant
    Совместный робот и антузиазм это конечно хорошо, но просто подойди на улицу к какому-нибудь школьнику и скажи : -«️‍Лгбт поддерживаешь? Тогда пошли вместе слона давить и жабу» правда могут неправильно понять, но это веб, там все так.
    P.s. Вопрос абсурден
    Ответ написан
    Комментировать
  • Скорость чистого перебора - как такое может быть?

    profesor08
    @profesor08
    Придется признать победу windows.

    Я бы замерил количество итерраций, сколько делает цикл, может он много лишнего делает, раз так в 100.
    Ответ написан
    4 комментария
  • Что можно ответить на такой вопрос, на собеседовании?

    Zoominger
    @Zoominger
    System Integrator
    "Я никогда не использовал event loop, поэтому не могу о нём ничего сказать самостоятельно, но если вы мне дадите время, то я спрошу на Тостере и повторю, а потом, может, погуглю про это, потому что я обучаемый".
    Ответ написан
    Комментировать
  • Почему переменная в функции NULL?

    FanatPHP
    @FanatPHP
    Чебуратор тега РНР
    Про null уже объяснили, а я напишу про другую глупость.
    из DB_query надо убрать try catch со всеми причиндалами.

    потом сам же прибежишь на тостер спрашивать, "почему мой код не работает"
    Потому что ты сам же заткнул своей базе рот, и вместо нормального сообщения об ошибке сам же мычишь невнятное "ашыпка запроса, насяльника".

    Поэтому метод должен выглядеть так
    function DB_query($DB_query, $params = null) { 
            $query = $this->pdo->prepare($DB_query);
            $query->execute($params);
            return $query;
        }

    больше ничего не нужно
    Ответ написан
    2 комментария
  • Как анонимизировать запись голоса? Как скрыть/удалить шумы?

    fox_12
    @fox_12
    Расставляю биты, управляю заряженными частицами
    Преобразовать голос в текст
    Текст преобразовать в голос любой доступной говорилкой
    Ответ написан
    5 комментариев
  • Как сделать вычисления только функциями?

    0xD34F
    @0xD34F
    zero, one, two, three, four, five, six, seven, eight, nine = \
      [ lambda f = None, v = i: f(v) if callable(f) else v for i in range(10) ]
    
    plus = lambda a: lambda b: b + a
    minus = lambda a: lambda b: b - a
    times = lambda a: lambda b: b * a
    divided_by = lambda a: lambda b: b // a
    Ответ написан
    Комментировать
  • Htmlbook.ru VS developer.mozilla.org?

    web_Developer_Victor
    @web_Developer_Victor
    Что такое google?
    Mozilla 100%. Там более свежая информация!! htmlbook уже пару лет не поддерживается. У них есть новый сайт webref.ru, но на Mozilla (особенно английской) все равно более свежая информация
    Ответ написан
    Комментировать