предательство элит, разрушивших страну, начиная с хрущевского госпереворота. Кстати Сталин предупреждал об этом...
Хрущев, конечно, очень мутный тип, хотя я понял это далеко не сразу (не зря, китайцы так сильно обиделись на меня из-за него!).
Только таких, как Хрущев, у Сталина было «вагон и маленькая тележка». Все вокруг были «враги народа», даже Бухарин (любимец Партии, по Ленину), со своим лозунгом: «Обогащайтесь!» Не говоря уже о Троцком и троцкистах.
У Сталина было хорошее чутье на «врагов народа», реальных, а не желания ради, позлобствовать (как пытается доказать Запад и его карманная «оппозиция»), однако, Хрущева он пропустил. За что и поплатился.
Говорят, Сталин посадил сына Хрущева, из-за чего стал его личным врагом. При этом, Хрущев был далеко не дурак, хотя Сталин на одной докладной Хрущева так и написал: «Уймись, дурак!».
Хрущев был непримирим к Западу (помните, как он стучал своим ботинком по трибуне ООН: «Мы вас похороним!»?). Он отправил первого человека в Космос, сбил, над Уралом, американский самолет-разведчик, а его лётчика Пауэлса – публично судил!
При этом, сельское хозяйство он, со своей кукурузой, фактически, разрушил. Крым – отдал УССР (поскольку был украинцем), но вот своим Коммунизмом он нас реально соблазнил. Не уверен, что у него получилось бы, но, сама попытка была стоящей.
Однако, уверен, главным разрушителем СССР («соломинкой, которая переловила горб верблюду»), стал Горбачёв. Но, его к власти, привела элита. А с детьми этой элиты я имел дело, когда, учился в МГУ (даже с Ельциным было на расстоянии вытянутой руки). Так вот Запад смог соблазнить эту элиту, а соответственно, и их детей, что я наблюдал своими глазами в Университете.
В СССР мы жили, более-менее, справедливо, но относительно скромно. Запад предложил элите – вам всё, а остальным, что останется. Это им очень понравилось, ибо министры, в СССР, могли за личный ящик коньяка, сдать интересы страны на миллиарды рублей. А легализовать личные миллионы никак не могли.
В итоге и элита осталась «с носом» (вспомним Березовского!) и народ потерял почти всё.
Тем не менее задел Сталина продержался после него еще десятки лет развития в условиях противостояния с буржуазным миром, что каг бэ намекает на преимущество социалистической системы.
Так, давно уже говорят, что Сталин и Социализм не ушли в прошлое, а «растворились в будущем». И что, даже, сейчас: «Сталин-2.0 строит Социализм-2.0 в СССР-2.0!». Союзное Государство РФ + Беларусь – не даст соврать. Вопрос, только, кто будет третьим? Может быть, Франция или КНДР? :)
Числа -- это не сущности отдельного мира, а абстракции, продукт вполне материального мозга
Это похоже на рассуждения, что не существует следствий, поскольку следствия порождаются причинами. Да, порождаются, но следствия это не причины.
Аналогично, Создание порождается мозгом, но это не мозг, т.е., это не материальная субстанция. Сознание, как и информация, не существует без своего материального носителя (высокоорганизованной материи или не очень, не суть, ибо это качественные понятия), но не зависит от него. По крайней мере, в принципиальном плане. Ведь ведутся, уже давно, разговоры о переносе сознания (подобно копированию информации с одного материального носителя на другой) из одного мозга в другой или даже в бездушную машину. Пока присутствуют технологические ограничения, но если это случится завтра, никто особо не удивится.
Думаю, что суть наших разногласий в этом, т.е.:
У меня идеальное не существует без своего материального носителя, но оно не зависит от него, а это и означает его дуальность, иначе говоря, принципиальную независимость, от своего материального носителя.
У вас, тоже, «идеальное» не существует без материального носителя, а то, что оно принципиально не зависит от своего материального носителя, для вас не повод выделять его в отдельную субстанцию, т.е., альтернативу материального. Соответственно, у вас не возникает потребности и в понятии «дуальность». Только и всего!
«Сильно» сказано! Осталось отлить в граните и отменить философию (может быть, заодно и математику, там ведь рассуждают о нематериальных вещах (числа, например, не материальны, т.е., не имеют под собой физических частиц)?).
Сознание -- это процесс, производимый организованной материей.
Это вы цитируете учебник материалистической философии, который как раз и утверждает, что сознание это не материя, а противоположная ей субстанция. То бишь, мозг и сознание это дуальные понятия, от которых вы пытаетесь отказаться. Себя то вы может быть убедили, но других вряд ли.
Мир один, материальный, и он не нуждается в надстройке идеальных сущностей.
А как насчет информации? Она тоже материальна?
Как известно, информация не существует без материального носителя, но независима от него! Именно эта независимость от материального носителя делает ее идеальной или там виртуальной.
для меня есть только первый мир, материальный, без дуальности. Он же последний.
О! Как интересно! Следовательно, ваше сознание – материально? Соответственно, материальны время, пространство, движение, информация, законы развития и т.п.?
Материя имеет в своей основе элементарные частицы. Даже свет (фотон) и физические поля (бозоны, глюоны, гравитоны (в теории), лептоны и кварки (в теории)).
Вы полагаете, что существуют частицы сознания, пространства, времени, движения, информации, законов и т.п.?
Во, как!
Поспешите объявить свое авторство этих идей! Может быть, успеете, к концу года, получить Нобелевскую Премию по физике, заодно, пообщаетесь с «Трампусиком», когда он будет получать там свою Премию Мира.
P.S. Вы можете сказать, что все это свойства материи, а не сама материя. А эти свойства – материальны или нет? Если да, то тогда встает вопрос о частицах свойств (нет частиц – нет материи!).
Мир такой какой и должен быть! Совершенеый и идеальный мир не способен развиваться, он даже выглядит в представлении фантастично и не реалистично. Идиальность замкнута на самой себе а не идеальность подталкивает к развитию. Так мы становимся лучше видя боль и страдания других. Как-то так)
Полагаю, что те или тот, кто изобретал этот Мир думают, примерно, также. Меня даже, иногда, посещает мысль, что ментальной причиной разрушения СССР стала его относительное социальное совершенство. Там было, в некотором смысле, очень хорошо и комфортно. Бесплатная учеба, квартиры, медицина (с минусами, но всё же!), вера в будущее, культ образования (Специалист? Иди на повышение!). Даже «социальные лифты» были не пустым звуком.
К сожалению и я об этом говорю в статье, «идеальное» общество может быть образовано только «Диктатором». У нас это был И.В. Сталин. После его смерти, Система, по инерции, еще существовала какое-то время (почти двадцать пять лет), то социальные паразиты разрушили ее окончательно.
Сейчас очень интересное время, в том смысле, что восстановление и возрождение России осуществляется в мягкой форме, без чрезвычайных мер Иосифа Виссарионовича (у него было слишком мало времени, мы были очень слабы, а враг был очень силен: «Мы должны пробежать за десять лет Путь, который страны Запада прошли за сто лет, иначе нас сомнут!»).
Соответственно, социальная справедливость возрождается относительно медленно, но, лучше так, чем никак!
Ключевая проблема любой философской мысли - термины и определения.
Это вы, сначала, расскажите классикам. Много вы у них видели «терминов» и «определений»? Нет, ну иногда встречаются, скажем, у «дедушки» Ленина: «Коммунизм – это Советская власть плюс электрификация всей страны!», что сразу дало повод для злословий: «Советская власть – это Коммунизм минус электрификация всей страны!».
На самом деле, это, в некотором смысле, заблуждение. Даже в математике, определения не всегда содержательны. Например, у Эвклида: «Прямая – это длина без ширины». Много лм вы сможете почерпнуть из него? Тем не менее, Эвклидова геометрия прекрасно существует и непротиворечива, думаю, что даже вы ее в школе «проходили».
Существует термин «неопределяемые понятия». Вы не поверите, но математика изучает не столько сами объекты (вводимые через их определения), сколько отношения между ними. Некоторые из этих отношений (свойств) постулируются (без доказательства), т.е., являются аксиомами, а остальные доказываются (леммы и теоремы).
Поэтому, что вы хотите от гуманитариев? Определения понятий «материя», «пространство», «время» или «сознание»? Их даже физики не могут, толком, дать. Например, в математике, n-мерное Эвклидово пространство это n-мерное Декартово произведение для числовых прямых (т.е., множеств действительных чисел). Можно определять дальше, но, оно вам надо? В итоге, мы уткнемся в конечные определения, типа, число – это элемент множества, определяющееся следующими свойствами… Для натуральных чисел – это аксиоматика Пеано. Затем, последовательно, определяются ноль, отрицательные числа, рациональные числа, действительные, комплексные, кватернионы, гиперкомплексные, алгебры Кэли-Диксона и т.д.
Здесь понятие «множество», «элемент» и т.п. – неопределяемые «по определению». Но, разве это мешает развиваться математике, физике и другим точным наукам? Нет, конечно. Даже возникающие противоречия там успешно разрешаются.
В гуманитарных науках, определения, вообще, постольку поскольку. Вы может их давать, можете не давать, объясняя на пальцах (одно яблоко, два яблока, три апельсина…), роли они особой не играют. Поскольку никаких теорем из них не выводится. Поэтому, обращают внимание не на них, а на логику рассуждений. Если ваша логика хромает, то будьте готовы к уместной критике.
Как вам текущий синтаксис С++? А как вам синтаксис С++, который планируется в C++26 стандарте, а в будущих?
Я в синтаксисе С++ вообще никаких проблем не вижу. Меня все устраивает. А современный синтаксис только усложняет жизнь, поскольку иногда надо конвертировать проекты из VS C++ 2019 либо выше в 2013-й. Не всегда это возможно, с пол-гинка.
Что дают новые возможности? Безопасность? Так я ограничиваюсь только собственными пет-проектами. Для работы писал драйвера, кстати, они до сих пор работают, без модернизации (более десяти лет). Там хватало 1С, правда, для развлечения, писал внешние компоненты для них.
Смысл нового языка в том, чтобы уметь описать любой возможный алгоритм и транслировать его в выбранный язык (например в код на С++) с использованием только безопасных средств и методов разработки кода.
Это красиво звучит, но верится слабо. Не проще ли разрабатывать сами безопасные алгоритмы, все же, как-то надежней выглядит.
Если вы работаете на Космос или на Оборону и вас хорошо спонсируют, то это может иметь некоторый смысл. Помните, как разбилась наша «Луна-25» при прилунении? Торопились опередить индийцев с аналогичной миссией. В итоге, была ошибка в алгоритме торможения аппарата при спуске на Спутник Земли. Уверен, что код там был «безопасный». Только программисты плохо знали физику Луны, в которой много специфики и особенностей. Ну, и помог бы там ваш новый безопасный универсальный язык? Наверняка, используемый алгоритм преобразовался бы корректно и безопасно. Только откуда ваш язык программирования узнает обо всех особенностях физики Луны и исправит сам алгоритм? Так что, результат был бы тем же, космический аппарат ухайдокали бы, а индийцам бы дали повод позлорадствовать.
По сути, это DSL для безопасной работой с памятью и автоматическим управлением синхронизацией при многопоточном или асинхронном программировании и бесшовной интеграцией с кодом на языкуе реализации (т.е. С++).
Вот, если бы кто-то изобрел новый язык программирования, по оптимизированной работе с графикой (GUI), то я бы, наверняка, заинтересовался. Китайцы, вместо нового языка, предлагают свою библиотеку «DuiLib». Получается красиво (интерфейс программ вынесен во внешние xml-файлы, для редактирования которых они даже создали специальный редактор «DuiEditor»), только очень громоздко – пользоваться, особого желания – нет.
Ну и зря. У С++ самые лучшие перспективы с точки зрения возможностей и потенциала развития (еще очень много нужно сделать :-) )
Кто же против, пусть делает! Ибо останавливаться в развитии – чревато. Речь о другом, мне возможностей C++ / WTL хватит на всю оставшуюся жизнь. Зачем мне отвлекаться на непонятки? Как кто-то написал, в Интернете: «В Мире есть много вещей, которые мне… не нужны!». Но, ведь я не главный в этом Мире, правда? Если другим надо – пусть дерзают!
Вообще то я предпочитаю писать именно «конкретно». Не абстрактные теории, а конкретные предложения, ссылки на которые уже приводил в статье.
Я бы предпочел скриншоты программ, как, скажем, в своей статье: «Роль данных при изучении иностранного языка» ( https://habr.com/ru/articles/930868/ ). Посмотрел на картинки и сразу видно, стоит читать статью или ну ее нах?
У вас только фото с мероприятия. Что они дают нетерпеливому читателю? Пройтись по ссылкам? Прошелся, за несколько секунд – ничего не понял либо не интересно, а какой мне смысл вникать? И так поступают многие.
Однако, что касается С++ модулей, то мне они нужны все же не для текущей работы (меня сейчас и так все устраивает),
Меня эта тема зацепила, ибо актуальна в моем творчестве, поэтому именно на нее я только и реагирую.
а именно для проработки теории модульности исходного кода в собственном языке программирования.
Ну, это, надолго, может быть интересно только вам. Лично мне Питона и С++ хватает за глаза. Куда еще один язык программирования?
Основные проблемы при создании художественных текстов с помощью нейросетей
Хорошая статья, жаль, что я не обнаружил у себя литературных способностей. Думал, что рациональное мышление поможет «писать красиво». Не помогло!
У Стивена Кинга есть книга: «Как писать книги?». Он считает, что задача автора – «произвести впечатления». Я думаю, что это не главное. Точнее, полагаю, что главное впечатление должно быть – эстетическим, т.е., почти физическое удовольствие от «красиво сказанного слова». Тогда и бытовые романы пойдут на ура. А там сюжет, вообще, отсутствует, просто, красивое описание обычной жизни, типа, романов Оскара Лутса: «Зима», «Весна», «Лето».
Кстати, для прикола, я написал статью: ««Hello, World!» для начинающих литераторов» ( https://habr.com/ru/articles/342512/ ), но, к сожалению, тема не получила развития. А, с нейросетями, писать скучно. Ибо красивый текст – он всегда авторский. А бездушная машина может только дать кальку…
Модульность в С++ нужна для библиотек и для крупных проектов, так как упрощает написание взаимозависимого кода (нет необходимости писать отдельные файлы для интерфейса (.h) и реализации (.cpp)), ускоряется компиляция больших проектов и использование программных компонентов (на уровне исходного кода для компилятора) и модули не имеют проблем с порядком их импорта в исходных файлах.
«Нужна для» это не из определения. В определении должны присутствовать слова: «это (есть)».
Что именно «упрощает написание взаимозависимого кода» – непонятно. Отсутствие h / cpp файлов? А что взамен? А дальше идут только хотелки.
Скажите, вы сами пишите на С++? Вот, я, лично, пишу и для меня понятие модульности не абстрактное, а конкретное. Чтобы упростить сильные связи, да еще взаимно-перекрестные, нужна именно изоляция кода на относительно независимые части. Причем, не на уровне dll-ек (это и так есть), а .на уровне текстовых блоков, которые я и называю модулями.
Эти блоки кода (модули) должны быть легко подключаемыми / отключаемыми. Для этого нужна спецификация их взаимодействия. Об этом где-нибудь говорится? Можно было сказать, на конференции, которую вы описываете, но там, как я понял, предпочитают говорить о стандартах развития языка, типа, С++ 26, протоколах и прочих формальностях.
А зачем это надо практическому программисту на С++? Меня, вот, вполне устраивает, VS C++ 2013. Дешево и сердито. Все, что мне нужно, там есть. Лёгкий, шустрый, удобный. Есть бесплатный VS C++ 2017, но он мне нравится меньше. А более новые версии, еще менее интересны.
Как это ни странно, но я не вижу никакой потребности в развитии этого языка. Главное, научится толком работать с тем, что уже есть. Скажем, с WTL. Этой библиотеке всего полтора мегабайта в исходниках, но мне она кажется неисчерпаемой.
Поэтому, думаю, нужно больше писать не о принципах программирования, типа SOLID и прочем, а о технологии программирования. А на эту тему статей, на Хабре, практически нет. Ибо все предпочитают говорить «вообще», а не «конкретно».
модули С++ в одном конкретное представлении - модульная организация на уровне исходного кода. Это С++ модули только времени компиляции и нужны они только для компилятора при сборке бинарных файлов библиотек или приложений
Ну, и чём прикол? В этом смысле, любой проект на VS C++ уже разбит на модули: *.h / *.cpp файлов компонент и сопровождающие их файлы. Что нового-то?
При этом, исходный текст модуля, на С++, можно взять из опенсорса и прилепить к своему проекту. Все его файлы положить в отдельный каталог и получить к ним доступ из основной части проекта. Так делалось всегда. Как их там компилирует компилятор – не суть важно, главное на выходе получить искомый ехе-шник. Это что не модульность, в вашем (именно!) понимании? О чем тогда речь?
Для примера. Мне понадобилось сделать программу для ручного извлечения текста из медиа-файлов (для подготовки обучающих данных к своей программе). Для этого взял опенсорсный файл FFPlay.c с зависимыми файлами, для работы с видео и прочим медиа, преобразовал их в классы с++ и подключил к своему (неопубликованному) проекту «MediaText», см. скриншот: http://scholium.webservis.ru/Pics/MediaText.png .
Разве это не есть модульность в вашем понимании? Чего тогда еще хотеть от модульности в С++, когда она уже в любом виде присутствует там и так?
это больше про плагины с WinAPI, а не про модули в С++.
Это и в дискуссии под статьей видно, что у каждого свое представление о понятии «модуль». Чаще всего, под модулем в С++ понимают тоже самое что под модулем в Питоне. Но, я так не думаю. Я, лично, под модулем понимаю изолированный код проекта, который, стандартным образом (например, с помощью внешних скриптов), как подключается к общему проекту, так и отключается от него (при этом работоспособность проекта должна сохраняться). Это можно делать двояко: на уровне исходников (у меня это статические плагины) и на бинарном уровне (динамические плагины). Можно еще вспомнить бинарные компоненты от M$, но, это уже будет чужой (бинарный) код.
При работе в команде, я бы предпочел разделение труда в рамках статических плагинов, а для их тестирования – аналогичных, динамических. Однако в команде мне работать не пришлось (все свои программы писал в одиночку), поэтому, мне трудно судить о реальной эффективности этого метода.
А так, похоже на обычную реакцию: «Это не то, что я хочу, но, что я хочу – я не знаю!».
Все началось с банальной задачи. Я хотел нормально сохранять настройки цветов в конфигурации «Управление IT-отделом 8».
У меня тоже была своя «банальная задача». Нужно было добавить произвольный фон вместо скучной цветовой гаммы. В итоге, это вылилось в статью, как и у вас: «Можно ли в 1С не соблюдать технологию внешних компонент? Или Как поздравить коллег с помощью 1С?» ( https://habr.com/ru/articles/466713/ ).
Тренд 2025 года: в некоторых бигтехах кандидату дают сложную задачу и разрешают пользоваться ChatGPT. Мол, мы же всё равно работаем с ИИ, давайте проверим, как кандидат с ним ладит.
Потом пошёл тренд на домашки на неделю. Дескать, "мы проверим, как кандидат работает в реальной среде". На практике это было издевательство: разработчик бесплатно тратил 20–30 часов, бизнес получал готовые прототипы, а нанимать могли и другого.
Как по мне, это хорошие идеи! Даже, если этим злоупотребляют. В этом случае, оформляйте свой «бесплатный готовый прототип за 20-30 часов» в собственный пет-проект и публикуйте его. Всё равно их делать надо для улучшения своего резюме.
У нас подобная схема была на зачетах по матанализу, на мехмате МГУ. Легче всего, его было получить, если ты систематически решал домашние задачи, некоторые из которых требовали по пять-шесть часов. А давали их по двадцать штук, два-три раза в неделю.
Если запускал домашку, то будь добр прояви свои таланты математика на зачете. Там тебе давали трудную задачу и отпускали. Как решишь – придешь. Можешь пользоваться чем хочешь, библиотекой, помощью сокурсников (компьютеры, в то время, только-только появлялись, а Интернета еще не было, в принципе). Однако, все были в равных условиях. Дай Бог, решить собственную задачу, какая там «помощь другу»? Читальные залы помогали, но требовали кучу времени.
Потом, мало было решить задачу, надо было ее еще «сдать». Цеплялись, всерьез, к каждому нюансу. Если во что-то не вник, должным образом, иди, разбирайся дальше. Это был настолько тщательный анализ, что, когда слушал лекции по ТФКП, часто ловил себя на мысли, что этот профессор, наш зачет по матану не получил бы, просто, он, иногда, был небрежен в деталях доказательств своих теорем.
Пока не сдашь зачет – не будешь допущен к экзаменам. Не сдашь весной экзамены, можешь попробовать пересдать их в конце лета. Иначе, вылет из Универа, минимум на год.
Короче говоря, система обучения там была заточена на уровень самого умного студента. Ему приходилось пахать много, а середянчку – очень много! Были и совсем «наивные чукотские юноши», которые поступали по квоте, как нацмены. К моему огромному удивлению, один из таких «выжил», т.е., дошел до пятого курса (до которого из 300 первокурсников добрались только 150), хотя, как он рассказывал, в его безлюдных степях был только один учитель на всю школу, который преподавал все предметы, какие мог, а какие не мог – не преподавал. Парень был настолько прост и наивен, что мне пришлось заставлять его, стоя, читать газеты, вслух. Меня он слушал, просто потому, что вырос среди военных и их очень уважал. А для меня МГУ – был уже вторым ВУЗом, а, по первому, я уже был лейтенантом запаса. Кстати, в Университете мне снова предлагали пойти на военную кафедру, на что я ответил: «Вы хотите, чтобы я стал дважды лейтенантом запаса?». Юмор мой оценили и разрешили на военку не ходить, что дало мне больше времени для математики.
Несмотря на мое его жесткое воспитание, усилия не пропали даром. В то время уже во всю «бушевала» «Пересройка», пресса была очень актуальна и в дефиците. Нужно было, вставать рано утром (для студента, для которого два часа ночи – начало для домашней учебы), чтобы купить «Огонёк» и газеты в холле главного здания МГУ (в крыльях которого, размещалась наша общага). И я был очень удивлен и обрадован, когда увидел нашего «нацмена» в очереди за прессой. А на пятом курсе мы обсуждали с ним варианты доказательства Теоремы Ферма. Сейчас, он, «хайли лайкли», уже, скорее всего, академик в своем *стане.
В общем, трудности они ведь не только для нас, но и для всех. Поэтому, относимся к ним спокойно и по деловому… :)
Про модули в С++ говорят уже очень давно и я с нетерпением жду окончательного принятия нового стандарта, поэтому стараюсь быть в курсе нововведений.
Про «стандарт» говорить не берусь, но свое представления о модулях в С++ я описал в статье: «Модульное программирование в C++. Статические и динамические плагины» ( https://habr.com/ru/articles/566864/ ).
В интернете и так хватает материала о применении на практике функторов/монад (характерных заимствований из теории категорий) - как они используются и на беке, и на фронте.
Я так и знал, что про интерфейс (GUI) никто говорить не хочет. Про веб-программирование – материалов валом, а про правильное проектирование «графики» – почти ничего.
Но сложно найти что-то про то, откуда эти абстракции берутся, почему они фундаментальны и неизбежны. Такая цель и обозначена в первой части данного обзора. Заодно попробуем выяснить, "какие типы можно" - почему в любых языках доступен практически один и тот же набор возможностей построения новых типов. Так же разберёмся с вопросами композируемости монад (почему из существующих сложно собрать композитную) и их потенциальными альтернативами.
Это все хорошо и красиво, вопрос только один, а что мы будем иметь в итоге, кроме общего развития?
Попутная цель - популяризация функционального программирования путём раскрытия его фундаментальности, надёжности и (сложно поверить!) простоты. Техники ФП и так уже повсеместно внедряются даже самые изначально ООП-шные и в доску императивные языки. Но об этом определённо стоит говорить почаще.
Для меня этап ФП (как я его понимаю) пройден и уже не интересен. Вот о чём «определённо стоит говорить почаще», так это об WTL. Я собираюсь, но Миру и Граду надо предъявить Дары, то бишь, демонстрацию возможностей. Чтобы народ глянул на скриншот и сказал: «Во! Это мне интересно!» или «Это мне нах не нужно!». Главное, что окончательное решение будет принято в первые несколько секунд. Ведь мы же о программировании, в первую очередь, говорим, а не математическом самообразовании?
Что же до "авторитетных ссылок на себя"... Мои советы, на что стоит обращать внимание при организации программной логики приведены в статье Кредо программиста.
Интересно! Хотя я этот текст уже где-то встречал, уж очень знакомы многие словесные обороты. Однако, лично для себя я все эти советы свожу к одному методу «здравого смысла». Пока он помогал больше, чем все, мне известные.
Дополнительно порекомендую другую свою статью Программисту нужна математика.
Тема явно очень «горячая», 353 комментария на «эту небольшую заметку» – очень круто, говорю без иронии.
«> Для наверное 95% программистских задач высшая математическая база особо и не нужна.
То, что можно быть лучшим программистом в регионе, без математического образования, согласен. Знаю одного очень талантливого программиста, с геологическим образованием плюс вспомогательные курсы.
Тем не менее, считаю, что математика в программировании это больше, чем математика.
Лично я бы посоветовал вундеркинду, увлекающемуся программированием, закончить очно, после школы, мехмат МГУ, по специальности «математика». Затем получить распределение либо просто найти работу в крутом научно-производственном объединении (для мехматовца это несложно), специализирующемся в области высоких технологий (ИИ, оборона, Космос, экспериментальная физика, и т.д. и т.п.), после чего поступить во второй ВУЗ, с техническим уклоном, на специальность, связанной с работой. Лучше на дневное отделение, сразу на второй-третий курс, но можно и на вечернее. Тогда, наш «вундервунд» будет обречен на успех (в России, конечно).
Почему так?
Сужу по собственному опыту. Сам я учился «наоборот», пять лет дневного высшего образования в Политехническом институте, затем четыре года работы по распределению во Всесоюзном НИИ, затем пять лет очно на мехмате МГУ, по специальности «математика». Потом работа в крутом Научно-Производственном объединении. На успех был обречен, шеф Объединения, академик, с удовольствием взял меня к себе в аспиранты. Всё было идеально, если бы не распад СССР (который осуществили, чтобы не дать мне сделать карьеру, шутка, если что).
Что я могу сказать? Мехмат это очень круто! Это лучшая реализация для вундеркинда. Особенно повезло с преподавателями по матанализу, пожалуй, лучшими в мире. Как математик я мог бы найти работу где угодно, в области экспериментальной и теоретической физики, химии, любого НИИ. А программирование, по сравнению с математикой, казалось «детским лепетом на лужайке». Но, главное, математика развивает абстрактное мышление, а это очень способствует разработке и реализации сложных алгоритмов в программировании.
Зачем нужно второе высшее образование математику? Наши вундеркинды на мехмате были очень умными, каждый из них считал себя «пупом Земли», я им так и сказал, когда в общаге, на Ленинских горах, собралась группа наших первокурсников: «Среди вас семь вундеркиндов, и каждый считает, что весь мир существует ради него одного, любимого. Здесь только один я нормальный, правда, у меня уже есть высшее образование, но это не считается!».
Так вот, при всей их гениальности они после мехмата не знают жизни, ибо имели дело только со слишком абстрактной реальностью. Чтобы вернуть их на Землю, им надо поработать на производстве (пусть даже высокоинтеллектуальном и высокотехнологичном) и поучиться еще технической специальности. Ну и попрограммировать, ради практической пользы.
Да, этого всего у меня не было бы, если бы не было СССР. Сейчас жизнь другая, но принципы те же. Врожденные способности плюс желание учиться плюс фундаментальное образование плюс техническое образование плюс работа на благо страны – наше всё! Тогда на успех вы обречены! По крайней мере, я хотел бы повторить свой путь математика и программиста в следующей жизни.»
Поэтому, меня очень смущает ваша фраза:
Современная академическая математика отвратительна! Она нарочно дистанцируется от реального мира и сконцентрирована больше на самолюбовании. Совершенно абсурдный культ «царицы всех наук» и претензия на самостоятельную значимость пресекают большинство попыток познакомиться с ней поближе.
Ну, вообще-то, я не ожидал от вас такой сентенции. Вы просто не понимаете смысла абстрактной, теоретической математики. Она именно ДОЛЖНА «дистанцируется от реального мира» и отображать суть отношений между абстрактными объектами в чистом виде! Для работы с реальностью есть другая наука – физика. Все претензии к ней. Скажем, «Ландвшиц» (Ландау и Лифшиц, на жаргоне), в своем уникальном десятитомнике теоретической физики позволяли себе математические преобразования, от которых математики лишь тихо вздыхали. Но, ведь Ландау – Гений же! Он, просто, нашел, тот промежуточный уровень абстракции, когда и математики не могли слишком уж сильно «наехать» и связь с реальностью не терять.
Поэтому реальность для математиков это, всего лишь, повод для абстракций. Их задачи увидеть новые отношения (в «чистом» виде) и теоретически изучить их. А про прикладные вопросы – пусть думают другие! И это абсолютно правильно!
Роман Андрея Реутова открывает новую серию книг — «Хакеры сновидений». В основу сюжета вошли реальные события из истории российской группы исследователей, несколько десятилетий хранивших в тайне суть своих разысканий. Они называют себя Хакеры сновидений.
P.S. Я застал то время, когда это движение было активным (думаю, в следствии, эпохи «безвременья», в «лихие 90-тые»). Вообще-то, этот путь рискованный, связанный с черной магией тольтеков, о которых, Сергий Изриги (основатель движения) говорил: «Эти толтеки были настоящими хакерами!». Однако, многие последователи ХС кончили плохо. Но, к сожалению, про белую магию (любви) мы ничего не знаем.
Хрущев, конечно, очень мутный тип, хотя я понял это далеко не сразу (не зря, китайцы так сильно обиделись на меня из-за него!).
Только таких, как Хрущев, у Сталина было «вагон и маленькая тележка». Все вокруг были «враги народа», даже Бухарин (любимец Партии, по Ленину), со своим лозунгом: «Обогащайтесь!» Не говоря уже о Троцком и троцкистах.
У Сталина было хорошее чутье на «врагов народа», реальных, а не желания ради, позлобствовать (как пытается доказать Запад и его карманная «оппозиция»), однако, Хрущева он пропустил. За что и поплатился.
Говорят, Сталин посадил сына Хрущева, из-за чего стал его личным врагом. При этом, Хрущев был далеко не дурак, хотя Сталин на одной докладной Хрущева так и написал: «Уймись, дурак!».
Хрущев был непримирим к Западу (помните, как он стучал своим ботинком по трибуне ООН: «Мы вас похороним!»?). Он отправил первого человека в Космос, сбил, над Уралом, американский самолет-разведчик, а его лётчика Пауэлса – публично судил!
При этом, сельское хозяйство он, со своей кукурузой, фактически, разрушил. Крым – отдал УССР (поскольку был украинцем), но вот своим Коммунизмом он нас реально соблазнил. Не уверен, что у него получилось бы, но, сама попытка была стоящей.
Однако, уверен, главным разрушителем СССР («соломинкой, которая переловила горб верблюду»), стал Горбачёв. Но, его к власти, привела элита. А с детьми этой элиты я имел дело, когда, учился в МГУ (даже с Ельциным было на расстоянии вытянутой руки). Так вот Запад смог соблазнить эту элиту, а соответственно, и их детей, что я наблюдал своими глазами в Университете.
В СССР мы жили, более-менее, справедливо, но относительно скромно. Запад предложил элите – вам всё, а остальным, что останется. Это им очень понравилось, ибо министры, в СССР, могли за личный ящик коньяка, сдать интересы страны на миллиарды рублей. А легализовать личные миллионы никак не могли.
В итоге и элита осталась «с носом» (вспомним Березовского!) и народ потерял почти всё.
Так, давно уже говорят, что Сталин и Социализм не ушли в прошлое, а «растворились в будущем». И что, даже, сейчас: «Сталин-2.0 строит Социализм-2.0 в СССР-2.0!». Союзное Государство РФ + Беларусь – не даст соврать. Вопрос, только, кто будет третьим? Может быть, Франция или КНДР? :)
Это похоже на рассуждения, что не существует следствий, поскольку следствия порождаются причинами. Да, порождаются, но следствия это не причины.
Аналогично, Создание порождается мозгом, но это не мозг, т.е., это не материальная субстанция. Сознание, как и информация, не существует без своего материального носителя (высокоорганизованной материи или не очень, не суть, ибо это качественные понятия), но не зависит от него. По крайней мере, в принципиальном плане. Ведь ведутся, уже давно, разговоры о переносе сознания (подобно копированию информации с одного материального носителя на другой) из одного мозга в другой или даже в бездушную машину. Пока присутствуют технологические ограничения, но если это случится завтра, никто особо не удивится.
Думаю, что суть наших разногласий в этом, т.е.:
У меня идеальное не существует без своего материального носителя, но оно не зависит от него, а это и означает его дуальность, иначе говоря, принципиальную независимость, от своего материального носителя.
У вас, тоже, «идеальное» не существует без материального носителя, а то, что оно принципиально не зависит от своего материального носителя, для вас не повод выделять его в отдельную субстанцию, т.е., альтернативу материального. Соответственно, у вас не возникает потребности и в понятии «дуальность». Только и всего!
«Сильно» сказано! Осталось отлить в граните и отменить философию (может быть, заодно и математику, там ведь рассуждают о нематериальных вещах (числа, например, не материальны, т.е., не имеют под собой физических частиц)?).
Это вы цитируете учебник материалистической философии, который как раз и утверждает, что сознание это не материя, а противоположная ей субстанция. То бишь, мозг и сознание это дуальные понятия, от которых вы пытаетесь отказаться. Себя то вы может быть убедили, но других вряд ли.
А как насчет информации? Она тоже материальна?
Как известно, информация не существует без материального носителя, но независима от него! Именно эта независимость от материального носителя делает ее идеальной или там виртуальной.
О! Как интересно! Следовательно, ваше сознание – материально? Соответственно, материальны время, пространство, движение, информация, законы развития и т.п.?
Материя имеет в своей основе элементарные частицы. Даже свет (фотон) и физические поля (бозоны, глюоны, гравитоны (в теории), лептоны и кварки (в теории)).
Вы полагаете, что существуют частицы сознания, пространства, времени, движения, информации, законов и т.п.?
Во, как!
Поспешите объявить свое авторство этих идей! Может быть, успеете, к концу года, получить Нобелевскую Премию по физике, заодно, пообщаетесь с «Трампусиком», когда он будет получать там свою Премию Мира.
P.S. Вы можете сказать, что все это свойства материи, а не сама материя. А эти свойства – материальны или нет? Если да, то тогда встает вопрос о частицах свойств (нет частиц – нет материи!).
Полагаю, что те или тот, кто изобретал этот Мир думают, примерно, также. Меня даже, иногда, посещает мысль, что ментальной причиной разрушения СССР стала его относительное социальное совершенство. Там было, в некотором смысле, очень хорошо и комфортно. Бесплатная учеба, квартиры, медицина (с минусами, но всё же!), вера в будущее, культ образования (Специалист? Иди на повышение!). Даже «социальные лифты» были не пустым звуком.
К сожалению и я об этом говорю в статье, «идеальное» общество может быть образовано только «Диктатором». У нас это был И.В. Сталин. После его смерти, Система, по инерции, еще существовала какое-то время (почти двадцать пять лет), то социальные паразиты разрушили ее окончательно.
Сейчас очень интересное время, в том смысле, что восстановление и возрождение России осуществляется в мягкой форме, без чрезвычайных мер Иосифа Виссарионовича (у него было слишком мало времени, мы были очень слабы, а враг был очень силен: «Мы должны пробежать за десять лет Путь, который страны Запада прошли за сто лет, иначе нас сомнут!»).
Соответственно, социальная справедливость возрождается относительно медленно, но, лучше так, чем никак!
А про истинную «предпосылку» вы, конечно, не скажите?
Ну, да! Поводов для анекдотов она дает больше. Например:
«На предвыборном митинге. – Кто мы? – Женщины! – Чего мы хотим? – Не знаем! – Когда мы этого хотим? – Прямо сейчас и много!».
«– Дура! – Зато красивая! – Кто тебе сказал? – Ты! – И ты поверила? – Да! – Ну и дура! – Зато красивая!».
А вы знаете анекдоты про мужскую логику?
Не всё, только половина :) .
«Взаимодействие» – динамическое понятие, т.е., получается, что статический объект не имеет о себе никакой информации?
Это вы, сначала, расскажите классикам. Много вы у них видели «терминов» и «определений»? Нет, ну иногда встречаются, скажем, у «дедушки» Ленина: «Коммунизм – это Советская власть плюс электрификация всей страны!», что сразу дало повод для злословий: «Советская власть – это Коммунизм минус электрификация всей страны!».
На самом деле, это, в некотором смысле, заблуждение. Даже в математике, определения не всегда содержательны. Например, у Эвклида: «Прямая – это длина без ширины». Много лм вы сможете почерпнуть из него? Тем не менее, Эвклидова геометрия прекрасно существует и непротиворечива, думаю, что даже вы ее в школе «проходили».
Существует термин «неопределяемые понятия». Вы не поверите, но математика изучает не столько сами объекты (вводимые через их определения), сколько отношения между ними. Некоторые из этих отношений (свойств) постулируются (без доказательства), т.е., являются аксиомами, а остальные доказываются (леммы и теоремы).
Поэтому, что вы хотите от гуманитариев? Определения понятий «материя», «пространство», «время» или «сознание»? Их даже физики не могут, толком, дать. Например, в математике, n-мерное Эвклидово пространство это n-мерное Декартово произведение для числовых прямых (т.е., множеств действительных чисел). Можно определять дальше, но, оно вам надо? В итоге, мы уткнемся в конечные определения, типа, число – это элемент множества, определяющееся следующими свойствами… Для натуральных чисел – это аксиоматика Пеано. Затем, последовательно, определяются ноль, отрицательные числа, рациональные числа, действительные, комплексные, кватернионы, гиперкомплексные, алгебры Кэли-Диксона и т.д.
Здесь понятие «множество», «элемент» и т.п. – неопределяемые «по определению». Но, разве это мешает развиваться математике, физике и другим точным наукам? Нет, конечно. Даже возникающие противоречия там успешно разрешаются.
В гуманитарных науках, определения, вообще, постольку поскольку. Вы может их давать, можете не давать, объясняя на пальцах (одно яблоко, два яблока, три апельсина…), роли они особой не играют. Поскольку никаких теорем из них не выводится. Поэтому, обращают внимание не на них, а на логику рассуждений. Если ваша логика хромает, то будьте готовы к уместной критике.
Я в синтаксисе С++ вообще никаких проблем не вижу. Меня все устраивает. А современный синтаксис только усложняет жизнь, поскольку иногда надо конвертировать проекты из VS C++ 2019 либо выше в 2013-й. Не всегда это возможно, с пол-гинка.
Что дают новые возможности? Безопасность? Так я ограничиваюсь только собственными пет-проектами. Для работы писал драйвера, кстати, они до сих пор работают, без модернизации (более десяти лет). Там хватало 1С, правда, для развлечения, писал внешние компоненты для них.
Это красиво звучит, но верится слабо. Не проще ли разрабатывать сами безопасные алгоритмы, все же, как-то надежней выглядит.
Если вы работаете на Космос или на Оборону и вас хорошо спонсируют, то это может иметь некоторый смысл. Помните, как разбилась наша «Луна-25» при прилунении? Торопились опередить индийцев с аналогичной миссией. В итоге, была ошибка в алгоритме торможения аппарата при спуске на Спутник Земли. Уверен, что код там был «безопасный». Только программисты плохо знали физику Луны, в которой много специфики и особенностей. Ну, и помог бы там ваш новый безопасный универсальный язык? Наверняка, используемый алгоритм преобразовался бы корректно и безопасно. Только откуда ваш язык программирования узнает обо всех особенностях физики Луны и исправит сам алгоритм? Так что, результат был бы тем же, космический аппарат ухайдокали бы, а индийцам бы дали повод позлорадствовать.
Вот, если бы кто-то изобрел новый язык программирования, по оптимизированной работе с графикой (GUI), то я бы, наверняка, заинтересовался. Китайцы, вместо нового языка, предлагают свою библиотеку «DuiLib». Получается красиво (интерфейс программ вынесен во внешние xml-файлы, для редактирования которых они даже создали специальный редактор «DuiEditor»), только очень громоздко – пользоваться, особого желания – нет.
Кто же против, пусть делает! Ибо останавливаться в развитии – чревато. Речь о другом, мне возможностей C++ / WTL хватит на всю оставшуюся жизнь. Зачем мне отвлекаться на непонятки? Как кто-то написал, в Интернете: «В Мире есть много вещей, которые мне… не нужны!». Но, ведь я не главный в этом Мире, правда? Если другим надо – пусть дерзают!
Я бы предпочел скриншоты программ, как, скажем, в своей статье: «Роль данных при изучении иностранного языка» ( https://habr.com/ru/articles/930868/ ). Посмотрел на картинки и сразу видно, стоит читать статью или ну ее нах?
У вас только фото с мероприятия. Что они дают нетерпеливому читателю? Пройтись по ссылкам? Прошелся, за несколько секунд – ничего не понял либо не интересно, а какой мне смысл вникать? И так поступают многие.
Меня эта тема зацепила, ибо актуальна в моем творчестве, поэтому именно на нее я только и реагирую.
Ну, это, надолго, может быть интересно только вам. Лично мне Питона и С++ хватает за глаза. Куда еще один язык программирования?
Хорошая статья, жаль, что я не обнаружил у себя литературных способностей. Думал, что рациональное мышление поможет «писать красиво». Не помогло!
У Стивена Кинга есть книга: «Как писать книги?». Он считает, что задача автора – «произвести впечатления». Я думаю, что это не главное. Точнее, полагаю, что главное впечатление должно быть – эстетическим, т.е., почти физическое удовольствие от «красиво сказанного слова». Тогда и бытовые романы пойдут на ура. А там сюжет, вообще, отсутствует, просто, красивое описание обычной жизни, типа, романов Оскара Лутса: «Зима», «Весна», «Лето».
Кстати, для прикола, я написал статью: ««Hello, World!» для начинающих литераторов» ( https://habr.com/ru/articles/342512/ ), но, к сожалению, тема не получила развития. А, с нейросетями, писать скучно. Ибо красивый текст – он всегда авторский. А бездушная машина может только дать кальку…
«Нужна для» это не из определения. В определении должны присутствовать слова: «это (есть)».
Что именно «упрощает написание взаимозависимого кода» – непонятно. Отсутствие h / cpp файлов? А что взамен? А дальше идут только хотелки.
Скажите, вы сами пишите на С++? Вот, я, лично, пишу и для меня понятие модульности не абстрактное, а конкретное. Чтобы упростить сильные связи, да еще взаимно-перекрестные, нужна именно изоляция кода на относительно независимые части. Причем, не на уровне dll-ек (это и так есть), а .на уровне текстовых блоков, которые я и называю модулями.
Эти блоки кода (модули) должны быть легко подключаемыми / отключаемыми. Для этого нужна спецификация их взаимодействия. Об этом где-нибудь говорится? Можно было сказать, на конференции, которую вы описываете, но там, как я понял, предпочитают говорить о стандартах развития языка, типа, С++ 26, протоколах и прочих формальностях.
А зачем это надо практическому программисту на С++? Меня, вот, вполне устраивает, VS C++ 2013. Дешево и сердито. Все, что мне нужно, там есть. Лёгкий, шустрый, удобный. Есть бесплатный VS C++ 2017, но он мне нравится меньше. А более новые версии, еще менее интересны.
Как это ни странно, но я не вижу никакой потребности в развитии этого языка. Главное, научится толком работать с тем, что уже есть. Скажем, с WTL. Этой библиотеке всего полтора мегабайта в исходниках, но мне она кажется неисчерпаемой.
Поэтому, думаю, нужно больше писать не о принципах программирования, типа SOLID и прочем, а о технологии программирования. А на эту тему статей, на Хабре, практически нет. Ибо все предпочитают говорить «вообще», а не «конкретно».
Ну, и чём прикол? В этом смысле, любой проект на VS C++ уже разбит на модули: *.h / *.cpp файлов компонент и сопровождающие их файлы. Что нового-то?
При этом, исходный текст модуля, на С++, можно взять из опенсорса и прилепить к своему проекту. Все его файлы положить в отдельный каталог и получить к ним доступ из основной части проекта. Так делалось всегда. Как их там компилирует компилятор – не суть важно, главное на выходе получить искомый ехе-шник. Это что не модульность, в вашем (именно!) понимании? О чем тогда речь?
Для примера. Мне понадобилось сделать программу для ручного извлечения текста из медиа-файлов (для подготовки обучающих данных к своей программе). Для этого взял опенсорсный файл FFPlay.c с зависимыми файлами, для работы с видео и прочим медиа, преобразовал их в классы с++ и подключил к своему (неопубликованному) проекту «MediaText», см. скриншот: http://scholium.webservis.ru/Pics/MediaText.png .
Разве это не есть модульность в вашем понимании? Чего тогда еще хотеть от модульности в С++, когда она уже в любом виде присутствует там и так?
Это и в дискуссии под статьей видно, что у каждого свое представление о понятии «модуль». Чаще всего, под модулем в С++ понимают тоже самое что под модулем в Питоне. Но, я так не думаю. Я, лично, под модулем понимаю изолированный код проекта, который, стандартным образом (например, с помощью внешних скриптов), как подключается к общему проекту, так и отключается от него (при этом работоспособность проекта должна сохраняться). Это можно делать двояко: на уровне исходников (у меня это статические плагины) и на бинарном уровне (динамические плагины). Можно еще вспомнить бинарные компоненты от M$, но, это уже будет чужой (бинарный) код.
При работе в команде, я бы предпочел разделение труда в рамках статических плагинов, а для их тестирования – аналогичных, динамических. Однако в команде мне работать не пришлось (все свои программы писал в одиночку), поэтому, мне трудно судить о реальной эффективности этого метода.
А так, похоже на обычную реакцию: «Это не то, что я хочу, но, что я хочу – я не знаю!».
У меня тоже была своя «банальная задача». Нужно было добавить произвольный фон вместо скучной цветовой гаммы. В итоге, это вылилось в статью, как и у вас: «Можно ли в 1С не соблюдать технологию внешних компонент? Или Как поздравить коллег с помощью 1С?» ( https://habr.com/ru/articles/466713/ ).
Как по мне, это хорошие идеи! Даже, если этим злоупотребляют. В этом случае, оформляйте свой «бесплатный готовый прототип за 20-30 часов» в собственный пет-проект и публикуйте его. Всё равно их делать надо для улучшения своего резюме.
У нас подобная схема была на зачетах по матанализу, на мехмате МГУ. Легче всего, его было получить, если ты систематически решал домашние задачи, некоторые из которых требовали по пять-шесть часов. А давали их по двадцать штук, два-три раза в неделю.
Если запускал домашку, то будь добр прояви свои таланты математика на зачете. Там тебе давали трудную задачу и отпускали. Как решишь – придешь. Можешь пользоваться чем хочешь, библиотекой, помощью сокурсников (компьютеры, в то время, только-только появлялись, а Интернета еще не было, в принципе). Однако, все были в равных условиях. Дай Бог, решить собственную задачу, какая там «помощь другу»? Читальные залы помогали, но требовали кучу времени.
Потом, мало было решить задачу, надо было ее еще «сдать». Цеплялись, всерьез, к каждому нюансу. Если во что-то не вник, должным образом, иди, разбирайся дальше. Это был настолько тщательный анализ, что, когда слушал лекции по ТФКП, часто ловил себя на мысли, что этот профессор, наш зачет по матану не получил бы, просто, он, иногда, был небрежен в деталях доказательств своих теорем.
Пока не сдашь зачет – не будешь допущен к экзаменам. Не сдашь весной экзамены, можешь попробовать пересдать их в конце лета. Иначе, вылет из Универа, минимум на год.
Короче говоря, система обучения там была заточена на уровень самого умного студента. Ему приходилось пахать много, а середянчку – очень много! Были и совсем «наивные чукотские юноши», которые поступали по квоте, как нацмены. К моему огромному удивлению, один из таких «выжил», т.е., дошел до пятого курса (до которого из 300 первокурсников добрались только 150), хотя, как он рассказывал, в его безлюдных степях был только один учитель на всю школу, который преподавал все предметы, какие мог, а какие не мог – не преподавал. Парень был настолько прост и наивен, что мне пришлось заставлять его, стоя, читать газеты, вслух. Меня он слушал, просто потому, что вырос среди военных и их очень уважал. А для меня МГУ – был уже вторым ВУЗом, а, по первому, я уже был лейтенантом запаса. Кстати, в Университете мне снова предлагали пойти на военную кафедру, на что я ответил: «Вы хотите, чтобы я стал дважды лейтенантом запаса?». Юмор мой оценили и разрешили на военку не ходить, что дало мне больше времени для математики.
Несмотря на мое его жесткое воспитание, усилия не пропали даром. В то время уже во всю «бушевала» «Пересройка», пресса была очень актуальна и в дефиците. Нужно было, вставать рано утром (для студента, для которого два часа ночи – начало для домашней учебы), чтобы купить «Огонёк» и газеты в холле главного здания МГУ (в крыльях которого, размещалась наша общага). И я был очень удивлен и обрадован, когда увидел нашего «нацмена» в очереди за прессой. А на пятом курсе мы обсуждали с ним варианты доказательства Теоремы Ферма. Сейчас, он, «хайли лайкли», уже, скорее всего, академик в своем *стане.
В общем, трудности они ведь не только для нас, но и для всех. Поэтому, относимся к ним спокойно и по деловому… :)
P.S. Сорри, за лирическое отступление!
Про «стандарт» говорить не берусь, но свое представления о модулях в С++ я описал в статье: «Модульное программирование в C++. Статические и динамические плагины» ( https://habr.com/ru/articles/566864/ ).
Я так и знал, что про интерфейс (GUI) никто говорить не хочет. Про веб-программирование – материалов валом, а про правильное проектирование «графики» – почти ничего.
Это все хорошо и красиво, вопрос только один, а что мы будем иметь в итоге, кроме общего развития?
Для меня этап ФП (как я его понимаю) пройден и уже не интересен. Вот о чём «определённо стоит говорить почаще», так это об WTL. Я собираюсь, но Миру и Граду надо предъявить Дары, то бишь, демонстрацию возможностей. Чтобы народ глянул на скриншот и сказал: «Во! Это мне интересно!» или «Это мне нах не нужно!». Главное, что окончательное решение будет принято в первые несколько секунд. Ведь мы же о программировании, в первую очередь, говорим, а не математическом самообразовании?
Интересно! Хотя я этот текст уже где-то встречал, уж очень знакомы многие словесные обороты. Однако, лично для себя я все эти советы свожу к одному методу «здравого смысла». Пока он помогал больше, чем все, мне известные.
Тема явно очень «горячая», 353 комментария на «эту небольшую заметку» – очень круто, говорю без иронии.
Только подобную заметку я могу написать и сам и даже что-то подобное уже писал, где-то в комментариях. Один из них (копирую текст, чтобы не переходить по ссылке) на https://habr.com/ru/companies/bothub/articles/812951/comments/#comment_26801667 :
«> Для наверное 95% программистских задач высшая математическая база особо и не нужна.
То, что можно быть лучшим программистом в регионе, без математического образования, согласен. Знаю одного очень талантливого программиста, с геологическим образованием плюс вспомогательные курсы.
Тем не менее, считаю, что математика в программировании это больше, чем математика.
Лично я бы посоветовал вундеркинду, увлекающемуся программированием, закончить очно, после школы, мехмат МГУ, по специальности «математика». Затем получить распределение либо просто найти работу в крутом научно-производственном объединении (для мехматовца это несложно), специализирующемся в области высоких технологий (ИИ, оборона, Космос, экспериментальная физика, и т.д. и т.п.), после чего поступить во второй ВУЗ, с техническим уклоном, на специальность, связанной с работой. Лучше на дневное отделение, сразу на второй-третий курс, но можно и на вечернее. Тогда, наш «вундервунд» будет обречен на успех (в России, конечно).
Почему так?
Сужу по собственному опыту. Сам я учился «наоборот», пять лет дневного высшего образования в Политехническом институте, затем четыре года работы по распределению во Всесоюзном НИИ, затем пять лет очно на мехмате МГУ, по специальности «математика». Потом работа в крутом Научно-Производственном объединении. На успех был обречен, шеф Объединения, академик, с удовольствием взял меня к себе в аспиранты. Всё было идеально, если бы не распад СССР (который осуществили, чтобы не дать мне сделать карьеру, шутка, если что).
Что я могу сказать? Мехмат это очень круто! Это лучшая реализация для вундеркинда. Особенно повезло с преподавателями по матанализу, пожалуй, лучшими в мире. Как математик я мог бы найти работу где угодно, в области экспериментальной и теоретической физики, химии, любого НИИ. А программирование, по сравнению с математикой, казалось «детским лепетом на лужайке». Но, главное, математика развивает абстрактное мышление, а это очень способствует разработке и реализации сложных алгоритмов в программировании.
Зачем нужно второе высшее образование математику? Наши вундеркинды на мехмате были очень умными, каждый из них считал себя «пупом Земли», я им так и сказал, когда в общаге, на Ленинских горах, собралась группа наших первокурсников: «Среди вас семь вундеркиндов, и каждый считает, что весь мир существует ради него одного, любимого. Здесь только один я нормальный, правда, у меня уже есть высшее образование, но это не считается!».
Так вот, при всей их гениальности они после мехмата не знают жизни, ибо имели дело только со слишком абстрактной реальностью. Чтобы вернуть их на Землю, им надо поработать на производстве (пусть даже высокоинтеллектуальном и высокотехнологичном) и поучиться еще технической специальности. Ну и попрограммировать, ради практической пользы.
Да, этого всего у меня не было бы, если бы не было СССР. Сейчас жизнь другая, но принципы те же. Врожденные способности плюс желание учиться плюс фундаментальное образование плюс техническое образование плюс работа на благо страны – наше всё! Тогда на успех вы обречены! По крайней мере, я хотел бы повторить свой путь математика и программиста в следующей жизни.»
Поэтому, меня очень смущает ваша фраза:
Ну, вообще-то, я не ожидал от вас такой сентенции. Вы просто не понимаете смысла абстрактной, теоретической математики. Она именно ДОЛЖНА «дистанцируется от реального мира» и отображать суть отношений между абстрактными объектами в чистом виде! Для работы с реальностью есть другая наука – физика. Все претензии к ней. Скажем, «Ландвшиц» (Ландау и Лифшиц, на жаргоне), в своем уникальном десятитомнике теоретической физики позволяли себе математические преобразования, от которых математики лишь тихо вздыхали. Но, ведь Ландау – Гений же! Он, просто, нашел, тот промежуточный уровень абстракции, когда и математики не могли слишком уж сильно «наехать» и связь с реальностью не терять.
Поэтому реальность для математиков это, всего лишь, повод для абстракций. Их задачи увидеть новые отношения (в «чистом» виде) и теоретически изучить их. А про прикладные вопросы – пусть думают другие! И это абсолютно правильно!
Нет, не видел его, скорее, книгу Андрея Реутова: «Хакеры сновидений» ( https://mybook.ru/author/andrej-reutov/hakery-snovidenij-1/read/ или https://homeread.net/book/hakery-snovideniy-andrey-reutov ).
Вот её аннотация:
P.S. Я застал то время, когда это движение было активным (думаю, в следствии, эпохи «безвременья», в «лихие 90-тые»). Вообще-то, этот путь рискованный, связанный с черной магией тольтеков, о которых, Сергий Изриги (основатель движения) говорил: «Эти толтеки были настоящими хакерами!». Однако, многие последователи ХС кончили плохо. Но, к сожалению, про белую магию (любви) мы ничего не знаем.