LINUX.ORG.RU
ФорумTalks

доколе!


11

1

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

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

А самое интересное то, что из этого линала нужно от силы две главы. Как и из матана. Про дискретку то же самое. Вместо изучения основных простейших алгоритмов начинается траханье мозгов дизъюнктивными формами и прочим. И в результате снова фэйл.

А причина проста - все эти советчики сами из всего линала только и знают эти самые две главы, и это в лучшем случае! А в основном у них представление об этом «слышал звон, да не знаю где он». На этом их представление что о линале, что о матане или дискретке заканчивается.

Но, млеа, надо же ощутить себя крутым программистом!

Выдохнул.

★★☆☆☆

Последнее исправление: dikiy (всего исправлений: 2)
Ответ на: комментарий от Harald

Программист на чём программирует? На компьютере. Значит он должен знать, как он работает. Для этого он должен учить электронику, для электроники нужно знание матана, комплексных чисел, дифуров и прочих преобразований Фурье и Лапласа :)

Кассир на чём работает? На кассе. Значит он должен знать, как она работает. Для этого он должен учить электронику, для электроники нужно знание матана, комплексных чисел, дифуров и прочих преобразований Фурье и Лапласа :)

Не ну правда, слишком низко ты зашел. Ты бы еще сказал, что программист должен знать химию, что бы понимать процесс работы транзистора.
Уровня триггеров вполне достаточно. И это такому харкорщику-хардварщику. Высокоуровневому программисту, уже достаточен уровень структурного строения ЭВМ,памяти, микропроцессора.

comp00 ★★★★
()
Последнее исправление: comp00 (всего исправлений: 1)

В результате он думает, что он тупой и никогда не станет настоящим программистом.

ИЧСХ, он как правило оказывается прав.

Miguel ★★★★★
()
Ответ на: комментарий от Daeloce

Могу тоже назвать пару компаний, куда даже сеньор c++ программер с дипломом магистра и 8 лет стажем просто так не попадет. И это не интел и не гугле. Tekla, Rovio, к примеру. Ты даже таких не знаешь, и никто не знает.

unt1tled ★★★★
()
Ответ на: комментарий от comp00

Ты это расскажешь пользователю, который использует компьютер для работы, а не для ковыряния во внутренностях? Ты починить сломавшийся поезд в метро смогёшь? А что так, ламер, да? Только и умеем, что скакать по эскалатору да сидеть в вагонах? --anonymous(linux.org.ru)

бугага, не удержался

unt1tled ★★★★
()
Ответ на: комментарий от unt1tled

Профессионал напишет качественнее и быстрее

Качественнее да, быстрее нет. В этом и проблема. 10 индусов напишут код быстрее и дешевле чем один специалист. Качество будет ниже, но это мало кому интересно, лишь бы работало, пусть и кое-как.

В _нормальном_ мире все не так.

Еще раз, Motorola, Samsung, Ericsson это как раз _нормальный_ мир(в том смысле что к России не имеет отношения). Более того это нормально(ну не совсем конечно), но в целом нет смысла сажать на написания очередного клиента фейсбука для андроида высококлассного специалиста, который знает теорию алгоритмов, матан, конечные автоматы и прочее, что так не нравиться ТС. Это будет дорого, и при этом глупо, потому что данному специалисту будет скучно писать эти приложения для мобилок, он не для этого учил все эти матаны. Но с другой стороны кто-то же должен писать все это, причем в гораздо больших объемах чем высоконаучный софт. Тут проблема в основном в том, что надо разделять эти две профессии, а именно программирование сайтиков с одной стороны и разработку серьезного софта с другой. А сейчас и тот и тот называются программистом. От чего и возникает непонимание, и глупые вопросы, мол а зачем программисту матан, если он очередной бложик на php писать собирается?

Daeloce
()
Ответ на: комментарий от comp00

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

Ты бы еще сказал, что программист должен знать химию, что бы понимать процесс работы транзистора.

Уровня триггеров вполне достаточно. И это такому харкорщику-хардварщику. Высокоуровневому программисту, уже достаточен уровень структурного строения ЭВМ,памяти, микропроцессора.

