Задать вопрос
  • Как понять каррирование в Haskell?

    mayton2019
    @mayton2019
    Bigdata Engineer
    Лямбда применяется к массиву типа A и возвращает массив типа B.

    Вот и все.
    Ответ написан
  • Какой самый быстрый дистрибутив Linux для программирования?

    mayton2019
    @mayton2019
    Bigdata Engineer
    У нас в садике говорили так - Размах - лошадиный, удар - муравьиный.
    Посоветуйте дистрибутив Linux для программирования недавно поставил Ubuntu но лагает жуть как.

    Парень собрался быть программистом под Linux. Оказалось что Линукс лагает.
    Это просто замечательный челлендж чтобы поискать в сети информацию по тонкой диагностике Linux.

    Я считаю что это будет полезный опыт. В Linux есть интерфейс ожиданий. Надо его найти активировать и посмотрть
    где там чего ждем. Если проблема в KDE/Gnome/XFCe то как раз - настал звездный час чтобы что-то новое
    попробовать. И отписать сюда по результатам.

    Все советы по железу и драйверам - тоже сюда до кучи. Плюсую.
    Ответ написан
    Комментировать
  • Есть ли вероятность прилёта ответственности?

    mayton2019
    @mayton2019
    Bigdata Engineer
    Если проблема в личных данных - избавтесь от них. Пронумеруйте детей и родителей и тогда заявка в календарь будет выглядеть нейтрально. А воспитатель все равно знает личные данные. Ведь он несет отвественность за детей.
    Ответ написан
    Комментировать
  • Как при вставке из одной таблицы в другую автоматически пронумеровать повторы?

    mayton2019
    @mayton2019
    Bigdata Engineer
    2я таблица - должна быть view по отношению к первой.
    Ответ написан
    Комментировать
  • Какой стек технологий лучше выбрать для разработки чата?

    mayton2019
    @mayton2019
    Bigdata Engineer
    Суть в том, что я не совсем понимаю работу вебсокетов, может быть кто-то писал что-то такое и может подсказать какую литературу или какие источники использовал.

    Я думаю автору имеет смысл пройти какой-то учебный курс (желательно платный) по JS+WebSockets.
    Это очень важная основа. Поэтому всякие yii2+vue+mongo не имеют никакого значение если ты не сможешь
    разбираться в простейших сетевых ошибках и состояниях протокола.

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

    mayton2019
    @mayton2019
    Bigdata Engineer
    Таких программ много. Это средства версионного контроля например git. Сделай git init в каталоге и делай каждый раз новый commit при резервном копировании. Для перемотки назад можно использовать стандартный git checkout с указанием хеша коммита или комменатрия или любого другого поискового признака которы ты знаешь как владелец бэкапа.

    Беря во внимание что git все таки больше предназначен для текста чем для бинарей возможно в его использовании есть какие-то нюансы. Но я с ними не сталкивался пока. Можно еще почитать про git LFS https://git-lfs.github.com/

    Версионирование бекапов также встроено в файловую систему XFS. Там есть утилиты для dump/restore. Но мне их подход не очень понравился. Хлопотно.

    UPD: Да еще. Забыл. Версионирование ФС (настоящее) точно встроено в докер overlay-fs. Но как им воспользоваться в случае автора я пока не знаю. Может знающие - подскажут.
    Ответ написан
    Комментировать
  • Как перенести переменные с одного файла в другой?

    mayton2019
    @mayton2019
    Bigdata Engineer
    Сомнительно чтобы текстовый редактор такое сделал.

    Тебе нужен разработчик. И тех задание.
    Ответ написан
    Комментировать
  • В чем разница между шаблонами делегирование, фасад, интерфейс?

    mayton2019
    @mayton2019
    Bigdata Engineer
    Могу рассказать насчет фасада. Это - самый простой шаблон. Если у тебя есть некая сложная задача и ее надо сводить к вызову 1 метода - то это фасад. Например для С++ языка - main функция является "фасадом". А консольные параметры - это как-бы аргументы к функциям фасада. PHP скрипт тоже является фасадом а параметризируется через параметры URL.
    Ответ написан
    Комментировать
  • Как получить размер загружаемых торрент файлов по magnet ссылке?

    mayton2019
    @mayton2019
    Bigdata Engineer
    Вот тут пишут https://en.wikipedia.org/wiki/Magnet_URI_scheme что magnet link может содержать список параметров (наподобие http url) и если есть параметр &xl= то он указывает точный физический размер.

    Если ссылка сокращенная (содержит только хеш) - то надо начать ее поиск в трекерах или по протоколам dht и после успеха - получить этот размер.

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

    mayton2019
    @mayton2019
    Bigdata Engineer
    Как-то так надо.
    for (int i = 0; i <= 3; i++) {
            std::cout << i << "..." << std::flush;
            sleep(1);
        };

    (отредактировано)
    Ответ написан
  • Почему crawler, работает 7 часов? Не зациклен ли код?

    mayton2019
    @mayton2019
    Bigdata Engineer
    Некоторые сайты могут сдетектировать бота и подкинуть свинью. Например - отдавать бесконечный поток шумящего html-кода который просто нагружает работой BeautifulSoup. Но чтобы говорить о зависании - надо сначала придумать формальный критерий. Например - парсинг одного url запускается в отдельном потоке и lifetime потока не должен превышать к примеру 30 секунд. Если превышает - мы считаем что он глотает шум или не получает контента. И прибиваем поток. ЛОггируем событие и идем дальше по ссылкам.
    Ответ написан
    Комментировать
  • Что быстрее: json или sqlite?

    mayton2019
    @mayton2019
    Bigdata Engineer
    извлечь и записать в словарь набор данных json, или извлечь тот же набор данных из БД sqlite

    Я не знаю кто вам подает такие формулировки. Возможно вы сидите на митингах и слушаете трёп разработчиков и здесь спрашиваете. Но данный вопрос с точки зрения инфо-технологий звучит как : "что лучше желтое или квадратное".

    При такой подаче вопроса ответа нет и не может быть. Эти понятие - несравнимы. Уточните что вы хотите. Потому что домыслы и медвежьи услуги которые вам сейчас оказывает форум могут стать хуже чем открытое вредительство.

    Я вас прошу.
    Ответ написан
    Комментировать
  • Как сделать подобное исключение в java?

    mayton2019
    @mayton2019 Куратор тега Java
    Bigdata Engineer
    Можно в блоке catch проверить что содержит message. Это обычно текст в котором есть информация об ошибке
    и дальше разбирать этот текст и принимать решение.

    } catch(IndexOutOfBoundsException ex) {
        String message = ex.getMessage();
        ....
    }
    Ответ написан
    Комментировать
  • В каких случаях логичней чтобы получить половину умножать на 1/2, а в каких делить на 2?

    mayton2019
    @mayton2019
    Bigdata Engineer
    Возможно это не от математики а от практики программирования идет. Когда работают в вещественных числах (float, double) то умножают на 0.5.

    А если какой-то особый случай и надо работать с рациональными дробями вида 3/15, 7/11 то подключают тип Rational и в нем получают более точный результат базовой арифметики чем например double.
    Ответ написан
    Комментировать
  • Зачем нужно каррирование функций?

    mayton2019
    @mayton2019
    Bigdata Engineer
    Насколько я понимаю, каррирование - это плод математических исследований. Математики не интересовались программированием а их больше интересовало некое механическое преобразование мат-функций с целью доказательства какого-то их свойства. Вот. Значит если есть сложная функция у которой сотня аргументов но ее с помощью преобразований удается свести к сотне функций с 1 аргументом - то это успех.

    Где это практически применяется я щас не скажу. Но вот Haskell компиллятор видит все функции как каррированные. При этом на output функция будет вести себя как обычная.

    Еще КМК каррированные функции очень удобно оптимизировать. Если мы можем часть аргументов зафиксировать (константы) - тогда остаточное туловище функции будет быстрым. Мы ведь уже выбросили
    часть аргументов и компиллятор может доказать больше инвариантов. Для обычных императивных ЯП
    кажется такое невозможно.
    Ответ написан
    Комментировать
  • Как создать базу данных для анализатора?

    mayton2019
    @mayton2019
    Bigdata Engineer
    Короче такая мысль. В этой задаче самое главное - нейронная сеть которая обучается и выдает на выходе некую модель.

    База данных здесь - вторична. Собственно здесь даже хватит текстового (csv) файла. Насколько я помню чтобы
    обучать НС нужно просто разделить выборку на две части. Обучающая 95% и контрольная 5%. И далее последовательно показывать нейросети все образцы. Для этого кейса подходит любая из известных баз. Но если делать экономно - то я-бы предложил использовать БД для измерений. Они называются time-series db. Классификатор здесь https://db-engines.com/en/ranking/time+series+dbms
    Эти БД поддерживают быструю пакетную загрузку (batch) и выборку измерений в диапазоне времени. И по тегам (по виртуальным столбцам как-бы).

    Берите любую бесплатную и которая имеет интерфейс к вашему языку программирования. Например Influx.
    Ответ написан
    Комментировать
  • Насколько процессор Intel Celeron 3867U хуже Intel Core i5-1135G7?

    mayton2019
    @mayton2019
    Bigdata Engineer
    Селероны последний раз выпускались лет 10 назад. Не знаю каков их сейчас статус но в нормальных магазинах они даже не представлены в классификаторе процессоров.

    Селерон всегда был таким жлобским вариантом Intel. Для бедных короче. В серверы его не ставили. Я когда учился в универе у меня был Celeron-300/Tray. Частота 300Мгц. 32х битный.

    Зачем сегодня его покупать - я не знаю. Интерес разве что коллекционера старых вещей.
    Ответ написан
    3 комментария
  • Сколько ядер процессора хватит для программирования?

    mayton2019
    @mayton2019
    Bigdata Engineer
    Имеет смысл взять слабую конфигурацию. На ней автор быстро почувствует узкие места кода и займется
    оптимизацией. И потом в продуктиве этот код станет быстро работать.

    Хороший мотиватор.
    Ответ написан
    5 комментариев
  • Как решить проблему в коде не запускается код, основные операции над бинарным деревом?

    mayton2019
    @mayton2019
    Bigdata Engineer
    Это не бинарное дерево. Ерунда какая-то. Обычно когда объявляют такое дерево -то считают что это
    бинарное дерево поиска. И в нем должны быть функции для расстановки узлов относительно значения Data.

    Здесь что? Непонятно. Рандомным образом раскидали? Зачем?
    Ответ написан
    Комментировать
  • Нормально ли хранить JSON в базе данных?

    mayton2019
    @mayton2019
    Bigdata Engineer
    Был такой нудный дедушка Эдгар Кодд. Он как-то из соображений своей нудности взял и объявил что только он знает как правильно делать реляционные базы.

    Вобщем его первое правило касается атомарности данных которые лежат в ячейках таблицы. И если в рамках решаемой вами задачи JSON атомарен - то все в порядке и никакой проблемы нету. Храните себе JSON.

    Но если внутри JSON будет поле которое способно изменяться независимо от остальной части документа - то старичок Эдгар будет на вас сильно зол. Может даже вас побить.

    В наше время уже созданы специализированне БД (Mongo, CouchDb) которые плевали на нормализацию. Они расширяют и ослабляют понятия нормализации. Not-Only-SQL говорят про себя.
    Ответ написан
    Комментировать