×Закрыть

Программирование без математики

Здравствуйте, уважаемое, сообщество.

Хочу задать вам таков вопрос, возможно ли программирование без знаний математики? Возможно ли стать более-менее успешным программистом и получать фан от работы (то есть не чувствовать себя имбицилилом) ?

Пишу здесь в последнюю очередь, после месячных скитаний в поисках истины. Очень надеюсь получить от вас адекватную оценку и разумный совет, т.к. от этого зависит моя дальнейшая жизнь. Программирование всегда со стороны привлекало меня, ведь я всегда был связан с компьютерами, но всю жизнь я сторонился этого, т.к. считал что необходимы хорошие знания математики, поэтому я всегда этого сторонился.
Но примерно год назад что-то зародило во мне желание все таки к программированию, сначала это просто была мысль, кроме которой я ничего не делал. После посещения IT Jam 2012 желание усилилось в несколько раз. Также остальные мероприятия подогревали мой интерес. В результате я достиг того уровня, когда покинул компанию, где развился с помощника системного администратора до руководителя IT-отдела, только, что бы прислушаться к себе и понять чем я хочу заниматься. Но плотный психологический барьер, который был всю жизнь, не позволяет мне просто сесть и начать изучать код, т.к. есть страх после потраченого года оставаться все также в аутсайдерах.

Эта тема не раз поднималась на форуме, но каждый раз обсуждался разный уровень математики, поэтому хочу описать конкретно мою ситуацию.
Уровень моих математических способностей закончился в 5 классе. Я пропустил почти весь год 5-го класса, по своей же малолетней дурости, просто прогуливая уроки. В результате к жизни я вернулся в 6 классе, но из-за пропущенного раздела, я уже не понимал математику, все время сколько я учился в школе, у меня был репетитор по математике, но как только он участвовал, я сражу же переставал понимать материал.
В 9-м классе настало время поступать, как сейчас модно это называть, колледж. По уровню образования ничем не уступает институту, т.к. после колледжа прошел обучение в институте. Прошел подготовительные курсы, не поступил. Далее были опять репетиторы по математике и поступить у меня удалось только с 3-го раза, сдав экзамен математике на «тройку».
Далее было обучение где как обычно, я не «вьежал» в материал. Бесконечные просиживания на пересдачах, еле еле закрывая двойки. В результате последний долг был закрыт за пирожки. Следующий преподаватель где я получал «тройку» лишь бы не мешал проводить урок.
В общем математика для меня всегда оставалась больной темой. При этом, по физике я очень даже преуспевал, однажды даже растроив преподавателя, что за экзамен пришлось поставить 4-ку, т.к. я не серьезно подготовился. Также была дискретная математика, с которой проблем не было, хотя что я там изучал не помню вообще, в дипломе стоит 4-ка. Первые два курса учился постоянно на грани вылета, но с 3-го курса начал учиться на стипендию. Пишу к тому, что не считаю себя глупым человеком, чего кстати не считает не один человек, который меня знает, скорее все считают наоборот.

И так наше время. Мне 24 года. Начал изучать Java по книге Г. Шильдта «Java. Руководство для начинающих», книга которая расчитана, на то что вы до этого не были знакомы с языками программирования, легко читается и усваивается, задачки вполне решаемы (насколько я это могу субьективно сидеть, правда на решение задачи поиска простых числе заняло пару дней), По совету Bionic Univercity забросил и достал книгу Ставровского «Турбо Паскаль 7.0». Книга оказалась для меня очень сложной и не интерестно. Поэтому поискал другого автора, и начал читать Лукина «Турбо-Паскаль 7.0. Самоучитель.» Книга намного легче читалась чем Ставровский, но неактуальность языка меня угнетала, а также невозможность выполнить всех примеров на fpc. В общем, отдалившись от цели у меня утих пыл. Я начал искать другие способы входа и начал иузчать JS по сайту learn.javascript.ru (сейчас я нахожусь в этой точке) Но изучение одновременно HTML5, CSS, JS, C# (Что необходимо для Bionic) меня теряют, т.к. не пойму как их одновременно читать. Ну и конечно же опять же бесконечные терзания, а способен ли я программировать, мешают мне целеустремленному изучению. Как языки мне нравятся Java, Python и Web.
Склоняюсь все таки к возврату на Java, т.к. ООП намного легче понимается, а также за счет высокого спроса на этот язык большая вероятность попробовать в будущем себя в деле, а потом при желании и уверенности перейти на другой язык.

Я понял, что мне нужна уверенность в своих способностях, но как это проверить на начальных уровнях. В Luxoft иногда проводят наборы на стажировку Java почти с полного нуля, они делают тестирование на логику + собеседуют. Насколько обьективный такой тест я не знаю, но к сожалению мне не удается попасть хотя бы на такое тестирование, т.к. нет набора. В программирование я устремлен, не из-за денег, а из-за поиска творческой реализации (возможность что-то создавать), т.к. в администрировании этого практически нет. Т.к. есть множество идей, но чувствую себя глухим скрипачем.

Не один раз говорилось, что сильные знания высшей математики не нужны, что достаточно знаний первого курса, но что если даже этих знаний нет.
В основе любого языка составление алгоритмов, верно? Как проверить способность составлять алгоритмы. Было неоднократно сказано, что порешав Кнута, можно забыть, что у тебя были проблемы с математикой. Но тут у меня опять полнейший провал. Я прочитал первые 30 страниц. Дошел до самых первых примеров. Мало того, что я не смог решить ни одной его задачки, так я еще и не понял ни одного его объяснения как работает алгоритм. Любую информацию я визуализирую для понимания, даже к примеру я визуально представляю три основных потока в Linux, но здесь когда я читаю формы, я не вижу картин, а только белые пятна, я читаю текст, но пропускаю формулы и значения. Да у меня визуальная память и если это также влияет, то я левша. Возможно есть учебники с упором на визуальное обучение математики, возможно есть какой-то другой подход.
Но даже после таких «фейлов» есть люди, которые продолжают давать надежду, приведу цитату таких слов:

Не стоит зацикливаться на Кнуте, особенно начинающим, в программировании есть много областей, где мало математики, больше дизайна, или программы для создания игр без программирования или с минимальными знаниями. К сожалению, это не моя область, я специализируюсь на Oracle и C++ . Темка, что выбрать для изучения человеку, который не сильно силен в алгоритмах и математике — как раз для форума.

Вот и все.. Спасибо тем людям, которые дочитают этот пост до конца :) Невольно много текста получилось, видимо накипело. Очень нуждаюсь в адекватной оценке, а не просто советы забить, т.к. отказаться от этого, все таки будет тяжело.

LinkedIn

Лучшие комментарии пропустить

Для того, чтобы стать украинским девелопером математика не нужна вообще. Алгоритмы Кнута тоже не нужны. И уж точно не нужен учебник по паскалю.
Нужен IQ выше среднего, желание учиться и упорство.
Посмотри coursera.org, там весьма доступно подают материал (и с визуализацией там как раз все очень хорошо). Правда, там все на английском. Но если нет английского, забудь о программировании раз и навсегда.

