Как стать автором
Обновить
7
0
Андрей @pinkey

Пользователь

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

Продуманные запросы: стратегии кэширования в век PWA

Время на прочтение 18 мин
Количество просмотров 13K
Давным-давно мы, в деле кэширования, всецело полагались на браузеры. Разработчики в те дни почти никак не могли на это повлиять. Но потом появились прогрессивные веб-приложения (Progressive Web App, PWA), сервис-воркеры, API Cache. Внезапно случилось так, что в руках программиста оказались широкие полномочия, власть над тем, что попадает в кэш, и над тем, как оно туда попадает. Теперь мы можем кэшировать всё, что хотим… в этом-то и кроется потенциальная проблема.



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

Мы стремимся к тому, чтобы наши проекты вызывали бы у посетителей лишь положительные ощущения. При этом нам не хотелось бы перегружать сетевые соединения и жёсткие диски пользователей. Это значит, что пришло время дать ход некоторым классическим практическим приёмам, поэкспериментировать со стратегиями кэширования медиаданных и изучить хитрости API Cache, которые скрыты в рукаве у сервис-воркеров.
Читать дальше →
Всего голосов 38: ↑38 и ↓0 +38
Комментарии 0

Как я опубликовал PWA на Svelte в Google Play

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

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


metalz.web.app

Под катом рассказ о том, как я переписал приложение с react-native на Svelte и опубликовал его в Google Play.

Читать дальше →
Всего голосов 32: ↑27 и ↓5 +22
Комментарии 21

Деплоим изоморфное веб-приложение на примере Nuxt.js

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

В средних и больших проектах сайт не ограничивается одним сервисом  —  к примеру только сайтом, как правило существует база данных, API, сервер который маршрутизирует запросы ко всем этим сервисам. Выкатывать и обновлять все это без какой-либо стандартизации непросто, а масштабировать на множество серверов еще сложнее.
Читать дальше →
Всего голосов 22: ↑20 и ↓2 +18
Комментарии 6

Как работают браузеры — введение в безопасность веб-приложений

Время на прочтение 9 мин
Количество просмотров 67K
Давайте начнем серию статей по безопасности веб-приложений с объяснением того, что делают браузеры и как именно они это делают. Поскольку большинство ваших клиентов будут взаимодействовать с вашим веб-приложением через браузеры, необходимо понимать основы функционирования этих замечательных программ.

image
Chrome и lynx

Браузер — это движок рендеринга. Его работа заключается в том, чтобы загрузить веб-страницу и представить её в понятном для человека виде.

Хоть это и почти преступное упрощение, но пока это все, что нам нужно знать на данный момент.

  • Пользователь вводит адрес в строке ввода браузера.
  • Браузер загружает «документ» по этому URL и отображает его.
Читать дальше →
Всего голосов 27: ↑25 и ↓2 +23
Комментарии 2

Исчерпывающее руководство по использованию HTTP/2 Server Push

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


Привет! Меня зовут Александр, и я – фронтенд-разработчик в компании Badoo. Пожалуй, одной из самых обсуждаемых тем в мире фронтенда в последние несколько лет является протокол HTTP/2. И не зря – ведь переход на него открывает перед разработчиками много возможностей по ускорению и оптимизации сайтов. Этот пост посвящён как раз одной из таких возможностей – Server Push. Cтатья Джереми Вагнера показалась мне интересной, и поэтому делюсь полезной информацией с вами.

Читать дальше →
Всего голосов 63: ↑63 и ↓0 +63
Комментарии 10

Worker-ы и shared worker-ы

Время на прочтение 5 мин
Количество просмотров 54K
Во всех популярных языках есть потоки (threads). В браузерном javascript для параллельной обработки используются worker-ы.
Под катом рассказ о том, как ими пользоваться, какие ограничения есть в воркерах и об особенностях взаимодействия с ними в разных браузерах.

Читать дальше →
Всего голосов 40: ↑39 и ↓1 +38
Комментарии 5

Сингулярность действительно близко

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

