• Как решить проблему верстки при масштабировании окна браузера?

    @aguz
    Client-side developer
    Встречный вопрос:
    А как вы решаете проблему верстки при resize окна? (например перевод планшета из landscape в portrait создаст изменение геометрии окна)

    Очевидный ответ:
    Да, медиа-запросы помогают решить часть проблемы, но не главную. Главный фикс - проценты (или другие относительные еденицы) в величинах контейнеров на странице.
    Ответ написан
  • Как сделать диагональное соединение фонов в секциях?

    @aguz
    Client-side developer
    Поворачивать еще можно с помощью transform: rotate. Только всевдоэлементы придется увеличивать по отношению к родителю.
    Ответ написан
    Комментировать
  • Есть проект на Laravel. Как грамотно залить его файлы в Git репозиторий?

    @aguz
    Client-side developer
    Я б вам предложил не заливать Laravel в git.

    Полагаю история началась так: вы скачиваете с git исходный код Laravel. Позже тут же правите app, добаляете контроллеры. Потом с этой же папки подумаете веб-сервер и смотрите результат.

    Я вам предлагаю организовать три папки:
    - Папка с исходным кодом Laravel. Клониться с гита. И время от времени git pull. ( это на тот случай, если Laravel нельзя прописать в проектном composer.json)
    - Папка с вашим проектом. Тут собственный .gitignore, никаких кешей, никакого мусора в лице app engine.
    - И магическая третья папка. В неё смотрит веб-сервер. В неё мерджатся файлы из первых двух. Эта папка органично появляется, если веб-сервер поднят на локальной виртуальной машине, или на удаленном сервере.

    А удобное подключение нескольких папок в проект можно сделать в PhpStorm и NetBeans(кажется). Ну и автодеплой по Cmd+S.
    Ответ написан
    Комментировать
  • При каких обстоятельствах, может получаться такой урл?

    @aguz
    Client-side developer
    Адрес, который показывает Вебмастер, точно не тот, который генерируется в ссылке. Слеши не пропадают. Никогда.
    Он сформировался где-то в другом месте, и вот это место нужно искать.
    Ответ написан
    Комментировать
  • Какой самый продвинутый wysiwyg редактор?

    @aguz
    Client-side developer
    Стрёмное желание. Я б посоветовал не хотеть такого.

    Я понимаю, что хочется создавать а-ля лендинг сразу под продукт, но..

    Современный воркфлоу сложного и красочного макета страницы состоит из нескольких этапов:
    1. Наверстать её в фотошопе (Sketch, Illustrator, etc). В таком релакторе низкая стоимость смены цвета/шрифта/позиции блоков. На этом этапе легко копмозировать страницу, легко наслаивать световые эффекты и видеть результат. Поэтому совет SerzN1 вполне уместен.
    Перевести картинку в маркап+css уже механическая работа.
    2. Запрограммировать, что б макет мог выводится с разными продуктами, разными свойствами. Вот эту задачу обычно решают cms.
    3. В wysiwyg редакторе заполнить описание одного продукта, другого, двадцатого. На этом этапе обычно важно сосредоточится на тексте, содержимом.

    Поэтому у вас есть две крайности:
    - Если продукты уж очень уникальны, требуют точеных решений - тогда забудьте про шаги 2 и 3 и cms , как страшный сон. Рисуйте лендинги, верстайте html-ки под каждый продукт. И горя знать не будете.
    - Если продукты шаблонны, но шаблон особенный и красивый, то у вас cms с простыми инпутами, без wysiwyg редактора совсем. И просто заполняете поля для каждого продукта, а система сама будет "...Перемещать блоки. (двигать). Менять фон. Делать надписи на фото".

    Именно то, что хотите, удалось сделать ребятам из Microsoft в лице Word. Да-да. И хотя это ло сих пор бажное поделие, он вцелом неплохо справляется с задачей быть wysiwyg- ом. Его спасает только то, что при выводет на печать не важно количество мета-информации в файле. А для веба с текущим его состоянием это очень критично.

    Поэтому предлагаю искать решение, когда ckeditor будет излишне технологичен.
    Ответ написан
    Комментировать
  • Как исправить Cross-Origin Request Blocked для Яндекс Метрики?

    @aguz
    Client-side developer
    Вам точно не нужен этот конфиг: вам не нужно разрешать броузеру с домена mc.yandex.ru читать контент вашего сайта.

    The Same Origin Policy disallows reading the remote resource ...

    Здесь речь о том, что mc.yandex.ru дожен был бы разрешить запросы с вашего домена. но что-то пошло не так..

    - Попробуйте очистиь кеш броузера
    - Перепроверить домен в настройках Яндекс.Метрики для вашего сайта
    Ответ написан
    Комментировать
  • Запуск gps-навигатора с сайта?

    @aguz
    Client-side developer
    Копать стоит в сторону geo: схемы.
    Пример: <a href="geo:55.717771, 37.735467">Find Us</a>

    В далеком 2011 вот ребята тестировали и пришли к выводу, что лучше maps: схема.
    Пример:
    <a href="maps:894%20Granville%20Street%20Vancouver%20BC%20V6Z%201K3">Find Us</a>


    Как с сегодняшних реалиях - нужно тестировать (
    Ответ написан
    1 комментарий
  • Какой должна быть структура nginx.conf с basic authorization и cors?

    @aguz
    Client-side developer
    Пожалуй для истории оставлю пример.

    Заголовки Access-Control-Allow-* потребуются во всех типах запросов. Поэтому их нет необходимости сегментировать как на enable-cors.org
    Необходимость условия if ($request_method) на уровне location, а не server, была связана с особенностям работы nginx.

    server {
    
        #Authentification
        satisfy any;
    
        allow 123.456.789.001;
        allow 123.456.789.002;
        deny  all;
            
        auth_basic           "Admin section";
        auth_basic_user_file .htpasswd;
    
        #CORS
        add_header Access-Control-Allow-Origin "http://localhost"; # <- needs to be updated
        add_header Access-Control-Allow-Methods "GET, OPTIONS"; # 
        add_header Access-Control-Allow-Headers "Authorization";
        add_header Access-Control-Allow-Credentials "true"; 
    
        location / {
            if ($request_method = OPTIONS ) { # <- because if ($request_method) doesn't work on server level
                add_header Content-Length 0;
                add_header Content-Type text/plain;
                return 200;
            }
        }
    
        #Routing
        location ~ ^/(images|javascripts|stylesheets|system)/  {
             root /some/directory/for/rails/app/public;
             expires max;
            break;
        }
    
        location ... {
            ...
        }
    
    }
    Ответ написан
    2 комментария
  • JavaScript Auth с поддержкой CORS?

    @aguz
    Client-side developer
    Полагаю, что речь идет про запросы через jQuery - $.ajax.
    При кроссдоменных запросах в ИЕ давних версий нужно использовать XDomainRequest вместо XMLHttpRequest, но он ограничен в возможностях. $.ajax не поддерживает XDomainRequest.

    Несколько ссылок в тему:
    bugs.jquery.com/ticket/8283#comment:43 - почему всё плохо
    mcgivery.com/ie8-and-cors - и что можно сделать

    А надо, чтобы везде работало стабильно.

    JSONP ? Но тогда нет POST.
    Ответ написан
  • Magento или Opencart?

    @aguz
    Client-side developer
    Magento. Точка.

    Как приятно и легко отвечать на вопросы без конкретики.
    На самом деле стоит уточнить с какой позиции задан вопрос.
    • если вы менеджер своего магазина...
      И вам нужна онлайн витрина для этого магазина, то.. То этот выбор не должен вообще вас волновать. Найдите подрядчика, который зафигачит "интернет магазин". Практически в каждом городе родины найдется студия, где можно будет обсудить свои хотелки или типичные решения конкурентов. А на просторах фриланса найдутся бойцы под любую платформу.
      Серьезно. Зачем заморачиваться со всеми этими "хостингами", "плагинами", "темами"?
      А может лучше воспользоваться онлайн-сервисом для конструирования своего интернет магазина?

    • если вы менеджер веб-студии, которая выбирает направление E-Commerce...
      И вы стоите перед выбором платформы, на которой стоить бизнес. Тогда берите тут систему, с которой больше знакомы ваши девелоперы (или ваши будущие девелоперы). Если нужен что-то на PHP, возьмите Wordpress, Drupal или 1С-Bitrix, Simpla.Cms. Вы ж - студия, зачем вам обязательно бесплатная CMS?

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

      github -> magento

      - PHP, MySQL (вы ж девелопер с PHP экспертизой)
      - расширяемая архитектура
      - современные тенденции языка

    Техно Николь Украина сделан на Wordpress для крупного ритейлера в Украине. Ну и ничё так. Интеграция с 1С, гео-таргетинг, и кучка доработок вполне себе небольшой командой.
    adidas.ru сделана на Demandware. Речь не про сайт для всех ларьков в России, а про платформу для всего Adidas Group. Это когда SLA на работу сайтов и SLA на развитие/поддержку, это когда единая кодовая база, но свои кастомизации и свои продуктовый каталог для каждой страны. Ну и еще вагончик приятных мелочей..

    Так о чем это я? Magento или Opencart? Magento. Или может все-таки Битрикс?
    Ответ написан
    Комментировать
  • Как получить должность штатного верстальщика?

    @aguz
    Client-side developer
    1. HTML4/5, CSS2/3 - определения, спецификация. Это минимальный уровень.
    - Как выровнять блок/блоки по центру/слева/справа/по вертикали/по baseline?
    - Сетка (grid): как реализовать, особенности, подводные камни?
    - Вставить картинку на страницу: особенности, варианты, а "так, чтоб вывелась на печать"?
    - Разница DOM / HTML / XHTML / SVG.
    - Google CSS Guide, Github CSS Guide или любая другая договоренность о том как пишеться CSS/LESS/Stylus

    Все другие вопросы сугубо project specific. И от собеседования к собеседованию могут отличаться. Зачастую те, кто собеседуют сами не знают точных ответов на свои вопросы. Тут уж ответ должен сопрягаться с "ожидаемым ответом".

    2. Количество работ - залог того, что удалось столкнуться с разными проблемами.
    - 0 работ - нужно просто феноменально знать спецификацию. Хорошая память и знание английского - залог пройденного собеседования.
    - 2-5 работ "с нуля" достаточно, чтоб составить представление о технике написания кода
    - 10 - всё равно будет рандомно просмотрено 2-5 работ
    - 150 - всё равно будет просмотрено 2-5 работ. Просто 150 работ дают нехилый опыт.

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

    4. Киев/Львов/Чернигов/.. - $400..$600 - это нормально для начинающего верстальщика
    Будут знания JavaScript - можно претендовать на $1000...$1500

    5. Рынку нужны верстальщики-рабы. Много. Люди приходят в "верстальщики" и уходят... А задачи остаются и их еще будет достаточно.
    Ценят за "междисциплинарные" знания. На собеседования любят задать академические вопросы, а в работе приходится сталкиваться с реальными броузерами, реальными пользователями, и реальными отношениями в команде.

    В идеале фронтенд должен идеально представлять как работает броузер, как взаимодействут с сервером, разбираться в сетевых вопросах, знать об ограницениях "по спецификации" и особенноятх релизации в ПО... и тогда его зовут как Frontend Archetechtor или Senior Practice Frontend Lead. Но даже люди на этих должностях имеют ограниченные знания. Поэтому на рынке востребованы разные люди с разными знаниями.

    Дерзайте! Удачи!
    Ответ написан
    Комментировать
  • Как сделать функцию Share, как в Dropbox?

    @aguz
    Client-side developer
    Всё дело в том, что физическое размещение файлов на сервере не обязано соответствовать паттерну урлов, которые будет видеть пользователь.

    userfiles - это вполне может быть виртуальный путь (location в терминах nginx)
    Тогда легче будет сконструировать путь для шаринга.

    На сервере структура файлов может быть
    - files - адрес хранилища
    - - adc/dcf - папка, имя которой сконструированно из имени файла
    - - - adcf832dnewjernrr43n5.png - имя файла в хранилище

    Параллельно вам потребуется БД для хранения связей
    adcf832dnewjernrr43n5 -> Origin file name | Size | Access date | Owner user | smth else

    После этого вы средствами приложения сможете
    /userfiles/akaldygulov@gmail.com/Pretty_image.png
    перенаправлять на
    /files/adc/dcf/adcf832dnewjernrr43n5.png

    /share/adcf832dnewjernrr43n5/Pretty_image.png
    проверять доступ и снова перенаправлять на
    /files/adc/dcf/adcf832dnewjernrr43n5.png
    Ответ написан
    Комментировать
  • Какой есть хороший менеджер фотографий с поддержкой тегов?

    @aguz
    Client-side developer
    Мда.. Мне вот интересен именно десктопный софт (или тулза на локальном NAS).

    Для десктопа пока вижу только такие как
    Windows - Adobe Lightroom. Все знакомые фотографы пользуются именно им.
    Linux - digiKam . Тоже мощный пакет. Но вот меня лично смущают зависимости из KDE, и несуразность интерфейса. Пока что им пользуюсь. Может привыкну.

    Тем не менее ожидаю в этой ветки других примеров.
    Ответ написан
    Комментировать
  • Какую выбрать систему приема платежей на сайте, чтобы реализовать вывод средств на расчетный счет СПД в Украине?

    @aguz
    Client-side developer
    Как вариант — payu.ua.
    Обязательные требования:
    - прием VISA/Mastercard — есть
    - вывод денег на юрлицо в Украине — есть

    Особых проблем с подключением не было... Дальше - вам решать.

    Update: payu в Украине умер - ain.ua/2015/03/16/570115
    Ответ написан
  • Вопрос верстальщикам. Плюсы и минусы, вёрстка vs. изображение

    @aguz
    Client-side developer
    Всё-таки это холиварная тема. Есть надежда, что хоть ссылок в комментариях оппоненты набросают.

    Здесь нет однозначного ответа. Он лежит в плоскости:
    - ваши знания (от этого будет зависеть время, потраченное на вёрстку)
    - перечень девайсов, под которые нужно решить проблему (например Вадим Макишвили делится как напечатать непечатаемый фон http://vimeo.com/74930902 )
    - сложность той картинки, которую нужно сделать в html (практически нет ничего невозможного http://codepen.io/jaysalvat/full/HaqBf)

    Вот и получится, что плюсы и минусы будут меняться от примера к примеру.
    Ответ написан
    1 комментарий