Задать вопрос
  • Как влиться в тренд нынешней веб-разработки?

    @SuperOleg39ru
    Front-end разработчик
    Добрый день!

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

    flexbox, grid layout
    - это css из современных стандартов. Что бы знать, когда применять - вы должны знать версии старых браузеров, которые необходимо поддерживать на вашем проекте, и соответствующую поддержку этих стилей. Например, формировать элементы на flexbox на порядок удобнее, чем на float, но в IE9 вы уже использовать flexbox не можете.
    Немного о новинках в css тут.
    Поддержка браузерами тут.

    gulp, webpack и пр.
    - это инструменты, которые созданы для облегчения рутинных задач.
    Для верстки очень удобно использовать gulp - вы описываете задачи, такие как создание локального сервера, мгновенная перезагрузка страницы при изменениях, минификация ваших файлов, и прочее.
    Посмотрите отличный скринкаст от Ильи Кантора!

    препроцессоры
    - представьте, что вам чего-либо не хватает в html и css.
    Например, вы хотите разбивать большие html файлы на множество мелких, или вам нужно вставить в html динамическое содержание - для этого созданы html шаблонизаторы. Вы используете в работе синтаксис конкретного шаблонизатора, затем тот же gulp автоматически собирает эти файлы в обычный html, который понимает браузер.
    Аналогичная ситуация с css, препроцессоры позволяют разбивать файлы на мелкие, и собирать в один, доступны переменные и функции, и многое другое.
    Популярный шаблонизатор Pug
    Один из css-препроцессоров Stylus

    пакетные менеджеры
    - это удобный способ скачать конкретные библиотеки, и переносить их из проекта в проект. Статья про npm тут

    Ну и конечно статьи и подкасты:
    https://habrahabr.ru/
    jsraccoon.ru

    https://soundcloud.com/web-standards
    https://radiojs.ru/

    Конкретные статьи и ресурсы для новичка:

    frontender.info/a-baseline-for-front-end-developers
    frontender.info/a-guide-to-flexbox
    css-live.ru/articles-css/pravilnye-kontrolnye-toch...
    https://medium.com/russian/%D0%BE%D1%82-%D0%BD%D1%...
    https://medium.com/russian/%D0%BE%D1%82-%D0%BD%D1%...
    https://habrahabr.ru/company/zfort/blog/321214/
    https://frontendmasters.gitbooks.io/front-end-hand...

    Дерзайте!
    Ответ написан
    6 комментариев
  • Как на python3 сделать аналог cmd?

    @javedimka
    Хочу сока
    Используй словарь.
    На твоем же примере read 2017 admin
    Функции в примере просто будут выводить все переданные аргументы:
    def create(*args):
        print("'Create' Function with given args:")
        for arg in args:
            print('%8s' % (arg))
    
    
    def read(*args):
        print("'Read' Function with given args:")
        for arg in args:
            print('%8s' % (arg))
    
    
    def update(*args):
        print("'Update' Function with given args:")
        for arg in args:
            print('%8s' % (arg))
    
    
    def delete(*args):
        print("'Delete' Function with given args:")
        for arg in args:
            print('%8s' % (arg))
    
    # Словарь с функциями. Ключом является вводимая команда.
    options = {"create": create,  "read": read, "update": update, "delete": delete}
    
    # Входим в бесконечный цикл, программа не будет завершаться после выполнения
    # первой же введенной команды.
    while True:
        # Получаем строку от пользователя и разбиваем по пробелам в список.
        # Если user input = read 2017 admin, то получим ['read', '2017', 'admin'].
        command = input("command? ->").split()
        # Используем метод словаря .get() для получения функции
        # связанной с введенной командой, записываем ее в переменную option.
        option = options.get(command[0])  # command[0] - операция индексации списка.
        # Проверяем удалось ли получить функцию связанную с командой пользователя.
        if option:
            # Если удалось, то вызываем функцию с аргументами полученными с помощью
            # операции извлечения среза и распаковки списка в отдельные аргументы.
            option(*command[1:])


    Вывод :
    command? ->read 2017 admin
    'Read' Function with given args:
        2017
       admin
    command? ->


    Бонусом небольшое объяснение про звездочку.

    Инструкция * в зависимости от того где она находится делает разные вещи(помимо умножения):

    В строке с объявлением функции ( def create(*args): ) она позволяет "запаковать" все переданные функции аргументы в один кортеж args. То есть нет необходимости указывать какие именно позиционные аргументы ожидает получить функция, можно передать любое их количество (нуль и более).

    В строке с вызовом функции ( option(*command[1:]) ) она позволяет "распаковать" все элементы последовательности в отдельные позиционные аргументы. То есть все объекты в указанной последовательности command[1:] будут передаваться в функцию как отдельные позиционные аргументы.

    В примере сверху если предварительно не распаковать command[1:] в отдельные аргументы, звездочка запакует в кортеж args целый список, т.е. получим (['2017', 'admin']) - кортеж с одним объектом внутри, что сломает наши функции, придется дополнить цикл тремя лишними символами для их работоспособности (добавить индексацию кортежа: for arg in args[0]). Если же распаковать, то получим кортеж с двумя объектами внутри, что позволит напрямую пройтись в цикле по кортежу.

    Больше информации про распаковку аргументов, индексацию списка и извлечению срезов можно найти в гугле. ( Например про родственника звездочки * двойную звездочку ** которая помогает в работе с именованными аргументами)
    Ответ написан
    Комментировать
  • Как отказать так, чтобы не порвать отношения с заказчиком?

    index0h
    @index0h
    PHP, Golang. https://github.com/index0h
    Цель любой работы - это получение выгоды. Скажите прямо, что вас не устраивает цена.
    Ответ написан
    Комментировать
  • Как использовать контроль версий для сайта на обычном хостинге?

    @lexnekr
    Удивительно, но некоторые "обычные хостинги" (например, beget, не рекламирую) умеют использовать git. Как правило делается это по запросу.
    Уточните у техподдержки хостера.
    Ответ написан
    1 комментарий
  • Кто выводил с UpWork на Tinkoff (важные подробности внутри)?

    dimonchik2013
    @dimonchik2013
    non progredi est regredi
    Работаю на UpWork,
    Теперь хочу на несколько месяцев уехать за границу.


    для таких случаев рекомендована одна карта
    Ответ написан
    4 комментария
  • Как правильно тестировать адаптивную верстку?

    webirus
    @webirus
    Тыжверстальщик! Наверстай мне упущенное...
    И все отлично работает, но когда дело доходит до реального телефона все плывет, самое больное - это шрифты они больше чем должны быть.

    Решение проблемы с увеличением шрифтов на мобильных устройствах.

    -webkit-text-size-adjust: none;
    -ms-text-size-adjust: none;
    text-size-adjust: none;

    А если у меня его нет? Так же, не буду же я при верстке каждый раз заливать сайт на сервер и чекать его с телефона.

    Используйте gulp.js, с установленным browserSync, который Вам дает локальный адрес сайта.
    Вводите на устройствах 192.168.0.xxx:3000 (адрес выдается browserSync'ом).
    И каждый раз при сохранении страницы или изменении файлов CSS или JS страница обновляется.
    Вы увидите все возможные косяки, не заливая сайт на сервер.

    Также browserSync можно использовать с установленных виртуальных машин с разными браузерами.
    У меня на столе стоит 2 монитора с разными разрешениями и ноут, подключенный по сети.
    Ответ написан
    24 комментария
  • Как подписывать разработанные сайты?

    @Battletoads
    Humans.txt
    Ответ написан
    Комментировать
  • OctoberCMS - Годится ли как основа для web-студии?

    parotikov
    @parotikov
    Wordpress, Laravel, OctoberCMS, Vue, Nuxt.js
    Отвечу по существу:
    Октябрь для вас будет идеальным вариантом, учитывая, что вы уже работаете с ларой.
    Джуны входят на раз-два. Куча плагинов, легкость разработки, клиенты радуются админке.
    Ну и плагин Билдер - мой фаворит. Творит просто чудеса. В чем-то похож на Pods для вордпресса.
    С ним конвеерная разработка типового функционала (например, модули каталог предприятий, галерея, афиша и т.д.) превращается в трехкликовый копипаст. А учитывая, что все сделанное можно экспортировать в виде плагинов и устанавливать в Октябре через Project ID, то это прям рай для вебстудии.
    Так что для мелко-средних проектов категорически рекомендую.
    Ответ написан
    5 комментариев
  • Как разрабатываются такие сайты?

    Carduelis
    @Carduelis
    Web-developer, front-end, js, less
    Опыт создания подобных штук есть. Это очень геморройно. Таких работ мало, так как тут нужен не простой дизайнер и не простой верстальщик, и даже не простой front-end'er, а все вместе: программист js-ер, умеющий толково верстать, при этом, прочитавший немало книг по дизайну.
    Не думаю, что под данную достаточно специфичную задачу есть фреймворк.
    UPD. Продублирую ответ из комментариев:
    специфично здесь следующее: когда вы начнете делать такой сайт, вы столкнетесь с кучей проблем уровня js, верстки и дизайна. Сначала вы будете тупить над версткой и css, потом над тем, чтобы ваш js-код был читабельным, затем над тем, чтобы все это дело подгонять, потому что с первого и десятого раза у вас получится некрасивая херня. Придется менять js-код и верстку по 10 раз, и, если вы не имеете достаточного опыта в том и в другом, у вас получится страшный код, 100500 итераций переделки и огромное число человеко-часов.
    Это просто так кажется, что вот тут полоска, тут полоска, го анимировать. Это же все надо продумать, скреативить, затем подгонять параметры анимации и прочего.
    Либо трех людей (js-программист, верстальщик, дизайнер) запереть в одной комнате и привязать цепью =)
    Ответ написан
    9 комментариев
  • Из-за чего может быть ошибка при использовании Google Fonts?

    @olenne
    А где вы нашли шрифт Consolas на сайте? 63e68a7f442d4adb8ac096e27d663c2e.png
    Вот он вам ошибку и выдает.
    Ответ написан
    Комментировать
  • WordPress для Junior - ов?

    andrievski88
    @andrievski88
    SEO + маркетинг + веб программаривание.
    Знаю тех, кто сидел по 5 лет на Joomla, WP, MODX, а потом уходили на фреймворки, но и не меньше знаю обратных случаев.
    Многое зависит от среды в которой работаешь или зарабатываешь. И зачастую такая среда делает тебя фанатом своего вроде, как и правильного взгляда и мнения. Так, что делайте как вам приятно и удобно, ну можно добавить еще выгодно, все остальное ерунда!
    Ответ написан
    Комментировать
  • Как правильно настроить SSD samsung 950 pro?

    adsllinkact
    @adsllinkact
    adsllinkact
    Имелось ввиду, если вы используете одновременно x4 SSD - скорость будет 32 Гб/с
    Типа каждый выдаёт по 8 Гб/с в сумме 4 выдают 32 Гб/с (что то типа RAID массива)

    Потому что:
    Максимальная скорость у разьёма PCI-Express 3.0 составляет 8 Гб/с
    PCI Express википедия
    Ответ написан
    4 комментария
  • Куда в Chrome пропала функция "Создать ярлык приложения"?

    @str0itel
    Можно в настройках хрома включить старый вариант:

    1. в адресной строке chrome://flags
    2. Ищем "Включить новую систему приложений-закладок
    3. Изменяем на Выключено
    4. Применяем, проверяем и мысленно ругаем Гугл за дополнительные проблемы. Можно еще им написать какие они "молодцы", может прислушаются.
    Ответ написан
    Комментировать
  • Полнотекстовый поиск в Windows 10?

    PowerShell
    Get-ChildItem “S:\Folder\” -recurse | Select-String -pattern “Text” | group path | select name


    Сам не сразу вспомнил что PowerShell мощь :)

    Даже еще круче, с Windows XP cmd

    find "Text" S:\Folder\*

    UPD: Оказывается в Windows 10 при поиске в папке, есть на вкладке поиск есть дополнительные параметры. В которых можно указать поиск в файлах и архивах ZIP. Так что все есть, дополнительное ПО не требуется.
    Ответ написан
    Комментировать
  • Полнотекстовый поиск в Windows 10?

    OscarS
    @OscarS
    Total Commander вам в помощь.

    1. Запускаете программу
    2. Нажимаете Alt+F7
    3. Выставляете галочку напротив "С текстом"
    11d3bc43ccc54047a077ecef037ac521.jpg
    Ответ написан
    Комментировать
  • Как сделать возможность выбора темы для просмотра в WordPress?

    Sanes
    @Sanes
    Iframe + Multisite
    Ответ написан
    Комментировать
  • Сайт полностью скопировали, как его закрыть?

    syschel
    @syschel
    freelance/python/django/backend
    Грамотный консультант по вебу + юрист = суд.
    При этом, можете требовать возмещения убытков в большом размере, большем чем потратили на разработку сайта и его доработку.
    Студии же той, грозит реальный уголовный срок, а не просто порицание и удаление клона.

    Но тут всёравно не забыть смотреть договор на разработку и доработку.
    А мошенничество и несколько других статей можно смело повешать, главное грамотного юриста и в помощь ему спеца по вебу(программист + СЕОшник). Минимум что им можно предъявить:
    1. Взлом сайта с созданием вредоносных действий повлекших бла-бла-бла к неработе сайта в должном объёме. Это то, что они сами поменяли настройки robots.txt.
    2. Вымогание денег, на устранение своего взлома - 5 000р
    3. Воровство сайта (программная часть + контент), с последующим шантажом за уничтожение клона, с ценой в 50 000р. Это уже довольно таки крупная сумма для срока или большущего штрафа + условного срока. Минимум по воровству програмной части нужен совет юриста, что бы он гляну договор на разработку. Кому права после оплаты переходят. Вам полностью или вы как бы в аренду получаете их собственность. Но шантаж в 50 000р, в любом случае уголовно преследуемое. Доказать по идее не проблема.

    UPD:
    [Глава 28] Статья 272 УК РФ. Неправомерный доступ к компьютерной информации
    Как раз п1 и п2 подходят смело, а если там виной юр.лицо, а не один программист фрилансер, то есть делала контора, то и п3.

    П1: ...если это деяние повлекло ..., ..., модификацию либо копирование компьютерной информации,...
    П2: То же деяние, ... совершенное из корыстной заинтересованности, ...

    Вот к этому смело можно ссылаться. Была модификация и требование денег за устранение модификации. Было копирование и требование денег за удаление копии.
    Ответ написан
    4 комментария
  • Есть ли фриланс ближе к 30?

    viktorvsk
    @viktorvsk
    Не учите технологии. Учитесь решать задачи. Особенно с исходными данными и запасом прочности.
    Мне кажется, есть 2 пути успеха в айти сегодня:
    1. Рвение к чему-то конкретному (например, нейронным сетям, компьютерному зрению, машинному обучению, электронной коммерции, визуализации ... ) - тут, судя по последнему абзацу, мимо кассы
    2. Не знание технологий или даже стеков, а умение решать практические задачи. Вот тут очень похоже, что оно.

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

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

    На выходе, даже если не сделаете новый супер-хит, то:
    1. Познакомитесь со всеми технологиями и приемами (где-то больше, где-то меньше)
    2. Будет опыт в реальном технологическом процессе

    P.S. Если все же интересует именно только екоммерс и интернет-магазины (не самая привлекательная часть айти, на самом деле), то не рвитесь сразу верстать шаблоны под битрикс. Найдите важные задачи для бизнеса, которые не решаются стандартными методами (их уймы) и попробуйте решить одну из них.
    Ответ написан
    4 комментария
  • Как в Google Analytics составить отчет по utm меткам?

    @maxxi165
    Отчеты \ Источники трафика \ Кампании
    Ответ написан
    Комментировать
  • CMS для сайта с одной услугой?

    DVORYAN
    @DVORYAN
    Разработка и управление проектами
    CMS подойдёт почти любая, но вот часть требований придётся допиливать Вам самим или за $.
    Вот совсем простая ImageCMS, панелька юзера есть, но большую часть функций придётся допиливать.
    modx и drupal тоже подойдут, можно организовать всё, но придётся долго танцевать с бубном или заказать.
    Joomla из той же оперы что и выше cms.
    вопрос в том, что вам больше нравится, потому что в любом случаи придётся допиливать.

    Хотя, может я и не прав, возможно есть готовые модули кабинета пользователя с нужными вам возможностями.
    Ответ написан
    1 комментарий