Как стать автором
Обновить
2
0
Дима Шишкин @Shugich

Фронтенд-разработчик

Отправить сообщение

Autofill: чего не знают веб-разработчики, хотя должны знать

Время на прочтение14 мин
Количество просмотров78K


Многим известно, что в мобильной версии Safari можно отсканировать свою банковскую карту. Но многие ли разработчики умеют создавать формы, поддерживающие эту возможность?

Готов поспорить, что немногие.

Дело осложняет полное отсутствие документации от Apple по работе этой функции. Но тут есть один момент. Функция сканирования банковских карт является подмножеством автозаполнения — браузерного функционала, давно игнорируемого веб-разработчиками. Понятно, почему они не уделяли ему должного внимания: когда регулярно заполняешь форму тестовыми данными, автозаполнение обычно мешает. Но для наших пользователей это важная функция. В Google выяснили, что при использовании автозаполнения пользователи на 30% быстрее заполняют формы. Так что давайте изучим работу автозаполнения, разберёмся, как создавать формы, поддерживающие кросс-браузерное автозаполнение, и воспользуемся преимуществами новых возможностей наподобие сканирования банковских карт.
Читать дальше →
Всего голосов 40: ↑39 и ↓1+38
Комментарии12

Ежедневная работа с Git

Время на прочтение40 мин
Количество просмотров882K
Я совсем не долго изучаю и использую git практически везде, где только можно. Однако, за это время я успел многому научиться и хочу поделиться своим опытом с сообществом.

Я постараюсь донести основные идеи, показать как эта VCS помогает разрабатывать проект. Надеюсь, что после прочтения вы сможете ответить на вопросы:
  • можно ли git «подстроить» под тот процесс разработки, который мне нужен?
  • будет ли менеджер и заказчик удовлетворён этим процессом?
  • будет ли легко работать разработчикам?
  • смогут ли новички быстро включиться в процесс?
  • можно ли процесс относительно легко и быстро изменить?


Конечно, я попытаюсь рассказать обо всём по-порядку, начиная с основ. Поэтому, эта статья будет крайне полезна тем, кто только начинает или хочет разобраться с git. Более опытные читатели, возможно, найдут для себя что-то новое, укажут на ошибки или поделятся советом.

Далее очень много букв случайным образом превратились в пост.
Всего голосов 200: ↑194 и ↓6+188
Комментарии44

Структуризация проекта в WordPress, Laravel Blade и не только

Время на прочтение5 мин
Количество просмотров15K
WordPress можно любить, можно не любить, но сложно не согласиться с тем, что он решает проблемы. В последнее время разработка под WordPress ушла далеко от создания примитивных блогов с 4-5 информационными страницами. Все больше и больше компаний используют WordPress как инструмент для создания полноценных пользовательских систем с большим количеством внутренней логики. Печальная правда в том, что он совершенно не приспособлен для этого. Но увы, понимание этого приходит только с очередным запуском проекта в production.

Издержки функциональности приводят к тому, что проект становится очень сложно поддерживать. Вся логика, которая была заложена в проект плохо структурирована, плохо описана, в большинстве случаев лишена тестов. Если проект разрабатывал один человек, то понимание внутренней составляющей проекта уходит вместе с этим человеком. И в итоге компании достается очередной legacy code.

Возможно, ситуация, описанная мною вам знакома, возможно нет. После 5 лет разработки в экосистеме WordPress я понял, что нужно что-то менять. Нужно переосмыслить структуризацию проекта, ввести правила организации логики и вывода, решить проблему повторяемости кода. Так и родилась идея написать wordpress theme framework — Classy.

image
Читать дальше →
Всего голосов 11: ↑10 и ↓1+9
Комментарии44

Git и публикация сайта

Время на прочтение4 мин
Количество просмотров114K
При попытке отредактировать этот старый пост слетело всё форматирование. Может быть я его когда-нибудь исправлю.

Я потратил несколько месяцев на борьбу с глюками Git-svn и обдумывание разных вариантов, прежде чем пришёл к этому методу организации рабочего процесса с сайтом — простому, гибкому и удобному в работе.

Основные преимущества:
  • Делая push из удалённой копии мы автоматически обновляем live-копию сайта
  • Правки файлов на сервере не будут разрушать историю коммитов
  • Простота, не нужны особые правила выполнения коммитов
  • Можно применить к уже запущенному сайту, без повторного деплоя или перемещения файлов
