Научиться программировать становится сложнее

Привет, Хабр! Представляю вашему вниманию перевод статьи Аллена Б. Дауни, автора таких книг как Think Python, Think Java, Think Bayes и других, опубликованной в личном блоге автора.

Я написал несколько книг, в которых c использованием языка программирования Python объясняются темы вроде Байесовской статистики и цифровой обработки сигналов. В дополнение к книгам читатели могут загрузить код с GitHub. Для того, чтобы использовать этот код, нужно знать некоторые основы Python. То есть, у читателей должен быть компьютер, на котором установлен интерпретатор этого языка и необходимые библиотеки, они должны знать, как загрузить код с GitHub, а еще они должны знать, как запустить код, который они загрузили.

Пытаясь проделать все это, многие читатели начинают испытывать трудности.

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

Я с пониманием отношусь к их чувствам. В определенном смысле их разочарование оправданно. Загрузить и запустить код не должно быть так сложно. Иногда они винят в сложностях Python, а иногда и меня. И я считаю, что это не совсем заслуженно.

Позвольте объяснить мое понимание проблемы и предложить несколько решений (или как минимум, обходных путей).

Фундаментальная проблема — барьер между использованием компьютера и написанием программ для него увеличивается.

Когда у меня появился Commodore 64 (кажется, в 1982 году), этого барьера не было. Когда вы включали компьютер, он запускал среду разработки. И чтобы сделать хоть что-нибудь, вам приходилось вводить как минимум одну строчку кода, даже если вы всего лишь хотели запустить другую программу.

С тех пор три вещи сделали путь от пользователя до программиста сложнее.

  1. Компьютеры перестали продаваться с предустановленными по умолчанию средами разработки. Теперь любому, кто хотел научиться программировать, приходилось сначала установить среду разработки. И это больший барьер, чем могло бы показаться. Многие пользователи вообще никогда ничего не устанавливали, не знали как это делать и могли не обладать необходимыми для этого правами. Сейчас устанавливать программы стало гораздо легче, чем это было раньше, но возможные ошибки при установке никуда не делись и это может доставлять пользователям серьезные неудобства. Если кто-то хочет научиться программировать, он не должен для этого предварительно изучать администрирование системы.
  2. Пользовательские интерфейсы сильно отошли от командной строки в сторону графических интерфейсов. Последними, как правило, проще пользоваться, но они не отображают информацию о том, что происходит в системе на самом деле. Когда пользователю не требуется знать все эти детали, в подобном поведении нет ничего страшного. Но проблема в том, что графические интерфейсы скрывают информацию, которую необходимо знать программистам. Поэтому когда пользователь начинает учиться программировать, он внезапно сталкивается с вещами, которые обычно от него скрыты. Если кто-то просто хочет научиться программировать, он не должен для этого изучать устройство операционных систем.
  3. Облачные технологии только осложняют ситуацию. Люди, использующие веб приложения, часто имеют очень смутное представление о том, где их данные хранятся и с помощью каких приложений они могут получить к ним доступ. Многие пользователи, особенно на мобильных девайсах, не видят различий между операционными системами, приложениями, веб-браузерами и веб-приложениями. Когда они загружают данные или отправляют их через интернет, они часто не до конца понимают, откуда именно эти данные поступают и куда попадают. А когда что-то устанавливают, часто не до конца понимают, что именно устанавливается и куда.

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

Хорошо, и что же мы можем с этим поделать? Вот несколько вариантов:

  1. Назад в будущее. Во-первых, можно создавать компьютеры (как мой Commodore 64), которые бы разрушали барьер между использованием устройства и его программированием. Одной из предпосылок к созданию Raspberry Pi, по словам Эбена Аптона, было желание создать среду, которая бы превращала пользователей в программистов.
  2. Встретиться с болью лицом к лицу. Другой подход — учить студентов как настраивать и использовать среду разработки до того, как они начали программировать (или одновременно с этим).
  3. Отсрочить боль. Третий вариант предполагает использование облачных сервисов, чтобы студенты могли сразу начать программировать и на время отложить подготовку собственной среды разработки.

На одном из моих курсов мы пользуемся вторым подходом. Студенты учатся использовать командную строку UNIX одновременно с изучением языка программирования C. Однако эти студенты уже умеют программировать и у них есть возможность обратиться к инструкторам за помощью.

Для новичков, в особенности для тех, кто занимается самостоятельно, я рекомендую третий подход. Вот некоторые инструменты, которые я использовал:

  1. Интерактивные учебники, позволяющие запускать код прямо в браузере, как например эта адаптация книги How To Think Like a Computer Scientist
  2. Cреды разработки, работающие через браузер, как например PythonAnywhere
  3. Образы виртуальных машин с уже настроенными и готовыми к работе средами разработки, которые пользователь может загрузить и запустить у себя (при условии, конечно, что он может установить программное обеспечение для запуска виртуальной машины).
  4. Сервисы вроде Binder, представляющие собой среду выполнения в облаке, и позволяющие пользователям получить доступ к некоторым функциям через браузер.

В некоторых своих проектах я использовал сразу все эти инструменты. В дополнение к интерактивной версии How To Think Like a Computer Scientist есть еще интерактивная версия Think Java, подготовленная и поддерживаемая Trinket.

В Think Python я предлагаю читателям использовать PythonAnywhere в течение как минимум четырех первых глав, а затем привожу инструкции, как перейти к использованию Python локально.

Я использовал образы виртуальных машин для некоторых курсов в прошлом, но в последнее время я чаще пользовался онлайн сервисами, как в случае с этим Jupyter-ноутбуком для книги Think DSP. А репозитории для всех моих книг подготовлены для работы с сервисом Binder.

Описанные подходы помогают начать программировать, но у них есть и свои ограничения. Когда-нибудь студенты сами захотят или же им потребуется установить и настроить рабочее окружение на своем компьютере. Но если мы отделим изучение программирования от изучения того, как устанавливать и настраивать соответствующее программное обеспечение, шансы на успех вырастут.

Nick Coghlan предложил в твиттере четвертый подход, который бы я назвал Загляни в будущее. Вполне возможно, новички могут начать с облачных сред разработки и остаться на них.

Поделиться публикацией
Ой, у вас баннер убежал!

