Know thy tools: Linux (операционная система) 28 сентября 09
Начинаю цикл обзора моих рабочих инструментов. На это меня натолкнул пост Джеймиса Бака про то, что свои инструменты надо не просто знать – в них нужно разбираться.
Будет ли это оффтопиком? Да нет, конечно! Я же о веб-разработке буду писать. Думаю, коллегам понравится.
Обзор будет из четырех частей: 1) преимущества предмета; 2) недостатки; 3) почему я использую именно его; 4) как узнать о нем что-то новое. Естественно, все это субъективно, прошу комментировать, критиковать и подвергать сомнению.
Начну я с операционки, то есть с Linux (клиентской операционки). Я работаю на Ubuntu Linux 9.04.
Какие преимущества у Linux?
Основной плюс – то, что Linux установлен на всех серверах, с которыми я имею дело. Это значит, что любой софт, с которым придется столкнуться на сервере, я могу использовать локально. Ваще любой – утилиты, веб-серверы, почтовые серверы, jabber-серверы – все, что угодно. Это невероятно удобно, и к тому же позволяет баловаться всякими новыми штуками.
Еще в Linux очень удобный парк программ – хочешь, из репозитариев ставь, хочешь, компилируй, благо gcc вездесущ. Получается так: интересные мне программы я могу собирать из самых свежих исходников, а неинтересные обновляются без моего участия.
Какие недостатки у Linux?
Кривой GUI. Пример из жизни – у меня NetBeans не сглаживает шрифты. Им невозможно пользоваться.
Отсутствие некоторых специализированных программ. Например, IDE для Symbian – Carbide C++ – на Linux не работает, я уж молчу про Windows Mobile. То же самое с Nokia PC Suite. То же самое с Motorola Phone Tools.
Мало полноценных игрушек. Да что там, их практически нет. Выбирать игры по их доступности в Linux – маразм.
Почему я использую для веб-разработки Linux, а не другую ОС?
ОК, «другая ОС» – это Windows. Об OSX я знаю чуть больше, чем о балете, об остальных меньшинствах еще меньше. Поэтому буду сравнивать с Windows.
Я ушел на Linux после того, как один из билдов Windows 7 отказался запускать мой coLinux. (coLinux – это средство для виртуализации Linux). Да и вообще, виртуализированный Linux не очень удобный – например, нет простого одновременного доступа к папкам.
Почему именно Linux? Во-первых, в Linux есть нормальная поддержка Ruby, а в Windows нет (скорее наоборот – в Ruby нет поддержки Windows, ну ты понял). Мало того, что работает он быстрее, так еще и нет проблем с расширениями, требующими компиляции.
Во-вторых, в Linux лучше стирается грань между своим компьютером и сервером. Можно использовать локально и на сервере одни и те же команды, одни и те же скрипты и утилиты. Можно монтировать удаленные папки и работать с ними, как с локальными. Пропадает необходимость «говорить на двух языках».
Почему Ubuntu, а не другой дистрибутив? Да первый под руку попался, плюс репозитарии у него большие. Последнее время подумываю о Debian, но и в убунте меня все устраивает.
Что нового можно узнать об ОС?
Тут все просто: берешь какую-нибудь задачу, которую делаешь часто, и находишь или пишешь для неё скрипт. Попутно учишься. (Недавний пример: перевел дату у пары сотен фотографий с помощью утилиты jhead.)
А еще надо попробовать OSX для расширения кругозора. Хакинтош установить, что ли.
Следующий на очереди – обзор Vim.

Подписаться на RSS

Комментарии
Насчет отсутствия руби под виндой:
http://antoniocangiano.com/2009/08/03/performance-of-ironruby-ruby-on-windows/
http://antoniocangiano.com/2009/08/04/a-faster-ruby-on-windows-is-possible/
http://antoniocangiano.com/2009/08/10/how-much-faster-is-ruby-on-linux/
Вот бы он еще REE замерял, которым я пользуюсь.
Если бы вот я занимался исключительно веб-разработкой, у меня было бы больше шансов перетащить свой зад с мастдая, а так… 3D max, Photoshop… куда я без этого денусь, а иногда и поиграть хочется.
И да, с шрифтами в линуксах это фейл :(
OS X хороша. Чего только стоит Текстмейт. Ну и конечно же, есть фотошоп и прочие радости жизни
ну а по шрифтам она впереди планеты всей.