CLI и IDE
Что это
Заголовок раздела «Что это»IDE (Integrated Development Environment) — редактор кода с подсказками, отладчиком и Git. CLI (Command Line Interface) — работа с файлами, облаком и API через терминал. Инженер данных каждый день использует и то, и другое.
Когда что использовать
Заголовок раздела «Когда что использовать»| Задача | Что взять |
|---|---|
| Python, dbt, YAML, Terraform | VS Code или PyCharm |
| Писать SQL и смотреть данные в базе | DBeaver, DataGrip или расширение SQLTools в VS Code |
| Быстро посмотреть CSV, JSON, Parquet | CLI: csvkit, jq, xsv |
| Работа с облаком (S3, BigQuery, Azure) | CLI облака: aws, gcloud, az, yc |
| Долгие задачи на удалённом сервере | tmux — сессия не пропадёт при обрыве SSH |
Сравнение IDE
Заголовок раздела «Сравнение IDE»| VS Code | PyCharm CE | DBeaver CE | DataGrip | |
|---|---|---|---|---|
| Цена | Бесплатно | Бесплатно | Бесплатно | Платно |
| Python | Да, через расширение | Да, лучший выбор | Нет | Нет |
| SQL и базы данных | Частично, через расширения | Только в платной версии | Да | Да, лучший выбор |
| dbt, YAML, Terraform | Да | Частично | Нет | Нет |
| Скорость | Быстрый | Тяжелее | Средняя | Средняя |
Лучшие практики
Заголовок раздела «Лучшие практики»- Держите настройки IDE и
.editorconfigв репозитории — у всей команды одинаковое форматирование. - Настройте линтер и форматтер:
ruffдля Python,sqlfluffдля SQL. - Выучите 10 горячих клавиш своей IDE: поиск файла, поиск по проекту, мультикурсор, переход к определению.
- Не храните пароли к базам в настройках IDE в открытом виде. Используйте переменные окружения или менеджер секретов.
- В терминале используйте
fzfдля поиска по истории команд — это экономит много времени.
Ресурсы
Заголовок раздела «Ресурсы»Среды разработки (IDE)
-
Бесплатный редактор от Microsoft. Тысячи расширений, встроенный терминал, Git и отладчик.
-
Бесплатная IDE для Python от JetBrains. Умное автодополнение, рефакторинг, отладчик.
-
IDE для Java, Kotlin и Scala. Нужна, если пишете Spark-джобы на Scala.
-
Лёгкий и быстрый редактор кода с плагинами и темами.
-
IDE для языка R: анализ данных, визуализация, статистика.
Работа с базами данных
-
Бесплатный клиент для любых SQL-баз: PostgreSQL, MySQL, SQLite, ClickHouse и других.
-
IDE для баз данных от JetBrains. Умный SQL-редактор, рефакторинг, работа с Git.
-
Самое популярное расширение VS Code для работы с SQL-базами.
-
Ещё одно удобное расширение VS Code для работы с базами данных.
Терминал
-
Настройка Zsh: автодополнение, подсветка, алиасы, сотни плагинов.
-
Быстрый промпт: показывает ветку git, версии языков, время выполнения команд.
-
Unix-команды и Git в Windows.
-
Продвинутый терминал для macOS: разделение окна, поиск, интеграция с shell.
-
Несколько сессий в одном терминале. Сессия живёт после обрыва SSH.
-
Терминал для Linux с гибким разделением окна на панели.
CLI: файлы данных
- jq ★
Фильтрация и преобразование JSON.
-
То же, что jq, но для YAML.
-
Фильтрация, форматирование и конвертация CSV.
-
Быстрая обработка и анализ больших CSV.
-
Просмотр файлов Parquet, конвертация, извлечение схемы.
-
Агрегация и группировка текстовых данных.
CLI: API и сеть
- curl ★
HTTP-запросы к API и загрузка данных.
-
Простой и читаемый клиент для REST API.
-
Запуск коллекций Postman для тестирования API.
-
Запуск запросов Insomnia для тестирования API.
CLI: облака и хранилища
-
S3, Athena, Redshift и другие сервисы AWS.
-
Работа с Google Cloud Platform.
-
Управление ресурсами Azure.
-
Управление ресурсами Yandex Cloud.
- rclone ★
Копирование данных между облачными хранилищами и локальной машиной.
-
Управление объектным хранилищем S3.
-
Управление хранилищем MinIO (аналог S3).
-
Синхронизация файлов между папками и серверами.
CLI: разное
- fzf ★
Быстрый поиск по файлам и истории команд.
-
Просмотр файлов с подсветкой синтаксиса.
-
Мониторинг ресурсов системы.
-
Прогресс-бар для Python-скриптов.
-
Запуск задач из командной строки — аналог Makefile на Python.