math && programming

12 отговора 828 прегледа
#1

math && programming

Zna4i iskam da popitam neshto svurzano s matematikata i programiraneto, mnogo hora kazvat 4e nemoge da si programist bez da razbrirash matematikata, dobre ot vizshata matematika koi temi sa naj prilogimi v programiraneto ? ili puk ot elementarnata matematika. Za vizshata sum 4el statii 4e matricite i za vektorite 4e se izpolzvat v DirectX, OpenGL i dr. No ima li drugi temi koito naistina si zaslugavat da se nau4at ot matematikata ?

Отговор
в отговор на math #2

Re: math && programming

Подобни теми се появяват доста често - защо не погледнеш назад.
Резюме: Дали ще ти трябва математика и каква зависи от това какво искаш (смяташ) да правиш. Ако си мозък можеш да направиш супер неща (в смисъл които се ползват от милиони хора и вероятно носят сносен доход) без математика и с елементарни познания по програмиране - пример ICQ. Ако си падаш по 3д, графика, компресии или каквото и да е друго - чети нещата които се използват там. Ако смяташ да работиш каквото ти дадат - добий обща представа къде какво има (в математиките) и когато нещо ти потрябва ще си го научиш както трябва.

Отговор
в отговор на math #3

...

Такова нещо като абсолютна истина няма!
Няма и 100% зависимост м/у добър програмист и математик.
За 10 години писане на софтуер къде ли не и за кого ли не, никога не са ми притрябвали диференциални уравнения и интегрално смятане.А и повечето математически проблеми в тоя бизнес са отдавна решени - достатъчно е да ги разбираш, а не да ги мислиш наново. А умножението на матрици е толкова сложна математика все пак

Отговор
в отговор на math #4

Re: math && programming

naistina mnogo zavisi ot tova s kakvo se zanimavash...
za 3d grafika ne ti triabvat prosto matrici i vektori, ami kato ciala mnogo dobra predstava ot analitichna geometria i lineina algebra, syshto i chisleni metodi - interpolacii, extrapolacii, splaini i prochie...
za kompresirane i kodirane cheti disktretna, teoria na kodiraneto, waveleti
za image processing ti triabvat razmiti mnozhestva...
za vsichko ostanalo zavisi kakvo tochno pravish...
kakto kaza niakoi drug nai-dobre e da imash obshta ideia kakvo syshtestvuva i kade go ima iz matematikite, che kato ti potriabva da go namerish i prochetesh, a s tova koeto se zanimavash da si napylno naiasno :)

Отговор
в отговор на math #5

Re: math && programming

Пич, за да си добър програмист, трябва да си адски добър, направо бог на висшата математика. Иначе не става.


Отговор
в отговор на math #7

Гледай сега,

колегите го казаха - имаше вече безброй такива теми.

Може да си всякакъв - и математик или напротив - да припадаш само като чуеш "Теорема на ...", но едно нещо запомни!
Като идеш на интервю за работа, само внимавай да не се изпуснеш, че не си "на ти" с математиката! Още по-страшно, ако покажеш, че ти се повръща от нея или изтърсиш, че "тия глупости дето ги учихме никъде не се прилагат". В никакъв случай!

Друг е въпросът колко и в каква степен ще ти трябва математика в конкретната фирма, ако те наемат. И то е ясно - кат опре ножът до кокала и ще преговаряш материала нощно време, но няма да се изложиш. Хайде успех!

Отговор
в отговор на math #8

Re: math && programming

Po moi nabludenia ot fizicite stava dobri programisti :)
Predpolagam che e svarzano s tova che znaiat matematikata dostatachno dobre i imat navika da se tarsi praktichno prilozenie na tova koeto se znae.
Ne stava duma za horata koito zavarshvat vishe fizika, a za tezi koito si padat po fizikata v uchiliste.

Отговор
в отговор на math #9

Re: Най-важното е...

... да можеш да пишеш на български.

Щом можеш да пишеш на български без грешки, значи ще можеш и да програмираш. Аз до това заключение съм стигнал. Всички, дето знаят къде се слагат точките и запетайките, могат да пишат качествен код.

Отговор
в отговор на Duru #10

Re: math && programming

За да напишеш клиента на ICQ, може би може да минеш и без математика. За да сглобиш service center, който да може да понесе 10 милиона клиенти, може да похарчиш милиони напразно, ако си нямаш понятие от теорията на масовото обслужване (ние инженерите по съобщителна техника (дум-дум в гърдите) й викаме телетрафично проектиране). За да въведеш адекватна поддръжка на криптирани съобщения, трябва да прочетеш поне един буквар по криптография, което трудно ще стане ако изпитваш отвращение от математиката.

Оня ден интервюирах един "отличник", който си беше хардкоднал в програмата някакви екранни координати и твърдеше, че програмата му може да работи в различна разделителна способност от 1024х768, защото няма как да разбере къде ще попаднат хардкоднатите координати ако разделителната способност се промени... Типичен случай на "то в програмирането не трябва математика".

Отговор
в отговор на Читaтeл #11

Re: Най-важното е...

"Besides a mathematical inclination, an exceptionally good mastery
of one's native tongue is the most vital asset of a competent programmer. "
-- E. W. Dijkstra

Az ne sym syglasen, che "good mastery" e syshtoto kato "zapetaikite i tochkite".
Towa e drebolia, no ne mislia, che chastta "Besides a mathematical inclination",
e sywsem za prenebregwane, kakto lichi w twoeto izkazwane ;)

Отговор
в отговор на expert #12

Re: Най-важното е...

Запетайките и точките са една много мъничка частица от въпросното good mastery и освен това са много важни.

А mathematical inclination също е извънредно, ама извънредно точно като определение - математически наклонности. Не владеене на еди коя си част от висшата математика, нито знания за не знам какво си, а наклонности.

Някои от идеите на Дийкстра намирам за откровено глупави, но с това му твърдение съм напълно съгласен и смятам, че не може да се даде по-добър отговор на въпроса какъв трябва да е човек, за да бъде добър програмист.

По мои лични наблюдения повечето наистина добри математици изобщо не стават за програмисти.

Редактирано от Labrett на

Отговор
в отговор на expert #13

Човекът го е казал много точно.

Аз и да искам, по-добре не мога да го кажа.


Така, че почвай да учиш математика и българска граматика, ако искаш да станеш добър програмист.

Отговор