Привет. Меня зовут Марк и я перевожу адаптирую и интерпретирую книгу Р. Курцвейла «The Singularity Is Near». Если вам не знаком Курцвейл и вы первый раз услышали про Сингулярность — посмотрите что об этом думают другие:

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

Билл Гейтс

«Любой человек может понять главную идею Курцвейла: технологии человечества развиваются так же, как растет снежный ком, что означает фантастические перспективы в ближайшем будущем. Это понятно всем. Но для более любознательных есть интересные детали и подробности….»

The New York Times

«Волнующий и чрезвычайно глубокий взгляд на человечество как вид. Курцвейл является блестящим ученым и футуристом…»

The New York Sun

Это настольная книга любого «истинно верующего» технократа, трансгуманиста и футурофила, если в двух словах. Именно эта книга считается лучшей работой Курцвейла и одной из лучших книг, описывающих ближайшее будущее человечества как биологического вида.
Читать дальше →
Всего голосов 136: ↑115 и ↓21 +94
Комментарии 96

Будущее нашей цивилизации: гибель или бессмертие?

Время на прочтение 16 мин
Количество просмотров 94K
Наблюдая за тем, как развивается технический прогресс, наука и медицина, все чаще приходишь к мысли, что к концу XXI века человечество обретет силу древних богов, о которых когда-то слагались мифы. Но к чему все это приведет и что ждет нас на пути к Олимпу?

image

Все технические революции, которые мы наблюдаем, можно считать этапами большого пути к одной великой цели: созданию планетарной цивилизации. Переход к ней должен стать, вероятно, величайшим событием в истории человечества. Мало того, поколение живущих сегодня людей можно смело считать самым значительным из всех, что когда-либо жили на нашей планете. Именно они должны определить, достигнет ли человечество этой великой цели или будет ввергнуто в пучину хаоса. С того момента, когда наши предки впервые вышли из Африки около 100 000 лет назад, миновало около 5000 поколений, но лишь одно поколение — сегодняшнее — определит судьбу нашего мира.
И к чему это все?
Всего голосов 137: ↑126 и ↓11 +115
Комментарии 76

Коллективный разум ХабраХабра выбрал лучшие игры всех времен и народов на 2013 год

Время на прочтение 5 мин
Количество просмотров 299K
Коллективный разум ХабраХабра выбралучшие игры всех времен и народов на 2013 год

Этим постом подвожу итог попытки определить лучшие игры всех времен и народов по версии Хабрахабра на 2013 год.

Отбор проводился по простым правилам:

− В этот пост каждый желающий вносил свою любимую игру,
− Каждый другой желающий голосовал за любимую игру.

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

Основные итоги


Всего в посте собралось за 5 дней больше 1 800 комментариев. Игр было указано около 400. Набрали больше 20 голосов 121 игра. При подсчете учитывались только плюсы (минусы не считал, ибо мы выбирали то, что нравится). Итак, встречайте десятку лучших:

  1. Герои Меча и Магии (259)
  2. Half Life (254)
  3. Fallout (211)
  4. Portal (182)
  5. Neverhood (174)
  6. DOOM (153)
  7. Civilization (151)
  8. StarCraft (150)
  9. Космические рейнджеры (128)
  10. Warcraft (127)

Читать дальше →
Всего голосов 219: ↑191 и ↓28 +163
Комментарии 208

Околоайтишная развлекательная литература

Время на прочтение 2 мин
Количество просмотров 49K
Каждый представитель любой IT-профессии, не важно, программист ли он, системный администратор, да кто угодно — читать любит. Иначе вряд ли бы он пошел в эту профессию, с бесконечными статьями и документациями) Но книги — это не только источник знаний и чужого опыта, это ещё и отличное развлечение. И пусть на календаре суббота, по функциональным параметрам сегодня самая настоящая пятница, а потому предлагаю поделиться в комментариях вашими любимыми развлекательными книгами и рассказами об ITшниках и для ITшников!

