7 признаков того, что вы  -  опытный разработчик

7 признаков того, что вы  -  опытный разработчик

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

Зачем разбивать код на столбцы

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

Локальная ретушь фотографий при помощи ИИ

Наиболее трудоемким процессом в редактировании фотографий является ретушь отдельных участков. Новая нейросеть ABPN значительно ускоряет этот процесс, выполняя локальное редактирование HQ-изображений в реальном времени.
Как создать бота в стиле Alexa и Siri с помощью Python и OpenAI

Как создать бота в стиле Alexa и Siri с помощью Python и OpenAI

Хотите создать голосового ИИ-помощника наподобие Alexa и Siri? Предлагаем пошаговое руководство по разработке виртуального ассистента, воспринимающего человеческую речь и отвечающего на вопросы.
Education

Вы достигли высот самообучения. Что дальше?

Возможно, вы увлечены изучением Boot Camp либо проходите 100-дневную программу освоения программирования. Независимо от того, чем из подобных вещей вы занимаетесь, однажды настанет день,...
5 Команд Linux, заставляющих ахнуть от удивления

5 Команд Linux, заставляющих ахнуть от удивления

Быть программистом нелегко. Порой приходится проводить за монитором много часов, устраняя возникшую из-за пропущенной точки с запятой ошибку. Или напрягать глаза при написании 1000-строчного...
Сравнение самых популярных инструментов в области BI-as-code: Evidence, Streamlit, Dash, Observable, Shiny и Quarto

Сравнение самых популярных инструментов в области BI-as-code: Evidence, Streamlit, Dash, Observable, Shiny и Quarto

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

EdgeCloud: вывод генеративного ИИ на новый уровень с помощью конвейеризации моделей

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

Полезные уроки из книги “Мышление, быстрое и медленное”

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

Как написать чистый код, который легко читать

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

Почему трудно писать полезные библиотеки

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

Как делать заметки как программист

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

От рекомендаций по проведению ревью кода к общечеловеческим ценностям

Став частью команды QuintoAndar, я приобщилась ко многим процессам, о которых раньше не знала. В их число входили обязательные ревью кода.  Если кратко, то в...
GenAIScript от Microsoft: новый генеративный скрипт на базе ИИ

GenAIScript от Microsoft: новый генеративный скрипт на базе ИИ

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

Отладка для абсолютных новичков

Стать хорошим разработчиком — это как научиться свистеть. Многие умеют, но лишь единицы могут обучить этому других. Большинство же будет говорить вам что-то из серии: «Просто...
Что такое шаблон SAGA и какую проблему он решает в микросервисной архитектуре

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

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

Чистый код работает медленно, но он все равно нужен

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

Создание локально работающего голосового помощника

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

Как продвигаться в роли разработчика?

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

Какие вопросы задавать HR-менеджеру во время собеседования

Последние 6 недель я только и делала, что проходила собеседования на роль middle-разработчика программного обеспечения в Амстердаме. Амстердам — это очень большой город, и собеседований я...
Автоматизированные тесты - качественно и непременно эффективно!

Автоматизированные тесты - качественно и непременно эффективно!

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

Живи и программируй: обретение баланса

Поделимся ценными советами, как продуктивно работать и при этом меньше уставать. Эффективность рекомендаций проверена на личном опыте автора.
Две малоизвестные, но полезные команды npm

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

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

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

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

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

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

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

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

Нативное будущее кроссплатформенной разработки

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

А вы сможете ответить на этот знаменитый вопрос из собеседования?

Разберем задачу про 100-местный самолет со всеми случаями и вариантами. Объясним, как получить правильный ответ и почему он именно такой.
Productivity

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

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

Что может помешать разработчику самостоятельно создать успешное приложение

Четыре года назад я опубликовал своё первое приложение в Google Play Store. И по ходу разработки я наткнулся на множество препятствий, но также и...
Education

21 серьёзная ошибка за 21 год работы программистом

7 апреля 2020 года — знаменательная дата для меня, ведь ровно 21 год назад в этот день началась моя карьера программиста. Уф! Всё было будто вчера, а...
git

Как рационально использовать GIT

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

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

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

Советы по переходу с AWS CloudFormation на CDK

CDK - потрясающий инструмент, который дает реальный опыт при создании инфраструктуры, что особенно важно для тех, кто при создании функциональных средств руководствуется методологией системной инженерии, которая требует, чтобы инженеры отвечали не только за реализацию.
Создание модели Mixture of Experts (MoE) с помощью MergeKit

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

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

