Задать вопрос
  • Какие есть альтернативы библиотек?

    Adamos
    @Adamos
    OpenSSL - сишная библиотека, ее можно использовать с чем угодно.
    Библиотек по работе с XML - анусом не пережевать. Навскидку - pugi::xml.
    Ответ написан
  • Как минимизировать код яндекс карт?

    Adamos
    @Adamos
    ЯндексКарта с одним, собственно, объектом - адресом компании

    Заменяется на скриншот этой карты, щелчок по которому открывает страницу с полноценной картой. И все летает.
    Ответ написан
    Комментировать
  • Как отправить поле из формы в Robokassa?

    Adamos
    @Adamos
    При отправке формы обращаетесь по ajax к вашему сайту за получением подписи, подставляете ее и только потом отправляете форму. При этом проверяете валидность того, что ввел пользователь (чтобы он не подставил в оплату заказа ценой 100 рублей плату 1 рубль, например).
    Подпись, собственно, для этого и используется.
    Ответ написан
    Комментировать
  • В чём приемущество SQLite перед Excel?

    Adamos
    @Adamos
    Сейчас езжу в инвалидной коляске от Майкрософт, и мне хватает.
    Я задумался слезть с коляски и попробовать ходить ногами.
    Но не знаю, какую выгоду я для себя получу.
    Просто я думаю, стоит ли пробовать или нет.
    Ответ написан
  • Как организовать одно рабочее пространство для 5 и более устройств?

    Adamos
    @Adamos
    Если VS используется не для Шарпа - в первую очередь выкинуть ее в окошко и вздохнуть с облегчением.
    Потом присмотреть облачное хранилище для того, что обрабатывается Фотошопом - если там все серьезно, то каждый раз синхронизировать это все просто нелепо.
    Останутся исходники, которые могут лежать в каком угодно облаке или обрабатываться онлайн-IDE... наконец, просто синхронизируются за секунды тем же Гитом.
    Ответ написан
    Комментировать
  • Установка Linux без клавы?

    Adamos
    @Adamos
    Это же Линукс, а не Винды.
    Снимаем винт, ставим на любую другую машину, устанавливаем Линукс, возвращаем винт.
    Ответ написан
  • Реализация конечного цикла без проверки условия выхода?

    Adamos
    @Adamos
    Главная фишка - в том. что arg / N == 0 до тех пор, пока arg < N.
    Функция-итератор вызывает функцию ptr по адресу.
    Адрес вычисляется по формуле "адрес функции-итератора плюс то самое выражение arg / N, умноженное на разницу адресов функции-итератора и функции-конца цикла.
    Вместо банального сравнения используется математическое выражение, вот и вся хитрость.
    И да, Antony прав - это не чистый цикл, а просто извращенная рекурсия.

    P.S. Кстати, можно превратить это извращение и в цикл - создаем вектор адресов функций, заполняем его нужным количеством адресов функции, изменяющей переменную цикла, а в конец добавляем адрес завершающей функции. Проходим по нему, ничего не проверяя... зато без рекурсии ;))
    P.P.S. Хотя вектор здесь тоже не нужен. Просто массив из двух значений и индексом - то самое выражение.
    Ответ написан
    1 комментарий
  • Нормально ли, что если я удалю что-то из MySQL вручную, а не через админку на сайте, то сайт будет работать некорректно?

    Adamos
    @Adamos
    А если кто-то зайдет по FTP и удалит ядро сайта - это тоже разработчик должен учитывать?
    Неполадки на хостинге, проверка целостности и консистентности данных - это одна тема. Слон в посудной лавке (идиот, имеющий прямой доступ, куда не надо) - совсем другая.
    Ответ написан
    Комментировать
  • Как ограничить кол-во запросов в секунду в Telegram боте?

    Adamos
    @Adamos
    1. Проверить, когда начислялся бонус последний раз
    2. Если больше дня назад, то начислить бонус и обновить дату получения

    Если бонусы хранятся в базе, то нужно просто собрать эти два действия в один атомарный оператор обновления.
    Ответ написан
  • PHP-инструмент для создания отчётов в формате pdf/excel?

    Adamos
    @Adamos
    Пишешь на PHP обобщенный вывод данных из запроса в HTML-таблицу.
    Если нужен xls - добавляешь HTML-заголовок с кодировкой, отдаешь этот файл с заголовком, в котором сказано, что это xls-файл, любой офис это спокойно воспринимает.
    Если нужен pdf - скармливаешь ту же таблицу mPDF. Десяток строчек кода.
    Вот и асе.
    Главная трудность в том, чтобы выдавать корректные заголовки столбцов таблицы.
    Но это за вас никакая сторонняя библиотека все равно не сделает - откуда ей знать, что у вас за данные?
    Ответ написан
  • В чем разница между архитектурой Linux и Windows с точки зрения программиста?

    Adamos
    @Adamos
    С точки зрения системного программиста, Винды и Линь в принципе разные темы, и сравнивать их бессмысленно - ты пишешь либо под одну, либо под другую.

    С точки зрения прикладного программиста, разница в архитектуре некритична, поскольку есть кроссплатформенные библиотеки.

    С точки зрения программиста, который выбирает, на какой системе ему строгать свой говнокод (обычный бэкграунд подобных вопросов на Тостере), архитектура системы вообще ни при чем.
    Ответ написан
    2 комментария
  • Чем опытнее разработчик, тем меньше соблюдается принцип KISS?

    Adamos
    @Adamos
    Чем опытнее разработчик, тем чаще, выполняя конкретную задачу, он понимает, что примерно такую уже решал. Поэтому опытный разработчик видит уровни абстракции, общие для многих решений. И описывает их так, чтобы потом, при решении очередной конкретной задачи, использовать написанное ранее с минимумом дополнительных усилий.
    Вы, не имея такого опыта, просто не понимаете, что все эти лееры, провайдеры и трейты - прекрасная возможность написать две строчки и быть уверенным в их работе там, где вы угробите два дня на написание "простого" решения, а потом еще неделю будете отлавливать его глюки.
    Ответ написан
    6 комментариев
  • Каким образом из даты рождения получить возраст?

    Adamos
    @Adamos
    На самом деле, DATEDIFF вам совершенно ни к чему. Нужно всего лишь вычесть год рождения из текущего, а затем уменьшить результат на единицу, если месяц рождения больше текущего или месяцы равны, а дата больше.
    Можно свести это к одной формуле год * 10000 + месяц * 100 + день.
    Нацело делим разницу на 10000 - получаем возраст.
    Ответ написан
    Комментировать
  • Как реализовать перенаправление подключения в зависимости от пользователя?

    Adamos
    @Adamos
    echo "ssh 192.168.0.2" >> /home/vasya/.bashrc
    Ответ написан
    Комментировать
  • Какой сервер выбрать для веб-приложения?

    Adamos
    @Adamos
    Быль. Использовал для одного проекта давным-давно зарегистрированный бесплатный аккаунт на Хостингере. Однажды даже оплаченный, когда они сделали вид, что это для отсеивания ботов, но речь не о том.
    Хостингеру эта халява надоела, и заявили они, что больше бесплатного хостинга не будет - либо платите, либо валите на 000webhost. Решил проверить, что там, зарегистрировался, посмотрел - не понравилось. Пока проплатил Хостингеру, который подсуетился с акцией, потом съеду на что-то более вменяемое, скорее всего - дешевый VDS. Но речь опять-таки не о том.

    Через неделю приходит мне на почту письмецо: "Я хакер, сломал ваш ящик, все дела, вирус по почте в веб-камеру, ваши нелицеприятные снимки по всем вашим контактам". И в доказательство взлома - пароль... который я использовал для регистрации на 000webhost, и только там. Вот тебе, бабушка, и бесплатный сыр.
    Ответ написан
    Комментировать
  • Как реализовать алгорим задачи о сумме подмножеств?

    Adamos
    @Adamos
    Отрицательные числа, конечно, здорово портят задачу ;) классические переборные алгоритмы такой подлянки не имеют.
    Но общую логику имеет смысл сохранить: ваша цель - определенная сумма, можно к ней стремиться. На каждом шаге подбора варианты сортируются по тому, насколько их прибавление приближает вас к искомой сумме (по модулю). И перебор до тех пор, пока первое же число не дает разность 0.
    Ответ написан
    4 комментария
  • Как правильно "расшарить" папку в SAMBA?

    Adamos
    @Adamos
    А кто вам сказал, что user - это пользователь, под которым вы логинитесь на сайт?
    Создайте бесправного юзера, и в настройках самбы его же можно прописать.
    Заодно, внезапно, пользователи с нормальных систем смогут зайти в те же папки без всякой самбы, через sshfs или sftp.
    Ответ написан
    Комментировать
  • Как сделать интерфейс под Windows?

    Adamos
    @Adamos
    Нужно еще учитывать, как часто вам придется переделывать интерфейс вслед за сайтом.
    Поэтому вычеркиваете С++, Шарп, Дельфы и прочие нормальные языки, на которых вы угрепаетесь переписывать браузер самостоятельно, и читаем, что такое Electron.
    Ответ написан
    3 комментария
  • Пожалуйста оцените мое убогое ООП?

    Adamos
    @Adamos
    Во-первых, трудно поверить, что нет кучи готовых решений, разбирающих лог Апача.
    Так что задание, очевидно, учебное, на использование языка и понимание, что такое ООП.
    Так вот, ООП в РНР - это чтобы один раз сделать грязную работу, и больше в нее не заглядывать, используя готовый и по возможности очевидный интерфейс класса.
    У вас же одноразовая портянка, в которой даже имена файлов жестко прописаны в коде, убогие комментарии вместо PHPDoc и вообще ощущение, что ООП вы начали заниматься вчера и считаете его просто возможностью загнать побольше функций в один класс.
    Ну, и результат соответствующий. Вам нужно не исправить это решение, вам нужно позаниматься ООП в РНР некоторое время и прийти к соответствующей парадигме в мышлении. А этот класс можете просто выкинуть.
    Ответ написан
    4 комментария