Pull to refresh
40
0
Александр @Inq

User

Send message

Почему бы и не поделиться опытом? (ФОТО)

Level of difficultyMedium
Reading time5 min
Views5.3K
image

Хотел написать комментарий (к одной из статей), но в процессе понял, что он может заметно вырасти + оказаться самостоятельной и надеюсь полезной для кого-то статьёй.

Поехали!
Читать дальше →
Total votes 14: ↑13 and ↓1+12
Comments11

Как правильно готовить автоматизацию или Что покрывать тестами в первую очередь

Reading time9 min
Views15K
Привет, это Эрик Бурыгин, я техлид курса «Автоматизатор тестирования на Java» в Яндекс.Практикуме и лид в Яндексе. Каждый ручной тестировщик считает, что автоматизация — это круто и её непременно нужно втащить в проект. Что может быть лучше, чем полное покрытие автотестами продукта, когда тесты гоняются 24/7 и отлавливают баги? Вот прочитал я эти строки, и захотелось ещё раз всё заавтоматизировать!



Но, как это часто бывает, при внедрении автоматизации вы тратите много человеческих ресурсов, а профита долгое время не видно. Возникает вопрос о целесообразности этой инициативы. То, что на первых этапах автоматизация отнимает много сил — вполне нормально, но в перспективе она должна экономить время, а не наоборот. Попробуем понять, как этого добиться.
Читать дальше →
Total votes 7: ↑6 and ↓1+5
Comments2

Рутина и ноотропы: как удвоить личную эффективность, если работы по горло

Reading time10 min
Views36K

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

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

Читать далее
Total votes 36: ↑26 and ↓10+16
Comments52

13 инструментов для разработчиков, шпаргалка по Linux команде apt, вводный курс по Kubernetes Operators и многое другое

Reading time2 min
Views7.1K

Сделали для вас новую подборку шпаргалок, статей, обучающих курсов и книжек в нашем регулярном #полезногопост. Оставайтесь с нами – станьте частью DevNation!

Читать дальше: 13 инструментов...
Total votes 4: ↑2 and ↓20
Comments0

Проверка тестов PHP API на соответствие определениям OpenAPI — пример Laravel

Reading time8 min
Views8.4K

OpenAPI — это спецификация, описывающая API-интерфейсы RESTful в форматах JSON и YAML так, что он понятен и людям, и машинам.

Определения OpenAPI не привязаны к конкретному языку и могут использоваться самым разным образом.

Читать далее
Total votes 7: ↑6 and ↓1+5
Comments0

Как я познавал ci/cd, Гитхаб экшены

Reading time5 min
Views24K

Гитхаб экшены, как я познавал ci/cd

   Всем Алоха. Все слышали про ci/cd, про то что он должен быть в каждой компании и то что он упрощает нам жизнь. У всех свой ci/cd. 

   Кто-то предпочитает Jenkins. Особенно если у вас куча микросервисов, команд и процессов, то при помощи Дженкинса можно достаточно гибко настроить ci/cd в компании. Кто-то использует GitLab actions и для каждого репозитория настраивает свои пайплайны и процессы. Достаточно удобно и просто настраиваемый механизм сборки и доставки артефактов на стенды. Не чуть не хуже GitHub actions. Это было открытием для меня что в GitHub появился такой функционал, о котором мы поговорим позже. Ну и конечно всеми «любимый» скриптовый ci/cd. Пачка скриптов, которые нужно выполнить в определенной последовательности чтобы собрать и задеплоить артефакты. Есть ещё так сказать хэнд мэнуал ci/cd. Но это особый вид извращения, с которым не пожелаю столкнуться никому. В котором нужно собрать артефакты у себя на машине и по какому нить ридми выполнять команды в терминале, лазить по ssh смотреть, что все копировалось, перезапускать сервисы и другие развлечения. 

    Передо мной стояла задача спроектировать и написать новый сервер для проекта. Изначально я закидывал джарники на сервак руками, чтобы проверить работоспособность и настроить сервер. Хэнд мэнуал деплой. В какой то момент меня это начало бесить и я задумался об автоматизации этого процесса. Как вы понимаете девопса или того кто шарит в этом у меня под рукой в компании не оказалось. Очень круто, если у вас есть такой человек. У меня был выбор сделать скрипт деплой, чего я искренне не хотел, потому что в целом не любитель копаться в терминале и скриптах, когда этого можно избежать. Поднять дженкинс и настроить там джобы и пайплайны. Вариант оч классный для большой компании, а мне нужен деплой лишь одного сервера, а не тысячи микросервисов. Да и чего таить, знаний как настраивать дженкинс с нуля у меня было чуть меньше чем ноль. 

