Парадоксы нейминга: Windows придумали не в Microsoft, а Android — в Apple
Узнайте, как появились самые известные названия в мире компьютерных технологий. Будьте готовы к потрясающим открытиям. В мире нейминга не существует правил и ограничений.
Планировщик cron и скрипты разведки с Docker
Автоматизация инструментов в cron идет полным ходом. Настроим планировщик для целей разведки и рассмотрим примеры, где он уже применяется.
Спецификация API — основа успешной разработки
Докажем, почему спецификации API имеют важное значение для долгосрочного успеха приложений. Расскажем о преимуществах, а также перечислим негативные последствия их отсутствия.
Почему не всегда стоит следовать принципу DRY
Наряду с принципом "не повторяйся", в программировании есть другой принцип "повторяйся, если в этом есть смысл". Предлагаем задуматься над тем, когда и каким принципом стоит руководствоваться, чтобы не создать код "с душком".
18 ошибок новичков в программировании
Как начинающему разработчику побороть неуверенность в себе и не попасть в ловушки? Советы экспертов, а также ссылки на полезные ресурсы помогут новичкам избежать многих ошибок и заложить прочный фундамент в искусстве написания кода.
Как я создал расширение браузера и обучил ChatGPT обращаться к внешним сайтам за информацией...
Расскажем, как с помощью расширения Tampermonkey и прокси CORS Anywhere обучить ChatGPT получать доступ к внешним сайтам, анализировать извлекаемый с их страниц контент и искать в нем ответ на заданный вопрос.
Планирование и оркестрация облачных задач dbt Cloud с помощью Prefect
В этой короткой статье мы проговорим настройку задач dbt Cloud и их оркестрацию с помощью Prefect. Ее содержание предполагает, что вы уже зарегистрированы на dbt Cloud и умеете использовать dbt.
Разделение окон в Vim
Рассмотрим возможности редактора Vim в плане организации рабочего пространства: разделение окон, взаиморасположение вкладок и окон, сравнение с другими редакторами.
4 модели поведения для поддержания психического здоровья на работе
Эффективная деятельность требует хорошего психического здоровья. А кто о нем позаботится, как не мы сами? Рассмотрим 4 модели поведения, обеспечивающие внутренний покой, уверенность в себе и возможности для саморазвития.
Полное руководство по установке Magento 2 с включенным SSL на Ubuntu ≥ 18.04
Пошагово пройдем весь процесс с самым важным аспектом - настройкой веб-сервера. Как избежать типичных ошибок?
4 ключевых аспекта проектирования распределенных систем
Что конкретно подразумевают надежность, доступность, масштабируемость и обслуживаемость? В чем заключается важность этих характеристик распределенных систем?
Искусственный интеллект и наше будущее
Искусственный интеллект впечатляет не только колоссальными возможностями, но и пугающими угрозами. Что мы можем сделать, чтобы приручить умные машины? Поразмышляем над этим.
Легко и быстро: автоматизация развертывания AWS EC2 с GitHub Actions и Docker Hub
Пошагово настроим экземпляр AWS EC2, создадим и добавим в DockerHub образ Docker и настроим рабочий поток Github Actions. В итоге научимся автоматизировать и оптимизировать рабочий процесс развертывания, уменьшая риск человеческой ошибки.
5 модулей Python для исследования Вселенной
Обзор 5 модулей Python для изучения космоса: PyEphem, solarsystem, geemap, turboSETI и pysat. Готовьтесь получать разнообразные данные о планетах, составлять карты, искать следы инопланетной жизни и отслеживать спутники.
Как написать чистый код, который легко читать
Рассмотрим практические советы по созданию кода, который впоследствии читается как книга. Чтобы их составить, автору пришлось проанализировать и сравнить множество подходов и приемов других разработчиков.
Как перенести сайт с WordPress на GitHub Pages
Хотите перевести свой WordPress-блог в архив на GitHub Pages или продолжать использовать WordPress для ведения блога, а GitHub - для хостинга страниц? В обоих случаях поможет это руководство.
Чистота и порядок: 3 правила для идеальной базы кода
В любом деле важен порядок, особенно если речь идет о чистоте кодовой базы. Рассмотрим 3 правила, выполнение которых помогает своевременно обнаружить грязный код и помешать его проникновению в базу.
Обзор плагинов Obsidian
Рассмотрим несколько новых плагинов Obsidian для автоматического создания индексов папок, страницы обзора проектов, ссылок из строк, размещения галереи и геймифицирования хранилища.
Mermaid: универсальный инструмент для создания диаграмм
Пополним рабочий арсенал новым революционным инструментом для построения диаграмм, имя которому Mermaid. Рассмотрим принцип работы и его преимущества по сравнению с PlantUML.
Что такое шаблон SAGA и какую проблему он решает в микросервисной архитектуре
Шаблон SAGA помогает решать специфическую для архитектуры микросервисов проблему. Это сложный в применении инструмент, которым должен владеть опытный разработчик.
Sparrow: альтернатива ChatGPT от DeepMind
Представляем потенциального конкурента ChatGPT - диалогового агента Sparrow от DeepMind. По заверению разработчиков, он обеспечивает более безопасное общение за счет одновременного использования больших языковых моделей и обучения с подкреплением.
3 основных принципа несвязных приложений
Самая большая ошибка объектно-ориентированного проектирования - это инкапсуляция устойчивого состояния. Что будет, если этого не делать?
Репозитории GitHub, которые помогут подготовиться к техническому собеседованию
Предлагаем вашему вниманию коллекцию учебных ресурсов, которые помогут легко пройти собеседование по программированию.
20 продвинутых проектов для освоения сложных концепций программирования
Теория не заменит практики. Попробуйте свои силы в выполнении интересных проектов.
4 частые ошибки в рефакторинге
Некоторые программисты испытывают проблемы с рефакторингом. Одни процессы проходят у них довольно гладко, а другие не очень. Во втором случае есть ряд общих закономерностей. Рассказываем, как действовать, чтобы по максимуму использовать преимущества рефакторинга.
Блоки кода с подсветкой синтаксиса на Medium
Рассмотрим, как изменились блоки кода на Medium. Также узнаем, как обновить их в старых статьях.
Живи и программируй: обретение баланса
Поделимся ценными советами, как продуктивно работать и при этом меньше уставать. Эффективность рекомендаций проверена на личном опыте автора.
Вспомнить все: 6 уникальных, но подзабытых утилит Linux
Углубимся в изучение /usr/bin и освежим в памяти 6 продуктивных и неоправданно забытых утилит Linux.
3 ошибки на собеседованиях по программированию, из-за которых можно получить отказ
После неудачного технического собеседования соискатели часто не могут понять, что пошло не так. Поговорим о распространенных ошибках и о том, как их избежать.
3 основных закона разработки ПО
Чтобы стать инженером-программистом, требуются годы обучения. Однако основные принципы, на которых базируется подход к разработке программного обеспечения, можно свести к 3 фундаментальным законам.
Топ-7 онлайн-редакторов кода и IDE
Какие онлайн-редакторы кода и полноценные IDE позволяют повысить производительность? Обзор лучших инструментов, похожих на VSCode, поможет вам сделать правильный выбор.
5 вечерних практик, которые помогают избежать выгорания
Вы программист или специалист по работе с данными, которого преследует профессиональное выгорание? Прислушайтесь к этим 5 советам - возможно, они помогут вам прийти в норму.
Мониторинг кластера Kubernetes без зависимостей
Затронем тему мониторинга в Kubernetes, существующие подходы и познакомимся с Murre, инструментом Go с открытым ПО для мониторинга без зависимостей.
Превращаем субъективные понятия в объективные метрики: простая методика
Хотите создать модель на основе источника истинных данных? Привлеките к решению этой задачи нескольких экспертов компании. Только согласовав различные точки зрения, можно выработать объективную метрику.
5 признаков того, что вы отличный разработчик
Насколько вы продвинуты в программировании и как быстро сможете повысить свою квалификацию? Чтобы ответить на эти вопросы, узнайте 5 основных признаков хорошего разработчика.
Важнейшие инструменты и технологии для разработки под Web 3.0
Будущее интернета за Web 3.0, и пока этот сегмент разработки еще не заполнен специалистами, хотя спрос на них уже велик. На каких же принципах строится эта система, и какие навыки потребуются разработчикам для вхождения в нее? Объясняем просто и понятно.
Как создать бота Discord с Node.js, Discord.js и OpenAI GPT-3
Поэкспериментируем с ИИ и на сервере Discord создадим бота, который сможет отвечать на вопросы, рассказывать анекдоты и выполнять разные интересные задания.
Генерация видео из текста стала возможной
Теперь с помощью ИИ можно генерировать не только изображения, но и видео. Конкретно речь идет об инструменте CogVideo, предлагающем всем желающим возможность опробовать его онлайн.
7 способов применения Stack Overflow, о которых вы могли не знать
Stack Overflow - популярная система вопросов и ответов для программистов. Но это не просто база полезной информации. Сегодня поговорим о дополнительных возможностях сервиса Stack Overflow.
Prefect 2.3.0 добавляет поддержку для потоков, определенных в образах Docker и репозиториях GitHub
Краткий обзор наиболее актуальных и полезных нововведений в Prefect 2.3.0 от его создателей, включая единовременное создание и применение деплоев, пропуск загрузки, кастомные подпути в блоках удаленного хранилища и многие другие.
4 уровня владения Makefile
Вводный курс в Makefile, состоящий из 4 уровней. С каждым новым уровнем вы получаете необходимые знания и формируете навык работы с данным инструментом.
Правило 3-х часов: сколько времени в день отводить для работы
Средняя продолжительность человеческой жизни абсурдно коротка - всего 4000 недель. Как же распоряжаться нашим самым дефицитным, но самым ценным ресурсом? Правило трех часов - один из ключей к осмысленной и продуктивной жизни. Оно поможет вам установить новые отношения со временем и с самой жизнью.
Как создать бота в стиле Alexa и Siri с помощью Python и OpenAI
Хотите создать голосового ИИ-помощника наподобие Alexa и Siri? Предлагаем пошаговое руководство по разработке виртуального ассистента, воспринимающего человеческую речь и отвечающего на вопросы.
Локальная ретушь фотографий при помощи ИИ
Наиболее трудоемким процессом в редактировании фотографий является ретушь отдельных участков. Новая нейросеть ABPN значительно ускоряет этот процесс, выполняя локальное редактирование HQ-изображений в реальном времени.
5 секретов продуктивной работы в VS Code
VS Code предлагает много возможностей настроить работу так, как вам нужно. Рассмотрим 5 способов сделать работу в VS Code более продуктивной.
Метрики для улучшения архитектуры ПО
На примере Java и Maven продемонстрируем, как определенные метрики помогают проектировать более масштабируемое и обслуживаемое программное обеспечение, а также изучим немного теории.
Как создать QR-код для сайта
QR-код - отличный инструмент для привлечения пользователей. Думаете, что создавать его слишком сложно? Показываем простое решение.
Как запустить ИИ-генератор Stable Diffusion
Stable Diffusion - ИИ-генератор изображений от StabilityAI, который может работать на стандартных видеокартах. Изучим его потенциал на практике. Чтобы использовать это руководство, не нужен даже опыт в программировании.
Как удалять локальные ветки с помощью псевдонимов Git
Мы не из тех, кто упускает отличные возможности улучшить рабочие процессы Git! В данном руководстве учимся создавать псевдонимы Git и с их помощью удалять локальные ветки.
Простой способ решить алгоритм Apriori с нуля
Как в розничных сетях увеличивают продажи и при чем здесь ассоциативные связи? Пошагово реализуем алгоритм, построим модель Apriori и поможем директору супермаркета выполнить анализ рыночной корзины.
Airtable: рецепт молниеносного создания баз данных и таблиц
Познакомимся с платформой Airtable и ее уникальными возможностями в создании баз данных и электронных таблиц. Покажем, как импортировать данные и визуализировать их в виде диаграммы.
Знакомство с SurrealDB с помощью Express.js, Node.js и TypeScript
Хотите знать, почему SurrealDB - высшее достижение в области разработки баз данных? Предлагаем детальное описание новейшей базы данных SurrealDB, а также подробное руководство по ее использованию.
7 способов ускорить ревью кода
Зачем мучиться, когда можно работать с удовольствием! Поделимся 7 продуктивными рекомендациями о том, как ускорить и оптимизировать ревью кода.
Сегментация изображений с использованием сети обратного внимания
Авторы статьи "Семантическая сегментация с обратным вниманием" разработали модель, которая обучается не только распознавать на изображении класс фона, но и дифференцировать различные объекты.
Внешнее конфигурирование базы данных Spring Boot с помощью AWS Secrets Manager
Рассмотрим пошаговую интеграцию конфигурации базы данных Spring Boot с AWS Secrets Manager. Этот способ позволяет обеспечивать высокую доступность, масштабируемость и простоту при обработке изменений пароля к базе данных.
Философия как инструмент совершенствования программистов
Что объединяет философию и программирование? Похожий образ мышления! Разберемся, как философия может улучшить разработку ПО.
Сначала графдизайн создать, потом код написать
Рассмотрим важность создания графического дизайна приложения до написания кода и нарисуем диаграмму последовательности с помощью пакета pgf-umlsd.
7 малоизвестных команд и приемов Git
Контроль версий ПО - важная часть любого проекта, и решать эту задачу позволяет Git. Повысить эффективность работы с онлайн-репозитариями этого инструмента помогут эти стандартные, но довольно редко используемые команды Git.
Основные правила код-ревью
Code review или обзор кода - работа, требующая высокого уровня профессионализма. Ознакомьтесь с его лучшими практиками: вот что нужно и что нельзя делать разработчику при обзоре кода.
Как писать статьи о программировании и науке о данных, которые будут читать
Предлагаем пошаговое руководство по написанию технических публикаций, способных не отпугнуть, а привлечь читателя.
GitHub Actions и Vercel — быстрое развертывание проектов
На практическом примере научимся настраивать GitHub Actions для развертывания проекта на Vercel.
Основы аутентификации для начинающих
Без аутентификации не обойтись, пожалуй, почти ни в одном реальном проекте, рассчитанном на людей. Рассмотрим два основных подхода к аутентификации пользователей: как они работают, в чем их преимущества и недостатки.
Как создать бессерверную форму для бессерверного сайта
Научимся создавать бессерверный бэкенд для приема входящих данных формы и отправки электронного письма с этими данными.
Как обнаружить дублирование кода в проекте
Обнаружение повторяющегося кода - необходимая часть качественного проектирования. Пренебрежение ею чревато снижением читабельности проекта и усложнением его обслуживания. Ознакомьтесь с несколькими способами обнаружения и удаления дублирующегося кода.
Яндекс опубликовал календарь дней быстрого найма
Яндекс объединил все мероприятия по быстрому найму в одном календаре. Сейчас в нём доступны три типа событий, которые позволят устроиться в компанию за несколько...
Фитнес-функции и их роль в эволюции архитектуры
Познакомимся с фитнес-функциями и посмотрим, как они проверяют ПО на соответствие стандартам архитектуры.
5 советов о том, как улучшить комментарии в коде
Хороший программист должен уметь не только грамотно писать код, но и снабжать его уместными комментариями. Предлагаем вашему вниманию 5 лайфхаков по улучшению навыков комментирования кода.
От 0 до 300 SQL-запросов в месяц: 3 практических совета
SQL - это связующее звено между пользователем и системой управления БД. Предлагаем несколько лайфхаков от практикующего аналитика данных, которые позволяют упрощать SQL-запросы и эффективно загружать данные в дашборд.
Секреты эффективного управления разработкой
Представляем вашему вниманию 50 советов о том, как добиться успеха на посту руководителя проектного отдела.
8 бесплатных шпаргалок, которые должны быть в закладках у каждого разработчика
Как ничего не упускать и изучать программирование эффективно? Эти сайты пригодятся в качестве справочной информации, особенно при подготовке к экзамену или даже собеседованию.
#03TheNotSoToughML | Регрессия: Ошибки → Спуск с вершины горы
По меткому высказыванию Педро Домингоса, машинное обучение - это результат слияния необъяснимой эффективности математики с такой же необъяснимой эффективностью данных. Некоторые склонны впадать в панику при беглом знакомстве с МО, полагая, что оно требует сложнейших математических вычислений. В специальной серии статей мы поставили перед собой задачу развеять этот миф.
Новый шаг к будущему без языковых границ
Новый шаг к будущему без языковых границ: Яндекс запустил в открытую бету технологию закадрового перевода прямых трансляций на YouTube В Яндекс Браузере появилась уникальная...
#02TheNotSoToughML | Способы “подгонки линии”
Продолжаем цикл по заполнению пробелов в области алгоритмов и концепций машинного обучения. В этой статье мы узнаем, как настроить веса и смещение в модели линейной регрессии.
Arduino и Visual Studio Code
Займемся разработкой Arduino, вооружившись расширением PlatformIO в VS Code, и напишем первый проект с мигающим светодиодом.
#01TheNotSoToughML | Что означает “подогнать линию”
Настало время восполнить пробелы в отношении алгоритмов и концепций машинного обучения. Разбираем интуитивные решения, которые стоят за построением прогностической модели в машинном обучении.
Параллельные вычисления: введение
Работаете с большими объемами данных и хотите уменьшить время их обработки? Попробуйте параллельные вычисления!
От нуля к единице: как сервис Instawork исследует данные
Переход от 0 к 1 означает переход от ничего к чему-то или почему я покинула Google и перешла работать в Instawork.
16 полезных расширений для SwiftUI
Предлагаем несколько примеров полезных сниппетов кода, которые можно неоднократно использовать в проектах.
Определите свой уровень технических навыков — экспериментальный проект от Яндекса
Яндекс запускает экспериментальный проект по диагностике технических навыков. Принять участие могут бэкенд- и мобильные разработчики, а также разработчики интерфейсов и аналитики.
В рамках диагностики вы...
Введение в конвейерную обработку данных с использованием бессерверной архитектуры
Сегодня мы расскажем вам о построении сквозных конвейеров данных с использованием бессерверных технологий. Мы сосредоточимся на Amazon Web Services (AWS) для построения конвейера, однако подобную архитектуру можно легко воспроизвести на любой другой облачной платформе, включая Google Cloud Platform (GCP), Microsoft Azure и т. д.
Как легко и быстро создать веб-приложение на базе МО с помощью Python
Чтобы продемонстрировать свои достижения в области разработки моделей машинного обучения, стоит поделиться ими с другими! Рассказываем, как развертывать модель линейной регрессии с помощью Flask.
Когда не следует использовать нейронные сети
Нейронные сети - не универсальная опция. Как же выбрать модель при отсутствии идеального варианта? Есть ли компромиссные решения? Возможен ли вообще паритет между точностью и полезностью? Поищем ответы на эти вопросы.
Сделайте свой первый вклад в открытый исходный код!
Наверняка вы хоть раз задумывались о том, как улучшить существующую версию той или иной программы. Мы расскажем вам о том, как это можно сделать на практике.
Что такое разработка через тестирование и как эффективно ее использовать
Возможно, вы слышали о такой технике программирования, как TDD - разработка через тестирование. Разбираемся, как правильно использовать этот метод, чтобы повысить свой профессиональный уровень.
Генерирование синтетических обучающих данных с поддержкой масштабирования для задач NLP с помощью T0PP
Проблемы с производством тренировочных данных для моделей МО? На помощь приходит мощный инструмент T0PP!
Flutter и SonarQube для статического анализа кода
За 8 шагов настроим SonarQube с Flutter на Apple Silicon Mac, используя Docker. Погнали!
Как писать функции: 8 советов от опытного разработчика
Функция - это небольшая часть истории о системе. Чтобы научиться излагать ее как можно удачнее, воспользуйтесь советами профессионального программиста.
Как работает алгоритм YouTube?
Вы когда-нибудь задумывались над тем, по какому принципу YouTube выстраивает в ряд видео, которые вы хотите посмотреть? Возможно, вы только что обсуждали какой-то видеоролик со своим другом, и вот он уже на главной странице! Разберем, как работает система рекомендаций YouTube.
Как научиться не только писать код, но и быть хорошим программистом
Писать код - дело текущего дня. А вот умение быть отличным инженером ПО - навык, который будет актуален всегда. Порассуждаем над тем, почему так важно постоянно совершенствовать навыки, знания и опыт.
Сильные и слабые стороны метавселенной
Последнее время вокруг метавселенной царит нешуточный ажиотаж. Цифровой мир открывает массу возможностей для пользователей, но вместе с тем несет в себе определенные риски.
Как экономить 100 часов в месяц: 6 малоизвестных техник SQL
Как облегчить поиск и удаление дублей, агрегирование данных с операторами case и group by, отображение временных рядов, поиск разницы в данных двух любых дат и как объединять данные двух таблиц простейшим способом? Помогут эти простые приемы!
Google Analytics: почему следует покинуть эту платформу и как это сделать
Google Analytics, похоже, не сильно беспокоится о конфиденциальности данных, поэтому стоит задуматься о переходе на альтернативные платформы. Рассказываем, как это сделать.
Подробный обзор JSON, JSON5 и циклических зависимостей
JSON - это круто, а JSON5 - еще круче! Предлагаем подробное руководство по JavaScript Object Notation (JSON). Узнайте, как работают JSON и JSON5, а также возьмите на заметку несколько способов решения проблемы циклических зависимостей.
Пора делать шаг по карьерной лестнице разработчика?
Список общих рекомендаций по смене работы и устройству на должность своей мечты. Почему техническая зубрежка не является ключом к успеху, и какая стратегия здесь окажется более эффективной?
5 актуальных расширений Xcode для оптимизации разработки
Пополним арсенал разработчика полезными расширения для повышения продуктивности: SwiftPlantUML, SwiftFormat, Import, SwiftMockGeneratorForXcode, XVim2.
Введение в бинарный поиск
Представляем простой алгоритм обнаружения нужных значений - бинарный поиск. Разбираемся, как он работает, на примерах, а также описываем его этапы.
Различные модели машинного обучения
Что же такое машинное обучение? И почему оно так плотно связано с нашей повседневной жизнью? Отвечаем на эти и сопутствующие вопросы.
Что нужно знать разработчику ПО
Инженер ПО - востребованная и высокооплачиваемая профессия, требующая креативности, аналитических навыков и интереса к информатике. Если вы самостоятельно изучаете программирование и интересуетесь основными принципами, применяемыми разработчиками ПО, то обратите внимание на эти 10 пунктов.
Обзор команд Git для отмены изменений
Откроем двери в мир Git и рассмотрим полезные команды для отмены самых разных изменений.
Обзор 8 ключевых команд Npm и Yarn
Хочешь быть продуктивным - учи команды команды npm и yarn CLI. А мы предоставим актуальную информацию о самых востребованных из них.
Возможности контроля в JavaScript: методы AbortSignal.timeout() и AbortSignal.any()
Представляем два малоизвестных, но очень полезных метода управления асинхронными задачами: AbortSignal.timeout() и AbortSignal.any(). Оба эти метода поддерживаются основными веб-браузерами и позволяют корректно прервать асинхронные операции.
Выполнение одновременных сетевых запросов в Java: быстро и эффективно
Рассмотрим суть и преимущества виртуальных потоков в Java. Покажем на примерах, как благодаря им серверные приложения Java выигрывают в производительности у Node.js.
Синхронизация в Java. Часть 2
Часть 1, Часть 2
Состояние гонки
Вновь приветствую вас в теме “Синхронизация в Java”! Надеюсь, что вы прочли мою предыдущую статью.
Давайте разберёмся, что же такое состояние...
Что нового в Python 3.10?
Разработка Python 3.10 стабилизировалась, и пришло время наконец-то протестировать все те новые функции, которые войдут в финальный выпуск.
Мы расскажем все самое интересное о том,...
В борьбу с коронавирусом вступил мощнейший в мире суперкомпьютер
В то время как Covid-19 продолжает заражать людей, учёные спешат найти лекарства, которые помогут пациентам выздоравливать, как можно быстрее. Невиданный доселе патоген вызывает симптомы,...