Скидки до 20% + 2-ая профессия бесплатно и подарки на 50 000₽

Главная | Все статьи | Дневник студента

Как я научился не волноваться и полюбил Linux

Время чтения статьи ~5 минут
Статья написана студентом Хекслета. Мнение автора может не совпадать с позицией редакции
Как я научился не волноваться и полюбил Linux главное изображение

Всем привет, меня зовут Илья Казямов и я обучаюсь на Python-разработке в Хекслете.

Эта история начнется мрачно, как сериал Венсдей, но в конце будет хэппи энд. Я начал обучение 30.06.2022 года и на самом деле это был не первый курс по Python.

Итак, предложения пересесть на Линукс/Мак высказывались в комьюнити Хекслета несколько раз с начала моего обучения. Сначала меня это приводило в бешенство.

Потому что до этого купил легкий и тонкий ноутбук под Windows, который мне нравился. А перед продажей курса мне никто не сказал, что код на Python запускают в основном на Линуксе.

Вариантов было несколько:

  1. Купить мак.
  2. Поставить WSL. Это система Linux, которая работает внутри Windows как виртуальная машина.
  3. Поставить Ubuntu второй ОС, которое называется Dual Boot.

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

Я решил поставить WSL, потому что ставить еще одну операционку слишком радикально. В чем прикол терять лицензию винды. Так как это был мой первый опыт работы с линукс, работа с консолью не была идеальной, но мне понравились фишки линукса, вроде автодополнения.

Проблемы WSL + PyCharm

Потом начались проблемы — запуск кода не работал в редакторе PyCharm, потому что poetry, установленный в WSL, и poetry, установленный в Windows, это две разных программы. У меня встали две разные версии, и началось веселье с тем, что ломалось виртуальное окружение при запуске в PyCharm. Потому Community-версия не умеет работать с WSL и открывать проекты удаленно. (Тут я опущу момент, как скачал пиратку Pro версию с торрентов, спойлер, она не работает нормально, даже не пытайтесь). Потом кто-то в чате сказал, что можно получить лицензию через куратора и спустя пару часов у меня уже был легальный ключ от PyCharm Pro.

В итоге, это все равно не заработало. PyCharm Pro создает соединение с WSL около 10-15 минут на моем компьютере.

Переход на VS Code

Я не верил, что разработка это такое страдание. И я решил попробовать VS Code. Так вот тот же проект открывается за 3-5 секунд. Все коннектится к WSL без проблем и работает быстрее.

PyCharm — хороший редактор, но не подходит для разработки в WSL. (Потом я попробовал его в Линуксе, скорость подключения оказалась быстрее, но все равно медленнее, чем VS Code).

На самом деле удивительно, как комфорт при разработке влияет на выбор ОС и редактора.

Все было прекрасно, до момента, когда я не попробовал сделать пет-проект с графическим интерфейсом. Я понял, что пора кардинально что-то менять, погуглил как установить Ubuntu с флешки. И вот вечер, я сижу на диване и ставлю второй системой Ubuntu 22.04.

Ubuntu выглядит как MacOS

Это первое, о чем я подумал, после запуска системы. Конечно, это была лишь подобия MacOS, с быстрыми клавишами из Windows. Но вы целом выглядело приятно. Я погрузился в установку и настройку, а после с головой ушел в написание кода. Единственным минусом было, что ноут стал работать 4-5 часов от батареи, когда под Win 10 его хватало на 8-10 часов.

Все шло гладко до одного момента. Спустя 4 дня работы на Убунту я начал замечать, что у меня начались головные боли. На следующий день они стали сильнее, еще через день я просто не мог ее терпеть. Я начал разбираться в ситуации, и заметил, что боковым зрением вижу мерцание экрана. Я решил сделать передышку и день поработать на Винде. Спустя 10 часов, головная боль прошла. Я начал гуглить, что может быть не так, ставил различные драйверы, менял настройки xrandr, но ничего не помогало, к концу дня у меня снова была головная боль.

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

Я не трушный программист

