• Можно ли спасти жёсткий диск?

    15432
    @15432
    Системный программист ^_^
    Судя по гуглу, кривой размер не проблема.
    А вот с этой серией дисков беда...
    https://habrahabr.ru/post/251941/
    Ответ написан
    3 комментария
  • Когда нужно думать о создании базы данных?

    Rsa97
    @Rsa97
    Для правильного вопроса надо знать половину ответа
    Если приложение однопользовательское и никакого поиска по данным не надо - база данных не нужна.
    Если у вас сайт, рассчитанный на одновременную работу более, чем одного человека, то без базы данных не обойтись. Простейшее изменение данных, выполняемое на БД одной атомарной командой, в случае файлов потребует блокировки файла, а значит ожидания его освобождения остальными пользователями.

    P.S.
    Ок, пусть будет блог. Комментировать посты в нём можно будет? Тогда надо как-то эти комментарии записывать. Лайки ставить или карму править - это тоже запись данных. Даже простейший счётчик просмотров это уже изменение данных. Вот на примере такого счётчика обычно и поясняют необходимость атомарности и блокировок. Представьте, что два человека одновременно открыли пост блога и скрипты увеличивают счётчики прочтения, старое значение 99.

    Скрипт 1: прочитать файл "счётчики"
    Скрипт 2: прочитать файл "счётчики"
    Скрипт 1: найти в файле счётчик поста, получили 99
    Скрипт 2: найти в файле счётчик поста, получили 99
    Скрипт 1: увеличить счётчик поста, получили 100
    Скрипт 2: увеличить счётчик поста, получили 100
    Скрипт 1: записать файл "счётчики"
    Скрипт 2: записать файл "счётчики"

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

    Ну и поиск по данным, скажем десять самых читаемых постов. В файловом варианте вам придётся считать весь json, и отсортировать его, тогда как в БД при правильной расстановке индексов это действие выполняется в один запрос с линейным получением первых десяти записей по индексу.
    Ответ написан
    5 комментариев
  • Как передать метод в Java?

    sergey-gornostaev
    @sergey-gornostaev Куратор тега Java
    Седой и строгий
    Что такое Fn? В приведённом вами коде такое имя нигде не определено. К тому же, Test принимает два параметра, а вы передаёте один. Подозреваю, что вы хотели
    Test(Main::Func, 475)
    Ответ написан
    2 комментария
  • Как решить проблему маленьких разрешений в смартфонах?

    Rou1997
    @Rou1997
    Очень непонятное объяснение, и кода не видно, поэтому я не знаю, как вам решить проблему, вижу только скриншот, на нем вижу "иконки", возможно это в них проблема, тогда нужно либо сделать для них версию ldpi, либо сами серые квадратики сделать так, чтобы квадратики масштабировались по размеру контейнера, а их иконки - по размеру квадратиков.
    Ответ написан
    2 комментария
  • Как Laravel узнаёт имя таблицы MySQL?

    @Arik
    Метод getTable() должен вернуть имя таблицы, при этом идет обработка свойства table, можете или свойство задать либо сразу метод переназначить. По-умолчанию можно увидеть, что берет имя модели и обрабатывает через функции plural и snake
    Ответ написан
    Комментировать
  • Как узнать сколько тактов уходит на исполнение чего ни будь написанного на PHP?

    @Arik
    xhprof очень хорош
    Ответ написан
    Комментировать
  • Почему в C++ приоритет сравнения выше, чем побитовых логичеких операций?

    jcmvbkbc
    @jcmvbkbc
    "I'm here to consult you" © Dogbert
    Почему в C++ приоритет сравнения выше, чем побитовых логичеких операций?
    Например, x & 8 != 0 равносильно x & (8 != 0), а не (x & 8) != 0.

    Это наследие C, в ранних версиях которого не было операций && и ||, а сложные условия реализовывались битовыми операциями.
    Ответ написан
    Комментировать
  • PHP: $a%$b vs bcmod($a, $b)?

    wielski
    @wielski
    ✔ Совет: Вам помогли? Отметьте ответы решением.
    Проблема данной функции в том, что она наотрез отказывается работать с числами типа float, исключительно работает с int

    Могу посоветовать этот пакет: https://bitbucket.org/zdenekdrahos/bn-php
    Работать с ним как-то так в вашем случае:
    $eval = new \BN\Expression\ExpressionEvaluator();
    $operators = new \BN\Expression\OperatorsFactory();
    $eval->setOperators($operators->getOperators(array('%')));
    echo $eval->evaluate('10 % 2.1'); // 1.6
    Ответ написан
    Комментировать
  • Где взять бесплатный ssl сертификат?

    @zzzevaka
    1.
    это не безопасно, на мой взгляд (потому как доверяются пароли третьей стороне, которая не понятно что и как именно будет делать на сервере в автоматическом режиме)
    Это вы зря. Это не компилируемая программа, от которой нет исходников, а не очень сложный скрипт, который лежит в общем доступе - https://github.com/certbot/certbot. Если бы там был какой-то подвох в плане безопасности - было бы много шума.

    2. letsencrypt сертификат вы вполне можете получить и ручками, только это сложнее и придется повторять раз в 3 месяца (вроде столько срок действия их сертификата).

    3. Есть StartSSL. У них вкусные сертификаты на 3 года, но был недавно шум https://geektimes.ru/post/281188/. У меня их сертификаты, полученные летом - работают нормально.
    Ответ написан
    2 комментария
  • Смысл систем сборок Gulp, Grunt и т.д?

    index0h
    @index0h
    PHP, Golang. https://github.com/index0h
    Смысл таск ранеров в том, что бы упростить и автоматизировать рутиные задачи. Сборку можно сделать да хоть на bash скриптах. Grunt/Gulp - просто заточены под это и просты в изучении.
    В команде намного проще использовать подобные средства, чем выполнять все задачи поднятия проекта в ручную.
    Например при сборке фронта вам требуется:
    1. Проверить исходники через eslint
    2. Минифицировать js код, и для dev сборки притянуть сорс мапы
    3. Собрать css из кучки взаимосвязанных less файлов и тоже минимизировать.
    4. Шаблоны собрать из jade например, или любого другого шаблонизатора
    5. Прогнать unit тесты

    Безусловно, можно все эти шаги выполнить полностью в ручную, однако на много проще один раз этот процесс описать в инструкции для сборки и вызывать что-то в стиле gulp build
    Ответ написан
    Комментировать
  • Как осуществить перевод куска кода LESS в SCSS?

    Wolfnsex
    @Wolfnsex Куратор тега CSS
    Если не хочешь быть первым - не вставай в очередь!
    Я просто оставлю это здесь...
    Ответ написан
    Комментировать
  • Нормально ли спрашивать про бывшую зарплату?

    LightAlloy
    @LightAlloy
    Ruby developer
    Думаю, вопрос задан для того, чтобы понять, сколько вам платить.
    Но я считаю, что спрашивать надо прямо "Какую зп хотите?", а вопрос "Какая у вас была зарплата?" - некорректный.
    Ответ написан
    7 комментариев
  • Как заработать на blade сервере (или по крайней мере не уходить в минус)?

    Jump
    @Jump Куратор тега Системное администрирование
    Системный администратор со стажем.
    В таком виде и на таких условиях оно никому не нужно.

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

    Остается единственный способ монетизации - использовать в своем проекте.
    Если у вас есть проект где это железо востребовано - монетизируете.
    Нет такого проекта - не монетизируете.

    Создавать проект под кучку старого железа - ну смешно честное слово.
    Ответ написан
    1 комментарий
  • YII2 ActiveQuery есть ли "аналог" fetchColumn?

    qonand
    @qonand
    Software Engineer
    ActiveQuery предназначается для работы с ActiveRecord, а если речь идет о переборе одного столбца это не связано с AR. Зачем тогда использовать ActiveQuery если можно использовать просто Query? Почему тогда просто не сделать так:
    $query->select(['my_column'])
    и уже потом работать с результирующей выборкой?
    Ответ написан
    6 комментариев
  • Варианты подключения виджета и получения параметров?

    AMar4enko
    @AMar4enko
    Сделайте шаблон скрипта, заменив параметры плейсхолдерами. По запросу отдавайте не статику, а рендерите этот шаблон, подставляя вместо плейсхолдеров настройки для конкретного клиента. Кешируйте для каждого клиента его скрипт.
    Ответ написан
    Комментировать
  • Безопасно ли работать с decimal из БД?

    @AlexKuznec
    Для вещественных чисел a и b проверка на равенство с учетом погрешности выполняется так:
    abs(a - b) < eps
    где eps - малое число, изображающее погрешность.
    В вашем случае я бы попробовал eps = 0,0001 или меньше.
    Ответ написан
    4 комментария
  • Какие правила нужно учитывать, для написания ответов в Toster?

    xmoonlight
    @xmoonlight
    https://sitecoder.blogspot.com
    Краткий перечень (кроме соблюдения законов, выражений, правил тостера и прочего):
    1. Уважение ко всем участникам.
    2. Отношение к менее знающим с уважением.
    3. Любое несогласие должно быть аргументировано ссылкой на первоисточник.
    4. Ответ должен нести пользу спрашивающему (и всем остальным), а не отвечающему.
    5. Не нужно осуждать других, чтобы выглядеть лидером в глазах спрашивающего.
    Ответ написан
    2 комментария
  • Надо ли закрывать одиночные тэги в HTML5?

    dom1n1k
    @dom1n1k
    Имеется в виду ставить ли закрывающий слэш вот так <br />?
    По спецификации - не нужно. Закрывающие слэши предполагаются в XHTML, а в HTML (любой версии) они не нужны.
    По здравому смыслу - тоже не нужно.
    Практически - пофиг, работает одинаково, браузеры тут очень толерантны к кодеру.
    Ответ написан
    2 комментария
  • Как организовать вложенность одного Marionette.ItemView в другой?

    В видимо используете Marionette v2?
    Marionette.ItemView замените Marionette.LayoutView и в регион рендерте коллекцию. А вообще в документации все подробно и с примерами marionettejs.com/docs/v2.4.7/marionette.layoutview...
    Ответ написан
    4 комментария
  • Какой язык лучше всего учить для потокового распознавания текста с картинок на экране?

    xmoonlight
    @xmoonlight
    https://sitecoder.blogspot.com
    Алгоритмы Computer Vision нужно учить, а не язык программирования!
    Текст с видео можно распознавать даже через JS.
    Ответ написан
    2 комментария