Pull to refresh
218
0
Алексей @smartov

Technical Lead

Send message

Недокументированные приемы CSS

Reading time8 min
Views54K
Всем привет! Зовут меня Дмитрий Григоров. Работаю фронтедером в Райффайзенбанке в команде RBO PRO. Я расскажу и покажу вам, как можно творчески применять данные возможности CSS. В статье мы рассмотрим следующие темы:

  • Фоны и рамки;
  • Фигуры;
  • Визуальные эффекты.

Total votes 116: ↑114 and ↓2+112
Comments30

У нас проблемы с промисами

Reading time16 min
Views235K
Разрешите представить вам перевод статьи Нолана Лоусона «У нас проблемы с промисами», одной из лучших по теме из тех, что мне доводилось читать.

У нас проблемы с промисами


Дорогие JavaScript разработчики, настал момент признать это — у нас проблемы с промисами.

Нет, не с самими промисами. Их реализация по спецификации A+ превосходна. Основная проблема, которая сама предстала передо мной за годы наблюдений за тем, как многие программисты борются с богатыми на промисы API, заключается в следующем:

— Многие из нас используют промисы без действительного их понимания.

Если вы мне не верите, решите такую задачку:

Вопрос: В чем разница между этими четырьмя вариантами использования промисов?

doSomething().then(function () {
  return doSomethingElse();
});

doSomething().then(function () {
  doSomethingElse();
});

doSomething().then(doSomethingElse());

doSomething().then(doSomethingElse);

Узнайте решение задачи
Total votes 139: ↑136 and ↓3+133
Comments121

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

Reading time14 min
Views77K


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

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

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

Web-приложения в режиме offline. ServiceWorker и CacheStorage

Reading time6 min
Views40K

О чём речь?


Всё чаще возникает задача научить frontend-приложение работать в автономном режиме. Это значит придать web-приложению свойство mobile- или desktop-программы — функционировать в отсутствии связи с Интернет, а также в случае отказа сервера.

Цель — оградить пользователя от проблем соединения на его устройстве. Как было бы обидно не сохранить созданные в google docs таблицы из-за потери wi-fi в ближайшем фастфуде!

Для этого нужно инициализировать приложение в браузере и затем закэшировать ресурсы, минимально необходимые для функционирования. После этого приложение возможно запустить из кэша в случае недоступности сервера.

Решение задачи заключается в следующем:
Читать дальше →
Total votes 26: ↑25 and ↓1+24
Comments2

Я хочу, чтобы сайты открывались мгновенно

Reading time10 min
Views139K
Здравствуйте, меня зовут Александр Зеленин и я веб-разработчик. Я расскажу, как сделать так, чтобы ваш сайт открывался быстро. Очень быстро.


Я хочу, чтобы мой сайт открывался быстро
Total votes 130: ↑122 and ↓8+114
Comments87

Онлайн размещение документов на сайте

Reading time3 min
Views23K
В наше время, когда Интернет широко шагает по стране, компании все чаще создают собственные сайты. Почти на каждом присутствует информация о ценах на продукцию, услуги и т.д., проще говоря – прайсы. Зачастую прайсы сразу сверстаны в html страницу или дается ссылка на их скачивание. В первом случае хорошо, если на сайте установлена CMS и можно редактировать страницы, а если нет? Во втором, нужно закачать прайс по ftp. Оба случая могут явиться камнем преткновения при обновлении прайса на сайте, если нет собственного вебмастера. Да и копирование информации из готового прайса на сайт, может привести к неточностям и ошибками, особенно если прайс не маленький. А это чревато потерей клиентов. Рассмотрим, как упростить размещение прайсов online. Сразу оговорюсь, что рассматривать мощные системы, где CMS сайта взаимодействует с бухгалтерией компании я не буду.
Читать дальше →
Total votes 72: ↑66 and ↓6+60
Comments31

Загрузка контента через YQL

Reading time1 min
Views5.4K
Возможно для вас, как и для меня, станет новостью то, что используя язык запросов Yahoo! Query Language — можно выдрать контент практически с любой страницы непосредственно в браузере (через javascript). Т.е. отпадает необходимость в использовании сервер-сайд кода и библиотек типа curl.

Выглядит это примерно так:
DELETE FROM HTML WHERE 1=1

Даже больше. YQL позволяет выполнять GET и POST HTML запросы.

Как это использовать — да по разному. Вот, для наглядности/примера — украл яндекс) (view source code вам поможет). Можно подглядеть информацию, закрытую корпоративным фаерволом.
А можно и поиграться с кросс-доменными запросами.
Тут уж у кого какая фантазия.
Total votes 49: ↑46 and ↓3+43
Comments23

Мой опыт восстановления зрения