Под катом — 5 первых названий с описаниями от меня, для затравки.
update 1. В комментариях ещё 10+ названий.
Читать дальше →
Всего голосов 64: ↑50 и ↓14 +36
Комментарии 63

Анонсирован Xiaomi MI2

Время на прочтение 1 мин
Количество просмотров 104K
Компания Xiaomi анонсировала свой новый смартфон все так же работающий под прошивкой MIUI.

image

Краткие технические характеристики под катом

Читать дальше →
Всего голосов 66: ↑52 и ↓14 +38
Комментарии 109

Механические клавиатуры

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

А раз уж сталкиваешься с вещью регулярно, постепенно возникает вопрос — можно ли найти для работы какие-то более удобные варианты обычных клавиатур?

Итак, некоторое время назад я озаботился сбором информации о клавиатурах, и даже начал готовить информацию для статьи, но к сожалению (к счастью?) нашлась исчерпывающая статья о всех нюансах сразу, которую я решил перевести.

Механические клавиатуры. Путеводитель.

Читать дальше →
Всего голосов 323: ↑313 и ↓10 +303
Комментарии 331

Жизнь разработчика (в картинках)

Время на прочтение 1 мин
Количество просмотров 65K
Взято отсюда специально для хабра. Возможно, в некоторых из ситуаций вы узнаете себя.

Когда я показываю босу, что окончательно пофиксил баг



Когда проджект-менеджер входит в офис



Читать дальше →
Всего голосов 884: ↑700 и ↓184 +516
Комментарии 132

Собеседование на должность JavaScript разработчика

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


Недавно прочитал неплохой пост на тему поиска работы QA и подумал, что похожий пост был бы полезен для JavaScript разработчиков. В конечном счёте, веб движется вперед семимильными шагами, и соискателей на позицию JavaScript программиста хоть отбавляй (разумеется, хороших всегда меньше).
Читать дальше →
Всего голосов 126: ↑115 и ↓11 +104
Комментарии 313

Как смотреть фильмы в оригинале, если английский слабоват? Решение!

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


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

Как известно, чтобы изучать и не забывать язык, им надо пользоваться. И один из способов практиковать язык — это начать смотреть фильмы в оригинале.
Но как можно начать смотреть фильмы и получать при этом удовольствие, если в каждом диалоге актеров встречаются незнакомые слова?

В интернете полно методик, где советуют, например, смотреть по 3 раза или подготавливаться к просмотру, выписывая и заучивая заранее слова из субтитров. Да, возможно это эффективно, и кому-то подойдут такие способы, но это же так скучно… Я бы не смог смотреть 3 раза подряд один и тот же фильм. Хочется получать удовольствие от просмотра, смотреть сразу и без подготовки и все понимать.

Как же этого добиться?
Всего голосов 196: ↑186 и ↓10 +176
Комментарии 105

Как мы делали сервис на WebRTC

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


Статей про WebRTC уже достаточно много и в интернетах, и на Хабре (здесь и здесь), повторять их ещё раз не имеет особого смысла, поэтому тут приведем наш личный опыт и впечатления, полученные при разработке live.pics.io.

Идея



Live.pics.io позволяет создавать приватные сессии для совместного просмотра и обсуждения изображений голосом. Это могут быть любые изображения: от фотографий, до макетов дизайна и презентаций. Pазрабатывая pics.io, мы достаточно хорошо научились работать с разными raw форматами в браузере, поэтому можно не заморачиваться с конвертацией и закидывать фотографии сразу после съемки (будут рады владельцы Canon’ов и Nikon’ов, остальные камеры пока требуют конвертации в DNG).

Очень коротко о webRTC


На самом деле, использовать WebRTC — это практически то же самое, что использовать сокеты. Но немного по-другому (совсем чуть-чуть). Нам нужно передавать изображение и звук. Берем RTCPeerConnection для соединения между пирами, MediaStream для трансляции аудио и RTCDataChannel для передачи изображений. Еще, для того, чтобы все это заработало, понадобится небольшой серверсайд для соединения пиров и передачи управляющих инструкций. Но об этом чуть позже.

