Нужно ли учить математику будущему программисту?

15

Этот текст написан в Сообществе, в нем сохранены авторский стиль и орфография

Аватар автора

Артур Анонимов

Страница автора

Здравствуйте!

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

Сейчас налегаю на информатику и математику. Прочитал учебник по информатике за 10-11 классы (углубленный уровень, авторы — Поляков, Ерёмин). Теперь изучаю ВСЮ математику, начиная с 1 класса. Серьёзно, скачал учебники за 1-11 класс времён СССР (5-11 классы — углубленный уровень).

Дальше планирую изучать язык "Паскаль" (книги — "Песни о Паскале" и "Алгоритмы и стр-ры данных" вирта). Дальше — дискретная математика, затем уже язык Java или Go.

Вопрос: как считаете, не сильно ли я разошёлся с таким планом обучения? Так-то вроде всё логично и правильно, но, наверное, это лет 5 учить надо))

  • OladyaНо зачем? реали думала, что школьник спрашивает, а тут по ходу взрослый дяденька10
  • Boris KölnСчитать интегралы в уме от программиста не требуется, даже знать дискриминант не надо. Но планомерное изучение математики и решение различных задач хорошо развивает логику и нейронные связи, что обязательно для любого хорошего специалиста. По поводу плана по обучения 5 лет - у меня есть большие сомнения, что вы это осилите. Когда я учился программированию в школе, у меня не было пятилетнего плана, а просто мне это было реально интересно, я читал эти книги и сразу же пробовал писать программы, читал следующее и сразу применял на практике.2
  • 🅸🅶🅾🆁> Хочу изучать программирование > Изучаю информатику и всю математику Как насчёт изучать программирование всё же? И заполнять пробелы по мере их обнаружения6
  • 🅸🅶🅾🆁И зачем Паскаль? Не, я понимаю, в ВУЗах часто идут таким путём. Но раз уж вы выбрали путь самообучения, не поленитесь найти какой-то более эффективный план. Особенно если собираетесь менять работу. Если вы будете 5 лет идти таким путём по вечерам после работы, на рынке появится ещё несколько тысяч программистов, которые моложе и скорее всего имеют базу серьёзнее вашей. И зачем вы тогда на рынке труда? Если вы за год не научитесь писать код более-менее нормально (и я не про создание приложение с нуля, а просто про возможность решать относительно несложные задачи, не только из учебника, но и реальные, адекватным способом), забудьте о программировании, это не ваше и путь туда заказан. Рассмотрите другие профессии в айти или забудьте в целом про него.5
  • Crazzzy howletВопрс в том, в какую сферу программирования вы пойдете. То есть вот у меня на работе есть программисты, которые разрабатывают приложения, механизмы управления всякими там управляемыми переключателями по всяким там протоколам связи, снятием данных с измерителей и все такое. И есть я, которая для научных статей или прогнозирования результатов использования новых идей/технологий вбивает километровые формулы в нечто типа МатЛаба и оставляет это дело на часок-другой считать при разных условиях и выгружать данные в Эксель, потом строит графики по полученным данным))) Вот для второго обязательно высшее профильное образование, не то что математика, но я по профессии при этом инженер, а не программист. А для первого - ну не так уж и обязательно, если что, многие наши программисты на месте разбираются, подтягивают конкретную тему из школьных/вузовских знаний. И кстати чем больше языков пытаетесь учить, тем больше путаетесь потом в требованиях к орфографии языка. Учите что-то востребованное сразу, и по-моему это не Паскаль должен быть. Зная один язык, на другой перейти не так уж сложно, но тратить время на Паскаль даже я не вижу смысла)))3
  • Андрей Р.Если вы когда-то получили ВО, то ничего изучать специально не надо. Свяжитесь с людьми, которые работают в области разработки, которая импонирует вам и попросите у них простенькое задание / учебный проект. Возможно, вам нужны курсы, проекты от ИТ блогеров и т.п. Главное выполнить практическую работу, знакомясь по ходу дела с языком и математикой, если потребуется. Теоретически изучать какие-то разделы математики и программирования, как вы планируете, малопродуктивно.0
  • rsЯ думал, что такие люди уже кончились, но нет, они будут всегда. 1. Автор даже примерного понимания не имеет о том, что такое IT сегодня, поэтому я не буду тратить время на объяснения, просто скажу сразу факт: в подавляющем большинстве задач никакой математики сегодняшнему разрабу знать не нужно. 2. Автор, судя по всему, перфекционист и робкий человек, который считает, что сначала нужно "подготовиться" к "настоящей" работе. Чистой воды механизмы психологической защиты от синдрома самозванца. 3. Любой 1-2 летний онлайн-курс достаточен для решения подавляющего большинства задач коммерческой разработки, если использовать его, как дорожную карту и много всего гуглить самостоятельно до полного и глубокого понимания. Дальше всё будет зависеть от удачи и умения искать работу. 4. Я не возражаю против того, когда человеку что-то интересно, и он хочет в это углубиться. Если автора манят фолианты, исписанные формулами, и он чувствует внутреннее удовлетворение, водя пальцами по страницам умной книги - то это прекрасно. Только для этого не нужно пытаться себя (или окружение) убедить, что это необходимо для новой работы. Если есть желание учить математику, то ничего не мешает ее учить хоть 10 лет, однако если есть желание сменить работу, то см. п. 3. P.S. сколько бы образований не получал человек, когда он попадёт на свой первый настоящий коммерческий проект, то споткнётся он примерно на первой своей реальной задаче. Он увидит ужасную писанину непонятного кода, в котором будет непонятно ничего вообще. И самое главное для такого новоиспеченного программиста будет умение гуглить, смелость, чтобы не постесняться обратиться к коллегам за помощью и усидчивость, чтобы часами копаться в коде, пытаясь понять, почему них-я не работает. И с вероятностью примерно 0% человеку понадобится умение решать какую-нибудь систему неравенств, которую он будет изучать в середине своего пути повтора школьной математики, на которую он замахнулся.5
  • One not can>как считаете, не сильно ли я разошёлся с таким планом обучения? Так-то вроде всё логично и правильно, но, наверное, это лет 5 учить надо)) Вы сами себе и ответили - все просто и правильно, но нужно 5 лет) Многие во взрослом возрасте не готовы столько идти к цели, поэтому пропускают некоторые этапы, например математику из начальных классов и паскаль. >Нужно ли учить математику будущему программисту? Зависит от того, в какое направление попадете. А то, в какое направление попадете, зависит от уровня знания математики, выбора языков программирования, состояния рынка и везения. Пошерудите hh на предмет вакансий, к которым стремитесь, чтобы примерно понимать, какие скиллы вам нужны. Там обычно честно пишут, какого уровня нужна мат.подготовка, если нужна.1
  • АркадийЗнание математики нужно, если план работать с искусственным интеллектом. Там, собственно, весь ИИ сплошная математика — законы и формулы.. Но там университетский курс математики. Школьного уровня не достаточно. И вообще, в ИТ платят не за знание нескольких ЯП, а за разработку! Изучить "программирование" — даже не полдела. Намного эффективнее будет изучить синтаксис ЯП (ту же Джаву), изучить принципы ООП, и садиться писать миллион-первый петшоп-проект, попутно изучая технологии, инструментарий и фрэймворки. Через год упорной работы по 6 часов в день сесть переписывать проект, и изучать вопросы собеседований на джуна. Ещё через полгода уже будет что показать в своём гитхабе, и на большинство вопросов сможешь ответить — можно пробовать куда-то устраиваться на полтинник в месяц.. Уясните главное! Всё это бесконечное "саморазвитие", которое всем нам за деньги втюхивают как невероятную пользу и способ быть лучше других, на самом деле эксплуатируют не самые лучшие качества — страх новизны, боязнь ошибиться, перфекционизм, инстинкт доминирования. Суть, форма прокрастинации. С бесконечным откладыванием получения реального результата. Хотя, результат, пусть небольшой, но ощутимый, важнее бесконечного процесса3
  • ЯрославЛогично и правильно, а потом за 60к джуном)) Нужно учить фреймворки + решать бизнес задачи0
  • Евгений Доброхваловrs, хехе была как то на проекте задачка, сделать виджет с картой (с зум/пан контролами) на которой по массиву из 5млн 3д точек (данные 3д поверхности) надо рисовать карту высот и изолинии с заданным шагом + проекции других карт высот и геометрию разломов. Ох, насмотрелся я тогда на ребят которые не знали как вообще такие проблемы решать, а отдельные индивиды сказали что если либ и готовых виджетов нету, то задачу не решить, не самим же математику изолиний и проекций разломов реализовывать. :D В конечном счёте, на формо/крудо шлёпстве и перекладывании jsonов специалистом стать невозможно. А для того чтобы быть специалистом умеющим решать задачи любой сложности, придётся изучить очень многое - и математика лишь один из основных столпов1
  • rsЕвгений, благодарю за мнение, только я не делил мир разработки на чёрное и белое. Я в своём комментарии дважды использовал выражение для "подавляющего большинства" задач, т.к. речь идет именно о подавляющем большинстве задач, а не о всех задачах. Я полностью согласен с вами, что на проектах могут встречаться редкие уникальные задачи, которые могут потребовать глубоких знаний, в т.ч. и математических, однако, я думаю, вы согласитесь, что это не есть стандарт индустрии. Я ни в коем случае не агитирую за профессиональное невежество и за отказ от фундаментального образования, я даю свою оценку исходя из того пути к цели, который считаю оптимальным. Если молодой человек заканчивает школу, поступает в технический вуз, без стресса и спешки в подходящем окружении набирается знаний, а далее идет строить карьеру, наращивая свой профессионализм - это одно дело. Но если мы имеем дело с молодым мужчиной, который испытав кризис четверти жизни решил сменить профессию (я не говорю стать профи, я говорю именно сменить профессию), то для данной задачи ему никакая математика не нужна для устройства но 90% вакансий. Всё, что сейчас требуется на большинстве задач в мейнстриме - это логистика данных между клиентом и базой данных. Я не хочу сейчас вдаваться в вопросы реализации высоконагруженных систем, в ML, AI, gamedev и много чего еще, где может потребоваться математика. Я говорю именно о входе в профессию без математики, а так же о том, что есть очень высокая вероятность попасть на такой проект, на котором никогда не возникнет необходимость использовать хоть какую-то математику, отличную от арифметики. И дополнительно хочу прокомментировать ваш тезис, что "на формо/крудо шлёпстве и перекладывании jsonов специалистом стать невозможно". Согласен, невозможно. Но стать специалистом != сделать карьеру. Я работаю в одной очень большой и очень известной технологической компании. Так вот я знаю людей у нас с зп 350+ (без учета премий, которые достигают 3-5 окладов), которые разработчиками стали после филологического факультета, которые даже не дадут определение логарифма, но при этом сделали карьеру и руководят разработкой. И в той же самой организации я вижу людей, которые после мехмата рисуют, прости господи, квадратики и стрелочки, показывая куда и какой должен прийти JSON'чик. Поэтому моё мнение таково. Можно ли без математики решать сложные инженерные задачи разработки ПО, которые завязаны на математике? Нет, нельзя. Можно ли без математики попасть в айтишечку и рубить там бабло? Да, можно.0
  • EndarionБазу выучить надо в любом случае. А прям углубляться... Если не пойдете в гейм дев или какие нибудь мат программы делать - то оно вам и не надо. За 16лет опыта особо всякие алгебры и геометрии и высшие математики не пригодились 🤷0
  • Михаил КазаковПростите, но я так увидел: *Я хочу водить машину, поэтому пойду почитаю Устройство автомобиля, Правила дорожного движения. Затем перейду к изучению контраварийного вождения. Думаю после этого можно садится за руль" Вам бы изучить сферы в которых вам хотя бы покажется что будет комфортно работать а затем изучать именно нужный путь. Поищите, к примеру, роадмап веб разработчика. Тогда поймёте что изучать. Самое главное не учите Паскаль, ну некой он вам. Берите Питона или сразу Яву. Запаситесь парочкой ИИ. Решайте практические задачи, тупо калькулятор сделайте или ТГ бота.0
  • wimkrsk"Математика уже затем нужна, что она ум в порядок приводит!". Верно действуете.0