Reading time9 min
Views277K
   Этим летом я был на некоторое время предоставлен сам себе – всех своих я отправил подальше от дыма, а сам, недолго думая, решил немного подтянуть здоровье. Не просто записаться в тренажерный зал и накачать «квадратиков» для пляжа, а именно обследоваться у некоторых врачей, чтобы выработать для себя вектор дальнейших действий, дабы совсем не превратиться в «овоща».

image

   Расскажу лишь про свой опыт восстановления зрения – именно оно больше всего подвержено риску у любого «компьютерного» человека.
Читать дальше →
Total votes 494: ↑397 and ↓97+300
Comments208

Проклятье веб-сайтов и волшебный UX design

Reading time5 min
Views22K
Представьте себе обычного директора, который решил сделать обычный сайт для своей не менее обычной компании. Он нашёл ближайших веб-разработчиков с честными глазами и в двух словах на одной салфетке описал им стандартные пожелания обычного корпоративного сайта. А может быть он поступил проще — указал на похожий сайт и сказал: “Мне надо тоже самое, только круче!”. Разработчики привычно сами себе написали техническое задание и с честью его выполнили. Потом как смогли наполнили сайт контентом и запустили, помолясь. За месяц работы на сайт зашло десяток роботов и несколько случайных посетителей. Директору рассказали о SEO, на которое ему, скрепя сердце, пришлось выделить на три месяца по 50 тыс. руб. — “чтобы попробовать” и “чтобы наверняка”. Благодаря раскрутке сайт начал появляться в поисковой выдаче и счётчик стал показывать почти тысячу посетителей в день. За это время к менеджерам звонило по 5-10 человек в месяц, говоривших что они смотрят сайт и у них есть вопросы о товарах. Реальным клиентом стал только один, да и то, по-мелочи.

Убитый печалью директор отменил всё это бессмысленное SEO и с негодованием отказался от предложений потратить ещё денег на услуги “партизанского” и “социального” маркетинга со “100% результатом”. Попытки выяснить причину неудачи ни к чему не привели — все эксперты только разводили руками и опять советовали потратить денег на SEO, контекстную рекламу и маркетинг. Или заказать новый сайт у новых разработчиков — вдруг на этот раз он получится лучше. И вот поиск причин неудачи перешёл из области разума в область метафизики. Ведь неизвестно — может у разработчиков сайта отрицательная карма (на хабре), или хостинг сайта расположен на старом индейском кладбище, или сервер не окропили святой водой, или сглазили по ftp, или это конкуренты заплатили денег энергоинформационному экстрасенсу и он с помощью генератора акустического резонанса (модель бубен) взял, да и сайт весь ПРОКЛЯЛ!
Читать дальше →
Total votes 82: ↑51 and ↓31+20
Comments54

Альтернативный способ распространения файлов

Reading time3 min
Views3.4K
В последнее время в сети стало распространённым выкладывание различных файлов на различные ресурсы-«файлопомойки». Сейчас я не хочу обсуждать проблемы, связанные с просмотром рекламы при или перед скачиванием, проблемы получения премиум-эккаунтов и удаление файлов по претензиям правообладателей. Найденный мной способ может использоваться как во благо — для автоматического распространения файлов внутри группы, так и во вред — для распространения вирусов, патчей и кряков и т.д. Виноват не изобретатель пистолета, а рука, его держащая.
Читать дальше →
Total votes 70: ↑63 and ↓7+56
Comments45

SICP теперь по-русски! Часть третья

Reading time1 min
Views12K
image
Перевод третьей лекции из курса «Структура интерпретация компьютерных программ».

Это самый известный курс по программированию за последние 25 лет; с 1980г читается в MIT, а с недавних пор что-то подобное читается и в Беркли.

Курс сменил преподавателей и даже язык программирования Scheme на Python(на мой взгляд совершенно зря) и тем не менее информация, которая дается в этом курсе остается архи актуальной в любое время. Я бы сравнил этот курс с чем-то очень фундаментальным и важным для программистов, типа математики или теории алгоритмов.

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

Приятного просмотра!
Читать дальше →
Total votes 98: ↑94 and ↓4+90
Comments39

BBCode-enabled Growl Webkit Style

Reading time2 min
Views843
Продолжая тему Изучаем иностранные выражения (и не только), создал отдельный плагин для Growl, который поддерживает расширенное форматирование. Я считаю что для изучения языка (а не просто выражений) надо выводить немного больше информации, чем просто строчку «оригинал — перевод», например, добавлять контекст. Но в этом случае надо как-то отделять смысловые блоки друг от друга, желательно, визуально. Данный плагин это позволяет делать.

Естественно, возможности использования плагина не ограничены — он поддерживает полный набор BBCode-тегов. В данной заметке я расскажу как проинсталлировать и использовать плагин.
Читать дальше →
Total votes 32: ↑26 and ↓6+20
Comments2

