nixp.ru v3.0

21 октября 2017,
суббота,
19:06:11 MSK

DevOps с компанией «Флант»
anonymous написал 16 декабря 2005 года в 20:57 (486 просмотров) Ведет себя неопределенно; открыл 1814 темы в форуме, оставил 5575 комментариев на сайте.

В простом разрезе для науки характерны:

1) Теоретическая база

2) Методы познания (эксперимент, опыт)

3) Возможность применения на практике

Возникает вопрос: является ли программирование наукой? Или это только среда практического применения для ряда наук или, например, метод познания.

Ерунда, конечно. Но что-то мне этот вопрос покоя не дает.

semka

Ну по основным понятиям подходит.

Я бы даже сказал, что проектирование — наука. А непосредственно программирование (набор кода) — это практическое применение.

xant

А математика это наука?

Genie

не совсем понятно «эксперимент» в области «математики»..

а ведь последняя — всё же наука.

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

таким образом, вопрос сам собой отпадает… точнее переходит в другую плоскость.

программирование в этом контексте — это скорее реализация метододов сбора и обработки информации, создание инструментов для работы с информацией.

естественно, что это только на программном уровне, так как есть и аппаратный.

Longobard

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

Uncle Theodore

Братья! Понятия науки не существует в принципе, потому что если брать известное определение «предмет/метод/результат» из диамата, то математика — не наука (предмета нет), а, скажем, православие — очень даже наука, все налицо: душа/молитва/рай.

Позитивистское «концентрированный здравый смысл» тоже понятию определения не отвечает, под нее подходит все на свете.

Далее. Что такое информация? Что такое обработка информации? Подставьте вместо слова «информация» слово «уголь» и почувствуйте разницу.

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

Я ни в чем почти не согласен с Хаббардом, и козел он был еще тот, но одно он подметил правильно:

Реальность — то, что считается реальностью. Продолжая в том же духе, наука — то, что считается наукой, а истина — увы — то, что признано истиной…

Good Luck,

UT

anonymous
xant
А математика это наука?

Безусловно

anonymous
Genie
не совсем понятно «эксперимент» в области «математики»..

а ведь последняя — всё же наука.

Не обязательно эксперимент. Должен быть метод познания, а в математике это мыслительный процесс (гипотеза+доказательство), который приводит к точным выводам. Мои сомнения основаны на том, что в программировании нет четких выводов из методов познания. И самих четких методов познания я не вижу. В спец. литературе не нашел ничего, что удовлетворило бы мой интерес. Вот и ломаю голову.

anonymous
LONGOBARD
Если различать кодинг и программирование — то в общем то это наука. ИМХО наука — это та область, где можно совершенствовать свои знания, открывать что-то новое итд. По этому определению программирование является наукой.

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

anonymous
Uncle Theodore
Посему ваш спор о науке и ненауке схоластичен по своей сути.

Я готов с этим согласиться.

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

Теперь представим себе в образовательном учреждении предмет «Программирование» или, например, «Алгоритмические языки и программирование». Что скажет преподаватель на первом занятии, когда ученик спросит, что такое программирование. Можно, конечно придумать массу подходящих формулировок, но с чего все-таки начать:

«Программирование — это наука, изучающая…»

или

«Программирование — это { процесс, ненаучное знание, … };

decvar
Братья!

жжошь!

Бандерлоги, вы меня слышите?….

По теме:

программирование — это искусство.

anonymous
decvar
По теме:

программирование — это искусство.

Кстати, подходит… Программирование — искусство. Артеакт — создание программы. Артефакт — программа. Все сходится!

myst

OMG! ещё в 69-ом г-н Кнут заметил, что программирование — это искусство. Чего тут спорить-то?! Искусство и есть.

decvar

Кнут шарит! Бандерлоги! Слушайте Кнута! ;)

/me kidding

anonymous

В таком случае вопрос закрыт. Всем спасибо!

Steck

Посмотрел тему и ршил отметися)

Для меня программирование эта искусство!

Сами подумаейте. Сначало моделируете, вынашиваете идею и строите

предположительную структуру

оптимизируете, ну вообщем словами передать трудно

Может я и не нормальный но я когда програмлю получаю кайф :-)

anonymous
Steck
Посмотрел тему и ршил отметися)

Для меня программирование эта искусство!

Сами подумаейте. Сначало моделируете, вынашиваете идею и строите

предположительную структуру

оптимизируете, ну вообщем словами передать трудно

Может я и не нормальный но я когда програмлю получаю кайф :-)

Мы как раз на этом и сошлись.

BAK

Наур написал книгу «Наука программирования», посвященную верификации программ, а Дийкстра написал книгу «Дисциплина программирования» , посвященную аниядоказательному программированию» — составлению алгоритмов и программ с доказательствами правильности.

GooglieS

Внесу свои 5 копеек. Перекладывать алгоритм в код — это не наука. Это задача для ПТУшника. Наука в данном случае — это именно разработка и проектирование алгоритма. Разница примерно такая же, как между написанием диплома (инженерная задача) и написанием дисссертации (научная задача).