Как успешно реализовать проверку состояния контейнера в Docker Compose

Разработчику важно понимать, что служба Docker действует должным образом, в противном случае могут возникнуть большие неприятности. Чтобы гарантированно предотвратить их, рассмотрим способы проверки состояния (Healthcheck) контейнеров в Docker.
Interviews

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

Зачастую, получить первую должность в качестве разработчика крайне трудно. Как убедить человека принять вас на работу, если опыта как такового и нет? Какие вещи знать...
10 бесплатных Mac-приложений, о которых вы точно не знали

10 бесплатных Mac-приложений, о которых вы точно не знали

На macOS немало полезных предустановленных программ, но также есть много сторонних бесплатных приложений, способных упростить работу. Узнайте о 10 наиболее интересных приложениях, которых сделают цифровую жизнь гораздо приятнее.
Sparrow: альтернатива ChatGPT от DeepMind

Sparrow: альтернатива ChatGPT от DeepMind

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

Как улучшить написание условных выражений

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

Антишаблоны программирования

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

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

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

Топ 10 бесплатных инструментов для автоматизированного тестирования

В современном мире существует множество инструментов, помогающих ускорить достижение цели. Я подготовил список из 10 лучших инструментов автоматизации, которые помогут справляться с задачами намного быстрее....
Airtable: рецепт молниеносного создания баз данных и таблиц

Airtable: рецепт молниеносного создания баз данных и таблиц 

Познакомимся с платформой Airtable и ее уникальными возможностями в создании баз данных и электронных таблиц. Покажем, как импортировать данные и визуализировать их в виде диаграммы.
Education

Чем лучше образование, тем умнее ИИ

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

Нам нужно визуальное программирование. Нет, не то, о котором вы подумали

Большинство сред визуального программирования не находят никакого применения. Почему? Они пытаются заменить синтаксис кода и бизнес-логику, но разработчики никогда не пытаются это визуализировать. Вместо этого разработчики визуализируют переходы состояний, структуру памяти или сетевые запросы.
10 способов повысить эффективность RAG-системы

10 способов повысить эффективность RAG-системы

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

Как прошло мое собеседование в Uber на должность старшего инженера-разработчика

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

Какие языки программирования лучше учить в 2019 году

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

Как запустить и использовать файловые системы с помощью Amazon FSx

Компаниям, которые хотят запускать приложения Windows в облаке, нужно сетевое хранилище файлов, полностью совместимое с их приложениями и средами Windows. Рассмотрим систему Amazon FSx, которая во многом облегчает перенос рабочих нагрузок Windows в облако.
Deadlines

Как перестать переживать по поводу дедлайна

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

Искусственный интеллект и наше будущее

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

4 причины, почему агенты ИИ не заменят программистов

Сегодня только ленивый не пишет про "агентов искусственного интеллекта". Предлагаем разобраться, кто такие агенты ИИ, какие проблемы с ними возникают на практике и, наконец, кому выгодно поднимать вокруг них рекламную шумиху.
Как использовать JavaScript и Node.js, чтобы сразиться с драконом в игре Fight the Dragon?

Как использовать JavaScript и Node.js, чтобы сразиться с драконом в игре Fight the Dragon?

Выдалась свободная минутка? Почему бы не устроить эпичный баттл с драконом? Наше пошаговое руководство поможет выйти из боя победителем!
Education

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

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

Как создать бессерверную форму для бессерверного сайта 

Научимся создавать бессерверный бэкенд для приема входящих данных формы и отправки электронного письма с этими данными.
Programming

Худший враг программиста — долгосрочная актуальность

Что по-вашему будет труднее? · решить проблему в коде; · решить более масштабную проблему в коде Да, я тоже так считаю. Программирование сводится к решению проблем. Если вы...
IBM

В борьбу с коронавирусом вступил мощнейший в мире суперкомпьютер

В то время как Covid-19 продолжает заражать людей, учёные спешат найти лекарства, которые помогут пациентам выздоравливать, как можно быстрее. Невиданный доселе патоген вызывает симптомы,...
Век программируй, век учись

Век программируй, век учись

В программировании приходится учиться методом проб и ошибок. Далее я расскажу о 9 важных уроках из своего непростого личного опыта. 1. Как раз самых дешевых,...
3 ошибки на собеседованиях по программированию, из-за которых можно получить отказ