ну как сказать, один семестр химии у меня таки был :)

Harald ★★★★★
()
Ответ на: комментарий от unt1tled

Могу тоже назвать пару компаний, куда даже сеньор c++ программер с дипломом магистра и 8 лет стажем просто так не попадет.

Еще раз. Я не отрицаю таких мест. Более того, я сам работаю пусть и в небольшой конторе, но здесь без знания матана и прочих «ненужностей» из верхнего поста никуда. Я лишь говорю, что МНОГИМ действительно не нужны вышка чтобы работать теми программистами, которыми они работают. И я абсолютно согласен, что они не имеют ничего общего с теми людьми кто работает в тех конторах, что ты упомянул. Единственное что у них общего это название профессии - программист. Отсюда и все непонимания.

Daeloce
()
Ответ на: комментарий от unt1tled

А ну-ка кастани мне хоть одного человека, который собирая мк, не использовал готовые модули. Причем, не в бородатые 80-90 когда нехрена не было, и правда проще было спаять на транзисторах, а позже, когда были и триггеры, и регистры и все в свободном доступе. А че, ламеры что ли?

comp00 ★★★★
()
Ответ на: комментарий от Harald

ну как сказать, один семестр химии у меня таки был :)

у меня тоже, закрыл на «отл», ни разу ничего ни уча, не открывая методички, не пиша конспекты, и это с уровнем очень натянутой 3-ки в школе. Поставили автоматом (за вовремя сданные лабы). Да, такой уровень может и нужен, только вот он эквивалентен никакому.

comp00 ★★★★
()
Ответ на: комментарий от Erfinder

нет, ты не понимаешь, что знать «всё» — значит на самом деле не знать ничего, одни общие слова. На таком уровне математика конечно полезна любому человеку, но точно также может быть полезна и биология, и, не дай бог, литература и вообще всё, что расширяет кругозор и учит мыслить.

Но это совсем не значит, что для повышения профессионального уровня разработчика стоит рекомендовать ему прорешать весь задачник Демидовича.

alpha ★★★★★
()
Ответ на: комментарий от alpha

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

Erfinder
()
Ответ на: комментарий от comp00

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

Harald ★★★★★
()
Ответ на: комментарий от Erfinder

одним не нужно знать математику вообще

Так, допустим, пхпешерам и 1сникам математика не нужна. Осталось определить их принадлежность к программистам, и тогда ты будешь прав.

олимпиадники, им нужно знать больше(или всё).

а это что за фрукты? Не прыщавые ли это школьники, которые ездят на какие-то областные олимпиады, прогуют там на паскале упоротые задачки про роботов, а потом хорошенько вса...ют в универе, потому что все их понятие о программировании рушатся?

comp00 ★★★★
()
Последнее исправление: comp00 (всего исправлений: 1)

программисту нужна линейная алгебра, дискретка, матан и т.п.

Естественно, нужна. Если он этого не знает, он — не программист, а обычный быдлокодер. По-русски — говно.

В результате он думает, что он тупой и никогда не станет настоящим программистом.

Если думает, то это хорошо — это тело хотя бы способно осознавать свою ущербность.

А самое интересное то, что из этого линала нужно от силы две главы. Как и из матана. Про дискретку то же самое.

А чтобы понять, что в этих главах написано, нужно еще пару-тройку книжек прочитать.

А причина проста - все эти советчики сами из всего линала только и знают эти самые две главы, и это в лучшем случае!

Они осилили. А ты — нет. Фу!

Eddy_Em ☆☆☆☆☆
()
Ответ на: комментарий от Erfinder

Это ты разработчиков приложений ты к олимпиадникам отнёс?

alpha ★★★★★
()
Ответ на: комментарий от comp00

Ты бы еще сказал, что программист должен знать химию, что бы понимать процесс работы транзистора

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

fang
()
Ответ на: комментарий от fang

как двигаются электроны изучает физика, почему - химия. Но вообще, man FET, которые используются я в этих ваших ЭВМ

