Pull to refresh
-30
@kababokread⁠-⁠only

Пользователь

Send message
Но я согласен, что в DS/ML не всё так красочно как некоторые пишут. Вакансий много, но и конкуренция огромная. Компаниям нужны опытные спецы (часто с публикациями в ведущих журналах). Здесь нет (или очень мало) таких позиций типа junior-java-разработчик, которого могут взять и потом на месте будут обучать. Но всё равно мне направление DS/ML нравится, так что не жалко потраченного времени на изучение всех этих примудростей. Я здесь только начинающий, если что.
UFO landed and left these words here

(11) Скорее ко всем, а не только к ТМ


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


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


Чтобы утверждения выше не казались голословными — маленький пример.


Посмотрите, пожалуйста, в аккаунт пользователя sith


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


То есть — именно то, что требуется для здорового развития сообщества и портала. А также то, что приносит доход. Денежку держателям портала.


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


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


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


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

Я там ночью в прошлом году был. Сугроб зашевелился, заурчал, развернулся и отнял у меня пучок сена через забор. С тех пор я хотел доехать до Засек, где они на вольном содержании, а не вольерном. Доехал вот.
Джордж. С планетой всё в порядке

Кое-что добавлю по экипировке. Обязательно перчатки с целыми пальцами.Обязательно, даже если собираетесь ходить в Англии, большой запас средства от загара с фактором не хуже 50. Солнце двойное — светит сверху и от воды, а уф отлично пробивает облачность и обычные футболки без уф фильтра. Если регата, то очень желательно наколенники. Человек после регаты, а особенно девушка, состоит из множества синяков на коленках и на попе. Коленки очень долго восстанавливаются. Если зрение не идеальное, контактные линзы, причём дома купите, потому что в некоторых странах это по рецепту от врача, а тёмные очки с диоптриями это дорого. Спортивные тёмные очки, и специальный шнурок на дужки, иначе улетят. Герметичный пакет для документов. Аптечка с мощным антибиотиком, с хорошим анальгети компьютер в таблетках и в виде крема, с каплями в глаза и в уши, с противорвотным, с пластырями и бинтами, йодом и всем остальным, что поместится. Если у вас большой размер тушки, то жилет, который есть на лодке, будет вам мал. И вообще на лодке может оказаться неудобный пенопластовый жилет.
Раз пошла такая пьянка про самообучение программированию, то вот эпичная, хотя и порядком устаревшая, копипаста:

Итак, салаги, вы пришли к старым морским волкам в /pr/ и хотите стать программистами. Надеюсь, вы знаете, что хотите, так как это нелёгкий путь. Позвольте разъяснить вам несколько моментов: а) Большинство людей, которые делают сайты – не программисты. Если вы хотите делать сайты, но не хотите быть программистом – берите в зубы учебник «PHP5 в подлиннике» и начинайте делать свою первую гостевуху. Вопросы решайте в гугле, /s/ и форумах. Здесь другая тематика. Эту пасту дальше читать не надо, мы будем долго разговаривать, а вам нельзя терять время. б) За 21 день освоить программирование не получится. Никак. Совсем. Если срочно нужны деньги, то присоединяйся к товарищам, которые встали и ушли после пункта а. Нормальный объём академических часов в высшем образовании – 8000 штук. Это три года хорошей учёбы. Для того чтобы освоить материал хорошо надо ещё больше. Если параллельно бухать в общаге, то можно и в пять лет не уложиться. в) Я не Попов, магических способов изучения программирования за два DVD-диска не знаю, и учить им не буду. Я худший наставник, чем Кормен или Ахо, и буду только указывать вам направления деятельности. Готовься искать информацию сами. В каждой книге читайте, по крайней мере, оглавление. Задавайте вопросы. г) Программирование не есть изучение языков программирования. Хотя мы начнём его изучение с нескольких языков, они не являются самоцелью курса. д) Если вам не нравится паста – пишите конструктивную критику и предлагайте лучшие решения. От пустословия паста лучше стать не сможет.

