Information
- Rating
- 1,002-nd
- Location
- Москва, Москва и Московская обл., Россия
- Registered
- Activity
Specialization
Бэкенд разработчик
Ведущий
From 550,000 ₽
Golang
Rust
Алгоритмы и структуры данных
Проектирование архитектуры приложений
F#
Функциональное программирование
Я совершенно согласен. Правда, по какой-то причине я ни разу не видел технического писателя ни в одной из команд, где я работал.
Ну, я писал о том, как реально бывает, а не о том, как хотелось бы, чтобы было. Я согласен, что документация должна быть хорошей. Но на практике она почему то везде плохая. Ну, почти везде.
Часто её заставляют писать программистов. А писать документацию надо уметь, и не все программисты умеют. И начинают они с того, что знают лучше всего: с потрохов программы.
Да, согласен. Но здесь у меня перевод, я стараюсь не сильно отходить от оригинального текста. Там у Скотта wrapper type.
В Nix общие библиотеки всё-таки разделяются между всеми программами.
Там есть одно общее хранилище, поэтому, если одна и та же библиотека нужна пяти программам, она окажется в этом хранилище только один раз.
Пассивная агрессия всё-таки вполне объективный термин. Если вы погуглите passive-aggressive behavior definition, то обнаружите на первой странице медицинские и психологические сайты. Даже на странице вики есть ссылки на научные труды.
В то же время toxicity definition ведёт на разного рода интернет-словари.
В этом нет никакой фантазии или каких-то образов с Васей и Петей. Всё довольно приземлённо.
Кажется, что на английском можно не переустанавливать, достаточно добраться до Settings и там добавить английский лейаут.
Через конфигурацию, конечно, тоже можно, просто я не самый большой специалист в NixOS. Как я уже говорил, я программист, мне хватает, когда удаётся написать конфигурацию, которой достаточно для сборки проектов. Как и раньше, могу посоветовать спросить в Tg чате NixOS RU. Там гораздо больше специалистов.
Тоже обратил внимание, что токсичность — понятие субъективное. Если пассивная агрессия, например, это медицинский термин, у которого есть определение, какая-то научная база и полемика, то токсичность — бытовое слово.
Заметил, кстати, что тот, кто больше всех обвиняет других в токсичности --- самый неприятный из коллег. Заставляет задуматься.
По первому вопросу я вам не помогу, у меня опыта с зашифрованными разделами нет. Скорее, всего, вам смогут помочь в Tg-чате NixOS RU.
По второму: сам я ставился с английским языком, потом в GUI зашёл в Settings/Keyboard и добавил там русский язык и раскладку. По умолчанию языки переключаются через Win+Space, но клавиши можно поменять.
Я менял через командную строку, потому что "моя" комбинация не ставится через GUI. Делал вот по этому ответу на Ask Ubuntu.
Да, обычно создают файл shell.nix, где получают пути к деривациям (пакетам) по именам.
Далее можно их добавить в существующие переменные окружения, либо описать новые. Я не силён в gcc, кажется, он использует переменные
C_INCLUDE_PATHиCPLUS_INCLUDE_PATH.Затем в каталоге запускаете nix-shell, выполняется shell.nix и у вас воссоздаётся нужная среда для разработки.
Да, вопросы можно задать в группе Tg, посвящённой Nix и NixOS: https://t.me/ru_nixos
Я не на все могу ответить, потому что я программист и у меня конфиги очень простые, буквально на несколько строк.
По первому вопросу — пакеты можно делать самостоятельно, так поступает большинство разработчиков. Для этого надо освоить язык программирования Nix и разобраться в деталях.
Есть неофициальная документация по этому вопросу, Nix Pills. Сейчас я её перевожу и публикую здесь на Habr. Можете прочитать быстро в оригинале, если владеете английским, или подождите, где-то в течение пары месяцев я закончу.
По второму вопросу — но машине одно хранилище пакетов Nix, в каталоге /nix/store, так что пакеты дублироваться не будут. Правда, есть тонкость. На обычных дистрибутивах, чтобы использовать Nix, надо зайти под пользователем nix. На NixOS это может быть действительно многопользовательская система.
С другой стороны, вам может быть, и не надо именно так детально управлять конфигурацией пользователей. В каждый проект можно сложить по файлу shell.nix. Перед работой запускать nix-shell, а по окончании выходить из него. В shell.nix описать, какие именно пакеты нужны для работы. Это окружение смогут разделить все участники проекта.
Давайте так. Этот цикл переведу, за ним можно и flakes.
Обычно пакеты адаптируют к подходу Nix. Вы можете зайти сюда: https://search.nixos.org/packages и поискать там нужный пакет. Если он есть, то он адаптирован для работы в Nix. Конечно, конфиги не складывают в /etc/pkgname. Можно для конкретного проекта написать скрипт на языке Nix, который создаст конфиг, и этот конфиг будет доступен через переменную окружения. В других проектах будут свои скрипты, которые будут создавать своё окружение.
Преувеличиваю, конечно. Но мне сказали, что писать надо провокационно, иначе читать никто не будет. ?
Спасибо за спасибо! Очень приятно читать такие отзывы.
Не думали о карьере деврела? ?
Вы очень здорово расписали складскую задачу. Я бы тоже упор делал на алгоритмы, на численные методы и вот это вот всё.
А вот как раз вышла: https://habr.com/ru/company/itbrand/blog/721016/
Материал проработанный. Спасибо, теперь попробую этот Schema Registry куда-нибудь прикрутить и пощупать.
Здорово, что нашли. :) Осенние конференции сейчас и правда активно приглашают докладчиков.
В статье рекомендуется другая книга — Clean Archicteture.