• Сократить кол-во запросов в БД?

    @RidgeA
    Можно одним insert обойтись
    INSERT INTO `tableName` VALUES (`first`, `row`), (`second`, `row`), (`third`, `row`);


    И в приведенном коде уязвимость - SQL Injection - почитай про использование подготовленных запросов.
    Ответ написан
    Комментировать
  • Сократить кол-во запросов в БД?

    alexey-m-ukolov
    @alexey-m-ukolov Куратор тега PHP
    INSERT INTO games (one, two, three) VALUES (1, 2, 3), (4, 5, 6), (7, 8, 9);
    https://dev.mysql.com/doc/refman/5.7/en/insert.html
    Ответ написан
    Комментировать
  • Как лучше бекапить проект с большим количеством контента?

    Jump
    @Jump Куратор тега Резервное копирование
    Системный администратор со стажем.
    К тому же, в идеале хочется иметь инкрементальные бекапы - т.е. один раз скопировать всю папку, а потом досылать только свежие изменения.
    Есть много разных способов.
    Вот один из них - zpaq
    - сжатие, дедупликация, инкременты.
    И что очень полезно и есть не у всех - индексный файл имеющихся блоков.
    Т.е двухтеррабайтный архив у вас лежит где-то там далеко, а индексный файл этого архива размером в десяток мегабайт лежит рядом, с данными, и по нему формируется сжатый, дедуплицированный инкремент.
    Ответ написан
    Комментировать
  • В чем смысл ВУЗа?

    @garik_R
    On my way
    В ВУЗе учат взаимодействовать с людьми. Не в том смысле, что прогулять пары, прибухнуть, а наоборот, решить проблемную контрольную, написать курсовую. Развивать навыки, в любой сфере. Часто, именно этим, люди в Вузе и пренебрегают. Это социальная структура, где, по идеи, должны были собраться люди со схожими интересами. К сожалению, у нас это простой способ откосить от армии. Или родители сказали: "Ты должен поступить..." еtc. Кроме того, диплом поможет устроиться на хорошую работу у нас в стране или где-то в другой.

    Зачем учить? Что касается "странных" предметов, которые, казалось бы, никому не нужны - это ошибочная точка зрения. Любая работа сталкивает нас с такими неожиданностями, о которых мы и не думали. Вот тогда и вспоминаешь про какое-то ОБЖ и так далее. Часто негодование на этот счет связано не с большим умом, а наоборот, с большим незнанением и узким взглядом на жизнь. Подобные предметы нужно проглотить, отмучаться и знать где подсмотреть в случае чего. Или просто посмотреть шире. Вы же не станете отрицать, что даже если Вы учитесь на программиста, знать основы экономики необходимо, верно? А потом вы можете устроиться на работу, где будете писать какой-то софт где уже и не помешают и глубокие знания?

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

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

    Учить наизусть? Скажем так - хуже не будет. Да, сейчас всё немного изменилось. Если до ~2000х важно было иметь хорошую память. По книгам сложней искать, но других способов тогда не было. Сейчас нет острой необходимости помнить важную информацию. Сейчас важно знать где найти. Это умение стало более важным сейчас, из-за доступности интернета. Важная информация откладывается у вас в голове, если вы её постоянно используете - этого не избежать. Тут действительно, сейчас важно знать где найти, чем помнить досконально. Но человек, который является ходячей библиотекой оставляет гаааараздо более интересное впечатление, нежели тот, который говорит: "Щас, сек, я точно знаю, это вот здесь было написано". Перед работодателем это совершенно точно. Если вы помните, умеете развивать мысль, а не тупо заучили - то вы оставите более яркое впечатление. Мне кажется, это старомодный подход и со временем действительно можно будет погуглить и это всех будет устраивать. Но сейчас имидж умного, начитаного человека всё еще очень важен. Всё еще интересно поговорить вживую, с телефоном в кармане, нежели общаться отрывками статей, которые только что прочитал.

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

    ВУЗ нужен. Он учит, учит общению с людьми, решению социальных проблем. Учит решать поставленные задачи, порой, которых вы не ожидали. Дает возможность встретить людей, которым интересна таже область, что и Вам. Встретить людей, которые умнее Вас и прокачаться до их уровня. И да, как ни крути он даёт вам бумажечку. Может быть, она Вам и не пригодится, а может, вы в какой-то момент сильно пожалеете, что не получили её. Я бы даже сказал, что ВУЗ - это часть молодости, и не нужно её себя лишать. :-) И добавил бы, что желательно учится не в родном городе. Но это уже лирика :)
    Ответ написан
    4 комментария
  • Что является основной причиной говнокода?

    Moskus
    @Moskus
    Говнокод - код, который написан, исходя из сиюминутных критериев или критериев, которые основаны на какой-то задаче, противоречащей основной задаче проекта. Скажем, если программист получает деньги за объем кода, а не его качество, он будет писать говнокод. Или если ему важнее всего успеть (потратить минимум времени), а не соблюдать качество продукта. Это при важном условии, если программист способен вообще писать качественный код за разумное время. Если нет, то любой код, который он пишет, автоматически подчиняется только одному требованию - имитации деятельности, потому будет говнокод полностью или в большой степени.
    Ответ написан
    Комментировать
  • Что является основной причиной говнокода?

    dom1n1k
    @dom1n1k
    Тут как посмотреть. Непосредственных причин, которые приводят к говнокоду, может быть очень много:
    1. Отсутствие внятной аналитики и архитектуры
    2. Низкая квалификация исполнителей (он может и хотел бы сделать хорошо, но не знает и не умеет)
    3. Говнокодеры по складу характера (есть такие люди, которым даже если создать все условия, все равно сделают на от****сь, потому что и так сойдет)
    4. Недопонимание и сложные отношения в команде
    5. Сроки (бывают заведомо нереалистичные, а бывают просранные в процессе)
    6. Меняющиеся требования
    7. Плохо выстроенные процессы (документация, тесты и пр)
    8. Текучка кадров
    9. Политика руководства
    И тд и тп... Можно придумать ещё много пунктов.

    Но в конечном итоге все эти причины можно свести к одной первопричине - плохой менеджмент. Хороший менеджмент это такой непонятный зверь... Трудно сформулировать, понять, организовать. Косяки не сразу видны и ощутимы, но потом выливаются в проблемы. Если у вас есть хороший менеджер проекта - он на вес золота.
    Ответ написан
    1 комментарий
  • GitHub как установить ограничение на clone?

    maximkv25
    @maximkv25
    web-developer
    Расшарь экран и покажи.
    Ответ написан
    Комментировать
  • Влияет ли количество файлов в папке на скорость работы с файлом?

    @just_hank_moody
    Лучше разбить на древовидную структуру. Программы смогут без проблем работать с файлом, но если нужно читать список файлов из директории = будут дикие тормоза.
    Ответ написан
    Комментировать
  • В MySQL столько похожих типов данных. Как понять, когда какой именно использовать?

    Rsa97
    @Rsa97
    Для правильного вопроса надо знать половину ответа
    Не так уж и много, учитывая, что в основном каждый тип просто имеет несколько вариантов размера. Например, TINYINT, SMALLINT, MEDIUMINT, INT, BIGINT - это всё один и тот же целочисленный тип, просто разного размера, от 1 до 8 байт.
    Есть, конечно, специфические типы, те же DECIMAL и BIT, но тут надо просто понять их предназначение.
    Начните с документации, там все типы неплохо описаны.
    Ответ написан
    Комментировать
  • Как правильно тюнить конфиги БД, распределять ресурсы?

    MaxDukov
    @MaxDukov
    впишусь в проект как SRE/DevOps.
    начните с понимания сколько данных и в каких БД у Вас. А то Вы начнете отдавать память Постгресу, храня основные данные в Мускуле.
    у мускуля отдельная песня - движки. Вы пишите про innodb - а в нем ли храните?

    Короче, первый шаг это сбор статистики.
    Ответ написан
    8 комментариев
  • Реклама в html5 игре, как?

    Посмотреть другие игры на Canvas чтобы увидеть в коде какие там используются рекламодатели, и перейти на их сайт для прочтения инструкций и условий
    Ответ написан
    Комментировать
  • В чем могут быть проблемы при настройки SSH на виртуальной Ubuntu Server 18.04?

    denistu10
    @denistu10
    Linux System Administrator/SRE Engineer
    Тип подключения поставьте сетевой мост и будет вам счастье
    Ответ написан
    1 комментарий
  • Где найти IT юриста?

    de-iure
    @de-iure
    just a crazy lawyer
    у вас какой-то абстрактный вопрос, вам не нужен человек-энциклопедия, вам нужно решение конкретного вопроса, ИТ огромная сфера даже специалисты работающие в ней всего не знают, а вы от юриста этого хотите... вы конкретный вопрос задавайте...

    а так, например я юрист, знаю что такое и сайт и домен, знаком python, html, css, sql, для себя изучаю flask и еще много чего... но не вижу пока связи всего перечисленного с процедурой расторжения договора и взыскания неосновательного обогащения...

    знания в ИТ могут пригодиться в процессе доказывания, например при взыскании неосновательного обогащения, если услуги оказаны ненадлежащим образом, но и то юрист вам тут все равно не поможет, т.к. он не может давать заключения по вопросам связанным с ИТ (пусть он и разбирается в этих вопросах, но формально он не специалист в данных вопросах, к тому же будет являться представителем одной из сторон, а тут потребуется мнение незаинтересованной стороны - эксперта), потребуется назначение судебной экспертизы...
    Ответ написан
    Комментировать
  • Как обойти CORS?

    rockon404
    @rockon404
    Frontend Developer
    Решение проблемы с помощью nginx.

    Пропишите в /etc/hosts хост приложения:
    127.0.0.1 my-app

    В nginx.conf в секцию server:
    server {
      listen 80;
      server_name my-app;
    
      location ^~ / {
        proxy_pass http://localhost:81/;
      }
      location ^~ /api/ {
        proxy_pass http://localhost:5000/api/;
      }
    }


    Обращайтесь к приложению в браузере как к http://my-app и к API в приложении как к http://my-app/api.
    Ответ написан
    Комментировать
  • Хранить ли изображения в базе данных?

    @AlexSku
    не буду отвечать из-за модератора
    Советую хранить в файлах, иначе база сильно увеличится.
    Ответ написан
    Комментировать
  • Как лучше хранить аватарки: base64 или файлы?

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

    angrySCV
    @angrySCV
    machine learning, programming, startuping
    в вики достаточно кратко и понятно
    https://ru.wikipedia.org/wiki/%D0%9C%D0%B0%D1%88%D...
    -----
    но не берите грех на душу, если нет опыта, отдайте задачу тем кто уже занимался этими вещами. Иначе за такие решения, сами разработчики могут затоить на вас лютую злобу)
    Ответ написан
    3 комментария
  • GitLab: как победить ошибку "uninitialized constant" Rails?

    blackst0ne
    @blackst0ne
    Фулстэк-разработчик
    GitLab пока ещё не поддерживает руби версии 2.5.
    Используйте 2.4.
    Ответ написан
    2 комментария
  • Выполнение заданий?

    HighQuality
    @HighQuality
    ☁ Ниндзя девелопер
    Если задача простая и выполняется очень быстро, то достаточно внутри рельс написать таск и дергать его кроном.

    Если таки рассылка на много-много пользователей, то начинается все так же - с таска, но продолжается в очереди.
    Таск набивает очередь задачами на отправку письма каждому юзеру. Очередь по чуток разбирается со всеми письмами.
    Таск дергать кроном. Очередь — на выбор. Я предпочитаю sidekiq

    Для крона есть хороший гем whenever
    Ответ написан
    3 комментария