И так, надеюсь тут остались только те, кто хотят учиться. Если вам надо учиться, но вы не хотите, значит надо не вам. Наслаждайтесь. Вы станете настоящими программистами. Я надеюсь, что вы знаете математику и информатику на уровне 9 класса. Если не знаете, то перечитайте учебники. Курс от /pr/ состоит из модулей, каждый модуль состоит из двух частей: а) Матчасть. В матчасти перечислены моменты, которые надо изучить и книги, которые надо читать при изучении модуля. Все книги есть в Интернете. Если позволяют деньги, можно заказывать печатные варианты. Лучше читать на английском, но если не получается – используйте хороший русский перевод. Читайте так, как вам нравится. Если ничего не понимаете – читайте вперёд и перечитывайте после. Можно начать другой модуль. Можно заняться практикой. Можно почитать другую книгу похожей тематики. б) Практика. На практике надо писать программы. Ну, или, по крайней мере, составлять алгоритмы. Я буду предлагать небольшие проекты, которые охватывают материал из модуля. Но писать надо то, что нравится.

Модуль первый, введение. Задача: получить мотивацию и базовые знания, которые потребуются для освоения дальнейшего материала. Матчасть: информатика, программирование на языках высокого уровня, базовые понятия программирования: итерации, рекурсия, процедуры, функции, абстракции, классы, объекты, методы, переменные, присваивание, замещение, цикл, ветвление. Вначале советую читать SICP. Не весь. Вычисления на регистровых машинах можно отложить на потом. Нужно понять и прочувствовать принципы работы схемы (язык программирования, который используется в этой книге): это простой и одновременно мощный язык. Поначалу будет сложно, так как схема не похожа на бейсик, паскаль или что вы там изучали в школе. Но если вам удастся ухватиться по крайней мере за половину того, что написано в SICPе дальше будет легко и приятно. Писать на схеме сложные приложения невозможно. Это чисто учебный язык и вы никогда не будете его использовать на практике. Поэтому далее надо выучить кое-что посерьёзнее. Обычно первокурсники в России изучают язык си. Это не очень плохая идея в той части, что большинство языков имеют си-подобный синтаксис. В части байтосношения и плохого ООП на крестах (так я буду называть язык C++) это плохая идея. Поэтому откройте толстенный учебник Дейтелов и хорошенько изучите его ровно до конца шестой главы. Это где-то 1/3 часть учебника. Дальше можете не читать, так как рискуете навсегда испортить себе вкус. Но можете и прочитать. На си можно писать сложные программы, но так тоже никто не делает. Поэтому большинство программ из курса я рекомендую писать на Java и Python.

Отвечаю на недовольный гул в аудитории: Java потому, что java легче. Изучая что-то другое на этом этапе, вы просто запутаетесь в особенностях языка. Особенно это касается шарпа (хотя на нём можно писать, как на джаве, только вот ведь не захочется), крестов (там сложно не запутаться) и хачкеля. Python потому, что некоторые задачи легче решать на скриптовом языке. Кроме того, в питоне есть некое подобие функциональщины, и если рано припечёт, то можно будет посмотреть и её. Хорошо ориентируясь в этих языках (на это не нужно слишком много времени – это не кресты, которые нужно учить годами) можно потом достаточно быстро изучить другие языки. А можно и не изучать, так как оба этих языка (в сущности, плохих) широко применяются до сих пор. Не заворачивайтесь на IDE, компиляторах и прочем инструментарии: вы всё равно перепробуете все доступные. Не дожидайтесь, пока вас утомит первая рекомендованная среда, а сразу поставьте все распространённые и выберите понравившуюся.