В программирование я устремлен, не из-за денег, а из-за поиска творческой реализации (возможность что-то создавать), т.к. в администрировании этого практически нет. Т.к. есть множество идей, но чувствую себя глухим скрипачем.
Если есть множество идей в администрировании, почему потихоньку не тренироваться писать какие-нибудь скрипты на shell/powershell. Да, нет таких вакансий (shell программист), но руку набить можно. Один знакомый сисадмин вырос в программиста-фриленсера играясь на работе с питоном.
Я понял, что мне нужна уверенность в своих способностях, но как это проверить на начальных уровнях
Напиши что-нибудь работающее.
Не один раз говорилось, что сильные знания высшей математики не нужны, что достаточно знаний первого курса, но что если даже этих знаний нет.
Это простой снобизм. Забей. 90% программистов из математики используют только часть школьного курса (арифметика; тригонометрия, логарифмы, начала анализа, даже квадратное уравнение обычно не нужны), основы теории множеств и матлогики (в объеме 2-3-х вводных лекций для первокурсника). Ну и плюс неплохо бы понимать что такое O(1), O(n) — просто это часто спрашивают на собеседованиям, даже те, кто сами плавают в теме.
В основе любого языка составление алгоритмов, верно?
Ну, если обратиться к математическим основам программирования... На деле, задача людей так или иначе причастных к разработке ПО, включая программистов, — переводить хотелки заказчиков в язык понятный компьютеру. Здесь есть разные уровни, отличающиеся близостью к заказчику или железу, но, как правило, большинство работает ближе к заказчику и все что от них требуется, знать что когда тому захотелось тыцнуть — это называется button и знать как ее вставлять.
но здесь когда я читаю формы, я не вижу картин, а только белые пятна, я читаю текст, но пропускаю формулы и значения
Это с непривычки. Если будете продолжать и подтягивать где-нибудь вне Кнута то, что не понимаете в нем, со временем втянитесь. Но оно вам надо?

Резюмируя.
Математика нужна вам в очень ограниченом объеме. Арифметика, двоичные/шестнадцатеричные числа (перевод туда сюда), основы матлогики и теории множеств. Вот и все, на первое время достаточно. Будете работать, увидите что чего-то не хватает — подтянете по ходу.
Программируйте, набивайте руку. Читайте что спрашивают на собеседованиях и примеряйте к себе.

Допустимые теги: blockquote, a, pre, code, ul, ol, li, b, i, del.
Ctrl + Enter
Допустимые теги: blockquote, a, pre, code, ul, ol, li, b, i, del.
Ctrl + Enter

Почти все мы знаем математику на бытовом уровне. Сдачу отсчитать. Процент. Поделить сумму на несколько человек. Думаю что этих знаний более чем достаточно чтобы прожить бурную жизнь в разработке. Другое дело что вам будут непонятны некоторые части сравнения асимтотической сложности алгоритмов. Ну... будете просто верить что оно так есть. Тем более что базовые алгоритмы поиски и деревьях и хеш таблицах уже оценены и описаны в API и доках.

Кое-что нашел, может кому-то пригодится www.youngcoder.net

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

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

А откуда эта фраза про «выбу и высушу»?

понятия не имею
на Донбасе по моему с этой сентенцией знаком каждый школьник переступивший порог учебного заведения ))

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

Большой Лебовски с гоблинским переводом. youtu.be/KRGLmrI9Pm4

а при чем здесь этот анальный клоун гоблин? Он что это придумал что ли?

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

Ни фига не все знают, я не знаю. может под Донецком так и говорят, но не во всем Донбасе

ну там на Гладковке так говорили только впуть. Более концентрированого Донецка еще поищи ))

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

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

а в чем проблема если понадобиться пойти на курсы или выучить самому?

Я не прочитал ваш текст полностью, слишком длинно, извините.
Но во-первых, Турбо Паскаль мертв уже лет как 20, изучать его бессмысленно.
Во-вторых, все зависит от того, чего именно вы хотите добиться.
Что бы не говорили местные снобы, для более чем 99% задач украинского аутсорса математика не нужна вообще. Очень полезно знать двоичную арифметику,базовую булеву алгебру, основы комбинаторики и оценки вычислительной сложности алгоритмов, ну и школьный курс. В целом получается даже не курс вышки специализированной кафедры университета.
Трагедия украинского аутсорса состоит в том, что прямо из универа, пока ваши знания свежие, вас вряд ли возьмут на какую-нибудь требующую серьезной математической нагрузки работу, т.к. нет опыта, да и работ таких почти нет. Разве что вы изначально очень талантливы, имеете хороший английский и пробьетесь в интернатуру MS или Гугла, например. Или, как вариант, найдете такие задачи где-нибудь в украинской индустрии или образовании, но тогда хороших зарплат не ждите. А как только вы наберетесь опыта, вы растеряете и то, что умудрились получить в универе, поэтому вам уже нелегко будет попасть на требующую продвинутых знаний CS работу — вот и замкнулся круг, бессмысленный и беспощадный.
Впрочем, сейчас я скорее пишу на основе своего опыта, у вас ситуация другая. Резюме — математика как таковая не критична, если интересует программирование как профессия, чтение Кнута тоже.
(То есть это очень полезно, не не повод для комплексов.)
P.S. И забудьте Трупо Паскаль, лучше ассемблер изучите дополнительно, пользы будет больше.

турбо паскаль мёртв.. уже может быть.. больше 20 лет..
и?
ну как.. весёлая книга есть.. и там в самом начале.. для таких.. как вы.. умников.. написано «не покупайте эту книгу».. ну и вы.. «не изучайте турбо паскаль»..
да..
особого смысла изучать нет.. и занимайтесь.. чем вы там занимаетесь.. «программированием».. и всем остальным.

«Программирование без математики»
в предидущих сериях:
«Каша без масла»
«Водка без селёдки»
«Секс без любви»
в следующих сериях:
«Туалет без туалетной бумаги»

«Программирование без математики»
«Туалет без туалетной бумаги»
ээээ?

Ну, это, срать то можно, только какашки останутся.

Шилдта Вы полностью прочитали?

Боюсь, что кроме самого Шилдта, его полностью никто не прочитал.

Ага, вопросы по книге комментирует, смотрит код и правильно отвечает :)

Значит нашли еще одного освоившего Шилдта до конца. Кстати, она как секретарша его может и по два раза в день осваивать:) В общем молодец этот Герберт Батькович, хорошо устроился.
Кстати в защиту моей теории о нудности Шилдта говорит даже его унылый сайт www.herbschildt.com/abouths.htm на frontpage, да простит меня доу, за такие выражения.

Значит нашли еще одного освоившего Шилдта до конца.
Да я вас умоляю, ну я прочитал Шилдта до конца. Нормальный справочник.
Кстати в защиту моей теории о нудности Шилдта говорит даже его унылый сайт www.herbschildt.com/abouths.htm на frontpage, да простит меня доу, за такие выражения.
plus.google.com/...sts/HcwkiL36j26

