Разное

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

Interviews

Несколько советов, которые помогут вам на собеседовании и не только

Зачастую, получить первую должность в качестве разработчика крайне трудно. Как убедить человека принять вас на работу, если опыта как такового и нет? Какие вещи знать...
Руководство по Docker. Часть 3: Amazon Web Services, Travis CI и Elastic Beanstalk

Руководство по Docker. Часть 3: Amazon Web Services, Travis CI и Elastic Beanstalk

Руководство по Docker. Часть 1: образ, контейнер, сопоставление портов и основные команды. Руководство по Docker. Часть 2: Docker Compose для JavaScript, Python и Redis С помощью первых...
Приемы работы с оболочкой Zsh, которые я хотел бы знать раньше

Приемы работы с оболочкой Zsh, которые я хотел бы знать раньше

Хотите повысить производительность работы в терминале? Предлагаем приемы, практические советы и рекомендации по повышению эффективности работы с командной строкой с помощью Zsh.
Обнаружение вредоносного ПО с помощью алгоритмов МО на облачной платформе Google

Обнаружение вредоносного ПО с помощью алгоритмов МО на облачной платформе Google

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

15 идей для вашего приложения. Часть 1

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

Практическое предметно-ориентированное проектирование

Ознакомьтесь с бизнес-ориентированной архитектурой - удачно подобранной комбинацией шаблонов, правил и стилей предметно-ориентированного проектирования. Она упростит разработку и высвободит много времени, чтобы сосредоточиться на вопросах бизнес-логики.
Как добавить в проект тестирование скриншотов с Cypress

Как добавить в проект тестирование скриншотов с Cypress

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

Искусственный интеллект и пользовательский опыт: погружение в новую эру визуализации данных

Рассмотрим роль искусственного интеллекта в визуализации. Изучим способы обработки и анализа данных на основе ИИ. Узнаем, как это влияет на пользовательский опыт. Проанализируем конкретные примеры визуализации данных на основе ИИ. Рассмотрим нюансы визуализации с помощью ИИ.
Code Review

Как писать понятный код

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

Фитнес-функции и их роль в эволюции архитектуры

Познакомимся с фитнес-функциями и посмотрим, как они проверяют ПО на соответствие стандартам архитектуры.
Создание и оценка базовых и продвинутых RAG-приложений с помощью LlamaIndex и Gemini Pro в Google Cloud. Часть 1

Создание и оценка базовых и продвинутых RAG-приложений с помощью LlamaIndex и Gemini Pro в...

В 1-й части этого руководства рассмотрим этапы создания базового RAG-приложения с помощью фреймворка данных LlamaIndex и модели Gemini Pro. Кроме того, протестируем это приложение с использованием системы TruLens на релевантность контекста, а также релевантность и обоснованность ответа.
Programming

Почему вам нужно учить больше языков программирования

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

Принцип открытости/закрытости: расширение кода без модификации

Принцип открытости/закрытости позволяет создавать отличные проекты на основе имеющегося набора свойств. А используете ли вы метод validate для видео, документов и других расширений? Посмотрите, как это делается.
Результаты тестов сетевых плагинов CNI Kubernetes по сети 40 Гбит/с [2024]

Результаты тестов сетевых плагинов CNI Kubernetes по сети 40 Гбит/с [2024]

Рассмотрим запуск тестов производительности, изучим CNI с различными вариантами применения и требованиями. Разберем результаты тестов и представим рекомендации по выбору CNI.
Mathematics

Простейшее объяснение парадокса Монти Холла

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

Как писать статьи о программировании и науке о данных, которые будут читать

Предлагаем пошаговое руководство по написанию технических публикаций, способных не отпугнуть, а привлечь читателя.
5 эффективных Unix-команд для устранения неполадок

5 эффективных Unix-команд для устранения неполадок

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

Три фактора сдерживания прогресса ИИ

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

Как научиться не только писать код, но и быть хорошим программистом

Писать код - дело текущего дня. А вот умение быть отличным инженером ПО - навык, который будет актуален всегда. Порассуждаем над тем, почему так важно постоянно совершенствовать навыки, знания и опыт.
Python

Как организовать код в Python

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

5 советов о том, как улучшить комментарии в коде

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

Построение системы распределенного кэширования

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

Сообщество  —  лучший двигатель карьеры разработчика

В мире технологий часто упоминается слово "сообщество". Разберемся, что включает себя это понятие, как стать участником сообщества и как его найти.
5 актуальных расширений Xcode для оптимизации разработки

5 актуальных расширений Xcode для оптимизации разработки

