Search
Write a publication
Pull to refresh
46
0
Андрей @Houston

User

Send message

Настройка BGP для обхода блокировок, версия 2, «не думать»

Reading time3 min
Views73K

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


Поэтому здесь я приведу сжатую пошаговую инструкцию, как обходить блокировки, если у вас есть:


  • линукс-машина (ubuntu) вне поля блокировок;
  • роутер Mikrotik, на который вы уже подняли VPN-туннель до этой линукс-машины;
  • настроенный NAT на этом туннеле, позволяющий вам работать через него;
  • желание.

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


Те, кто уже всё сделал по мотивам предыдущего поста, в этом полезной информации не почерпнут.

Читать дальше →

Четвёртый день блокады. В реестр добавили подсети DigitalOcean. Давление на облачные сервисы пока не приносит результата

Reading time8 min
Views70K

UPD. В вечерней выгрузке появилась подсеть 51.136.0.0/15 (Microsoft Limited UK): это 131 тыс. IP-адресов Microsoft, в том числе дата-центров Azure


19 апреля пошёл четвёртый день блокады, которую Роскомнадзор устроил российским пользователям. Количество заблокированных IP-адресов по состоянию на 11:54 достигло 17 766 060, приблизившись к пиковым значения второго дня веерных блокировок.

Основная тактика Роскомнадзора по-прежнему заключается в массовом блокировании подсетей облачных провайдеров, чтобы заставить их отказаться от сотрудничества с Telegram: «Они сейчас решают, будут ли работать на территории РФ или нет», — сказал глава Роскомнадзора Александр Жаров. Услугами этих провайдеров пользуются тысячи российских добропорядочных сайтов, один за другим испытывают проблемы при доступе из России, хотя Роскомнадзор пытается отрицать эти факты.

Две недели назад такой сценарий Роскомнадзора сработал в случае с Zello, но сейчас тактика даёт сбой. Ни Google, ни Amazon пока не идут на попятную.

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

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

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

Restate — или как превратить бревно Redux в дерево

Reading time7 min
Views13K
История развития IT намного интереснее любой мыльной оперы, но пересказывать ее мы не будем. Скажем только, что были свидетили принципа «data-driven», адреналинщики с two-way-binding и беспредельщики без принципов и понятий.
Бог создал людей сильными и слабыми. Сэмюэл Кольт сделал их равными.
Примерно тоже самое сделали Flux и Redux.

Была только одна проблема — Redux по сути своей крайне примитивная хреновина, и чтобы с ним хоть как-то работать надо было добавить парочку middleware — thunk, saga, observable и так далее.

Но эта статья заходит с другой стороны, серьезно так спрашивая про композицию, и, в частности, про компонентную модель. Которой в редаксе — нет.


Читать дальше →

Service Workers. Инструкция по применению

Reading time9 min
Views153K


Количество выходов в интернет с мобильных устройств ежегодно растёт на 2-4% в год. Качество связи не успевает за такими темпами. Как итог, даже самое лучшее веб-приложение обеспечит ужасный опыт, если пользователь не сможет его загрузить.

Проблема в том, что до сих пор нет хорошего механизма управления кэшем ресурсов и результатов сетевых запросов. В своей статье я хочу рассказать как Service Worker (SW) может помочь в решении этой задачи. Объясню в формате рецептов — какие элементы и в какой пропорции смешать, чтобы получить нужный результат, исходя из задачи и требований.
Поехали!

Подборка документальных научных фильмов

Reading time8 min
Views113K


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


Тем ценнее встретить качественный научный фильм, популяризирующий научное знание.


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

React Native: от простой анимации до интерактивной на скорости 60 FPS

Reading time15 min
Views21K

Необходимость в обмене данными между UI и JS процессами в React Native неизбежно сказывается на производительности препятствуя выполнению JavaScript анимации с высокой частотой кадров. Современные библиотеки, такие как Animated, решают эту проблему минимизацией количества сообщений, передаваемых через мост. Следующий шаг — это элементы управления, которые непрерывно реагируют на жесты пользователя. Как мы можем анимировать их со скоростью 60 кадров в секунду?

Осторожно, Траффик!

Безопасный OpenVPN на VPS за несколько минут

Reading time2 min
Views184K

Введение


В связи с последними событиями и возможной блокировкой публичных VPN сервисов созрела идея облегчить жизнь людям и сделать скрипт для быстрой установки OpenVPN со всеми настройками и легким выпуском сертификатов.

Скрипт позволяет одной командой создать работающий сервер и создать файлы конфигурации для клиентов в unified формате (то есть с сертификатами, включёнными в файл конфигурации). Кстати, эти файлы подходят для мобильных устройств.