Читать дальше →
Всего голосов 42: ↑39 и ↓3 +36
Комментарии 16

Самоидентификация роботов: книги, фильмы, аниме

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


Новые материалы, алгоритмы движения и поведения, инженерные решения и, самое главное, некоторые успехи в создании искусственного интеллекта вселяют робкую надежду на появление первых полноценных андроидов хотя бы при нашей жизни. Но что будет потом? Каковы будут последствия обитания среди нас действительно умных машин? Учёные, писатели и режиссёры на самые разные лады описывают всевозможные сценарии будущего сосуществования людей и андроидов. Диапазон варьируется от апокалиптического порабощения людей до идиллических картин в духе «Приключения Электроника»: «…Вкалывают роботы, / А не человек». С точки зрения коммерческого успеха, большинство фантастических фильмов и книг о роботах обыгрывают гротескные ситуации: войны, угнетение, борьбу то нас с ними, то их с нами. Иными словами, будущее людей и роботов обычно так или иначе окрашено в мрачные тона. Особенно в последние годы сценаристам приглянулась тема безысходного, тягостного будущего. Тем интереснее становятся менее популярные, и потому интересные умеренные точки зрения и сценарии.

Читать дальше →
Всего голосов 60: ↑42 и ↓18 +24
Комментарии 57

Nitrous.IO — online IDE с SSH-доступом и десктоп приложением для синхронизации

Время на прочтение 2 мин
Количество просмотров 13K
image
Nitrous.IO — это online IDE для веб разработки на Ruby, Python, Node.js и Go (авторы общеют больше вариантов со временем). Главными отличиями от десятка подобных проектов являются полноценный SSH-доступ к своим боксам (о них чуть ниже) и десктоп приложение, синхронизирущее локальный код с боксами, также как это делает Dropbox. И главное — в базовом варианте все это предоставляется бесплатно, поэтому попробовать и понять, нужно ли оно вам — крайне просто.
Читать дальше →
Всего голосов 34: ↑31 и ↓3 +28
Комментарии 16

Путь JavaScript модуля

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


На момент написания этой статьи в JavaScript еще не существовало официальной модульной системы и все эмулировали модули как могли.

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

Вот в JavaScript своя атмосфера — в языке нет официальных модулей, более того все файлы лежат удаленно, один поток приложения. Приходится постоянно решать какие-то странные проблемы с загрузкой, хитро паковать модули в один файлы, чтобы ускорить время загрузки. Бывает, что нужно воевать с двойными стандартами, адаптировать модули другого формата.

Дело в том, что раньше не думали, что на JavaScript можно делать огромные проекты, а не просто «пропатчить DOM», поэтому о модулях не думали. Да и вообще не думали о будущем. И тут Внезапно будущее нагрянуло! Все вроде-бы уже есть, а модули в JavaScript, мягко говоря, запаздывают. Поэтому разработчикам приходится крутиться и выдумывать какие-то эмуляторы модульности.

Думаю многие из вас читали прекрасную статью Addy Osmani Writing Modular JavaScript With AMD, CommonJS & ES Harmony, которая стала одной из глав его книги Learning JavaScript Design Patterns в этой статье рассказывается про «современные» JavaScript модули или же читали достаточно старую статью JavaScript Module Pattern: In-Depth 2010 года про «старые» модули.

Я не буду переводить эти статьи и не буду делать из них солянку. В своей статья я хочу рассказать о моем модульном пути. О том как я проделал путь от «старых» модулей к «новым» и что использую сейчас и почему.
Читать дальше →
Всего голосов 188: ↑185 и ↓3 +182
Комментарии 71

Подборка инструментов для фронт-энд разработки

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

Картинки кликабельны.

Form builder


Формы являются очень важной частью любого веб-сайта, но их верстка может занять продолжительное время. Этот очень удобный инструмент, поможет вам создать красивую веб-форму очень быстро.
image
Читать дальше →
Всего голосов 202: ↑184 и ↓18 +166
Комментарии 40

Информация

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