Pull to refresh

Comments 30

Вообще то говоря, программист это очень абстрактное понятие, так же как, например, инженер. Инженеры есть разные, от инженеров человеческих душ до… В зависимости от поставленной задачи и инженеры нужны разные. Также и с программистами. И для этого не надо (если не хочется) "скакать на лошади" и т.д. Но вот что должен знать прекрасно программист, так это логику, исчисление предикатов и иже с ними.
Теперь ваш постулат:


если, скажем, в античные времена программирование уже существовало бы

Без всякого если, программирование существовало всегда с момента появления "homo sapiens" (человека разумноо). Почитайте великолепную книгу "От абака до компьютера", многого интересного откроете для себя.

Без всякого если, программирование существовало всегда с момента появления «homo sapiens» (человека разумного).
Код одной из первых программ:)
Заголовок спойлера
"

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

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

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

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

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


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

UFO landed and left these words here

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

UFO landed and left these words here

Я думаю для программиста не зазорно быть знакомым с трудами Никола́ Бурбаки́.

UFO landed and left these words here

Согласен, тем более работа работе рознь, то бишь программирование

UFO landed and left these words here
Хотя я и не на хаскеле всякие околоматанные вещи пишу

И на чем пишется машинное обучение?

UFO landed and left these words here

Машинное обучение писать на C++? Чему же машинный человек обучает? На скриптах быстрей и эффективней писать.
Проблема производительности и памяти — давно не слыхал. Есть проблема денег, это другое дело.

UFO landed and left these words here
Если же вы сами реализуете какой-то алгоритм с нуля (например, потому, что его до вас ещё никто не сделал), то на скриптах далеко не быстрей и не эффективнее.

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

UFO landed and left these words here
какой-нибудь парсер или компилятор я на них писать не буду

Вот и пришли к консенсусу.

UFO landed and left these words here

А для меня из скриптов так луше tcl, а для обучения еще и плюс tk, да еше классно интегрируется с C/C++ нетУ.

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


Конечно можно!
— Разработка систем моделирования и проектирования в машиностроении.
— Программирование всяких спутников и ракет.
— Занятия всевозможными системами распознавания изображения и звука. Обработки мультимедийной информации.
— Тонны всяческих разработок для естественных наук.
— Хранение и обработка данных в хайлоаде.
Тонна всего еще!

И это все, с чем сталкивается каждый разработчик ежедневно!

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

P.S. Не примите в укор — это сообщение я писал в поддержку вашей мысли, но решил ответить именно вам :)
UFO landed and left these words here
Ваш коммент напомнил мне CRM в одной банковской организации, которую «пионеры» пытались делать на основе MongoDB…
Ммм за более чем 10 лет работы ни разу не потребовалось исчисление предикатов. ЧЯДНТ?

Вам повезло. Столяру с 40-летним стажем тоже они не потребовались ни разу.

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

Для большинства задач большинства программистов достаточно знать самые начала арифметики и алгебры (столбиком уметь умножать необязательно) и азы булевой алгебры. И то, и другое совсем не нужно знать на академическом уровне, достаточного «бытового» понимания. Гораздо важнее высшей математики знание практической компьютерной «арифметики»: представление числовых данных в двоичном виде, особенности и ограничения различных типов представлений, понимания какие операции выполняются (с точки зрения здравого смысла) процессором непосредственно, а какие будут вызывать подпрограммы вычислений точных или приближенных, почему не следует по умолчанию для точных значений типа денежных сумм использовать типы с плавающей точкой, что такое переполнение и потеря значимых разрядов, и т.д., и т.п.
Sign up to leave a comment.

Articles