Пополним арсенал разработчика полезными расширения для повышения продуктивности: SwiftPlantUML, SwiftFormat, Import, SwiftMockGeneratorForXcode, XVim2.
Две малоизвестные, но полезные команды npm

Две малоизвестные, но полезные команды npm

Npm list и npm config list - не самые известные команды в пакетном менеджере npm. Однако они могут выручить вас в ряде затруднительных случаев, сэкономив немало времени и сил.
ИИ поможет создавать Dockerfile

ИИ поможет создавать Dockerfile

CLI-команда docker init позволит легко инициализировать конфигурационные файлы Dockerfile и docker-compose, необходимые для запуска проекта в контейнере. Использование docker init избавит от лишней ручной работы, сэкономит время и сведет к минимуму ошибки.
Пора делать шаг по карьерной лестнице разработчика?

Пора делать шаг по карьерной лестнице разработчика?

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

Повышение эффективности промпт-инжиниринга путем поиска по программам в символьной записи

Хотите быстро находить лучшие промпты в большом наборе их вариантов? У вас есть уникальная возможность делать это автоматически с помощью Python-библиотеки SAMMO, следуя пошаговому руководству от ее автора и достигая значительной производительности
Motivation

7 секретов для поддержания мотивации при изучении программирования

В Codementor мы с гордостью можем похвастаться более 6000 наставников по программированию, которые помогают людям во всем мире научиться программировать. Одной из самых больших...
#02TheNotSoToughML | Способы "подгонки линии"

#02TheNotSoToughML | Способы “подгонки линии”

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

Что такое программирование?

“Программирование  —  это о решении проблем”  —  проф. Дэвид Малан Краткий обзор Каждый день мы сталкиваемся с проблемами, которые должны быть решены. Этими проблемами могут быть как...
Mermaid: универсальный инструмент для создания диаграмм

Mermaid: универсальный инструмент для создания диаграмм

Пополним рабочий арсенал новым революционным инструментом для построения диаграмм, имя которому Mermaid. Рассмотрим принцип работы и его преимущества по сравнению с PlantUML.
Java

Как правильно учиться Java-программированию: история одного тьютора

Моя история Все началось больше десяти лет назад. Решив стать программистом, я начал изучать несколько языков, чтобы в конечном итоге найти «свой» язык. В Java я...
Education

Разоблачение мифов о сеньоре

Хватит этих историй о том, “как стать старшим разработчиком” Возможно, мой мозг избирательно раздражается, видя, как люди ловят на попутном ветре успех оригинальной статьи. Или,...
Новая большая речевая модель Watson от IBM предоставит голос генеративному ИИ

Новая большая речевая модель Watson от IBM предоставит голос генеративному ИИ

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

Один за всех и все за одного: 8 принципов командной разработки

Хочешь сохранить работу в сфере программирования  —  пиши нечитаемый код, понятный только тебе одному. И чем он хуже, тем лучше. Не делись ни с...
Идиома CRTP и написание общих функций в C++

Идиома CRTP и написание общих функций в C++

Разбираемся в концепции CRTP (Curiously recurring template patterns, рекурсивный шаблон). Она поможет описывать в C++ общую функциональность, комбинируя шаблоны и наследование.
Введение в конвейерную обработку данных с использованием бессерверной архитектуры

Введение в конвейерную обработку данных с использованием бессерверной архитектуры

Сегодня мы расскажем вам о построении сквозных конвейеров данных с использованием бессерверных технологий. Мы сосредоточимся на Amazon Web Services (AWS) для построения конвейера, однако подобную архитектуру можно легко воспроизвести на любой другой облачной платформе, включая Google Cloud Platform (GCP), Microsoft Azure и т. д.
Пять продвинутых Git-команд, благодаря которым вы будете выглядеть как профи

Пять продвинутых Git-команд, благодаря которым вы будете выглядеть как профи

Расскажем о пяти передовых концепций Git: git bisect, git cherry-pick, git rebase, git add -p, git commit –amend - все они могут сэкономить много времени, которое вы тратите на чтение StackOverflow, когда возникают сложности с управлением версиями.
Как обеспечить обмен данными между микросервисами

Как обеспечить обмен данными между микросервисами

Разберемся в особенностях организации обмена данными между микросервисами, а также рассмотрим способы решения возникающих проблем с помощью RabbitMQ.
Наше прохождение космического CTF от RUVDS и Positive Technologies

Наше прохождение космического CTF от RUVDS и Positive Technologies

Недавно представитель нашей команды Nuances of Programming успешно прошел CTF от RUVDS и Positive Technologies. Это был захватывающий опыт, которым он хочет с вами поделиться.
UX

7 полезных советов для веб-дизайнеров

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

