Linux, Windows или macOS: что выбрать программисту — отвечают эксперты
У каждой ОС есть свои плюсы, минусы и особенности, и как правило программисты выбирают ОС на основе своих предпочтений и представлений. Но что, если отбросить личные симпатии и попытаться взглянуть объективно: какая ОС даёт больше всего преимуществ программисту? Мы задали этот вопрос экспертам, и вот что они ответили.
Выбор ОС в первую очередь зависит от того, в какой области разработчик работает, а ещё это дело привычки и субъективных представлений об удобстве. Я веб-разработчик и успел попробовать несколько операционных систем. Вот мой личный рейтинг удобства ОС именно для разработки веб-решений.
Первое место — macOS. Практически всё идеально, могут возникать проблемы с Docker, поскольку не всегда оптимально используются ресурсы (бывает >= 70 % CPU). Но это мелочи. macOS — это практически идеальный баланс между ОС для работы и для повседневных задач.
Ещё одно первое место — Ubuntu/Mint (и другие Linux-дистрибутивы). Именно для разработки я считаю это семейство ОС лучшей. Из плюсов перед macOS — близость к production-окружению, «нативная» работа Docker. Из минусов — всё-таки иногда всплывают ошибки, которые без консоли не поправить (пример, проблемы со звуком), ну и софта гораздо меньше.
Второе место отдам Windows. Здесь можно спокойно вести разработку. При наличии такого софта как Docker или Vagrant многие проблемы можно легко обойти. Чего мне действительно не хватает в Windows, так это нормального терминала (ConEmu, Git Bash и другие не в счёт). Зато софта под эту ОС гораздо больше, чем на Ubuntu или macOS.
В качестве заключения отмечу, что всё-таки выбирать стоит ту ОС, в которой разработчику привычнее и комфортнее работать. Если всё в операционной системе устраивает, то переход на что-то другое вызовет лишний стресс и трату времени на изучение возможностей новой ОС. В конце концов, в ту же Windows потихоньку внедряется WSL.
инженер-программист компании ICL Services
На вопрос, какую операционную систему выбрать для программирования, в большинстве случае нет чёткого ответа, т. к. это больше субъективный выбор каждого человека: как по удобству взаимодействия с самой системой, так и с используемыми инструментами для разработки. Большинство популярных языков и сред разработки в основном присутствуют на всех платформах.
Конечно, есть немало случаев, когда выбор ограничен. Например язык программирования плохо адаптирован под конкретную операционную систему или требуется конкретная платформа для выполнения, тут стоило бы или даже необходимо использовать то, что есть.
Если ограничений нет, то, я считаю, самый правильный выбор — попробовать каждую из систем, для того чтобы решить, что же конкретно тебе удобнее. У каждой системы есть как плюсы, так и минусы: где-то удобнее разворачивать среду и работать с ней, где-то есть более удобные инструменты разработки и т. д., поэтому говорить, что для веб-разработки нужна обязательно macOS или для разработки на .net core нужен Windows, я считаю, неправильно.
Также для нашей страны актуален вопрос цены рабочей машины. Например, для многих, а тем более для начинающих, продукты компании Apple могут показаться дорогими при прочих равных. У компьютеров на Windows или Linux ценник более доступный.
Если подытожить, то если нет ограничений на выбор системы, советую попробовать все системы и выбрать ту конфигурацию системы и инструментов, которую удобно использовать именно вам.
декан профессии «Программист С++» образовательного портала GeekBrains
В первую очередь нужно быть уверенным, что инструмент, с которым человек будет работать, удобен. А операционная система — это инструмент и ничто иное. Если говорить о выборе операционки, то неплохо было бы сразу знать, где ваше приложение будет в дальнейшем крутиться. Если человек предполагает разработку под операционную систему OS X (под MacBook, iOS, iPhone, iPad), то ему обязательно нужен опыт работы в macOS и собственно сама OS X, потому что все остальные операционки хоть и поддерживают языки Swift и Objective-C, но на довольно слабом уровне. Инструментарий разработки под OS X внутри OS X хорошо настроен и нативен.
Дальше у нас встает извечная борьба между Windows и Linux. Начинать холивар, я думаю, смысла нет. Если у пользователя есть привычка работать в Windows — то имеет смысл в этой операционной системе и оставаться, так как в принципе, 80 % задач разработки можно закрывать в Windows. Если хочется попробовать что-то другое — это, бесспорно, Linux. Желательно делать Linux на виртуальной машине, чтобы не потерять своё текущее окружение, но иметь возможность «пощупать». Очень много всякого софта для разработки написано под обе операционки, тут тоже стоит сразу оговориться, что если предполагается разработка на Android — то надо быть по крайней мере знакомым с операционной системой Linux. Необходимо представлять, что это за окружение, как оно работает, знать про открытые драйверы, системные настройки, потому что Android — это тоже Linux.
Есть специализированный стек разработки под Windows: это разработка под Active Directory, разработка разнообразных протоколов, разработка под Microsoft Office и прочие штуки. Понятное дело, что с Microsoft Office перейти на Linux будет нельзя, под него стопроцентно нужен Windows. Тут встает вопрос лицензирования. Если у человека всю жизнь был Linux, то ему не с руки покупать лицензию, которая условно стоит 8 000 рублей. Поэтому в большинстве случаев пользователи остаются на Linux.
Я, в свою очередь, несмотря на то, что веду свои уроки с макбука, активно пропагандирую Линуксы разного рода: это и всякие попсовые Debian и Ubuntu, разного рода Arch Linux, даже Red Hat и прочее, прочее. Соответственно, если у вас есть какие-то опасения, то стоит помнить, что инструментарий на Linux такой же, как на Windows, то есть все среды разработки (всё, что не касается Microsoft Visual Studio) портированы и работают кроссплатформенно. Для новичка будет несложно сориентироваться, главное, не надо сразу начинать лезть в консоль или жить в терминале и пугать себя.
ведущий frontend-разработчик TalentTech
Выбор операционной системы, как правило, происходит на усмотрение самого программиста. Это дело вкуса — кому-то нравится macOS, другие считают Linux топовой системой. Одно важное условие: если ваш продукт будет иметь дело с iOS, то поле выбора ограничено — тут не обойтись без macOS. Иначе ничего не получится, если только разработка не идёт на удалённых серверах. Также эта система считается более user-friendly. То есть все мобильные разработчики, чьи продукты будут запущены в AppStore, не имеют другого выбора, кроме Mac.
Веб-разработка менее требовательна к ОС. Лишь два браузера – Explorer и Safari являются специфическими: первый будет работать только на Windows, а второй – на Mac. Когда разработчику нужно тестировать то, что он разработал, — ему понадобится соответствующий браузер.
Linux считается немного более сложным вариантом — она также бывает простой в использовании, но есть и «хардкор-версия», она скорее для тех, кто «пишет» драйверы и в целом больше работает с «железом». Преимущество этой системы в том, что можно собрать её целиком «под себя» и иметь над ней полный контроль. Это сложнее, требуются мозги и навыки, но использование в таком случае будет немного производительнее.
Разработка игр, как правило, происходит на кроссплатформенных системах. А вот приложения backend-разработчиков чаще выпускаются на Linux, соответственно будет удобно держать именно эту систему на своей машине разработки — это может быть и локальная машина, и нет. Часть разработчиков работает на удалённых серверах, а их локальная машина — это по факту просто интерфейс доступа.
Также если вы привыкли работать на macOS, то будет довольно трудно «переключиться» на Windows, и наоборот. То, чего на Mac можно добиться простыми действиями, на «винде» делается сложно.
разработчик в Kodix Auto
На такой вопрос сложно дать однозначный ответ. Скорее, это больше зависит от предпочтений разработчика. Но очевидно следующее:
Прежде всего следует разобраться, в чём отличие Unix от Windows, и выбрать то, что нравится и больше подходит. Писать хороший код можно везде. В этом вопросе нет серебряной пули, и это самое главное, что нужно понимать начинающему разработчику.
Итак, кому какой системой стоит пользоваться?
Всё зависит от двух вещей: что вам удобно и чем вы занимаетесь. Например, если вы разрабатываете iOS-приложения, то вам придётся пользоваться macOS; если вы пишете бэкенд и сервер крутится на Linux, то, скорее всего, на нём вам и удобней будет работать. Если не принимать во внимание завязанные на конкретной платформе стеки разработки, то всё зависит от ваших предпочтений, ведь очень много софта работает на всех основных системах. Нравится работать в Windows/Linux/BolgenOS? Работайте дальше, если это не ограничивает ваши возможности. К тому же при необходимости в простых случаях можно воспользоваться виртуальной машиной. А переучиваться работать на другой системе просто «потому что» — пустая трата сил и времени.
Почему пора сменить Windows на Linux?
Бесплатно
К сожалению, современные реалии таковы, что для многих людей тот факт, что Windows — платная операционная система, вызывает лишь насмешку. Тем не менее, легальность используемого ПО — необходимость для профессионального программиста, а значит, Linux — это прекрасное решение, как для фрилансера, так так и офисного планктона.
Легко установить и использовать
Если вы ещё только начали постигать азы компьютерной грамотности, то у вас может сложиться неправильное мнение, что Windows — это легко и понятно, а Linux — инструмент для серьезных гиков. Что ж, оставьте это мнение в 90-х. Начиная с установки и заканчивая ежедневным использованием, у вас не возникнет никаких существенных трудностей при работе с Linux. Достаточно лишь взглянуть на привычные вещи иначе.
Свобода
Линуксовые ОС дарят вам невероятное чувство свободы. В вашей жизни станет меньше непрочитанных лицензионных соглашений, вас перестанет беспокоить проблема вирусов, ведь большинство их них заточено под Windows, да и вообще использование Linux приучит вас куда больше к самоорганизации, нежели учёту внешних ограничений.
Поддержка большинства языков программирования
По правде говоря, вы не сможете поработать с Visual Basic под Linux. Или с PowerShell. То есть сможете, но придётся немного поломать голову для поиска возможностей делать это без лишних неприятностей. Зато с C, C++, CSS, Java, JavaScript, HTML, PHP, Perl, Python и Ruby у вас точно не возникнет никаких трудностей. И ещё с огромным количеством менее известных языков. Так что Linux здесь точно не помеха.
Огромное количество ПО
Несмотря на то, что хардкорный программист в фольклоре обычно представляется, как человек, работающий исключительно с консольными приложениями, в действительности на Linux у вас почти такой же выбор, как и на Windows. Программируйте с Eclipse, NetBeans, Zend Studio, bluefish, Komodo, KDeveloper — список IDE и просто полезных программ можно продолжать очень долго. Но я думаю, вы уже поняли, что недостатка в качественном ПО у вас точно не будет.
Не так давно мы писали про администрирование на Linux, вскользь рассмотрев язык Bash. В действительности, это очень интересный и очень функциональный язык, который поможет вам лучше использовать возможности ОС, а кроме того добавит полезную строку в послужной список.
Безграничные возможности
Несмотря на то, что пользователей Windows пока чуть активнее теснит Mac, нежели Linux, именно последний имеет самые большие перспективы в IT-сфере. И речь здесь не только о бесплатности, хотя это тоже важный аргумент. Linux по своей структуре и организации создаёт куда меньше проблем пользователю в ежедневной работе. OpenSUSE, Fedora, Ubuntu, Mint и другие сборки позволяют вам найти себе производительную и функциональную ОС по душе, при этом суть взаимодействия не изменится. Кроме того, линуксовые системы куда проще масштабировать, применяя везде от компактных вспомогательных девайсов до огромных серверных машин.
Потребность
А какую ОС используете вы?
Иногда это вопрос вкуса, а иногда это вопрос профессионального отношения к делу. Если вы ещё используете Windows просто потому, что никогда ничего больше не пробовали, то обратите свой взор на семейство Linux. И вот 8 причин, почему вам может понравиться.
Бесплатно
К сожалению, современные реалии таковы, что для многих людей тот факт, что Windows — платная операционная система, вызывает лишь насмешку. Тем не менее, легальность используемого ПО — необходимость для профессионального программиста, а значит, Linux — это прекрасное решение, как для фрилансера, так так и офисного планктона.
Легко установить и использовать
Если вы ещё только начали постигать азы компьютерной грамотности, то у вас может сложиться неправильное мнение, что Windows — это легко и понятно, а Linux — инструмент для серьезных гиков. Что ж, оставьте это мнение в 90-х. Начиная с установки и заканчивая ежедневным использованием, у вас не возникнет никаких существенных трудностей при работе с Linux. Достаточно лишь взглянуть на привычные вещи иначе.
Свобода
Линуксовые ОС дарят вам невероятное чувство свободы. В вашей жизни станет меньше непрочитанных лицензионных соглашений, вас перестанет беспокоить проблема вирусов, ведь большинство их них заточено под Windows, да и вообще использование Linux приучит вас куда больше к самоорганизации, нежели учёту внешних ограничений.
Поддержка большинства языков программирования
По правде говоря, вы не сможете поработать с Visual Basic под Linux. Или с PowerShell. То есть сможете, но придётся немного поломать голову для поиска возможностей делать это без лишних неприятностей. Зато с C, C++, CSS, Java, JavaScript, HTML, PHP, Perl, Python и Ruby у вас точно не возникнет никаких трудностей. И ещё с огромным количеством менее известных языков. Так что Linux здесь точно не помеха.
Огромное количество ПО
Несмотря на то, что хардкорный программист в фольклоре обычно представляется, как человек, работающий исключительно с консольными приложениями, в действительности на Linux у вас почти такой же выбор, как и на Windows. Программируйте с Eclipse, NetBeans, Zend Studio, bluefish, Komodo, KDeveloper — список IDE и просто полезных программ можно продолжать очень долго. Но я думаю, вы уже поняли, что недостатка в качественном ПО у вас точно не будет.
Не так давно мы писали про администрирование на Linux, вскользь рассмотрев язык Bash. В действительности, это очень интересный и очень функциональный язык, который поможет вам лучше использовать возможности ОС, а кроме того добавит полезную строку в послужной список.
Безграничные возможности
Несмотря на то, что пользователей Windows пока чуть активнее теснит Mac, нежели Linux, именно последний имеет самые большие перспективы в IT-сфере. И речь здесь не только о бесплатности, хотя это тоже важный аргумент. Linux по своей структуре и организации создаёт куда меньше проблем пользователю в ежедневной работе. OpenSUSE, Fedora, Ubuntu, Mint и другие сборки позволяют вам найти себе производительную и функциональную ОС по душе, при этом суть взаимодействия не изменится. Кроме того, линуксовые системы куда проще масштабировать, применяя везде от компактных вспомогательных девайсов до огромных серверных машин.
Потребность
Почему программисты выбирают Linux или использование несколько операционных систем сразу
Сразу хочу ответить на вопрос. Программисты не выбирают Linux только потому что это Linux. Операционная система- это инструмент, с которым работает человек. Не будем же мы использовать пилу, чтобы забить гвоздь или вилку, чтобы съесть суп. Так и разработчики не будут использовать тот инструмент, который им не нужен или с помощью которого нету возможности выполнить ту или иную задачу.
Это миф, что разработчик сидит и работает только на одной операционной системе и не приемлет никакую другую. Хороший программист знает плюсы и минусы инструмента, с которым он работает и выбирает его под свой спектр задач.
Но иногда нужно использовать сразу несколько операционных систем, например, чтобы упростить контроль за базами данных.
Это техническая возможность, которая позволяет при включении компьютера выбирать какую операционную систему загрузить. Это позволяет разработчикам:
Но это не самый лучший вариант использования нескольких операционных систем так как постоянно включать и выключать компьютер нецелесообразно.
Виртуализация позволяет снизить стоимость технического обслуживания, тестировать программное обеспечение и системы и повышает безопасность в целом.
Одно из главных отличий этих операционных систем друг от друга и, наверно, главное для человека с постсоветского пространства заключается в том, что Linux- бесплатный. Вы можете скачать его абсолютно свободно с официального сайта и пользоваться прямо из коробки.
Подход к файловой структуре двух операционных систем в корни отличается друг от друга. В Linux файловая система начинается с корневого каталога в котором подключены все остальные диски и подкаталоги. В Windows преподноситься форма абстракции. Есть диски (C: D: E: F: и т.д)- разделы дискового пространства, в которых и существуют каталоги и подкаталоги программ.
Linux имеет репозитории пакетов ПО. Конечно, можно скачать пакеты, но легче воспользоваться терминалом. Это увеличивает безопасность и скорость работы с системой. В Windows нету репозиториев поэтому приходится скачивать все из интернета.
В Windows существует реестр, где пользователь может все быстро настроить под себя. Все настройки разделены на ветви. В Linux настройки системы находятся в папке /etc/, где пользователь может настроить все, что ему нужно с помощью скриптов. Это позволяет пользователю переносить свои настройки на другие ПК.
Каждая система подходит под свои задачи, которые удобнее выполнять в том или ином виде. Одни люди используют Linux, другие Windows, так что определенная ОС- это дело вкуса и каждому нужно выбирать то, что ему нужно или нравится.
Сражение Linux на поприще Windows
Вступление
Я вот задумался и начал вникать в историю развития Linux, и не заметил ничего странного.
Линус Торвальдс создал ядро, Ричард Столман софт и лицензию, система развивалась и набирала популярность. Так что же мешает?
Маркетинг? Нет, продукт бесплатный,»бери не хочу».
Сложность? Нет. С каждым годом юзер-френдли дистрибутивов становился больше и интерфейсы становятся проще и интуитивные. Т.е. это должно способствовать популяризации. Но тоже нет. (Я не буду поднимать тему Linux и серверов.)
Начнем же дискус
Нет. Главный конкурент, Microsoft и их Windows.
Да у Microsoft не все версии Windows были удачные. Скажем Windows 2.0, Windows ME, Win Vista, Win 8.0/8.1 (хотя я тепло отношусь к 8.1)
Одного отнять нельзя, политика Microsoft была такой, что нужно продвигать продукт так чтобы он был везде, они закрывали глаза на пиратство их ос. Также знали, что пиратство даст привязку пользователя к ос, и он не перейдет на что-то другое. И рано или поздно они купят лицензию.
Более полно описана эта ситуация в этом посте с Хабр.
Почему Windows так популярен и мешает популяризации Linux?
Я свое виденье опишу в виде «воронки» в которую попадают начинающие пользователи ПК.
Человеку (обычный пользователь! прошу заметить) нужен ноутбук/ПК. Он покупает его. И в 90% случаев там будет предустановлен Windows. (Если нет то переходим на «ситуация 2»)
У человека в руках ноутбук. Но он не умеет им пользоваться. Он просит другого человека ему помочь, научить пользоваться этой машиной. Из это получается небольшая вариативность:
Во всех 3х случаях пользователь получает то, что он хочет. Его цель научится пользоваться компьютером выполнена, он выполняет обычные вещи как серфинг интернета и просмотр фильмов.
Вот и получается, что в 2х случаях из 3 практичнее научить пользоваться Windows. Будь то ХР, 7ка, 10ка. Основы будут те же, так сказать научи человека взаимодействию с Windows и он сможет пользоваться компом с Windows. И сев за другой комп он не будет так сильно теряться и сможет пользоваться как и у себя. При условии, что он разобрался и пользуется тем же или похожим софтом дома.
Как обстоит ситуация но со стороны Linux?
А научи человека Linux, то, то чему ты научишь его в начале, будет с ним надолго. Нужно иметь ввиду, что есть такой синдром Утенка «Что первое увидит, то и мама». В нашем случае, чему научился в начале то и правильно, и от этого человек будет в дальнейшем отталкиваться. И тут можно сильно зафейлиться.
Научи человека как пользоваться Ubuntu на Gnome3, XFCE, MATE, Unity, так он и будет знать, только как пользоваться ПК только с похожим окружением. А все прочее будет ему чуждо. Спасает обстановку Cinnamon и KDE. Но не панацея, от всех бед.
А представьте человека севшего за Windows ПК, при условии, что он с самого начала и до этого момента (скажем месяца 3) пользовался только Ubuntu 20.04 на Gnome 3. Получится вот такая сценка (карикатурная):
У человека будет кардинальный диссонанс, шок и паника.
А ему ответ.Что-то вроде.
-Так это у всех так, почему у тебя не так? Что у тебя пишет при запуске компьютера?
-У меня Ubuntu, но программы те же что и у тебя.
— У тебя что? буну? Что это? Это заразно? (если вы поняли иронию). У нас «шиндоус» и у всех моих знакомых «шиндоус».
И ему будет 2 пути:
больно и отвратно вернуться домой и переучиться на Windows.
вернутся домой и продолжить пользоваться Ubuntu, но попутно изучая Windows по курсам, видео на YouTube и т.д.
Правильно, он снесет Ubuntu и поставит Windows.
Для абсолютно нового человека в компьютерах, Linux с экстраординарным окружением диковинным, но другого же он не видел и сравнить не с чем, и переучивание будет подобно пытке.
Я обошел этот момент просто.
Как обстоял переход с Windows на Linux. У меня в семье.
У меня было ситуация когда комп осаждали спамеры и вирусы из-за слабого знания ИБ моими родными т.е мама,папа, племянник лет 10. Сначала я объяснил моим родным работу с Win 7, и как, что, где нажимать. Они преимущественно серфили интернет и как это обычно бывает, жали на все, что видят. Когда они освоились, решил подменить 7ку на Kde neon. Убрал лишнее, заблокировал рабочий стол и оставил систему для домашнего пользования. На быстрый взгляд замечают, что я сменил только тему, но расположение панелей тоже. А мне во много меньше геморая с вирусами, антивирусами, софтом, кэшем и прочим. А то надоедало каждые полгода переустанавливать Windows, потому что, кто-то что-то нажал и все перестало работать.
Круг замкнулся.
И что в итоге?
И какое же место занимает в этом круговороте Linux?
Это как «Поворот не туда», кто-то попадает случайно, а кто-то специально попадает в этом мрачный и страшный мир (нет).
И чтобы попаcть в этот мир осознанно, нужно любопытство, жажда новизны, терпение и умение преодолевать трудности. А это присуще не всем рядовым пользователям ПК.
Это уже другой пласт людей. Продвинутые пользователи.
Лучше всего отличие рядового пользователя от продвинутого было описано в этой статье тоже с Хабр. Мои мысли о отличиях межу этими людьми, я опишу в следующей статье.
Буду рад любой конструктивной критике.
Спасибо за прочтение.
В чем преимущества *nix, linux перед windows (для веб разработчика)?
Оценить 10 комментариев
1. вы получаете окружение близкое или идентичное к продакшену.
2. вы получаете внятную консоль/шел из коробки.
3. вы избавляетесь от массы вопросов типа «на локалке все работает, а залил на сервер и получил жопу» (или наоборот).
4. у вас появляется более лучшее понимание как на сервере все работает.
при теперешнем развитие технологий и производительности железа, нет необходимости себя ломать.
можно попробовать в виртуалке (docker/vagrant)/дуалбуте и самому для себя решить стоит или нет.
Нету никаких проблем.
Если только ваше конкретное используемое для ваших задач ПО нормально работает с Windows.
Например, в моем случае используется Ansible и Docker, который не поддерживается на Windows. Приходится использовать Vagrant. Это достаточно удобно. Но ресурсы все же кушает.
Microsoft это тоже понимает.
И вот уже они встроили подсистему Linux Ubuntu в Windows 10. Это не виртуализация, а именно полноценная подсистема.
Но дело в том, что даже если вы сидите на Ubuntu Desktop, то ваша среда серьезно отличается от среды сервера FreeBSD, CentOS, Debian, Ubutntu Server. И для полноценного CI все равно умные дядьки категорически рекомендуют и на Linux даже использовать Docker для полноценной эмуляции.
Но ведь Docker-то можно использовать и на Windows. Правда, запускается он там подольше.
Другое дело, что разворачивать и тестировать нужно под аутентичным операционным окружением.
Неважно под Ubuntu ты сидишь или под Windows.
В этом случае под твоей любимой ОС работает только текстовый да графический редактор. А все развертывание для тестирования и для продакшн проводится в совсем другой среде.
Евгений:
Зачем? Я использую CI в полный рост.
Эмуляция серверного окружения развернута в Docker. И только там проходит и получение артефактов и тестирование и разворачивание.
Александр Борисович: Не имеет значения, что там тормозит с PHP на Windows. Для разработки хватает. Вы же один, а не 100500 запросов шлете на сервер, как при работе PHP в production. В production, разумеется, это все запускается на *nix.
АртемЪ:
Во, первых: Jump АртемЪ @Jump
Александр Борисович: А разве веб разработчик работает на PHP?
Во вторых, это во первых. 
В третьих, ты не понял смысл того что я написал.
Производительность сайта особенно тяжелого да еще и на CMS, зависит от ресурсов которые получают от сервера. Узкое место процессор при большом кол-ве запросов к закешированным страницам.
Узкое место дисковая подсистема, при большом кол-ве запросов к БД.
Не говоря уже про частоту ОЗУ.
Пример из жизни. Сайт компании тормозит. Разработчик говорит, что железо не тянет, хотя оно и слабое, но админ следил за бенчами сайта и видел что раньше по бенчам сервер мог отдавать 50 страниц в секунду, сейчас отдает 10 страниц. Разработчика тыкают носом, он идет исправлять свой косяк и на следующий день все нормально работает.
Так как обьяснить разработчику, что у него руки не из того места растут? А не сервак плохой.
Увеличивать производственные мощности с индуским кодингом можно до бесконечности.
С учетом того что у разработчиков, так же как и у админов 80% люди с манией величия. ))))
В четвертых, бенчи очень важны особенно для связи админа и разработчика.
Даже простым циклом можно уменьшить производительность работы сайта. Особенно если страница не статична и получает данные из БД.
И в принципе все сайтик пошел подумать, отвалится сессия по таймауту 
А если подобную хрень запустят 1000 человек или 10000 тысяч.
Производительность зависит от железа и настроек когда ты изучаешь в первый раз как настраивать всю систему в целом. Потом на новые проекты ты уже берешь свои наработки, ведь в первый раз ты доводишь до ума все. Этакая эмуляция серебрянной пули, ты в неё веришь, а её нет. Да и можно на ты, а то Вы Вам, пользователи хлебопечки не меняются, активные одни и теже 
Несколько компаний вернулись с Ubuntu обратно на Windows.
Стоимость Windows смехотворна по сравнению со стоимостью поддержки Ubuntu.
Но еще начиная с Windows 7 прекратил переустанавливать Windows. Делаю просто накатывание нового образа на диск. Это на десктопе.
На серверах ситуация еще стабильнее. Накатываю без переустановки образ еще с 2004 года. Все работает без переустановки 12 лет.
Linux надежнее, но обновления у нее нестабильные и несогласованные.
Единоразовый платеж что-то около 2000 рублей при покупке с новым компьютером. Никто не заставляет ничего покупать в Windows Market. Я в него и не заходил ни разу.
При эксплуатации на предприятиях стоимость поддержки Linux намного выше. Админы требуются более высокой квалификации. Речь не идет о банальной установке Ubuntu и LibreOffice Writer. Для примера:
Решите задачку: единый вход пользователей в Linux, тот, что в Windows с полпинка любым средней квалификации админом решается через включение Active Directory.
Вот тут-то и начинают капать денежки в карман не Microsoft, а местным админам. Это, строго говоря, хорошо. Но вот только аппетиты местных квалифицированных админов в десятки раз больше, чем у Microsoft.
Причина другая. Microsoft сделал очень стабильную Windows. И не хочет поддерживать старые версии.
Не думаю, что вам самому было бы интересно продать много лет назад старую версию своей программы/сайта, получить разовые деньги и этого и продолжать её поддерживать. Вы бы и сами предпочти сосредоточиться на развитии только одной новой версии.
В чем преимущества *nix, linux перед windows
Не переставлял Windows на серверах с 2004 года.
Миграция на новое железо делалась 4 раза. Копированием образа диска, без переустановки.
Работает до сих пор прекрасно.
Что я делаю не так?
Хотя на windows это делается как правило проще, и не требует специальных знаний.
Хотя на windows это делается как правило проще, и не требует специальных знаний.
Есть, например, парсер сайта на питоне, который базируется на lxml. Вот с виндой ты должен будешь новый парсер писать, потому что lxml не сможешь собрать под винду. Пока ты будешь писать новый парсер, я буду передавать собранные данные дальше по цепочке даже не в БД, а другому скрипту.
Не переставлял Windows на серверах с 2004 года.
abcd0x00: Ничего не понял. С чего бы это я кому-то стал должен? И нафиг мне собирать парсер под винду? Я парсеры пайтоновские обычно под дебианом запускаю.
Не пойму что вы этим хотели сказать.
abcd0x00:
«А что, надо что-то где-то когда-то переставлять? Неужели в 21-м веке существуют такие непродуманные системы?»
Милок, за 12 лет репы по 5 раз у linux отваляться
)))
АртемЪ:
> Хотя на windows это делается как правило проще, и не требует специальных знаний.
Люди уже столько лет сидят на Ubuntu, что выросло уже новое поколение, которое не умеет ручками и в Linux.
И нафиг мне собирать парсер под винду? Я парсеры пайтоновские обычно под дебианом запускаю.
А как ты откатишь винду, если она сломается?
Милок, за 12 лет репы по 5 раз у linux отваляться
Далеко ходить не надо.
Используем Yandex.Cocaine. Штука хорошая, написана и поддерживается серьезной конторой.
abcd0x00:
> В винде же поставишь какой-нибудь софт (а необходимость в этом есть с самого начала) и из него тебе прямо в службы пролезет какая-нибудь очередная рекламная фигня, прочно там сядет и будет советовать куда-нибудь сходить из своих dll-шек.
Для меня «работаю я» означает, что я сижу на кухне и пью чай, а работает скрипт от моего имени, написанный мною. Так вот, чтобы их писать и запускать, нужно иметь всю инфраструктуру. Не просто так я привёл lxml, этот модуль очень удобный, а на винде он без проблем не собирается.
И про дебиан здесь вариант не прокатит, потому что ты пришёл, а там голая винда, а у тебя ни мячика, ни ракетки. Даже если у тебя живая флешка в кармане, то на ней что?
Во вторых, если она сломалась, кто мешает откатить к прежней контрольной точке?
А ты не откатывал 
Да это были кодеки для промотра неизвестного видеоформата. Вместе с кодеками пролезла хрень в службы. И ты это никак не пресечёшь, потому что виндовая фирма не предоставляет все эти средства. Приходится искать сторонние, которые могут содержать в себе что угодно.
Приведи пример ПО, которое ты обновляешь.
Используем Yandex.Cocaine. Штука хорошая, написана и поддерживается серьезной конторой.
Ну, это ты преувеличил. Яндекс ещё не вышёл на международный уровень в разработке.
Поддержки Windows, к сожалению, нет, и не планируется, но это не значит, что пользователи, например, C# не смогут воспользоваться облачными сервисами, которые крутятся где-то в другом месте — достаточно написать подходящий фреймворк (что это такое будет рассказано далее).
Странно, да? Такую хорошую систему если и поддерживают, то в последнюю очередь.
Да это были кодеки для промотра неизвестного видеоформата. Вместе с кодеками пролезла хрень в службы. И ты это никак не пресечёшь, потому что виндовая фирма не предоставляет все эти средства. Приходится искать сторонние, которые могут содержать в себе что угодно.
1. Не бывает неизвестных форматов. По заголовку файла можно опеределить название формата. И поставить вполне конкретный кодек.
2. Не ставлю кодеки уже лет 5. Media Player HomeCinema, скачиваемый только с официального сайта, все понимает.
Приведи пример ПО, которое ты обновляешь.
blackhole library, например.
Ну, это ты преувеличил. Яндекс ещё не вышёл на международный уровень в разработке.
Странно, да? Такую хорошую систему если и поддерживают, то в последнюю очередь.
Мы обсуждаем десктопную ОСь чисто для рабочего места разработчика.
А ты приводишь в пример описание чисто серверного ПО.
Так в лине-то можно сидеть на эквивалентных релизах и всё будет работать, как часы, без всяких обновлений.
На клиенте у Linux все гораздо хуже. Например, попытайся установить современный Firefox. Тебе потянет такие зависимости, что в конечном итоге приведут к несовместимости ядра (через графические библиотеки, например) или к возможности работы графики X11 только в тормознейшем режиме эмуляции VESA.
В винде же что-нибудь надо будет починить (исправить), а для этого надо будет поставить Internet Explorer, потому что без него хелп не читается к какой-нибудь вспомогательной программе. Как-то завис так с установкой одной программы, когда необходимо было поставить кучу ненужных компонентов, которые к ней вообще не относятся, иначе без них она не ставилась. И среди них был Internet Explorer, который мне вообще нафиг не нужен.
1. Не бывает неизвестных форматов. По заголовку файла можно опеределить название формата. И поставить вполне конкретный кодек.
2. Не ставлю кодеки уже лет 5. Media Player HomeCinema, скачиваемый только с официального сайта, все понимает.
Это если ты только киношки смотришь в распространённых форматах. Если же это специальный формат какой-то или просто редкий или очень новый, то распространённые кодеки могут его не знать и тогда выбирать особо не из чего. А при поиске может быть найден пакет, который вместе с кодеком включает ещё какую-то нагрузку. Ну, и бывают люди, который заражают на чужих сайтах софт своими пэйлоадами; где-то даже дистрибутив линукс заразили, но быстро обнаружилось. А сколько скрытых таких?
Даже ребята из угасающего Рамблера давным-давно уже там (ngnix).
Мы обсуждаем десктопную ОСь чисто для рабочего места разработчика.
А ты приводишь в пример описание чисто серверного ПО.
На клиенте у Linux все гораздо хуже. Например, попытайся установить современный Firefox.
А зачем? Несовременный почти не отличается от современного. Или тебе расширения нужны?
Главное, что в том старом виде его можно юзать и сегодня. А в винде так нельзя, выпадет браузер, потому что сделан по принципу костылей на костылях.
Причем зависимости просто ужасные. Ну скажите, зачем мне при установке vim к текстовой коноли чтобы автоматически тянулись cups и драйвера под матричных принтера





















