Задать вопрос
  • Как сделать фильтр на 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 - я сам на слух английский тоже почти не понимаю))) но вот именно это - зашло нормально - там понятно без слов)) и это лучшее что я видел из видеоуроков.

    Всё получится :)
    Ответ написан
    Комментировать
  • Как правильно перевести CSV в SQL на PHP?

    ThunderCat
    @ThunderCat Куратор тега PHP
    {PHP, MySql, HTML, JS, CSS} developer
    Ответ написан
    Комментировать
  • Как войти в админку yii-advanced при первоначальной установке?

    @kopernik21187
    Здравствуйте!

    Нужно выполнить миграцию:
    https://www.youtube.com/watch?v=gBp7WY-QXS8&index=...
    вот по этой ссылке посмотрите, как это делается.
    Ответ написан
    Комментировать
  • Как console Yii2 advanced подключить к БД?

    kimono
    @kimono
    Web developer
    В main-local.php:
    'db'     => [
        'class' => 'yii\db\Connection',
        'dsn'      => 'mysql:host=localhost;dbname=my_db',
        'username' => 'db_user',
        'password' => 'db_password',
    //                'enableSchemaCache'   => true,
    //                'schemaCacheDuration' => 3600,
    //                'tablePrefix'         => '',
    //                'charset'             => 'utf8mb4',
    //                'enableQueryCache'    => true,
    //                'queryCacheDuration'  => 600,
    ],

    По-хорошему подключение (если оно общее для backend && frontend && console) нужно вынести в main-local.php в папке common. А все файлы конфигурации настраивать в папке environments и запускать php init.
    Ответ написан
    2 комментария
  • Как запустить yii2 приложение?

    slo_nik
    @slo_nik Куратор тега Yii
    Доброй ночи.
    В консоли надо указать путь к document root проекта.
    php yii serve --docroot="path/to/docroot"
    Например:
    php yii serve --docroot="frontend/web"
    Только непонятно, зачем именно так Вам надо запускать проект?
    Ответ написан
    Комментировать
  • Как создать сайт вроде спрашивай.ру?

    HoHsi
    @HoHsi
    Не стоит сразу же замахиваться на большой сервис, начните постепенно. Каждый начинающий программист первым своим проектом грезит сделать убийцу ВК / FB. Скажу сразу, это с первого раза не выйдет. Как не выйдет и с 10. Но! Это не повод, что-бы не развиваться и не учиться. Итак если вы все же решили потрать пару месяцев на обучение, или вы уверены, что пойдет меньше, начните так:

    Шаг первый
    Html. Это язык разметки, на котором написано 100% веба, то есть это необходимая вещь де-факто. Он позволит вам разместить текст на странице, оформить ее.
    В базовой аналогии, это ворд для интернета (кышь Ъ праграммысты, это довольно хорошая аналогия для новичка, продолжим...).

    Это займет +- 1 неделю

    Вам помогут:
    * htmlbook

    Шаг второй
    CSS. Это язык стилизации. Перекрасить текст, увеличить отступы, сделать тень у блоков это к нему. Все крависости в интернете делаются на нем. 99% веба использует для стилизации именно его, так что опять же это стандарт.

    Это займет +- 2 недели

    Вам помогут:
    * Sorax

    Шаг третий
    PHP. Это уже язык программирования (плохой, больной, уродливый, но язык. Да начнется холивар). Он поможет вам понять как это работает, как устроена кухня. Поковыряйте его, обучитесь начальной логике и алгоритмам. Он поможет вам выводить HTML более осмыслено, т.е. вы сможете уже составлять динамические страницы, которые могут подстраиваться под пользователя, добавлять посты, вопросы, картинки и т.д.

    Это займет +- 2 месяца

    Вам помогут:
    * php.net

    Шаг четвертый
    Wordpress. Это почти готовый сайт. В нем уже есть все, что вам нужно. Вы можете писать посты, делать обсуждения и т.д. На его основе вы сможете вылепить что угодно, даже тот самый вопросник. Он написан на PHP, так что он будет дополнять ваши знания. Как только научитись ставить WP, попробуйте написать для него шаблон, потом плагин, и еще и еще. Это закрепит и разовьет ваши предыдущие знания.

    Это займет +- 2 месяца

    Вам помогут:
    * wp-kama

    Шаг пятый
    MySQL. И в частности язык запросов SQL. Это база данных. Они нужны, что-бы хранить информацию вашего сайта в удобном виде. Т.е. по своей сути это таблица экселя, в ней есть поля и их значения. Это так же необходимые знания, так как ваши вопросы из вопросника будух храниться именно там.

    Это займет +- 1 месяц

    Переломный момент
    Наступает переломный, это значит что по истечению полу-года вы должны сесть и подумать, нравится ли вам, что вы делали. Это важно. Так как дальше не будет проще, не будет легче. Начнутся такие вещи как Асинхронность, Брокеры сообщений, ООП, MVC, и другие страшные слова, которые ровно как и предыдущие шаги по-началу будут вас пугать, но потом станут лучшими друзьями.

    Если вам действительно интересно большее, то можете изучить шаги приведенные ниже. Если же вы просто хотите развлечься, то вам вполне хватит перечисленных выше.

    Не спешите так же переходить к шагам ниже, если не уверены в своих силах. Нет ничего плохого, что-бы "посидеть" еще на предыдущих шагах.

    Шаг пятый
    JavaScript. Ура, вы решили, что вы хотите быть программистом, похвально. Этот язык позволит вам сделать ваши страницы более динамичными. Добавить на них анимацию, логику. Этот язык использует 90% веба, так что сомневаться в его значимости нет смысла. Он позволит вам добавить жизнь на ваш сайт.

    Это займет +- 2 месяц

    Вам помогут:
    * Sorax
    * learn.javascript.ru

    Шаг шестой
    Jquery. Это продолжение JS. Это фреймворк (набор готовых функций). Он облегчит вашу работу с JS и позволит делать ее более качественно и быстро.

    Это займет +- 1 месяц

    Шаг седьмой
    Распутье. Вы уже как год программист, отличная работа. Вы уже выросли из яслей и впереди бескрайний океан. И теперь вы должны понять, что вы хотите. Устраивают ли вас сейчас ваши текущие инструменты. Удобные ли они. Не стесняют ли они вас.

    Если вам нравится PHP, он удобен, тогда продолжите изучать именно его, но не стоит бездумно и слепо защищать язык. Если вы чувствуете, что он вас смущает, не противьтесь и просто попробуйте что-то другое. А поверьте этого много.

    Итак развилка:
    Мне нравится PHP, мама я женюсь!
    Ок, тогда вам стоит взглянуть на фреймворки Laravel, Yii 2, вполне хороши. Они довольно мощные и позволят много чего на себе сделать.

    PHP какой-то странный, но мне понравился JavaScript
    Шикарно, значит есть смысл попробовать NodeJS. Это версия языка (Да, я знаю, что нода это среда а не язык, дайте уже объяснить человеку) расчитаная на составление страниц, как PHP. Это очень мощный инструмент, поняв который, вы вряд ли захотите уйти с него. Он поможет вам писать не только сайты, но и приложения для телефонов / планшетов, программы для ПК, возможно игры (но не стоит. По крайней мере с текущим развитием инструментов), демоны, сервисы, консольные приложения и т.д.

    Они оба мне не нравятся
    Что ж, тогда вам могут приглянуться Python, Ruby - эти два языка более близки к PHP, чем JS.
    Или вы за год стали адептом скорости, и не видите большей радости в жизни чем оптимизация и быстрото рендеренга. Ну тогда вам точно понравятся GO и Rust.
    А может быть Dart к тому временем станет мейн стримом, это уже покажет время.

    Что-бы вы не выбрали, это будет хорошим решением.

    Шаг восьмой
    Как говорится, я просто оставлю это здесь. Сейчас нет смысла объяснять, что это, зачем оно и с чем его едет, вы просто взглянете через год на этот список и все поймете.

    CSS:
    * Sass / Less / Stylus

    JS:
    * CoffeeScript / LiveScript / TypeScript
    * Angular
    * Promise

    NodeJS:
    * NPM
    * Express

    Ускорение работы:
    * Gulp
    * Jade
    * Yo

    Остальное:
    * MongoDB
    * MariaDB
    * RabbitMQ

    Шаг 7 и 8 займут у вас всю жизнь
    Это не в коем случае не значит, что язык будет тем же, просто Язык / Технолигия будут заменяться на другую, а смысл будет тем же. Будут новые технологии, будут новые подходы, новые языки. Будет интересно и весело.
    Ответ написан
    15 комментариев
  • Почему так сильно отличаются официальные и неофициальные сайты городов и что им мешает объединяться?

    Kadavercian
    @Kadavercian
    Согласен насчет взаимодополняемости. Сложно представить себе как может выжить "нечто", полученное в результате скрещивания онлайн-издания о городе, и сайта горсовета с дизайном а-ля 90-е, который наполняется секретарем раз в полгода ))
    Ответ написан
    Комментировать
  • Почему так сильно отличаются официальные и неофициальные сайты городов и что им мешает объединяться?

    @moozooh
    Chief Technical Grammar Nazi
    Потому что всему своё место. У официального и неофициального сайта разные заказчики, разная аудитория, разное финансирование (как правило), разные цели, разные функции: у официального — преимущественно утилитарная, у неофициального — преимущественно социальная. Они друг с другом не конкурируют, а вполне органично дополняют.
    Ответ написан
    Комментировать
  • Почему так сильно отличаются официальные и неофициальные сайты городов и что им мешает объединяться?

    compilator
    @compilator
    Senior Data Engineer
    Официальный сайт накладывает определенную ответственность за информацию, размещенную на нем. Поэтому тупо взять и публиковать слухи и непроверенную информацию на оф.сайте никто не будет. Это первый момент.
    Второй момент такой, что как правило оф.сайты пишутся "на отъ__ись". Свыше сказали сделать - сделали, а развивать/обновлять/продвигать и т.д. никто не будет пока опять же сверху не скажут.
    Ответ написан
    Комментировать
  • Почему так сильно отличаются официальные и неофициальные сайты городов и что им мешает объединяться?

    VladimirAndreev
    @VladimirAndreev
    php web dev
    у них разная направленность. их не получится скрестить.
    Ответ написан
    Комментировать
  • Почему так сильно отличаются официальные и неофициальные сайты городов и что им мешает объединяться?

    vawsan
    @vawsan
    Frontend Developer
    Потому что на данный момент в большинстве некоммерческих структур интернет и IT в целом еще очень слабо интегрированы. И, следовательно, вложения в развитие IT инфраструктуры кажутся многим весьма бестолковыми.
    Но есть и другая сторона: для того, чтобы сделать хороший сайт, и постоянно его наполнять возьмем цифру с потолка в 500к, и ежемесячно 1 редактор и 2 девочки социальных постера - еще минимум 70к. А у бюджета города не хватает денег на оплату заработной платы сотрудникам. Что они выберут: потратить 600к на сайт или выплатить наконец зарплату? Естественно, второе.
    Ответ написан
    4 комментария
  • Почему так сильно отличаются официальные и неофициальные сайты городов и что им мешает объединяться?

    nemnogo_tyan
    @nemnogo_tyan
    Кому-нибудь, кроме вас, это надо?
    А среди этих "кому-нибудь" - кто-нибудь владеет вышеназванным(-и) порталом(-ами)?

    Вопросы риторические.
    Ответ написан
    Комментировать