посмотреть, что там такое
Всего голосов 99: ↑88 и ↓11+77
Комментарии49

Организация js кода для джуниоров

Время на прочтение4 мин
Количество просмотров72K
С недавних пор я стал работать в сфере web разработки, и еще нахожусь в стадии падавана. Однако недавно я открыл для себя способ организации клиентского javascript кода, который может быть легко интегрирован в любой существующий проект и который легко освоить.

Этот подход называют «Модульный javascript», и под катом мы научимся его применять.

image
Читать дальше →
Всего голосов 72: ↑48 и ↓24+24
Комментарии41

Почему мы стали использовать препроцессор Stylus в Яндекс.Почте, а также о библиотеке, помогающей жить с IE

Время на прочтение10 мин
Количество просмотров88K
imageСегодня я хочу рассказать о том, почему и как мы пришли к использованию препроцессора Stylus в разработке Яндекс.Почты, а также описать используемый нами метод работы со стилями для IE. Он очень легко реализуется именно с помощью препроцессоров и делает поддержку IE простой и удобной. Мы разработали для этого специальную библиотеку, которой тоже поделимся — if-ie.styl.

Это только первая статья из серии статей об использовании препроцессора Stylus в Яндекс.Почте, которые мы готовим к публикации.

Читать дальше →
Всего голосов 98: ↑92 и ↓6+86
Комментарии37

«Письмо в студию»: 5 правил общения удалённых разработчиков от CSSSR

Время на прочтение5 мин
Количество просмотров10K
«Письмо в студию» — это гостевая колонка, которая будет время от времени рассказывать аудитории «Мегамозга» о тех проблемах и способах их решений, с которыми сталкиваются различные компании и специалисты в своей работе.

Нижеприведённое «письмо» пришло к нам от компании CSSSR, поделившейся с нашими читателями «5-ю правилами общения удалённых разработчиков». CSSSR — это небольшая компания, занимающаяся фронтедом веб-приложений и сложных сайтов, основана 12 апреля 2012 года (в День космонавтики). Поэтому ребята, работающие удалённо в CSSSR (у компании нет офиса), по собственному утверждению «такие же чёткие, как и космонавты». Распределённая структура организации не мешает ей создавать продукты высокого уровня, а основными движущими силами развития являются здравый смысл и здоровый перфекционизм.

От вступления – к содержанию. Слово Феликсу Экстеру — ведущему разработчику компании, который и подготовил правила общения с удалёнными сотрудниками. Пригодится не только удалённым сотрудникам.
Читать дальше →
Всего голосов 10: ↑10 и ↓0+10
Комментарии11

Как сделать персональный шрифт из своего почерка за три минуты

Время на прочтение1 мин
Количество просмотров100K
image

Стартап MyScriptFont.com предлагает прекрасный по простоте, и к тому же бесплатный метод изготовления своего собственного шрифта. Создание и редактирование векторных фигур вручную уходит в прошлое.
Читать дальше →
Всего голосов 52: ↑49 и ↓3+46
Комментарии31

Сайт с нуля на полном стеке БЭМ-технологий. Методология Яндекса

Время на прочтение29 мин
Количество просмотров107K
На прошлой неделе BBC рассказала, что для новой версии главной страницы использовала методологию БЭМ, созданную в Яндексе. По такому случаю мы решили поднять материалы мастер-класса «Разрабатываем сайт с нуля на полном стеке БЭМ-технологий» и рассказать вам, как начать использовать полный стек БЭМ-технологий в своих проектах.

БЭМ упрощает разработку сайтов, которые нужно быстро создавать и долго поддерживать. Эту технологию используют во фронтенде почти всех сервисов Яндекса, и она уже успела обрасти множеством библиотек и инструментов, которыми мы хотим с вами поделиться.



В статье мы расскажем, в чём преимущество вёрстки независимыми блоками и что такое уровни переопределения, познакомимся с готовыми библиотеками блоков и инструментами для автоматизации сборки. Покажем, как разные инструменты — например, autoprefixer, css-препроцессор Stylus или модульная система YModules — упрощают жизнь разработчика и создают по-настоящему удобную платформу, если встроить их в процесс разработки по БЭМ.