Книги: Философия Java Эккеля, читать по мере необходимости. Не занимайтесь особым оверинжинирингом. По крайней мере многопоточность следует отложить до лучших времён. Не забивайте себе голову паттернами. Книга номер два — в глубь языка Python. Кстати, я знаю, как пишется «вглубь», просто использую русский перевод с официального сайта. Опять же – изучайте разделы по мере необходимости. Сомневаюсь, что тёлки будут ахать при одном упоминании каких-то ваших характеристик, но изучить основы этого языка можно очень быстро. Кроме того, попробуйте почитать «Конкретную математику». Пока не станет скучно. Я рассчитываю, что скучно станет весьма быстро, хотя книга (как и TACP Кнута) написана с характерным юморком. Асимптотику лучше отложить до алгоритмов. Если чувствуете, что идёт совсем плохо (не Кнут с Паташником, а вообще), то читайте школьные учебники. Лучше старые, советские. Можно почитать книги для совсем маленьких детей «А я был в компьютерном городе», «Занимательная информатика» и.т.п. – это просто весело. Вам должно быть интересно читать. Если на этом этапе вам скучно, то дальше будет вообще кромешный непролазный песец. Ещё не поздно пойти писать гостевуху. Да, это была самая сложная часть. Если вынести из неё ещё и знание английского, то всё остальное покажется лёгкой прогулкой.

Практика: из всех учебников, которые я перечислил, задачи есть только в SICP'е и Дейтелах (ну и в конкретной математике, конечно). Их нужно решать. Освойте все простые конструкции, напишите несколько несложных игр, для одной из них напишите ИИ. Порешайте задачи для школьников, которые просят сделать за них лабу в /pr/ — но обязательно пишите на другом языке.
Теперь можно перейти к дискретной математике. Задача: понимать язык, на котором написаны остальные книги. Нет, это не самый занудный раздел. Теория трансляции будет зануднее. Матчасть: Открываете любой учебник, в котором есть: множества, алгебры, отображения, графы. Хорошо подойдут университетские методички. Можете видеокурсы с интуита посмотреть. Учишь. Плюс нужна элементарная матлогика – кванторы, законы де Моргана, таблицы истинности. Семиотику пока трогать не надо. Практика: Выполняете задания. Доказываете теоремы.

Традиционно далее изучаются базы данных. Базы данных есть в любом мало-мальски сложном приложении. Даже в компьютерных играх есть. Даже в примитивных гостевухах, которые сейчас пишут оставившие нас несколько абзацев назад «коллеги». Поэтому базы данных надо знать. Сейчас используются исключительно реляционные базы данных. Некоторые люди поговаривают про key-value хранилища (непременно асинхронные и сверхбыстрые), ну так вот, они концептуально тоже реляционные. Но вы с ними обязательно разберитесь отдельно. Матчасть: идёте по учебнику Кристофера Дейта и изучаете темы. Идти до конца не надо: читайте выборочно и смело бросайте около 17 главы. Изучить надо реляционное исчисление, ER-модель, транзакции, SQL. SQL лучше изучать не по Дейту, а по какому-нибудь практическому учебнику – обратите внимание на книжку Моисеева и его сайт с задачами. Практика: проектировать базы данных. Быстро. В уме. Таблицы должны интуитивно получаться сразу в 3NF. Пишите запросы на сайте у Моисеенко. Напишите приложение, которое активно использует базу данных – многим студентам такое барахло нужно на курсачи и дипломы, можно даже найти заказчика за деньги. Посмотрите на ORM (SQLAlchemy, Hibernate и.т.п.), почитайте статейки. Узнайте, какие сейчас используются базы данных, и обязательно прикрути парочку к своим приложениям.