Скрипт создавался для машин с CentOS 7.x или Ubuntu Server 17.x, использование на Ubuntu 16.x. возможно, но там OpenVPN 2.3.x в репозиториях. При необходимости можно добавить другие дистрибутивы, но обычно при покупке VPS можно выбрать систему и это не так важно.
Читать дальше →

Фантастика и фентези за два с половиной года, почти сто хороших книг

Reading time22 min
Views250K
На этот пост меня подтолкнула публикация «Почему я ворую книги, бедные авторы, и как это исправить», а именно — скепсис и возражения на мой комментарий о том, что я не читаю плохие книги. Мне предложили рассказать, как я выбираю книги для чтения и что именно читаю. Ну я и повелся.
Оформить список было сравнительно просто, FBReader любезно хранил на GoogleDrive все скачанные книги с того момента, как там появилась эта услуга. Предлагаю вашему вниманию список прочитанного мной за 2,5 года из жанров фентези и фантастики.
Читать дальше →

11 вещей которые я узнал, читая спецификацию flexbox

Reading time8 min
Views102K

Я всегда считал, что с flexbox довольно легко работать — глоток свежего воздуха после стольких лет float'ов и clearfix'ов.


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


В конце концов, все заработало, но солнце село, а мой процесс был привычной игрой с CSS. Или… как называется та игра, где надо ударить крота, а затем другой крот выпрыгивает и надо ударить и его тоже?


Как бы там ни было, я решил что пора вести себя как взрослый разработчик и выучить flexbox должным образом. Но вместо того, чтобы прочитать 10 очередных блог-постов, я решил отправиться прямиком к исходнику и прочитать The CSS Flexible Box Layout Module Level 1 Spec


Вот хорошие отрывки.


Читать дальше →

Как вычисляют сумасшедших: патопсихологическая диагностика

Reading time31 min
Views356K
Update 07.04.19: У статьи появилось продолжение с критическим разбором используемых методик, рекомендую ознакомиться с ним.

Привет, Geektimes! Этот пост я пишу в соавторстве с Лобановым Виталием (hdablin) по следам его публикации «Когнитивные стимуляторы и другая психофарма: можно ли стать умнее», посвящённой фармакологическим аспектам проблемы «разгона» мышления. В нём я хочу рассказать о патопсихологии, о том, как проверяют людей на адекватность в психиатрической больнице, о том, какими бывают нарушения мышления, как их выявляют, о том, где проходит разница между гиком и психически больным человеком, о том, можно ли диагностировать у себя психическое заболевание самостоятельно, и о многом другом, имеющем отношение к теме.

Немного о себе: меня зовут Кристина, я медицинский психолог (именно медицинский, окончивший медицинский же университет по специальности «Клиническая психология», это важно), три года проработала в психиатрической больнице, сейчас ушла в частную практику, но осталась в психиатрии как в индустрии. Имею специализацию в нейропсихологии. За время работы мне приходилось сталкиваться с самыми разными категориями пациентов — шизофрениками, БАРщиками, депрессивными, органиками; часть из них обращалась добровольно, часть была госпитализирована в остром состоянии, часть вообще была «принудчиками» (это люди, совершившие преступление, но направленные судом не в тюрьму, а к нам в психушку на принудительное лечение).

tl;dr: В статье рассказано о том, как, зачем и почему проводится диагностика нарушений работы психики.
Читать дальше →

Что почитать программисту на досуге

Reading time3 min
Views34K

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

Читать дальше →

Рабочий дневник программиста

Reading time6 min
Views54K

boat_journal
wikipedia.org


Хочу немного рассказать про полезную рабочую практику, которая уже не первый год здорово помогает мне. Как ни странно, далеко не все разработчики этим пользуются. Наверно, большинству просто не приходило в голову. Заполним пробел, проведём сеанс ликбеза.

Читать дальше →

Маркетинг и реальность моноколес весны 2017

Reading time10 min
Views35K
Не секрет, что производители и продавцы могут приукрашивать характеристики своих товаров, чтобы они выглядели лучше по сравнению с конкурентами. Часто даже не надо обманывать прямо — можно умолчать о точном определении и степени важности какой-нибудь характеристики или привести ее для определенных условий, и несведущие покупатели легко обманутся сами. На территории России уже во всю идет весна, приближается сезон катания на летних гаджетах, и в этой публикации я бы хотел помочь тем, кто заинтересовался темой моноколес и не знает, по каким характеристикам их лучше выбирать.


Классика маркетинга — девушка и товар. Первоисточник неизвестен — магазины копируют это фото друг у друга.
Читать дальше →

«Летающие мошки» и «стеклистые червяки» в глазах, или откуда берутся «битые пиксели» в стекловидном теле

