Меню

Чем линукс лучше виндовс для программиста

Сражение Linux на поприще Windows

Вступление

Вы замечали, что за 20 лет доля Linux систем на рынке Desktop (домашних систем и ноутбуков) не перешагнула и 10%, и все время колебалась в отметке 5-7% ?

Я вот задумался и начал вникать в историю развития Linux, и не заметил ничего странного.

Линус Торвальдс создал ядро, Ричард Столман софт и лицензию, система развивалась и набирала популярность. Так что же мешает?

Маркетинг? Нет, продукт бесплатный,»бери не хочу».

Сложность? Нет. С каждым годом юзер-френдли дистрибутивов становился больше и интерфейсы становятся проще и интуитивные. Т.е. это должно способствовать популяризации. Но тоже нет. (Я не буду поднимать тему Linux и серверов.)

Начнем же дискус

Нет. Главный конкурент, Microsoft и их Windows.

Да у Microsoft не все версии Windows были удачные. Скажем Windows 2.0, Windows ME, Win Vista, Win 8.0/8.1 (хотя я тепло отношусь к 8.1)

Одного отнять нельзя, политика Microsoft была такой, что нужно продвигать продукт так чтобы он был везде, они закрывали глаза на пиратство их ос. Также знали, что пиратство даст привязку пользователя к ос, и он не перейдет на что-то другое. И рано или поздно они купят лицензию.

И самый главный аргумент в их политике — это создание софта исключительно под платформу Windows. Игры, спец софт и прочее. Разработкам игр предоставлен DirectX. Компания Adobe делает свои продукты на Windows и MacOS. И прочее проприетарные продукты. Именно эти позиции и дают Microsoft преимущество до сих пор.

Более полно описана эта ситуация в этом посте с Хабр.

Почему Windows так популярен и мешает популяризации Linux?

Я свое виденье опишу в виде «воронки» в которую попадают начинающие пользователи ПК.

Человеку (обычный пользователь! прошу заметить) нужен ноутбук/ПК. Он покупает его. И в 90% случаев там будет предустановлен Windows. (Если нет то переходим на «ситуация 2»)

У человека в руках ноутбук. Но он не умеет им пользоваться. Он просит другого человека ему помочь, научить пользоваться этой машиной. Из это получается небольшая вариативность:

Случай 1 — Т.к на большинстве железок установлен Windows, то и помощи он просит у человека который разбирается в Windows. Даже на базовом уровне. Он объясняет как, что нажимать чтобы работало.

Случай 2 — Т.к. человеку не повезло/или он решил сэкономить, ему привозят ноутбук на Ubuntu или FreeDOS. Он просит знакомого эникея, чтобы было все как у людей. Чтобы можно было пользоваться. Обычно эникей ставит Windows и объясняет где и куда нажать чтобы заработал браузер, скайп или другая софтина.

Случай 3 — Попадается эникей псих , установит Linux Mint , KDE Neon. И объясняет где и куда нажать чтобы заработал браузер, скайп или другая софтина.

Во всех 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, потому что, кто-то что-то нажал и все перестало работать.

Читайте также:  Netstat and pid windows

Круг замкнулся.

И что в итоге?

И какое же место занимает в этом круговороте Linux?

Это как «Поворот не туда», кто-то попадает случайно, а кто-то специально попадает в этом мрачный и страшный мир (нет).

И чтобы попаcть в этот мир осознанно, нужно любопытство, жажда новизны, терпение и умение преодолевать трудности. А это присуще не всем рядовым пользователям ПК.

Это уже другой пласт людей. Продвинутые пользователи.

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

Буду рад любой конструктивной критике.
Спасибо за прочтение.

Источник

Почему пора сменить 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 и другие сборки позволяют вам найти себе производительную и функциональную ОС по душе, при этом суть взаимодействия не изменится. Кроме того, линуксовые системы куда проще масштабировать, применяя везде от компактных вспомогательных девайсов до огромных серверных машин.

Потребность

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

А какую ОС используете вы?