sandy
decvar
программирование — это искусство.

Если посмотреть на опенсорсный код — да, искусство.

А когда изучаешь закрытый код проприетарного продукта, — тогда видишь, что программирование — ремесло

Anarchist
GooglieS
Внесу свои 5 копеек. Перекладывать алгоритм в код — это не наука. Это задача для ПТУшника. Наука в данном случае — это именно разработка и проектирование алгоритма.

Упрощаешь.

В действительности связь двусторонняя.

Однозначного и универсального способа формализации не существует.

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

GooglieS
Разница примерно такая же, как между написанием диплома (инженерная задача) и написанием дисссертации (научная задача).

Сразу вспоминается к.т.(!) н., преподватель ВТУЗа, вещавший с кафедры о том, что звук есть род электромагнитных (!!!) волн и зжимающий самую интересную тему: распространения звука в вакууме…

elPoohy
Anarchist
И вообще: действительно качественное решение большинства реальных инженерных задач — суть высокое искусство (в отличие от той же литературы, которая выродилась в набор штампов и замешанное на маркетинге ремесло).

Качественная высокохудожественная литература тоже существует, просто надо обойти полки со вторсырьём типа Минаева и прочих. А вот в программинге 99% просто собирают конструктор лего, а 1% творит, в том числе и новые элементы для лего.

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

Anarchist
elPoohy
Качественная высокохудожественная литература тоже существует,  просто надо обойти полки со вторсырьём типа Минаева и прочих.

Игнорируешь глобальные тенденции типа «экономика говна».

elPoohy
А вот в программинге 99% просто собирают конструктор лего, а 1% творит, в том числе и новые элементы для лего.

Осмысленная компоновка элементов конструктора (даже без создания новых) — вполне себе искусство.

elPoohy
Многие сейчас под понятие программирование способны подогнать тыканье мышкой с последующим написанием 2-3 строчек кода. А это всё-таки скорее чистое зарабатывание денег (ибо такие проекты возможны только под узкоспециализированный заказ), хотя и оно в праве существовать, просто не надо думать, что эти люди обязательно понимают, что они делают.

А это уже вопрос миграции терминологии.

И/или отсутствия чётких и общепризнанных определений.

Хотя, конечно, не столь показательное как для случая «демократии». :)))

elPoohy
Anarchist
Игнорируешь глобальные тенденции типа «экономика говна».

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

Осмысленная компоновка элементов конструктора (даже без создания новых) — вполне себе искусство.

Вот ты сам выделяешь слово «осмысленная», наверное потому, что таковое встречал редко. Кроме того компоновка готовых алгоритмов это одно, а расставленние кнопочек в форме это другое.

Anarchist
elPoohy
Не игнорирую, просто знаю с какой стороны и какие полочки надо обойти.

Для этого есть проверенная методика блокады возможности «неправильной» конкуренции.

elPoohy
С книгами всё намного сложнее то, что уже написано за жизнь не перечитать. И даже если новое выходит только говно, то можно читать старое.

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

+ факт непостоянства оптимального для восприятия спектра (восприятие старой, даже если забить на доступность, усложняется; нового, правильного и облоадающего совместимым спектром не создаётся).

elPoohy
Вот ты сам выделяешь слово «осмысленная», наверное потому, что таковое встречал редко. Кроме того компоновка готовых алгоритмов это одно, а расставленние кнопочек в форме это другое.

Дык компоновка из готовых кубиков того, что нужно тебе (а не задумано разработчиком железа/ПО) тоже является вполне себе искусством.

Чтобы не быть голословным:

Есть офисная АТС Ericsson BusinessPhone 250.

Есть официальная документация.

Есть 16 аналоговых СЛ.

Задача: не обращаясь к шпаргалке запрограммировать станцию так, чтобы каждый из 16 выделенных внутренних абонентов выходил в город через «свою» СЛ.

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

Не осилишь — извини ;)

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

Не возьмусь за эту задачу, как минимум в ближайшее время, ибо есть вещи более насущные с которыми нужно разобраться. Но шпаргалку пока смотреть не стал ;)

Я знаю, что из Лего собирают настоящие шедевры (кстати подобный парк есть в Европе и он служит именно в рекламных целях), но в 99% случаев его используют дети. Я именно об этом и говорю.

Можно в ГУЯх расставить кнопочки и потом набрать 10 строчек текста, и это будет оптимальное решение во всех планах (и по функционалу, и по эргономике, и по ресурсозатратам на производство), но это не значит, что любой кто так делает добивается того-же. Посмотри 90% виндовского софта управление через жопу, и функционал сомнителен. Да и с гуёвыми никсовыми программами тоже самое.

Про литературу:

Дык, я знаю, и про попытки отчуждения авторских прав и про продление их срока действия (в основном успешные попытки :( ), и про то, что нормальной литературы на полках всё меньше и меньше, но тут проще чем с машинами.