Хотя да... Предложить ему что ли сайт на халяву сделать...

Вы предсказуемы по самое нихачу. Неужели нельзя было написать то то более остроумное. Эх, скучно...

Да ладно, я тоже прочитал до конца. Нормальное чтиво :)

Я не могу похвастаться, что я от корки до корки его прошел. Некоторые главы заменял или дополнял Троелсеном. К примеру, меня бесило, у Шилдта перегрузка операторов растянута на 32 страницы, при этом у него повторяющийся код по одной-две страницы. Читаю Троелсена — 7 страниц и больше полезного.
Ну это ли не занудство.

Так что тут хвастаться, Шилдт пишет вообще для незнакомых с программированием, поэтому разворачивает картину постепенно — чтобы было понятно, зачем делать что-то именно таким образом. И специально повторяет, чтобы вдолбить в голову основы. Понятно, что для программирующих или сообразительных это не так интересно.

не знаю, как там у Шилдта с качеством сайта,
но в 2004-м его книга =Java. The Complete Reference,
Fifth Edition= читалась отлично.
Очень добротно и внятно.
За нудность звыняйте.

А в c# 4.0 нанудил. Как то всё постно и процедурно. Троелсен мне в разы больше нравится.

Я и то и то читал. Однотипные книги.

Блинский, Вы так все пирожки с полки перетягаете.

камон в 2016 году иметь такую охyевшую фотку на сайте и такой дизайн — уже гражданская позиция

бггг я снекрофилил но я думаю дизайн за эти три года абсолютно не улучшился как и лютые усища аля порно 80тых не протерялись

В программирование я устремлен, не из-за денег, а из-за поиска творческой реализации (возможность что-то создавать), т.к. в администрировании этого практически нет. Т.к. есть множество идей, но чувствую себя глухим скрипачем.
Если есть множество идей в администрировании, почему потихоньку не тренироваться писать какие-нибудь скрипты на shell/powershell. Да, нет таких вакансий (shell программист), но руку набить можно. Один знакомый сисадмин вырос в программиста-фриленсера играясь на работе с питоном.
Я понял, что мне нужна уверенность в своих способностях, но как это проверить на начальных уровнях
Напиши что-нибудь работающее.
Не один раз говорилось, что сильные знания высшей математики не нужны, что достаточно знаний первого курса, но что если даже этих знаний нет.
Это простой снобизм. Забей. 90% программистов из математики используют только часть школьного курса (арифметика; тригонометрия, логарифмы, начала анализа, даже квадратное уравнение обычно не нужны), основы теории множеств и матлогики (в объеме 2-3-х вводных лекций для первокурсника). Ну и плюс неплохо бы понимать что такое O(1), O(n) — просто это часто спрашивают на собеседованиям, даже те, кто сами плавают в теме.
В основе любого языка составление алгоритмов, верно?
Ну, если обратиться к математическим основам программирования... На деле, задача людей так или иначе причастных к разработке ПО, включая программистов, — переводить хотелки заказчиков в язык понятный компьютеру. Здесь есть разные уровни, отличающиеся близостью к заказчику или железу, но, как правило, большинство работает ближе к заказчику и все что от них требуется, знать что когда тому захотелось тыцнуть — это называется button и знать как ее вставлять.
но здесь когда я читаю формы, я не вижу картин, а только белые пятна, я читаю текст, но пропускаю формулы и значения
Это с непривычки. Если будете продолжать и подтягивать где-нибудь вне Кнута то, что не понимаете в нем, со временем втянитесь. Но оно вам надо?

Резюмируя.
Математика нужна вам в очень ограниченом объеме. Арифметика, двоичные/шестнадцатеричные числа (перевод туда сюда), основы матлогики и теории множеств. Вот и все, на первое время достаточно. Будете работать, увидите что чего-то не хватает — подтянете по ходу.
Программируйте, набивайте руку. Читайте что спрашивают на собеседованиях и примеряйте к себе.

Спасибо огромное за столь подробный комментарий.

Программировать без блока математики в голове это как писать рассказы с грамматическими ошибками. Все так делают. Но лучшие из лучших, маги и волшебники, имеют огромные области мозга поражённые математикой. Хотя, они тоже редко используют математику в программировании и повсюду вместо понятных названий методов IsQuadraticDifferentiaWorkedNow() используют сопливые, «человекопонятные» IsAllPassengersSittingAndWaitingDrinks(). Одним словом, математики в программировании не бльше чем в плаванье, но олимпийские чемпионы по плаванью используют математику!

Кроме того, математика постоянно нужна для отслеживания зарплатных оферт и процентных соотношений час/рейт у коллег. Собственно говоря, это и есть настоящяя суть программирования! И тут уже без математики никуда.

имхо, не самый удачный вброс, ибо всё уже давно рассмотрено, отхоливарено и проквантифицированно. А Кнута, возможно и правда можно заменить чем-то вроди этого для обычного программера среднего уровня.
Например лично я всего Кнута так и не осилил, потом забил, о чём жалею.
С другой стороны, вы все хотите видеть красивые игры, «крутые» шейдеры и более-менее адекватный AI, так вот, без всего этого и ещё нескольких вагонов другого мат/геом чтива, всё б заканчивалось крестиками-ноликами и тетрисом в лучшем случае... и это без особых, прикладных направлений, а просто обычный, потребительский геймдев.

алсо, рекомендую вашу статью вот здесь разместить, в целях сбора более детализированной критики со всех колоколен ;)

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

Для прочтения и понимания “вроде этого”, а точнее Introduction to Algorithms, необходимо знание дискретной математики и теорвера. Посмотрите первую лекцию MIT 2005 года по этому учебнику, на ютубе или MITOpenCourseware там профессор Лейзерсон (один из авторов книги) на третьей минуте говорит какие у курса пререквизиты:

Prerequisites for this course are 6.042 which is Math for Computer Science and 6.001 [известный в узких кругах SICP. /прим. пер.]. You basically need discrete mathematics and probability, as well as programming experience to take this course successfully. People who do not have that background should not be in the class.. We will be checking prerequisites

то фигня. главное что б английский был, а это невозможно

«нормальный программист ⟹ знает английский».

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

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

Думаю, в контексте Вашей истории важно не незнание математики, а то, что Вы ее не смогли или не захотели осилить в школьный период. Также может произойти и с программированием — нет склонности к точным наукам или неусидчивость сделают свое дело.
В целом же современное программирование вполне может обходится без глубоких математичеких познаний, т.к. основные колеса уже придуманы, нужно только знать где и в каком кол-ве их прикручивать.
А, вообще, дорогу осилит идущий. Успехов!

