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.

Комментарии

Оставить комментарий

  • (или OpenID)
  •