Архитектура ЭВМ. Задача: знать, как работает компьютер. Дабы не делать ляпов. По крайней мере, глупых ляпов. Матчасть: Читаете Таненбаума, про архитектуру ЭВМ. Лёгкое и интересное чтиво. Знать: что такое вентиль, что из них составляют: там очень подробно описано по разделам. Не путаться в шинах. Знать про адресацию памяти, прерывания. Практика: Спроектировать простейший «железный» компьютер из блоков. На бумажке. Чтобы выполнял программу, записанную в память. Спроектировать всякой ерунды в эмуляторе схем. Дешифратор для семисегментного индикатора, например. Ассемблер лучше особо не трогайте, познакомишься с ним для интересу у Кнута, а писать на нём вам всё равно не придётся. Во всяком случае, я до сих пор я пытался оградить вас от низкоуровневого программирования. Знаний там очень много, но они все совсем не фундаментальные и изучать их надо под конкретную должность. Начните читать Кнута, по крайней мере, разберитесь с его компьютерами (MIX и MMIX) и напишите для них несколько программ на бумажке. Сделайте свой виртуальный компьютер, но не такой старый и сложный, как у Кнута. Сделайте для него ассемблер и напишите пару простых программ.

Наконец переходим к алгоритмам. Задача: понимать, как оценивается скорость алгоритма, почему существует много алгоритмов, как выбрать нужный. Знать базовые алгоритмы. Знать структуры данных и связанные с ними алгоритмы. Хорошо знать! Их много самых разных. Всякие связные списки из массивов вы должны уметь реализовывать стоя у доски с маркером. Книги: Вирт, Ахо по алгоритмам и структурам данных. Тут вот читать надо всё, очень пригодится дискретка. Опять же, Кормен. Там очень много материала, разбирайтесь в нём постепенно. Можно вернуться к конкретной математике, раз уж вы её бросили. Практика: реализуйте алгоритмы, про которые читаете. Вряд ли в реальном мире вы будете использовать их в чистом виде, однако вы должны знать хорошие решения. Да, эта бодяга надолго. Изучайте параллельно что-нибудь ещё, следующие разделы лёгкие и богатые на практику.

Сети. Задача – научиться писать сетевые приложения. Матчасть: Таненабум наш друг и товарищ на все времена. Осиливайте модель OSI, читайте спецификации нескольких сетевых протоколов. Например, http и smpt. Особенно http – разберись с хедерами, сжатием и.т.п. Долго и хорошо почитайте в Википедии про современные системы связи. Посмотрите алгоритмы, которые используются в маршрутизации, разберись, чем пакет отличается от кадра. Практика: делаем сокет-сервер, например, для чата. Разберитесь с XML, HTML, JSON. XML особенно. Освойте XPath.

Операционные системы. Задача состоит не столько в изучении операционных систем, сколько в изучении принципов распределения ресурсов компьютера. Тут же надо разобраться с многозадачностью, которую я вам как-то отсоветовал изучать сразу. Матчасть: опять же Таненбаум. Разберитесь с алгоритмами для планирования процессов, организацией памяти, файловыми системами, ядрами. Есть толстенный учебник Дейтелов. Помните, вы по ним си изучали? Так вот, ещё есть и по ОС учебник. Отдельно изучаете многозадачность: синхронизацию, пайпы, семафоры, мониторы. В жабе всё это дело есть из коробки и писать программы, которые реализуют такую функциональность будет просто и приятно. Если вы бросили Эккеля на этом месте – самое время начать читать опять. Одного Эккеля мало, используйте гугл. Хотя, наверное, к этому времени вы уже сменили язык. Практика: многопоточные приложения. Сделайте свой компьютер многопоточным. Это весьма занимательно.

Формальные языки и методы трансляции. Да, вот она вершина, с которой видно весь остальной курс. Если вы досюда добрались, то у вас железные яйца. Жму руку. Хотя и написано, что теория трансляции, надо обратить внимание на синтаксически управляемую обработку данных вообще. Матчасть: начинаем разогрев с главы учебника по дискретке про семиотику. Продолжаем Ахо и Сети, Книгой Дракона. Введение по дискретке там есть, но бедное. Нужно осилить грамматики, языки, иерархию Хомского и соответствующие автоматы. Кстати, автоматы в конце SICPа есть. Изучаем работу компиляторов и интерпретаторов. Изучаем оптимизации. Отдельно про регулярные выражения. Что такое регулярное выражения вы поймёте при изучении иерархии Хомского. Но регулярные выражения – это уже прикладная область, и чтобы их составлять нужно быть знакомым с синтаксисом, обозначениями и.т.п. – учебник по дискретной математике вам этого не даст. Прочитайте книгу О'Рейли про регулярки. С совами на обложке. Практика: написать несколько сложных регулярок, компилятор, интерпретатор. Да, чёрт подери, настоящий оптимизирующий компилятор простого языка.

