Search
Write a publication
Pull to refresh
0
Сирожа @vdigitread⁠-⁠only

Программист программ

Send message

IT-лягушка и новая нормальность

Reading time10 min
Views15K

Наша жизнь постоянно меняется, причём происходит это в режиме, описанном в старой песне - «А времена менялись и изменились вконец». То есть, каждый день происходят какие-то незначительные изменения, и мы не всегда отдаём себе отчёт в том, какая в итоге конфигурация реальности возникла. Это как в известной аллегории про лягушку в медленно нагревающейся воде, когда можно не заметить что уже сварился.

Читать далее

Революция вайб-кодинга отменяется

Reading time6 min
Views69K

Не торопитесь пролистывать эту статью. Я не собираюсь, подобно множеству других статей на Хабре, рассказывать о плюсах или минусах вайб-кодинга и сравнивать это с плюсами и минусами традиционного программирования. Потому что сравнивать нечего, ведь не случилось ничего такого, что бы как-то значительно изменило ситуацию. По сути, я буду говорить о том же, о чём говорил в предыдущей статье ( https://habr.com/ru/articles/938028/ -Михаил Елисейкин «IT-лягушка и новая нормальность» ) - о том, что мир меняется, а наши о нём представления от этих изменений отстают.

Читать далее

Программисты против вайбкодеров

Level of difficultyEasy
Reading time4 min
Views51K

Я заметил, что вокруг новых AI-инструментов для кодинга (типа Cursor AI, ChatGPT, Claude) идёт жаркая дискуссия. Классические программисты порой скептически смотрят на тех, кто активно пользуется генеративным ИИ вместо ручного кодирования. Некоторые считают таких «вайбкодеров» мешком софта без понимания: мол, они просто копипастят то, что выдаёт ИИ. Попробую разобраться в этом лично: ведь для многих из нас эти инструменты открывают новые возможности.

Читать далее

IT для неайтишников: Куда исчезают программисты после 40 лет?

Reading time11 min
Views125K

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

Читать далее

Создаём современные npm-пакеты и преодолеваем трудности совместимости ESM и CJS

Level of difficultyEasy
Reading time16 min
Views6.2K

Привет! Меня зовут Никита, и я тружусь в команде фронтенда платформы в Ozon. Платформа поставляет инструменты для создания и поддержки JS-проектов. В компании в настоящее время более 500 таких проектов. Мы прилагаем максимум усилий, чтобы разработчикам всех проектов было одинаково приятно работать с нашими инструментами.

Также мы предоставляем инструменты для создания JS-библиотек. И в этой статье я расскажу о том, как мы советуем создавать npm-пакеты. Отмечу, что это не касается UIKit-пакетов, — для них требуется довольно специфичный инструментарий, который заслуживает отдельной статьи.

Недавно у нас проходила актуализация инструментов, которая включала обновление версий Node, TypeScript и прочего. И мы обнаружили, что сейчас правильно упаковать библиотеку ой как нелегко, особенно с началом активной фазы по отказу от CommonJS. В идеале очень хочется иметь инструмент, который бы просто работал. В open-source есть парочка вариантов (unbuild, pkgroll, dnt), но выбрать подходящий мы пока не смогли. А написать свой — довольно трудоёмкая задача. В будущем мы обязательно обзаведёмся таким инструментом, а пока просто погрузились в тему и подготовили для наших разработчиков рекомендованные сетапы, которыми сейчас поделимся и с вами.

Читать далее

Публикация пакета npm с ESM и TypeScript

Level of difficultyEasy
Reading time9 min
Views1.1K



За последние 2 года поддержка ESM в TypeScript, Node.js и браузерах сильно улучшилась. В этой статье я объясню мою современную настройку, которая является относительно простой по сравнению с тем, что нам приходилось делать раньше:


  • она предназначена для пакетов, которые могут пренебречь обратной совместимостью. Настройка хорошо работает для меня некоторое время — начиная с TS 4.7 (24.05.2022)
    • помогает то, что Node.js теперь поддерживает require(esm) — запрос библиотек ESM из модулей CommonJS
  • я использую только tsc, но упоминаю поддержку других инструментов в разделе "Компиляция TS с помощью других инструментов"

Обратная связь приветствуется: что вы делаете по-другому? Что может быть улучшено?


Пример пакета: в @rauschma/helpers используется настройка, описываемая в этой статье.

Читать дальше →

ESM. Выходим за рамки

Reading time4 min
Views3.8K

Итак, работая над... ну не знаю... каким-нибудь замечательным генератором статики, вы, возможно, захотите импортировать в свой код зависимости напрямую из текстовых файлов, таких как: HTML, MD, CSS, SVG или JSON. Конечно, можно использовать бандлер с соответствующим лоадером. Но, допустим, ваш кодекс самурая велит вам - никаких лишних npm install xxx и промежуточных билдов! Только хардкор! Что делать? Выход есть.

Читать далее

Как я собеседовался в Ozon, Т-Банк, Mindbox и другие крупные компании

Level of difficultyEasy
Reading time25 min
Views160K

Всем привет. Я сеньор и тимлид на .NET (C#). До недавнего времени работал в Росатоме, пока там внезапно не сократили целую дирекцию по цифровизации. Так что пришлось срочно выходить на рынок, причём, впервые в моей жизни (до этого работа находила меня сама). По результатам нескольких циклов собеседований получился неплохой дневник, который я здесь привожу.

История длинная, но интересная

VPS сервер по цене пачки чипсов: обзор самых дешёвых тарифов российских хостеров

Level of difficultyEasy
Reading time7 min
Views33K

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

Сегодня хотел бы рассказать о том, как себя ведут самые дешёвые (в ценовом диапазоне от 100 до 300 рублей) предложения от популярных хостеров. 

Читать далее

Настройка среды разработки: VSCode, Docker для Python-проектов. Debug внутри контейнера

Level of difficultyEasy
Reading time9 min
Views9.4K

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

Читать далее

Как мы подняли современный портал документации из россыпи .md файлов: пошаговое руководство по MkDocs + Material

Level of difficultyMedium
Reading time5 min
Views4.8K

От хаоса в Markdown-файлах до стильного, быстрого сайта с поиском, темами и мультиязычностью за один вечер.
В жизни почти каждого IT-проекта наступает момент, когда количество файлов README.md, GUIDE.md, docs.txt и заметок в Confluence достигает критической массы. Документация становится фрагментированной, поиск нужной информации превращается в квест, а новые члены команды тратят часы на то, чтобы просто понять, "что где лежит".

Читать далее

Storybook в IDE: конец эпохи копипаста

Level of difficultyEasy
Reading time3 min
Views9.9K

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

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

Storybook Studio: всё в одном месте...

Читать далее

Статья 1: Введение в MV шаблоны

Level of difficultyEasy
Reading time7 min
Views2.6K

Серия статей с очередным разбором MV* шаблонов, но с интересными деталями
Даже опытные разработчики смогут найти что-то новое для себя

Это первая статья из серии, которая является подводкой к самому интересному
Вспоминаем что такое MVC и MVP

Статья 1: Введение в MV шаблоны
- 📜 M‑V-подставь_свое
- 📜 MVC (Controller)
- 📜 MVP (Presenter)
- 🛠 Паттерн Команда (Command)
- 📜 MVP (Moxy)

Вспомнить былое

Статья 2: Подробнее про MVVM

Level of difficultyEasy
Reading time8 min
Views1.4K

Серия статей с очередным разбором MV* шаблонов, но с интересными деталями
Даже опытные разработчики смогут найти что-то новое для себя

Это вторая статья из серии,
в которой подробно разбираем MVVM
и является ли класс ViewModel от Google, сущностью ViewModel из шаблона

Статья 2: Подробнее про MVVM
- 🔨 Функции обратного вызова (Callback)
- 🛠 Паттерн Наблюдатель (Observer)
- 📜 MVVM (ViewModel)
- 🔨 Привязка данных (Data Binding)

Найти новое

Плохие JOIN’ы: приемы, которые (нечаянно) кладут прод

Level of difficultyEasy
Reading time5 min
Views28K

Привет, Хабр!

В этой статье разбираем один из самых коварных способов убить базу — плохие JOIN'ы. Казалось бы, простое дело: связать пару таблиц — и вперёд. Но если в ON засунуть LOWER(email), забыть про индексы или перепутать LEFT JOIN с INNER — сервер мигом начнет дышать на ладан.

Читать далее

Краткая история JavaScript

Level of difficultyEasy
Reading time27 min
Views4.1K



В этом году JavaScript исполняется 30 лет.


За три десятилетия он прошел путь от забавного и непритязательного скриптового языка, созданного за 10 дней, до самого популярного языка программирования в мире. Ниже — ключевые моменты истории JavaScript, которые помогут понять, как он менялся и куда идет.

Читать дальше →

Хочешь своего AI-бота? Пошаговый план для новичков и не только

Reading time6 min
Views6.7K

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

В результате, около 65% организаций заявляют об использовании генеративного ИИ как минимум в одной бизнес-функции на регулярной основе — почти в два раза больше, чем десять месяцев назад.

Читать далее

Введение в hyper: серверная часть

Level of difficultyMedium
Reading time9 min
Views2.2K

hyper - это низкоуровневая HTTP-библиотека на Rust. Обычно она служит строительным блоком для более высокоуровневых библиотек, таких как axum, tonic, reqwest и других. Но иногда знание hyper могут требовать в вакансиях.

hyper предоставляет api как для клиента, так и для сервера, но в этой статье мы сосредоточимся исключительно на серверной части.

Читать далее

Я думал, что в IT нет офисных интриг. Ошибся

Level of difficultyEasy
Reading time11 min
Views36K

Сидел я с ними в одном офисе и своими глазами видел, как старший разработчик забирал все сложные и интересные задачи себе, хотя по идее должен был обучать новичка. У этого «младшего» был такой же опыт, просто в других компаниях.

Читать далее

Откуда растут переработки и прочая корпоративная шиза. Часть 1. Историческая

Level of difficultyEasy
Reading time45 min
Views36K

Существует множество исследований и экспериментов, которые прямо гласят: переработки могут быть полезны только краткое время, не более пары месяцев или даже недель. Интернет завален публикациями про их вред, но воз и ныне там. И многие современные менеджеры так и норовят загрузить сотрудников по полной, а в идеале — и на выходных, чтобы работали по 60, 80 или даже 100 часов.

Историй будет много, хватит минимум на 3 части.

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

Разобрать историю рабства и религии
1
23 ...

Information

Rating
Does not participate
Location
Иркутск, Иркутская обл., Россия
Date of birth
Registered
Activity