Я считаю математика все же нужна(прикладная математика).Прочитайте эти две книги.Первая по алгоритмам-поможет пройти собеседование.Вторая известного автора в области ИТ для общего развития, в любом случае не будет лишней...Желаю удачи.Ссылки привожу ниже:
Алгоритмы. Построение и анализ
rutracker.org/...ic.php?t=533181
Конкретная математика. Основание информатики.
rutracker.org/...ic.php?t=968723

Люди делятся на 10 типа: те, кто программируют и те, кто философсвуют на тему «а как бы мне реализовать себя в жизни»

Чувак, в начале разберись для чего тебе математика нужна.

Чтобы работать в оутсорсе/оутстаффе не нужна однозначно
Чтобы стать менеджером среднего звена(тимлидом) тоже не нужна.

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

Вот если ты хочешь заниматься наукой, тогда без математики совсем — совсем никак.

Не обязательно наукой, тем же геймдевом

В современном геймдеве знания математики тоже особо не нужны:сейчас 90% игр это казуалки и мобильные. Там максимум, что нужно — плоская геометрия, тригонометрия за девятый класс и динамика, опять-же за девятый класс. Для всего остального есть готовые библиотеки.

Игр типа сталкера сейчас создаётся очень мало

Чтобы стать менеджером среднего звена(тимлидом) тоже не нужна.

Тим лид это ж вроде линейный менеджер, не? Среднее звено — это минимум начальник тимлида. %)

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

Что ты понимаеш под основами математики? Простые арифметические действия?

Университетский курс технического вуза.

Так это не основы математики же

Ну обычно из универстетского курса не все запоминается)

Это как раз самые основы и есть.

Пиши код Блеать! (только так можно научиться программировать). За 4 года мне математики школьной программы было достаточно. Сейчас задумываюсь о втором высшем (математическом) Кодить без математики можно, все зависит от задач которые нужно решать. Зная фреймворки и понимая как их можно применить можно быть довольно хорошим специалистом. Полностью согласен с комментарием trimm. Видимо, у меня наступает этап

Если хотите зарабатывать нормальные деньги, то математика нужна, как воздух.

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

Если хотите зарабатывать нормальные деньги, то математика нужна, как воздух. Если предел мечтаний — это стеклянный потолок ЗП украинского синиора, то не парьтесь.
В люобм случае, начинайте, а дальше решайте, хотите был годным спецом — учите по ходу дела, хотите быть ресурсом, который выкинут при кризисе из аутсорса — не учите во время работы математику. Но идти ит-шником в любом случае стоит.

а какую именно математику учить? и где ее потом применять?

а какую именно математику учить?

Зависит от спектра ваших задач и выбранной предметной области.
Я бы сейчас ставил на все, что связано с робототехникой (особенно, ИИ, ЦОС, мехатроника), как вариант — предиктивные модели, актуарная и финансовая математика.

Применять там, где будете работать, например, на контрактах, либо устроившись во что-нить годное (это я не об украинском аутсорсе, еси чо).

>на все, что связано с робототехникой (особенно, ИИ, ЦОС, мехатроника), как вариант

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

Гыг. MaxDz во всей красе?

>А в прикладных разработках/фирмах/концернах, где потом университетские решения будут применять программисты — математики не будет. :)

Честно? А мат аппарат закодить уже стало можно без понимания математики? Ну эт кроме того, что совсем недавно коллеги строили для своих пошлых целей подобие фазового вокодера на вейвлетах. Тоже, я так понимаю, нифига не математика? А вот скажи, а sound spatialization на HRTF — тоже, наверное, нонеча можно написать вообще без математики? Ну чисто высокоуровневый фреймворк и все, да? А вся работа с графикой — не математика? Про геймдев скромно промолчим, их шейдера нонеча — тоже не математика.

ТАк что да, все именно так, как ты и говоришь. Джедай клепания формочек — это то, что сейчас нужно миру.

Джедай клепания формочек — это то, что сейчас нужно миру.

Примерно, так. Позиций, требующих каких-то мало-мальских знаний математики (скажем, что такое синус или косинус) — процентов 5 среди разработки. К примеру, в медицине 1 спец, на приличном уровне владеющий математикой (для 3д графики) — приходится на 2 десятка разработчиков, которым математика не нужна.

Есть, понятно, геймдев с 3д — но там задействовано совсем немного людей.

А теперь читаем первый абзац моего первого коммента:
>>Если хотите зарабатывать нормальные деньги, то математика нужна, как воздух. Если предел мечтаний — это стеклянный потолок ЗП украинского синиора, то не парьтесь.

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

Это не отменяет того, что высококвалифицированные спецы также нужны, а таким спецам нужна математика.

Разница в зарплате, на самом деле не так уж велика. Скажем, хороший спец по 3d вольюм-рендерингу, может получать 100-120 евро/час, но таких позиций будет десяток-другой на всю немаленькую Германию (и максимум сотня на всю Европу, при том, что квалифицированные «чернорабочие» будут получать 60-90 евро/час, без каких-либо потребностей знать математику.

Хотя, по той же Германии сейчас довольно много ваканский с опытом 2д и 3д визуализации, много распознавания изображений (в медицине и в индустрии). Но много мелких контор, которые хотят приличных спецов, но не готовы платить приличных зарплат/рейтов. :)

Т.е., разница в 2 раза маленькая? Окда. А теперь давайте вспомним, что укросиниор получает 20$/час, сравним с вышеописанными рейтами, взвесим шансы формошлепа против серьезного спеца на свалинг и увидим профит, не?

Насчёт свала, математика может сильно добавить шансов — это да.

коллеги строили для своих пошлых целей подобие фазового вокодера на вейвлетах

А что касается этого — мало ли, чем там люди в качестве хобби занимаются? :)

Я пишу о профессиональной разработке, которой компании зарабатывают бабло.

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

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

Только не говори что это украинский оутсорс, таких проектов сюда никто не даст.

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

Много я такого в 90-х навидался — от своих «уникальных» систем сравнения отпечатков пальцев, до распознавания почерка. :)

Ага щас. У меня лично берешь так 20 статей на 150 страниц суммарно, читаешь из описанных там алгоритмов комбинируешь нечто свое, реализовываешь, тестируешь, в половине случаев фигня получается, так как или качество низкое или скорость работы. А конкуренты на такое по десять человек-лет на исследования вгатили.

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

ИИ, ЦОС, мехатроника
это разве математика?
ну и в любом случае всё это очень слабо связано с программированием и там где такие штуки востребованы специалисты в этих областях вряд ли код пишут.

>>это разве математика?

Нет, конечно. ИИ, ЦОС, мехатроника — это филология.

>>ну и в любом случае всё это очень слабо связано с программированием и там где такие штуки востребованы специалисты в этих областях вряд ли код пишут.

Вы это пишете основываясь на каких-то фактах в своей биографии? Или у вас просто вещества годные?