ULTRA: базовые модели для формирования рассуждений на графах знаний

Рассмотрим основные принципы машинного обучения на графах знаний и основные проблемы базовых моделей. Подробно изучим мультиреляционные графы. Узнаем особенности и возможности уникальной модели ULTRA.
Java

Как правильно учиться Java-программированию: история одного тьютора

Моя история Все началось больше десяти лет назад. Решив стать программистом, я начал изучать несколько языков, чтобы в конечном итоге найти «свой» язык. В Java я...
Отказ после четырех раундов технических собеседований. Что делать?

Отказ после четырех раундов технических собеседований. Что делать?

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

9 советов для быстрой работы в UNIX и Linux терминале

Существует огромное множество команд для работы с терминалом UNIX и Linux. Все это многообразие не запомнить, как бы вам ни хотелось. Постоянный поиск нужной команды тормозит рабочий процесс, ко всему прочему сами команды не во всех случаях состоят из пары символов. В итоге это здорово мешает быстрой и легкой работе с терминалом. Именно поэтому, сегодня мы расскажем о командах, которые в несколько раз увеличат вашу производительность
Pascal: ностальгическое путешествие сквозь годы и код

Pascal: ностальгическое путешествие сквозь годы и код

В чем сила языка Pascal, возникшего более полувека назад? Как он повлиял на наш мир? Почему его наследниками считаются Python, Rust, Go и многие другие современные языки? Откроем заново для себя Pascal.
OOP

Хитрости объектно-ориентированного программирования. Часть 3: Смерть от аргументов

Это мини-серия статей по написанию поддерживаемого объектно-ориентированного кода без лишней нервотрепки. Предыдущие части: Часть 1, Часть 2. Аргументы, аргументы, аргументы Длинные списки аргументов в функции крайне трудны для вызываемого...
Education

4 шага для повышения концентрации

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

9 навыков, которые нужно освоить в самом начале карьеры программиста

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

Жизнь в качестве программиста-фрилансера

Недавно один человек задал мне вопрос (на форуме) о том, каков мой типичный рабочий день, что мне нравится и не нравится в моей работе...
Java Script

Слабо решить эти задачи по программированию?

Программирование всегда связано с решением различных задач. Я подготовил список из шести различных заданий и отсортировал их по сложности решения. Первая — самая простая, шестая — самая сложная....
Создание модели Mixture of Experts (MoE) с помощью MergeKit

Создание модели Mixture of Experts (MoE) с помощью MergeKit

Объедините с помощью MergeKit несколько моделей в один коллектив экспертов (MoE). Предлагаем подробное описание процесса создания многозадачной и высокопроизводительной модели frankenMoE, не требующей предварительного обучения.
Learning

Как начать учиться, когда на это совсем нет времени

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

5 методов написания чистого кода для любого проекта

Рассмотрим несколько советов по повышению качества баз кода, которые пригодятся при создании различных проектов: фронтенда, бэкенда, командной строки, настольных и мобильных приложений.
Visual Studio Code

Visual Studio Code. Как быть продуктивным в 2018. Советы профи

За последние несколько лет, Visual Studio Code стал очень популярным, среди IDE с открытым исходным кодом. Официальный релиз VS Code состоялся в 2015 году,...
Java

9 вещей, которыми следует заняться Java программисту в 2018 году

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

Плавный переход: миграция кластера Kafka в Kubernetes

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

Как писать Bash-однострочники для клонирования и управления GitHub/GitLab репозиториями

Мало что радует так же сильно, как одна красивая Bash-строка, способная автоматизировать часы рутинной работы. Я изучала вопрос по автоматическому восстановлению системы на ноутбуке с...
Как написать оператор Kubernetes?

Как написать оператор Kubernetes?

История о том, как важно порой даже малое изменение. Создадим, протестируем и запустим оператор в кластере Kubernetes.
Angular

Автоматизация обновления Angular

Приложения Angular с легкостью обновляются с помощью Angular CLI. Обновление до основных релизов, как правило, происходит в течение недели после выпуска без возникновения проблем,...
Software Document

Как написать хороший проектный документ

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

Что на самом деле важно для качества кода?

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

6 шагов до карьеры блокчейн-разработчика

Шаг 1: оцените свои навыки Вероятно, что у вас, как у разработчиков, после работы со множеством разных технологий появился свой “любимый” стек технологий, которые вам оказались...
Чем отличается разработка продукта для ИИ

Чем отличается разработка продукта для ИИ

Люди, которые интересуются темой искусственного интеллекта, часто спрашивают, кто такой ИИ-разработчик. В данной статье мы хотим помочь вам понять, чем отличается разработка продуктов на...
Terraform: реализация технологии “инфраструктура как код”

