• Сайт, в котором в несколько кликов можно в облаке запустить виртуальную машину с линуксом на борту?

    dummyman
    @dummyman
    диссидент-схизматик
    Ох и не любят линуксы решения в два клика. Линукс приветствует развертку в пару строк баша.
    Чтобы получить весь необходимый софт точных версий, вам необходимо подогнать структуру вашего проекта, например, под парадигму dockera.
    Все остальные папки с вашим кодом, настройками, файлами БД можно собрать в diff-архивы утилитой diff.
    Потом у вас будет широкий выбор сервисов, где можно сие развернуть!
    Ответ написан
    Комментировать
  • Почему у xls документов такой mimetype?

    dummyman
    @dummyman
    диссидент-схизматик
    xlsx - сжатый xml, по dtd которого можно его конкретно идентифицировать
    а xls не имеет markup-структуры
    Ответ написан
    Комментировать
  • Почему под root virtualenv активируется а под пользователем выдает ошибку -sh: 3: source: not found?

    dummyman
    @dummyman
    диссидент-схизматик
    Нужно проверить несколько условий:
    • домашняя папка пользователя существует
    • домашняя папка принадлежит пользователю
    • на жестком диске или в оперативной памяти достаточно свободного места
    • доступна для записи папка /tmp
    Ответ написан
    1 комментарий
  • Как сделать из 1000 чиcло 100?

    dummyman
    @dummyman
    диссидент-схизматик
    function round(value, exp){
        return decimalAdjust('round', value, exp);
    }
    function ceil(value, exp){
        return decimalAdjust('ceil', value, exp);
    }
    function floor(value, exp){
        return decimalAdjust('floor', value, exp);
    }
    function decimalAdjust(type, value, exp) {
        // Если степень не определена, либо равна нулю...
        if (typeof exp === 'undefined' || +exp === 0) {
          return Math[type](value);
        }
        value = +value;
        exp = +exp;
        // Если значение не является числом, либо степень не является целым числом...
        if (isNaN(value) || !(typeof exp === 'number' && exp % 1 === 0)) {
          return NaN;
        }
        // Сдвиг разрядов
        value = value.toString().split('e');
        value = Math[type](+(value[0] + 'e' + (value[1] ? (+value[1] - exp) : -exp)));
        // Обратный сдвиг
        value = value.toString().split('e');
        return +(value[0] + 'e' + (value[1] ? (+value[1] + exp) : exp));
    }
    Ответ написан
    Комментировать
  • Выгодно ли майнить Ethereum на видеокартах сейчас?

    dummyman
    @dummyman
    диссидент-схизматик
    Выгодно или не выгодно - это смотря как считать.
    Если у вас уже есть видеокарта и вы не платите за электричество - должно быть выгодно полюбому, т.к. расходов никаких нет.
    Если вы оплачиваете электричество - это другой вопрос. Тут уже надо исходить из цены вашего электричества.
    Может работать и в убыток.
    Если вы хотите купить видеокарту для майнинга - однозначно нет! Не делайте этого. Обратитесь в майнинг-пулы, вложитесь в них по их правилам.
    Ответ написан
  • Как вернуть из базы данных юзеров, где заполнено определенное поле в mongoose?

    dummyman
    @dummyman
    диссидент-схизматик
    mongoosejs.com/docs/api.html#query_Query-exists

    Не оно?

    // { name: { $exists: true }}
    Thing.where('name').exists()
    Thing.where('name').exists(true)
    Thing.find().exists('name')
    
    // { name: { $exists: false }}
    Thing.where('name').exists(false);
    Thing.find().exists('name', false);
    Ответ написан
    Комментировать
  • Где качать скиллы по системному администрированию?

    dummyman
    @dummyman
    диссидент-схизматик
    Но где можно получить и отточить дополнительные скиллы?

    Реально хотите прокачать скилл? А может оно вам не надо?
    Запишитесь на заинтересующие вас курсы:
    https://www.offensive-security.com/information-sec...
    https://www.offensive-security.com/information-sec...
    https://www.offensive-security.com/information-sec...
    Ответ написан
    Комментировать
  • Готовый сервлет. Вопрос к опытным front end девелоперам и тим лидам. Кто может поделиться или где искать?

    dummyman
    @dummyman
    диссидент-схизматик
    Вы написали столько преложений. Описание вопроса просто поражает. Из него не только не понятно что вам конкретно нужно, но и близко тематику вашей деятельности. Для ПМ имхо должны были описать проблему раз в 10 короче и ближе к теме.

    Готовые решения есть. Пробовали BizTalk?

    Судя по названию должен быть не таким и бизТалковым. Настраивается мышкой, в лучших традициях мелкомягких.

    Сам сервлет никак не может быть готовым решением и вообще чисто программерское понятие.
    Вот пример из википедии
    import java.io.IOException;
    import java.io.PrintWriter;
    import javax.servlet.ServletException;
    import javax.servlet.http.HttpServlet;
    import javax.servlet.http.HttpServletRequest;
    import javax.servlet.http.HttpServletResponse;
    import javax.servlet.http.HttpSession;
    
    public class NewServlet extends HttpServlet {
       
        @Override
        protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
            
            // Параметр
            String parameter = request.getParameter("parameter");
    
            // Старт HTTP сессии
            HttpSession session = request.getSession(true);
            session.setAttribute("parameter", parameter);
    
            response.setContentType("text/html;charset=UTF-8");
            PrintWriter out = response.getWriter();
            try {
                out.println("<html>");
                out.println("<head>");
                out.println("<title>Заголовок</title>");
                out.println("</head>");
                out.println("<body>");
                out.println("<h1>Пример сервлета"+parameter+"</h1>");
                out.println("</body>");
                out.println("</html>");
            } finally {
                out.close();
            }
        } 
    
        @Override
        public String getServletInfo() {
            return "Пример сервлета";
        }
    
    }
    Ответ написан
    Комментировать
  • Опенкарт, как настроить переход от сайта к лендингу?

    dummyman
    @dummyman
    диссидент-схизматик
    Немного зашквар.
    // '.menu a' я написал от балды, подставь значение верстки как у тебя в шаблоне карта
    document.querySelector('.menu a').addEventListener('click', function(event){
       event.preventDefault();
       event.stopPropagation();
       this.href; // По этому параметру можешь определить до куда скролиться
                 // то есть, какую именно ссылку нажали
       document.body.scrollTop; // Меняя значение этой переменной 
                              //страница проскролится до узказанных пикселей
       // Плавный scrollTo() можно найти в интернетах.
    })


    Только учти, что поисковик будет видеть ссылку на страницу. Скорее всего, если пользователь искал товар, поисковик пришлет пользователя именно на страницу товара а не на страницу витрины категории.
    Ответ написан
  • Как сделать фиксированный список комманд для пользователя в SSH?

    dummyman
    @dummyman
    диссидент-схизматик
    Есть стандартная для большинства дистрибутивов тулза chroot. Ее использует для собитвенных изоляций куча системного софта. Она есть везде и ее не придется устанавливать.
    Создаешь пользователя. Создаешь новую директорию.
    В ней создаешь основные системные папки. Одну из папок (например, /home) делаешь пользовательской, то есть меняешь хозяина chown на этого пользователя.
    Потом ссылками (команда ln) добавляешь в эти папки все то, к чему хочешь чтобы пользователь и программы запущенные под ним имели доступ.
    Все его сессии запускаешь через chroot.
    Не забываем ограничить использование hdd (группа команд quota).
    А потом ему можно дать возможность пользоваться хоть менеджером пакетов, даже устанавливая свой софт, юзер ничего не испортит.
    Классика хостинга, ёмн.
    $ man chroot
    Ответ написан
    Комментировать
  • Как менять значения в nested loop?

    dummyman
    @dummyman
    диссидент-схизматик
    Вы же ничего не меняете
    for (row = 0; row < numbers.length; row++) {
        for (col = 0; col < numbers[row].length; col++) {
             numbers[row][col]= numbers[row][col]%2==0 ? 'even' : 'odd';
        }
    }
    console.log(numbers);


    Это я адаптировал ваше решение, а мое бы выглядело как-то так.

    console.log([
        [243, 12, 23, 12, 45, 45, 78, 66, 223, 3],
        [34, 2, 1, 553, 23, 4, 66, 23, 4, 55],
        [67, 56, 45, 553, 44, 55, 5, 428, 452, 3],
        [12, 31, 55, 445, 79, 44, 674, 224, 4, 21],
        [4, 2, 3, 52, 13, 51, 44, 1, 67, 5],
        [5, 65, 4, 5, 5, 6, 5, 43, 23, 4424],
        [74, 532, 6, 7, 35, 17, 89, 43, 43, 66],
        [53, 6, 89, 10, 23, 52, 111, 44, 109, 80],
        [67, 6, 53, 537, 2, 168, 16, 2, 1, 8],
        [76, 7, 9, 6, 3, 73, 77, 100, 56, 100]
    ].map(row => row.map(cell => cell % 2 == 1 ? 'odd' : 'even' )))
    Ответ написан
    3 комментария
  • Как атрибут lang влияет на font-face?

    dummyman
    @dummyman
    диссидент-схизматик
    html lang, как уже было отмечено в ответе выше, не влияет на отображение шрифтов.
    Это современная версия http-equiv тегов meta.
    У этого атрибута задача ровно такая же как у http-заголовка Content-Language.
    Проблем значение атрибута обычно не приносит. Ровно до того момента, пока значения одинаковые или объявлены лишь одним способом. Как только используются все варианты и в них передаются разные значения, каждый браузер может воспринимать это по своему. Какие-нибудь типа IE могут отказаться показывать вообще что-либо, когда, например, в http-заголовках я устанавливаю кодировку cp1251, а в html как и в реальности на сайте - utf8.
    Ответ написан
  • Как добавить поиск на карту Google?

    dummyman
    @dummyman
    диссидент-схизматик
    За поиск координат места по адресу или обратно адреса по координатам может отвечать хороший opensource-проект Nominatim. Можно сделать локальную версию БД. Обычно ему скармливают карты OSM типа таких. Можно использовать и другие источники, в том числе проприетарные. Если есть конкретные идеи, свяжитесь с авторами проекта. Должно быть, они будут рады помочь и объединить усилия.
    Ответ написан
    Комментировать
  • Как научиться пользоваться ОС без мышки?

    dummyman
    @dummyman
    диссидент-схизматик
    Начните с малого
    Выкинь кеды и гном, используй человеческий менеджер окон.
    Пройди $ vimtutor и открой для себя vim awesome.

    Прямо стихами получилось.

    Чуть не забыл добавить tmux + powerline или terminator чтобы стать риил ганста хакер.

    UPD: Блин, забыл еще очень важное хозяйство. Как же без общения?
    Есть mcabber - поддерживает только xmpp, но к нему на github можно найти тысячи неофициальных плагинов, неговоря о сотнях официальных. Многие xmpp серверы поддерживают транспорты на другие более модные протоколы (icq, skype и проч.).

    Есть древний, но еще обновляемый неофициальными форками centericq. Этот мультипротокольный изначально. Официальный поддерживает без всяких транспортов ICQ, Yahoo!, AIM, MSN, IRC, XMPP, LiveJournal, and Gadu-Gadu. Но тут тоже... Можно найти много разных форков и тысячи неофициальных плагинов. Скорее всего можно прикрутить все современные непроприетарные протоколы.
    Ответ написан
    4 комментария
  • Node.js(как вариант для хранения временных данных)?

    dummyman
    @dummyman
    диссидент-схизматик
    Есть вариант быстрее БД - это файлы записанные в раздел с tmpfs.
    При загрузке сервера создаешь временный диск на N гигабайт.
    Сохраняешь туда все что нужно. И не будет страшны падения ноды и серва БД.
    Можно даже со всей статикой сервиса, если речь идет о web, хуже не будет.
    Но важно следить за переполнением памяти и стабильностью ОС.
    Лично у меня куча серверов в обслуживании с приложениями node, где uptime больше 365 дней. Полет нормальный.
    Ответ написан
    Комментировать
  • Pushy menu. Как закрепить элемент списка вверху и сделать так, что бы он не уезжал при прокрутке страницы?

    dummyman
    @dummyman
    диссидент-схизматик
    Конечно, ведь вы его сверстали элементом списка. А ему необходим display: block;
    Ответ написан
  • Школьная программа математики?

    dummyman
    @dummyman
    диссидент-схизматик
    Недавно нашел в сети любимый учебник по математике.
    11klasov.ru/algebra/78-sbornik-zadach-po-algebre-8...
    Вот там можно набраться нетривиальных задач на многие часы-дни.
    Ответ написан
    1 комментарий
  • Можно ли вешать камеру на своем балконе?

    dummyman
    @dummyman
    диссидент-схизматик
    Камеру использовать можно, но либо здоровую уличную (что-бы было заметно за километр), либо, если маленькая, обязательно нужен указатель "вас снимает скрытая камера". Правда, транслировать в СМИ может и нельзя, а вот сохранять последние 2-3 суток видеорегистратор должен просто априоре.
    Ответ написан
    Комментировать
  • Как проиграть ролик перед показом сайта?

    dummyman
    @dummyman
    диссидент-схизматик
    Да это решается на уровне html
    Посмотрите два события:
    короче, ставите свойство autoplay="true"
    - вешаем на видео событие loadstart
    $('video').on('loadstart', e => this.pause());
    - и событие loadeddata
    $('video').on('loadeddata' e => this.play());
    можно еще отслеживать событие progress
    Ответ написан
    Комментировать
  • Как реализовать сложную форму поиска на HTML?

    dummyman
    @dummyman
    диссидент-схизматик
    Даа, вспоминаются студенческие деньки... Delphi 5... Кинул один компонент Quantum Grid на форму и настраиваешь его дня два, адаптируешь под контекст задачи.

    Не могу однозначно сказать, что этим решением будет легко пользоваться.
    Попробуйте extjs. Вот вам пример.
    Ответ написан
    Комментировать