Вы это пишете основываясь на каких-то фактах в своей биографии?
единственная причина, по которой это может быть не так — отсутствие денег в данных областях (не могут себе позволить специалиста, который разбирается в предметной области и программистов одновременно)
Нет, конечно. ИИ, ЦОС, мехатроника — это филология.
От только программирование того же ИИ и мат-аппарат пересекаются довольно слабо, и в основном уже на сильно поздних этапах, когда человек уже стал принсипл или выше инженером. Знание мат-аппарата конечно же помогает на всех этапах, но не является необходимым условием.

Теорию множеств. Пригодится 100% полюбому даже в аутсорсе. Просто легче о разных программерских задачах думать, буст к программерской работе нефиговый в любом случае.

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

Где применять — задачи, которые вам даются, зависят от того, что вы умеете. Можно сетовать, что в формошлепстве оно никому не надо, но если вы что-то можете, то проекты найдутся.

Теория множеств тудаже куда и булева алгебра — то что нужно на практике, и так хорошо изучаеться помере изучения яп/самой практики. А графы, автоматы, языки — может пригодиться, а может и нет.

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

Если они зделали перебор, и он работает — то их уже можна похвалить ;-). Сейчас все больше и больше программистов, которые вообще никакой перебор без фреимворка не могут зделать...

Дайте, пожалуйста, примеры реальных задач где математика нужна. Или где их можно найти?

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

Если все же интересно с точки зрения воспоследования заветам Захера-Мазоха, то вам сюда для поиска ключевиков: dou.ua/...ic/7209/#304516

В прикладных областях — 3Д-графика (с соответствующей математикой) в медицине, инженерии (КАДы). В основном, линейка и аналитическая геометрия.
Но таких позиций очень немного.

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

В них математика необязательна — можно делать, «на глазок» либо дoбaвить харда, если «на глазок» не работает.

В них математика необязательна
Да
задач где математика нужна.
Да
«на глазок» либо дoбaвить харда, если «на глазок» не работает.
Опа-опа индус-стайл. Так и алгоритмы не надо, и структуры данных и ваапшэ хватит книжку Шилдта полистать.
Так и алгоритмы не надо, и структуры данных и ваапшэ хватит книжку Шилдта полистать.

Eсть ниши, где это надо — в основном, там где нужен «rich-client» (десктопный или мобильный), с соответствующими ограничениями на хард.

Но такие ниши уже узки, да и клиенты становятся всё мощнее — соответственно, узко и применение математики (и даже Кнута).

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

Да, для сортировки в 99,99% случаев берут какой-нибудь библиотечный «сорт» и им сортируют. Пузырёк там внyтри или вставка — пофиг.

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

Кстати да. Если по-серьезному, то это теория СМО в полный рост. А значит статистика. Реально таки в жизни будет «на глазок», только у человека, примерно знающего, что такое закон Литла, глазок получше будет.

ну хотя бы булеву алгебру освойте.

Булева алгебра отлично осваииваеться вместе с ЯП вашего чойс. Зачем ёё отдельно осваивать ?

Булева алгебра отлично осваииваеться вместе с ЯП вашего чойс. Зачем ёё отдельно осваивать ?
Смешной пример: инвертировать условие в иф. Да-да закон де Моргана, он должен быть доведен до автоматизма, а не каждый раз думать «как раскрыть скобки» или чего хуже строить таблицы истинности (про которые в книжках Шилдта «Основы языка Х» не пишут).

Ну как сказать... Я никаких законов моргана не знаю (забыл), подумать при инвертировании надо, инвертировать чтото в ифе — задача редкая, проблем нет.

Не всем сразу понятно, что !(A and B) это тоже самое что и (!A or !B)

а зачем его инвертировать, там или continue или break после него или даже вообще return.

а зачем его инвертировать, там или continue или break после него или даже вообще return.
Угадали :) Так как раз всякие континью. Всю критику про ГОТО не буду повторять.

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

Еще надо знать бизнес логику приложения. Вот простой пример: есть так званые Optionn Greek: www.investopedia.com/...y/option-greeks. Оно конечно во фрейморк передал и все хеппи. Но без математики их понять трудно.

я бы добавил — нужно уметь понимать бизнес-процессы (для этого нужна элементарная логика) + использовать готовые фреймворки и модули.

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

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

каждый день все используют фреймворки и готовые модули, но 99% из этих «умников» никогда сами не напишут ни свою CMS (по причине большой сложности), ни даже один модуль для умножения двух матриц.
ага! если кто-то подумал, что он сможет за 15 мин написать алгоритм умножения матриц, то может выбросить его в мусорку, потому что им никто пользоваться не будет. Т.к. его нужно оптимизировать, чтобы он работал раз в 10-100 быстрее. 90% программистов даже не читали этих статей, где описываются алгоритмы по правильному обращению к памяти. А если читали, то мало что поняли..

По работе с базами данных — то же самое.
все знают про индексы, и просто ими пользуются.
А глубже — по быстрой работе с данными — никто не копает.
а там уже просто математика (даже 5 курсов мех-мата) не поможет — потому что это не учат.

ТС может посмотреть в сторону приложений по работе с базами данных. Все таки там больше фана (в смысле там чууть больше креатива), чем в администировании.
Лепить формы в десктоп или веб приложениях тоже нужно и полезно, если это решает (автоматизирует) задачи бизнеса.

каждый день все используют фреймворки и готовые модули, но 99% из этих «умников» никогда сами не напишут ни свою CMS (по причине большой сложности), ни даже один модуль для умножения двух матриц.
ага! если кто-то подумал, что он сможет за 15 мин написать алгоритм умножения матриц, то может выбросить его в мусорку, потому что им никто пользоваться не будет. Т.к. его нужно оптимизировать, чтобы он работал раз в 10-100 быстрее. 90% программистов даже не читали этих статей, где описываются алгоритмы по правильному обращению к памяти. А если читали, то мало что поняли..

Вот только в Украине такие программисты не нужны. Вы можете иметь докторскую степень в Computer Science но не знать API социалочек и вы потянете максимум на трейни, если знаете АПИ социалочек то уже Сеньор.

В этом уравнении непонятно одно: зачем работать в УКраине, даже ,если тут живешь?

Я тоже озаботился этим вопросом, теперь работаю на австралийцев.

А фреймворк тебе кто писать будет?

Кто-кто? Обезъянки с Микрософта, который мы стырим с торрента и заюзаем в проекте.

В 90% математика не понадобится. Но математический/аналитический склад ума будет полезен — если вам не давалась школьная математика, с разработкой может оказаться туго...

Школа — не показатель. У меня сестра в школе училась никак — с двоек на тройки. Сейчас у нее строительно-электротехнический магазин, так она стала отлично разбираться в электротехнике) Потому что есть мотив. И очень своими умениями гордиться)
P.S. Плохой препод у вас был по матану.

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

Сейчас у нее строительно-электротехнический магазин, так она стала отлично разбираться в электротехнике)
Так уж в электротехнике? Может просто в электрических приборах для строительства?

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

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

Понятия не имею, я же этим не занимаюсь) Сестра говорит, что гордиться тем, что она, девушка и троечница собирает генераторы и работает в лабораториях)) Что в школе она физику на дух не переносила, а сейчас интересно. Еще будут технические вопросы?) Тогда давайте уже сразу задачи в личку, порешаю, если так сверблит.