Удаление запущенного .exe с помощью потоков NTFS

Reading time1 min
Views13K
Про потоки NTFS на хабре писали уже не раз, я же покажу, как с их помощью преодолеть одно ограничение Windows по работе с процессами. Тут эта тема в одном посте уже поднималась, но как-то вскользь. Я же хочу обратить на неё внимание.

Вы наверное знаете, что .exe файл работающего процесса невозможно удалить, пока он работает. Можно перемещать файл, но только в пределах своего раздела. С помощью потоков NTFS всё таки можно удалить файл процесса во время его работы.
Читать дальше →
Total votes 4: ↑4 and ↓0+4
Comments7

Пара слов о разработке и публикации add-ons для FireFox и Chrome

Reading time2 min
Views3.4K
image
На днях мне обломился инвайт на лепру. В связи с чем появилось желание поэкспериментировать с плагинами для отображения картинок из комментариев к посту. Дальше о лепре ни слова, просто несколько тезисов о написании и публикации простого или чуть более чем простого адд-она для FireFox и Chrome. Ну и в конце — ссылки на поделки.
Читать дальше →
Total votes 60: ↑46 and ↓14+32
Comments17

Собеседования с разработчиками: вы делаете это неправильно

Reading time5 min
Views4.2K
Истории о том, как люди проходят собеседования в Google, напоминают мне о тех давно ушедших днях, когда я работал в стартапе. За десять лет проведения «современных» IT-интервью наша компания ничему не научилась, и я был частью этой проблемы несколько лет. Я просто скопировал стандартный механизм интервью тех времен, и тем самым совершил большую ошибку. Я думаю, проблемы с производительностью в компаниях, в которых во главе угла ставятся разработчики, выжжены в их ДНК процессом найма новых сотрудников — в корне порочным.

Как мы это делали


Я и мой сооснователь создали небольшую веб-студию в Германии. Мы начинали буквально в подвале дома моего друга, но со временем компания выросла, и мы переехали в настоящий офис. Первое время искать новых сотрудников было несложно — мы просто приглашали своих друзей. Конечно, этот метод не масштабировался, но он выполнял очень важную функцию: обеспечивал то, что новые люди хорошо подойдут компании — как на профессиональном, так и на личном уровне. Но настал день, когда нам пришлось искать людей извне.

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

Читать дальше →
Total votes 107: ↑97 and ↓10+87
Comments54

Эффективная обработка фотографий в Photoshop

Reading time6 min
Views146K
Эффективная обработка фотографий в Photoshop

Читая статьи о Photoshop, я часто удивляюсь тому, насколько многие авторы усложняют решение по сути простых задач по обработке. Этим страдают и многие «монументальные» писатели, например Дэн Маргулис. Но ему это простительно – его задача написать о всех тонкостях и нюансах процесса обработки, рассмотреть его со всех ракурсов и сторон. Хотя именно эта особенность подачи материала в его книгах отталкивает многих читателей.

На самом деле, корни подобных способов «увеличить резкость в 40 действий» растут из очень простой вещи – люди, которые пишут эти уроки, никогда не работали с большим объемом фотографий. То есть, как правило, у них есть пара фотографий и они готовы в процессе их обработки убить вечер-другой. Но когда у тебя идут постоянные заказы, и с каждой фотосессии тебе надо серьезно обработать несколько десятков кадров – начинаешь задумываться о более простых и удобных способах обработки.

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

Читать дальше →
Total votes 288: ↑244 and ↓44+200
Comments117

Ричард Фейнман. Характер физических законов. Лекция 1

Reading time1 min
Views8.5K
Мой хороший друг по собственной инициативе решил сделать перевод популярных лекций известного физика-теоретика, лауреата Нобелевской премии Ричарда Фейнмана, прочитанных им в Корнельском университете в 1964 году.

В настоящий момент предварительно готова одна лекция, которую я с удовольствием представляю Вашему вниманию. Уже готов вариант с субтитрами, по мере готовности версии с озвучкой обновлю пост.

Итак, «Характер физических законов», лекция первая.

http://vimeo.com/14174734

Те, кто интересуется, кто же такой Ричард Фейнман и почему его лекции настолько интересны, для начала могут ознакомиться со статьей в Wiki.
Читать дальше →
Total votes 105: ↑100 and ↓5+95
Comments44

Работа с закладками в GMail

Reading time1 min
Views5.8K
Эта статья о том, как можно сделать менеджер закладок используя Google Mail и Google Docs.
При этом Вы их никогда не потеряете (даже удалив из GMail, копия останется в Docs), а добавление нового URL будет происходить в два клика!

image

подробности
Total votes 113: ↑97 and ↓16+81
Comments30
1
23 ...

Information

Rating
Does not participate
Location
Украина
Date of birth
Registered
Activity