На живом примере мы объясним, в чём польза декларативного подхода, когда одни и те же идеи можно использовать как для CSS, так и для JavaScript. Отдельно остановимся на декларативных шаблонах BEMHTML и BEMTREE, которые позволяют преобразовывать данные в БЭМ-дерево, описанное в формате BEMJSON и, затем в HTML. Рассмотрим в деталях, как написать серверную часть приложения по БЭМ-методологии.
Читать дальше →
Всего голосов 96: ↑79 и ↓17+62
Комментарии37

Клуб анонимных Дедов Морозов на Хабре 2014-2015

Время на прочтение1 мин
Количество просмотров31K
image

Привет Дедам Морозам!

С небольшим опозданием, мы рады сообщить вам, что Клуб анонимных Дедов Морозов 2014-2015 на Хабрахабре открыт!
Внутри много важного
Всего голосов 48: ↑44 и ↓4+40
Комментарии394

Быстрая настройка Grunt для комфортной разработки

Время на прочтение7 мин
Количество просмотров25K
Быстрая настройка Grunt для комфортной разработки

Во время разработки нашего сервиса bitcalm.com, нам потребовалось организовать автоматическую сборку проекта. Перед нами стояла цель улучшить производительность frontend-части нашего приложения, а также оптимизировать процессы разработки и развертывания на сервере.

Основными задачами, которые требовалось решить, стали:
  1. Объединение и минификация скриптов
  2. Объединение и минификация стилей
  3. Сжатие png-изображений
  4. Создание спрайтов из всех изображений (с возможностью удобного использования и с поддержкой двух видов спрайтов для девайсов с разным PPI)
  5. Построение разных версий html-документов для разработки и для продакшна

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

Читать дальше →
Всего голосов 37: ↑31 и ↓6+25
Комментарии20

jQueryUI timePicker — виджет для выбора времени

Время на прочтение4 мин
Количество просмотров30K
image В процессе работы над корпоративным проектом нередко приходится переключаться на задачи разработки пользовательского интерфейса. Конечно, для реализации фронт-энда мы уже давно не изобретаем велосипеды, а используем готовые компоненты. Казалось бы, на все случаи жизни уже есть свой плагин, но недавно я с удивлением обнаружил, что для поля выбора даты существует огромное количество реализаций элементов-календарей, а вот поле выбора времени как-то обходится стороной.

Не знаю, то ли я плохо искал (на plugins.jqueri.com есть только один подобный — KitKatClock, но он несколько «недоработан»), то ли искать не хотел, то ли и в правду до такого элемента никому дела нет. В общем, поскольку часть интерфейса, которую я разрабатывал, была ориентирована на заполнение полей пальцем (целевая аудитория устройств — инфокиоски) или, реже, мышкой, а полей для ввода времени было предостаточно, я решил родить еще один никому не нужный jquery-плагин.
интересующихся прошу под кат
Всего голосов 32: ↑24 и ↓8+16
Комментарии21

npm для простых смертных

Время на прочтение5 мин
Количество просмотров633K


Эта статья предназначена для тех, кто не очень дружит с Node.js, но хочет использовать приложения вроде Grunt, Gulp и тому подобные. Процесс работы с этими приложениями подразумевает редактирование файла package.json и использование команд npm, так что понимание принципов работы npm поможет вам справиться с трудностями.
Читать дальше →
Всего голосов 62: ↑37 и ↓25+12
Комментарии13

Выразительный JavaScript: Проект: язык программирования

Время на прочтение14 мин
Количество просмотров35K

Содержание




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

Хэл Абельсон и Жеральд Сасман, «Структура и интерпретация компьютерных программ».

Когда ученик спросил учителя о природе цикла Данных и Контроля, Юань-Ма ответил: «Подумай о компиляторе, компилирующем самого себя».

Мастер Юань-Ма, «Книга программирования»


Создать свой язык программирования удивительно легко (пока вы не ставите запредельных целей) и довольно поучительно.

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

Мы построим язык программирования Egg (Яйцо). Он будет небольшим, простым, но достаточно мощным для выражения любых расчётов. Он также будет осуществлять простые абстракции, основанные на функциях.
Читать дальше →
Всего голосов 31: ↑29 и ↓2+27
Комментарии6