. Еще будут технические вопросы?
А до этого были?
Сестра говорит, что гордиться тем, что она, девушка и троечница собирает генераторы и работает в лабораториях
И как ее гордость доказывает или опровергает утверждение:
Школа — не показатель.
?

А что вы сами хотите доказать? Попытайтесь нормально сформулировать. Если для вас школьные оценки показатель, то для некоторых не показатель, и для топикстартера тоже может оказаться так же, тем более, что он правильно мотивирован. Я вам привела пример человека, который сейчас любит то, что не понимал и не любил в школе, причем, к вкус к еде пришел в процессе, и это далеко не единичный случай, не исключение. У вас наверное аттестат висит в рамочке на стене, а золотую медаль каждый день полируете)

А что вы сами хотите доказать? Попытайтесь нормально сформулировать.
если вам не давалась школьная математика, с разработкой может оказаться туго...
-----------------
Если для вас школьные оценки показатель
Оценки и то насколько легко давалась школьная математика — это разное.
Я вам привела пример человека, который сейчас любит то, что не понимал и не любил в школе
Вы привели пример человека который, по вашим словам, «училась никак» и сейчас занимается торговлей:
Сейчас у нее строительно-электротехнический магазин
-------------
У вас наверное аттестат висит в рамочке на стене,
Нет, вместе с другими документами.
, а золотую медаль каждый день полируете)
Какая золотая медаль? С чего вы такое решили? Снова же для работы программистом не надо высоких знаний по литературе или химии, например. Ровно так же как и для того чтобы торговать строительным оборудованием не надо знать физику.

А я с чего вы взяли что сестра именно торгует оборудованием — как вещами на рынке? Я писала что у нее магазин, причем не строительный, а строительно- электротехнический, что то типа электродвигатели, преобразователи, управляющие терминалы, она его хозяин. Приходиться и устанавливать и учить пользоваться, многое самой — не понимала бы — прогорела. Если б вы страстно не любили выпендриваться с вопросами, а интересовались результатом разговора, то там бы сразу и написали —

чтобы торговать строительным оборудованием не надо знать физику.
Я б ответила, что ошиблись, в данном случае — надо. А так сами виноваты в куче флейма.
Что касается оценок, то двойки были по физике и занимается она электротехникой — если не видите связи — ваше право. Разное, так разное. Но лично мне смешно.
что то типа электродвигатели, преобразователи, управляющие терминалы, она его хозяин
Приходиться и устанавливать и учить пользоваться.
И для этого надо знать физику? Если да то приведите пример.
Я б ответила, что ошиблись, в данном случае — надо.
Но не сказали для чего надо.
и занимается она электротехникой
ЦОС? СУ? Рассказывает что красную вилку надо засовывать в красное отверстие, а зеленые аналогично?
Вы уверены что речь о «электротехнике», а не о «электрической технике»?

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

Рассказывает что красную вилку надо засовывать в красное отверстие, а зеленые аналогично?
Этим гордятся? Я удивлена, и сомневаюсь, что с программистом говорю... . Вы очень хотите верить, что конкретный, незнакомый вам человек бездумно перепродает оборудование? Какой вам от этого профит?
Вам дать ее контакт, что бы вы выяснили, кто здесь соврал и насколько?))
Соврали (или ошиблись) ВЫ, так как сделали утверждение которое ВЫ не можете подтвердить.
Вы очень хотите верить, что конкретный, незнакомый вам человек бездумно перепродает оборудование?
Что значит бездумно? «Продавать, инструктировать по использованию электрической техники» и «заниматься электротехникой» — это занятия требующие разных навыков (не выше/ниже, а просто разных). Так вот возвращаясь к началу разговора: не надо было преуспевать в физике в школьное чтобы заниматься тем что вы описали, и не надо преуспевать в математике (в школе) чтобы продавать (настраивать) ПО или даже заниматься интеграцией ПО. Но надо чтобы разрабатывать ПО или заниматься электротехникой (не путать с электрическим оборудованием)

То бишь, вы весь сыр бор заварили, потому что я написала «занимается электротехникой», вместо — «ей нужно и уже стало нравиться разбираться в устройстве электротехнических приборов, которыми она торгует»? А самому что помешало догадаться о значении из контекста? Желание спорить? Вы думаете, что торговцы просто обязаны не разбираться в товаре, которым торгуют, в отличие от представителей производителя? Зря. Бывает по разному, Сестра, например, прежде чем открыть магазин, работала на КАМАЗ, там среди прочего сейчас производят и электрооборудование — электротехническое для автомобилей, строительные электроустановки и дофига всего. Могу дать скайп, сестричка как раз ищет папу своим троим девочкам) Классифицируете все вместе)
Что касается оценок, то я уже писала, девушка начала заново изучать физику, что бы разбираться в товаре, и жалеет теперь, что не сделала это нормально в школе, что вам непонятно? Механизмы мотивации?:) Прайс-лист?)

То бишь, вы весь сыр бор заварили, потому что я написала «занимается электротехникой», вместо — «ей нужно и уже стало нравиться разбираться в устройстве электротехнических приборов, которыми она торгует»?
Нет потому что вы второй пункт приводите как опровержение утверждения:
если вам не давалась школьная математика, с разработкой может оказаться туго...

Вы увлеклись и не поняли. На деле, если вам не давалась школьная математика, но сейчас вы считаете, что писать программы — это вам нужно, круто и вообще творческое занятие (мотивация), но сознаете, что незнание/нелюбовь к математике вам мешает, то вы все же можете попробовать изучать математику — возможно, мотивация (которой в школе не было, но сейчас появилась) поможет вам доводить дело до конца на первых порах, а дальше включиться механизм — «что знаешь хорошо, что используешь, от чего чувствуешь отдачу — то нравится» и математика если не заинтересует сама по себе, то хоть перестанет казаться сложной и быть нелюбимой. Так понятно? Соответственно со временем повыситься и качество разработки.

На деле, если вам не давалась школьная математика,
то вы все же можете попробовать изучать математику — возможно, мотивация
Дело не в мотивации. Дело именно в «давалась/не давалась».
Если «давалась», но вы бухали пиво, то потом вы можете себя заставить и тд.
Если «не давалась», то «на деле» это значит что у вас нет к этому способностей и вы вполне удачно можете иметь контору по интеграции ПО. Но это параллельно написанию того самого ПО.
Так понятно?

Начальные значения переменных смотрели? Автор топика пропустил по глупости 5 класс («бухали пиво» по вашему) и я не думаю, что в 6 что то в нем сильно изменилось, несмотря на репетитора. Возможно, может себя заставить. Не проверишь — не узнаешь. Так понятно?
(Сестра, например, тоже прогуливала школу, а не тупая.)
А вы вообще задумывались, что нельзя походя лишать людей уверенности в себе?

