• Как правильно сконфигурировать Gulp?

    Zoxon
    @Zoxon
    Веб-разработчик
    var gulp = require('gulp'),
        less = require('gulp-less'),
        gutil = require('gulp-util');
    
    handleError = function(err) {
        gutil.log(err);
        gutil.beep();
    };
    
    gulp.task('less', function() {
        gulp.src('./less/*.less')
            .pipe(less())
            .on('error', handleError)
            .pipe(gulp.dest('./css'))
    });
    
    gulp.task("watch", function() {
        gulp.watch('less/**/*.less', ['less']);
    });
    
    
    gulp.task("build", ['less']);
    
    gulp.task("default", ["build", "watch"]);


    Нужно поставить gulp глобально
    npm i gulp -g
    потом поставьте все зависимости
    npm init
    npm i gulp gulp-less gulp-util --save-dev
    запускается просто
    gulp
    Ответ написан
    2 комментария
  • Как разделить приложение на Symfony2 на backend и frontend?

    Fesor
    @Fesor
    Full-stack developer (Symfony, Angular)
    1) все те же. Разделение приложения на два отдельных (можно сделать через одну точку входа и использовать мидлвар URL-map что бы разруливать разные приложения по урлам. Можно разделить на бандлы - FrontendBundle/BackendBundle. Этот вариант чуть менее гибок, так же как и в случае с модулями в Yii. Хотя жить можно. Лично я пробовал вариант с полным разделением лишь один раз, ибо логика бэкэнда и фронтэнда и настройки приложений слишком уж различались. Да и изначально разработчики Symfony планировали что люди будут так делать, но подход с бандлами стал популярнее.

    Разве что могу сказать, что выносить общие настройки приложений, общие части и т.д. с Symfony чуть проще.

    2) Бандлы должны быть самодостаточны. По сути это модули. Если вы не планируете реюзать код в других проектах, то смысла выносить этот код в отдельный бандл нету. В 99% случаев смысла разности бизнес-логику приложения по разным бандлам нет.

    Обычно делают какой-то CoreBundle/SiteBundle/AppBundle или что-то в этом духе и там делают всю логику проекта. Если появляется какой-то функционал, который можно реюзать (например слой абстракции для работы с платежными системами, система уведомлений или чего еще), это дело можно вынести в отдельный бандл и в последствии реюзать.

    Так же довольно распространенная практика хранить код просто в неймспейсе проекта, а в бандлах хранить только вещи специфичные для Symfony (регистрация сервисов, настройки валидаторов, мэппинг базы и т.д., то есть все то что нужно именно Symfony). Подобная структура проекта частенько мелькает когда рассказывают о DDD, да и на самом деле таким образом проще держать проект в чистоте. Если у вас еще и контроллеры как сервисы определены, то вообще красиво выходит. Но это все для ослабления связи кода вашего проекта и фреймворка.

    3) Это неймспейс. Обычно вместо Acme пишут либо название проекта либо имя фирмы исполнителя/никнейм фрилансера...

    Большинство людей смущает необходимость хранить код на один уровень ниже. Скажем у вас только один неймспейс, код весь в нем, какой смысл в папке src хранить одну единственную папку? Вот и придумали стандарт PSR-4, который позвляет указать префикс. Например что бы избавиться от папки Acme, все его содержимое можно перетащить на уровень выше (прямо в src), и в composer.json прописать
    "autoload": {
        "psr-4": {"Acme\\": "src/"}
    }

    Это все чисто вопрос нэймспейсов и настройки автозагрузки.
    Ответ написан
    5 комментариев
  • Что такое IO в backend'е веб-приложения?

    jakulov
    @jakulov
    Для веб-приложений имеется ввиду возможность записывать, считывать и отдавать данные. Когда запросов много и много данных – вы не сможете хранить все данные в памяти для быстрого доступа к ним - приходится идти за ними на диск (или на другую машину). Как правило тут и возникает bottle neck. Особенно если у вас с одной машины отдаются и статика и БД тут лежит и логи пишутся со всех возможных мест.
    Ответ написан
    1 комментарий
  • Свой web-хостинг. С чего начать?

    не позориться, а через партнёрские отношения проводить к реальным "хостерам"
    Ответ написан
    Комментировать
  • Что будет с css анимацией прерванной через display none?

    iiil
    @iiil
    Инженер и вэб-дизайнер, рисую.
    Как насчет взять и попробовать?
    codepen.io/iiil/pen/aqhHm
    Ответ написан
    Комментировать
  • Почему при подключении YOTA к маршрутизатору не работают некоторые сайты?

    @throughtheether
    human after all
    В чем может быть дело
    Предполагаю, дело в неправильном значении MTU (точнее, MSS в TCP-сегментах). Оно может порождаться излишними настройками фаерволла (отбрасывает ICMP-пакеты "Fragmentation needed", из-за чего не работает определение минимального MTU на маршруте следования пакета, "Path MTU discovery"). Вот дающая представление статья.
    и куда стоит копать
    Разрешить в настройках фаерволла маршрутизатора прохождение пакетов ICMP "Fragmentation needed" (Type 3, Code 4). Если в настройках WAN-порта/модема есть опция "clamp MSS" - активировать ее. Если есть опция "set MSS" - установить (временно) значение около 1000. Пронаблюдать ситуацию.
    Можно, если есть желание, задействовать wireshark. Для этого снять дамп трафика (в формате .pcap) при открытии проблемного сайта через браузер (только пароли свои не надо вводить) при подключении через маршрутизатор и при подключении напрямую. Выложить сюда.

    Другой вариант - колхозное "решение безопасности" на маршрутизаторе - IDS, IPS, UTM и прочая. Вполне может быть, что устройство пытается искать сигнатуры в HTTP-трафике (хотя google, насколько мне известно, использует HTTPS даже на странице поиска), нагружая процессор. При использовании VPN такого трафика устройство не видит, ресурсы использует более рационально. Стоит проверить настройки безопасности.

    Есть и другие варианты, но пока разумнее проверить актуальность вышеизложенных.
    Ответ написан
    2 комментария
  • Будут ли с 1 августа блокировать такие сайты?

    iiil
    @iiil
    Инженер и вэб-дизайнер, рисую.
    Столько шума вокруг всех этих законов, об информации, о СМИ, о мате, о курении. И что в итоге? Люди как курили, так и курят, как матерились, так и матерятся, и википедию никто не закрыл, и твиттер, и вконтакте, и все работает. Закрыли наверное пару фашистских сайтов - да и наплевать. В Википедии как вели антироссийскую пропаганду - так и ведут. И что? Кроме самой википедии никто ее не закрывал.
    А общественность сейчас у нас такая, что если им написать, что на газон заходить нельзя - начнут кричать, что ущемляются права любителей портить газоны.
    Ответ написан
  • Где найти примеры обыденных структур БД для разных вещей?

    Fesor
    @Fesor
    Full-stack developer (Symfony, Angular)
    dbpatterns.com

    Если конкретнее: лайки.

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

    По поводу комментариев - вам нужны древовидные структуры. Обычно такие штуки делают при помощи parent-child (adjacency) модели.
    Ответ написан
    1 комментарий
  • Arduino и JavaScript. Возможно ли?

    fox_12
    @fox_12
    Расставляю биты, управляю заряженными частицами
    Язык программирования Arduino очень простой. Если вы действительно считаете себя программистом - то разобраться в языке - полдня делов. Это лучше чем городить огород на языке, который особо для программирования встроенных систем не предназначенном.
    Сужу по себе - реализовывал похожую систему для теплицы с wi-fi и отправлением данных на удаленный сервер.
    Ответ написан
    Комментировать
  • Почему компании скрывают, сколько платят своим сотрудникам?

    По своему опыту найма людей (косвенно связан с этим в течение минимум 3 лет) могу сказать, что ни один из данных ответов не является верным. Скрывают обычно по 2 причинам - компания не полностью белая (а значит опасается разного рода проверок), и компания не хочет провоцировать рост ЗП среди уже работающих сотрудников (так как многие из них ходят смотреть вакансии своей компании). Все остальное (такое как особенности восприятия цифр) - это уже "десятые дела".

    Дело в том, что на вакансию без указания ЗП приходит на порядок меньше кандидатов! Соответственно, закрывать вакансию придется дольше, ниже качество соискателей и так далее. Поэтому, 2/3 вакансий без указания ЗП - это серяк или черняк.
    Ответ написан
    1 комментарий
  • Как понять принципы ООП?

    onqu
    @onqu
    weasy
    Чтобы понять принципы ООП, книги не требуются. Взгляните вокруг себя. Всмотритесь в любой объект в реальном мире, опишите его наиболее подробно (материал, размер, цвет, вес, плотность, составные части и т.д.), это будут его свойства. Опишите, что и каким образом этот объект умеет делать (включаться, складываться, кушать электроэнергию, взаимодействовать с другими объектами или окружающей средой и т.д.), это будут его методы. Подумайте, для чего используется этот объект, что ему нужно изменить или добавить, чтобы использовать в других условиях или целях, и на основе всех собранных знаний создать более удобный экземпляр, это будет наследование и полиморфизм. Теперь немедленно забудьте обо всем, используйте объект по назначению, это будет инкапсуляция. Дальше останутся только тонкости выбранного Вами языка, шаблоны, методологии и прочаяие ересь тренды.
    Ответ написан
    2 комментария
  • Kак форматировать php и html код?

    k12th
    @k12th
    console.log(`You're pulling my leg, right?`);
    Шаблонизаторы же. Twig, например.
    Ответ написан
    Комментировать
  • Как создать сеть автомобильных точек свободного доступа в интернет и получать информацию о подключившихся?

    iiil
    @iiil
    Инженер и вэб-дизайнер, рисую.
    Я прочитал где-то половину. Даже поверхностный план, аванпроект того, что Вы задумали займет много времени и сил. Если Вы не специалист - ищите специалиста.
    Ваши оценки не правильные, я уверен в этом. Часто ли люди едят у автомобиля? Лично я в таких местах (живу в Питере) покупаю булочки утром перед работой, у меня на работе есть интернет.
    Люди всегда торопятся, если они хотят посидеть - они идут в кафе.
    Сколько люди едят в таких местах? Минут пять от силы, даже минутный ролик будет создавать проблемы для них. Даже 20-ти секундный, что там минутный.
    Как получить данные о клиенте, да еще и обработать их в считанные секунды и выдать нужный контент. Такие гиганты как гугл или фейсбук ломают голову, хотя люди сами дают им всю информацию, а Вы хотите решить эту проблему в рамках местечкового проекта?
    Разработка такого проекта и написание всех необходимых программ отнимет больше средств, чем Вы сможете получить. Не легче ли поставить телевизор и крутить там ролики? И если Вы уверены, что кто-то может заинтересоваться рекламой - сделайте qr-коды или другие способы быстро перейти по ссылке.
    Вы хотите получить конкурентное преимущество и тут же пытаетесь заработать на клиентах? Я не стану заходить в интернет с такой точки, а более того, скорее всего не стану и булочки покупать, для меня важнее, чтобы мне продавец не хамил, это куда большего стоит.
    Ответ написан
    1 комментарий
  • Каков правильный способ хранения данных для этого случая?

    zxmd
    @zxmd
    А что не mongodb ? Вроде ваша концепция хорошо укладывается в объекты монги.
    Ответ написан
    1 комментарий
  • Singleton - Почему тормозит php скрипт?

    Fesor
    @Fesor
    Full-stack developer (Symfony, Angular)
    подозреваю что у вас тормозит именно подключение к базе. Как вариант - много времени уходит на ресолвинг DNS - пропишите просто IP в hostname.
    Ответ написан
    4 комментария
  • Как лучше хранить файлы на Маке?

    @anatolius
    А чем хранение папок на Маке отличается от PC?
    Ответ написан
    Комментировать
  • Как подогнать размер div'a под клиентсую область окна браузера?

    iiil
    @iiil
    Инженер и вэб-дизайнер, рисую.
    Я или не понимаю, чего Вы хотите, или Вы не понимаете, что тут можно обойтись или html/css, или несколькими строчками jquery, который Вы все равно используете.

    codepen.io/iiil/pen/znimg
    Ответ написан
    Комментировать
  • Какой собственный почтовый сервер выбрать?

    nikitasius
    @nikitasius
    Из коробки - используйте готорые и платные решения от gmail, yandex и иже с ними.
    Не из коробки - postfix (сам агент на сервер) + dovecot (ради imap, "как exchange") + spamassasin (антиспам) + sasl (модуль аутентификиции, зависит от того, как будет атворизация у вас) + clamav (антивирь) + dkim (подписи) + в DNS прописать spf для вашего домена.
    При этом придется следить за обновлениями софта, как почтового так и вспомогательного (например openssl) и самого сервера. И съесть пару собачек на конфигурировании написанного.

    Так же замечу, что указанному софту есть альтернативы: postfix - exim, dovecot - courrier как минимум. Еще надо будет ставить дополнительный софт в виде fail2ban, и самописных скриптов, есть f2b вам мало и у вас открыт ipv6. И до кучи правильно настроить iptables и ip6tables.

    Для того, чтобы файлов - поставить samba и сделать некое подобие правил пользователям.

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

    Gromobanan777
    @Gromobanan777
    Self-employed professional
    MikroTik. Дёшево, сердито и с хорошим функционалом.
    Ответ написан
    Комментировать
  • Действительно ли back-end разработка более консервативна, чем front-end?

    afiskon
    @afiskon
    Я лично думаю, это касается индустрии в целом.

    В бэкенде на самом деле все даже хуже по моим представлениям. Потому что на веб-фронтенде у вас только HTML, CSS и JavaScript. В бэкенде вы можете использовать любые языки, плюс к этому СУБД и прочие приложения (веб-сервера, всякие там кэши-шины и тд). Так что проблема как минимум аналогично фронтэндной помноженной на три.

    Если хочется относительной стабильности, берите, скажем, Java и предметную область - UI или там веб, и делайте вид, что ничего другого для вас не существует. Даже ограничившись таким образом потоком информации можно запросто захлебнуться.
    Ответ написан
    2 комментария