Ну. И что?
Реклама
Комментарии 250
  • +14
    Если кто-то хочет научиться программировать, он не должен для этого предварительно изучать администрирование системы.
    Если кто-то просто хочет научиться программировать, он не должен для этого изучать устройство операционных систем.
    Мне вот интересно согласился бы автор этих строк, чтобы его лечил врач, который просто «научился лечить», не зная при этом даже азов анатомии, химии, биологии и прочих базовых для врача дисциплин?
    • +2
      Согласен с вами. Любой здравомыслящий человек предпочел бы опытного врача с соответствующим набором знаний.

      Пользуясь вашей аналогией, я бы все же сравнил человека из статьи, который «просто хочет научиться программировать», не с врачом, который уже сидит в поликлинике и принимает людей, а, например, со страшеклассником, который в свободное от учебы время почитывает книги и статьи по биологии. Придет время, и, если его интерес к теме сохранится, то он сам и/или с внешней помощью, поймет, чему ему нужно научиться и почему, чтобы стать врачом. А может быть, он вообще не собирается им становиться, а просто развлекается подобным образом или решает какие-то свои задачи.
      • +6
        Я, честно говоря, не вижу смысла ему облегчать путь в этом. Если он способен стать программистом, то ему надо как раз начинать с основ, и да, научиться в том числе администрировать свою рабочую среду. Если не способен, или просто оно ему не особо и интересно — то какая, по сути, разница, получится у него или нет?
        И ещё, я не соглашусь, что сейчас стало сложнее. Наоборот, средства разработки сейчас куда доступнее. Далеко не все компьютеры были как ZX Spectrum, с интерпретатором Бейсика в ПЗУ после включения. Я помню инструкцию к своему первому компьютеру. «Для подключения принтера спаяйте кабель согласно прилагаемой схеме». Или в другой книжечке, про джойстик. Инструкция, как загружать драйвер, как настраивать джойстик. А на последней странице сам драйвер. В машинных кодах. Ничего, выживали как-то :) Но вот что «раньше было легче» — не согласен.
        • +5
          Да, сейчас не в пример легче — поставил туже Visual Studio и получил готовый набор всего, что необходимо: Компилятор, Отладчик, Подсветку синтаксиса, Подстановку кода (Itelli sense), визуальный редактор форм (WPF)… IDE сама ведет пользователя «за ручку», показывая как правильно писать и где есть ошибки…
          • +4

            А когда хочешь просто поправить пару строк в огромном старом проэкте тебе надо доустановить Boost, установить кучу исправлений и обновлений. Поставить упаковщик интаслятора. Настроить всё это. И тогда у тебя возможно получится скомпилировать проект. И вот когда всё получилось можно пробовать эксперементировать с кодом.

            • 0
              Порой надо установить компилятор и библиотеки строго определенной версии, да ещё и с нестандартными патчами (Костылями), да под устаревшей OS (Windows XP?) ну и т.д. и т.п.…
              • 0

                Последние версии программ для Windows XP требуют обновлений самой системы, в частности, до SetvicePack3 и ещё отдельно доустановить Windows Installer 4.5. Если пользователь пройдёт этот квест без посторонней помощи, он сможет стать программистом.

            • +1

              Поставил и получил все? Но порой очень сложно разобраться с интерфейсами или ошибками инсталляции. Мне как-то не повезло и на моем ноутбуке эмулятор андроида, встроенный в андроид студио, никак не хотел запускаться. При решении одной проблемы он начинал падать по другой причине. В итоге решение всех проблем заняло довольно долго времени(2-3 дня вроде). Это очень неприятно, и изматывает. Сейчас я даже и не вспомню что я делал для решения проблем, потому как это единичный случай, на моей практике. Те помимо проблем возникающих с изучением самого яп мне пришлось бороться с какими-то случайными и редкими ошибками. В итоге да, все удалось, но осадочек остался

            • 0
              Если он способен стать программистом, то ему надо как раз начинать с основ, и да, научиться в том числе администрировать свою рабочую среду.

              А если человек хочет стать врачом, ему следует предварительно научиться разделывать туши, точить скальпели и вышивать крестиком?
              • 0
                Навыки надевать одежду (халат) и мыть руки точно пригодятся.
                • 0
                  Как вы можете заметить, приведенные вами навыки не специальные, а бытовые, как, например, воткнуть вилку в розетку и включить компьютер нажатием кнопки.
                  • 0
                    Так и администрирование своего собственного компьютера — это вполне бытовой навык, как то: установить любимый браузер, настроить тему с котятами для вконтактика с помощью юзерстилей, поставить пароль на учётку, настроить BitLocker на съемном жестком диске в важной информацией.
                    Так и программисту нужно хотя бы уметь поставить нужные ему программы и настроить их.
                    • 0
                      Так и администрирование своего собственного компьютера — это вполне бытовой навык

                      Это навык более высокого уровня, как, например, вождение авто или умение ясно выражаться.

                      Так и программисту нужно хотя бы уметь поставить нужные ему программы и настроить их.

                      Зачем?
                      • 0
                        Зачем?

                        Затем же, зачем непрограммисту. Это бытовой навык, где-то рядом с умением забивать гвозди или умением ясно выражаться.
                        • 0
                          Затем же, зачем непрограммисту. Это бытовой навык, где-то рядом с умением забивать гвозди или умением ясно выражаться.

                          У вас профдеформация, вам кажется, что все должны уметь то, что вам видится очевидным, хотя это совершенно не очевидно для человека из иной сферы. У меня отец не умеет особо администрировать свой ПК, но умеет им пользоваться. При этом он обладает бытовыми с его точки зрения навыками, которыми вы с большой вероятностью не владеете: изготовить мебель из массива без электроинструмента, синтезировать в домашних условиях клей или герметик, правильно разделать тушу животного.

                          Умение забивать гвозди уже давно тоже не является обязательным. Мало того, большинство этого правильно ни забивать не умеют, ни подбирать гвозди, ни оценивать материал.

                          Про умение ясно выражать свои мысли я вообще промолчу, этого не умеет большинство людей. Ясность речи является одним из основных факторов, определяющих социальный статус человека.
                          • 0
                            У вас профдеформация, вам кажется, что все должны уметь то, что вам видится очевидным, хотя это совершенно не очевидно для человека из иной сферы.
                            Нет.

                            У меня отец не умеет особо администрировать свой ПК, но умеет им пользоваться.
                            А у меня отец не умел даже пользоваться, приказы секретарша на ПК набирала.

                            При этом он обладает бытовыми с его точки зрения навыками, которыми вы с большой вероятностью не владеете: изготовить мебель из массива без электроинструмента, синтезировать в домашних условиях клей или герметик, правильно разделать тушу животного.
                            Совершенно верно — только это не «его» точка зрения, а скорее «точка зрения его поколения».

                            Моя бабушка тоже всегда удивлялась: ну как же так, в деревне живут — а хлеб в магазине покупают! Как там можно-то? Со временем, впрочем, и сама перестала печь, когда ей уже под 90 было, но пока была моложе — это её поражало.

                            Так вот: установка программ и администрирование компьютера — это бытовой навык того поколения, которое сейчас, в основном и, учится программировать.
                            • 0
                              А у меня отец не умел даже пользоваться, приказы секретарша на ПК набирала.

                              Тезис о том, что администрировать свой ПК надо обязательно уметь, это не подтверждает.))

                              Так вот: установка программ и администрирование компьютера — это бытовой навык того поколения, которое сейчас, в основном и, учится программировать.

                              Я вас могу уверить, что дальше базовой установки программ и нынешнее поколение в массе своей не уходит, так как для бытовых нужд это уже не требуется, как, в целом, не требуется и ПК — подавляющему большинству достаточно настроенной мультимедийной машины (телефона или планшета). Собственно, поколению, которое сейчас только учится (подростки) больше интересны именно телефоны.

                              Совершенно верно — только это не «его» точка зрения, а скорее «точка зрения его поколения».

                              Не стоит считать поколение чем-то однородным, больше зависит это от социальной среды в конкретном месте.
                              • 0
                                поколению, которое сейчас только учится (подростки) больше интересны именно телефоны.
                                А если посмотреть на вопрос под тем углом, что стирается грань между ПК и мобильными устройствами? Производительность отличается все меньше, типично «компьютерные» задачи выполняются и на мобильных устройствах, все чаще видим гибриды от «трансформеров» в духе Asus, до Windows Continuum и Ubuntu Touch. Программное обеспечение смело берет курс на кроссплатформенность (UWP, Xamarin, Qt, Electron, простите, вырвалось). Возможно, сейчас инженеры ищут наиболее удобный форм-фактор идеального устройства, но при этом базовые технологии и концепции остаются теми же самыми.

                                И это еще если не вспоминать про грядущий IoT.
                                • 0
                                  А если посмотреть на вопрос под тем углом, что стирается грань между ПК и мобильными устройствами?

                                  Мобильные устройства более закрыты. Там в целом администрировать просто нечего. Это верная практика, как было верной практикой изъятие ручки управления углом опережения зажигания из всех авто. Про коробки передач до сих пор спорят, хотя уже почти все склоняются к тому, что «админить» передачи нет смысла даже профессиональному водителю, ибо это уже не даёт практически никакого выигрыша. Так и с остальными вещами: если что-то сложно настраивается или используется, скорее всего оно неправильно или плохо сделано.

                                  Программное обеспечение смело берет курс на кроссплатформенность (UWP, Xamarin, Qt, Electron, простите, вырвалось).

                                  Это один из ударов по проблеме. До этого приходилось делать больше лишних вещей, сейчас сокращают. Большинство задач администрирования можно отправить туда же, в прошлое, и там и оставить.
                                  • 0
                                    Мобильные устройства более закрыты. Там в целом администрировать просто нечего.
                                    Это конкурентное преимущество Android, например) Да и популярность разного рода рутования и jailbreak'ов говорит о том, что пользователи не всегда согласны с такими ограничениями. Разработчики ратуют за безопасность, но это чаще всего приводит к деградации технологий (как, например, «плюшевый» браузерный API заменил полноценные Java-апплеты).

                                    Это верная практика, как было верной практикой изъятие ручки управления углом опережения зажигания из всех авто.
                                    Но ведь этот рутинный процесс просто автоматизировали. То же самое про коробки передач. Задачи системного администрирования же можно автоматизировать только для частных случаев, в чем суть сферы деятельности и заключается.

                                    Большинство задач администрирования можно отправить туда же, в прошлое, и там и оставить.
                                    Например?
                                    • 0
                                      Это конкурентное преимущество Android, например) Да и популярность разного рода рутования и jailbreak'ов говорит о том, что пользователи не всегда согласны с такими ограничениями.

                                      В массе своей устройства не рутованы, это интересует лишь узкий круг людей. У нас в офисе нет вообще никого с рутованным андроидом или айфоном с джейлом, даже у специалистов по мобильной разработке.

                                      Но ведь этот рутинный процесс просто автоматизировали. То же самое про коробки передач. Задачи системного администрирования же можно автоматизировать только для частных случаев, в чем суть сферы деятельности и заключается.

                                      Администрирование по большей части рутинным процессом и является, особенно на том уровне, на котором оно требуется для настройки рабочей среды.

                                      Например?

                                      Например, прописывание путей. Хотя и более сложные вещи можно.
                                      • 0
                                        В массе своей устройства не рутованы… это интересует лишь узкий круг людей
                                        Еще бы, это сулит потерю гарантии. Но попробуйте найти подростка, который об этом не слышал.

                                        У нас в офисе нет вообще никого с рутованным андроидом или айфоном с джейлом, даже у специалистов по мобильной разработке.
                                        Еще бы, ведь для тех задач, где бы это понадобилось, у вас есть компьютеры.

                                        Администрирование по большей части рутинным процессом и является, особенно на том уровне, на котором оно требуется для настройки рабочей среды.
                                        Среда среде рознь. Сейчас и IDE могут воспроизводить шаблоны проектов, есть штуки, вроде yoman'а, но ведь продукт этого — лишь глыба мрамора, от которой нужно долго старательно отсекать ненужное и кастомизировать под конкретную задачу.

                                        Например, прописывание путей.
                                        Каких путей? Действительно ли возможно написать такую программу, которая бы это автоматизировала и результат устроил бы всех?
                                        • 0
                                          Еще бы, это сулит потерю гарантии. Но попробуйте найти подростка, который об этом не слышал.

                                          Могу вживую показать достаточно много.)) У меня в центре был курс, который я вел сам группе подростков (5-7 классы, смешанная группа) из школы по соседству.

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

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

                                          Ни нынешние школьники, ни студенты от студентов десятилетней давности существенно не отличаются по моим наблюдениям.
                                          • 0
                                            Еще бы, ведь для тех задач, где бы это понадобилось, у вас есть компьютеры.

                                            А для чего рутовать тогда в целом? Да и разные задачи-то. Я, кстати, некоторое время в позапрошлом году жил без ПК дома, а у части знакомых и сейчас нет. Сейчас у меня три старых (10-11 годы) выпуска ноута, а настольный я в выходные отдал знакомому за ненадобностью.

                                            Гарантия у нас, кстати, никого не интересует особенно, телефон чаще умирает от физических повреждений и стоит копейки. У меня подруга за два года четыре уже разбила, сейчас застопорилась на S8, который оказался неожиданно прочным.))

                                            Среда среде рознь. Сейчас и IDE могут воспроизводить шаблоны проектов, есть штуки, вроде yoman'а, но ведь продукт этого — лишь глыба мрамора, от которой нужно долго старательно отсекать ненужное и кастомизировать под конкретную задачу.

                                            Рабочим не дают кастомизировать их фрезерные станки. Тонкая настройка — штука не обязательная. Я уже давно не делаю, хотя в ранние годы даже для 3D Studio Max таскал за собой шаблон настройки интерфейса под себя на дискете. В то время для меня и операционная система имела значение. Сейчас разницы нет, использую винду как самую простую в настройке и использовании в быту.

                                            Каких путей? Действительно ли возможно написать такую программу, которая бы это автоматизировала и результат устроил бы всех?

                                            Вопрос в самом существовании путей. Мы привыкли к привычной иерархической (в целом) файловой системе с путями доступа, но это не единственная парадигма. Это была лишь абстракция, рожденная по аналогии с реальным миром, а не самый удобный метод.
                                            • 0
                                              А для чего рутовать тогда в целом? Да и разные задачи-то.
                                              Я продолжаю свою мысль о том периоде времени, когда разделение на компьютеры и мобильные устройства сотрется окончательно и все мыслимые задачи будет выполнять необходимо на этом инновационном устройстве. Здесь если производители не пойдут на попятную, то юзерам придется с этим что-то делать.

                                              Гарантия у нас, кстати, никого не интересует особенно, телефон чаще умирает от физических повреждений и стоит копейки.
                                              Моих знакомых интересует, например. Многие аккуратно обращаются с устройствами и не меняют телефон по 3-4 года, когда начинает сказываться запланированное устаревание модели. Может дело в репрезентативности выборки? Популярные модели телефонов стоят $500-$1000, какие же это копейки, когда это выше средней месячной зарплаты в России?

                                              Рабочим не дают кастомизировать их фрезерные станки.
                                              Скажем, высоту стула возле АРМа дают регулировать?) Это своего рода эргономика, зачем так бестолково ограничивать работника? Чаще дело ограничивается отслеживанием правовых аспектов использования ПО, но пока это не мешает процессу — делайте так, как удобно.

                                              Сейчас разницы нет, использую винду как самую простую в настройке
                                              Вы постоянно настраиваете ОС?

                                              Мы привыкли к привычной иерархической (в целом) файловой системе с путями доступа, но это не единственная парадигма. Это была лишь абстракция, рожденная по аналогии с реальным миром, а не самый удобный метод.
                                              Так попробуйте предложить идею, как гибко разграничить права пользователей в системе, да так, чтобы ничего не пришлось настраивать.
                                              • 0
                                                Я продолжаю свою мысль о том периоде времени, когда разделение на компьютеры и мобильные устройства сотрется окончательно и все мыслимые задачи будет выполнять необходимо на этом инновационном устройстве. Здесь если производители не пойдут на попятную, то юзерам придется с этим что-то делать.

                                                Согласен с данным утверждением, что в будущем устройства если не приобретут общий форм-фактор, то хотя бы сблизятся максимально по аппаратному и программному обеспечению. Это, к слову, должно повлечь снижение сложности управления рабочей среды, так как данный подход принят у производителей мобильных устройств.

                                                Моих знакомых интересует, например. Многие аккуратно обращаются с устройствами и не меняют телефон по 3-4 года, когда начинает сказываться запланированное устаревание модели.

                                                Я рассматриваю телефоны, ноутбуки и автомобили как расходный материал, мне их не жалко.

                                                Может дело в репрезентативности выборки? Популярные модели телефонов стоят $500-$1000, какие же это копейки, когда это выше средней месячной зарплаты в России?

                                                Хм, мы же говорили о моём окружении. Фраза «гарантия у нас никого не интересует» не относилась к обществу в целом. Она никого особо не интересует в моем окружении.

                                                Насчёт телефонов: есть вполне приличные китайские телефоны (Xaomi, Meizu, Huawei и тп), которые стоят заметно дешевле. Они не без серьёзных изъянов, конечно, китайцы как всегда не могут сделать ничего до конца нормально, но большинству разница будет не видна. Также есть куча недорогих брендовых телефонов и флагманов прошлых лет.

                                                Скажем, высоту стула возле АРМа дают регулировать?) Это своего рода эргономика, зачем так бестолково ограничивать работника? Чаще дело ограничивается отслеживанием правовых аспектов использования ПО, но пока это не мешает процессу — делайте так, как удобно.

                                                Ограничивают то, что влияет на безопасность (работника и предприятия). Высоту стула регулировать не только дают, но и обязывают в норме, как и зеркала в автомобиле. А вот свободную форму одежды не допускают, рабочий обязан надеть специальный костюм из легко рвущейся ткани вне зависимости от того, удобен ли ему фасон и приятен ли цвет.

                                                Вы постоянно настраиваете ОС?

                                                Я работаю на разных компьютерах с разными ОС, которые не настраиваю по большей части вообще.
                                                Но я не об этом. Я про то, что тут как в случае с Андроидом и iOS: вроде первый предоставляет больше возможностей, но большинству это настолько не нужно, что они не видят разницы. Характерно и то, что ведущие разработчики у нас предпочли не более гибкий и настраеваемый линукс, а винду, сказав, что им нафиг не сдалось тратить время на настройку этого зоопарка. Никсы же себе как рабочую выбрали менее опытные разрнаботчики и какое-то время пилили его под себя.
                                                • 0
                                                  Это, к слову, должно повлечь снижение сложности управления рабочей среды, так как данный подход принят у производителей мобильных устройств.
                                                  Пока попытки внедрить «мобильную» идеологию на десктопные системы (UWP) терпит неудачи.

                                                  Я рассматриваю телефоны, ноутбуки и автомобили как расходный материал, мне их не жалко.
                                                  Не все директорами работают) Многие и вовсе технику в кредит берут.

                                                  Хм, мы же говорили о моём окружении.
                                                  Нет, мы говорим о том, почему люди массово не рутуют телефоны.
                                                  Насчёт телефонов: есть вполне приличные китайские телефоны ..., которые стоят заметно дешевле
                                                  Но это ж не Эпол (= У нас (да и не только у нас, кстати говоря) телефон — это статусный аксессуар и если у человека будут финансовые возможности, то выбор будет сделан в пользу флагмана известного производителя. Просто по моде.

                                                  рабочий обязан надеть специальный костюм из легко рвущейся ткани вне зависимости от того, удобен ли ему фасон и приятен ли цвет.
                                                  если бы рабочий сам покупал себе костюм, то перед ним бы открывался широкий выбор различных тканей (конечно же отвечающих требованиям безопасности) и цветов.

                                                  тут как в случае с Андроидом и iOS: вроде первый предоставляет больше возможностей, но большинству это настолько не нужно, что они не видят разницы.
                                                  Видят и страдают) Закрытая файловая система, невозможность пересылать файлы по Bluetooth и прочие ограничения огорчают даже многих любителей iOS.

                                                  Я работаю на разных компьютерах с разными ОС, которые не настраиваю по большей части вообще.
                                                  Значит, у вас нет в этом потребности и это не минус линукса.

                                                  ведущие разработчики у нас предпочли не более гибкий и настраеваемый линукс, а винду, сказав, что им нафиг не сдалось тратить время на настройку этого зоопарка.
                                                  Есть вероятность, что они банально этого делать не умеют (так же эффективно, как с Windows, к которым они привыкли). Это нормально, если нет необходимости склоняться к определенной ОС.
                                                  • 0
                                                    Пока попытки внедрить «мобильную» идеологию на десктопные системы (UWP) терпит неудачи.

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

                                                    Не все директорами работают) Многие и вовсе технику в кредит берут.

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

                                                    Но это ж не Эпол (= У нас (да и не только у нас, кстати говоря) телефон — это статусный аксессуар и если у человека будут финансовые возможности, то выбор будет сделан в пользу флагмана известного производителя. Просто по моде.

                                                    Среди тех, для кого телефон — ценность, но это не всё население, и, скажем так, с моей точки зрения не самые образованные слои. Моя девушка отказалась от iPhone X, а на S8 согласилась только после того, как у неё сдох очередной телефон от влаги (Xaomi Mi5s). И то уговаривать пришлось, она хотела третий раз чинить китайца. Сейчас предлагаю поменять на S9, не хочет, и так, мол, нормально.

                                                    если бы рабочий сам покупал себе костюм, то перед ним бы открывался широкий выбор различных тканей (конечно же отвечающих требованиям безопасности) и цветов.

                                                    Рабочий может купить себе костюм, только ткань, цвет и фасон всё равно прописаны в ТБ, вариативности никакой особо не будет. Не дают её из-за того, что она влечет за собой много проблем, прям как зоопарк браузеров угнетал верстальщиков лет десять назад. Одинаковое проще.

                                                    Видят и страдают) Закрытая файловая система, невозможность пересылать файлы по Bluetooth и прочие ограничения огорчают даже многих любителей iOS.

                                                    Немного не так: пользователи iOS не очень понимают, зачем нужно пересылать файлы по Bluetooth. Я, кстати, хоть и перестал пользоваться оными в пользу Самсунга, но тоже ни разу не нуждался в этом. Вопрос в восприятии, ведь никто особо не переживает о том, что ИК-порта почти ни в каких смартфонах нет, а ведь штука замечательная.

                                                    Значит, у вас нет в этом потребности и это не минус линукса.

                                                    У меня (и у всех по факту) есть потребность в одном: получить среду, сразу пригодную для работы. Никому не нужны настройки, нужна настроенная среда. Если бы вышла ОС с кнопкой «настроить всё под меня автоматически», пользователи были бы крайне рады, я думаю. Надо смотреть в суть нужд пользователей, а не на один из путей их достижения, ибо есть и иные, более простые.

                                                    Есть вероятность, что они банально этого делать не умеют (так же эффективно, как с Windows, к которым они привыкли). Это нормально, если нет необходимости склоняться к определенной ОС.

                                                    Нет, таковой вероятности нет, они всё умеют. У нас софт под никсы и сборка дистрибутива своя.
                                                    • 0
                                                      Во многом задержка обусловлена реакционизмом со стороны старших поколений, составляющих значительную часть пользователей.
                                                      Увы, нет, дело здесь совсем не в интерфейсе, а как раз в упрощенной модели безопасности. Вроде бы недавно статья была на хабре по этому поводу.

                                                      Среди тех, для кого телефон — ценность, но это не всё население, и, скажем так, с моей точки зрения не самые образованные слои.
                                                      Увы, это большинство.

                                                      вариативности никакой особо не будет
                                                      Для сравнения можно поинтересоваться, например, масками сварщика. Их ОЧЕНЬ большой выбор, разного уровня технологичности.

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

                                                      Одинаковое проще.
                                                      Когда закупка централизована или это нечто требует поддержки при эксплуатации, с которой рабочий не справится самостоятельно.

                                                      пользователи iOS не очень понимают, зачем нужно пересылать файлы по Bluetooth
                                                      Это лишь пример. Иначе не было бы холиваров. iTunes, например, неочевиден до такого уровня, что в интернете полно гайдов, как скачать фоточки с айфона.

                                                      У меня (и у всех по факту) есть потребность в одном: получить среду, сразу пригодную для работы.
                                                      Не все так просто. Очень много градаций от сурового необходимого минимума до чудо-комбайна, с которым можно делать работу лучше. А обратной стороной гибкости обычно является сложность. Так что, как мне кажется, идеальным балансом было бы два вида интерфейса: «мало переключателей» и «много переключателей». Кмк, популярные дистирибутивы линукса движутся в этом направлении: минимум преключателей в интерфейсе «на каждый день» и возможность открыть терминал, когда нужно немного магии.
                                                      Главная проблема линукса не в том, что он сам какой-то непонятный или бестолковый, а в том, что производители оборудования (и драйверов к нему) его игнорируют и есть ненулевой риск получить проблему, для устранения которой потребуется щепотка магии и простыми интерфейсными настройками не отделаться. Но об этом холиварить сейчас я не готов)
                                                      • 0
                                                        Увы, нет, дело здесь совсем не в интерфейсе, а как раз в упрощенной модели безопасности. Вроде бы недавно статья была на хабре по этому поводу.

                                                        А можете ссылку дать почитать? Или подскажите, как поискать, пожалуйста, я б почитал, чтобы иметь более полное представление, о чем речь.

                                                        Увы, это большинство.

                                                        Численное в абсолюте, но вряд ли большинство финансовое или интеллектуальное. С большинством подобного типа я стараюсь как можно меньше пересекаться в быту. Однако отмечу, что любой слой делится на на четыре типа (Social Styles), у каждого из которых своё отношение к вещам, обуславливающее выбор. Топовые и дорогие телефоны выбирают ради фактора значимости люди, относящиеся к меньшинству (емнип, максимум 30% в сумме), а не большинству, если слой имеет сбалансированный состав.

                                                        Для сравнения можно поинтересоваться, например, масками сварщика. Их ОЧЕНЬ большой выбор, разного уровня технологичности.

                                                        У меня есть несколько штук (есть свой сварочный аппарат для бытовых нужд на даче), ничем между собой они особо не отличаются. У отца девушки тоже (как раз на прошлой неделе новую купил он). А на заводе экспериментальных машин, где я иногда подвариваю детали для мотоцикла, у всех одинаковые маски, утвержденные СБ и занесенные в журнал, тоже всё строго.

                                                        Я не согласен с этой аналогией, ибо рабочие совместимы с любыми версиями подходящих для специфики их работы костюмов. Могут быть как импортные, так и отечественные, как хорошего качества, так и не очень.

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

                                                        Когда закупка централизована или это нечто требует поддержки при эксплуатации, с которой рабочий не справится самостоятельно.

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

                                                        Это лишь пример. Иначе не было бы холиваров. iTunes, например, неочевиден до такого уровня, что в интернете полно гайдов, как скачать фоточки с айфона.

                                                        На деле в экосистеме той всё весьма продумано. Она предполагает, что пользователь будет в ней и не будет скачивать фоточки с айфона в чужую экосистему. Я от айфона отказался вместе с отказом от компьютеров эппл, просто сменил экосистему. А холивары в основном на уровне детсада: споряд двое, не знающие всех особенностей решения противной стороны. Я как-то обсуждал этот вопрос с основателем fixland.ru, он привык к эпплу, а я предлагал ему перейти на темную сторону андроид. Он рассказал, как именно всем пользуется, что у него дома техника вся яблочная, и что проблем не было никогда. У меня аргументы кончились достаточно быстро, ибо у него действительно всё работало, просто непривычным для типового пользователя иной экосистемы путем.

                                                        Не все так просто. Очень много градаций от сурового необходимого минимума до чудо-комбайна, с которым можно делать работу лучше. А обратной стороной гибкости обычно является сложность. Так что, как мне кажется, идеальным балансом было бы два вида интерфейса: «мало переключателей» и «много переключателей».

                                                        Гибкость и сложность не являются понятиями, лежащими на одной координатной прямой, хотя многие таковыми их считают.

                                                        А про подход вы совершенно правы, я и сам исповедую подобный. Только уровень доступных задач для первого уровня стараюсь обеспечить максимально широкий, чтобы вглубь лезть никому не надо было.

                                                        Насчёт линукса и вправду давайте не будем, у меня к нему вагон претензий по этой части))
                                                        • 0
                                                          А можете ссылку дать почитать? Или подскажите, как поискать, пожалуйста, я б почитал, чтобы иметь более полное представление, о чем речь.
                                                          Хорошо, постараюсь отыскать, пока что эксперсс-поиск ничего не дал. Но автор там жаловался, что конкретно нельзя вместе с UWP-программой устанавливать службы.

                                                          ничем между собой они особо не отличаются
                                                          У дешевых скорость затемнения ниже (если вообще есть такая функция), хуже обзор, хуже вентиляция и т.п.

                                                          Вон, военные могут покупать себе форму, но строго уставного образца, так же и со школьной, можно еще примеры привести.
                                                          У военных (и вообще силовых структур, которые имеют обыкновение ходить строем) внешнее единообразие формы — это суровая необходимость. Хотя, это может быть традицией, ведь, к примеру, в Италии нет такого понятия вовсе, а у нас военный не в праве сезонную одежду сменить без письменного приказа министра обороны. В школах идея школьной формы тоже пока ограничивается компромиссным договором с родителями и «белый верх, черный низ», да и государство не горит желанием обеспечивать учеников формой бесплатно.
                                                          Она предполагает, что пользователь будет в ней и не будет скачивать фоточки с айфона в чужую экосистему.
                                                          Компания не угадала желания сотен тысяч пользователей, ведь инфраструктура в подарок к телефону не идет. Это объективный недостаток, вне зависимости от мотивации.
                                                          • 0
                                                            У дешевых скорость затемнения ниже (если вообще есть такая функция), хуже обзор, хуже вентиляция и т.п.

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

                                                            У военных (и вообще силовых структур, которые имеют обыкновение ходить строем) внешнее единообразие формы — это суровая необходимость. Хотя, это может быть традицией, ведь, к примеру, в Италии нет такого понятия вовсе, а у нас военный не в праве сезонную одежду сменить без письменного приказа министра обороны. В школах идея школьной формы тоже пока ограничивается компромиссным договором с родителями и «белый верх, черный низ», да и государство не горит желанием обеспечивать учеников формой бесплатно.

                                                            На производствах тоже всё продиктовано суровой необходимостью (и цвет, и материал). Дорожные рабочие в оранжевых и зеленых жилетах не для красоты, как и врачи в белом. Именно какая-либо массовая необходимость и служит причиной отказа от кастомизации. Про школьную форму: мы живем не в единственной стране, вспомните Японию в этом плане.

                                                            Компания не угадала желания сотен тысяч пользователей, ведь инфраструктура в подарок к телефону не идет. Это объективный недостаток, вне зависимости от мотивации.

                                                            Наверное, хотя не могу судить о недостатках, не зная изначальной цели и миссии проекта (помимо заработка денег у предприятия в целом и проекта в частности должна быть миссия и цель, выводимая из миссии).
                                                    • 0
                                                      Пока попытки внедрить «мобильную» идеологию на десктопные системы (UWP) терпит неудачи.
                                                      А когда UWP был популярен на мобильниках? Расскажите — мне правда интерено.

                                                      Движение с мобильников на десктоп идёт — но очень запутанным путём. Через ChromeOS. Именно потому, что уж очень легко Андроид взламывается и root'уется.

                                                      У нас (да и не только у нас, кстати говоря) телефон — это статусный аксессуар и если у человека будут финансовые возможности, то выбор будет сделан в пользу флагмана известного производителя.
                                                      Когда-то и PC был «статусным акссесуаром». И брендовые PackardBell'ы и IBM'ы покупались «потому что иначе несолидно».
                                                      • 0
                                                        А когда UWP был популярен на мобильниках? Расскажите — мне правда интерено.
                                                        Я этого не утверждал) Концепция приложений из магазинов, изолированных, с закрученными гайками безопасности. Это сейчас как iOS, так и в Android.

                                                        Когда-то и PC был «статусным акссесуаром».
                                                        Известные компании делают все возможное, чтобы такое состояние рынка держалось как можно дольше)
                                                        • 0
                                                          Концепция приложений из магазинов, изолированных, с закрученными гайками безопасности. Это сейчас как iOS, так и в Android.
                                                          Ну так и там и там и разработчики и пользователи ненавидят это! Просто им других вариантов не дают.

                                                          Проблема в том, что нельзя сначала сделать платформу популярной за счёт того, что программам разрешать в ней делать-всё-что-угодно… а потом взять — и завинтить гайки. Ваше поделие окажется тупо никому не нужным! См. WART
                                                          • 0
                                                            Именно. А не дать ничего взамен полноценному компьютеру — это будет провал.
                                                            • 0
                                                              Да не будет никакого провала. С точки зрения нормального разработчика 80х все наши компьютеры — глубоко неполноценны.

                                                              Ну действительно, что это такое — к железке добраться на низком уровне нельзя, даже прерывания запретить нельзя. Куда это годится?

                                                              Просто нельзя всё одновременно делать: и гайки закрчивать и новую платформу «запускать».
                                                              • 0
                                                                Да не будет никакого провала. С точки зрения нормального разработчика 80х все наши компьютеры — глубоко неполноценны.
                                                                Это систематическая ошибка выжившего для отдельных идей. Сколько же их бестолковых-то полегло?

                                                                Дело в том, что платформа не дает никаких ощутимых преимуществ, а возможности режет.
                                                                • 0
                                                                  Дело в том, что платформа не дает никаких ощутимых преимуществ, а возможности режет.
                                                                  Конечно, но это если у вас есть выбор. А если выбора нет? Посмотрите на web: NPAPI отпилили и Flash — что, разработчики сбежали? Или Google Play: скоро приложения для китайфонов на Android 2.3 перестанут публиковать. Разработчики сбегут? Нет, конечно. Деваться-то им некуда!

                                                                  Просто чем больше доля рынка, которой вы владеете, тем быстрее можно «закручивать гайки». Microsoft же, не имея даже 5%, начал «закручивать гайки» так, как будто у него все 100%… ну и поплатился за это.
                                                                  • 0
                                                                    Посмотрите на web: NPAPI отпилили и Flash — что, разработчики сбежали?
                                                                    Да, вместе с приложениями, для которых это было критично. Однако, пример так себе, ибо большинство кейсов перекрываются новыми API.

                                                                    Просто чем больше доля рынка, которой вы владеете, тем быстрее можно «закручивать гайки».
                                                                    У MS раньше была большая доля рынка по браузерам и где он теперь? Волну поймать можно, но это не стабильное состояние.
                                                                    • 0
                                                                      Посмотрите на web: NPAPI отпилили и Flash — что, разработчики сбежали?

                                                                      Да, вместе с приложениями, для которых это было критично. Однако, пример так себе, ибо большинство кейсов перекрываются новыми API.
                                                                      Именно поэтому это — хороший пример. Закручивать гайки можно тогда, когда вы, во-первых — лидер, а во-вторых — если вы предлагаете приемлемую альтернативу разработчикам.

                                                                      Просто чем больше доля рынка, которой вы владеете, тем быстрее можно «закручивать гайки».
                                                                      У MS раньше была большая доля рынка по браузерам и где он теперь?
                                                                      А вот тут — у как раз пример обратного: заморозив в 2001м году развитие своего браузера Microsoft сделал ставку на то, что «через год-два» все пересядут на Avalon… но его разработка настолько затянулась и результат получился настолько невнятным, что разработчики других браузеров смогли «догнать и перегнать».

                                                                      Дурацкая ошибка в стратегическом планировании, которая стоила миллиардов, а в недалёком будущем может привести и к тому, что Windows станет историей…
                                        • 0
                                          Админить передачи есть смысл в сложных дорожных условиях. АКПП будет просто наращивать обороты, проскальзывать, и переключать скорости. В то время как на первой передаче больше шансов выбраться.
                                          • 0
                                            Админить передачи есть смысл в сложных дорожных условиях. АКПП будет просто наращивать обороты, проскальзывать, и переключать скорости. В то время как на первой передаче больше шансов выбраться.

                                            Современные АКПП принимают данные не только с датчика оборотов и датчиков угловой скорости на колесах, но и с акселерометров, датчиков в подвеске и даже температурного датчика. На новых авто автоматы крайне интеллектуальны, они умеют распознавать сложные ситуации и некоторое время подстраивается под стиль езды водителя.

                                            А проскальзывать при желании уже давным-давно не даёт трекшн-контроль, который ставится даже на мотоциклы.
                              • 0
                                Это навык более высокого уровня
                                Расскажите подробнее о ваших мерах уровней деятельности, пожалуйста.

                                Зачем?
                                Очевидно затем, что нужно как-то уговорить компьютер работать по алгоритму.
                                • 0
                                  Расскажите подробнее о ваших мерах уровней деятельности, пожалуйста.

                                  О моих? Жаль, конечно, но разбиение поведенческих, когнитивных, лингвистических навыков на уровни придумал совсем не я.

                                  Очевидно затем, что нужно как-то уговорить компьютер работать по алгоритму.

                                  А спаять компьютер для этого надо или достаточно готовый взять?
                                  • 0
                                    придумал совсем не я
                                    Тогда объясните эту чудесную методику для простых смертных, раз уж приводите ее результаты как аргумент.

                                    А спаять компьютер для этого надо или достаточно готовый взять?
                                    Смешное сравнение, да. В контексте обсуждения, если у вас есть персональный девопс, который с пеленок настраивал и будет настраивать вам окружение, то, пожалуй, можно обойтись и без столь ценного навыка. Но в реальном мире у подавляющего большинства разработчиков такого доброго друга нет.
                                    • 0
                                      Тогда объясните эту чудесную методику для простых смертных, раз уж приводите ее результаты как аргумент.

                                      Мне вам курс по психологии и педагогике прочитать? Или вы просто до сих пор не знали, что существуют области знаний, изучающих цель, процесс и результат обучения?

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

                                      На текущий момент большинство людей знакомится с программированием именно в условиях наличия такого персонального девопса и с запретом на самостоятельное администрирование. Эти места именуются школами, образовательными центрами, колледжами и вузами. Странно, что вы этого не знали.
                                      • 0
                                        Мне вам курс по психологии и педагогике прочитать?
                                        Ясно, защитить аргументацию вы не в силах.

                                        На текущий момент большинство людей знакомится с программированием именно в условиях наличия такого персонального девопса и с запретом на самостоятельное администрирование. Эти места именуются школами, образовательными центрами, колледжами и вузами.
                                        Странно, что вы не в курсе о качестве этого «персонального девопса»): «Вот тебе учебник, остающий на пару версий от ПО. Не важно, что новые версии не особо совместимы между собой. Гугли, разбирайся как хочешь.» Да и в любом приличном IT-вузике или колледже основам администрирования учат.
                                        • 0
                                          Ясно, защитить аргументацию вы не в силах.

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

                                          Странно, что вы не в курсе о качестве этого «персонального девопса»): «Вот тебе учебник, остающий на пару версий от ПО. Не важно, что новые версии не особо совместимы между собой. Гугли, разбирайся как хочешь.»

                                          Я, как человек, прошедший путь от ассистента до директора образовательного центра при вузе, информации о положении дел в данной отрасли имею куда больше, чем обычный программист. Качество зависит от цены, а в школах и колледжах (уточню, информация сугубо о делах Москве и МО) сейчас платят больше, чем в вузах, поэтому многие вузовские специалисты туда и перешли, значительно повысив качество образовательного процесса.
                                          • 0
                                            Я вам намекаю, что ваши лирические отступления не относятся напрямую к обсуждаемой теме. Это выглядит как попытка увести разговор подальше от шаткого аргумента. Для юзера владение компьютером — это один из основных навыков и его развитость прямо пропорциональна его продвинутости.

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

                                            многие вузовские специалисты туда и перешли, значительно повысив качество образовательного процесса.
                                            Настолько повысили, что перестали студентам IT-специальностей преподавать администрирование?
                                            • 0
                                              Я вам намекаю, что ваши лирические отступления не относятся напрямую к обсуждаемой теме. Это выглядит как попытка увести разговор подальше от шаткого аргумента. Для юзера владение компьютером — это один из основных навыков и его развитость прямо пропорциональна его продвинутости.

                                              В профессиональном стандарте не замечено слово «продвинутость». Есть «уровень квалификации».

                                              Владение компьютером — сущность нечеткая и тоже имеет разные уровни. Я не особо понимаю, для чего, например, программисту, например, микроконтроллеров вы хотите предложить учить администрирование ПК.

                                              Настолько повысили, что перестали студентам IT-специальностей преподавать администрирование?

                                              О, вы сами наступили в капкан)) Преподавание администрирования программистам в некотором объёме присутствует в качестве общеобразовательной дисциплины, но после длительного обучения программированию. Обычно это шестой семестр.
                                              • 0
                                                В профессиональном стандарте не замечено слово «продвинутость». Есть «уровень квалификации».
                                                Ох, как же вас задело) Речь шла про бытовое использование навыков, это слово было использовано не случайно, я даже курсивом выделил.

                                                Я не особо понимаю, для чего, например, программисту, например, микроконтроллеров вы хотите предложить учить администрирование ПК.
                                                Микроконтроллеры чаще всего — это сетевые устройства, как можно изучая это обойти стороной основы компьютерных сетей?

                                                Преподавание администрирования программистам в некотором объёме присутствует в качестве общеобразовательной дисциплины, но после длительного обучения программированию.
                                                То есть вы со мной сначала согласились, а потом с понтом опровергли?) В переводе на русский язык это означает: «Основы администрирования изучаются параллельно курсу программирования, по ходу программы знания углубляются».
                                                • 0
                                                  Ох, как же вас задело) Речь шла про бытовое использование навыков, это слово было использовано не случайно, я даже курсивом выделил.

                                                  А, так вы даже не в курсе, что «бытовые навыки» — это термин, означающий подмножество навыков из множества, именуемого «социально-бытовые навыки»?

                                                  Микроконтроллеры чаще всего — это сетевые устройства, как можно изучая это обойти стороной основы компьютерных сетей?

                                                  Изучение устройства сетей не есть изучение их администрирования, если вы не в курсе. Это, кстати, тоже разные предметы. И тем более не изучение администрирования в целом.

                                                  Но я напомню, что речь об администрировании рабочего ПК, что типовому разработчику программ, не предназначенных для выполнения на этом ПК или ином такого же типа не требуется.

                                                  То есть вы со мной сначала согласились, а потом с понтом опровергли?) В переводе на русский язык это означает: «Основы администрирования изучаются параллельно курсу программирования, по ходу программы знания углубляются».

                                                  У вас, видимо, свой особый русский язык. Я на общепринятом написал, что администрирование присутствует в процессе обучения строго после программирования. Предмет, кстати, не обязательный, а по выбору, и присутствует не во всех образовательных программах подготовки программистов. Читайте верно))
                                                  • 0
                                                    Изучение устройства сетей не есть изучение их администрирования, если вы не в курсе.
                                                    Для программистов (без «сетевого» уклона, как в ИСиТ) это преподается в рамках одного курса. Странно было бы изучать отдельно сети, а отдельно — их администрирование.

                                                    речь об администрировании рабочего ПК, что типовому разработчику программ, не предназначенных для выполнения на этом ПК или ином такого же типа не требуется.
                                                    Что вы понимаете под «типовым разработчиком программ»?) Программирование многообразно.
                                                    Достаточно сложные проекты требуют понимания процесса деплоя, что часто сопряжено как раз с администрированием рабочего ПК.

                                                    Я на общепринятом написал, что администрирование присутствует в процессе обучения строго после программирования.
                                                    Как-то это противоречит вашим же словам выше.

                                                    Предмет, кстати, не обязательный, а по выбору
                                                    Может в вашей школе он селективный, но в вузиках вас загрузят этой инфомрацией обязательно.

                                                    ЗЫ Вот интересно так выходит: у вас есть, возможно, некоторые знания об учебных программах в вашем родном заведении, но вы этот свой опыт лихо экстраполируете на всё вокруг. Если бы вы еще на ГОСТы по специальностям ссылались или иные документы — это дело одно, но вы же начинаете говорить неоднозначные вещи вообще без какой-либо аргументации) У меня заканчиваются поводы вести этот диалог.
                                                    • 0
                                                      Для программистов (без «сетевого» уклона, как в ИСиТ) это преподается в рамках одного курса. Странно было бы изучать отдельно сети, а отдельно — их администрирование.

                                                      Для «программистов без сетевого уклона» администрирование сетей может преспокойно не даваться вовсе или даваться в составе общего курса администрирования.

                                                      Что вы понимаете под «типовым разработчиком программ»?) Программирование многообразно.
                                                      Достаточно сложные проекты требуют понимания процесса деплоя, что часто сопряжено как раз с администрированием рабочего ПК.

                                                      Полно вам, деплой в нормальной компании должен выполняться отдельным человеком/отделом. И уж точно не все разработчики его обязаны знать.

                                                      Может в вашей школе он селективный, но в вузиках вас загрузят этой инфомрацией обязательно.

                                                      ЗЫ Вот интересно так выходит: у вас есть, возможно, некоторые знания об учебных программах в вашем родном заведении, но вы этот свой опыт лихо экстраполируете на всё вокруг. Если бы вы еще на ГОСТы по специальностям ссылались или иные документы — это дело одно, но вы же начинаете говорить неоднозначные вещи вообще без какой-либо аргументации) У меня заканчиваются поводы вести этот диалог.

                                                      Я бы порекомендовал вам перед продолжением диалога перечитать мои сообщения. Складывается, что вы не освоили русский язык или несознательно пытаетесь понизить уровень собеседника до своего. Другого объяснения того, что вы внезапно решили, что я работаю или работал в какой-то школе, а знания мои ограничили сугубо учебной программой всего одного «родного» заведения.
                                                      • 0
                                                        Для «программистов без сетевого уклона» администрирование сетей может преспокойно не даваться вовсе или даваться в составе общего курса администрирования.
                                                        Дичь. Программистов узкой специализации никто не готовит, поэтому дают широкий кругозор.

                                                        деплой в нормальной компании должен выполняться отдельным человеком/отделом.
                                                        Деплой на локальную машину почти с гарантией будет отличаться от «боевого» деплоя, а это уже выпадает из сферы интересов девопса. В лучшем случае это будет связка каких-нибудь скриптов, но это не освобождает от необходимости их понимать.

                                                        И уж точно не все разработчики его обязаны знать.
                                                        «В нормальной компании» обязаны знать все, ибо bus factor.

                                                        пытаетесь понизить уровень собеседника до своего
                                                        Вы со своей хамской манерой общения сами прекрасно справляетесь с этой задачей)
                                                        • 0
                                                          Дичь. Программистов узкой специализации никто не готовит, поэтому дают широкий кругозор.

                                                          О как)) А вузы в курсе? У нас на кафедре в наличии три направления подготовки специальности 230201: одно общее, два специальных узких. Программы обучения первые два года одинаковы, а вот на третий расходятся. И администрирование присутствует только у одного из них. А еще в наличии параллельная кафедра со своим спектром специализаций и иными программами обучения. Продолжать? Или вы сами откроете ОКСО и посмотрите?))

                                                          Деплой на локальную машину почти с гарантией будет отличаться от «боевого» деплоя, а это уже выпадает из сферы интересов девопса. В лучшем случае это будет связка каких-нибудь скриптов, но это не освобождает от необходимости их понимать.

                                                          Хм, развертывание есть как раз одна из прямых обязанностей девопса (DevOps engineer). Мы с вами одной терминологией пользуемся?

                                                          «В нормальной компании» обязаны знать все, ибо bus factor.

                                                          Правда? А чего в требованиях к вакансии этого почти никогда не пишут?

                                                          Вы со своей хамской манерой общения сами прекрасно справляетесь с этой задачей)

                                                          Прошу меня извинить, вы правы в отношении хамства. Я сегодня несколько на взводе по сторонним причинам, а вам нахамил по пустяковой причине — мне не понравилось, что вы невнимательно с моей точки зрения читали мои сообщения. Думаю, дело в том, что я скорее всего просто неясно выразился. Я за здравый диалог, простите. И за начало сообщения тоже((
                                                          • 0
                                                            У нас на кафедре в наличии три направления подготовки специальности 230201: одно общее, два специальных узких

                                                            Просветите, пожалуйста: как направление может ветвиться на поднаправления?
                                                            В стандарте (230201) есть дисциплина «Информационные сети», что же там студенты будут делать на практиках, если не настраивать сети и сетевое ПО? Это одна из основных задач администрирования.

                                                            А чего в требованиях к вакансии этого почти никогда не пишут?
                                                            Иногда пишут (под соусом «базовых навыков работы в *nix-системах»), иногда нет, как и многие другие вещи, которые считаются сами собой разумеющимися для программиста в данной позиции.
                                                            • 0

                                                              А так и может, по профилям (код ВПО 3):

                                                              230400.62 — Информационные системы и технологии:
                                                              Профиль 1. Информационные системы и технологии;
                                                              Профиль 3. Информационные технологии в дизайне;
                                                              Профиль 4. Информационные технологии в медиаиндустрии.

                                                              Текущее:
                                                              09.03.02 Информационные системы и технологии:
                                                              Профиль: Информационные системы и технологии обработки цифрового контента;
                                                              Профиль: Информационные технологии в медиаиндустрии и дизайне;
                                                              Профиль: Технологии дополненной и виртуальной реальности в печатной продукции;
                                                              Профиль: Программное обеспечение игровой компьютерной индустрии.

                                                              Раньше разбивали прям на отдельные специальности, теперь деление стало многоуровневым.

                                                              В стандарте (230201) есть дисциплина «Информационные сети», что же там студенты будут делать на практиках, если не настраивать сети и сетевое ПО? Это одна из основных задач администрирования.

                                                              Хм, а для чего им на паре по сетям (а не по администрированию сетей) настраивать сети? На этих парах учат теорию сетей (причем всех, а не доступных к администрированию) и пишут программы, реализующие те или иные протоколы и алгоритмы.
                                                              Мы давали в качестве дополнительных лабораторные по настройке сетевого оборудования (у университета договор с HP по этой теме), но в целом администрирование шло отдельным курсом, как я и писал выше. В норме программа идет по книге «Сети» Таненбаума, там и так много всего, чтобы в один семестр еще и администрирование запихивать. Когда я получал высшее, у нас самих именно администрирования сетей не было вообще.

                                                              Иногда пишут (под соусом «базовых навыков работы в *nix-системах»), иногда нет, как и многие другие вещи, которые считаются сами собой разумеющимися для программиста в данной позиции.

                                                              Про *nix — это отдельная тема. Компания, где я сейчас работаю, занимается продуктом на линуксовой базе. Навыки администрирования оных приветствуются, но не обязательны для большинства позиций, и многие не умеют. Согласитесь, нет смысла требовать от специалиста, работающего над лексическим анализатором, знания никсов. Пусть он лучше хорошо знает методы оценки эмоциональной окраски текста и математику. Каждому своё дело, количество лишних действий должно быть минимально.

                                                              Вся проблема в том, что нынешние методы администрирования ПК во многом являются результатом работы разрозненных групп людей, ничего не понимавших в пользовательских интерфейсах и не имевших даже общего соглашения о них. Они (интерфейсы) по большей части неудобны и устарели. Я, как и автор статьи, считаю, что большинство действий чрезмерно усложнено. Средства администрирования следует стираться делать так, чтобы ими пользоваться учиться не приходилось в максимальном числе случаев, как не учатся специально администрировать современный смартфон.
                                                              • 0
                                                                Хм, а для чего им на паре по сетям (а не по администрированию сетей) настраивать сети?
                                                                Чтобы части информационной системы, которую проектирует будущий инженер, смогли общаться по протоколам своего верхнего уровня. Чтобы банально подключение к базе данных прокинуть нужно создать пользователя и ограничить его права.

                                                                В норме программа идет по книге «Сети» Таненбаума, там и так много всего, чтобы в один семестр еще и администрирование запихивать.
                                                                Там немало теории по сабжу, кстати)

                                                                у нас самих именно администрирования сетей не было вообще
                                                                Как отдельной дисциплины — и у нас не было. Но в рамках других эти знания давались.

                                                                Навыки администрирования оных приветствуются, но не обязательны для большинства позиций
                                                                Но ведь это конкурентное преимущество кандидата, согласитесь?)

                                                                Согласитесь, нет смысла требовать от специалиста, работающего над лексическим анализатором, знания никсов.
                                                                Тут я с вами безусловно согласен. Но нет же учебного курса «разработчика лексических анализаторов», зато есть «Прикладная математика и информатика», а направление для них уже подразумевает куда более широкий спектр знаний и навыков. Но, опять же, все зависит от используемого тулчейна)

                                                                Вся проблема в том, что нынешние методы администрирования ПК во многом являются результатом работы разрозненных групп людей, ничего не понимавших в пользовательских интерфейсах и не имевших даже общего соглашения о них.
                                                                Я согласен с вами, но альтернатив у нас нет и вряд ли это будет уважительной причиной отказываться выполнять свою работу (по должностной инструкции) в некрутой компании и/или на небольшом проекте, где нет выделеной должности девопса, коих большинство.

                                                                Но программисту ведь нужно не столько серьезное администрирование уровня предприятий, сколько навык настройки своего рабочего окружения, тестового и продакшна, автоматизация каких-то рутинных операций с этим связанных. Это совсем иной уровень работы.
                                                                • 0
                                                                  Чтобы части информационной системы, которую проектирует будущий инженер, смогла общаться по протоколам своего уровня приложений. Чтобы банально подключение к базе данных прокинуть нужно создать пользователя и ограничить его права.

                                                                  Для обеспечения возможности общения по протоколам следует знать протоколы, их и учат (топологии, алгоритмы кодирования/декодирования, передачи и т.п.).

                                                                  Программисту для подключения к БД следует знать адрес, пользователя и пароль, а не создать. Зачем его создавать, если он там уже есть? А он должен быть, если базу настроили для работы программиста. Администратор — всего лишь уровень абстракции между программистом и базой, как IDE с автодополнением. Можно всё писать в блокноте, но это не столь эффективно уже, проекты растут, количество знаний и умений тоже. Даже админы уже делятся по специализации и не знают всего сразу.

                                                                  Но программисту ведь нужно не столько серьезное администрирование уровня предприятий, сколько навык настройки своего рабочего окружения, тестового и продакшна, автоматизация каких-то рутинных операций с этим связанных. Это совсем иной уровень работы.

                                                                  Соглашусь, что для работы следует настроить среду (программисту или администратору это делать придется — не важно сейчас). Проблема в том, что настройка среды сейчас излишне сложна, всё можно делать проще. И необходимость специально разбираться и следить за кучей вещей следует убрать, она никак не помогает основной задаче, поэтому является лишней.
                                                                  • 0
                                                                    Для обеспечения возможности общения по протоколам следует знать протоколы, их и учат (топологии, алгоритмы кодирования/декодирования, передачи и т.п.).
                                                                    Вы предлагаете готовить водителя, но так, чтобы он не водил, а ковырялся в моторе.

                                                                    Программисту для подключения к БД следует знать адрес, пользователя и пароль, а не создать.
                                                                    Как проверить, что всё работает? На личном ноутбуке, конечно же.

                                                                    Администратор — всего лишь уровень абстракции
                                                                    Любые абстракции имеют свойство течь. Чтобы разобраться с тем, как работает система, ее нужно уметь эксплуатировать хотя бы в игрушечных условиях.

                                                                    как IDE с автодополнением. Можно всё писать в блокноте, но это не столь эффективно уже, проекты растут, количество знаний и умений тоже.
                                                                    Иметь знания, но не использовать их на практике и не иметь их вовсе — это две большие разницы.

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

                                                                    И необходимость специально разбираться и следить за кучей вещей следует убрать, она никак не помогает основной задаче, поэтому является лишней.
                                                                    Не нужно за всем следить, главное — понимать базовые принципы, а они не изменяются десятками лет.
                                                                    • 0
                                                                      Для обеспечения возможности общения по протоколам следует знать протоколы, их и учат (топологии, алгоритмы кодирования/декодирования, передачи и т.п.).
                                                                      Вы предлагаете готовить водителя, но так, чтобы он не водил, а ковырялся в моторе.
                                                                      На заре автомобилестроения — так и учили. Вообще есть ощущение, что при взляде назад окажется, что водителей почти всегда так учили.

                                                                      Просто потому, что период времени, когда техника стала достаточно «умной» для того, чтобы это было не нужно, но ещё «недостаточно умной» для того, чтобы полностью заменить водителей (последние лет 20, наверное), окажется, по историческим меркам, весьма коротким…
                                                                      • 0
                                                                        На заре автомобилестроения — так и учили. Вообще есть ощущение, что при взляде назад окажется, что водителей почти всегда так учили.

                                                                        На заре автомобилестроения это было актуально, так как не было сервисных сетей, для движения требовалось много операций (отечественные авто очень долго требовали регулярной укладки консистентной смазки в узлы подвески и трансмиссии), а устройство авто было крайне простым.

                                                                        Сейчас в этом нет смысла, а научить водителя копаться в авто в сколь-либо приемлемый срок без отрыва от основного занятия просто невозможно. С администрированием ПК происходит тот же процесс, о чем статья и свидетельствует.
                                                                      • 0
                                                                        Вы предлагаете готовить водителя, но так, чтобы он не водил, а ковырялся в моторе.

                                                                        Водитель — это пользователь, механик — админ, член конструкторской группы — программист, технолог производства — девопс. Примерно так.

                                                                        Как проверить, что всё работает? На личном ноутбуке, конечно же.

                                                                        У нас во время курса БД базу разворачивали на отдельном общем сервере, к ней подключались и те, кто был со своими ноутбуками (таких было немного, давно это было), и те, кто пользовался вузовскими ПК. Вопросы администрирования БД не освещались вообще, только проектирование и реализация БД и запросов.

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

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

                                                                        Иметь знания, но не использовать их на практике и не иметь их вовсе — это две большие разницы.

                                                                        Накопление и хранение данных для человека является крайне ресурсоёмким. А количество данных растет сейчас с такой скоростью, что даже своё сектор актуализировать приходится постоянно, не то что побочные. Вы, думаю, знаете термин «технологическая сингулярность»?

                                                                        Всё упирается в гибкость. Юзеров все так же нужно будет создавать, инстансы серверов как-то нужно будет отличать друг от друга.

                                                                        Всё можно упростить. Проблема тут заключается примерно в том же, в чем и у простого программирования перед доказательным: несмотря на точную область, концепции в массе своей используются без проверки целесообразности и качества исполнения. Большинство из них являются плодом интуитивных догадок непрофессионалов в сфере восприятия, управления (как людьми, так и системами) и иных профильных специалистов.
                                                                    • 0
                                                                      Там немало теории по сабжу, кстати)

                                                                      Я знаю, она у меня есть. Моя бывшая вела практику по этому курсу)) Но её всю не дают на данных специальностях.

                                                                      Как отдельной дисциплины — и у нас не было. Но в рамках других эти знания давались.

                                                                      У нас не давались, а для бакалавров ввели упоминаемую выше дисциплину администрирования (которую передали мне, собственно, а я её передал товарищу, который вел её от моего имени).

                                                                      Но ведь это конкурентное преимущество кандидата, согласитесь?)

                                                                      Сугубо при прочих равных да. Но на практике обычно либо то, либо другое встречалось.

                                                                      Тут я с вами безусловно согласен. Но нет же учебного курса «разработчика лексических анализаторов», зато есть «Прикладная математика и информатика», а направление для них уже подразумевает куда более широкий спектр знаний и навыков. Но, опять же, все зависит от используемого тулчейна)

                                                                      Специальность с кодами, начинающимися с 01, программистов не выпускают, если в строгом смысле. Это математики, которых учат программировать в той или иной мере. Ну, и я уже упоминал, что существуют программы подготовки в рамках специальности.

                                                                      Я согласен с вами, но альтернатив у нас нет и вряд ли это будет уважительной причиной отказываться выполнять свою работу (по должностной инструкции) в некрутой компании и/или на небольшом проекте, где нет выделеной должности девопса, коих большинство.

                                                                      Но программисту ведь нужно не столько серьезное администрирование уровня предприятий, сколько навык настройки своего рабочего окружения, тестового и продакшна, автоматизация каких-то рутинных операций с этим связанных. Это совсем иной уровень работы.

                                                                      Обычно этот труд всё-таки разделяют. У нас для этого отдельный сотрудник. Сейчас он отсутствует, в результате чего действительно приходится отрывать программистов от их дел, это действительно сильно тормозит процесс.
                                                                      • 0
                                                                        Специальность с кодами, начинающимися с 01, программистов не выпускают, если в строгом смысле. Это математики, которых учат программировать в той или иной мере.
                                                                        За все специальности не скажу, но насчет озвученной мной — вы неправы, она двойная и набор дисциплин достаточно широк, чтобы покрыть широкий спектр областей промышленной разработки. Качество переподавания этих дисциплин в типичном учебном заведении — это уже другой вопрос.

                                                                        Обычно этот труд всё-таки разделяют.
                                                                        Сис.админов с программистами? Да. Программистов с девопсами — нет. Бывают редкие исключения, такие же как выделенные разработчики баз данных, но такие конторы достаточно сложно встретить и это обозначает именно сложность процесса, а не факт его наличие. То есть за свою карьеру программисту какие-то начальные навыки администрировании пригодятся почти наверняка. Можно учиться этому на работе, за деньги заказчиков/работодателей, но все же лучше иметь хорошие базовые знания еще с учебной скамьи.
                                                                        Не каждый вид деятельности возможно рационально разделить.

                                                                        У нас для этого отдельный сотрудник. Сейчас он отсутствует, в результате чего действительно приходится отрывать программистов от их дел, это действительно сильно тормозит процесс.
                                                                        А не умели бы программисты в девопс, тогда процесс вообще бы встал.

                                                                        ¯\_(ツ)_/¯
                                                                        • 0
                                                                          За все специальности не скажу, но насчет озвученной мной — вы неправы, она двойная и набор дисциплин достаточно широк, чтобы покрыть широкий спектр областей промышленной разработки. Качество переподавания этих дисциплин в типичном учебном заведении — это уже другой вопрос.

                                                                          Выбирать-то они могут какую угодно работу, я говорю о том, как эти специальности классифицируются с точки зрения системы образования и профподготовки. Тут не так давно обсуждали это (тут), это именно математики, которых учат программировать. Им при этом не дают ни администрирования, ни навыков управления проектами как правило.

                                                                          Сис.админов с программистами? Да. Программистов с девопсами — нет. Бывают редкие исключения, такие же как выделенные разработчики баз данных, но такие конторы достаточно сложно встретить и это обозначает именно сложность процесса, а не факт его наличие.

                                                                          Где бы ни был, кроме госучреждений, в которых на всём экономили, обычно брали специального недопрограммиста со знанием администрирования в качестве девопс инженера.

                                                                          А не умели бы программисты в девопс, тогда процесс вообще бы встал.

                                                                          А он и встал слегка, большинство нужного и не умеет, пришлось оторвать ведущего и на него это повесить временно. Он уже сказал, что предпочел бы не уметь))
                                                                          • 0
                                                                            Выбирать-то они могут какую угодно работу, я говорю о том, как эти специальности классифицируются с точки зрения системы образования и профподготовки.
                                                                            Я про работу не писал, это и так очевидно. С точки зрения системы образования у них в дипломе написано: "прикладной математик, системный программист". Ну и образовательный стандарт со списком дисциплин.

                                                                            Где бы ни был, кроме госучреждений, в которых на всём экономили, обычно брали специального недопрограммиста со знанием администрирования в качестве девопс инженера.
                                                                            Может у вас какая-то специфическая область деятельности? Я встречал админов, которые настраивали какую-то инфраструктуру, а деплоем всегда занимались разработчики. Для продакшна часто были специальные команды внедренцев, но в подготовке релизов они не участвовали.
                                                                            • 0
                                                                              Я про работу не писал, это и так очевидно. С точки зрения системы образования у них в дипломе написано: «прикладной математик, системный программист». Ну и образовательный стандарт со списком дисциплин.

                                                                              Эта запись, собственно, свидетельствует о том, что образование программиста широкого профиля он не получал. Прикладной математик, программная квалификация которого не выходит за рамки системного программирования (программист и системный программист — разные специальности по паспортам).

                                                                              Может у вас какая-то специфическая область деятельности? Я встречал админов, которые настраивали какую-то инфраструктуру, а деплоем всегда занимались разработчики. Для продакшна часто были специальные команды внедренцев, но в подготовке релизов они не участвовали.

                                                                              Да нет, типовая довольно. Мне чаще попадались места без отдельных админов, которые что-то настраивали, а только с девопсами (т.е. сети внутренние, сервер и прочую ерунду мог настроить любой сотрудник, а обязанности по деплою были у одного).
                                                                              • 0
                                                                                Эта запись, собственно, свидетельствует о том, что образование программиста широкого профиля он не получал.
                                                                                Подозреваю, что это уклон, а не ограничение. Ибо в образовательном стандарте описано, что прикладной разработкой выпускники так же должны владеть.

                                                                                • 0
                                                                                  Подозреваю, что это уклон, а не ограничение. Ибо в образовательном стандарте описано, что прикладной разработкой выпускники так же должны владеть.

                                                                                  Это означает, что их программная подготовка выходит за рамки общеобразовательной, в отличие, допустим, от спецов по ядерным реакторам, которые делают драйверы устройств на лабораторных, но квалификации системного программиста не имеют при выпуске.

                                                                                  А уклон — это профиль подготовки, примеры которых я приводил ранее. При наличии оной пишут сферу: «прикладной математик, системный программист в медиаиндустрии».
                                                  • 0
                                                    Я не знаю, кто вы и каким образом прошли этот славный путь, но раз вы делаете такие заявления, значит слишком давно не видели живого студента и не интересовались его проблемами.

                                                    Да, очень давно, целый день уже не вижу. Еще день, и само слово «студент» забуду. Хотя нет, не забуду, вон мой дипломник года за столом напротив сидит.
                                                    • 0
                                                      Ага, и брат у вас по счастливому совпадению авиаконструктор. Вы прям готовились к этому спору.
                                                      Ваш дипломник, случаем, не компьютер вам настраивать пришел?
                                                      • 0
                                                        У меня еще и сестра есть, что поделать)) Я не виртуальный персонаж, могу устроить нам встречу, и дипломника с собой возьму. Пойдет? Мне не жалко.
                                      • 0
                                        Это навык более высокого уровня, как, например, вождение авто или умение ясно выражаться

                                        Ну то есть вы считаете, что профессиональный конструктор автомобилей не обязан уметь водить авто, а писатель не обязан уметь ясно выражаться?
                                        • 0
                                          Ну то есть вы считаете, что профессиональный конструктор автомобилей не обязан уметь водить авто, а писатель не обязан уметь ясно выражаться?

                                          А конструктор самолетов обязан быть пилотом? Конструктор ракет — космонавтом? А программист, пишущий софт для магнитолы — музыкантом?
                                          • 0
                                            А конструктор самолетов обязан быть пилотом? Конструктор ракет — космонавтом?

                                            Вы подменяете понятия (с). Конструктор самолётов не обязан быть пилотом, но уметь управлять самолётом, естественно, должен. И конструктор ракет прекрасно знает, как она устроена, как она заправляется, как она управляется. Другое дело, что профессия конструктора ракет не предполагает, что его посадят в ракету и отправят на головы вероятного противника. А профессия программиста обычно предполагает, что ему придется что-то делать на том же компьютере, для которого он пишет софт.
                                            • 0
                                              Вы подменяете понятия (с). Конструктор самолётов не обязан быть пилотом, но уметь управлять самолётом, естественно, должен.

                                              Позвоню брату, скажу, что пора ему увольняться, чего это он без умения управлять что-то там конструирует.

                                              И конструктор ракет прекрасно знает, как она устроена, как она заправляется, как она управляется.

                                              И это, разумеется, один человек, а разделение труда для увеличения производительности и повышения сложности систем — блажь и выдумка, я понял вашу мысль. Генри Форд в гробу перевернулся пару раз))

                                              А профессия программиста обычно предполагает, что ему придется что-то делать на том же компьютере, для которого он пишет софт.

                                              Если только ввиду экономии. В нормальных крупных организациях вам никто свой компьютер администрировать не позволит.
                                              • 0
                                                Позвоню брату, скажу, что пора ему увольняться, чего это он без умения управлять что-то там конструирует.

                                                Вы так плохо думаете про вашего брата, что он не знает, что делает?
                                                И это, разумеется, один человек, а разделение труда для увеличения производительности и повышения сложности систем — блажь и выдумка

                                                А причем тут разделение труда? Вы же не про разделение труда целое полотенце постов написали, а про узость профессиональной подготовки.
                                                Если только ввиду экономии. В нормальных крупных организациях вам никто свой компьютер администрировать не позволит.

                                                Кому, программистам? В любой нормальной ИТ-компании программисты свободно настраивают своё окружение сами. Это вообще не работа администратора, кстати. Админ установит вам нужный пакет софта, а кастомизация среды — дело сугубо индивидуальное. Запрещают администрировать только в корпорациях с казематным режимом.
                                                • 0
                                                  Вы так плохо думаете про вашего брата, что он не знает, что делает?

                                                  Он знает, что делает, но управлять самолетом не умеет. Это разные вещи, о чем я вам и говорю))

                                                  А причем тут разделение труда? Вы же не про разделение труда целое полотенце постов написали, а про узость профессиональной подготовки.

                                                  А узкие направления каким образом возникают?

                                                  Кому, программистам? В любой нормальной ИТ-компании программисты свободно настраивают своё окружение сами. Это вообще не работа администратора, кстати. Админ установит вам нужный пакет софта, а кастомизация среды — дело сугубо индивидуальное. Запрещают администрировать только в корпорациях с казематным режимом.

                                                  Запрещают администрировать в любой компании, где есть хоть какой-то намек на нормальную СБ. Разрешать администрировать систему программисту всё равно что разрешать копаться в двигателе водителю.
                                                  • 0
                                                    Запрещают администрировать в любой компании, где есть хоть какой-то намек на нормальную СБ.
                                                    Не путайте «нормальную СБ» и «надувающую щёки СБ».

                                                    Нормальная СБ (Google, Microsoft, Yandex и тд. и т.п.) знает, что запрещать человеку администрировать систему = получить снижение производительности без увеличения безопасности. Надувающая щёки СБ (банки, разного рода госструктуры и т.д. и т.п.) — да, может закрутить гаки до состояния, что разработчики оттуда просто сбегут.

                                                    При этом, что забавно, из компаний первого класса утечек на порядок меньше, чем из компаний второго класса — но это любителей сертификатов и других бумажек — не останавливает. Но зачем о них-то говорить?
                                                    • 0
                                                      По поводу утечек: у меня нет достоверной информации и анализа корреляции сферы деятельности с утечками, поэтому не могу этого с вами обсудить.

                                                      По поводу СБ: вы смешали компании, где производство ПО является основным занятием и компании, где оно побочный продукт. Во вторых требуются стандартные ремесленники, типовые и одинаковые, проще заменить сотрудника, чем как-то сложно балансировать рабочее взаимодействие кучи «творческих личностей».

                                                      Да и не требуется на самом деле в норме каких-то особых решений большинству. У нас в компании разрешено использовать любую ОС и любые среды и средства для программирования. Поначалу был зоопарк, кто-то сидел на одном линуксе с вимом, кто-то на втором с IDEA, кто-то на винде, зоопарк. Даже клавиатуры и мыши были у многих свои. Через полгода у всех было всё почти одинаково вплоть до цветовой схемы. Люди думают, что они все очень индивидуальные, на самом деле очень одинаковые.
                                                    • 0
                                                      Предлагается просить СБ прикручивать мне к vim'у автокомплит и ale + hdevtools + stack? С последним я на выходных дома попотел, так что с радостью, на самом деле!
                                                      • 0
                                                        Предлагается просить СБ прикручивать мне к vim'у автокомплит и ale + hdevtools + stack? С последним я на выходных дома попотел, так что с радостью, на самом деле!

                                                        Да, прям пишете заявку и отправляете, так и делается. Правда, вас могут попросить обосновать необходимость.
                                                        • 0
                                                          А как её обосновывать? «Мне так удобно и привычно код писать» сойдёт?
                                                          • 0
                                                            А это уже зависит от служебного и общественного положения, навыка владения естественным языком и правил внутренних. Тут начинается социальное взаимодействие со всеми вытекающими. Поэтому данную систему и не любят программисты.))
                                                            • 0
                                                              Да, потому что вместо того, чтобы просто сесть и писать код, приходится кого-то убеждать, владеть естественным языком и так далее.

                                                              Думается, начальникам очень не понравится, если программистов помимо зарплаты придётся мотивировать своим общественным положением (не, начальник, чё-т ты не очень пахан у нас тут, не буду твои таски пилить, пойду таски людей из соседнего отдела запилю), естественным языком и всяким таким.
                                                      • 0
                                                        А узкие направления каким образом возникают?

                                                        А вы не путайте должностные обязанности и профессиональную подготовку. Узкие должностные обязанности — дело обычное, но это штука временная. Сегодня у вас одна работа, завтра другая. А узкая профессиональная подготовка — это удел редких специальностей, а для программиста это вообще деградация. Вы можете быть специалистом по какой-то одной платформе, но чтобы быть хорошим специалистом, вам нужно будет развиваться вместе с ней, знать хотя бы в общих чертах смежные продукты, знать нюансы её применения и т.д. И уйти с неё, когда платформа постареет.
                                                        Сегодня вы работаете за 3 тыщи баксов в компании, где у вас есть администратор деплоя, завтра вам предложат 5 тысяч в компании, где вы должны сами деплоить проекты на препродакшене. Вы назовете вторую компанию нищебродской и откажетесь?
                                                        Запрещают администрировать в любой компании, где есть хоть какой-то намек на нормальную СБ.

                                                        Вах, полегче с такими заявлениями :) Мне приходилось работать на режимных объектах, и даже там программисты имели права администраторов на своих машинах и на девелоперских серверах. Не давать им такие права — это все равно что стесняться показывать врачу свою голую задницу. Программист — не водитель. Это квалифицированный специалист, и он для ИТ-безопасников помощник, а не враг.
                                                        • 0
                                                          А узкая профессиональная подготовка — это удел редких специальностей, а для программиста это вообще деградация.

                                                          Т.е. по-вашему быть специалистом, допустим, по машинному обучению или обработке сигналов — это деградация? О_о

                                                          Вах, полегче с такими заявлениями :) Мне приходилось работать на режимных объектах, и даже там программисты имели права администраторов на своих машинах и на девелоперских серверах. Не давать им такие права — это все равно что стесняться показывать врачу свою голую задницу. Программист — не водитель. Это квалифицированный специалист, и он для ИТ-безопасников помощник, а не враг.

                                                          Надеяться на людей, не прошедших специальный отбор и контроль — право руководителей тех объектов, ему же потом сидеть. Я в своей практике несколько раз сталкивался с саботажем и местью со стороны уволенных сотрудников, были и полные удаления баз, и бэкдоры, и заливки битых прошивок на оборудование.

                                                          Сегодня вы работаете за 3 тыщи баксов в компании, где у вас есть администратор деплоя, завтра вам предложат 5 тысяч в компании, где вы должны сами деплоить проекты на препродакшене. Вы назовете вторую компанию нищебродской и откажетесь?

                                                          А если вам предложат за 8 еще и рисовать дизайн, рекламировать и продавать продукт, вы согласитесь? Я не вижу леса рук из желающих делать всё))
                                                          • 0
                                                            Т.е. по-вашему быть специалистом, допустим, по машинному обучению или обработке сигналов — это деградация? О_о

                                                            Вы удивитесь, насколько широкий профиль имеет специалист по ML или DSP. Последний — так ещё и паяльник держать нередко умеет.
                                                            Надеяться на людей, не прошедших специальный отбор и контроль — право руководителей тех объектов, ему же потом сидеть

                                                            Хм. Если человек попал на то или иное предприятие, значит, он всё-таки какой-то специальный отбор прошёл, верно? И его права, естественно, соответствуют его квалификации, никто не предлагает стажеров пускать на продакшен.
                                                            А если вам предложат за 8 еще и рисовать дизайн, рекламировать и продавать продукт, вы согласитесь?

                                                            Если предложат то, что я умею, при оплате в полтора раза больше за те же 165 часов в месяц, то естественно соглашусь. И вы согласитесь. И я думаю, даже вам очевидно, что есть некая разница между программистом и продажников, и между программистом, который умеет деплоить собственную работу и который не умеет. И что ваш пример — явный перегиб, исключительно «чтоб хоть какое словечко в спор ввернуть».

                                                            Я в своей практике несколько раз сталкивался с саботажем и местью со стороны уволенных сотрудников

                                                            Вы же в ВУЗе преподаёте, у вас вон дипломники, содержание курсов хорошо знаете… Какая у вас там практика-то могла быть? Вы же не пошли после профессиональной работы программистом на дауншифтинг преподавать в ВУЗ?
                                                            • 0
                                                              Вы удивитесь, насколько широкий профиль имеет специалист по ML или DSP. Последний — так ещё и паяльник держать нередко умеет.

                                                              Специалист по ML преспокойно может не уметь даже БД проектировать верно, исполняя при этом свою функцию без проблем, что я регулярно и наблюдаю.

                                                              Специалиста по обработке сигналов вы сразу представили в виде одного широкого профиля. А я даже не сказал, какие именно сигналы имел в виду.

                                                              Хм. Если человек попал на то или иное предприятие, значит, он всё-таки какой-то специальный отбор прошёл, верно? И его права, естественно, соответствуют его квалификации, никто не предлагает стажеров пускать на продакшен.

                                                              Дешевле делать по схеме, которую я указал. Вы описываете идеальную ситуацию, но равновесие по Нэшу выглядит как «проверить при приеме на работу знания и общую адекватность, а ресурсы на проверку остального не тратить, проверить одного и назначить его в СБ».

                                                              Вы же в ВУЗе преподаёте, у вас вон дипломники, содержание курсов хорошо знаете… Какая у вас там практика-то могла быть? Вы же не пошли после профессиональной работы программистом на дауншифтинг преподавать в ВУЗ?

                                                              1. Да, пошел на дауншифтинг ради научной работы и перспектив роста в руководство. Правда, я развею всеобщее заблуждение о том, что в вузах нельзя заработать: преподаватели обычно имеют более одной ставки, а также получают деньги за участие в сторонних научных и социальных проектах. Сама зарплата преподавателя или иного сотрудника крайне низкая, это да, но она не есть единственный источник. Основные источники денег в вузе: приемная комиссия (общий) и научный отдел (в этот круг надо попасть).
                                                              2. Работу над сторонними проектами никто не запрещает ни во время работы, ни во время обучения. Я сам рекомендую студентам находить верный баланс между работой и учебой. Мой упомянутый дипломник был моим дипломником по бакалаврской специальности, а сейчас у него уже степень магистра. Я его просто пригласил работать в компанию. До этого мы также его трудоустроили на предыдущее место. Я считаю, что вузы должны помогать в трудоустройстве, так как значительное число студентов, даже способных, не готовы к социальному взаимодействию (и я тоже не был готов, наделал кучу ошибок).
                                                              3. Удаление базы было в одном из вузов. Спасло то, что админ был не особо квалифицированным и не смог удалить как надо, восстановили. Потеря всех данных была бы катастрофой.

                                                              Если предложат то, что я умею, при оплате в полтора раза больше за те же 165 часов в месяц, то естественно соглашусь. И вы согласитесь. И я думаю, даже вам очевидно, что есть некая разница между программистом и продажников, и между программистом, который умеет деплоить собственную работу и который не умеет. И что ваш пример — явный перегиб, исключительно «чтоб хоть какое словечко в спор ввернуть».

                                                              Отнюдь, как раз часто просят от фронтендеров быть дизайнерами, а от мобильных программистов продажниками (точнее, маркетолагами). И я предпочел бы не соглашаться и не согласился. И большинство в итоге не выдерживают распыления. Из-за широкого спектра задач возникает текучка.

                                                              Высококвалифицированные узкие специалисты долго в подобных условиях не работают, уходят в другие места, даже если платят хорошо и работа интересная, а искать подобных людей сложно. Для простых программистов общего профиля это, вероятно, актуально, но скорее из-за недостатка финансов.
                                                              • 0
                                                                Специалиста по обработке сигналов вы сразу представили в виде одного широкого профиля. А я даже не сказал, какие именно сигналы имел в виду.

                                                                А какая разница? Мой вариант подходит примерно для 99% случаев, ваш — для оставшихся. Узкая профессиональная специализация, это крайне редкий кейс в ИТ.
                                                                1. Да, пошел на дауншифтинг ради научной работы и перспектив роста в руководство.

                                                                Все равно не понял логики. Если нужно вести научную деятельность, и потом получить ученую степень для карьеры, не нужно бросать работу и идти преподавать в ВУЗ. Собственно, и я сам, и мои коллеги, которые этим озадачивались не после получения диплома, а позже, через несколько лет, в аспирантуру не шли, писали дисеры как соискатели, без отрыва от работы.
                                                                2. Работу над сторонними проектами никто не запрещает ни во время работы, ни во время обучения.

                                                                Вот может меня закидают гнилыми помидорами, но скажу моё мнение: совмещать преподавательскую деятельность и полноценную работу над проектами нельзя. Не хватает времени. Можно ковырять вечером какие-то пет-проекты, но не более того. Вы будете собирать материалы для лекций, будете проверять работы студентов, будете свой план по статьям выполнять, ездить на семинары и т.д. Это не даст вам ни развиваться как программист, ни участвовать в серьезных проектах. Я читал лекции четыре часа в неделю, и то, это суммарно съедало около дня каждую неделю.
                                                                Отнюдь, как раз часто просят от фронтендеров быть дизайнерами, а от мобильных программистов продажниками (точнее, маркетолагами)

                                                                В первом нет ничего крамольного. Верстка и дизайн UI — смежные виды деятельности, и прекрасно сочетаются в одном специалисте. Второе — нонсенс, но кроме как от вас, я никогда в жизни о таком не слышал, так что насчет «часто», мне кажется, вы преувеличиваете.
                                                    • 0
                                                      В нормальных крупных организациях вам никто свой компьютер администрировать не позволит.
                                                      В скольки «нормальных крупных организациях» вы работали, позвольте спросить?

                                                      Я работал в пяти и у меня есть знакомые, которые работали ещё в пяти. И нигде программисту не пытались отрезать права локального администратора. Ибо это попросту бессмыленно.

                                                      Приведёт только к снижению производительности и вряд ли повысит безопасность.

                                                      Программист, неспособный взломать современную систему, дырявую, как решето (а других, увы, и нету) — однозначно плохой программист.
                                                      • 0
                                                        Я работал в пяти и у меня есть знакомые, которые работали ещё в пяти. И нигде программисту не пытались отрезать права локального администратора. Ибо это попросту бессмыленно.

                                                        Там три с половиной человека работало?
                                      • 0
                                        Нет, вышивать крестиком ему не придётся. Но ставить клизмы, накладывать повязки и делать уколы, т.е. все «не барские» работы, которые для врачей выполняют медсёстры, будущему врачу, представьте себе, тоже в процессе обучения приходится.
                                        Поэтому даже если вы такой себе распальцованный Разработчик, который приходит, садится на предварительно настроенный придворным администратором трон, пишет Очень Важный Код, потом садится на свой Порш Кайен и едет в казино тратить заработанный сегодня миллион, уметь настроить свой компьютер вы должны.
                                        • 0
                                          Но ставить клизмы, накладывать повязки и делать уколы, т.е. все «не барские» работы, которые для врачей выполняют медсёстры, будущему врачу, представьте себе, тоже в процессе обучения приходится.

                                          Вы подменяете понятия. Они должны это уметь ввиду того, что им это придется выполнять в случае экстренных ситуаций, а не потому что мытьё ванны от формалина поможет им проводить полостную операцию. Авиаконструкторов, например, мыть самолеты не заставляют.

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

                                          Должен кому и зачем?
                                          • 0
                                            Они должны это уметь ввиду того, что им это придется выполнять в случае экстренных ситуаций

                                            Ну то есть, по-вашему, программиста один на один с компьютером не оставляют, всегда наготове сидит сисадмин, который ему там рабочую среду установит и настроит, заменит памперс и сунет в рот бутылочку с молоком.

                                            Должен кому

                                            Хотя бы самому себе

                                            зачем

                                            Чтобы не быть беспомощным и бесполезным в некоторых абсолютно типичных ситуациях в его работе.
                                            • 0
                                              Ну то есть, по-вашему, программиста один на один с компьютером не оставляют, всегда наготове сидит сисадмин, который ему там рабочую среду установит и настроит, заменит памперс и сунет в рот бутылочку с молоком.

                                              Пока еще оставляют, но это уже уходящее в прошлое явление, существующее в первую очередь из-за желание сэкономить на персонале. В норме программист не только не администрирует, он еще и не пишет всё сразу, а имеет специализацию. Уже физически невозможно эффективно владеть сразу всеми навыками в IT, а по мере развития объём данных для усвоения сокращаться не будет, ввиду чего будет углубляться специализация.

                                              Чтобы не быть беспомощным и бесполезным в некоторых абсолютно типичных ситуациях в его работе.

                                              Для обучения программированию и программирования это не требуется. Ваше утверждение не относится именно к программистам, оно общее. Аналогично можно сказать про умение готовить пищу или стирать одежду руками, сейчас это тоже уже не особо актуально.

                                              Я согласен с тем, что уметь больше — это плюс. Но никак не с тем, что обсуждаемый навык обязателен.
                                    • 0
                                      Ну автор как бы не про программирование мультиварки пишет и даже не про Basic в калькуляторе, а про программирование на Python, а это уже предполагает некий базовый уровень.
                                      Т.е. по другой аналогии этот ваш старшеклассник хочет в свободное время покататься на шоссейном мотоцикле минуя стадии велосипеда, мопеда и т.п.
                                      • 0
                                        python рекомендуется многими как первый язык программирования, т.к. порог входа довольно низкий
                                        • +2
                                          Существует и обратное мнение, что python из-за динамической типизации плохой язык для начала. Ибо потом очень сложно пересаживаться на языки со статической типизацией.
                                          • 0
                                            Честно говоря, освоить типизацию гораздо проще, чем язык программирования.

                                            Поэтому освоить C++ с нуля, или освоить С++ после питона — явно второе проще.
                                            • 0
                                              Смотря какую типизацию. Плюсовую в стиле С — да, легко. Отдельный язык в языке в виде темплейтов — посложнее.

                                              Освоить (в смысле навыка написания идиоматического кода) какие-нибудь зависимые типы — ИМХО посложнее, чем после питона выучить плюсы и хаскель вместе взятые.
                                              • +3
                                                Как по мне, «освоить типизацию» — это просто лишний шаг в обучении программированию, который можно и нужно избежать, сразу начав обучение с типизированных языков программирования. Я вообще уверен, что объяснять ученику, что такое типизированные переменные, это намного проще для понимания, чем объяснять про переменные, способные принимать любые данные. Потому что первое объяснение сразу выстраивает в голове логичную картину про ячейки памяти разного размера, и про доступные с ними действия, дескать, компилятор увидел тип и далее разрешает с ним делать те операции, которые к этому типу подходят. А второе объяснение описывает для ученика какую-то магию, вроде бы и просто, но как работает — непонятно. При этом когда ученик переходит с типизированных языков на нетипизированные, он уже недостающие детали того, как может работать динамическая типизация, сам в уме дорисует. А если переходить в обратном направлении, то нередко первая реакция — ступор, потом мысли «нафига такие сложности», и даже после понимания преимуществ строгой типизации, надолго остаются неприятные ощущения.
                                                • 0
                                                  > А второе объяснение описывает для ученика какую-то магию, вроде бы и просто, но как работает — непонятно.

                                                  Тем не менее практика показывает, что эта «магия» очень легко воспринимается, и этому не мешают рассказы о конкретных представлениях в компьютере. «Ну как-то они ж разбираются», — думает ученик, точно так же, как он не задумывается о подробностях работы парсера кода, который умудряется понять, где у него переменная, а где стандартная функция. Вопросы «а как же оно разбирается, какой тип?» возникают уже тогда, когда доходишь в подробных рассказах до соответствующих механизмов (обычно это уже вузовский уровень).

                                                  > Я вообще уверен

                                                  Пробовали? У меня таки из практического опыта :)

                                                  И этот же опыт говорит, что есть два уровня типизации в сознании ученика. Первый это «здесь целое число» или «здесь строка», или в первом даже вообще «здесь число». А вот второй — уже значительно более проблемный в среднем — это «здесь число, влезающее в диапазон 32-битного целого». Существенная часть задач первичного обучения сконструирована так, чтобы не нарываться ни на какие проблемы от того, что мы всем ученикам говорим «целое это integer» и только после того, как они привыкли, начинать упоминать разные short и long. А когда начинаются серьёзные вопросы «а как избежать переполнения?» — всё, суши вёсла, сливай воду.

                                                  (Чем тут хорош Python это тем, что целые у него безразмерные. Ещё одна вкусность для такого стартового обучения.)

                                                  > он уже недостающие детали того, как может работать динамическая типизация, сам в уме дорисует

                                                  Как раз требуется объяснение. Даже если это просто что-то в духе «в каждой переменной лежит код типа, а исполнитель операций анализирует этот код». В уме возникает что-то вроде большого switch — и этого достаточно для успокоения.

                                                  > А если переходить в обратном направлении, то нередко первая реакция — ступор, потом мысли «нафига такие сложности», и даже после понимания преимуществ строгой типизации, надолго остаются неприятные ощущения.

                                                  У меня мысли типа «нафига такие сложности» возникают регулярно, несмотря на то, что начинал на самых что ни на есть статически типизированных. Потому что это не вопрос происхождения опыта — это вопрос «а нельзя ли именно тут ослабить контроль и получить реальную гибкость».
                                                  • 0
                                                    (Чем тут хорош Python это тем, что целые у него безразмерные. Ещё одна вкусность для такого стартового обучения.)

                                                    Возьмите какой-нибудь хаскель, где тоже есть безразмерные целые из коробки.

                                                    У меня мысли типа «нафига такие сложности» возникают регулярно, несмотря на то, что начинал на самых что ни на есть статически типизированных.

                                                    Потому что теория типов — это про то, как эффективно статически отвергать семантически некорректные программы.

                                                    Потому что это не вопрос происхождения опыта — это вопрос «а нельзя ли именно тут ослабить контроль и получить реальную гибкость».

                                                    Можно пример таковой гибкости?
                                                    • 0
                                                      Можно пример таковой гибкости?
                                                      true, false, file_not_found.

                                                      Но обратной стороной такой гибкости является вылетающие странные ошибки в рантайме — от чего, как раз статическая типизация и призвана защитить.

                                                      Так что… лучше не надо. Если вам очень хочется вернуть что-то, что не лезет в заданный тип — значит вам нужно как-то эту информацию донести (std::optional и std::variant вам в помощь). Поступать как в динамических языках (документация говорит что вернётся целое число, а на самом деле могут вернуться ещё True и None) — не стоит.
                                                      • 0
                                                        Возьмите какой-нибудь хаскель, где тоже есть безразмерные целые из коробки.

                                                        А он уже хоть как-то устоялся? Есть стандарт? (что-то не вижу)
                                                        Зато есть свидетельства (например с ходу) того, что устойчивого состояния нет, что разные компиляторы используют несовместимые диалекты… извините, на учебный язык это не тянет, даже если проигнорировать всё требование понимать и поддерживать "высокое" ФП при его освоении. Извините, в сад, пока эти пляски не закончатся.


                                                        Потому что теория типов — это про то, как эффективно статически отвергать семантически некорректные программы.

                                                        При чём тут теория типов? Не улавливаю никакой связи.


                                                        Можно пример таковой гибкости?

                                                        У сообщения есть постоянная часть (типизированная) и переменная (грубо говоря, map String->Object, хотя в качестве ключа может быть и кортеж, и список). Что именно будет добавлено у конкретного сообщения, предсказать невозможно, вариантов сотни в зависимости от факторов включая фазу Луны.

                                                        • 0
                                                          А он уже хоть как-то устоялся? Есть стандарт? (что-то не вижу)

                                                          Есть Haskell98, есть Haskell2010, сейчас пилят Haskell2020. Есть де-факто стандартный компилятор ghc, и если вам нужен не он, то вы уже заведомо знаете, что делаете.

                                                          Если не лезть в дебри вроде инъективных семейств типов и зависимых типов, то язык (особенно в виде де-факто стандартного компилятора) устоялся довольно давно.

                                                          Зато есть свидетельства (например с ходу) того, что устойчивого состояния нет, что разные компиляторы используют несовместимые диалекты… извините, на учебный язык это не тянет, даже если проигнорировать всё требование понимать и поддерживать «высокое» ФП при его освоении.

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

                                                          Сравнивать вопросы multiparam type classes с обероном, в котором нет ничего — это, конечно, дело благое.

                                                          При чём тут теория типов? Не улавливаю никакой связи.

                                                          При статической типизации, в общем.

                                                          У сообщения есть постоянная часть (типизированная) и переменная (грубо говоря, map String->Object, хотя в качестве ключа может быть и кортеж, и список). Что именно будет добавлено у конкретного сообщения, предсказать невозможно, вариантов сотни в зависимости от факторов включая фазу Луны.

                                                          Не вижу, почему бы это не ложилось на обычную статическую типизацию. Можно даже статически гарантировать, что если ключ оканчивается на _str, то там строка, если на _i, то целое, если на _f, то дабл, а если на _obj, то вообще хрен знает что.
                                        • 0

                                          Лет сорок назад вас без научной степени и к компьютеру не подпустили бы.

                                          • +5
                                            Не стоит сюда приплетать распространенность компьютеров, речь тут не об этом. А о том, что если берешься за дело, то делай это достойно и с правильным набором базовых знаний.

                                            Для тех кому «это все лень» или «у них лапки» — есть куча софта для графического программирования, было даже отечественное HiAsm (http://hiasm.com/).

                                            А если взялся за серьезные темы, будь добр — выучи базовое.
                                            • +2

                                              Обучение это алгоритм. Его задача состоит в повышении количества специалистов. Не в фильтрации или отборе, а именно в повышении количества. Если вы получаете снижение основного показателя работы алгоритма, значит необходимо внести изменения.


                                              Автор статьи, который занимается обучением много лет, говорит о том, что алгоритмы, которые он успешно применял, стали давать сбой. Он предлагает усовершенствовать алгоритм. А вы констатируете, что причина в обучаемых.


                                              Ну и риторический вопрос. Если ты можешь учиться самостоятельно, зачем тебе вообще учителя?

                                              • +1
                                                > Если вы получаете снижение основного показателя работы алгоритма, значит необходимо внести изменения.

                                                > Автор статьи, который занимается обучением много лет, говорит о том, что алгоритмы, которые он успешно применял, стали давать сбой.

                                                Напрашивается вывод, что автор как учитель не успевает за учениками и их потребностями.
                                                • –4

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

                                                  • +3
                                                    Вообще-то из ваших.
                                                  • +1

                                                    Почему не успевает? Он увидел снижение качества, внёс коррективы и написал об этом. Может и не успевает, но из текста это напрямую не следует.

                                              • +1

                                                Я начинал программировать именно 40 лет назад, даже чуть больше. Никаких таких ограничений типа "без ученой степени не подходить" нет и никогда не было. Более того, операторами например зачастую работали те же студенты. А программировали обычные инженеры.

                                                • 0
                                                  А я вот помню, как в советские времена математики и программисты стеной стояли, чтобы не пустить врачей на их делянку). Правда, наверное это было лет 50 назад)))
                                              • +18
                                                Как вы лихо передергиваете, с программистов на врачей.

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

                                                И это правильно. Хороший водитель, может, и не является крутым механиком, но он должен понимать, что и как работает в автомобиле, которым он управляет. Но никто в здравом уме не будет учить водить машину в стиле «Вот тебе запчасти, вот инструкция. Вначале будешь учиться собирать из них автомобиль. После этого будешь учиться на нем ездить».
                                                • +3
                                                  «Вот тебе запчасти, вот инструкция. Вначале будешь учиться собирать из них автомобиль. После этого будешь учиться на нем ездить»
                                                  Как раз в те «благодатные» времена это было нормой. Хочешь услышать звук в игре — спаяй себе Covox!

                                                  Порог вхождения был гораздо выше, чем сейчас — просто большинство из тех, кто сейчас жалуются на то, что начать программировать сложно «в те времена» и пользователями-бы не стали!
                                                  • +2
                                                    Если выбирать между:
                                                    — миром, в котором программистов полторы калеки — из-за того, что остальные просто не осилили порог вхождения
                                                    — и миром таким, какой он сейчас — с десятками миллионами людей, так или иначе работающих в области IT

                                                    То я бы хотел жить во втором (погодите-ка, я же и так в нем!). В первом мире до сих пор с перфокартами бегают, а уж про такие удобные штуки, как iPython notebook и мечтать не смеют.