3 ошибки на собеседованиях по программированию, из-за которых можно получить отказ

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

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

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

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

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

Обзор команд Git для отмены изменений

Откроем двери в мир Git и рассмотрим полезные команды для отмены самых разных изменений.
Почему западные приложения более минималистичны, чем азиатские?

Почему западные приложения более минималистичны, чем азиатские?

Узнаем, чем отличаются культуры коллективизма и индивидуализма. Изучим влияние этих культур на онлайн-коммуникацию, а также UI/UX дизайн. Выделим основные различия двух культур и узнаем, как улучшить локализацию продукта.
Сравнение производительности ввода/вывода: C, C++, Rust, Golang, Java и Python

Сравнение производительности ввода/вывода: C, C++, Rust, Golang, Java и Python

Сравниваем, как различные языки, такие как C, C++, Rust, Golang, Java и Python, обрабатывают данные на вход/выход. Также попробуем выяснить, может ли Rust обрабатывать высокопроизводительные промисы.
Docker

Почему вы должны обратить внимание на Docker?

Когда я гуглил информацию о фреймворках глубокого обучения (deep learning), я заметил, что почти каждый из этих фреймворков поддерживался Docker. В итоге у меня...
Простой способ решить алгоритм Apriori с нуля

Простой способ решить алгоритм Apriori с нуля

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

Введение в блокчейн  -  основу криптовалют

Вы ещё помните то время, когда курс криптовалют вырос более чем в 50 раз всего за 1 год?! Вот наглядный график произошедшего: А затем случилось...
Data Science

Cтарая поговорка гласит: “Одна голова хорошо, а две — лучше”

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

5 секретов создания востребованной технической статьи

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

Различные модели машинного обучения 

Что же такое машинное обучение? И почему оно так плотно связано с нашей повседневной жизнью? Отвечаем на эти и сопутствующие вопросы.
JavaScript

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

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

Поток управления декларативным циклом в Angular 17

Следующая версия популярного фреймворка Angular (v17) обещает предоставить разработчикам удобные функции. Одним из улучшений станет новый встроенный синтаксис шаблонов потока управления.
Реактивное программирование или сопрограммы: между молотом и наковальней?

Реактивное программирование или сопрограммы: между молотом и наковальней?

Выбор между привычным и экспериментальным в программировании сродни положению между молотом и наковальней. Одна из таких дилемм - противопоставление реактивного программирования и сопрограмм. Предлагаем вникнуть в суть конкурентных концепций, изучить их достоинства и подводные камни.
Знакомство с SurrealDB с помощью Express.js, Node.js и TypeScript

Знакомство с SurrealDB с помощью Express.js, Node.js и TypeScript

Хотите знать, почему SurrealDB - высшее достижение в области разработки баз данных? Предлагаем детальное описание новейшей базы данных SurrealDB, а также подробное руководство по ее использованию.
Обзор 8 ключевых команд Npm и Yarn

Обзор 8 ключевых команд Npm и Yarn

Хочешь быть продуктивным - учи команды команды npm и yarn CLI. А мы предоставим актуальную информацию о самых востребованных из них.
Развенчание мифов о разработке программного обеспечения

Развенчание мифов о разработке программного обеспечения

Каждой отрасли  —  свои мифы. Как правило, они возникают, когда посторонним людям трудно понять специфику работы специалиста. Некоторые предрассудки забавны, а другие  —  откровенно...
Я могу назвать себя "экспертом по ИИ", а вы?

Я могу назвать себя «экспертом по ИИ», а вы?

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

О нейронных сетях в двух словах

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

Если вы застряли между этажами: как алгоритм лифта заставляет нас бесконечно ждать

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

.NET Aspire — стремление к рациональному подходу в сфере облачной разработки

.NET Aspire - новая платформа, упрощающая создание нативных приложений. Предлагаем ознакомиться с ее особенностями и преимуществами, а также вариантами использования и ограничениями. Практические примеры, приведенные опытным веб-разработчиком, облегчат начало работы с .NET Aspire.
Что в голосе моем? - Код!

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

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

2 инструмента для автоматизации тестирования производительности на стороне клиента

Представляем 2 продвинутых инструмента веб-тестирования: Lighthouse от Google и Playwright от Microsoft. Освоив их, вы избавитесь от многих проблем, связанных с тестированием приложений, и этот процесс станет намного удобнее, быстрее и легче.
Создание и тестирование базовых и продвинутых приложений RAG с помощью LlamaIndex и Gemini Pro в Google Cloud. Часть 2

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

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

