• А как вы развивали умение разбираться в чужом коде?

    kumaxim
    @kumaxim
    Web-программист
    Для начала пройдись по GRASP-паттернам, потом по GoF-паттернам. Если до тебя это писал на другой junior методом copy-past, то тебе это сильно поможет. Неплохой курс по паттернам вот.
    А вообще научиться кататься на велосипеде можно только катаясь на велосипеде... Больше практикуйтесь и будет Вам счастье. :-)
    Ответ написан
    2 комментария
  • Лучшие бесплатные ресурсы по каждой технологии (или стартаперы - дарю идею)?

    RGA24
    @RGA24
    Стартапер, программист, аналитик
    Попробуйте learnxinyminutes.com
    Ответ написан
    Комментировать
  • Как извлечь из MySQL данные по нескольким критериям силами PHP?

    shaks
    @shaks
    Я не побоюсь выразить наверное то, что крутится у многих на языке, кто прочел это) - Это пиздец, дружище ) Большой, кромешный пиздец )
    Выход из ситуации. - nosql. Забудь про Мускул. Сделай все на mongodb например. Все данные хранить в древовидных коллекциях. Вобщем почитай, как раз все твои проблемы решаться оч легко и изящно.

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

    Upd А по сабжу, если уж на мускуле делать, то нужно делать через связи has_many и/или has_and_belongs_to_many/has_many through, а не лепить айди через запятую и искать регулярками.

    Т.е. есть таблица товаров. Есть таблица фильтров, и есть соединяющая таблица товаров и фильтров.
    У каждого товара есть id, у каждого фильтра есть id, а в соединяющей таблице пишутся id'ы товаров и фильтров. Таким образом ты получишь нужную тебе связь.
    Если ты чувствуешь что делаешь чтото не так, то скорей всего так оно и есть :) С таким подходом как у тебя, теряется вся логическая цепочка, мускул сойдет с ума, ибо не будет ведать что он творит )
    Ответ написан
    4 комментария
  • Ошибка phpstorm+Xdebug не работает в чем может быть дело?

    @xrj
    Столкнулся с такой же проблемой. Раньше все работало, а после обновления версии Open Server перестало, хотя все конфиги правились точно так же.

    Ответ для себя нашел здесь: https://devnet.jetbrains.com/message/5478634 в последнем сообщении.

    Мне помогла установка xdebug.extended_info в 1, в конфигах он теперь прописан явно равный 0
    Ответ написан
    8 комментариев
  • Как в git хранить разные файлы для разных веток?

    Если у Вас ветки не мержатся, то да. Если же мержатся - то положите два файла с разным именованием и от окружения выбирайте нужный. Например: logo-master.png и logo-dev.png
    Ответ написан
    Комментировать
  • Как правильно верстать некоторые вещи?

    @BelkinVadim
    Frontend разработчик
    1. В большинстве проектов раньше использовал px. В последнее время перешёл на em и rem, где возможно. Для меня во многом удобнее чем px, правда не везде. Так же не стоит забывать о поддержке браузерами rem, если решите использовать
    2. В 99% случаев выравниваю как Вы написали, padding и line-height. Самый удобный вариант. Со внешними шрифтами редко возникают проблемы. Не из-за того что у них отступы разные, а из-за того как выровнены символы относительно строки (в некоторых шрифтах символы могут быть смещены чуть выше или чуть ниже). Советую Вам использовать этот же метод. Просто на стадии дизайна, должен подбираться шрифт который "заточен" для веба.
    3. Подключаю так же. Для конвертирования использую fontsquirrel. Можно поэкспериментировать с настройками, для получения оптимального отображения в браузерах
    4. Родительскому контейнеру можно задать ширину 100% (чтобы растягивался по всей ширине окна) и overflow: hidden;
    5. Safari поддерживает тень, но чуть темнее она там отображается, если не ошибаюсь. (-webkit-appearance: none; )
    6. Скорее всего не сходятся цветовые профили. Почитайте тут
    7. Так же использую разделение спрайтов по группам (в основном при использование различных типов, размеров иконок в них). В большинстве случаев это удобно (если используется много иконок)
    8. С этим вопросом помочь не смогу, не изучал подробнее как большие фоновые изображения влияют на производительность и отображение
    Ответ написан
    6 комментариев
  • Какой Javascript framework выбрать для новичка?

    aen
    @aen
    Keep calm and 'use strict';
    Вот до тех пор пока все будут учить фреймворки, а не принципы проектирования и то как работает браузер, у нас и будут появляться быдлокодеры. Это мысли в слух. Не в обиду автору.

    Фреймворк это просто инструмент. Он за вас решит ряд вопросов. Позволит какие-то фичи сделать быстрее за счет того, что они уже были решены ранее. Но любой фреймворк можно изучить и применять за приемлемое время при условии, что у вас будут достаточно прокачанные скиллы по js, по тому как работает браузер, по тому как передается информации между клиентов и сервером (сокеты, xhr, cors и прочие свистелки).

    Если вы новичок, то просто пишите код. Ставьте задачи. Смотрите как эти задачи решены были ранее в рамках любого фреймворка или библиотеки, прочитайте исходники.

    Фреймворки, к сожалению, весьма подвержены моде. Раньше был тренд на Backbone.js, затем под ореолом Гугла все подхватили Angular.js, сейчас начинается повальное увлечение React.js. Завтра появится, что то новое, все кинутся на него.

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

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

    А человек, который на ваш вопрос "Что мне изучать?" быстро и легко назовет имя любого фреймворка, скорее всего сам еще недостаточно прокачался, потому как он видимо не понимает, что нет "серебряной пули". Нет идеального фреймворка, который бы решал все ваши задачи.
    Ответ написан
    Комментировать
  • Как в doctrine2 экранировать название таблицы?

    Fesor
    @Fesor
    Full-stack developer (Symfony, Angular)
    Это очень старая проблема доктрины.

    Как вариант можно воспользоваться подобным решением для автоэкранирования:
    https://gist.github.com/Thinkscape/6713196
    Ответ написан
    Комментировать
  • Как настроить имя отправителя email на сервере?

    WebSpider
    @WebSpider
    Выдержка из документации:
    Параметр additional_parameters может быть использован для передачи дополнительных флагов в виде аргументов командной строки для программы сконфигурированной для отправки писем, указанной директивой sendmail_path. Например, можно установить отправителя письма при использовании sendmail с помощью опции -f.
    Ответ написан
    3 комментария
  • Как в ZF2 использовать не ZF2-код?

    Fesor
    @Fesor
    Full-stack developer (Symfony, Angular)
    composer для зависимостей. И копипастить что-либо в контроллеры это не хорошо, контроллеры должны быть тонкими и тупыми и ничего толком уметь не должны. Если контроллеру нужно что-то сделать, то обычно он вызывает сервис и и просит сделать что нужно уже этот сервис.

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