Read more about GitHub Actions
Total votes 12: ↑12 and ↓0+12
Comments55

Список ноотропов, покупка которых не окажется пустой тратой денег

Reading time5 min
Views296K

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

Читать далее
Total votes 121: ↑85 and ↓36+49
Comments238

Веб-скрейпинг на PHP

Reading time10 min
Views16K


Термин web scraping означает извлечение информации из веб-страниц в интернете. Его ещё называют web crawling или web data extraction.

PHP широко используется в качестве серверного скриптового языка для создания динамических сайтов и веб-приложений. И на нём можно написать веб-скрейпер. Но поскольку мы не хотим изобретать колесо, можно воспользоваться готовыми open-source библиотеками для веб-скрейпинга. Кстати, мы также написали отличную статью про веб-скрейпинг с помощью Node.js и с помощью Python, почитайте. А здесь мы обсудим разные инструменты и сервисы, которые можно использовать с PHP для скрейпинга веб-страниц: Guzzle, Goutte, Simple HTML DOM, Headless-браузер Symfony Panther.
Читать дальше →
Total votes 18: ↑17 and ↓1+16
Comments6

Разработка платформы управления данными. Доклад Яндекса

Reading time25 min
Views9.7K
Яндекс Go разрабатывает платформу управления данными (DMP) как сервис для офлайн- и near real-time-обработки данных. Я постарался рассказать, какая мотивация нужна для создания собственного ETL-инструмента, как ETL и Data Warehouse превратить в DMP, какие проблемы возникают в процессе разработки и как мы их решаем.

— Меня зовут Владимир Верстов, я руковожу разработкой DMP в Яндекс Go — той частью, которая относится к платформе. Не контентной частью, а универсальными инструментами, которые мы переиспользуем, чтобы удобным образом выстроить внутри Такси, Еды и Лавки потоки данных и другие процессы, связанные с дата-инжинирингом. Чтобы сделать сущность, позволяющую дата-инженерам, аналитикам и разработчикам бэкенда коммуницировать на уровне данных и процессов.

Начать рассказ проще всего с вопроса, что вообще такое DMP, потому что каждый под этим может понимать что-то свое: нет устоявшихся паттернов. Расскажу, как мы вообще пришли к текущему состоянию, покажу несколько примеров использования нашей платформы для Greenplum, для Spark, и постараюсь успеть подвести итоги.
Читать дальше →
Total votes 10: ↑9 and ↓1+8
Comments1

Nginx. О чем не пишут в книгах

Reading time9 min
Views45K

Эта статья родилась случайно. Слоняясь по книжному фестивалю и наблюдая, как дочка пытает консультантов, заставляя их искать Иэна Стюарта, мой глаз зацепился за знакомые буквы на обложке: "Nginx".

Надо же, на полках нашлось целых три книги - не полистать их было бы преступлением. Первая, вторая, третья... Ощущение, будто что-то не так. Ну вроде страниц много, текст связный, но каково содержание? Установка nginx, список переменных и модулей, а дальше docker, ansible. Открываем вторую: wget, лимиты запросов и памяти, балансировка, kubernetes, AWS. Третья: GeoIP, авторизация, потоковое вещание, puppet, Azure. Ребята, а где про то, как вообще работает nginx? На кого рассчитаны ваши книги? На состоявшегося админа, который и так знает архитектуру этого веб-сервера? Да он вроде с базовыми настройками и сам справится. На новичка, который не знает как пользоваться wget? Вы уверены, что ему знание о существовании ngx_http_degradation_module и тем паче "облака" важнее порядка прохождения запроса?

Итак. О чем не пишут в книгах.
(здесь и дальше мы говорим только о NGX_HTTP_)

Фазы обработки запроса
Total votes 86: ↑86 and ↓0+86
Comments11

ruCLIP — мультимодальная модель для русского языка

Reading time5 min
Views14K

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

В начале этого года OpenAI опубликовала модель под названием CLIP (Contrastive Language–Image Pre-training). В статье авторы модели привели потрясающие результаты по точности zero-shot-классификации изображений, а также сопоставили тексты и картинки в рамках одной системы. Однако модель OpenAI работает только с английским языком. Можно ли быстро адаптировать её для работы с русским?

Команды R&D SberDevices и Sber AI увлеклись этим вопросом. В этой статье мы расскажем про первые результаты наших исследований CLIP для русского языка, опишем ключевые идеи предложенной модели и поделимся с вами кодом для её использования — решения задач zero-shot image classification.

Что же можно сделать с помощью ruCLIP?

Читать далее
Total votes 29: ↑29 and ↓0+29
Comments3

