Pull to refresh
5
0

QA engineer

Send message

Что такое CDN и как это работает?

Reading time9 min
Views286K


Цифры и факты (вместо введения)


  • В 2010 году средний размер веб-страницы составлял 481 кБ. В 2019 — уже 1936.7 кБ (подробная статистика). За последние три года значение этого показателя выросло на 314.7%. Как показывают исследования, тенденция к увеличению размера веб-страниц сохраняется.
  • В настоящее время набирают популярность стриминговые аудио- и видеосервисы. По состоянию на апрель 2019 года число подписчиков популярного сервиса Spotify составило 217 миллионов.
  • По данным опросов 25% пользователей уходят с веб-страницы, если она загружается дольше 4 секунд. 74% пользователей, загружающих сайт с мобильного устройства, предпочитают не ждать, если загрузка длится более 5 секунд. 46% пользователей отказываются иметь дело с веб-сервисом, если он медленно работает.

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

Простые лайфхаки для автоматизации работы с помощью Python

Level of difficultyEasy
Reading time24 min
Views14K

Если какое-то действие приходится выполнять слишком часто — значит, пора его автоматизировать.

Разбираю полезные скрипты — от работы с файлами до DevOps. В каждом разделе есть примеры для новичков и более опытных разработчиков. А в конце статьи — несколько простых правил, которые помогут писать удобный и надёжный код.

Читать далее

Автоматизируем учёт облигаций: как избавиться от рутины

Level of difficultyEasy
Reading time7 min
Views2.8K

Облигации - это не только надёжный источник дохода, но и актив, который требует чёткого учёта. Без него сложно эффективно управлять портфелем и точно оценивать доходность. Вместе с Екатериной Кутняк мы разобрали, как автоматизировать учёт купонных выплат и погашений с помощью Python-скрипта.

Наше решение использует API Московской биржи для сбора данных и выгружает их в Excel, упрощая работу с облигациями.

В статье - детальный разбор, примеры и пошаговые инструкции. Сам скрипт доступен в open-source и уже готов к использованию. Код - на GitHub!

Собираем, анализируем, удивляемся 📊

Устанавливаем Astra Linux на ARM macOS при помощи UTM — полное руководство

Level of difficultyMedium
Reading time7 min
Views3.4K

Не секрет, что macOS хоть и достаточно удобная операционная система, но звезд с неба не хватает, если речь заходит о работе с отечественным ПО.
На самом деле все упирается в архитектуру: нативная установка x86 операционных систем на ARM Mac невозможна, а эмуляция ПО таких архитектур требует определенной экспертизы и довольно много времени, чтобы все не только запустилось, но и корректно заработало.

Если вы используете Mac как основной компьютер и хотите перейти на отечественные IT-решения или администрируете их, вы зашли по адресу.

Я опишу один из способов, как запустить и изучить Astra Linux SE 1.8 на ARM Mac. В результате ОС будет работать полностью автономно и на вашем компьютере.

Читать далее

Как я избавляюсь от компьютерной шеи (text neck). Часть 1

Level of difficultyMedium
Reading time7 min
Views34K

Нагрузка на позвоночник в зависимости от наклона головы

Маленькое отступление: мне 43, первый компьютер «Сура ПК8000» появился у меня в 6 лет. С тех пор дома всегда были компы, за которыми я проводил довольно много времени. До 40 лет я ни разу не лежал в больнице, и со здоровьем, в целом, все хорошо.

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


В статье ― мой сугубо личный опыт и мнение о том, что помогает избавиться от синдрома без вреда здоровью. Я намеренно упростил тему и понимаю, что проблема гораздо глубже. Она относится к полноценному лечению под надзором врачей. Буду рад за комментарии и указание на фактические ошибки, а еще больше ― если кому-то мой опыт откликнется и поможет.

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

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

Но сначала определимся с терминами и откуда они взялись.
Читать дальше →

Обзор KINHANK G1: толковый Android TV Box с полной сертификацией и Dolby Vision. Лучше, чем Xiaomi и KICKPI

Reading time12 min
Views6.7K

