• Текст в полупрозрачных блоках

    Fesor
    @Fesor
    Full-stack developer (Symfony, Angular)
    делать полупрозрачным только фон
    /* 50% черного */
    background-color: rgba(0, 0, 0, 0.5);
    Ответ написан
    1 комментарий
  • Куда уйти с PHP?

    Fesor
    @Fesor
    Full-stack developer (Symfony, Angular)
    По поводу срачей - это будет в любом случае. Я вот косо смотрю на большинство ruby программистов, так как мой опыт общения с ними показал что большая их часть хают php, и при этому их код ни чуть не лучше. Но я так же знаю и достаточное количество толковых рубистов, которые не так страстно пропагандируют свою религию. Точно так же как знаю хороших php-шников, которые в свободное время пишут простенькие web-приложения на haskel и других языка.

    Я для себя решил уже давно, что язык программирования никакой роли не играет. И да, останавливаться на php смысла нету. Но вам нужно на нормальном уровне освоить хотя бы одну платформу. Из того что вы писали в комментариях ясно, что вам стоит попробовать себя в java хотя бы по одной причине: все виденные мною популярные технологии под java обладают неплохой архитектурой. Это вам не yii, в котором архитектуры как таковой и нет. Когда при обучении у вас жесткие рамки, стандарты... Когда инструменты подталкивают вас все делать по best-pratice, тогда можно учиться быстрее. А с иструментами вроде yii это сложно. А уже после осознания этих best-practice, осознания концепций базовых, переход с java куда угодно не станет таким уж сложным. Скажем перейти с java на php в таком ключе будет очень легко (при условии подобающих фреймворков, на вроде symfony2/zend2), как и на .NET, как и на любую другую платформу.

    Можете так же попробовать golang, тот же ruby (но не ror, ror пропитан религией), javascript (все же опыт работы с асинхронными языками программирования достаточно полезен), python идеально подойдет для написания небольших утилит или демонов... java после php осваивается нормально, возможности языков в плане построения архитектуры с большего одинаковы. Просто у вас не достаточно опыта в разработке как таковой.

    А по поводу депрессий программиста - это нормально и никак не зависит от используемых инструментов. У каждого такое бывает, нужно добавлять в жизнь немного разнообразия. Я вот для борьбы со скукой вообще решил немного попрактиковаться в написании чего-то на c++ (анализ аудио, классификация и т.д.).
    Ответ написан
    Комментировать
  • Занимаюсь веб-разработкой и хочу делать небольшие приложения под мобильные платформы. С чего начать?

    Fesor
    @Fesor
    Full-stack developer (Symfony, Angular)
    1) если приложение не большое, то да, phonegap подойдет. Но сразу предупрежу что без опыта оптимизации под мобильные девайсы, ваша верстка/js скорее всего будут подтормаживать на большинстве девайсов. Правда есть еще штуки типа steroids.js, которые являются ответвлением phonegap, предоставляя возможность использовать некоторые фишки нативного ui... Правда проект этот с закрытыми исходниками, сборка происходит на их cloud сервере сразу под нужные вам платформы. Для вас это может быть плюсом, но я допустим только по этой причине не могу использовать оный проект при коммерческой разработке.

    2) phonegap ничего не конвертирует. По сути phonegap представляет собой ничто иное как отдельный компоненты webview с api для взаимодействия нативного кода и js, и набора дефолтных проектов под каждую из платформ, где уже настроено все (как грузить webview, как подключать файлики, что загружать а что нет...). Ваше же приложение будет представлять собой

    3) обязательно использовать html и css. Что оттуда вы используете - решать вам. Но вам так или иначе придется верстать. Есть правда проект для построения приложения исключительно на нативном ui, но он сырой и там не так много возможностей.

    И да, без некоторых фишек css3 вы никак не обойдетесь (css анимации, если нужны хоть какие-то плавные анимации, штуки типа bordeer-raduis... словом не так важно знать весь стандарт). А html5 это скорее dom api, а не сама спецификации разметки.

    4) нет. Вы будете реализовывать приложения смутно напоминающее web-сервис, но локальный. Почитайте про single-page apps, про angular.js... про фонгап в конце концов. web сервис вам нужен доступные по сети, только если вам нужен этот сервис (api для приложения, хранение базы данных пользователей или какого-то контента).

    Если смотреть на вашу задачу (чат), почитайте как реализуют чаты для браузеров, и перенесите это в phonegap (у вас страничка клиент находится на девайсе и подключается через websockets к серверу для обмена сообщениями).

    5) mysql нужен только для хранения каких-то данных. Нужна она вам или нет зависит от задачи. Для простого чата она не нужна.

    6) вы ни в коем случае не должны так делать. Если вы будете делать все в отрыве от phonegap и без проверки как это работает на девайсе, то в итоге вам придется потом все переделывать. phonegap-приложения разрабатываются сразу, тоесть на самых ранних этапах разработки вы должны проверять результат на девайсе. Разработка в браузере, особенно с эмуляторами, сильно упрощают процесс разработки, но уж поверьте, иногда такие забавные баги на девайсах воспроизводятся...

    7) ответ на это был приведен выше.

    Вообще больше гуглите и пробуйте. Начать писать на phonegap легко, есть миллион уроков и статей. Пробуйте и ищите. Правда возможно сначала вам стоит задаться вопросом "а надо ли это мне?".

    И да, писать phonegap приложения худо бедно юзабельные на начальном уровне во frontend-разработке довольно тяжело. Иногда кажется что некоторые вещи нативно реализовать проще.
    Ответ написан
    Комментировать
  • В какой области программирования используется физика?

    Fesor
    @Fesor
    Full-stack developer (Symfony, Angular)
    моделирование процессов обычно
    Ответ написан
    Комментировать
  • Как наиболее эффективно выкачать несколько миллионов html страниц, при этом не потратив вечность?

    Fesor
    @Fesor
    Full-stack developer (Symfony, Angular)
    У вас что 1400 потоков создается? Если у вас оперативки гигов 8-16 то конечно не хватит памяти... Вы хоть память освобождаете?

    Вам нужно написать менеджер очереди. Несколько потоков будут висеть постоянно и каждый будет обращаться за новым заданием к менеджеру (придется блокировать остальные потоки дабы небыло гонки за ресурсами). Получив задание ваш поток-воркер выкачает данные и сохранит результат работы в базу/файловую систему и будет просить новое задание...
    Ответ написан
    2 комментария
  • Как реализовать лаконичную запись условий?

    Fesor
    @Fesor
    Full-stack developer (Symfony, Angular)
    примерный вариант...
    $categorySaved = true;
    
    if (!empty($category->pid)) {
        $rootCategory = Categories::model()->findByPk($category->pid);
        $categorySaved = $category->isNewRecord ?
            $category->appendTo($rootCategory) : $category->moveAsFirst($rootCategory);
    } else if ($category->isNewRecord && !$category->isRoot()) {
        $categorySaved = $category->moveAsRoot();
    }
    $categorySaved = $categorySaved && $category->saveNode();


    но вообще это не сильно красиво... А универсального способа нету. По хорошему много ветвлений в одном методе это не хорошо...
    Ответ написан
    Комментировать
  • Возможно ли средствами js сделать плавный скроллинг (при прокрутке колесиком мыши)?

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

    cferdinandi.github.io/smooth-scroll
    Ответ написан
    Комментировать
  • Как правильно реализовать клиент-сервер приложение на Java?

    Fesor
    @Fesor
    Full-stack developer (Symfony, Angular)
    1) для докачки вы должны после подключения к серверу отправлять ему информацию, к примеру, сколько у вас уже есть данных, что бы вы продолжили с нужного места в файле.

    2) вы и не передаете по байтам. операционная система всеравно склеивает все данные в пакеты определенного размера. А вот считывать файлы нужно кусками, а не сразу весь в память грузить, и отправлять кусочками в 1-4 килобайт. Операционная система всеравно сама определит оптиальный размер пакетов.

    3) вам нужно разработать протокол для обмена данными. Скажем клиент отправляет команду get и следом путь к файлу. Так же можно придумывать варианты типа клиент посылает серверу запрос list и тот возвращает списов файлов. Для ваших задачь подойдут текстовые протколы (аля http)
    Ответ написан
    Комментировать
  • Шаблонизатор AngularJS?

    Fesor
    @Fesor
    Full-stack developer (Symfony, Angular)
    Почитайте документацию к angularjs лучше...
    Ответ написан
    5 комментариев
  • Как проверить, откуда пришел запрос?

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

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

    При отправке с сервера запроса домен не участвует, так что и тут проверить не судьба.
    Ответ написан
    Комментировать
  • Стоит ли написать статью про использование Grunt для упрощения жизни разработчиком клиенсткой части во время работы с Java/.NET?

    Fesor
    @Fesor
    Full-stack developer (Symfony, Angular)
    напишите в песочницу, а там уже видно будет. Но советую вам посмотреть что уже писали на тему гранта.

    Хотя как по мне вменяемых статей об интеграции grunt-а и вообще фронтэнд стафа в воркфлоу проекта малова-то.
    Ответ написан
    Комментировать
  • Что php делает быстрее: парсит папку или БД?

    Fesor
    @Fesor
    Full-stack developer (Symfony, Angular)
    быстрее - доступ к памяти. Так что БД в некоторых случаях выигрывают (за счет кеширования в памяти результатов выборок).
    Ответ написан
    2 комментария
  • Как сделать свой input radio вместо «кружочка и точечки»?

    Fesor
    @Fesor
    Full-stack developer (Symfony, Angular)
    jsfiddle.net/j4BTz

    суть вы должны понять. Разные картинки можно задать классом у label. фон задать у span и менять его в зависимости от состояния инпута.
    Ответ написан
    Комментировать
  • Что почитать о проектирование веб приложения для MVC подели?

    Fesor
    @Fesor
    Full-stack developer (Symfony, Angular)
    Начните пожалуй с документации к YII.

    Вообще один экшен должен делать только одно. Более того, рекомендую функционал сразу делить на модули. Для админ панели да, нужно отдельный контроллер, так как там фильтры доступа, права пользователей различаются...
    Ответ написан
    8 комментариев
  • Где найти мультиязычную (или хотя бы RU/EN) функцию для ввода текста с клавиатуры?

    Fesor
    @Fesor
    Full-stack developer (Symfony, Angular)
    keypress не подходит? Навесить на окно и пусть себе слушает...
    Ответ написан
    Комментировать
  • AngularJS: Правильная структура папок веб-сайта который реализует нескольких задач?

    Fesor
    @Fesor
    Full-stack developer (Symfony, Angular)
    Пример приведенный вами годится только для приложения, состоящего из одного модуля. Вообще в докуметации указаны рекомендации по структуре проекта.

    Разделите функционал на модули. Общие сервисы вынесите в отдельный модуль. Модуль приложения должен подключить ваши модули и возможно добавить какие-то свои настройки (например .otherwise для маршрутизации) и задать начальное состояние в .run.

    Хороший пример организации проекта - ngBoilerplate. Хотя он может показаться слегка монструозным. Я к примеру использую свой вариант со схожей структурой.
    Ответ написан
    Комментировать
  • Что такое предопределенные аргументы в подпрограммах в c++?

    Fesor
    @Fesor
    Full-stack developer (Symfony, Angular)
    Имеется в виду необязательные аргументы или аргументы имеющие значение по умолчанию:
    void Foo::bar(bool enable = true)
    {
        // реализация метода
    }


    подробнее
    Ответ написан
    1 комментарий
  • Как поставить на ноутбук OpenGl?

    Fesor
    @Fesor
    Full-stack developer (Symfony, Angular)
    что именно у вас не работает то? может у вас версия opengl требуется выше чем поддерживается видеокартой (3,3 или 4+)...
    Ответ написан
    Комментировать