• Сообщение: вызов неопределенной функции mysql_connect ()?

    FanatPHP
    @FanatPHP
    Чебуратор тега РНР
    Как там на луне дела?

    Функции mysql_connect уже 5 лет как нет в языке. И предупреждать об этом начали 10 лет назад.

    в /system/database/drivers/ надо поискать какой-нибудь другой драйвер
    Ответ написан
    4 комментария
  • Добавить в избранное - кнопка или ссылка?

    @McBernar
    Кнопка.

    Семантика дизайна очень проста:
    - кнопки выражают действие
    - ссылки ведут на страницы

    Соответственно, "добавить в избранное" - это действие.
    Как и "зарегистрироваться", "найти" и т.д.
    Ответ написан
    Комментировать
  • Как написать операционную систему с нуля ( без специальных знаний)?

    FanatPHP
    @FanatPHP
    Чебуратор тега РНР
    На эту тему есть хороший анекдот.

    Последуй совету великого композитора, начни с малого. Приложение для телефона, небольшой сайт, простую игру для виндоус, например крестики-нолики. После этого можешь решить, что тебе нравится больше. И если не пропадет желание писать операцонную систему то начни изучать Линукс
    Ответ написан
    1 комментарий
  • В чем прикол ( стили )?

    Madeas
    @Madeas
    UI / UX Designer, Frontend Developer
    все так говорят, когда начинают переходить с css на препроцессоры... )
    Ответ написан
    2 комментария
  • Как передаётся переменная в цикл foreach?

    FanatPHP
    @FanatPHP
    Чебуратор тега РНР
    Технически Pardon Me! Where Do I Find 4giveness?, прав, но в контексте вопроса есть нюанс.

    В РНР используется механизм copy-on-write. То есть по умолчанию дублированная переменная является таки ссылкой на оригинал. И только если начать её изменять, она скопируется физически.

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

    Вот я даже примерчик набросал для иллюстрации

    Другое дело что если выборка из БД настолько большая, то просто не следует выгружать сразу массивом, а надо перебирать строки по одной, старым добрым fetch() в цикле. И не забыть использовать небуферизованный запрос. В этом случае, даже если мы в итоге будем собирать массив, памяти будет израсходовано под 1 массив, а не 2(3) (1 под результсет, 1 массив из БД и 1 - опционально - если мы изменяем исходный/генерим новый)
    Ответ написан
    1 комментарий
  • Должна ли оплачиваться работа по фиксу бага?

    @Stalinko Куратор тега Фриланс
    PHP'шник и фрилансер до мозга костей
    При почасовой работе - оплата должна быть.
    При фиксированной цене - в зависимости от ситуации, но скорее всего нет.

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

    Баги можно исправлять бесплатно только в крайних случаях, когда это просто дичайший факап разработчика.
    Ответ написан
    Комментировать
  • Как сделать по БЭМ?

    Get-Web
    @Get-Web Куратор тега HTML
    Front-End Developer
    Если отличия стилистические, то есть, можно предположить что в любом месте можно использовать один из двух вариантов, то лучше делать через модификатор с ключем и его значением. Например:
    socials_theme_ligth
    socials_theme_dark

    где theme это ключ, а ligth и dark его значения, которые не могут быть использованы одновременно на одном блоке.
    Для остальных изменений, которые необходимо внести только в footer мы применяем микс. К примеру нам нужна светлая тема, но в футере необходимо добавить отступ сверху или еще какие-то изменения в данном контексте. Выглядеть это может вот так:

    <ul class="footer__socials  socials socials_theme_ligth">
    ...
    </ul>

    .socials {
      color: #000;
    }
    .socials_theme_ligth {
      color: #fff;
    }
    .footer__socials  {
      margin-top: 100px
    }
    Ответ написан
    4 комментария
  • Чем обусловлена замена северного и южного моста чипсетом?

    Jump
    @Jump
    Системный администратор со стажем.
    Чем обусловлена замена северного и южного моста чипсетом?
    Вопрос не имеет смысла.
    Чипсет - набор (set) микросхем (chip) - обеспечивающих работу процессора.
    Северный и южный мост - название некоторых блоков чипсета.

    В итоге серверный и южный мост это часть чипсета. Никто ни чем их не заменял.

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

    SmthTo
    @SmthTo
    Все перепёлки мира будут оплакивать мою смерть.
    Можно через CSS сделать. Решение работает, начиная с древнего IE11 (т. к. без object-fit). Плюс, картинки не будут подвержены лишней обработке на сервере. Код включает в себя всевозможные хаки для разных браузеров.

    Оно не зависит ни от соотношения сторон самой картинки, ни от ширины контейнера (можно делать адаптивно без px, как в моем примере) + поддержка браузерами, можно сказать, максимальная + место под картинку не скачет, пока картинка грузится (lazyload оценит):

    Ответ написан
    4 комментария
  • Правильно ли я понимаю суть Tests в Postman?

    @Vitsliputsli
    Без разницы где вы пишите тесты. Тест - это эмулирование некой ситуации и сравнение полученного результата с ожидаемым. Абсолютно не важно 200 или 400. Вы посылаете корректный запрос и ожидаете получить в ответ 200, получили - значит ок. Вы шлете запрос с ошибочными данными и ожидаете в ответ 400, получили что-то иное, значит fail. Т.к. это тоже некорректное поведение.
    Другое дело, что лучше сначала покрыть тестами стандартное поведение, и не только возвращаемые коды, но и данные, а затем уже исключения, ошибки и прочее.
    Ответ написан
    Комментировать
  • Что пишут на питоне?

    Tomio
    @Tomio
    backend developer (python, php)
    На питоне пишут всё, что вы перечислили, и ещё много чего) Питон - универсальный и кросплатформенный язык.
    Ответ написан
  • Как заставить sass реагировать на сохранение файлов, которые импортирую?

    Как вариант, использовать таскранер типа Gulp.
    Там можно настроить "следилку" за нужными файлами и запускать компиляцию
    Ответ написан
    Комментировать
  • По вине заказчика удалили сайт, теперь требует вернуть исходники?

    inoise
    @inoise
    Solution Architect, AWS Certified, Serverless
    Вы сделали работу и сдали все. Если у вас не было договора где вы должны поддерживать работоспособность этого сайта то можно смело послать человека. Можете также ему сказать что исходный код был передан ему полностью и удален для сохранения его правообладания
    Ответ написан
    Комментировать
  • Хорошо ли хранить serialize в БД?

    FanatPHP
    @FanatPHP
    Чебуратор тега РНР
    Ни в коем случае.
    Твоя база данных не зря названа реляционной, то есть связанной. Информация хранится в связанных между собой таблицах. Это позволяет получать нужную информацию одним запростом и обрабатывать миллионы срок без потери производительности. Что в миллион раз важнее лени "создавать дополнительную таблицу"

    И не надо слушать советчиков из соседних ответов.
    Увы, поколение милленниалов не умеет воспринимать письменный текст, и реагирует в лучшем случае на пару ключевых слов в вопросе, не воспринимая корнтекст. Который, чтобы было понятно, звучит так: Нашел у папы в сарае заряженнвую двустволку. Прикладом очень удобно орехи колоть. Это удобнее потому что из щипцов орехи вываливаются. Нормально ли колоть орехи заряженным ружьем?

    Сериализованные данные стоит хранить в бд только в очень крайнем случае.
    На данном этапе вообще забудь про такую возможность и учись работать с БД правильно.
    Ответ написан
    9 комментариев
  • Как ответить на этот курьезный вопрос в анкете для службы безопасности компании?

    opium
    @opium
    Просто люблю качественно работать
    Никто это не проверяет, считай что ты начал новую жизнь с 18 лет и ничего больше никогда не нарушаешь.
    Смело пиши нет
    Ответ написан
    Комментировать
  • Как защитить себя от кражи интеллектуальной собственности?

    Zoominger
    @Zoominger Куратор тега Веб-разработка
    System Integrator
    Роспатент не патентует алгоритмы.

    А вообще - забейте, ваши труды никому не нужны (не в обиду, это факт).
    Откройте её под лицензией GPL и никто не сможет присвоить себе её авторство.
    Ответ написан
    1 комментарий
  • Объясните почему не подсвечивается первый _description?

    Не подсвечивается, потому что псевдокласс :first-child указывает на первый элемент среди всех элементов, а не первый элемент с данным классом.

    По сути, селектор .landing-block__description:first-child означает элемент с классом .landing-block__description, который является первым в разметке.
    Но он ведь первым не является. Перед ним еще есть элемент с классом .landing-block__title
    Ответ написан
    5 комментариев
  • Какую программу для верстки выбрать?

    wapster92
    @wapster92 Куратор тега Вёрстка
    (webstorm, VSCode, Atom, Sublime) + gulp || webpack. Для VSCode есть плагин livereload, для других возможно тоже.
    Ответ написан
    2 комментария
  • Почему некоторые люди утврерждают что плохо использовать jQuery?

    @Programmir
    Ничем не плохо. На jQuery можно практически всё реализовать. Я его использую. Гораздо удобнее чистого JS.
    Ответ написан
    Комментировать
  • Зачем нужно ООП?

    @EvgeniiR
    https://github.com/EvgeniiR
    Разберитесь с разницей между ООП и процедурным программированием для начала.
    ООП в формулировке "Инкапсуляция, Наследование и Полиморфизм" может и не нужно.
    Объектно-ориентированный дизайн как инструмент декомпозиции нужен чтобы контролировать сложность системы.

    И вообще, вы хотите чтобы вам тут в двух словах разобрали тему многих книг и публикаций. Так не бывает.

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

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

    Впрочем, если вам этот ответ что-то даст:
    Цель ООП - управление сложностью ПО.
    Ответ написан
    1 комментарий