Приставка KINHANK G1 стала для меня настоящим открытием в мире тв-боксов. Малоизвестная и не слишком популярная модель оказалась намного лучше хитовых Xiaomi TV Box S 2nd Gen или KICKPI KP1. Это тот случай, когда ожидаешь получить «проходную коробку», а получаешь топовое устройство, закрывающие любые вопросы связанные с просмотром ТВ. Приставка имеет полную сертификацию от Google, систему Android TV с встроенным Chromecast и DRM Widewine L1, который позволяет получить лучшее качество контента в любых онлайн кинотеатрах. Здесь есть поддержка передовых форматов видео Dolby Vision и HDR10+, а также многоканального звука Dolby Digital Plus. Приставка получила 4GB оперативной памяти, оснащена современным WiFi6 модулем и имеет приличный набор интерфейсов для подключения. Например, оптический S/PDIF выход для аудио системы или LAN для проводного подключения интернета. А еще есть сертификация Netflix, которая позволяет смотреть видео в сервисе с качеством 4К\Dolby Vision. Нормальный (не урезанный) процессор Amlogic S905X4-J также в наличии.

Читать далее

Навыки работы с компьютерными сетями: освоение основ

Level of difficultyEasy
Reading time3 min
Views12K

Компьютерные сети — критически важный аспект современных технологий. Поэтому начинающие инженеры и ИТ-специалисты должны иметь четкое представление о принципах и методах их работы для создания и поддержки эффективной ИТ-инфраструктуры.

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

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

Читать далее

Быстрое локальное развертывание DeepSeek

Level of difficultyEasy
Reading time3 min
Views23K

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

Читать далее

Как стать проджект-менеджером с нуля? Бесплатная программа обучения

Level of difficultyEasy
Reading time2 min
Views5K

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

Чтобы изменить данную ситуацию, мы с проджект-менеджером Иваном Колесниковым подготовили для вас программу обучения «Проджект-менеджер с нуля», которая состоит только из бесплатных курсов.

Читать далее

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

Level of difficultyEasy
Reading time7 min
Views1.9K

Хабр, привет!

Давайте разберемся с тем, выгорают ли программисты по другим причинам, чем простые смертные (дисклеймер: да), почему так происходит и что с этим со всем делать. Агрегировала свой айтишный опыт, психотерапевтический и заправила научными статьями.

Читать далее

Простой биллинг для Telegram-бота на SQL

Level of difficultyEasy
Reading time5 min
Views5.7K

Некоторое время назад я запустил Telegram-бота для мониторинга сайтов и обозначил в нём тариф из двух строчек.

Сколько строк на SQL понадобилось для реализации такого тарифа и как в целом устроен биллинг в моём боте расскажу в статье.

Читать далее

Мастер-класс по точечному переносу изменений между ветками в git

Level of difficultyEasy
Reading time7 min
Views9.2K

Представьте ситуацию: вы нашли критический баг в проекте, исправили его в feature-ветке, но до полного слияния ещё далеко. Или вам срочно нужно перенести одно конкретное изменение из текущей ветки в другую. В таких случаях git cherry-pick становится вашим секретным оружием.

Читать далее

Готовим декларацию ИП УСН Доходы

Level of difficultyMedium
Reading time4 min
Views5.9K

В статье рассматривается подготовка годовой декларации для ИП на упрощенной системе налогообложения (УСН) Доходы без сотрудников.
Многие IT-шники совмещают УСН с патентом - часть информации может быть использована для подготовки "нулевой" декларации УСН и книги учета доходов.

Далее используется мой pet-проект prostousn.ru - он не требует регистрации, а логика полностью клиентская и преимущественно реализована в wasm. Сервер только отдает статику, данные на него не передаются. Это накладывает некоторые ограничения на функциональные возможности, но принципиально отличает проект от многих других сервисов.

Читать далее

Шахматный движок на 84688 регулярных выражениях

Level of difficultyMedium
Reading time21 min
Views17K

В праздничные выходные мне пришло в голову, что я давно не занимался чем-то бессмысленным. Представляю вашем вниманию... Regex Chess: набор из 84688 регулярных выражений, которые при выполнении по порядку генерируют ход (валидный, то есть не совсем ужасный) для переданного в качестве входных данных состояния шахматной доски. [Прим. переводчика: здесь в оригинале статьи есть интерактивный виджет, позволяющий сыграть с движком.]

Вот вся программа, которая делает ходы против игрока (серьёзно, я не шучу, она действительно такая короткая):