comp00 ★★★★
()

Ага, а потом кто-то таких топикстартеров наслушается и начинат считать расстояние как D = | x1-x2 | + | y1-y2 | (реальный случай в моей практике). Или когда 5-6 человек сидят и неделю ждут, пока я приду и напишу им функцию нахождения пересечения отрезка с осью X. Я уже молчу про такие страшные и ужасные вещи, как проведение параболы через три точки или метод наименьших квадратов. Это для большинства вообще непостижимая магия.

KRoN73 ★★★★★
()
Ответ на: комментарий от comp00

Ты бы еще сказал, что программист должен знать химию, что бы понимать процесс работы транзистора.

Уровня триггеров вполне достаточно.

Уровень триггеров нужно знать проектировщику микрокода и желательно — программисту на ассемблере. Уже программисту на Си это практически не нужно и совершенно не нужно программисту на Питоне.

Думаю, что желательно знать и понимать процессы, происходящие на условных два уровня ниже того, на котором ты работаешь. Остальное — для общего образования и ЧСВ :)

Но вот математику в общем случае нужно знать любому программисту, который работает ниже уровня лепления кнопочек на интерфейсе.

KRoN73 ★★★★★
()
Ответ на: комментарий от comp00

как двигаются электроны изучает физика, почему - химия.

Только не химия, и физхимия.

KRoN73 ★★★★★
()
Ответ на: комментарий от KRoN73

Уровень триггеров нужно знать проектировщику микрокода и желательно — программисту на ассемблере.


И это такому харкорщику-хардварщику


Уже программисту на Си это практически не нужно и совершенно не нужно программисту на Питоне.


Высокоуровневому программисту, уже достаточен уровень структурного строения ЭВМ,памяти, микропроцессора.

Или программисту на си не надо знать как хранятся его массивы в памяти?

comp00 ★★★★
()
Ответ на: комментарий от PolarFox
D = | x1-x2 | + | y1-y2 |

В ВУЗовском учебнике такая формула есть и рядом с ней написано слово «расстояние».

Я под столом!

Eddy_Em ☆☆☆☆☆
()
Ответ на: комментарий от comp00

почему - химия

И почему — тоже не изучает. Движение заряженных частиц вследствие градиента концентрации, к химии так же не относится, не говоря уже о движении под воздействием электрического поля.

fang
()
Ответ на: комментарий от comp00

Или программисту на си не надо знать как хранятся его массивы в памяти?

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

То есть высокоуровневый программист на Си должен прекрасно представлять происходящее на уровне ассемблера и желательно — понимать уровень работы микрокодов.

Низкоуровнневому Си-программисту также полезно знать основы цифровой схемотехники.

KRoN73 ★★★★★
()
Ответ на: комментарий от comp00

По ВУЗовскому учебнику (не помню точно какому, потому что троечник) расстояние это функция двух объектов, такая, что d(x, x) = 0, d(x, y) = d(y, x) и d(x, z) ≤ d(x, y) + d(y, z).

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

PolarFox ★★★★★
()
Ответ на: комментарий от comp00

Я всегда говорил что химия не нужна в общем случае.

Ты не оригинален. «Науки делятся на две группы – на физику и собирание марок»

KRoN73 ★★★★★
()
Ответ на: комментарий от KRoN73

который работает ниже уровня лепления кнопочек на интерфейсе

кнопочки на интерфейсе - это же геометрия на плоскости :)

Harald ★★★★★
()
Ответ на: комментарий от Eddy_Em

Это обычная метрика, порождённая L_1 нормой, что известно любому человеку, хоть на каком-то минимальном уровне знающему функциональный анализ. Что необходимо для численных методов.

Но не Эдуардам.

aedeph_ ★★
()
Последнее исправление: aedeph_ (всего исправлений: 1)
Ответ на: комментарий от Harald

кнопочки на интерфейсе - это же геометрия на плоскости :)

Кстати, да, смех смехом, но иногда пропорции всякие при разработке Web-интерфейса считать приходится :)

KRoN73 ★★★★★
()
Ответ на: комментарий от comp00