Начальные значения переменных смотрели?
Если вы про ТС6 то нет. Но вы так же не особо :)
Если вы про корень этого обсуждения, то да.
Автор топика пропустил по глупости 5 класс («бухали пиво»).
Вот это по вашему значит «давалось, но бухал»:
В результате к жизни я вернулся в 6 классе, но из-за пропущенного раздела, я уже не понимал математику, все время сколько я учился в школе, у меня был репетитор по математике, но как только он участвовал, я сражу же переставал понимать материал
Кстати, интересно шо ж это за раздел такой что потом за 4 года + коллледжжж не наверстал?

А вот представьте себе — бывает) Это как с моей сестрой, ну не нужна была ей эта физика и все.
Жизнь — сложная вещь, уроки дает разные, а за усвоенными уроками непременно следуют ПЕРЕМЕНЫ! Кстати, люди с хорошо развитым правым полушарием, все эти художники и философы, если уж заинтересуются программированием и найдут в себе силы учиться (левое полушарие развивается во время учебы), то становятся хорошими программистами, т.к. им уже свойственна дальновидность (за нее отвечает правое полушарие).

Но вы так же не особо
Не докажете!=)
Кстати, люди с хорошо развитым правым полушарием, все эти художники и философы, если уж заинтересуются программированием и найдут в себе силы учиться (левое полушарие развивается во время учебы), то становятся хорошими программистами
Боже, храни программирование от хужожников и философов!

— Программист Гитлер, что Вы написали?
— Да вот: программка «Barbarossa.cpp*»

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

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

Философия — это ж не отсутствие совести.

Настоящий философ и к совести отнесется философически.
Проверено.

Только не хужожник и не философ, а скорее скульптор.

Типа к совершенству нечего добавить? Угу) Но сначала надо бы все же его создать — совершенство. В мечте, в сознании и т.п.

При наложении ограничений платформы совершенство превращается в заурядный код.

Это не платформы ограничения:)

Это убеждение от недостатка знаний платформы :)

Что Вы этим хотели сказать?
К примеру, автор книги «Эффективная работа с унаследованным кодом» Майкл К. Физерс, использует рисование для открытия новых горизонтов в программировании.

Что Вы этим хотели сказать?
Всё, что я хотел — я сказал :)
К примеру, автор книги «Эффективная работа с унаследованным кодом» Майкл К. Физерс, использует рисование для открытия новых горизонтов в программировании.
Для открытия новых горизонтов используют некоторые другие психотропные средства.

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

Главный вопрос — это что там Физерс нагоризонтил.

Эффективная работа с унаследованным кодом
Месье знает толк в извращениях
Боже, храни программирование от хужожников и философов!

Хужожники — это такие очень плохие художники?

А-а, вот он какой — сферический конь.
Но там какой-то ПМ рядом,
а бывают ведь и независимые мастера:
www.zoofirma.ru/...a-dizajner.html

все эти художники и философы, если уж заинтересуются программированием и найдут в себе силы учиться
Например ...
Уточнение: надо чтобы математика «не давалась» в школе.
Не докажете!=)
Вот:
Автор топика пропустил по глупости 5 класс («бухали пиво»).
Вот это по вашему значит «давалось, но бухал»:
В результате к жизни я вернулся в 6 классе, но из-за пропущенного раздела, я уже не понимал математику, все время сколько я учился в школе, у меня был репетитор по математике, но как только он участвовал, я сражу же переставал понимать материал
Хотя и правду, аргументы и факты это одно, а доказать женщине тут логика бессильна :)

У меня была абсолютно ненавидимая математичка. Из за нее я в школе терпеть не могла математику, до тех пор, пока не поняла, что она (математика) мне позарез нужна для теоретической физики. Факт?

Факт?
Факт.
У меня была абсолютно ненавидимая математичка. Из за нее я в школе терпеть не могла математику, до тех пор, пока не поняла, что она (математика) мне позарез нужна для теоретической физики.
И к чему вы это сказали?

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

что плохой репетитор + отсутствие мотива для работы над собой — никак не помогает изучить математику.
И к чему это?
Еще раз «изучить» и «дается/не дается» — это разное. Можно заставить себя что-то изучить, но если оно не давалось, то есть человек пропустил магический ключевой раздел в 5-м классе, а потом за 4 года не догнал, тут одно из 2:
1) Это не его
2) Это трололо-тема :)

А я вам еще раз повторю — вы забыли про наличие мотива. И потом, Эйнштейн с вами не согласиться. Он же не закончил гимназию, кажется? Механизм учебы таков, что «не дается» не обязательно если нет способностей, может просто не интересует на данный момент.

Это трололо-тема :)
Ну да. Можете и дальше убеждать людей, что у них что то не получиться. Вы ж умнее от этого не станете?=) Дальше ж некуда.

Знание математики в пределах школьного курса класса эдак до 9-го практически обязательно. Производные, интегралы и прочую заумь, которую преподают в 10-11 классах, можно особо не учить. Оно нужно в очень узкоспециализированных областях, где средний клепатель сайтов на жава или пхп никогда работать не будет.
Хорошее логическое мышление обязательно и намного важнее математики. Правда в школе этому не учат. Оно скорее от природы идет.

а как же раздел дискретки математическая логика?

К дискретке оно имеет слабое отношение.

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

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

Ладно, исходное замечание снимается. Я видать ещё не проснулся :)

Хорошее логическое мышление обязательно и намного важнее математики. Правда в школе этому не учат. Оно скорее от природы идет.
От как раз в школе этому и учат. :)

Учат, но не на уроках математики (алгебры). :-)

Учат, но не на уроках математики (алгебры). :-)
Строго говоря математика (школьная) — это не только алгебра, но и в алгебре много развивающего. Та же абстракция производной и интеграла довольно хорошо помогают развивать мышление (я не про формулы, а про всякие суммы Дарбу, приделы и тд).
К слову, очень благодарен своему учителю математики — Филипповскому Григорию Борисовичу (небольшое интервью www.rl.kiev.ua/...24-godini-1063 ).
Снова же, в младшей школе математика основной развивающий предмет.
Знание математики в пределах школьного курса класса эдак до 9-го практически обязательно. Производные, интегралы и прочую заумь, которую преподают в 10-11 классах, можно особо не учить.

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

Ну почему же? Операции с положительными и отрицательными числами, простые и десятичные дроби, возведение в степень, получение корня — это все школьный курс до 9-го класса и почти все это есть в любом языке программирования. А тригонометрия очень полезна при разработке игр. Даже простенький арканоид требует рассчета углов полета мячика. А еще например траектория снаряда в таких играх как Worms или Angry Birds.

Знание математики в пределах школьного курса класса эдак до 9-го практически обязательно.

Вот это:

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

Это не «знания математики в пределах школьного курса до 9-го класса», это примерно где-то в районе «хорошо учился с 1-го по 4-й класс и прочитал первую главу каждого учебника с 5-го по 9-й». Потому как помнится школьная математика в основном построена не на числах и на том что можно с ними делать, а на преобразовании выражении и решении уравнений, что такое разные числа в основном рассказывают в начальной школе. Знание того как можно чего-нить преобразовать в более красивый вид — оно для разработчика в основном напрямую бесполезно, хотя и не бесполезно совсем.