Terraform: реализация технологии “инфраструктура как код”

Предлагаем ознакомительный обзор Terraform  —  инструмента, которым должен овладеть каждый инженер-программист. Экспресс-демонстрации помогут вам быстро освоить основной функционал Terraform, чтобы успешно использовать инновационную технологию “инфраструктура как код”.
Математика, скрывающаяся за “проклятием размерности”

Математика, скрывающаяся за “проклятием размерности”

Хотите разгадать удивительные явления, возникающие в высокоразмерном пространстве? Углубитесь в понятие “проклятие размерности”, тесно связанное с переобучением, и раскройте для себя математику, которая стоит за всем этим и влияет на эффективность моделей машинного обучения.
Education

Как вернуть былой энтузиазм к программированию

Недавно я наткнулся на тему в сообществе Reddit, где люди заявляли о своей утрате интереса к программированию. Прочитав эту тему, можно сделать вывод, что...
Полное руководство по CASE WHEN в SQL

Полное руководство по CASE WHEN в SQL

Изучите сценарии использования CASE WHEN в различных SQL-средах (SQL Server, Oracle, Snowflake, PostgreSQL). Постижение магии CASE WHEN, а также ограничений и альтернатив этого оператора, значительно усовершенствует ваши навыки работы с SQL.
Как ИИ влияет на разработку мобильных приложений и пользовательский опыт

Как ИИ влияет на разработку мобильных приложений и пользовательский опыт

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

Что в голосе моем? - Код!

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

Какой язык программирования используют самые счастливые разработчики?

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

Будущее графических дизайнеров в эпоху машинного обучения

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

Топ-5: непреднамеренная ложь программистов

Я знаю, я лгал! Признаюсь. Я был разработчиком и остаюсь им. Разработка  —  больше, чем просто работа. Это  —  состояние души. Невозможно просто перестать писать код....
Планирование и оркестрация облачных задач dbt Cloud с помощью Prefect

Планирование и оркестрация облачных задач dbt Cloud с помощью Prefect

В этой короткой статье мы проговорим настройку задач dbt Cloud и их оркестрацию с помощью Prefect. Ее содержание предполагает, что вы уже зарегистрированы на dbt Cloud и умеете использовать dbt.
Education

21 способ быть хреновым разработчиком

Интернет буквально кишит статьями, повествующими о том, как вы можете улучшить ваши навыки разработки. Эти статьи гласят о “лучшей коммуникации”, “работе в команде”, “постоянном...
Топ-6 признаков некомпетентного программиста

Топ-6 признаков некомпетентного программиста

Некомпетентность в программировании - не всегда результат неопытности. Плохого разработчика узнают по его "почерку" и нескольким другим признакам.
Learning

