Государственная цензура есть многогранный монстр, закрывающий путь не только к зарубежной информации посредством блокировки ресурсов и их методов обхода, в лице Proxy, VPN, Tor, но также и постоянно пытающийся подавлять неподконтрольные безопасные и анонимные коммуникации внутри самого себя. Гос.структуры ради этого готовы пойти буквально на любые ухищрения и запугивания, включая штрафы (дело Threema, отказ передачи ключей шифрования), уголовные преследования (дело Дмитрия Богатова, дело по VIPole), регулирование неконтролируемой криптографии (история запретов до 2016, запрет шифрования доменных имён), а также возможные бэкдоры в собственных криптоалгоритмах (Кузнечик и Стрибог). Рэкет становится для государства нормой жизни.
User
Android-приложение на Compose с нуля: Часть 2 (UI)
Здравствуй, дорогой читатель!
В статье рассматривается поэтапная разработка дизайн-системы и UI для Android-приложения "Калькулятор", используя библиотеку Jetpack Compose. Начнём с создания проекта и закончим запуском приложения на эмуляторе.
Как дизайнеры помогают заменить GitLab: что из этого получилось
Привет! Меня зовут Валерия, я дизайнер внутренних сервисов в Ozon Tech. Наша команда занимается продуктами, которые коллеги используют для доступа к инфраструктуре Ozon, приоритизации задач, проведения регламентных работ, выкатки и управления релизами.
Сегодня речь пойдёт про последнее упомянутое решение — REpublic или релизный портал, который помогает нашим разработчикам выкатывать более тысячи релизов каждый день. Я расскажу, зачем мы начали его делать и с какими сложностями столкнулись.
Cloudflare открыла код Rust-фреймворка для программируемых сетевых сервисов — Pingora
Мы гордимся тем, что открываем исходный код Pingora — фреймворка на Rust, который мы используем для создания сервисов, обеспечивающих значительную часть трафика в Cloudflare. Pingora выпускается под лицензией Apache 2.0.
Бесплатные векторные карты на своём хостинге
Векторные карты Protomaps на базе OSM
Каждый веб-разработчик знает о OpenStreetMap (OSM), свободной альтернативе Google Maps. Несмотря на всеобщую известность OSM, у некоторых всё-таки возникают вопросы: как сделать веб-карту с открытыми данными OSM, как самостоятельно публиковать карты?
На эту тему есть популярные руководства, в том числе по работе с базами PostGIS и запуску тайлсерверов для реализации бесшовных карт OSM. Но есть принципиально иной подход — векторные карты Protomaps, которые обеспечивают более высокое разрешение, настройку внешнего вида и наложение произвольных меток. Они изначально предполагают максимальную простоту в создании своих карт. А главное, что разместить тайлы можно на своём хостинге или в облаке.
Жизнь после запрета писать про VPN: зачем мы остаёмся на Хабре
Как мы уже писали, с 1 декабря прошлого года Роскомнадзору разрешено блокировать сайты с информацией о VPN и иных способах обхода блокировок. С понедельника началась новая волна блокировок протоколов OpenVPN и WireGuard, приведшая к перебоям с VPN у многих пользователей.
В итоге, складывается парадоксальная ситуация: писать о VPN запрещено в тот самый момент, когда людям нужнее всего новости о том, что происходит с VPN. Кто-то должен вести хронику борьбы с VPN в России — поэтому, пока у нас есть физическая возможность писать на Хабре, мы продолжим вести блог Xeovo VPN.
Автоматическое создание карточек слов для изучения иностранного языка или интеграция google translate в google sheets
Добрый день.
Недавно сделал инструмент для автоматизированного создания карточек для изучения слов — подумал что может быть кому то пригодится и как инструмент, и как техническое решение.
Немного вводной информации: один из способов запоминания иностранных слов это создание карточек. На одной стороне слово пишется на родном языке, а на обратное стороне его перевод на нужный язык (на момент создания было доступно 103 языка).
Иногда для лучшего запоминания карточка содержит изображение слова, и в интернете большое количество готовых наборов карточек. Но, мне был нужен набор слов из учебника, который я использовал — в идеале любой скопированный текст. В принципе карточки можно сделать и руками, и конечно же это полезно для самого процесса изучения, но речь шла про несколько сотен слов с переводом на несколько языков (учусь в интернациональной группе).
Clickhouse, Grafana и 3000 графиков. Как построить систему быстрых дашбордов
Меня зовут Валя Борисов, и я — аналитик в команде Ozon. Задача нашей команды — создавать инструменты для мониторинга и анализа скорости.
Наши усилия направлены на то, чтобы в реальном времени следить за тем, как быстро работают наши сервисы и платформа. Благодаря инструментам, которые мы создаём и поддерживаем, команды разработки получают представление о том, как пользователи видят работу нашего сайта или приложения. Мы помогаем выявлять причины деградации скорости и определять узкие места в инфраструктуре.
Наши дашборды играют ключевую роль в предоставлении информации о скорости работы платформы. Вместе с командой аналитиков я занимаюсь созданием и поддержкой этой системы в Grafana. Мы стремимся делать ее не только информативной, но и быстрой, стабильной и удобной для всех пользователей. В этой статье я хочу поделиться методами и приемами, к которым мы пришли в процессе работы.
Смотрю в книгу — вижу «фигу». Техника «абсорбирования» учебников SQ3R вместо пассивного чтения
Школа и ВУЗ приучают читать учебники от корки до корки, помещая ученика в своего рода линейный таймлайн — вот начало книги, вот конец. А между ними середина. Двигайся вперед, листай страницы дальше. То, что прочитано — уже выучено. А хочешь повторить — загляни в заметки.
В общем, чрезвычайно «эффективный» подход...
А ведь надо совсем немного — из-под пелены букв достать ключевую суть и запомнить ее навсегда. Это идеальный результат прочтения любого учебника.
Масштабирование. Алгоритм Уменьшения и Увеличения изображения
В этой статье я хочу затронуть проблемы построения алгоритмов масштабирования изображения.
Наверняка когда вы пытались найти алгоритмы масштабирована вы находили в первую что-то вроде: Существуют несколько алгоритмов самое простое это алгоритм Ближайший сосед потом билинейная , бикубическая интерполяция и.т.д
И какие могут быть проблемы?
Ну начнем с того, что по сути своей реализует масштабирована только алгоритм Ближайшего соседа, оставшиеся лишь реализуют сглаживание более пикселизированого и грубого изображения полученного таким способом. Нет вы конечно можете реализовать другие алгоритмы и без Ближайшего соседа, только ваш алгоритмом будет встроен тот же принцип. И вы просто сделаете свой код менее гибким и более усложненным.
Raspbery Pi Pico для управления адресуемыми светодиодами
Если вам нужно сделать гирлянду, где переливается десяток-сотня светодиодов, то эта статья будет вам мало полезна. А вот если у вас несколько десятков тысяч светодиодов и вы еще собираетесь показывать кино с их помощью — тогда вам эта информация определенно сгодится. Тем более, что других источников вы, скорее всего, просто не найдете.
Без А/B результат XЗ, или Как построить высоконагруженную платформу А/B-тестов
Один из важных вопросов как в нашей жизни, так и в бизнесе, и в IT — вопрос эффективности. Эффективно ли мы планируем наше время, те ли задачи решает бизнес, тот ли код мы оптимизируем? Чтобы ответить на эти вопросы, результат должен обладать главным критерием — измеримостью. Измеримость результата новых фич для бизнеса и IT обеспечивает платформа А/B-тестов. О том, как её можно построить, выдерживать большой RPS и при этом не облажаться уронить прод, я расскажу в этой статье.
В конце статьи вы узнаете, как мы задетектили проблемы инфраструктуры, оптимизация которых значительно повлияла на скорость всего Ozon.
Географический Арбитраж: лучшие страны для удалённой работы + мой топ локаций
Сегодня я хочу поделиться небольшим количеством локаций в Азии, Европе и Латинской Америке, которые я рассматриваю в качестве потенциальных мест проживания для себя и своей семьи, рассказать о плюсах каждой из них. В первую очередь я буду обращать внимание на визовые и налоговые особенности т. к. все остальное очень индивидуально. Это далеко не исчерпывающий список интересных локаций!
Текст будет щедро усыпан ссылками на сторонние ресурсы, при желании читатель может продолжить самостоятельное исследование заинтересовавшей его локации.
В конце статьи делюсь своим личный рейтингом городов для релокации!
Переезд в Португалию: Лиссабон как локация для удалённой работы
В конце прошлого года я вместе с семьей переехал в Лиссабон, до этого много раз бывал наездами т. к. моя супруга тут выросла и у нас здесь много родственников и друзей. Я хотел бы поделиться своими мыслями о том насколько Лиссабон в частности, и Португалия в целом является интересной локацией для жизни на дистанционный доход. Я хочу сразу подчеркнуть, что речь пойдет именно о жизни на дистанционный доход, а не традиционную иммиграцию с поиском работы по приезду. По поводу последнего... не уверен в том, что Португалия это та страна куда стоит ехать за карьерой, заработком и т. д.
Я расскажу о том, что знаю о Португалии с точки зрения шести пунктов ниже. Когда я задумываюсь о нашем следующем переезде я всегда оцениваю новую локацию именно по этим пунктам:
· Климат
· Безопасность
· Образование для детей
· Стоимость жизни
· Виза
· Стиль/качество жизни
Автоматизация тестирования микросервисов: плюсы и минусы тестов на Go
Микросервисы можно тестировать по-разному. У каждого подхода есть свои плюсы и минусы, поэтому, чтобы выбрать свой путь и избежать на нём «граблей», лучше всего учиться на чужом опыте. А ещё лучше — на конкретных примерах.
Я занимаюсь тестированием в Ozon и хочу рассказать про нашу инфраструктуру, автоматизацию тестирования и инструменты, которые мы для этого применяем. Покажу, какие распространенные ошибки есть в интеграционном тестировании в Golang. Поделюсь качествами хорошего теста, которые мы для себя определили, нашими подходами и методами подготовки данных для тестов.
Видео моего выступления на конференции Golang Live 2020 можно посмотреть здесь.
Angular 2: Построенный на TypeScript
Это партнерство было очень продуктивным и одарило нас полезным опытом, а так же в рамках этого сотрудничества, мы рады объявить что Angular 2 с сего момента будет построен на TypeScript. Мы с нетерпением ожидаем того что-бы увидеть, что будут способны делать люди с этими новыми инструментами и продолжать работу с командой Angular для того что бы улучшить аспекты использования продукта, разработчиками Angular.
Как не стать спамером со своей уютной рассылочкой
Пользователь когда-то подписался на рассылку, но уже забыл когда, и главное зачем. Теперь ежедневно к нему падает спам, а по собственному опыту он знает, для того чтобы отписаться нужно зайти по ссылке свой профиль, найти и снять там какую-то галку а главное, помнить свой логин и пароль на давно забытом им сайте.
Его действия? «В спам!»
А по другую сторону баррикад находитесь Вы с вашей уютненькой подписочкой, полезной информацией и очень удобной системой отписки, о которой пользователь так никогда и не узнает.
И вот, с десяток таких «отписок» и гугл будет удобно отсортировывать ваши рассылки в папочку Спам (584), у ВСЕХ ваших подписчиков.
Однако многие из нас уже успели заметить: некоторые письма в Gmail при попытке отметить их «В спам!» САМИ предлагают отписаться от рассылки в один клик.
Эта фича была введена google более года назад, но лишь единицы рассылок научились ей пользоваться. И не удивительно. В рекомендациях по осуществлению массовых рассылок, лишь косвенно упоминается о том, что Вам нужно сделать.
А сделать нужно не многое.
SIMD без SIMD, или ищем на С почти в два раза быстрее чем на С++
После того, как я запустил компиляцию С++ кода из второй статьи, мне стало интересно — успею ли я написать аналог на С, который будет работать быстрее, пока код… компилируется? Не успел, код скомпилировался через 5 минут, а аналог на С писался все 15.
Итак, постановка задачи — есть структура из нескольких полей, есть фильтр, который проверяет, находится ли каждое поле в указанном диапазоне. Или не проверяет — для каждого поля. Нужен код который эту проверку по фиксированному фильтру делает очень быстро. Данные случайные, так что чем меньше условных переходов тем лучше — предсказание переходов на случайных данных работает так себе.
Ежедневная работа с Git
Я постараюсь донести основные идеи, показать как эта VCS помогает разрабатывать проект. Надеюсь, что после прочтения вы сможете ответить на вопросы:
- можно ли git «подстроить» под тот процесс разработки, который мне нужен?
- будет ли менеджер и заказчик удовлетворён этим процессом?
- будет ли легко работать разработчикам?
- смогут ли новички быстро включиться в процесс?
- можно ли процесс относительно легко и быстро изменить?
Конечно, я попытаюсь рассказать обо всём по-порядку, начиная с основ. Поэтому, эта статья будет крайне полезна тем, кто только начинает или хочет разобраться с git. Более опытные читатели, возможно, найдут для себя что-то новое, укажут на ошибки или поделятся советом.
Директивы в Angularjs для начинающих. Часть 1
Information
- Rating
- Does not participate
- Location
- Россия
- Registered
- Activity