Стандарты в программировании: всё самое сложное вы уже осилили, осталась сущая малость. Во-первых, стили разработки. Юнит-тесты, UML, рефакторинг, всякие совершенные коды. Уже пора изучать язык, на котором будете работать, и изучать классические труды о его устройстве, стандартных библиотеках и методах. Для прихода к просветлению можно таки выучить модный хачкель. В книжках, которые я рекомендовал есть моря ссылок на другие труды. У вас уже должен быть большой кругозор. Думаю, к этому времени вы уже знаете, что делать.
Это в России. На западе воскресенье — мертвый день. Все закрыто, никаких дел не поделать, можно только лежать на диване. В итоге выходной считай только один — суббота, а воскресенье пропадает в холостую. Жаловался на это местным — не поняли. Недоумевали почему мне не нравится гарантированно лежать на диване по воскресеньям.
Очень познавательно и интересно!
Мне кажется, что вы путаете DevOps и какую-то смесь Project-manager'а, Team-lead'а и эникейщика в одном лице :) Попробую пояснить, как я понимаю, кто такие DevOps, ни разу не претендуя на истину в последней инстанции:

Со времени возникновения IT до его текущего состояния прошел очень большой период:

От голых языков программирования с бедными стандартными библиотеками мы пришли к вееру библиотек, сред исполнения, операционных систем, платформ (включая веб, мобильные платформы, серверы, IoT и другие), виртуализации, распределнным по кластерам вычислениям, кроссплатформенной разработке, частому деплою и т.д… Сложность IT-инфраструктуры, необходимой для разработки и выпуска конечного продукта возросла многократно. Если раньше достаточно было написать игру/приложение под Windows, скомпилировать все это msvc-компилятором, протестировать, записать на диск и спокойно продавать, то сейчас для создания какой-нибудь простенькой Веселой фермы с возможностью играть в нее с телефона и из браузера придется развернуть:

1. Окружение для кроссплаформенной разработки (Android, iOS, браузер), с библиотеками для связи с БД, поддержкой API соц. сетей, графикой, нативными библиотеками на устройства и т.д.
2. Систему CI/CD с автоматической пересборкой, автотестами, какой-нибудь распределенной системой контроля версий, типа git'а, чтобы обеспечить работоспособность продукта как на стадии разработки, так и в продакшне.
3. Функционирование всего этого в облаке (как минимум БД + браузерная версия на каком-нибудь популярном фреймворке).

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

Собственно, DevOps — это человек, который всем этим занимается. Это далеко не просто сисадмин, который может поднять и настроить какой-нибудь удаленный почтовый сервер по ssh, это человек создающий и поддерживающий всю цепочную инфраструктуру от окружения разработчика до автоматического деплоя всего этого на серверы или устройства пользователей.
Человек отличается от прочих животных тем, что умеет мыслить абстрактно (может быть некоторые животные умеют тоже, но человек тут на голову выше), первым скачком был язык, речь — когда появились понятия («камень», «дерево»), которые обозначают некоторые объекты в окружающем мире, но не привязаны к конкретным предметам.
Следующим уровнем абстракции стал счёт (натуральные числа), тут уже зародилась математика. Числа, как и слова, помогают описать окружающий мир, но это уже чистые абстракции, числу 78 не соответствуют никакие предметы в окружающем мире.
Появился счёт — появилось сложнение, тут всё просто.
Но жизнь ставит чаще задачи учёта и распределения чего-то, тут уже появляется вычитание.
И в какой-то момент (а я считаю его самым главным в этой истории) кому-то пришло в голову «если из 3 вычесть 3, то получится тоже число, очень специальное».
Да, числа не имеют прямого соответствия в материальном мире, но у нас есть какие-то материальные ассоциации — три козы, два ребёнка,… Ноль же абстакция ещё более высокого уровня, которая обозначает отсутствие чего-либо!