4 ключевых аспекта проектирования распределенных систем

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

Промпт-инжиниринг: как использовать LLM для создания приложений

Сегодня в нашем распоряжении множество LLM, инструментов и методов промпт-инжиниринга. Поговорим о том, как создавать приложения с помощью промпт-инжиниринга.
Промпт-инжиниринг мертв: DSPy — новая парадигма промптинга

Промпт-инжиниринг мертв: DSPy — новая парадигма промптинга

Автор предлагает не промптить, а программировать нейросетевые модели, рассматривая их как устройства, работающие через глубокие нейронные сети. В статье — код, построение, выполнение и оптимизация конвейера, а также практический пример, разработанный при помощи новой библиотеки DSPy.
Сравниваем эффективность Redis, Kafka и RabbitMQ

Сравниваем эффективность Redis, Kafka и RabbitMQ

Все эти брокеры успешно работают, но действуют при этом совершенно по-разному. Рассмотрим их главные особенности, отметим достоинства и недостатки.
Digital

Все, что нужно знать о цифровых людях

Фотошоп и немного изобретательности — вот два инструмента, с помощью которых создаются современные знаменитости. Нет, я не об известных Instagram-моделях с отредактированными фотографиями. Я говорю о...
OOP

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

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

Как украсть секреты разработчиков через Websocket?

Это история о запутанном и не очень полезном методе извлечения кода, создаваемого ничего не подозревающими JavaScript разработчиками, занятыми над секретными проектами.  Недавно в сети появилась...
Git

5 шагов к созданию крутого пул-реквеста

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

Лучшие бесплатные источники наборов данных для анализа

Сбор высококачественных данных представляет собой важную часть любого анализа данных или проекта по машинному обучению. В целях экономии вашего драгоценного времени команда WebDataRocks подготовила...
Как запустить ИИ-генератор Stable Diffusion

Как запустить ИИ-генератор Stable Diffusion

Stable Diffusion - ИИ-генератор изображений от StabilityAI, который может работать на стандартных видеокартах. Изучим его потенциал на практике. Чтобы использовать это руководство, не нужен даже опыт в программировании.
Зачем нужен CORS: просто о сложном

Зачем нужен CORS: просто о сложном

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

7-шаговый чек-лист по выбору удачных имен

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

8 незаменимых веб-приложений для разработчиков

1. Online GDB Online GDB — это браузерный компилятор, интерпретатор и отладчик. Поддерживает 20 языков программирования, включая C, C++, Python, Ruby, C#, Swift и JavaScript. Для меня он бесценен...
Interview

Почему люди проваливают собеседования по алгоритмам и структурам данных в крупных компаниях?

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

Полезные рабочие плагины TMUX

Расширим ваш арсенал TMUX. Научимся устанавливать и использовать любой плагин, разберем каждый из них. Расскажем, как создавать собственные TMUX-плагины.
Асинхронная опасность: mmap неявно блокирует ввод-вывод

Асинхронная опасность: mmap неявно блокирует ввод-вывод

Отображение файла в память для чтения — звучит красиво: превратить неудобные вызовы чтения и ручную буферизацию в простое индексирование памяти… но под капотом оно блокирует ввод-вывод, превращает массивы байтов &[u8] в асинхронную опасность и делает "конкурентный" асинхронный код фактически синхронным!
Когда и зачем использовать оператор := в Python

Когда и зачем использовать оператор := в Python

Совсем недавно Python 3.8 представил оператор присвоения с двоеточием :=, аналогичный оператору присвоения =. Использование этого оператора позволяет ускорить и сократить код. Эта нотация берёт своё...
Что такое React.memo и как он работает

Что такое React.memo и как он работает

Хотите повысить производительность React-приложений? Воспользуйтесь вызовом компонента React.memo. В результате мемоизации React будет использовать результат последнего рендера, избегая повторного рендеринга.
Наш первый миллиард строк в DuckDB

Наш первый миллиард строк в DuckDB

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

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

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

Зачем и как реализовать ленивую загрузку компонентов в Angular

Ленивая загрузка  —  это техника загрузки чего-то по требованию. Она применяется к различным уровням процесса разработки приложений  —  от модулей до компонентов. Ленивая загрузка на...