Обзор Lens — IDE для Kubernetes

Reading time6 min
Views51K

В прошлый раз я писал о том, как можно улучшить утилиту kubectl, дополнив и расширив ее функционал, а сегодня зайду с другой стороны: познакомимся с решением, которое позволит забыть о консольных командах и управлять Kubernetes-кластером в графическом интерфейсе. Речь пойдёт про Lens — бесплатное приложение с открытым кодом, которое позиционируется как полноценная Kubernetes IDE. Мы уже кратко рассматривали Lens в сравнительном обзоре GUI для K8s, а теперь попробуем это решение в деталях. Что ж, поехали!

Читать далее
Total votes 55: ↑55 and ↓0+55
Comments9

10 топовых плагинов для IntelliJ IDEA, которые ты не должен пропустить

Reading time4 min
Views25K

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

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

Напоминаем, что все плагины можно установить через Настройки/Параметры | Плагины или на вкладке Плагины на экране приветствия.

Погнали!
Total votes 23: ↑18 and ↓5+13
Comments5

Как оптимизировать ограничения ресурсов Kubernetes

Reading time5 min
Views5.6K

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

В этой статье, которая является продолжением серии статей о рациональном использовании ресурсов в Kubernetes, вы узнаете, как выбрать правильные ограничения ресурсов Kubernetes: от обнаружения контейнеров без каких-либо ограничений до определения оптимальных параметров, которые вы должны установить в своем кластере.

Prometheus — одно из самых популярных решений для мониторинга кластеров Kubernetes. Поэтому каждый шаг в этом руководстве содержит примеры запросов PromQL.

Читать далее
Total votes 7: ↑7 and ↓0+7
Comments0

Что читать на английском языке чтобы не умереть от скуки

Reading time9 min
Views47K

Читать на английском – интересно и полезно. Однако, многолетнему обитателю рунета непросто найти хорошие иностранные ресурсы. Плюс, многое из найденного оказывается скучным или слишком сложным. Я постарался подобрать интересные сайты для практики английского и понять, какие из них имеют доступный уровень сложности, а какие – более 9999999.

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

Читать далее
Total votes 25: ↑24 and ↓1+23
Comments16

Kubernetes в Hetzner при помощи Rancher (с картинками)

Reading time5 min
Views11K

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

Читать далее
Total votes 10: ↑10 and ↓0+10
Comments4

Tоп-10 PromQL запросов для мониторинга Kubernetes

Reading time3 min
Views10K

В этой статье приведены примеры популярных запросов Prometheus для мониторинга Kubernetes.

Рейтинг основан на опыте компании Sysdig, ежедневно оказывающей сотням клиентов помощь в настройке мониторинга их кластеров.

Читать далее
Total votes 7: ↑6 and ↓1+5
Comments5

Автоматизируй это, или Контейнерные перевозки Docker для WebRTC

Reading time8 min
Views5K

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

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

Путей решения этой задачи может быть несколько:

Читать далее
Total votes 11: ↑10 and ↓1+9
Comments11

Rust — сохраняем безразмерные типы в статической памяти

Reading time10 min
Views6.1K

Не так давно в качестве хобби решил погрузиться в изучение embedded разработки на Rust и через какое-то время мне захотелось сделать себе логгер, который бы просто писал логи через UART, но который бы при этом не знал какая конкретно реализация используется. И вот тут я быстро осознал, именно в этом конкретном случае я не могу полагаться на статический полиморфизм и мономорфизацию, ведь компилятор не знает сколько нужно памяти выделять под конкретную реализацию. Фактически это означает, что нам нужно как-то уметь сохранять типы, размер которых неизвестен на этапе компиляции, и такой способностью обладает тип Box и для решения этой проблемы как раз и возникла идея написать свой аналог типа Box, но который сохраняет обьект не в куче, а в предоставленном пользователем буфере.

Читать дальше
Total votes 26: ↑26 and ↓0+26
Comments14

42 оператора расширенного поиска Google (полный список)

Reading time15 min
Views278K
Те, кто давно занимается поисковой оптимизацией, хорошо знают об операторах расширенного поиска Google. Например, почти все знают об операторе site:, который ограничивает поисковую выдачу одним сайтом.

Большинство операторов легко запомнить, это короткие команды. Но уметь эффективно их использовать — совсем другая история. Многие специалисты знают основы, но немногие по-настоящему овладели этими командами.

В этой статье я поделюсь советами, которые помогут освоить поисковые операторы для 15 конкретных задач.
Читать дальше →
Total votes 127: ↑124 and ↓3+121
Comments40
1
23 ...

Information

Rating
Does not participate
Location
Россия
Date of birth
Registered
Activity