Поняв, что здоровье мне дороже, а время слишком ценно, чтобы искать, в чем причина такого неприятного мерцания экрана я решил удалить Ubuntu. Забил на то, что я не похож на трушного разработчика и продолжил разрабатывать в VS Code + WSL.

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

И вот, я снова полез в интернет, чтобы погуглить, что такого красивого и быстрого есть из дистрибутивов Linux.

Debian 11, приключение на 20 минут

В итоге, после одной из статей, я остановился на Debian. Выделил на диске часть размером 20 Гб под установку, чтобы не тратить много места на этот эксперимент. И оставил еще пару таких частей, для других, таких как elementaryOS и Mint.

Эмоции были неоднозначные. Сначала порадовали команды для программ, которые вызывались через Alt + F4, очень круто. Потом начались опять какие-то проблемы. Контекстное меню вызывало ошибку. После недолгих гуглений, я понял, что выбрав минимальную установку, экономя место, я создал себе эти ошибки.

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

С другой стороны, у меня не болела голова, глаза не утомлялись, а значит, что Дебиан в чем-то отличался от Убунту. А батарея держала до 13 часов работы от батареи. Тут я решил дать шанс с себе и Линуксу познакомиться поближе. И часть очарования Дебиан пропало, вместе с ошибками контекстного меню.

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

Почему стоит попробовать Линукс

Как человек, который пользовался виндой больше 10 лет, я не буду говорить про преимущества настройки, свободного ПО и прочих вещей. Я фанат красивых интерфейсов и работоспособности из коробки. У Линукса с этим проблемы, так же как и с прерывистым рендрингом страниц. Но в остальном — это операционка со своим особым очарованием, которым я проникся. Я рекомендую хотя бы попробовать, возможно, вам это понравится. А чтобы это было не так тяжко как у меня, вот мой Makefile, в нем набор команд, чтобы поставить все, что необходимо для разработки по Python.

Спасибо, что дочитали до конца.

Буду рад вашей обратной связи в комментариях :)

Аватар пользователя Ilia Kaziamov
Ilia Kaziamov 28 марта 2023
6
Похожие статьи
Рекомендуемые программы
профессия
Верстка на HTML5 и CSS3, Программирование на JavaScript в браузере, разработка клиентских приложений используя React
10 месяцев
с нуля
Старт 26 декабря
профессия
Программирование на Python, Разработка веб-приложений и сервисов используя Django, проектирование и реализация REST API
10 месяцев
с нуля
Старт 26 декабря
профессия
Тестирование веб-приложений, чек-листы и тест-кейсы, этапы тестирования, DevTools, Postman, SQL, Git, HTTP/HTTPS, API
4 месяца
с нуля
Старт 26 декабря
профессия
Программирование на Java, Разработка веб-приложений и микросервисов используя Spring Boot, проектирование REST API
10 месяцев
с нуля
Старт 26 декабря
профессия
новый
Google таблицы, SQL, Python, Superset, Tableau, Pandas, визуализация данных, Anaconda, Jupyter Notebook, A/B-тесты, ROI
9 месяцев
с нуля
Старт 26 декабря
профессия
Программирование на PHP, Разработка веб-приложений и сервисов используя Laravel, проектирование и реализация REST API
10 месяцев
с нуля
Старт 26 декабря
профессия
Программирование на Ruby, Разработка веб-приложений и сервисов используя Rails, проектирование и реализация REST API
5 месяцев
c опытом
Старт 26 декабря
профессия
Программирование на JavaScript в браузере и на сервере (Node.js), разработка бекендов на Fastify и фронтенда на React
16 месяцев
с нуля
Старт 26 декабря
профессия
Программирование на JavaScript, разработка веб-приложений, bff и сервисов используя Fastify, проектирование REST API
10 месяцев
с нуля
Старт 26 декабря
профессия
новый
Git, JavaScript, Playwright, бэкенд-тесты, юнит-тесты, API-тесты, UI-тесты, Github Actions, HTTP/HTTPS, API, Docker, SQL
8 месяцев
c опытом
Старт 26 декабря