Как добавить в проект тестирование скриншотов с Cypress
Разработчиков, как правило, заботит качество кода. Есть различные виды тестов, которые помогают избежать ситуаций, когда код ломается после добавления в проект новой функции. Но...
Как я наконец перешел от обучения к работе
Даже после прохождения множества курсов, где вы просто копируете код вслед за инструктором, существенного прироста в навыке, как правило, так и не происходит.
Многие наверняка...
7 причин выгорания программистов
Джерри — джуниор-разработчик, который в начале своей карьеры не мог дождаться утра, чтобы приступить к работе. И каждый вечер, даже после 10-часового рабочего дня, он чувствовал...
5 шагов к созданию крутого пул-реквеста
Во-первых, поздравляю с тем, что вы достигли этих рубежей! Создание пул-реквестов — это последний шаг на пути согласования улучшенного вами кода с владельцем его оригинала и...
Сообщество — лучший двигатель карьеры разработчика
В мире технологий часто упоминается слово "сообщество". Разберемся, что включает себя это понятие, как стать участником сообщества и как его найти.
VIM — это не только скорость
Почему профессионалы обожают Vim, а новички его боятся? Что общего у этого текстового редактора и компьютерной игры Dark Souls? Чем, кроме скорости, он может быть полезен? Ответы на эти вопросы помогут вам приступить к освоению Vim/NeoVim и повысить свою продуктивность.
Программирование: 5 недооцененных навыков
Убедитесь, что они есть в вашем арсенале
Сейчас инженеры-программисты нуждаются в довольно широком спектре навыков. Наверху списка этих навыков вы найдете что-то вроде того, что… вам...
7 секретов для поддержания мотивации при изучении программирования
В Codementor мы с гордостью можем похвастаться более 6000 наставников по программированию, которые помогают людям во всем мире научиться программировать. Одной из самых больших...
Сначала графдизайн создать, потом код написать
Рассмотрим важность создания графического дизайна приложения до написания кода и нарисуем диаграмму последовательности с помощью пакета pgf-umlsd.
Изучение Blockchain на Python
Неделю назад я поняла, почему испытывала неприязнь к Bitcoin. У меня не было его, и я не понимала как он работает. Я начала изучать...
Как рационально использовать GIT
Вчера код работал, сегодня нет
Код был удален
Появилась ошибка и никто не имеет представления почему
Если у вас была такая ситуация, то эта статья для вас.
Не считая знания...
Построение системы распределенного кэширования
Разберемся, каким бывает кэш, какие требования предъявляются к нему и каким образом создать наиболее оптимальный дизайн системы с распределенным кэшем.
5 вечерних практик, которые помогают избежать выгорания
Вы программист или специалист по работе с данными, которого преследует профессиональное выгорание? Прислушайтесь к этим 5 советам - возможно, они помогут вам прийти в норму.
Зачем переходить с Gitbook на Readme
Легче сказать "запустить документацию", чем сделать это. Не так-то просто выбрать платформу для размещения документации, да и предоставляемые инструменты сильно различаются. Опыт компании Budibase поможет вам сделать обоснованный выбор.
6 команд терминала для раздражающих задач
Скорость и эффективность - ключевые навыки, имеющие первостепенное значение для продуктивности в разработке.
Чем больше времени уходит на выполнение простых задач, таких как поиск файлов...
5 советов о том, как улучшить комментарии в коде
Хороший программист должен уметь не только грамотно писать код, но и снабжать его уместными комментариями. Предлагаем вашему вниманию 5 лайфхаков по улучшению навыков комментирования кода.
10 признаков того, что программирование не для вас
Часто на Reddit или Quora я вижу вопросы “Как понять, что я могу стать хорошим программистом?”. Такие вопросы о программировании часто всплывают, когда люди...
Как создать криптовалютный дашборд с помощью Plotly и API Binance
Упрощаем отслеживание активов
Как установить API Binance
Binance предоставляет два типа доступа к API: реальный и тестовый.
Настраиваем реальный API Binance
Реальный API обеспечивает прямой доступ к аккаунту. В нем...
Разрабатываем приложения для распознавания речи с помощью Python
Хотите создать своего голосового помощника и превзойти Siri и Яндекс Алису, но не знаете, с чего начать? Рассказываем и показываем, как работает распознавание речи на примере двух простых приложений, и советуем, как применить эти знания на практике.
Объяснение понятий вероятности: оценка максимального правдоподобия
Как оценить неизвестный параметр? Представляем вашему вниманию оценку максимального правдоподобия - действенный способ, используемый в современной математической статистике.
Наше прохождение космического CTF от RUVDS и Positive Technologies
Недавно представитель нашей команды Nuances of Programming успешно прошел CTF от RUVDS и Positive Technologies. Это был захватывающий опыт, которым он хочет с вами поделиться.
Как писать понятный код
Вы пишите код для разработчиков или только для себя?
Обзоры кода во имя добра
Я люблю обзоры кода ― разбирать чужой код и отдавать на обзор свой....
Arduino и Visual Studio Code
Займемся разработкой Arduino, вооружившись расширением PlatformIO в VS Code, и напишем первый проект с мигающим светодиодом.
5 лучших библиотек машинного обучения
За последние несколько лет рост машинного обучения достиг стремительных темпов. Это связано с выпуском библиотек машинного обучения (МО)/глубокого обучения (ГО), которые абстрагируются от сложности...
10 программистских терминов на понятном языке
Все термины, приведенные ниже, уже раскрывали множество раз миллионами разных слов. Но у нас нет ни времени, ни возможностей обработать такое количество информации. По...
Обработка сигналов в операционных системах семейства Unix на Golang
Сигналы в операционных системах семейства Unix — это программные прерывания, которые отправляются программе для указания на возникновение какого-то важного события. Это могут быть разные...
Результаты тестов сетевых плагинов CNI Kubernetes по сети 40 Гбит/с [2024]
Рассмотрим запуск тестов производительности, изучим CNI с различными вариантами применения и требованиями. Разберем результаты тестов и представим рекомендации по выбору CNI.
Обзор 8 ключевых команд Npm и Yarn
Хочешь быть продуктивным - учи команды команды npm и yarn CLI. А мы предоставим актуальную информацию о самых востребованных из них.
Топ 10 лучших дистрибутивов Linux в 2018 году
Мир дистрибутивов Linux крайне разнообразен и новичку будет достаточно сложно определиться с выбором. Мы подготовили данный Топ-10 дистрибутивов Linux, чтобы помочь вам найти для...
Искусственный интеллект + распределённые реестры = оружие против фейковых новостей
Поддельные новости — довольно важная проблема в нашем онлайн мире. И хотя дезинформация и пропаганда существуют уже сотни лет, новости-фейки сегодня становятся по-настоящему серьёзной угрозой. Частично...
Сканируем образы Docker на уязвимости
Как своевременно обнаружить уязвимости?
Итак, вы создали Dockerfile, протестировали контейнер на рабочей станции разработки и ждете, когда он подцепится в CI/CD. Через какое-то количество времени...
10 Расширений VS Code Insider для веб разработки 2020
Детище Microsoft — Visual Studio Code — сохранит лидирующую позицию среди редакторов и ИСР на 2020 год. От огромного сообщества на его маркетплейс постоянно поступают крутые расширения, ...
9 бесплатных курсов по программированию от Гарварда, MIT, IBM, Google и Microsoft
Получение диплома в университете или институте может стоить очень много. А особенно, если вы собираетесь сменить карьеру или, может быть, всего лишь хотите обновить...
5 актуальных расширений Xcode для оптимизации разработки
Пополним арсенал разработчика полезными расширения для повышения продуктивности: SwiftPlantUML, SwiftFormat, Import, SwiftMockGeneratorForXcode, XVim2.
Как начать работать программистом почти без опыта
Я попал в Кремниевую Долину через черный ход — я начинал свою карьеру с простых и быстрых подработок на фрилансе. Рекомендую этот подход: это эффективный и...
Мой опыт работы с Data Scientist, будучи программным инженером
Предыстория
В конце 2017 года я начал проявлять интерес к такой области, как машинное обучение. По специальности я Android Engineer, и в этой статье я...
Как украсть секреты разработчиков через Websocket?
Это история о запутанном и не очень полезном методе извлечения кода, создаваемого ничего не подозревающими JavaScript разработчиками, занятыми над секретными проектами.
Недавно в сети появилась...
Программное обеспечение без конструкции if-else
Не откладывая в долгий ящик скажу: зачастую конструкция if-else — плохой выбор. Её использование приводит к сложным конструкциям, снижает читаемость кода и усложняет рефакторинг.
Тем не...
Отказ после четырех раундов технических собеседований. Что делать?
Будущий инженер-программист должен быть готов к нелегкому испытанию - встрече с придирчивыми рекрутерами. Никто не хочет получить отказ на собеседовании, но лишь немногие отвергнутые кандидаты способны превратить свою неудачу в будущий успех.
Программирование- это искусство и никак иначе!
Программирование, на первый взгляд, носит маску науки и служит тому, чтобы приложения, с которыми мы работаем ежедневно, функционировали как следует. Но в действительности оно — нечто...
Знакомство с Git и GitHub: руководство для начинающих. Часть 2
Часть 1, Часть 2
Рабочий процесс на GitHub
Допустим, у вас есть проект с кучей разных идей и возможностей для дальнейшей реализации. Что-то из этого...
ТОП-10 признаков плохого кода: хардкод и спагетти-код в примерах на JavaScript
Повторения, непоследовательность, длинные условия, сложность алгоритма по времени и памяти - очевидные ошибки начинающих разработчиков.
Перестаньте фокусироваться на синтаксисе, если хотите стать senior-разработчиком
Вы переезжаете в новый город и не знаете, где находится ближайший продуктовый магазин.
Вы не станете волноваться, а просто воспользуетесь Google Maps.
После того, как вы...
Как создать простой агент с Guidance и локальной моделью LLM
Познакомимся с инструментом Guidance, который управляет выводом больших языковых моделей и обеспечивает корректное выполнение инструкций.
Искусство обращаться за помощью к коллегам-программистам
Неотъемлемой частью трудовых будней всех программистов являются ошибки в коде, и каждый раз необходимо найти способ их устранить и обеспечить правильную работу программ. Некоторые...
Топ-5 примеров комментирования кода
Ничто не может объяснить код лучше самого кода. Но в некоторых случаях без комментирования не обойтись. Узнайте, как правильно использовать комментарии и тем самым повысить читабельность кода.
Продвинутые темы SQL для дата-инженеров
Рассмотрим важные техники SQL, иллюстрируя их примерами применения набора данных: объединение таблиц, подзапросы и оконные функции, фильтрацию и агрегирование. Освоив их, вы будете лучше справляться с анализом и визуализацией данных и сможете повысить качество принимаемых в организациях решений.
Возможности Docker, о которых вы не знали. Часть 2
Продолжаем знакомиться с расширенными возможностями Docker. В этой части вы узнаете о таких практиках, как эффективное использовании кэша сборки, ограничение ресурсов контейнеров, мониторинг с помощью Docker-событий, запуск контейнеров Docker в режиме “только для чтения”, очистка с помощью Docker Prune, переопределение точки входа для отладки и управление несколькими средами с использованием Docker-контекстов.
Рабочий процесс на GitHub: профессиональный уровень
Предлагаемое руководство по совместной разработке на Github поможет эффективно управлять кодовой базой. В нем даются рекомендации по выполнению всех ключевых этапов рабочего процесса: от определения проблем и задач проекта до рецензирования и слияния кода.
Как выбрать язык программирования для проекта машинного обучения
Это руководство поможет вам сравнить языки программирования, используемые в машинном обучении: Python, R, Java, C++, JavaScript и Julia. Оцените их возможности и ограничения, чтобы выбрать наиболее подходящий для вашего проекта.
Учимся программированию как Эйнштейн
Эйнштейн был гением и одним из величайших ученых, когда-либо живших на земле. В 1905 году он опубликовал четыре научные работы, заложившие основы современной физики...
Как освоить новый язык программирования или фреймворк
Новые языки программирования появляются чуть ли не каждый день. Dart, Go, Kotlin, Elixir и многие другие! В таких условиях постоянно учиться непросто, но есть...
Как научиться программировать на Java и с чего начать
Определите свои профессиональные цели и выберите язык. Это самый главный совет для новичков, желающих присоединиться к сообществу программистов. Но как же это сделать, если...
Как я стал программистом в 40 лет
Вот, как я сменил свою прежнюю работу на front-end разработчика в 40 лет, не имея ни образования, ни опыта работы в этой сфере. Я...
Как находиться в потоке, программируя в парах
Не так давно я поинтересовался у коллег по команде, может ли разработчик находиться в потоке, программируя в паре. Ответ по-настоящему меня удивил. Дело в...
Flutter и SonarQube для статического анализа кода
За 8 шагов настроим SonarQube с Flutter на Apple Silicon Mac, используя Docker. Погнали!
Станьте экспертом в разработке с этими продвинутыми советами по кодированию. Часть 2
Предыдущие части: Часть 1
Добро пожаловать во вторую часть продвинутых советов по написанию кода. В данной статье мы продолжим изучение остальных code smells с реальными...
События на стороне сервера: к чему должен быть готов разработчик
События на стороне сервера - все еще не до конца изученное явление, которое может серьезно озадачить как новичка, так и профи. Тем не менее они могут принести и пользу. Рассказываем, как с помощью этих событий решить проблему генерации субтитров.
Выход из тени: 6 малоизвестных команд Linux
Функциональность Linux не сводится лишь к ls и grep. Уверен, что, скорее всего, вы уже использовали эти инструменты для быстрого поиска и решения простых...
О чём не говорят инженеры ПО
Здесь, на Medium, на YouTube и во всем интернете люди говорят о том, как они стали программистами без степени в компьютерных науках. Некоторые переходят...
5 правил кода
За последнее время я сформировал список актуальных рекомендаций относительно того, что должен и чего не должен делать современный разработчик. Давайте ознакомимся с пятью из...
Как правильно учиться Java-программированию: история одного тьютора
Моя история
Все началось больше десяти лет назад. Решив стать программистом, я начал изучать несколько языков, чтобы в конечном итоге найти «свой» язык.
В Java я...
Cтарая поговорка гласит: “Одна голова хорошо, а две — лучше”
Я часто слышу, как люди говорят о том, что их работа продвигается более эффективно и плодотворно когда они остаются одни. Также я знаю, что...
Разработчиком ПО может стать каждый - волшебных эликсиров не требуется
За время загрузки этой статьи на вашем устройстве были приняты тысячи вычислительных решений. В ходе них произошел процесс подключения к сайту, определение возможности обработки...
Что делать, когда ваши сотрудники конфликтуют?
Как повысить эффективность командной работы и при этом минимизировать конфликтность сотрудников? Свод основных принципов.
Реализация захвата изменения данных с Docker, PostgreSQL, MongoDB, Kafka и Debezium: подробное руководство
Опишем все службы, настроим и сконфигурируем каждый компонент, обозначив их роли и особенности. Конфигурации снабдим пояснениями, выделив преимущества и недостатки.
Чистота и порядок: 3 правила для идеальной базы кода
В любом деле важен порядок, особенно если речь идет о чистоте кодовой базы. Рассмотрим 3 правила, выполнение которых помогает своевременно обнаружить грязный код и помешать его проникновению в базу.
Регрессор дерева решений
Предлагаем наглядное руководство по смарт-обрезке ветвей дерева решений с учетом сложности/стоимости вычислений. Описанный подход потенциально позволяет создавать более оптимальные деревья, хотя зависит от набора данных, поставленной задачи и доступных вычислительных ресурсов.
Полное руководство по установке Magento 2 с включенным SSL на Ubuntu ≥ 18.04
Пошагово пройдем весь процесс с самым важным аспектом - настройкой веб-сервера. Как избежать типичных ошибок?
Простейшее объяснение парадокса Монти Холла
Парадокс Монти Холла — это одна из тех математических задач, над решением которой уже долгое время бьются многие умы, и даже всемирно известных математиков она приводит...
Нативное будущее кроссплатформенной разработки
Коротко о кроссплатформенности
Сейчас кроссплатформенная разработка не пользуется большой популярностью. Основная причина состоит в том, что существующие инструменты не в полной мере справляются со своей...
С нуля до разработчика игр: как начать создавать видеоигры, если у вас нет опыта
Два года назад я была простой семнадцатилетней ученицей средней школы и я ничего не знала о программировании. Но я все равно достигла своей цели...
Основы Git за 5 минут
По мере своего становления в роли разработчика приходит понимание того, что большая часть работы ведется в команде. И при работе в команде нужна система...
Учет соседей: повышение эффективности эмбеддингов документов с помощью контекстного кодирования
Ознакомьтесь с новым подходом к поиску необходимых документов. Для повышения точности поиска он предполагает учет соседних документов с помощью контекстно-зависимых эмбеддингов.
Поток управления декларативным циклом в Angular 17
Следующая версия популярного фреймворка Angular (v17) обещает предоставить разработчикам удобные функции. Одним из улучшений станет новый встроенный синтаксис шаблонов потока управления.
Основные правила код-ревью
Code review или обзор кода - работа, требующая высокого уровня профессионализма. Ознакомьтесь с его лучшими практиками: вот что нужно и что нельзя делать разработчику при обзоре кода.
Генерация ответа, дополненная результатами поиска (RAG): от теории к реализации на LangChain
Ознакомьтесь с процессом выполнения простого RAG-пайплайна. Вы сможете изучить его пошагово — от теории, изложенной в оригинальной научной статье, до практической реализации на Python с помощью OpenAI, Weaviate и LangChain.
Создание модели Mixture of Experts (MoE) с помощью MergeKit
Объедините с помощью MergeKit несколько моделей в один коллектив экспертов (MoE). Предлагаем подробное описание процесса создания многозадачной и высокопроизводительной модели frankenMoE, не требующей предварительного обучения.
Советы по переходу с AWS CloudFormation на CDK
CDK - потрясающий инструмент, который дает реальный опыт при создании инфраструктуры, что особенно важно для тех, кто при создании функциональных средств руководствуется методологией системной инженерии, которая требует, чтобы инженеры отвечали не только за реализацию.
Я ухожу из Google. Что же такое Google Cloud на самом деле?
Глядя на мой бейдж, который завтра мне придется сдать, я решил поделиться своими мыслями перед тем, как с головой окунуться в новую работу. В...
21 идея для автоматизации в 2021 году
1. Способ поиска информации в Google
Большую часть времени мы ищем ответы на наши запросы в Google, и его поисковые навыки настолько умны, что в 80%...
Раскрутка приложения без маркетинга
Скажу сразу — все, что от вас требуется — это ежедневный труд и терпение!
Создание и продвижение нового продукта — одни из самых трудных занятий в сфере предпринимательской деятельности. Существует множество...
Как написать оператор Kubernetes?
История о том, как важно порой даже малое изменение. Создадим, протестируем и запустим оператор в кластере Kubernetes.
Наглядное руководство по каждому типу тестов
“В теории после каждого внесения исправлений необходимо запустить весь банк тестовых случаев, которые ранее запускались в системе, чтобы убедиться, что она каким-то непонятным образом...
Разоблачение мифов о сеньоре
Хватит этих историй о том, “как стать старшим разработчиком”
Возможно, мой мозг избирательно раздражается, видя, как люди ловят на попутном ветре успех оригинальной статьи. Или,...
Правильная мотивация - залог успешных сторонних проектов
По моему опыту, в работе над сторонним проектом основная сложность заключается не в поиске новой идеи, а в ее окончательном воплощении в готовый продукт.
В...
От нуля к единице: как сервис Instawork исследует данные
Переход от 0 к 1 означает переход от ничего к чему-то или почему я покинула Google и перешла работать в Instawork.
Прикольные анимации для Flutter-приложений
Я покажу вам 6 прикольных анимационных эффектов, которые можно попробовать в своих приложениях. Добавлять анимацию с Flutter — одно удовольствие. И делать это можно по-разному. Например,...
9 навыков, которые нужно освоить в самом начале карьеры программиста
Начало карьеры программиста - процесс, пугающий незнакомым профессиональным жаргоном и непреодолимой стеной компетенций. На самом деле все, что нужно новичку, - это прочная база. Создать ее помогут эти 9 ключевых навыков.
Интеллектуальная синергия: динамические отношения между искусственным и человеческим интеллектом
ИИ дополняет потенциал человека, а люди следят за тем, чтобы ИИ служил интересам человечества. Рассмотрим подробно преимущества искусственного и человеческого интеллекта, а также способы формирования ими новой парадигмы, в которой будут гармонично сосуществовать инновации и эмпатия.
Вам не нужен стендап
Примечание: ниже представлены мои ЛИЧНЫЕ убеждения насчёт Agile и командной организации. У вас всё может быть иначе.
Недавно я стал техническим менеджером продукта в своей...
Как успешно реализовать проверку состояния контейнера в Docker Compose
Разработчику важно понимать, что служба Docker действует должным образом, в противном случае могут возникнуть большие неприятности. Чтобы гарантированно предотвратить их, рассмотрим способы проверки состояния (Healthcheck) контейнеров в Docker.
9 лучших примеров макетов сайта и идей для веб-дизайна в 2018
Есть всего одна возможность создать хорошее первое впечатление. Качественный дизайн сайта может в первую же секунду поразить посетителя. Именно поэтому дизайн главной страницы очень...
Портрет плохого программиста
Первым шагом на пути к становлению профессионального программиста может стать выявление плохих привычек в процессе написания кода. Рассмотрим их подробнее.
Шоу должно продолжаться: обеспечение безопасности Netflix Studios с масштабированием
Узнайте об одной из выдающихся стратегий Netflix Studios - развертывании приложений, гарантирующем 100% аутентификации поддерживающим его сервисам. Она многократно сокращает время и усилия разработчиков, а также риски безопасности в интернет-пространстве.
Сделайте свой первый вклад в открытый исходный код!
Наверняка вы хоть раз задумывались о том, как улучшить существующую версию той или иной программы. Мы расскажем вам о том, как это можно сделать на практике.
Всё, что должен знать разработчик ПО о качестве кода
Вы можете этого не осознавать, но плохой код вы узнаете с первого взгляда. Как правило, он малопонятный или содержит много ошибок, чрезмерно многословный или...
Индексирование в MySQL: руководство для начинающих
Это руководство поможет расширить представление о возможностях индексирования в MySQL. Вы узнаете, когда необходимо индексирование и как формируются, оптимизируются и удаляются индексы. Кроме того, научитесь создавать уникальные индексы с первичным ключом.
Приключения аналитика в стране кода: пробуждение силы
Программы для электронных таблиц, такие как Microsoft Excel и Google Sheets, превосходны. Они вне конкуренции, когда дело касается выполнения простых вычислений или построения финансовых...
Как использовать JavaScript и Node.js, чтобы сразиться с драконом в игре Fight the Dragon?
Выдалась свободная минутка? Почему бы не устроить эпичный баттл с драконом? Наше пошаговое руководство поможет выйти из боя победителем!
Новые API интернационализации в JavaScript
Intl — глобальный объект для форматирования строк, чисел и дат с учётом языка пользователя. Он работает над отображением зависящей от языка информации.
Интернационализация — способ...
Лучшие фреймворки для ИИ и машинного обучения в веб-разработке
Конкуренция на технологическом рынке чрезвычайно высока, и компании стремятся получить преимущество с помощью веб-дизайна и разработки.
Чтобы веб-приложение для бизнеса было современным и конкурентоспособным, при...
Я ухожу из Google. Что же такое Google Cloud на самом деле?
Глядя на мой бейдж, который завтра мне придется сдать, я решил поделиться своими мыслями перед тем, как с головой окунуться в новую работу. В...
Создание готового к производству приложения React с помощью Next.js и Dokku
Хотите создать и запустить живое приложение React с минимальным бюджетом и возможностью масштабировать его в будущем? Воспользуйтесь руководством опытного разработчика ПО, успешно реализовавшего эту задачу.
Возможности Docker, о которых вы не знали. Часть 1
Ознакомьтесь с расширенными возможностями, используемыми продвинутыми Docker-пользователями. В 1-й части вы узнаете о таких практиках, как многоэтапные сборки, сжатие слоев образов, управление секретами BuildKit, ускорение сборки с помощью файла .dockerignore, проверка “здоровья” в Docker-файлах и форматирование вывода Docker CLI.