Иногда это вопрос вкуса, а иногда это вопрос профессионального отношения к делу. Если вы ещё используете 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 здесь точно не помеха.

Читайте также:  Клиент почты для mac os

Огромное количество ПО

Несмотря на то, что хардкорный программист в фольклоре обычно представляется, как человек, работающий исключительно с консольными приложениями, в действительности на Linux у вас почти такой же выбор, как и на Windows. Программируйте с Eclipse, NetBeans, Zend Studio, bluefish, Komodo, KDeveloper — список IDE и просто полезных программ можно продолжать очень долго. Но я думаю, вы уже поняли, что недостатка в качественном ПО у вас точно не будет.

Не так давно мы писали про администрирование на Linux, вскользь рассмотрев язык Bash. В действительности, это очень интересный и очень функциональный язык, который поможет вам лучше использовать возможности ОС, а кроме того добавит полезную строку в послужной список.

Безграничные возможности

Несмотря на то, что пользователей Windows пока чуть активнее теснит Mac, нежели Linux, именно последний имеет самые большие перспективы в IT-сфере. И речь здесь не только о бесплатности, хотя это тоже важный аргумент. Linux по своей структуре и организации создаёт куда меньше проблем пользователю в ежедневной работе. OpenSUSE, Fedora, Ubuntu, Mint и другие сборки позволяют вам найти себе производительную и функциональную ОС по душе, при этом суть взаимодействия не изменится. Кроме того, линуксовые системы куда проще масштабировать, применяя везде от компактных вспомогательных девайсов до огромных серверных машин.

Потребность

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

Источник

Linux, Windows или macOS: что выбрать программисту — отвечают эксперты

Linux, Windows или macOS: что выбрать программисту — отвечают эксперты

У каждой ОС есть свои плюсы, минусы и особенности, и как правило программисты выбирают ОС на основе своих предпочтений и представлений. Но что, если отбросить личные симпатии и попытаться взглянуть объективно: какая ОС даёт больше всего преимуществ программисту? Мы задали этот вопрос экспертам, и вот что они ответили.

старший backend-разработчик .defa

Выбор ОС в первую очередь зависит от того, в какой области разработчик работает, а ещё это дело привычки и субъективных представлений об удобстве. Я веб-разработчик и успел попробовать несколько операционных систем. Вот мой личный рейтинг удобства ОС именно для разработки веб-решений.

Первое место — 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 хорошо настроен и нативен.

Читайте также:  Tcp ip filtering windows

Дальше у нас встает извечная борьба между 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 — 80 %, а значит, стоит выбирать Linux или Mac.

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

Итак, кому какой системой стоит пользоваться?

Всё зависит от двух вещей: что вам удобно и чем вы занимаетесь. Например, если вы разрабатываете iOS-приложения, то вам придётся пользоваться macOS; если вы пишете бэкенд и сервер крутится на Linux, то, скорее всего, на нём вам и удобней будет работать. Если не принимать во внимание завязанные на конкретной платформе стеки разработки, то всё зависит от ваших предпочтений, ведь очень много софта работает на всех основных системах. Нравится работать в Windows/Linux/BolgenOS? Работайте дальше, если это не ограничивает ваши возможности. К тому же при необходимости в простых случаях можно воспользоваться виртуальной машиной. А переучиваться работать на другой системе просто «потому что» — пустая трата сил и времени.

Напоминаем, что вы можете задать свой вопрос экспертам, а мы соберём на него ответы, если он окажется интересным. Вопросы, которые уже задавались, можно найти в списке выпусков рубрики. Если вы хотите присоединиться к числу экспертов и прислать ответ от вашей компании или лично от вас, то пишите на experts@tproger.ru, мы расскажем, как это сделать.

Хинт для программистов: если зарегистрируетесь на соревнования Huawei Cup, то бесплатно получите доступ к онлайн-школе для участников. Можно прокачаться по разным навыкам и выиграть призы в самом соревновании.

Перейти к регистрации

Источник

Adblock
detector