Почему вы никогда не будете слишком стары, чтобы изучать Java (или любой другой язык...

“Любви все возрасты покорны.” Несмотря на то, что очень многие солидарны с этой фразой, я постоянно наблюдаю за тем, как люди загоняют себя в мнимые...
Как оставаться в тренде dev-индустрии

Как оставаться в тренде dev-индустрии

Вряд ли кто-либо станет отрицать актуальность этого вопроса для большинства разработчиков: “Как оставаться в курсе последних новостей в области разработки, ее трендов и технологий?” Этот...
Как выводятся векторы на C++

Как выводятся векторы на C++

Сравним способы вывода векторов: цикл for на основе диапазона, итератор, а также сочетание std::copy и std::ostream_iterator. Разберем их нюансы и типичные ошибки, проиллюстрируем примерами и поможем выбрать оптимальный способ.
Linux

5 настроек рабочего стола Linux для разработчиков

Linux: программируйте удобнее Как только я начал работать из дома, я решил, что пришло время капитального ремонта рабочего стола. В офисе я обычно использую MacBook...
Планировщик cron и скрипты разведки с Docker

Планировщик cron и скрипты разведки с Docker

Автоматизация инструментов в cron идет полным ходом. Настроим планировщик для целей разведки и рассмотрим примеры, где он уже применяется.
Data Science

SQL в науке о данных

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

Обнаружение и извлечение текста из изображения с помощью Python

Представляем удобные техники OCR и OpenCV для обнаружения и извлечения текста в цифровом изображении

Яндекс опубликовал календарь дней быстрого найма

Яндекс объединил все мероприятия по быстрому найму в одном календаре. Сейчас в нём доступны три типа событий, которые позволят устроиться в компанию за несколько...
За что разработчики ненавидят парное программирование?

За что разработчики ненавидят парное программирование?

Обзор ответов на семь самых популярных замечаний о недостатках парного программирования, как со стороны junior-разработчика, так и со стороны senior-разработчика. Парное программирование мешает углубленной работе Достаточно...
4 типичные ошибки программиста, которые видны лишь с позиции руководителя

4 типичные ошибки программиста, которые видны лишь с позиции руководителя

Я проработал программистом более 5 лет. Конечно, у некоторых из вас, вероятно, гораздо больше опыта, но тогда я считал, что уже достиг уровня старшего...
Framework

Фреймворк или язык программирования?

Программисты сегодня… …толком и не знают где заканчивается язык программирования и начинается фреймворк. Что я под этим имею в виду? Примерно до 1988-ого года большинство программ, которые...
JavaScript

Введение в Subject в реактивном программировании

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

Основы аутентификации для начинающих

Без аутентификации не обойтись, пожалуй, почти ни в одном реальном проекте, рассчитанном на людей. Рассмотрим два основных подхода к аутентификации пользователей: как они работают, в чем их преимущества и недостатки.
VR

Жива или мертва: Что происходит с индустрией виртуальной реальности?

В последнее время появилось очень много статей про то, в каком состоянии находится сейчас индустрия виртуальной реальности (ВР). Хоть и чувствуя себя связанным с...
Practice Programming

Почему разработчикам нужны “часы практики”

Если вы музыкант или просто увлекаетесь музыкой, то наверняка знаете, что “практика” и “репетиция” — два совершенно разных понятия. Зачастую, у музыкантов есть “сакральные” часы практики. Эти...
Что такое шаблон SAGA и какую проблему он решает в микросервисной архитектуре

Что такое шаблон SAGA и какую проблему он решает в микросервисной архитектуре

Шаблон SAGA помогает решать специфическую для архитектуры микросервисов проблему. Это сложный в применении инструмент, которым должен владеть опытный разработчик.
Карьерные трудности UX/UI дизайнера

Карьерные трудности UX/UI дизайнера

Нейросети, "дизайноголия", банальность, невнимательность к мелочам и другие проблемы дизайнеров интерфейсов и пользовательского опыта
Docke and Gitlab

Как настроить непрерывную интеграцию на GitLab с помощью Docker

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

Собеседование Java разработчика. Наиболее Часто Задаваемые Вопросы

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

Причины, по которым проект может потерпеть неудачу

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

Самый важный навык для программиста

Нет, нет и нет. Скажем вместе. НЕТ! Хорошее начало. Но чему мы говорим НЕТ? Это важный момент, который сбивает с толку даже опытных программистов. Написание кода составляет большую часть...
Автомасштабирование по запаздыванию Kafka с KEDA

Автомасштабирование по запаздыванию Kafka с KEDA

Настроим автоматическое масштабирование приложения на основе внешних источников событий. Как это делается с KEDA? Рассмотрим два способа.
Keyboard

Руководство по навигации с помощью клавиатуры

В целом, когда речь заходит о компьютерной навигации, люди разделяются на два лагеря: на тех, кто использует мышь и не понимает, зачем вместо этого...
Frontend Masters: принципы SOLID в React/React Native

Frontend Masters: принципы SOLID в React/React Native

Принципы SOLID кажутся простыми, но их важность в программировании трудно переоценить. Разберем каждый из принципов SOLID на конкретных примерах и покажем их практическую ценность.
Angular

Веселимся с Angular и трансформаторами в TypeScript

Вам знакома проблема обработки подписок на RxJs вручную? Помните, как забыли одну? Или однажды подумали, что использование AsyncPipe в шаблоне будет безопасно, но...
Technical Interviews

Собеседование: 8 самых распространенных ошибок программистов

Изучим ошибки и поймем, как их избежать Как бы вы поступили, появись у вас возможность проанализировать большую выборку собеседований работодателей с программистами? Причем если содержание...
Как создать первый проект по инженерии данных: инкрементный подход. Часть 2

Как создать первый проект по инженерии данных: инкрементный подход. Часть 2

Инкрементный подход похож на спринт: он позволяет оперативнее реагировать на любые изменения и быстрее достигать цели. Небольшие, но постепенные шаги (спринты) обеспечат вам заряд адреналина всякий раз, когда вы будете вычеркивать из списка очередную выполненную задачу.
Мониторинг приложения Golang с Prometheus, Grafana, New Relic и Sentry

Мониторинг приложения Golang с Prometheus, Grafana, New Relic и Sentry

Изучим, как осуществляются мониторинг и логирование службы Go. Напишем код приложения и модульный тест, создав конфигурационные и тестовые файлы, и посмотрим метрики в дашборде Grafana.