А тригонометрия очень полезна при разработке игр. Даже простенький арканоид требует рассчета углов полета мячика. А еще например траектория снаряда в таких играх как Worms или Angry Birds.
Часто считаете?

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

Поверю. Хотя «математический фреймворк» — это скорее совсем не про школьный курс математики. Про то как компьютер чего считает, в школьной математике рассказывать не принято.

Я бы по советовал взяться за старый добрый «Керниган, Ричи. Язык C».
Если все что там написанно будет понятно — то welcome, если нет, то нужно думать.
Сугубо имхо, конечно.

Оно то понятно, но взяться разве что онли фо фан, ну или прислать в дальнейшем патч в кернел

Программирование без математики возможно, но это несколько сужает список предметных областей, с которыми может работать программист. На мой взгляд, сужает не критично. Вот логика — другое дело. Но кажется, ее не преподают, как отдельную дисциплину.

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

На твоём месте, я бы не жаловался. У нас вышка была относительно нормальной (ересь начинается только с 4 курса).

Я не ходил на ее пары, так как на лекции, прости за выражение даже посрать нельзя было выйти.

Это я не в курсе. В любом случае — математики были на голову выше остальных по качеству материала.

А что могут научить другие если они программирование/сети/БД только в книжках видели?

Зарецкая — может очень многому научить. Базы данных в исполнении Лазурик тоже неплохи. А так — ну программист всё равно существо самообучаемое. Хотя бы математика была нормальная, и то хорошо.

исполнении Лазурик
Ага, на acess?

Ты говоришь так, как будто это что то плохое. Он полноценнее SQLite, на котором сидят все андройдщики/айосники. Кроме того, нам она ещё давала Мускул.

что то плохое
У меня баттхерт, чуствуешь себя секретаршей.
мускл
ИМХО, мускуль вообще не надо давать, там сликшом много нестандартных фич, потом нужно будет переучиваться на MSSQL/Oracle/PostreSQL
У меня баттхерт, чуствуешь себя секретаршей.
Ты знаешь хоть одну секретаршу, которая была бы в состоянии создать базу и форму в Аксесе? Аксес — это немного покоцанный MsSQL, он вполне годится бля объяснения всех основных концепций построения и управления базами. А его формы помогают сразу делать что то полезное, потому что (если программа не изменилась), на тот момент средний ФКНовец знает только C++ и STL. Иначе пришлось бы вдобавок учить как минимум один визуальный и как минимум один ORM фреймвёрк.
ИМХО, мускуль вообще не надо давать, там сликшом много нестандартных фич, потом нужно будет переучиваться на MSSQL/Oracle/PostreSQL
Он самый распостранённый, доступный и бесплатный, легко интегрируется в любую промышленную системму. Так что использовать его в повседневной работе вполне реально. И вообще, базы у всех свои, Мускул — этакий посредник (ещё имеет смысл учить Монге).

О, знакомые фамилии. ХНУ, ФКН, да?
Зато про самариевое отравление ядерных реакторов вам рассказали. Очень полезные знания для прикладного разработчика. :D

Зато про самариевое отравление ядерных реакторов вам рассказали.
Шо то было... Попов вроде вёл, но точно не помню.
. Вот логика — другое дело. Но кажется, ее не преподают, как отдельную дисциплину.
Мат-логика идет как выделенная дисциплина (или часть дискретки) на всех профильных факультетах.

занимаюсь j2ee для финансов, боюсь что при таком уровне у вас будет колапс мозга при чтении первого же тикета в jira.
Например простенькая валидация допустимых значений скидок использует несколько кривых построеных интерполяцией по матрицам значений процентов и тд и тп. Жести особой нет, но математическое образование подозреваю сильно деформирует мои понятия о жести в програмировании :)

Спасибо большое за комментарии. И все таки есть еще один вопрос :) Я понял, что достаточно иметь хороший IQ, а также аналитическое мышление. Но, что если проанализировав свой жизненный опыт и опыт принятых мною решений, я склоняюсь к тому, что у меня преобладает синтетическое мышление? Кто-нибудь знает как протестировать оба вида мышления?

много вопросов задаешь, ответ на «получится — не получится» не узнаешь, пока не попробуешь. идешь на какой-нибудь сайт с тестами типа www.quizful.net/test, тренируешься проскакивать собеседования и вперед г-кодить на живых проектах! так и получишь свои точки над i.
я так долго мучился с гитарой. если б не купил и не начал ломать пальцы о гриф, так бы и не узнал, что играть — это не мое )

Без знаний матана возможно если круды лепить, но без математики нет

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

Матрицы в андроид геймдеве. Было дело. А вот в Java EE кроме математики на уровне сложения, вычитания, деления, умножения не требовались

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

некоторые матаном обзывают всю вышку

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

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

И да и нет. В смысле, в 99% случаев математика не нужна, но иногда она вылазит. Особенно дискретка. Хотя если визитки на Джумле штамповать то точно не нужна.

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

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

вы эти знания часто применяете в дот.нете?

Редко, но прецеденты были.

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

думаешь фейсбук написан через интегралы? вроде как не аутсайдеры.
Даже если где-то будет не хватать чистой математики всегда найдутся на проекте люди, которые подскажут.
У меня в школе были призовые места на областных олимпиадах, и закончил я прикладную математику. Но поверь, не посчитаю сейчас даже простые интегралы и производные, и даже матрицы не перемножу. Не использую их уже лет 10, и полностью все забыл. Конечно, если понадобится, то вспомню быстрее, чем ты. Но за почти 8 лет работы программистом пока что не понадобилось.

В работе на энтерпрайз достаточно знать, как произвести умножение, сложение и деление. Так что знаний математики за 3-й класс должно хватить.

Для того, чтобы стать украинским девелопером математика не нужна вообще. Алгоритмы Кнута тоже не нужны. И уж точно не нужен учебник по паскалю.
Нужен IQ выше среднего, желание учиться и упорство.
Посмотри coursera.org, там весьма доступно подают материал (и с визуализацией там как раз все очень хорошо). Правда, там все на английском. Но если нет английского, забудь о программировании раз и навсегда.

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

Неплохой вброс слог для 24-х лет.

про математику: в нашем дискретном мире без нее — никуда

Слог как раз плохой. Зато полчилось очень искренно.

Не слишком искренне. «Что-то зародило во мне интерес к программированию..»..Почему никто не пишет правду: о высокой мотивации из-за довольно высоких зарплат..
На склоне лет, когда уже пора быть синьором, начинают признаваться в тайной любви к программированию с пеленок..
Если бы эта любовь бы была то она с пеленок бы и проявлялась и текла бы спокойно в свое русло.
А что зазорного в желании иметь нормальную зарплату?

Подписаться на комментарии