let regex_list = [/* очень длинный список регулярных выражений */]
let board = "rnbqkbnr / pppppppp / 8 / 8 / 8 / 8 / PPPPPPPP / RNBQKBNR w KQkq - 0 1";
for (regex of regex_list) {
board = re.replace(regex.pattern, regex.target)
}
display(board)

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

* Снобы могут заявить что-то типа «Вы сказали, что будете использовать регулярные выражения, но они не регулярные!" Но меня это не волнует.

Как всегда, код проекта выложен на GitHub.

Читать далее

Книги, софт, сайты для изучения китайского языка

Level of difficultyEasy
Reading time20 min
Views10K

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

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

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

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

Готовим кофе - список материалов обширный!

Решаем проблему устаревания кэширующих серверов. Смотрим на телевизоре. Не VPN

Reading time3 min
Views99K

Не так давно всех потрясла новость об устаревании оборудования популярного видеохостинга, в результате чего сервис перестал нормально работать и началось замедление. Сначала в замедлении сервиса пытались обвинить Роскомнадзор, но до сих пор нет внятных нормативно-правовых актов (поправьте меня в комментариях, если я ошибаюсь), которые бы позволяли данному органу применять методы блокировки в отношении сервиса. Я не верю, что государственный орган может нарушать закон, поэтому будем исправлять проблему самостоятельно и поднимем свой «кэширующий» сервер.

В качестве нашего «кэширующего» сервера будем использовать дешевый одноплатный компьютер MangoPi MQ-Quad (или другой аналогичный), стоимостью не более $29.

Читать далее

Обвиваем YouTube змеем, или как смотреть и скачивать видео с YouTube без VPN на чистом Python-е. Часть 1

Level of difficultyEasy
Reading time13 min
Views162K

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

В этой статье я хочу рассказать, как можно скачивать видео, аудио (1 часть статьи), плейлисты и целые каналы с YouTube (2 часть статьи) без использования VPN и на чистом Python-е. Сразу оговорка: VPN нам не понадобится, но мы сделаем собственное средство, которое будет решать "проблему с устаревшим и изношенным оборудованием Google Global Cache" (вы поняли, о чём я). Я думаю это средство будет особенно актуально сегодня, когда у многих россиян YouTube почти или совсем не работает.

Читать далее

50 терминов системного дизайна, которые должен знать каждый разработчик

Level of difficultyMedium
Reading time10 min
Views22K



1. Масштабируемость / Scalability


  • Масштабируемость — это способность системы поддерживать возросшую нагрузку путем добавления дополнительных ресурсов
  • Примером является добавление дополнительных серверов для обработки увеличившегося веб-траффика
  • Что такое масштабируемость и как ее достичь?

2. Балансировка нагрузки / Load Balancing


  • Балансировка нагрузки — это разделение входящего сетевого траффика между несколькими серверами для снижения нагрузки на каждый из них (во избежание того, чтобы на один сервер приходилось слишком много траффика)
  • Примером является распределение веб-траффика между несколькими экземплярами EC2 с помощью сервиса AWS Elastic Load Balancer (ELB)
  • Понимание балансировки нагрузки
Читать дальше →

Как сделать торгового робота для Binance

Level of difficultyEasy
Reading time12 min
Views37K

Программирование для меня это хобби и любимое дело. А так я сертифицированный системный архитектор. Поэтому прошу не особо ругать за код :-)

В настоящее время я увлекаюсь написанием торговых роботов. Постепенно изучаю нейросети для их применения к анализу цен/объемов акций/фьючерсов.

Обычно я писал торговых роботов для работы с Брокерами и делал авто-торговлю Акциями или Фьючерсами, но вдруг возникла мысль:

- А что, если уже готовый код можно применять и на других активах??? Например на крипто активах для Биткоина или Эфира или других?

Уже изучив много библиотек и примеров за долгое время написания своих торговых роботов, решил сделать небольшую библиотеку backtrader_binance для интеграции API Binance и библиотеки тестирования торговых стратегий Backtrader.

Вот с помощью backtrader_binance, сейчас и создадим алго-робота для торговли BTC и ETH.

Читать далее
1
23 ...

Information

Rating
Does not participate
Registered
Activity