Программировать можно и без специальных сред. Хотя IDE у большинства разработчиков на первом месте, мне ближе совсем иной стиль. Я вижу свой Linux как огромную, гибкую и полностью подстраиваемую под себя рабочую среду, где каждый инструмент я подбираю сам и делаю это с удовольствием.
Каждое окно — для своей задачи
Универсальные IDE — это не про меня
Многие выбирают IDE из-за удобства: тут и редактор, и компилятор, и отладчик, и справка — всё в одном окне. Понимаю, почему так многим нравится такой подход. Но мне гораздо интереснее собрать рабочее пространство из отдельных программ — именно так легко выбирать именно то, что нужно. Такой подход идеально реализован в Linux.
Мне близка философия Unix: маленькая программа решает одну задачу и делает это на отлично. Пусть идеал недостижим, но именно к этому стоит стремиться.
Что такое Unix — и почему это важно?
Большинство операционных систем делят на две крупные категории.
Не случайно IDE были по-настоящему востребованы именно на Windows: командная строка там долгое время оставалась неудобной и запуск отдельных процессов требовал много ресурсов — отсюда и любовь к многофункциональным программам. В Unix-подобных системах ставка совсем на другое: небольшие самостоятельные утилиты работают гораздо эффективнее. Например, я могу держать открытым Vim в одном терминале, запускать свой код во втором, а в третьем — искать и копировать файлы. Конечный результат почти тот же, что и в IDE, только всё проще, быстрее и куда гибче.
Если для работы нужно что-то ещё — открываю новый терминал и продолжаю без лишних сложностей.
Мне удобнее использовать разные приложения для разных задач
Каждый инструмент — на своём месте
Сразу поясню: я не профессиональный программист. Для меня код — это и хобби, и тренажёр для ума. Если для профессионалов выбор очевиден и велит использовать IDE, у меня всё по-своему.
Мой основной язык — Python. Обычно пишу короткие скрипты или работаю с интерактивной консолью — стандартной или IPython. Иногда использую Python просто как калькулятор. Зачем ради такого запускать громоздкую IDE? Только трата времени.
Чаще всего я занимаюсь статистикой или анализом данных на Python через интерактивную консоль в окружении Mamba. Если нужна документация — читаю её в IPython или просто открываю браузер. Для заметок и демонстраций запускаю Jupyter Notebook. Отладчиком почти не пользуюсь — если код сломался, разбираюсь на ходу и иду дальше.
IDE мне мешает — она тащит с собой кучу ненужных компонентов, например, отладчик, который мне попросту не нужен. Зачем мне огромная среда, если хватает пары простых утилит?
Я свободно меняю инструменты, когда захочу
Я никогда не застреваю на одном решении
IDE обычно предлагают фиксированный набор функций: редактор, компилятор, отладчик, линтеры и так далее. А в Linux можно установить через пакетный менеджер любые утилиты, какие только понравятся.
Меня никто ничем не ограничивает: не нравится стандартный редактор — ставлю любимый. Например, я давно освоил Vim, и теперь это мой простор для творчества, особенно на ноутбуке — горячие клавиши работают идеально.
Даже стандартную оболочку Python я сменил на IPython — здесь подсветка, история команд и можно прямо из консоли запускать системные команды. Очень удобно.
Менеджер пакетов тоже не остался прежним: теперь у меня Mamba — отличная штука для работы с данными, свежие пакеты, и при этом системный Python остается «чистым».
Такой гибкости никакая стандартная IDE не даст.
Я сам подбираю себе инструменты
Мой выбор — мои правила
Чем дольше работаешь в Linux, тем отчётливей видишь — свой рабочий процесс у каждого. Особенно это видно на примере текстовых редакторов. Я, например, когда-то был поклонником Emacs, теперь перешёл на Vim и знаю обе «школы» изнутри.
IDE всё так же популярны, даже у тех, кто их так не называет. Вот фанаты Emacs любят запускать терминал или файловый менеджер прямо в редакторе, не переключаясь между окнами. Меня это никогда особо не привлекало — скорее потому, что у меня всегда под рукой был удобный графический интерфейс: в Windows или Linux открыть новое окно — дело одной секунды.
Когда-то Emacs создавался для терминала, где запуск нового приложения был целой проблемой — и всё объединялось внутри одной оболочки. Сейчас, если ты привязан к IDE, ты ограничен тем, что заложили разработчики. В Linux популярны специальные среды как раз за счёт свободы. А мне ближе гибкий набор программ, который я легко подгоняю под себя — когда захочу и как захочу.
Подписывайтесь на рассылку — делюсь только самыми полезными лайфхаками для Linux
Я так привык к своим сервисам, что при переходе на новый компьютер собираю всю привычную среду работы за несколько минут. Чувствуешь себя как дома.
Работа с разными утилитами удобнее, чем с одним «монстром»
Лёгкость и настоящая свобода выбора
Я убеждён: подход Unix «одна программа — одна задача» — идеальная основа для разработки. Это стало возможно благодаря тому, что в Unix и Linux процесс запуска приложений элементарен и быстр. Захотел — открыл новый терминал, запустил редактор или IPython, работай в своём темпе — никакой волокиты и тормозов.
В отличие от Windows, где запуск программ часто требует немалых ресурсов, в Linux всё происходит легко, почти мгновенно. Поэтому незачем держаться за огромные IDE — проще самому собрать связку утилит под свои нужды.
Когда-то проблема была только одна: как удобно переключаться между задачами. Решение — оконные интерфейсы, вкладки и мультиплексоры терминала. Теперь у меня может быть открыта сессия Python в одном окне, Jupyter — в браузере, редактор — в другом. Всё под рукой, никаких ограничений, даже если работаю через SSH на сервере.
Что такое мультиплексор терминала и зачем он нужен?
Работайте через SSH столько, сколько нужно — ничего не оборвётся посреди процесса.
Сейчас с пачкой окон терминала, вкладками и мультиплексорами я получаю максимум комфорта. В одном окне экспериментирую с кодом, в другом держу заметки, в третьем — документация. Всё просто, гибко и вообще нет никаких рамок.
Программирование на моих условиях
Может быть, работа через разные программы в Linux и не так «интегрирована», как в готовых IDE, зато я сам создаю идеальное рабочее место. Гибко, быстро, надёжно — именно за это я и ценю свой подход.
Если вам понравилась эта статья, подпишитесь, чтобы не пропустить еще много полезных статей!
Премиум подписка - это доступ к эксклюзивным материалам, чтение канала без рекламы, возможность предлагать темы для статей и даже заказывать индивидуальные обзоры/исследования по своим запросам!Подробнее о том, какие преимущества вы получите с премиум подпиской, можно узнать здесь
Также подписывайтесь на нас в:
- Telegram: https://t.me/gergenshin
- Youtube: https://www.youtube.com/@gergenshin
- Яндекс Дзен: https://dzen.ru/gergen
- Официальный сайт: https://www-genshin.ru