Но математики и тут не остановились. У них есть одно очень интересное свойство: если им говорят, что что-то сделать нельзя, то они всё равно пытаются это сделать (читай: построить непротиворечивую систему, которая основывается на уже существующей, но в которой это новое действие имеет смысл).
Итак, они сталкивались с задачами вроде «из 3 вычесть 5», придумали для этого абстракцию ещё более высокого уровня — отрицательные числа. Если наличие или отсутствие предметов ещё как-то можно наблюдать, то как наблюдать отрицательное количество чего-либо? Когда-то это был огромный прорыв, а сегодня мы прекрасно управляемся с этими числами, и с помощью них мы описываем [в том числе и] вполне осязаемые вещи в окружающем мире.
Уффф, это тянет на полноценную статью, продолжу более сжато.
Есть сложение — как оптимизация для одного частного случая появилось и умножение.
Появилось умножение — появилось и обратное ему деление. Тут математики тоже столкнулись с вызовом «3 нельзя разделить на 2», и они опять сказали «а давайте представим, что можно, давайте посмотрим, что получится» — так появились дроби, пусть и не столь значительный, но всё равно огромный шаг.
Далее, у нас есть цепочка «сложение->сложение сумм (умножение)», кто-то задумался о её продолжении «умножение произведений», так появилось возведение в натуральную степень. О, опять натуральные числа, другими показатели степени быть не могут. Или могут? А давайте попробуем возвести в нулевую степень? в отрицательную? в дробную? Ба, да дробная степень — это те же корни, которые мы неизбежно изобрели после возведения в степень (научившись делать действие в одну сторону, любопытные математики обязательно пытаются «провернуть фарш назад», научиться делать и обратное ему действие).
И тут возникло новое препятствие — возвести отрицательное число в дробную степень нельзя. Ну вот никак нельзя. Ну совсем.
Но мы уже говорили, что математики — это такие люди, которым нельзя говорить «нельзя», они из-за этого плохо спят и выдумывают новые абстракции.
Логично было начать с (-1)^(1/2), корни второй степени чаще всего нам встречаются, и из отрицательных чисел за опорную точку разумно выбрать -1. Вот это число назвали «мнимой единицей» (i). А если нам нужен корень из -4? Он будет в два раза больше, получается 2i? Вроде неплохо, вот мы и научились умножать мнимые числа на действительные, да и складывать их несложно. А можем ли мы умножить мнимое на мнимое? Хм, получается действительное, любопытно. А сложить мнимое и действительное? Да вроде как всё нормально, получившуюся сумму мы не можем упростить, но можем использовать в различных выражениях. И всегда в результате арифметических действий с такими числами у нас получается число вида x+yi.
Тут и возникла новая абстракция невиданного до этого уровня — давайте назовём эту конструкцию тоже числом, тогда привычные нам действительные числа будут просто частным случаем этих наших новых чисел.
Итак мы умеем комплексные числа складывать, вычитать, умножать, делить. Раз можем умножать — значит мы можем возводить во натуральную степень. А можем ли извлекать корни? Возводить в мнимую или комплексную степень? Разумеется можно, мы же уже говорили, что математики не терпят слова «нельзя».

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

P.S. и, конечно, на этом математики не остановились, были придуманы ещё кватернионы и прочие гиперкомплексные числа
P.P.S. ещё яркий пример творения пытливого ума математиков, которых мучает вопрос «а что, если ...» — неевклидовы геометрии, там всё тоже очень интересно
2

Information

Rating
Does not participate
Registered
Activity