Pull to refresh
0
@Stinkornread⁠-⁠only

User

Send message

Code review по-человечески (часть 2)

Reading time11 min
Reach and readers161K


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

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

Моё худшее код-ревью


Худшее код-ревью в моей жизни было для бывшей коллеги, назовём её Мэллори. Она начала работать в компании за несколько лет до меня, но только недавно перешла в мой отдел.
Читать дальше →

Code review по-человечески (часть 1)

Reading time14 min
Reach and readers330K
В последнее время я читал статьи о лучших практиках code review и заметил, что эти статьи фокусируются на поиске багов, практически игнорируя другие компоненты ревью. Конструктивное и профессиональное обсуждение обнаруженных проблем? Неважно! Просто найди все баги, а дальше само сложится.

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

Моя революционная книга обучит вас проверенным техникам по выявлению максимального количества недостатков в своём партнёре. Книга не затрагивает следующие области:

• Обсуждение проблем с сочувствием и пониманием.
• Помощь партнёру в устранении недостатков.

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

Как вам нравится такая книжка? Предполагаю, что она вам не очень по душе.
Читать дальше →

Python в Excel, базы данных без SQL и трудности в аналитике

Level of difficultyMedium
Reading time6 min
Reach and readers14K

Привет, Хабр! Сегодня — международный день доступа к информации, поэтому делюсь с вами интересными материалами по ML, AI и дата-аналитике. В новом выпуске вас ждут новинки от Nvidia для LLM, три пути развития аналитического стека, инструменты для анализа данных и другое. Еще больше полезных текстов по DataOps и MLOps — в Telegram-сообществе «MLечный путь».
Читать дальше →

IT Волонтерство. Что это за каша и куда можно пойти волонтёрить?

Reading time4 min
Reach and readers6.5K

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

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

Для многих НКО, социальных проектов и благотворительных инициатив стоимость IT-услуг на рынке оказывается очень неподъёмной или просто нет на это средств, и именно здесь на помощь приходят IT-волонтёры.

Читать далее

От форумов и аськи до Zoom и Telegram: как менялось общение в сети последние 30 лет

Level of difficultyEasy
Reading time13 min
Reach and readers12K

Аська, Skype, первые групповые чаты — всё это было частью нашей цифровой молодости. Я собрал ностальгическую историю о том, как менялись технологии и наши привычки интернет-общения за 30 лет.

Читать далее

Как вайбкодить без боли? 11 выводов, к которым я пришёл

Level of difficultyEasy
Reading time6 min
Reach and readers21K

За последние 3 месяца я провел 200 часов за вайбкодингом и хочу поделиться мыслями, которые сэкономят вам нервы и время, если вы тоже решились заняться этим делом. Я буду рассматривать Cursor, но эти правила подойдут и для других аналогов

Читать далее

Сравниваю Jupyter Notebook, Google Colab, Kaggle и Marimo глазами исследователя и начинающего Data Scientist

Level of difficultyEasy
Reading time13 min
Reach and readers7.7K

Я пришел в Data Science не сразу. Учился в магистратуре по вечерам, работая в совершенно другой сфере (строительство). Осваивать машинное обучение и анализ данных было интересно, но один из самых неожиданных вопросов, который возник буквально сразу - в какой среде писать код?

На первый взгляд кажется, что Jupyter Notebook, Google Colab, Kaggle и сравнительно новая Marimo - это одно и то же, ноутбук с ячейками и Python (так же поддерживаются другие языки программирования). Но на практике каждая из этих сред подходит для разных задач, где-то удобнее учиться, а где-то работать командой.

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

Статья будет полезна:

Читать далее

Вайбкодинг — советы НЕразработчикам, которые хотят кодить с ИИ

Level of difficultyEasy
Reading time17 min
Reach and readers32K

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

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

Это статья для НЕразработчиков, которые хотят в паре с ИИ сделать себе полезный скрипт или пет-проект. Я постарался написать ее максимально просто, чтобы даже далекие от разработки люди понимали, что делать и куда копать.

Читать далее

Топ-15 лучших нейросетей для личной продуктивности

Level of difficultyEasy
Reading time8 min
Reach and readers14K

Когда несколько лет назад ИИ только вышел на сцену, в нём видели роль мощного ускорителя продуктивности — почти волшебную палочку для работы и повседневных задач.

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

Я изучил и протестировал лучшие инструменты ИИ для повышения продуктивности в самых разных сценариях, чтобы помочь вам собрать идеальный набор AI‑инструментов.

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

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

Читать далее

Roadmap.sh: дорожные карты для изучения IT, 346k звёзд на GitHub

Level of difficultyEasy
Reading time5 min
Reach and readers17K

В 2013-м я получил свою первую вакансию джуна. Требования: PHP, MySQL, jQuery. Всё. Я открыл tutorial, за выходные накодил todo-лист, через месяц уже чинил баги в проде.

Вчера смотрел вакансию для джуна. Требования занимали два экрана. Node.js ИЛИ Python ИЛИ Go. React ИЛИ Vue ИЛИ Angular. PostgreSQL + Redis + MongoDB. Docker обязательно. Kubernetes — плюсом. GraphQL знание приветствуется. Плюс микросервисы, CI/CD, облака...

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

