Pull to refresh
-5
Send message

Youtube, Dropbox и прочие "огромные" - это не Python-проекты, это проекты, которые начинались задолго до Python. И от того, что кому-то нравится переводить, например, Linux на Rust, он лучше не станет. Все эти "универсальные ЯП" - это вкусовщина, игры менеджеров от программирования. Я это проходил в одной компании трижды. Приходит новый начальник: что это вы тут ерундой занимаетесь, будем менять вашу отстойную платформу на продвинутую. И квалифицированные программисты, заметим, не "кодеры", начинают все, что было уже отлажено и вылизано переписывать заново.

Читаю я такие вот статьи и комментарии к ним и никак не могу отделаться от мысли: неужели отрасль действительно деградировала, если ни один человек не сказал, что думать надо не о том, какой "ЯП" использовать, а о том, что код должен жить в веках. Видимо никому из "миллионов кодеров" не приходилось делать доработки в коде, разработанном лет 10-15-20 назад. А и то, чукча не читатель, чукча писатель ©

Я взял свою старую программу на С++ с MFC и COM, попробовал ее пересобрать и у меня ничего не вышло. Это самая главная проблема разработки. Принятые решения умирают раньше, чем становятся зрелыми технологическими подходами. Это делает все программное обеспечение современной техники крайне ненадежным и даже опасным.

Отступы - это фигура речи, чтобы не углубляться в мутные дебри этого "продвинутого" бэйсика. Я писал программы с 1974 года, начинал с ассемблера и конечно же всегда старался делать код читабельным без всяких YAML. А то, что это теперь помогают делать IDE, - это естественный процесс развития технологии. Я свой первый код написал на специальном бланке, с которого девочка перенесла его на перфокарты. Самым большим достижением в то время были перфокарты с надписями и мы могли проверять код на карте до запуска программы на компиляцию.

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

Никакие, когда речь идет о языках программирования. C/C++ достаточно выразителен для разработки любой сложности систем, а Basic для создания сценариев обработки, основанных на использовании библиотек, разработанных на C++. Если и нужны новые языки,то только для решения узкоспециальных задач, например, SQL, Fortran и тому подобные.

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

Я вполне понимаю "питонячью часть" - привыкли отбивать сколько надо отступов и флаг им в руки. Я не очень понимаю ту часть сообщества, которая надув щеки старается развивать тупиковые направления в отрасли. И началось это задолго до Python, наверное первый звоночек был Java.

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

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

Такой прорыв в отрасли, который обеспечил в свое время С, может случиться возможно только тогда, когда сообщество осознает, что Python ничем не лучше Basic, который Билл Гейтс создал на заре своей карьеры. И никакими улучшениями Python этого не добиться.

Приведенные автором кольца - это не возраст программиста, это карьера эффективного манагера. 😉

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

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

Например. Нам русским часто предлоги не нужны, у нас есть склонения и прочие грамматические возможности. Англоязычным же без них никак. Русский, дословно переведя в голове фразу "Позволь мне тебе объяснить...", скажет (это реальный диалог): "Let me explain you...". Американец, если он не знаком с тобой, может впасть в ступор, буквально услышав что-то вроде: "Позволь я тебя объясню...". Наушники такой нюанс учитывают?

Другой реальный диалог. Надо сказать, что эти индийские парни напортачили. Русский так и начнет: "These Indian guys...". И опять облом - в американском английском это означает, что ты их назвал чукчами. В ответ собеседник так и спросил: "Are you white nationalist?"

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

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

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

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

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

1) Да, пользовался.

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

3) Что означает "насущная необходимость"? Это требует четкого и ясного определения. Только после того, как ты поймешь зачем человеку язык, ты возможно научишься обучать ему. А нюансов здесь более чем можно себе представить. Например, из личного опыта:

3.1) Я 50 лет живу в чужой языковой среде, которая давно перестала для меня быть чужой, но свободно говорить я так и не начал. У меня жена местная говорит со мной по-русски. Просто так удобнее.

3.2) Я 20 лет отработал в американской компании без релокации и ни на миллиметр не приблизился к полному знанию английского. Как он был у меня на уровне, которому мама научила меня в детстве, так где-то там и остался. Я только научился писать технические тексты. Офис у нас был триязыкий и мы неплохо справлялись со своими задачами.

Вопрос: почему я такой неумный.

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

То, что я изложил - это лишь маленькая толика нюансов. Язык - это никогда не самоцель, но всегда средство. Зачем тебе Мерседес, если ездить надо только за картошкой. Хотя, конечно, хорошо так, урча мощным мотором и источая аромат новой машины, подъехать к прилавку и высунувшись в окно переспросить: "Сколько, сколько?..".

В полиглоты б я пошел -

пусть меня научат.

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

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

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

Если цель твоих обучающих программ делать полиглотов, то с этого и начни, с самого короткого абзаца "Полиглоты!".

Наверное самый правильный комментарий.

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

Судя по всему, а также по дальнейшему размышлению автора, ИИ этого никогда не сможет. И слава Богу. Может быть, набив шишек и морд, отрасль вернётся к нормальному программированию, используя ИИ как инструментарий и не более того.

Поставить + мне какой-то кармы не хватает. Но вот на словах, это наверное самый правильный ответ на это в своем роде интересное исследование, в котором сравнивается хрен с пальцем. Я бы ещё обязательно упомянул, что, добавив объекты в C, C++ стал действительно мощным инструментом разработки, которым и должен оставаться, если, попав с некоторых пор под влияние бэйсиков типа Java, сам не превратится в один из этих бэйсиков.

И, кстати, причина этого превращения, как мне кажется, вовсе не в оптимизации и повышении надёжности, а в том, что последние десятилетия в C++ разработку приходят молодые PHP-кодеры, которые не учились думать категориями исполняемого кода. Ведь, на самом деле, C пришел на смену Ассемблеров и явился реально прорывом в технологии, хотя в то время уже существовали и Бэйсик, и Кобол, и прочие т.н. языки высокого уровня.

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

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

"Область ещё молодая..."

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

Я не "джун", скорее "сеньор" в том смысле, что программист на пенсии. Однако написать программку с помощью ИИ попробовал. Мне нужна была простая утилита для создания папок на диске, который в фоном режиме копируется на Synology NAS. Попросил использовать Python, потому что не люблю этот Бейсик. Так вот, после всего 3-х итераций получилось то, что мне нужно.

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

Предлагаю назвать его ИИИИ - инструмент имитирующий искусственный интеллект. 😎

Information

Rating
4,346-th
Registered
Activity