Reading time10 min
Views590K
Поднимите голову и посмотрите на что-нибудь равномерно окрашенное, на какой-то светлый фон (на снег, на небо без солнца). Если перед глазами вдруг начали медленно проплывать вот такие примерно штуки:

image

… То знакомьтесь, это «битые пиксели» у вас в глазу, образованные стекловидным телом (на рисунке ниже оно во всей красе). Такие «глюки» у многих появляются ещё в детском возрасте и с годами множатся или постепенно видоизменяются. Для большинства людей их наличие — не повод для беспокойства, но внезапное их появление или резкое увеличение — повод для срочного визита к офтальмологу. Особенно если к этому прибавляются молнии перед глазами, тёмная пелена или мелкая «табачная пыль».

Но давайте для понимания полной ситуации поговорим о том, что это за явление вообще и откуда оно берётся.
Читать дальше →

Как вы можете использовать отзывчивые веб-компоненты сегодня

Reading time7 min
Views20K

Пару лет назад я впервые услышал про веб-компоненты (Web Components). Сперва меня это действительно заинтересовало, но как только шумиха вокруг них приутихла, они тут же вылетели у меня из головы. Но, как оказалось, в последнее время прошло интересное движение и поддержка этой технологии значительно выросла. Отзывчивые веб-компоненты, в частности, призваны упростить наш подход к адаптивному дизайну. Как многообещающе звучит!
Вот четыре пункта, с которыми стоит ознакомиться любому разработчику перед началом использования данной технологии:
  • Поддержка технологии;
  • Кроссбраузерная работа;
  • Возможность адаптации в среде удельного проекта;
  • Модульный подход.

В этой статье мы рассмотрим каждый из этих пунктов в отдельности…
Читать дальше →

Передача радиосигналов с помощью HackRF

Reading time6 min
Views174K
HackRF — это уникальное устройство, предназначенное для энтузиастов и радиолюбителей, увлеченных изучением радиосигналов, и всего что с этим связано.

Уникальность HackRF в его технических параметрах — при цене около 300$, устройство позволяет не только принимать, но и передавать радиосигналы в диапазоне 1МГц-6ГГц с шириной полосы до 20МГц. Использование HackRF практически не освещалось на Хабре и Гиктаймс, пора восполнить этот пробел.

Что касается приема радиосигналов, то тут все просто, и практически не отличается от популярного 10-долларового RTL-SDR, о котором не писал только самый ленивый. Ставится нужная DLL, запускается программа, в общем-то и все. Кто еще не слышал о таком “чуде”, могут почитать здесь же на сайте:
habrahabr.ru/post/149698
habrahabr.ru/post/149702
habrahabr.ru/post/280454
habrahabr.ru/post/200914

С приемом все достаточно просто и тривиально, технология дешевая и давно отработанная. С передачей все немного сложнее. Чем мы сейчас и займемся.
Читать дальше →

Профилирование JS-кода из функций. Опыт Яндекса

Reading time11 min
Views22K

Последние полгода всем знакомый интерфейс поисковой выдачи Яндекса (Search Engine Result Page — SERP) переезжает на новую архитектуру, с которой разработка неспецифичных фич становится очень быстрой, а разработка специфичных фич — прогнозируемой. Для большой распределенной команды из 40 фронтендеров это большой успех. Когда все было почти готово и новый код начали обкатывать в production экспериментах, оказалось, что серверная JS-шаблонизация в новой архитектуре ощутимо замедлилась.



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


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

Читать дальше →

Правильная обработка ошибок в JavaScript

Reading time7 min
Views52K
Обработка ошибок в JavaScript — дело рискованное. Если вы верите в закон Мёрфи, то прекрасно знаете: если что-то может пойти не так, именно это и случится! В этой статье мы рассмотрим подводные камни и правильные подходы в сфере обработки ошибок в JS. А напоследок поговорим об асинхронном коде и Ajax.

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

Все примеры будут рассмотрены применительно к клиентскому JavaScript. В основу повествования легли идеи, озвученные в статье «Исключительная обработка событий в JavaScript». Название можно перефразировать так: «При возникновении исключения JS проверяет наличие обработчика в стеке вызовов». Если вы незнакомы с базовыми понятиями, то рекомендую сначала прочитать ту статью. Здесь же мы будем рассматривать вопрос глубже, не ограничиваясь простыми потребностями в обработке исключений. Так что когда в следующий раз вам опять попадётся блок try...catch, то вы уже подойдёте к нему с оглядкой.
Читать дальше →

Information

Rating
10,350-th
Location
Санкт-Петербург, Санкт-Петербург и область, Россия
Date of birth
Registered
Activity