Задать вопрос
  • Какое даст понимание язык программирование ассемблер, абсолютному новичку?

    fox_12
    @fox_12
    Расставляю биты, управляю заряженными частицами
    Может дать понимание как работает железо - как устроена память, что происходит с регистрами при операциях, что такое прерывания, стек, и прочее...
    ООП - это совершенно другой уровень абстракции. Как раз чтобы абстрагироваться от железа и работать с некими абстрактными сущностями - объектами, не задумываясь особо о том как это будет реализовано в железе.
    Ответ написан
    Комментировать
  • Как порциями по 200 штук распределить файлы по папкам в Linux?

    ky0
    @ky0
    Миллиардер, филантроп, патологический лгун
    Покурить мануалы mkdir, mv и башевские циклы. Ну или да, руками.
    Ответ написан
    Комментировать
  • Как обновить множество строк sql в одном запросе?

    DevMan
    @DevMan
    DUPLICATE KEY UPDATE работает по уникальному индексу, который можно (и нужно) навесить на группу полей.
    Ответ написан
    3 комментария
  • Нужно ли прорабатывать масштабирование / шардинг при использовании облачных БД?

    @vitaly_il1
    DevOps Consulting
    Отлично работает в масштабе одного сервера при текущей (довольно невысокой) нагрузке, но возникает интерес, как оно будет работать, если вдруг внезапно на нем окажется в тысячу раз больше пользователей

    Ответ очень простой - проверить с помощью stress test. То есть проанализировать текущий запросы к базе и симулировать х1000 кол-во пользователей. 90% что можно обойтись без шардинга, но опят покажет.
    Плюс - с самого начала пишите аппликацию так, чтобы read-only запросы можно было направлять на отдельный ДБ сервер, это уменьшит нагрузку на master.
    Ответ написан
    5 комментариев
  • Нужно ли прорабатывать масштабирование / шардинг при использовании облачных БД?

    inoise
    @inoise Куратор тега Amazon Web Services
    Solution Architect, AWS Certified, Serverless
    Буду довольно резким, но зато без воды:
    - облачные провайдеры не умеют в магию, только в создание ресурсов
    - реляционные базы даже сегодня умеют только в вертикальное масштабирование
    - да, думать приходится самостоятельно
    - для облегчения жизни можно использовать Read Replicas, но готовьтесь к задержкам
    - спайковую нагрузку реляционные базы выдерживать не умеют (да и остальные делают это из рук вон плохо)

    Рекомендации:
    - планируйте масштабирование
    - научитесь понимать как используются ваши данные
    - научитесь в микросервисы (и не по тому что это популярно, а по тому что так происходит изоляция данных)
    - научитесь в другие виды баз данных, например то же DynamoDB, хотя если не вникать то можно огрести еще больше проблем
    - вспомните что есть кэширование
    - прочитайте что есть такие паттерны как CQRS
    - научитесь в проектирование PWA (Progressive Web Applications)
    - выбросите это все по тому что это будет очень дорого по итогу
    Ответ написан
    6 комментариев
  • Как в консоли переименовать несколько файлов по маске?

    sotvm
    @sotvm
    Умный поймёт, а дураку и так всё равно.
    rename 's/-en.srt$/\.srt/' *-en.srt
    Ответ написан
    Комментировать
  • Как решить ошибку "AttributeError: 'sqlite3.Connection' object has no attribute 'fetchone'"?

    sergey-gornostaev
    @sergey-gornostaev Куратор тега Python
    Седой и строгий
    Прочитать документацию к модулю sqlite3. Должно стать понятно, что fetchone - метод курсора, а не соединения.
    Ответ написан
    Комментировать
  • Как распараллелить парсинг и загрузку в БД на php?

    DevMan
    @DevMan
    если это разовая (или не очень частая) задача вы больше времени потратите на распараллеливание, чем просто на импорт.

    не нужно искать по всей базе, создайте уникальный индекс и воспользуйтесь odku или insert ignore (если уверены, что данные такие же).
    да и csv - не единый набор данных, его спокойно можно читать построчно. набивать буфер и отправлять пачкой в бд.

    в целом: если вам не нужно делать импорт каждые 5 минут, нет смысла ее параллелить.
    Ответ написан
    6 комментариев
  • Есть ли необходимость в дорогом железе?

    DevMan
    @DevMan
    веб-дев очень разный, и все зависит от того, чем и на каком уровне занимаешься. и с каким комфортом.

    кому-то хватает и калькулятора, кому-то не хватает сервера.
    Ответ написан
    2 комментария
  • Как сделать сервер отказоустойчивым?

    DevMan
    @DevMan
    Как я понимаю днс привязываются к одному хостеру, а сразу к двум нельзя.
    https://ru.wikipedia.org/wiki/Round_robin_DNS
    Ответ написан
    4 комментария
  • Как реализовать отказоустойчивость mysql?

    MrFrizzy
    @MrFrizzy
    1) master-master на mariadb - каждый сервер будет иметь свой уникальный gtid и именно мария в отличии от оригинального mysql умеет хорошо разруливать бинарные логи и даже мульти репликацию. Но нужно как минимум прописать сдвиг auto_increment на северах, чтобы он были уникальными
    2) galera cluster - где-то на 30% медленнее - транзакция должна пройти на всех нодах, только innodb движок, нужно следить, чтобы не было myisam, нужен кворум нод, то есть две ноды лучше не делать, если одна 100% будет уходить в оффлайн

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

    Вариантов решения есть не один:
    1. Настроить сервер, чтобы нельзя было использовать какие-то символы, а только "нормальные". Возможно, это решается не средствами сервера, а какими-нибудь плагинами. Для CS1.6 были подобные.
    2. Не держать screen. Пусть логируется в файлы. Да, так управлять несколько неудобнее, но и падать меньше будет.
    3. Возможно, нужна более новая версия screen либо какой-то библиотеки, если она есть.
    ...
    Возможно, это делают намеренно, чтобы вызвать отказ в обслуживании. И придётся изучать вопрос, искать где в чём уязвимость, и способы закрытия/обхода. Для примера, в одной из версий сервера cs1.6, была дыра, когда атакующий мог послать специфичную команду, которая ложила сервер, или он перезапускался (если настроено). И долго не могли выпустить (не знаю почему) обновление с закрытой дырой. Обходились хитрым правилом в iptables, которое дропало такой опасный пакет.
    В любом случае, для точного ответа слишком мало данных.
    Ответ написан
    5 комментариев
  • Парсинг json в go?

    index0h
    @index0h
    PHP, Golang. https://github.com/index0h
    Комментировать
  • На чём писать back-end платформы с видео?

    Неверный вопрос.
    Неверные требования.
    Неверное понимание проекта.

    1) Ваша сейчас единственная задача - это дать ответ на три вопроса:

    - какие деньги вы готовы потратить на этот проект.
    - какие деньги вы готовы потратить на продвижение проекта.
    - какую главную функциональность вы хотите получить.

    2) После этого идете в фирму, которая занимается разработкой и обсуждаете то, как сделать проект. Какую технологию они для него выбирают, и какие деньги они попросят для его расширения.

    3) Стабильная и быстрая работа платформы не зависимо от количества пользователей - глупая постановка требований. Ибо очевидно, что если платформа держит 1000 юзеров в сутки, то с увеличением до 200к юзеров, появятся новые требования к железу, архитектуре и подходах к разработке.

    4) Но, если быть честным, вы похоже на типичного "бизнесмена", который думает, что запилит какой-то сайт с курсами, и к нему начнут валить 10к людей в день, хотя по факту будет 5-10 человека.

    Я видел много успешных проектов с хорошим маркетингом и отделом продаж, на говно-стеке, который постепенно рефакторили и переводили на новый стек с ростом команды. И видел много провальных проектов на "крутой" технологии без денег и юзеров.

    Бизнесмен должен думать о деньгах, а не о том, почему .net хуже или лучше, php.
    Ответ написан
    Комментировать
  • WebSocket - в чем разница между байтовой передачей и текстовой?

    shai_hulud
    @shai_hulud
    https://tools.ietf.org/html/rfc6455#section-5.6

    Data frames carry application-layer and/or extension-layer data. The
    opcode determines the interpretation of the data:

    Text

    The "Payload data" is text data encoded as UTF-8. Note that a
    particular text frame might include a partial UTF-8 sequence;
    however, the whole message MUST contain valid UTF-8. Invalid
    UTF-8 in reassembled messages is handled as described in
    Section 8.1.

    Binary

    The "Payload data" is arbitrary binary data whose interpretation
    is solely up to the application layer.


    Текстовый фрейм это бинарный фрейм в котором контент это UTF-8 закодированный текст. Это сделано было скорее всего для удоства использования WS из браузера т.к. в JS в то время не было удобного представления бинарный данных.
    Ответ написан
    Комментировать
  • Как распознать картинку с камеры на javascript и найти её в базе?

    @rPman
    Потому что задача не такая простая как хотелось бы, да, перцептивное хеширование и opencl верное направление, но ваша проблема именно в том что вы работаете с камерой а не типличными условиям и готовыми картинками.

    Камера - это повороты и перспективные искажения, проблемы с неравномерной яркостью и мерцанием освещения, инертностью матрицы и глюки алгоритмов пост обработки в смартфонах.

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

    @WasteMan
    Тут 2 варианты.
    1. Они на самом деле не дураки. Или так - не они на самом деле дураки.
    Без обид но в данном случае "дураком"=не правым можете быть и вы.
    Просто мы так устроены что за собой не замечаем - кто же усомнится в собственной правоте.
    2. Они на самом деле "дураки". В кавычках потому что у них тоже может быть начальник и ваш начальник считает что его не прав, но он вынужден проводить его мнения подчиненным и вам он прямо об этом не скажет, т.к. субординация.

    Спорить - однозначно нет.
    В лучшем случае он вежливо выслушает и скажет - "делай как я сказал".
    Главное иметь доказательство (письмо, распоряжение) что вы делаете ровно то что сказал начальник. Чтобы в случае чего он потом не переобулся - "ты меня неправильно понял"

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

    Желание думать - так думайте параллельно "в стол" "про себя".
    "Все решает начальство" - это 99,9999%. Это норма.
    Ответ написан
    Комментировать
  • Стоит ли работать под руководством начальников, которые считают себя умнее других?

    @Dobryak88
    Системный администратор
    1) Если вопрос именно про ИТ, то очень многие ИТ-специалисты обладают очень высоким ЧСВ. Иногда оправданно, иногда нет. Нужно определить, у кого из вас с начальником самомнение выше уровня действительной значимости.
    2) Разногласия должны быть: если мнение начальника и исполнителя совпадают, то очень легко представить, что они оба ошибаются. В споре вскрываются аргументы разных точек зрения, без этого не найти лучший вариант.
    3) "Терпеть тупого начальника" - один из необходимых софт-скиллов, а личное профессиональное развитие постепенно сокращает необходимость развивать именно этот навык
    Ответ написан
    Комментировать
  • Стоит ли работать под руководством начальников, которые считают себя умнее других?

    dollar
    @dollar
    Делай добро и бросай его в воду.
    я начальник, ты - дурак

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

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

    Но подумайте хорошо, что является причиной такого поведения начальника. Дело в том, что есть популярное когнитивное искажение, которое случаи успеха объясняет личными качествами, а случаи провала - обстоятельствами. Причем, в случае провала начальника, именно вы будете являться этими обстоятельствами. Это абсолютно здоровое когнитивное искажение, которое мы имеем благодаря эволюции, позволяющее сохранить самооценку. Конечно, не очень честно самоутверждаться за счет других, но фишка в том, что человек верит, что он прав, т.е. по сути думает, что поступает честно. Проблема усугубляется еще и тем, что эмоциональный накал работает как коэффициент, увеличивающий искажение. Забавно, что у подчиненных с неустойчивой самооценкой точно такое же искажение, заставляющее их думать, что они правы, а начальник - козел. Поэтому здесь нужно смотреть комплексно: а именно, можно ли достучаться до начальника, приведя свои аргументы в свою пользу и выслушав его аргументы. Рецепт здесь сложно привести, потому что много факторов влияют на решение. Например, у начальника, точнее у бизнеса в целом, может банально не быть времени на споры, поэтому принимается быстрое и не самое эффективное решение.

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

    Однако ситуации разные бывают. Если вас в буквальном смысле унижают или вы чувствуете некую угрозу, то лучше и правда не иметь дело с таким начальником и уйти с такой работы на другую, более комфортную и счастливую.
    Ответ написан
    Комментировать