А что сейчас?

Сейчас — это Node.js, Deno, Bun для JavaScript-бэкенда. Go, Rust, Elixir для хайлоад. Python с FastAPI, Django, Flask. Kotlin, Java, Scala для enterprise. Плюс Ruby, PHP (еще жив), C#/.NET... И это только языки и рантаймы. А еще базы: PostgreSQL, MySQL, MongoDB, Redis, Cassandra, ElasticSearch. Очереди: RabbitMQ, Kafka, NATS. Контейнеризация: Docker, Kubernetes, Helm. CI/CD: GitLab, Jenkins, GitHub Actions, CircleCI. Облака: AWS, GCP, Azure.

Бедные джуны. Хотя нет — бедные мы все. Даже опытные разрабы теряются в этом океане, когда делают шаг в сторону. Зоопарк технологий растёт экспоненциально. И вопрос "с чего начать?" и "куда двигаться?" превращается в настоящий паралич выбора.

Читать далее

Создаем простую систему RAG на Python

Level of difficultyEasy
Reading time13 min
Reach and readers10K

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

Для того, чтобы решить эту проблему, мы построим простую систему RAG (Retrieval-Augmented Generation) – в которой генеративная языковая модель (LLM) получает доступ к внешним источникам информации для улучшения точности и достоверности ответов. То есть, вместо того чтобы использовать только внутренние знания модели, RAG будет обращаться к внешним источникам: базам данных, текстовым архивам и другим.

Читать далее

BPMN для аналитиков и тимлидов (часть 2)

Level of difficultyMedium
Reading time21 min
Reach and readers7.7K

Привет, Хабр! Это вторая статья про BPMN, в которой мы переходим от теории к практике.

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

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

Читать далее

Как эффективно работать с ИИ: Руководство для начинающего

Level of difficultyEasy
Reading time5 min
Reach and readers23K

Группа авторов (к которым я не отношусь) провела опрос постоянных пользователей ии-инструментов с акцентом на практические вопросы. Что получается и что - нет, как получается и как - нет, для чего, для кого и т.п. На момент обзора ответы дали 139 опрошенных, среди которых самые разные специальности и опыт в профессии ойти.

Формат показался актуальным и информативным, но трудновоспринимаемым, поскольку ответы собраны в экселе (который прилагается). Поэтому сделано текстовое обобщение в notebookLM, которое под катом. Бонусом - майнд мэп по опросу.

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

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

Читать далее

Мне этот Chrome DevTools теперь абсолютно понятен

Level of difficultyEasy
Reading time15 min
Reach and readers40K

Привет, Хаброчане!

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

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

Читать далее

10 полезных Python-библиотек для автоматизации повседневных задач

Reading time7 min
Reach and readers24K

Каждый раз, когда мы пишем «быстрый скрипт на коленке», мы тратим время на одни и те же вещи: настройку логов, парсинг конфигов и создание прогресс-баров. В этой статье разберем 10 легковесных утилит (от tqdm до beartype), которые закроют рутинные задачи и позволят вам сфокусироваться на логике, а не на «обвязке».

Читать далее

21 урок, который я усвоил за 14 лет работы в Google

Level of difficultyEasy
Reading time11 min
Reach and readers81K

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

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

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

Читать далее

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

Level of difficultyEasy
Reading time16 min
Reach and readers11K

Эта статья была вдохновлена статьей https://addyosmani.com/blog/next-two-years/. Постить на Хабре просто очередной перевод выполненный LLM, на мой взгляд, не имеет смысла и ценности не несет. Плюс разработка в России ≠ разработка в США, у нас много своих нюансов и специфики. При этом я заимствовал вопросы, и части текста автора , потому что полностью разделяю его мнение в некоторых вопросах, а в некоторых вопросах наши мнения расходятся (да, да, можете считать, что это с одной стороны урезанный, а с другой дополненный перевод статьи).

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

Читать далее

Базовый минимум. Часть 1:  большие языковые модели

Level of difficultyEasy
Reading time9 min
Reach and readers17K

Чат боты с ИИ легко воспринимать как «умного собеседника». Они отвечают связно и выглядят почти по человечески. Но что на самом деле находится по ту сторону диалогового окна? В этом тексте собраны базовые понятия, без которых трудно без которых сложно уверенно использовать языковые модели в реальных задачах и понимать границы их возможностей.

Читать далее

Что такое канбан и как на самом деле по нему работать

Level of difficultyEasy
Reading time8 min
Reach and readers18K

Это базовая методичка по канбан. На пальцах объясняю, как устроен метод и даю рабочую схему, как внедрить его в команде.

Читать далее

Claude Code: практический гайд по настройке, автоматизации и работе с контекстом

Level of difficultyEasy
Reading time10 min
Reach and readers66K

Команда AI for Devs подготовила перевод подробного гайда по Claude Code — от skills и хуков до MCP, субагентов и плагинов. Автор делится реальным сетапом после месяцев ежедневной работы и показывает, как выжать максимум из Claude Code, не убив контекст и производительность.

Читать далее
1
23 ...

Information

Rating
Does not participate
Registered
Activity