Что такое холакратия и почему она вам не нужна

Время на прочтение12 мин
Количество просмотров151K
Холакратия скоро станет новым модным баззвордом в мире IT-бизнеса, какими в своё время стали стартапы, аджайл и лин. Уже сейчас в Силиконовой долине поднялся невероятный хайп: компании уровня Medium, Zappos и Airbnb вовсю внедряют Конституцию 4.0, появляются форки и альтернативные системы, рождается куча мисконцепций, спекуляций и критики в адрес этой модели распределения власти. Скоро тренд доберётся до наших северных широт и вызовет ещё больше непонимания из-за трудностей перевода. Давайте опередим события и попробуем разобраться, что такое холакратия, откуда она взялась и какую пользу может принести.



Кнопка обслуживает предпринимателей, и так уж получается, что нам всегда нужно быть чуточку впереди, чтобы предлагать самые крутые решения. Поэтому мы обожаем пробовать всё новое. Эксперименты с холакратией мы начали несколько месяцев назад: набили первые шишки, пообщались с консультантами из США, почувствовали первые улучшения и продолжаем внедрять и изучать. В первой статье расскажем про важные для понимания базовые штуки, а в следующих поделимся собственным опытом и ответим на популярные вопросы.
Читать дальше →
Всего голосов 52: ↑37 и ↓15+22
Комментарии109

Возможно ли создать световой меч с точки зрения современной науки?

Время на прочтение4 мин
Количество просмотров230K


Благодаря обширному техническому описанию, созданному сценаристами, мы имеем довольно хорошее представление о том, как может быть устроен световой меч. И вот уже несколько десятков лет миллионы поклонников вселенной «Звёздных войн» мечтают о создании подобной технологии. Давайте посмотрим, в каком приближении современная наука позволяет создать оружие а-ля световой меч?
Читать дальше →
Всего голосов 110: ↑95 и ↓15+80
Комментарии137

История умных часов

Время на прочтение3 мин
Количество просмотров114K
Сейчас есть несколько «умных часов», которые заслуживают интерес. Но сама по себе идея совмещения сначала радиопередатчика и часов, затем компьютера и часов — весьма старая. Поэтому я в очередной раз решил узнать, откуда уши растут.

image

image image image image image

Читать дальше →
Всего голосов 79: ↑73 и ↓6+67
Комментарии119

Большой опрос о мобильных операционных системах

Время на прочтение1 мин
Количество просмотров35K
Доброго утра, Хабрапипл.

Мой хороший друг попросил поинтересоваться какие мобильные операционные системы использует Хабросообщество. Дело в том, что он пишет диссертацию на тему мобильных ОС и ваши ответы сильно бы ему помогли. Да и, вообще, интересно узнать что используют больше и какие причины выбора важнее.

Ответить на вопросы
Всего голосов 77: ↑50 и ↓27+23
Комментарии48

Нужны ли программисту бесплатные плюшки?

Время на прочтение5 мин
Количество просмотров283K
— А где газировка?

Я только что открыл холодильник на офисной кухне, озадаченные слова вырвались сами собой, потому что, к моей досаде, там не было напитков.

Со времён моей студенческой практики, каждая компания всегда предоставляла газировку. Газированные напитки — неотъемлемая часть технокультуры, особенно для программистов, работающих много часов подряд и поздно вечером.

После нескольких часов кодинга я всегда стараюсь взять перерыв и выпить баночку ледяной Diet Coke — или две, или три. Само собой, доза кофеина никогда не помешает.

Смущённый, я закрыл холодильник и спустился в кубикл к своему коллеге Фрэнку.

— Чувак, в холодильнике нет газировки. Что случилось?
Читать дальше →
Всего голосов 329: ↑281 и ↓48+233
Комментарии355

Ищем альтернативы Google Reader

Время на прочтение5 мин
Количество просмотров184K
Как недавно стало известно, с 1 июля закрывается Google Reader. Незамедлительно я начал искать альтернативы.
В данном посте я рассматриваю только онлайн-ридеры. Плагины типа Feedly не рассматриваю.
Читать дальше →
Всего голосов 72: ↑57 и ↓15+42
Комментарии132

Информация

В рейтинге
Не участвует
Откуда
Свердловская обл., Россия
Дата рождения
Зарегистрирован
Активность