Ну, в некоторых векторных форматах данных - бывает возможность задать относительные координаты. Тогда можно изменить только одну базовую координату - и все, кто ссылаются на неё, тоже сдвинутся. В примере с синусоидой - достаточно сдвигать её по горизонтали.
Зачем нужен "id покупки"? Почему бы не обойтись "id корзины/покупателя" и списком из "itemid с количеством каждого"?
Есть такой вариант:
Создаём в БД одно числовое поле (отдельную таблицу с одной записью с одним полем). Обращение к этому полю такое: "узнать номер поля и сразу же увеличить его на 1". Вот и уникальные номера.
В "бекапить по интернету" возможна проблема в виде NAT. Как минимум, один из пары "хост, агент" должен иметь реальный адрес; причём надо читать доки - кто из них должен иметь реальный адрес, не факт, что оба варианта рабочие.
Я так понял, это работает по такой схеме:
Агент собирает данные для создания бэкапа и создаёт на локальной машине бэкап.
По мере создания бэкапа - кто-то инициирует соединение (скорее всего, агент связывается с хостом), и созданный бэкап передаётся на хост.
При проблемах со связью - возможна докачка.
Mac, скорее всего, поддерживается - это же FreeBSD.
Bavashi, Интерфейс перехода через дорогу - сделан в расчёте на тупых людей, чтобы все могли перейти дорогу. И то - при этом надо знакомиться с понятием об автомобиле, с концепцией правостороннего движения, с односторонним движением и много чего ещё.
Фраза "декларативное программирование требует более глубокого знания математики" как бы намекает, что императивное программирование тоже требует знания математики - но меньше. Например, я так и не понял, как в декларативном программировании отсортировать массив.
Сергей Горностаев, Если Вы не в курсе того, что некоторые вещи нужно не тестировать, а доказывать как теорему (в основном речь о реал-таймовых приложениях) - то мне жать Вашего работодателя.
Bavashi, Не путайте пользователей и разработчиков.
dmitry-toster, Если Вы не понимаете выражение "логарифм по основанию два", то Вам очень трудно будет стать хорошим программистом...
Для Вашего примера - Вы получили число 7.
2**6=64
2**7=128 (два в степени семь = 2*2*2*2*2*2*2 = 128)
128 как раз первое число в ряжу степеней двойки, которое больше, чем сто.
Так понятно?
Дизассемблировать - излишне, там проще исходники прочитать.
Чтение документации - ни фига не достаточно, ибо её ещё надо понять. А для этого надо знать заложенные туда математические концепции. В противном случае есть риск неправильно использовать библиотеку.
Сергей Горностаев, В любом языке можно писать деаларативно; если не весь код, то хотя бы отдельные фрагменты. Однако, в языке, который не заточен под декларативное программирование - это сложно. А если в языке есть императивные операторы - то программист в любой момент может сбиться на императивное программирование, и компилятор постоянно должен это учитывать.
Декларативность - это вполне сакральное знание. Ну, как минимум - в той же степени, что и вообще программирование. Существование "индусского кода" вполне доказывает, что знание это сакрально и доступно не всем - причём не в силу засекреченности, а именно в силу неспособности большинства людей понять смысл этого знания.
Чтобы "написать код для большой и сложной системы, работающей под высокими нагрузками" - нужно как минимум понимать, какие требования накладывают высокие нагрузки. А это - вполне математика.
Если программист пользуется готовыми библиотеками, разработанными именно под задачи этого типа и заточенные на высокие нагрузки - он может расслабиться и "не знать ничего сложнее арифметики". Вот только работодатель, нанявший такого программиста - рискует получить код, который будет создавать невоспроизводимые проблемы с производительностью, а то и вообще работать некорректно.
Евгений, Я не понял - неужели в Редмонде изначально не понимали опасность такого подхода? И почему не могли сделать безопасное исполнение Active Desktop, выкинув из него потенциально опасные вещи?
Допустим, Иксу видеопоток поступает быстро, а Игреку - с задержкой в полсекунды. Как это будет влиять на успешность игры?
Вы говорите про управляющие команды. А ничего, что игрок может подать нужную управляющую команду только после того, как на экране отрисуется событие, на которое надо реагировать?
Дублирование управляющих команд нужно на случай пропадания одного из пакетов. Что тут неочевидного?
Vlad Osadchyi, sudo mount /dev/sda2 /mnt вообще ни на что не влияет и слетает после перезагрузки. Но успевает повлиять на выполнение команды sudo grub-install --root-directory=/mnt /dev/sda .
Почитайте мануал по grub-install - Вам явно надо натравливать её не на смонтированную партицию, а на загрузочный сектор. Ну и в первую очередь - выяснить, у Вас там BIOS или UEFI.
vreitech, 127.0.0.1 - это скорее внутренняя сеть компьютера.
timka228, что прослушивать - определяется или в тексте скрипта или коде программы (плохой стиль программирования); или задаётся параметром при запуске и/или в конфиг-файле и/или в переменной окружения (так правильно, лучше все три).