При всем моем уважении к Резерфорду, в д.с. он - заинтересованное лицо.

А я, вот, вообще физхимик :)

KRoN73 ★★★★★
()
Ответ на: комментарий от aedeph_

Итить-колотить! Ты в словах Крона где-нибудь видел, что расстояние у него — для L_1-нормы? У него студенты обычное расстояние между точками в двумерном декартовом пространстве так считали! Умник, итить-колотить!

И таки дай мне ссылочку, где в L_1 так считают расстояние! Откуда там вообще компоненты x и y?

Eddy_Em ☆☆☆☆☆
()
Ответ на: комментарий от Eddy_Em

Ткни меня носом в эту формулу!

В линейном пространстве обобщением понятия длины свободного вектора является норма

В линейном арифметическом пространстве R^n нормой является функция ||·||₁ вида ||x||₁ = |x₁| + |x₂| + … + |x_n|, x = (x₁, ..., x_n)

Капатников, Крищенко, Линейная Алгебра, стр 86.

PolarFox ★★★★★
()
Ответ на: комментарий от Eddy_Em

А при том. Каково расстояние между клетками (0, 0) и (10, 10) в стратегии с квадратными тайлами? Если можно ходить по диагонали, то 10, если нельзя, то 20.

PolarFox ★★★★★
()
Ответ на: комментарий от Eddy_Em

Ты даун? Эта функция от двух переменных удовлетворяет аксиомам расстояния, значит она является расстоянием для какого-то метрического пространства.

ссылочку

en.wikipedia.org/wiki/Lp_space

Просвещайся, убогий.

aedeph_ ★★
()
Ответ на: комментарий от PolarFox

Каково расстояние между клетками (0, 0) и (10, 10) в стратегии с квадратными тайлами?

А ты расстояние "конем" считаешь? Какая, нафиг, разница, что у тебя там за тайлы. Ну, округли до 14, если хочется.

Если можно ходить по диагонали, то 10, если нельзя, то 20.

Т.е. то, что диагональ "тайла" в [latex]\sqrt 2[/latex] раз длиннее его стороны, тебя не смущает?

Eddy_Em ☆☆☆☆☆
()
Ответ на: комментарий от Eddy_Em

У тебя с абстрактным мышлением туговато. Если расстояние мерить линейкой по экрану, то да, будет кровь-кишки-корни из двух. Но в игровой логике расстоянием будет либо сумма модулей или вообще max(x1 - x2, y1 - y2).

PolarFox ★★★★★
()

А мне вот матан пригодился, когда пришлось лазть в обработку сигналов. Как раз на уровне 1-2 курса. Линейная алгебра как-то раз пригодилась в том плане, что я хотя бы знал что примерно делать когда матрицы считать надо, хоть и без наворотов, что-то простенькое было. Матстат в связке с дискреткой для моделирования использовался.

А кодеру матан и прочее нахрен не нужно, ему надо ХЭТЭМЭЭЛ, ЖАВОСКРИПТ, ПОХАПЭ НА ДЕНВЕР скачать бесплатно без смс.

Dark_SavanT ★★★★★
()
Ответ на: комментарий от Eddy_Em

Никаких противоречий, чистая математика.

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

aedeph_ ★★
()

Ты даун? Эта функция от двух переменных удовлетворяет аксиомам расстояния, значит она является расстоянием для какого-то метрического пространства.

Как бы очевидно, что по дефолту и без указания контекста подразумевается обычное декартово пространство. Никаких городских метрик и прочего. Так что на счёт уровня интеллекта — тут ещё вопрос, да :)

Кстати, я там ошибку сделал. Реальная формула даже круче была:
D = | x1-x2 + y1-y2 |.

В каком пространстве такая работать будет? :)

Надо бы поднять старый репзиторий, вытащить на обозрение это чудо. Можно ещё и спор с автором в чате найти, где он бил себя пяткой в грудь, утверждая, что «так считать быстрее» и «оно же в параллельном проекте как-то работает!».

KRoN73 ★★★★★
()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.