• С чего начать изучение Hadoop?

    @realfreeman
    Добрый день
    Почти на все вопросы ответил тут:
    Как проникнуться Hadoop'ом в домашних условиях?
    Относительно изучения Java - лучше все таки начать изучать. Ибо инфраструктура hadoop это не только hdfs & mapreduce, но и всякого рода spark, storm и много других страшный слов :)
    Изучать java можно по ходу, на первых порах можно посмотреть на hadoop streaming.
    Дорогу осилит идущий, так что не пугайтесь и смело беритесь за слона.
    Удачи!
    Ответ написан
    Комментировать
  • Как смотреть видео с мелким текстом?

    xotkot
    @xotkot
    хорошо есть и хорошо весьма
    видео можно скачать с ютуба с помощью yt-dlp
    а после в большинстве видеоплееров при просмотре на нужном моменте жать на паузу и масштабировать изображение, в том же mpv клавиши по умолчанию для зума
    Alt + and Alt -
        Combining Alt with the + or - keys changes video zoom.
    Alt+BACKSPACE
        Reset the pan/zoom settings.
    Ответ написан
    2 комментария
  • Как узнать вес docker контейнера (запущенного и нет, так же и image)?

    docker images показывает размер образа
    docker ps -s или docker ps -as выведет размер контейнера
    Ответ написан
    1 комментарий
  • Как анализируют комментарии на YouTube?

    AgentSmith
    @AgentSmith
    Это мой правильный ответ на твой вопрос
    машинное обучение
    Ответ написан
    Комментировать
  • Как анализируют комментарии на YouTube?

    dimonchik2013
    @dimonchik2013
    non progredi est regredi
    Комментировать
  • Почему редактор подсвечивает ошибку "syntax error, unexpected 'static' (T_STATIC)"?

    Rsa97
    @Rsa97
    Для правильного вопроса надо знать половину ответа
    Указание возвращаемого типа static добавили только в PHP8.
    Ответ написан
    1 комментарий
  • Как правильно организовать внедрение зависимостей в Yii2?

    qonand
    @qonand
    Software Engineer
    Вы не совсем правильно понимаете задачи контейнера зависимостей и принципы его работы. Поэтому рекомендую ознакомиться с документацией.
    Суть контейнера в том что Вы настраиваете конфигурации компонентов находящихся в нем, а так же зависимости компонентов друг от друга, а уже сам контейнер разбирается как создать объект на основе всех этих данных и со всеми зависимостями. Вы по сути дела только написали лишний код, который реализован в контейнере по умолчанию.

    Возьмем например Ваш объект репозитория, его достаточно зарегистрировать в контейнере так
    Yii::$container->setSingleton('common\domain\Entities\User\Profile\Interfaces\Repository', // указываем интерфейс
        [ // указываем конфигурацию класса реализующего этот интерфейс
            'class' => 'common\infrastructure\Entities\User\Profile\Repository' 
        ], 
        [ // указываем какие данные необходимо передать в конструктор, в частности - экземпляр класса UserProfile
            Instance::of('common\models\ActiveRecord\UserProfile')
        ]
    );


    Контейнер соответственно сам проинжектит в объекты использующие common\domain\Entities\User\Profile\Interfaces\Repository объект common\infrastructure\Entities\User\Profile\Repository

    Сервис регистрируется аналогично:
    Yii::$container->setSingleton('common\domain\Entities\User\Profile\Interfaces\Service',
        [
            'class' => 'common\application\User\Profile\Service',
        ],
        [
            Instance::of('common\domain\Entities\User\Profile\Interfaces\Repository')
        ],
    );


    При создании сервиса, контейнер найден в своих данных объект соответствующий common\domain\Entities\User\Profile\Interfaces\Repository создаст его и проинжектит в сервис
    Ответ написан
    Комментировать
  • В чем отличие Yii2 basic от advanced?

    igorbelikov
    @igorbelikov
    Fullstack Developer
    Basic - пример реализации одиночного приложения (простое).
    Advanced - пример реализации приложений, которое включает в себя разделение на другие приложения (сложное).
    В advanced показана реализация самых часто используемых частей, таких как:
    • frontend - паблик часть приложения
    • backend - закрытая часть приложения, где осуществляется администрирование
    • api - апи для работы с приложением, реализация rest

    При этом все подприложения имеют общие модели и конфиги, что связывает все в единое целое.

    И стоит не забывать, что это просто шаблоны и их можно расширять, как будет удобно самому разработчику.
    Ответ написан
    2 комментария
  • Как убрать frontend/web/ и backend/web/ в ссылке в Yii2 advanced?

    hummingbird
    @hummingbird
    Все настройки производите в .htaccess

    На "/" вешайте "/frontend/web", а на, например, "/admin" вешайте "/backend/web".

    byprofox.ru/lessons/pravilnyj-htaccess-dlya-yii-2-0
    Там же в комментариях второе решение на случай, если то что в посте не поможет.
    Ответ написан
    2 комментария
  • Как устранить ошибку запуска docker-compose up?

    yarkov
    @yarkov
    Помог ответ? Отметь решением.
    Вам английским языком написали причину. Устраните.
    Ответ написан
    1 комментарий
  • Насколько вообще нужны менеджеры состояний?

    @abberati
    frontend-разработчик
    Стейт менеджер нужен для консистентного управления состоянием приложения, внезапно.
    Если вы не пользуетесь менеджером состояния в реакт-приложении, то либо используете контекст (вот хорошее объяснение, почему на проде так делать не нужно), либо пишете заведомо неподдерживаемое приложение. Ну или ваше приложение — это игра в крестики-нолики с двумя полями в стейте корневого компонента.

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

    К React, надо сказать, ваш вопрос имеет самое посредственное отношение.

    Реализовать фильтрацию массива объектов по нескольким ключам можно примерно вот так:

    function filter(array = [], filters = {}) {
        const keys = Object.keys(filters).filter(key => filters.hasOwnProperty(key));
        return array.filter(elem => {
            const commonKeys = keys.filter(key => elem.hasOwnProperty(key));
            return commonKeys.reduce((flag, key) => (flag && filters[key].includes(elem[key])), true);
        });
    }

    В filters кладёте допустимые значения по соответствующим ключам. Например:

    const products = [
        {country: 'Russia', img: 'link.img', genre: 'Comedy', name: 'Вишнёвый сад'},
        {country: 'France', img: 'link.img', genre: 'Novel', name: 'Oberman'},
        {country: 'Italy', img: 'link.img', genre: 'Adventures', name: 'Il cimitero di Praga'},
        {country: 'USA', img: 'link.img', genre: 'Comedy', name: 'The Ransom of Red Chief'}
    ];
    
    const filters = {
        country: ['Russia', 'Italy', 'France'],
        genre: ['Comedy', 'Novel']
    };
    
    const filteredProducts = filter(products, filters);
    Ответ написан
    3 комментария
  • Как восстановить загрузку Ubuntu?

    Vindicar
    @Vindicar
    RTFM!
    Загрузиться с загрузочной флэшки, подмонтировать основной диск, и прогнать fsck.
    Ответ написан
    Комментировать
  • Реально ли зарабатывать с использованием Blender 3D?

    @o_f
    Веб-аналитик, SEO, контекстная реклама
    Несмотря на то, что заказчику "пофиг на чем делаются" модельки, тем не менее посмотрите требования в биржах фриланс. Там лидирует max, для анимации и более сложных задач - это maya в дополнении с zbrush и другими инструментами, дополнениями.
    В мире 3d все точно так же как и в программировании. Есть задача, ее нужно решать набором инструментов.
    Да, вы можете убеждать заказчика о том, что сделаете задачу полностью по ТЗ, но в другом инструменте. Только во-первых, мало заказчиков желают иметь дело с теми, кто работает в другом инструменте. Заказчик уверен по каким-то причинам, что лучше будет в максе или майке - и создает свои требования.
    Во-вторых, как вы будете переводить формат тяжелых моделей в нужный заказчику? Ему ведь не просто нужна моделька, ему нужно ее куда-то вставить, с чем-то интегрировать, возможно добавить анимации, а ваша модель не будет содержать нужного скелета, ее движения будут ограничены.
    Зарабатывать можно, действительно, любым инструментом. Но если вы хотите расти и зарабатывать с каждым годом больше - вам придется развивать свои навыки и подгонять скиллы под требования работодателя.
    В большинстве случаев - это макс, майя и тд. Все что сложно ставится и всё в чем сложнее работать. И работают в них неспроста.
    В чем у вас проблема учить сразу то, чем можно зарабатывать, что востребовано?
    Поставьте студенческую версию официальную последнего 2015 макса и 2016 майи. И работайте в них.
    Учитесь сразу качественно трудится в сложных задачах. Блендер хорош для обучения, но не для серьезной работы.

    Если коротко: нет нельзя достичь успехов и фин.вознаграждения за работу в блендере. Этот редактор ограничен и на фрилансе практически не пользуется спросом.
    Ровно так же как в программировании нельзя знать один ЯП, нужно знать еще кучу всего дабы зарабатывать и развиваться.
    Ответ написан
  • Как восстановить загрузку Ubuntu после сбоя?

    customtema
    @customtema
    arint.ru
    Загрузитесь с флешки, и восстановите grub через chroot.

    Соответствующие инструкции есть в изобилии, гугль подскажет.

    На деле все просто.
    Ответ написан
    2 комментария
  • Как правильно устанавливать node аддоны с нативным кодом?

    По поводу рабочего окружения:
    Я бы порекомендовал уйти от Win XP хотя бы на Win 7. Из личного опыта - если вдруг у вас возникнет проблема с установкой модуля на Win XP никто даже не почешется помочь вам с отладкой.
    Так же я порекомендовал бы Visual Studio 2010 или 2013. Здесь в большинстве случаев разницы не будет. После выбора используемой версии советую прописать npm config set msvs_version 2013 (или 2010 соответственно)
    Стоит ознакомиться с рекомендациями приведенными в инструкции по работе с node-gyp

    Установка нативых модулей в iojs это отдельная песня. Шанс что они скомпилируются как подмодули какого-то проекта нулевой, поскольку node-gyp не умеет компилировать под iojs, потому что не знает откуда качать его исходники. Поэтому Вам скорее всего придется устанавливать эти модули отдельно, компилировать их, а потом кидать в папку проекта.
    Для компиляции используйте npm install -g pan-gyp. Это форк node-gyp созданный специально для компиляции под iojs. Собственно для компиляции модуля:
    1. берем его с гитхаба
    2. в package.json в секцию scripts прописываем preinstall: pan-gyp rebuild. (В случае модуля с которым вы мучаетесь, перезаписываем сразу install script)
    3. Из директории модуля запускаем npm install .

    У некоторых нативных модулей действительно есть скомпилированные бинарники, но это целиком ответственность разработчика модуля. И ответственность притом не малая. В случае вашего модуля, такие бинарники отсутствуют. Чаще всего при наличии бинарников у модуля в зависимостях будет висеть node-pre-gyp. (Примеры v8-profiler, v8-debug).
    К слову для приведенных примеров вам совершенно необязательно что-либо перезаписывать.
    Эти два модуля являются подмодулями node-inspector и в большинстве случаев устанавливаются без проблем.

    В заключении:
    Если не хотите вздрагивать при появлении в зависимостях проекта нативных модулей, то советую действительно использовать nodejs, так как компиляция под iojs еще очень не стабильна в плане инструментов.

    Модуль, с которым вы мучаетесь, скорее всего вообще не тестировался на iojs.
    Так же обратите внимание на package.json engine в этом пректе.
    Ответ написан
    1 комментарий
  • Windows 10: как решить проблему с node-gyp.js?

    @m_finger
    Web-разработчик
    Win8. Мне помогло по вашей второй ссылке. А именно вот эта команда:
    npm install --global --production windows-build-tools

    16 Гб выкачивать не пришлось. Я правда начал устанавливать Visual C++ Build Tools (4Гб), а параллельно запустил команду. Но мне кажется достаточно одной только команды (проверил, так и есть....проверил повторно, похоже эти 4 гб он по этой команде устанавливает). "Оно" само скачало и установило Python2.7 и Visual Studio Build Tools. Затем я смог установить node-static и socket.io. А не получалось потому что кто-то из них требовал пересобрать node-gyp.
    Ответ написан
    Комментировать
  • Ошибка во время установки модуля Nodejs?

    ghaiklor
    @ghaiklor
    NodeJS TechLead
    1) Ставим питона и ТОЛЬКО второй версии. Третья не поддерживается.
    2) Пробуем снова.
    3) Если не получилось, вручную указывает путь до питона через npm config set python /path/to/python.

    Для еще большей уверенности ставите node-gyp через npm -g install node-gyp и делаете node-gyp rebuild.
    Ответ написан
    1 комментарий
  • Что на сегодня лучше для нового проекта, GitLab vs GitHub vs bitbucket?

    @dimuska139
    Backend developer
    Юзаю GitLab, потому что автоматический деплой и запуск тестов при пуше в ту или иную ветку делать удобней всего. Также удобно, что есть Registry, в котором можно хранить собранные Docker-образы. То есть Dockerhub не нужен. При том, что на Dockerhub можно, если не ошибаюсь, хранить только один приватный образ, а в GitLab-registry - сколько хочешь. Делать сборку образов можно тоже прямо в GitLab.

    Upd: "делать удобней всего" - ЛИЧНО МНЕ (я не devops, а просто backend-разраб).
    Ответ написан
    Комментировать
  • Как изучать Laravel?

    @procode
    Разработчик
    https://laravel.ru/docs/v5 - вполне годная и на русском. Меня поначалу смутило что для "старых версий" - но потом оказалось что всё актуальное.

    Здесь задавайте вопросы. Правда временами будете нарываться на местных IT-снобов)) но это переживаемо))

    Таки попробуйте посмотреть это: https://laracasts.com/series/laravel-from-scratch-2018 - я сам на слух английский тоже почти не понимаю))) но вот именно это - зашло нормально - там понятно без слов)) и это лучшее что я видел из видеоуроков.

    Всё получится :)
    Ответ написан
    Комментировать