# Компьютеры, телекоммуникации, ПО... > Программирование >  Применение математики в программировании

## Sergey67

Я прекрасно понимаю, что вопросы а-ля "А нужна ли математика программисту?" задавались в той или иной форме как минимум несколько раз только на этом форуме. Отвечающие всегда делятся на 2 лагеря, каждый из которых имеет своё мнение и свои доводы; каждая из сторон по-своему права, понятно, что однозначного ответа этот вопрос не имеет (т. е. кому-то нужна, а кому-то нет).

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

P.S. Вопрос студента, сомневающегося в выбранном направлении.

----------


## Аратор

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

----------


## shipr

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

----------


## shipr

скажите спасибо, что историю КПСС не заставляют учить

----------


## Ромчик

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

----------


## a1ro

пример - проект создания и оптимизации 3D-карт для GPS-навигаторов. Знание геометрии трёхмерного пространства и алгоритмов оптимизации просто необходимо.

----------


## Sergey67

> если математика тебе дается с трудом то думаю вряд ли ты будешь хорошим программистом


 Идёт-то у меня математика отлично. Для меня её изучение - вопрос не склонности, а применимости.

Вообще, о чём я спрашивал - это пример её применения.

----------


## Sergey67

> Алгоритмы, логика и нестандартное мышление - это не совсем математика, точнее совсем не математика университетского уровня.


 Ну, у нас алгоритмы и мат. логику преподают...

----------


## Sergey67

> Алгоритмы, логика и нестандартное мышление - это не совсем математика, точнее совсем не математика университетского уровня.


 Ну, у нас алгоритмы и мат. логику преподают...

----------


## Afonya88

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


 Университетский курс математики прежде всего призван научить решать нетривиальные задачи, при этом давая отличный инструментарий. Разработка любого ПО начинается с решения задачи, а собственно кодирование занимает около 20% времени.
Если по-вашему алгоритмы - это не математика, советую почитать Кнута.

А что по вашему значит учить программированию?

----------


## iFuzzy

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


 Могу ответить только за себя - 10 лет опыта в программированиия, сначала С++ теперь Java. Математика не потребовалась ни разу! В школе/институте с математикой не то что-бы дружил, но более-менее, на 4.

К сожалению, реалии украинского рынка аутсорсинга таковы, что подавлающее большинство проектов - это или поддержка существующего кода (дефекты) или рутинный Веб. Разрабатывать уравнения для NASA вы здесь не будете. Интересную работу никто сливать сюда не хочет, к сожалению.

Проект о котором упоминалось выше -3D-карты для GPS-навигаторов - действително есть, насколько я помню в Люксофте. Но таких проектов один на море рутины.

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

----------


## Sergey67

> А что по вашему значит учить программированию?


 Вопрос, как я понимаю, адресован не мне, но думаю что-то вроде этого: программа MIT. Кстати, там много математики, но в основном дискретной. Дифуров и уравнений мат. физики там нет.

----------


## Afonya88

> Кстати, там много математики, но в основном дискретной. Дифуров и уравнений мат. физики там нет.


 эм... их нет в явном виде... но я не представляю как можно учить Electromagnetic Fields, Forces, and Motion без физики и дифуров...

----------


## Sorik88

Вся информатика базируется на математике !!! В основном теория чисел, сам процессор компа работает по ней !!! Если математику кто не знает зря старается быть программистом ))) Вот так вот

----------


## leviaphan

> Вся информатика базируется на математике !!! В основном теория чисел, сам процессор компа работает по ней !!! Если математику кто не знает зря старается быть программистом ))) Вот так вот


 По-Вашему, не зная, скажем, матан, нельзя быть программистом?

----------


## Afonya88

> По-Вашему, не зная, скажем, матан, нельзя быть программистом?


 Обычный кодером станете, а полноценным разработчиком врядли.

----------


## Fallout

> Обычный кодером станете, а полноценным разработчиком врядли.


 Интересна разница в понятиях *обычный кодер* и *полноценный разработчик*. Поясните что означет первое, а что второе?

----------


## Яр

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

----------


## Яр

Я конечно не говорю о теории алгоритмов и структур данных + теории кодирования. Представление об этом всём, я считаю, должен иметь каждый программист.

----------


## Fallout

> Я конечно не говорю о теории алгоритмов и структур данных + теории кодирования. Представление об этом всём, я считаю, должен иметь каждый программист.


 Вот последнее - *теория кодирования*, для чего об этом знать каждому программисту?

----------


## Rector

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

----------


## Пилигрим

Давайте отделим мух от котлет: есть области разработки, в которых математика может потребоваться отсилы в 0.1% случаев .. типа веб и т.п., - там в первую очередь надо знать стек применяемых фреймворков.
Да, в подавляющем большинстве в офшор ничего интересного не попадает, и математика там крайне редко всплывет. 

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

Случай из личной практики - надо было сэкономить на десятке индусов и заменить сотню-другу ручных тестов на автоматические для одной подсистемы проекта. После пары недель анализа, свели все это дело к 2-3 десяткам сценариев. У заказчика возникли вопросы, а почему именно столько, и какое между ними соответствие. Ну что ж хотели знать, получите - нагрузили их немного математикой и красивыми картинками для наглядности. Хз разобрались ли они, но вопросы отпали сразу, да и отношение к нам поменялось тоже, зауважали что ли  :smileflag: 

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

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

----------


## Fallout

> Теория кодирования применяется на практически во всех сложных электронных приборах, которые оперируют (а тем более пересылают данные по какому либо каналу связи). Чаще всего в ПК мы можем его наблюдать в форме CRC32 кода или,так называемой, контрольной суммы. Однако практическая область применения кодов с обнаружением (исправлением) ошибок - гораздо шире, в первую очередь она затрагивает телекоммуникации и передачу данных.
> Я понял, что математика нужна, я хоть и не программист, а больше системщик. Однако, понимание (я не говорю о глубоком знании и о том, чтобы помнить наизусть таблицу интегралов) банальной вышки необходимо.


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

----------


## Rector

Для возможности контроля целостности своих данных.
Да, пускай используются стандартные библиотеки, но знать как это работает - необходимо. 
Если отсеивать по принципу "зачем оно каждому", то скоро вырастет поколение ИТ-специалистов, которые не будут знать сколько бит в байте, почему в килобайте 1024 байта или чем отличается килобайт от кибибайта  :smileflag:  Ну и в таком духе.
Понятно, что все хотят писать программы, чтобы это было интересно и просто, можно было видеть наглядный результат своей работы (посмотрите как много людей занимаются вэбом, там ведь даже компилировать не надо).
А вы попробуйте писать что то более серьёзное, например, для ядра ОС. Я в универе как то реализовывал под linux зачатки нового сетевого протокола. Там программирование чисто в ядре. Там и пригодилось знание помехоустойчивого кодирования, хотя бы базового. Без знаний математики не разрабатывается ни один большой проект. Как вы думает, за счет чего происходит разработка баз данных, файловых систем и прочих новых технологий?
Да, наверное, вы правы - обычному программисту математика не нужна, обычный программист просто пишет код. Пускай инновациями занимаются необычные программисты.  :smileflag:

----------


## Afonya88

> Интересна разница в понятиях *обычный кодер* и *полноценный разработчик*. Поясните что означет первое, а что второе?


 Обычный кодер - это человек, верстает решения типовых задач.
Полноценный разработчик - человек, который способен решать нетривиальные задачи.

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

----------


## 18-я весна

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

Те, кто говорят что математика - в основе программирования, просто не видят насколько мизерную нишу в программировании занимает математика (и не как основа а как одна лишь из прикладных областей).
Я сейчас говорю не про математику вообще, а про высшую математику изучаемую в вузах.
За 20 лет программирования я создал тысячи (я не преувеличиваю) программ, начиная с СУБД и компиляторов и заканчивая ERP и вебсайтами.
И ни разу не применял высшую математику. 
Это я вам как человек, который не помнит, чему равна производная логарифма, говорю.
(Правда помню чему равна дивергенция ротора, но это так - чисто поржать  :smileflag:  )

А что же нужно для успешного программирования?
1) Умение формулировать задачу и понимать сформулированную задачу
2) Умение находить и использовать готовые стандартные решения и инструменты если они есть
3) Умение решить задачу так чтобы в будущем на основе этого решения можно было с меньшими затратами решать другие аналогичные задачи (база для п.2).
4) Умение находить компромис между тем что хотелось бы и тем что реально доступно.

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

А математика да, она может пригодиться в одной из следующих областей программирования:
- разработка игр
- разработка кодеков звука/изображения и прочая работа с образами
- околонаучные программы

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

----------


## Newton

> Те, кто говорят что математика - в основе программирования, просто не видят насколько мизерную нишу в программировании занимает математика (и не как основа а как одна лишь из прикладных областей).
> Я сейчас говорю не про математику вообще, а про высшую математику изучаемую в вузах.
> За 20 лет программирования я создал тысячи (я не преувеличиваю) программ, начиная с СУБД и компиляторов и заканчивая ERP и вебсайтами.


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

----------


## 18-я весна

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


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

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

В первом случае это программирование, а во втором - копи-паст
Надеюсь вы не это имели в виду?

----------


## Newton

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


 Моделирование поведения финансовых инструментов на фондовых рынках.

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

----------


## Comunity

> Изучение математики помогает в программировании не больше чем изучение физики и химии в вождении автомобиля (который безусловно построен с учетом законов физики и химии).
> Другими словами никак не помогает.
> 
> Те, кто говорят что математика - в основе программирования, просто не видят насколько мизерную нишу в программировании занимает математика (и не как основа а как одна лишь из прикладных областей).
> Я сейчас говорю не про математику вообще, а про высшую математику изучаемую в вузах.
> За 20 лет программирования я создал тысячи (я не преувеличиваю) программ, начиная с СУБД и компиляторов и заканчивая ERP и вебсайтами.
> И ни разу не применял высшую математику. 
> Это я вам как человек, который не помнит, чему равна производная логарифма, говорю.
> (Правда помню чему равна дивергенция ротора, но это так - чисто поржать  )
> ...


 Ну да. У вас большой опыт программирования? 
Давайте обсудим например алгоритмы шифрования, или например пространственная ориентация информации. Можем например еще обсудить разработку сложных анимаций на Actionscript 3, как то разбитое стекло с разными сложными фрагментами, расчет траекторий движения разных объектов и прочие алгоритмы поведения объектов, которые не будут описаны простыми условиями IF, а заданы определенной формулой.

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


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

----------


## 18-я весна

> Давайте обсудим например алгоритмы шифрования,


 На обсуждение всего нет времени.
Давайте на примере шифрования.

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

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




> Вы видимо просто еще не сталкивались с такими задачами


 Так я об этом и написал - это настолько редкие задачи, что с ними сталкиваются единицы.
Специально изучать вышку для программирования (а не для общего развития в рамках общеинженерного курса)  - это все равно что тренировать вестибулярный аппарат на центрифугах на случай если ты вдруг станешь космонавтом, хотя известно что в 99.999% ты будешь водить максимум автомобиль, а если и полетишь то в кресле пассажира самолета  :smileflag:

----------


## Passagir

> Я прекрасно понимаю, что вопросы а-ля "А нужна ли математика программисту?" задавались в той или иной форме как минимум несколько раз только на этом форуме. Отвечающие всегда делятся на 2 лагеря, каждый из которых имеет своё мнение и свои доводы; каждая из сторон по-своему права, понятно, что однозначного ответа этот вопрос не имеет (т. е. кому-то нужна, а кому-то нет).
> 
> Но я хочу попросить вас вот о чём: _приведите пожалуйста примеры, когда вы применяли математику университетского уровня на работе_.
> 
> P.S. Вопрос студента, сомневающегося в выбранном направлении.


  :smileflag:  Надо было идти на ФИТ, а Вы на ПМ?

----------


## Fallout

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


 Хотел уже было спросить "откуда дровишки", но увидел ответ:




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


 Что то мне кажется это те люди которые работают с математикой 99% времени, может их более правильнее называть математиками, а не программистами?

И тогда вопрос примет вообще другую форму:  "Что выгоднее - быть математиком или программистом?"

----------


## Aeore

Лично я пока что встречался с:

1. Теория графов
2. Преобразования Фурье
3. Комбинаторика
4. Фильтрация
5. Векторная алгебра
6. Топография
7. Комплексные числа
..

Для игр во многом нужна аналитическая геометрия, но я играми не занимаюсь  :smileflag:

----------


## abssend

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

----------


## 18-я весна

> Изучение математики это простой и эффективный способ тренировки мышления. А развитое мышление нужно не только программистам


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

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

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

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

----------


## abssend

> Изучение математики - это способ тренировки математических способностей, не больше.


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




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


 Ни математикой едины - с этим никто не спорит.

----------


## Newton

*18-я весна*, вы даже не представляете себе на сколько вы далеки от реальности.

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




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


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

----------


## 18-я весна

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


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




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


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

----------


## 18-я весна

> Почему же не больше? Разве навык логически рассуждать не относится к мышлению или он не тренируется в математике?


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

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

----------


## el_Wild

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


 Интересное утверждение. Если предположить, что программа исполняется в операционной среде, в которой нет собственных багов (т.е. ОС не привносит никаких ошибок), то "правильный код" всегда будет исполнятся "правильно" и других вариантов нет. Понятное дело, что в реальной жизни используется много сторонних компонентов с багами, да и ОС тоже свои баги содержит, но это от того что их наверно писали программисты без знания математики  :smileflag:

----------


## 18-я весна

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

Реальность такова, что программист который пишет программу контролирует только текст который помещается у него в голове - это всего лишь несколько экранов текста программы. Все эти ОС, компиляторы, сторонние компоненты не контролируются по определению, и в них всегда есть баги, потому что - 
*нет программ без багов*.
Это единственная аксиома, на которой можно строить логические выводы при программировании.

----------


## leviaphan

> Надо было идти на ФИТ, а Вы на ПМ?


 Ого! Правильно угадали. :smileflag:  Но это тот случай, когда перевестись ещё не поздно. Вот я и думаю.

P.S. Это тот же Sergey67, просто создавая топик я по ошибке зашёл с отцовского аккаунта.

----------


## Passagir

Если прикладная  "по зубам", то оставайтесь там, лишних знаний еще никогда не было ))))

----------


## Zelion_D

Главное уметь мыслить. Если чего-то не знаешь, можно прийти к этому самостоятельно. Университетские знания роли не играют особой. В интернете куча информации, которую можно прочитать и разобрать. Для этого не нужен универский препод, темболее, что хорошие преподы всё ещё "в прошлом веке", до новых технологий им далеко, а новые не умеют учить. Лучший учитель - желание и время. Захочешь, сам разберёшься. По сути, всё что преподают в универе, можно в интернете получить в более доступной форме. В универе много "воды" дают... Замысловатые фразы, доказательства, научная фигня... Практику это не нужно.

----------


## leviaphan

> Если прикладная  "по зубам", то оставайтесь там, лишних знаний еще никогда не было ))))


 Я ещё не уверен, конечно. Но лишнего времени тоже.)

----------


## Zelion_D

Переведитесь на ФИТ, у Вас появится свободное время, займётесь практикой (самостоятельно). Не тратьте время зря, потом будете жалеть. ПМ для ботанов-теоретиков, а ФИТ для всех подряд. Но суть не в этом, а в том, что ФИТ легче и появится, как я писал выше, больше свободного времени на продуктивное самообучение.

----------


## leviaphan

> Переведитесь на ФИТ, у Вас появится свободное время, займётесь практикой (самостоятельно). Не тратьте время зря, потом будете жалеть. ПМ для ботанов-теоретиков, а ФИТ для всех подряд. Но суть не в этом, а в том, что ФИТ легче и появится, как я писал выше, больше свободного времени на продуктивное самообучение.


 А Вы учились/учитесь на ФИТе?

----------


## Zelion_D

P.S.: Полтора года назад домучал ФИТ, а был когда-то на ПМ. Первым делом жалею о том, что вообще пошёл на ПМ. А потом, я вообще жалею, что потратил часть своей жизни на это убогое "заведение". Ключ успеха - в устремлённости и желании обучаться новому. А универ для галочки.

----------


## leviaphan

> P.S.: Полтора года назад домучал ФИТ, а был когда-то на ПМ. Первым делом жалею о том, что вообще пошёл на ПМ. А потом, я вообще жалею, что потратил часть своей жизни на это убогое "заведение". Ключ успеха - в устремлённости и желании обучаться новому. А универ для галочки.


 Спасибо за совет. Думаю, так и поступлю. Что касается ВО вообще, я пока что верю в пользу дискретной математики, структур данных и т. п.

----------


## Zelion_D

> Спасибо за совет. Думаю, так и поступлю. Что касается ВО вообще, я пока что верю в пользу дискретной математики, структур данных и т. п.


 Это всё просто красивые названия. Поверьте, Вы разочаруетесь, когда увидите чему Вас будут учить  :smileflag:  Я сам когда-то повёлся на это всё.  Там даже если и есть полезные для программиста предметы, то их не могут доступно преподнести. Программирование должен читать практик! А там одни теоретики, а практические занятия ведут нулячие преподы, от которых вреда больше, чем пользы. Помню была преподаватель Усова, вела практические занятия по паскалю и асму, вот она в своём деле разбиралась, но это всёравно очень низкий уровень знаний (программа универская очень узкая). После того как она ушла в декрет, нормальных преподавателей-практиков по программированию я не встречал. Даже со своими скудными знаниями (на тот момент) я уже ощущал, что зря трачу время.

----------


## Zelion_D

> Университетский курс математики прежде всего призван научить решать нетривиальные задачи, при этом давая отличный инструментарий. Разработка любого ПО начинается с решения задачи, а собственно кодирование занимает около 20% времени.
> Если по-вашему алгоритмы - это не математика, советую почитать Кнута.
> 
> А что по вашему значит учить программированию?


 Учиться мыслить, а не заучивать замысловатую теорию, которую препод, как обезъяна, повторяет из года в год... А потом удивляется, почему его не понимают. Да потому что программирование - это практика. Умение думать - это не учить чужую теорию. А вы сами читали Кнута, прежде чем советовать? Алгоритмы придумали люди, а не инопланетяне. А это значит, что любой мыслящий человек может прийти к этому самостоятельно. Математика тоже появилась из умения мыслить. И что такое знать математику? Как определить знание математики?  :smileflag:  Спросить теорему?  :smileflag:

----------


## leviaphan

> Это всё просто красивые названия. Поверьте, Вы разочаруетесь, когда увидите чему Вас будут учить


 Ну что ж разочаруюсь - так разочаруюсь. Вообще, за 3 месяца учёбы на ПМ я уже успел выловить полезные моменты (первое, что приходит на ум - оценка сложности алгоритмов; раньше я просто говорил О(n), а теперь знаю формальное определение; потом, всякие формулы Бэкуса-Наура и пр.). В любом случае, ФИТ не должен занять много времени.

----------


## leviaphan

> Учиться мыслить, а не заучивать замысловатую теорию, которую препод, как обезъяна, повторяет из года в год... А потом удивляется, почему его не понимают. Да потому что программирование - это практика. Умение думать - это не учить чужую теорию. А вы сами читали Кнута, прежде чем советовать? Алгоритмы придумали люди, а не инопланетяне. А это значит, что любой мыслящий человек может прийти к этому самостоятельно. Математика тоже появилась из умения мыслить. И что такое знать математику? Как определить знание математики?  Спросить теорему?


 Вообще, почти все мои однокурсники на вопрос "почему поступили именно на прикладную математику?" отвечают нечто вроде "математика развивает логику, а логика нужна программисту". Разве программирование (не просто кодирование уже готовой задумки, а проектирование системы классов или придумывание подходящего алгоритма) не развивает логику? К тому же, насколько мне известно, существуют различные типы интеллекта (вспомнить те же IQ тесты). Так не стоит ли развивать именно тот тип интеллекта, который пригодится в программировании, собственно программированием?

----------


## Zelion_D

> Ну что ж разочаруюсь - так разочаруюсь. Вообще, за 3 месяца учёбы на ПМ я уже успел выловить полезные моменты (первое, что приходит на ум - оценка сложности алгоритмов; раньше я просто говорил О(n), а теперь знаю формальное определение; потом, всякие формулы Бэкуса-Наура и пр.). В любом случае, ФИТ не должен занять много времени.


 Это по началу... Потом этой всей ерунды будет так много, что у Вас всё в голове перемешается и в итоге знания будут настолько низкого уровня, что Вы будете ещё пол года, после окончания универа, искать работу хотя-бы самым начинающим программистом за самую низкую зарплату, но зато с дипломом ПМ  :smileflag:  Вы этого хотите? Формулы все можно вывести самостоятельно, главное уметь мыслить. Это ценится больше, чем заученная теорема.

----------


## Zelion_D

> Вообще, почти все мои однокурсники на вопрос "почему поступили именно на прикладную математику?" отвечают нечто вроде "математика развивает логику, а логика нужна программисту". Разве программирование (не просто кодирование уже готовой задумки, а проектирование системы классов или придумывание подходящего алгоритма) не развивает логику? К тому же, насколько мне известно, существуют различные типы интеллекта (вспомнить те же IQ тесты). Так не стоит ли развивать именно тот тип интеллекта, который пригодится в программировании, собственно программированием?


 Заучивание теорем логику не развивают  :smileflag:  Логику развивает практика, а в универе её не дают. Вот и получается, что нужно этим заниматься самостоятельно. А занимаясь на прикладной, особо времени нет.

----------


## Passagir

Я не с ПМ и не с ФИТ, но мне очень интересна Ваша дискуссия  :smileflag: 
Если не трудно, опишите, как Вы себе представляете, что должен читать вам препад по программированию? Только если возможно не общими фразами, а конкретно

----------


## leviaphan

> Я не с ПМ и не с ФИТ, но мне очень интересна Ваша дискуссия 
> Если не трудно, опишите, как Вы себе представляете, что должен читать вам препад по программированию? Только если возможно не общими фразами, а конкретно


 Я пока товарищ неопытный, но занятия за те три месяца, что я тут учусь, меня устраивают (гооворю за ПМ). Понравилось то, синтаксис ЯП описывается не на пальцах, а с помощью БНФ. Понравилось стремление описать всё очень строго и формально. Понравилась полнота описания. Ну и много другое...
Не нравится мне только чрезмерное количество классической математики (сейчас мат. анализ и алгебра). Думал, что это - только первый курс, дальше - лучше, но ошибался. Второй курс - всё тот же матан, дифуры, методы оптимизации (которые, по отзывам старшекурсников, далеко не самый интересный предмет :smileflag: ). Заглянул в самый конец, на старшие курсы, где "теория управления", "анализ данных", "системы и методы принятия решений". Звучит очень и очень привлекательно. Поспрашивал, что это на самом деле - сильно разочаровался.

----------


## Zelion_D

> Я не с ПМ и не с ФИТ, но мне очень интересна Ваша дискуссия 
> Если не трудно, опишите, как Вы себе представляете, что должен читать вам препад по программированию? Только если возможно не общими фразами, а конкретно


 Препод должен научить мыслить как программист, изобретать... А не заставлять заучивать какую-то теорию, которая без практического подтверждения абсолютно бесполезна. ПМ - это ПМ, там готовят математиков. А вот ФИТ должен готовить программистов, но на практике обучение на ФИТе - это протирание штанов из-за галочки об окончании универа. Практически всем преподам абсолютно параллельно узнает студент что-то или нет. Да и ничего интересного толком рассказать не могут, кроме невнятной теории. Практики мало... Любая теория должна закрепляться практически. Помню был курс проектирования систем массового управления (вроде так назывался), так препод сам не понимал что он читает. Заставлял переписывать бредовую методичку и подставлять значения, которые он сам и давал по вариантам. Рассказывал про рыбалку и прочую ерунду. Это что обучение? Но и экзамен у него получить было не сложно. На прикладной всё немного не так, там мучают нудной, в большинстве своём ненужной, теорией. Практики тоже толком нет. Единицы преподов могут внятно объяснить, но опять-же, без практики это всё пустозвонство. Как уже писали, названия предметов завлекающие, а когда приходишь на лекцию, то понимаешь, что просто тратишь своё время. Не советую заморачиваться универом, надо заниматься самообучением, в интернете много статей и практических примеров. А универ можно закончить для галочки. И потом с лёгкостью устроиться в любую контору. И чем раньше начнёте, тем легче будет в будущем. Без работы сейчас никак...

----------


## 18-я весна

> Я не с ПМ и не с ФИТ, но мне очень интересна Ваша дискуссия 
> Если не трудно, опишите, как Вы себе представляете, что должен читать вам препад по программированию? Только если возможно не общими фразами, а конкретно


 1) 
a) Архитектура ЭВМ (устройство процессоров, регистры, стек, виртуальная память, кеши, конвейер команд, порядок байтов, базовые сведения о реализации логических элементов). 
b) Язык Assembler для самой распространенной архитектуры (x86 - 32 бита).
c) Язык С.
d) Курсовик - эмулятор основных команд процессора 386

2) 
a) ООП
b) Язык C++
c) Архитектура и API ОС Linux и Windows
d) Курсовик - драйвер для виртуального RAM диска в Windows и Linux

3) 
a) Языки высокого уровня (python, ruby)
b) Функциональные языки (haskell, erlang, scheme)
c) Теория трансляции (включая автоматы, грамматики и прочую дискретку)
d) Курсовик - транслятор кода одного из языков п.b в один из языков п.a

4) 
a) Язык SQL (и все что относится к реляционным БД)
b) Языки/среды для GUI и БД (C#, Java, Qt, Delphi)
c) Курсовик - система учета чего-нибудь с базой данных и отчетами

Это на два года.
Дальше - идти работать.

----------


## el_Wild

Что-то у вас из курса дискретной математики очень мало. И почему ограничивать образование только реляционными базами, а с остальными типами БД что делать? 

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

----------


## 18-я весна

> Что-то у вас из курса дискретной математики очень мало. И почему ограничивать образование только реляционными базами, а с остальными типами БД что делать?


 Как вы определили что мало? Да и зачем ему знать всю дискретку? Он же программист, а не математик.

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




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


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

Если человек не способен за 2 года осилить эту программу, то ему следует сменить специальность.

----------


## el_Wild

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

----------


## 18-я весна

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

Касательно нереляционных БД - какой смысл в их изучении, что они дают концептуально нового по сравнению с реляционными? Ответ - ничего. Поэтому, кто захочет - сам все про них найдет и прочитает.

----------


## Comunity

> _Но если программист хочет дорасти до действительно хорошего специалиста, который может обоснованно решать какие-то задачи, а не исполнять чужие решения, то ему просто необходимо_ заниматься постоянным самообразованием с обязательным отсечением ненужного хлама.
> Невозможно все изучить в университете. Объем знаний, который может пригодиться, с каждым годом растет экспоненциально.
> Плюс многие знания устаревают.
> 
> Касательно нереляционных БД - какой смысл в их изучении, что они дают концептуально нового по сравнению с реляционными? Ответ - ничего. Поэтому, кто захочет - сам все про них найдет и прочитает.


 Для того, чтобы найти и прочитать, надо знать ЧТО и ГДЕ искать.

----------


## 18-я весна

> Для того, чтобы найти и прочитать, надо знать ЧТО и ГДЕ искать.


 Если человек не дебил, то он догадается и что искать и где. Слов "реляционные БД" достаточно, чтобы раскрутить всю информацию по всем типам БД

----------


## Zelion_D

> Для того, чтобы найти и прочитать, надо знать ЧТО и ГДЕ искать.


 Поисковик в помощь. Это быстрее, чем сидеть на паре и слушать "воду", которая льётся из уст препода. И не напрягает... Не надо никуда ездить в 8 утра, сел дома, открыл и почитал. Энтузиазм подкрепляется оплатой труда, поэтому есть смысл выучить основы и начать работать, а не протирать штаны в вузе, в надежде стать "большим и сильным".

----------


## Passagir

Очень точный ответ дал *18-я весна*, но интересно как это могут усвоить вчерашние школьники, которые не программировали ни на одном языке, и даже не умеют самостоятельно мыслить?
Я думаю такая схема обучения возможна для отдельных студентов, а таких на всех специальностях наберется горстка. Мне бы хотелось общаться именно с такими, но к сожалению практика показывает, что пары нужно вести, ориентируясь на среднестатистического студента. 
И даже на таком уровне периодически возникает ощущение, что говоришь сам с собой )))

----------


## Afonya88

> Учиться мыслить, а не заучивать замысловатую теорию, которую препод, как обезъяна, повторяет из года в год... А потом удивляется, почему его не понимают. Да потому что программирование - это практика. Умение думать - это не учить чужую теорию. А вы сами читали Кнута, прежде чем советовать? Алгоритмы придумали люди, а не инопланетяне. А это значит, что любой мыслящий человек может прийти к этому самостоятельно. Математика тоже появилась из умения мыслить. И что такое знать математику? Как определить знание математики?  Спросить теорему?


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

----------


## 18-я весна

> Очень точный ответ дал *18-я весна*, но интересно как это могут усвоить вчерашние школьники, которые не программировали ни на одном языке, и даже не умеют самостоятельно мыслить?
> Я думаю такая схема обучения возможна для отдельных студентов, а таких на всех специальностях наберется горстка. Мне бы хотелось общаться именно с такими, но к сожалению практика показывает, что пары нужно вести, ориентируясь на среднестатистического студента. 
> И даже на таком уровне периодически возникает ощущение, что говоришь сам с собой )))


 Да, есть такая проблема - разный начальный уровень.

Она решается просто - группа разбивается две подгруппы (по желанию самих студентов) "сильную" и "слабую" (условно).
Сильная группа идет по полной программе.
Слабая группа первые два семеста идет по облегченной программе.
Например на нашей специальности - политех, промэлектроника - в слабой группе был асм80 и бейсик вместо асм86 и С и рисование графиков вместо драйверов.
В ходе первого семестра, глядя на прогресс, препод решает кого в какую группу перетасовать.
Потом со второго года - общая программа - там уже более высокоуровневые вещи идут. 
Кому из слабой группы интересно - самостоятельно догоняют упущенное. Что в прочем необязательно - всегда можно уже на работе изучить нужные направления  :smileflag:

----------


## Zelion_D

> Очень точный ответ дал *18-я весна*, но интересно как это могут усвоить вчерашние школьники, которые не программировали ни на одном языке, и даже не умеют самостоятельно мыслить?
> Я думаю такая схема обучения возможна для отдельных студентов, а таких на всех специальностях наберется горстка. Мне бы хотелось общаться именно с такими, но к сожалению практика показывает, что пары нужно вести, ориентируясь на среднестатистического студента. 
> И даже на таком уровне периодически возникает ощущение, что говоришь сам с собой )))


 Ну значит остальные протирают штаны. Смысл от таких студентов? Пусть ищут другую профессию. Либо есть наклонность, либо нет. К 17ти годам человек уже может определится к чему у него лежит душа. И тот список вполне можно освоить. А занимаясь самостоятельно, даже быстрее, чем за 2 года.

----------


## Zelion_D

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


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

----------


## Newton

> 1) 
> a) Архитектура ЭВМ (устройство процессоров, регистры, стек, виртуальная память, кеши, конвейер команд, порядок байтов, базовые сведения о реализации логических элементов). 
> b) Язык Assembler для самой распространенной архитектуры (x86 - 32 бита).
> c) Язык С.
> d) Курсовик - эмулятор основных команд процессора 386
> 
> 2) 
> a) ООП
> b) Язык C++
> ...


 Короче, вы говорите о ПТУ-шнике. 
Действительно, с такими запросами нечего идти в университет. Потому что там будут человеку с амбициями на уровне пту давать ненужную ему теорию. Вот только ПТУ в Украине не дают такого объема практических знаний, как требует 18-я весна, поэтому те, кому надо математика и кому она не нужна, учатся вместе в универе. Слава Богу есть ФИТ, куда плавно с ПМ перетекают ПТУ-шники.

----------


## 18-я весна

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

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

----------


## Zelion_D

> Короче, вы говорите о ПТУ-шнике. 
> Действительно, с такими запросами нечего идти в университет. Потому что там будут человеку с амбициями на уровне пту давать ненужную ему теорию. Вот только ПТУ в Украине не дают такого объема практических знаний, как требует 18-я весна, поэтому те, кому надо математика и кому она не нужна, учатся вместе в универе. Слава Богу есть ФИТ, куда плавно с ПМ перетекают ПТУ-шники.


 Ну да, на ФИТе учат каких-то ПТУшников, а на ПМ научных работников... Правда что там, что там, учатся практически одни бездари, толковых там единицы... И после выпуска, не помнят абсолютно ничего  :smileflag:  Но зато ходят высоко задрав нос, что они закончили ПМ  :smileflag:  А потом на работу устроится не могут... И не потому что работы нет, а потому что специалисты они такие. В чём смысл такого обучения? Ну да ладно... Флаг им в руки, у каждого своя жизнь и свои мозги никому не вставишь.

----------


## Sergey67

> Правда что там, что там, учатся практически одни бездари, толковых там единицы...


 Толковых там достаточно (во всяком случае в моём потоке). Другое дело, что направляют они свой талант на математику, которую, боюсь, не применят. Мне кажется, ситуацию на прикладной хорошо иллюстрирует следующий случай:
Будучи школьником, я ходил на университетский кружок олимпиадного программирования. Помню, объясняли нам контекстно-свободные грамматики. Я к тому времени уже имел некоторое представление о них, поэтому на лекции активно отвечал на вопросы и сам их задавал. Прикладники были не очень "в теме" и потому скучали. Зато когда эти же контекстно-свободные грамматики стали обьяснять на примере производных (типа как разобрать выражение ((3x^2) / (8ln x))`), они мигом оживились, начали выдавать результаты некоторых рассуждений раньше лектора и т. п. Ребята очень талантливые, считали производные как орешки, а такую простую вещь, которую, в общем-то, школьник может разобрать по википедии, не знали.

----------


## Zelion_D

> Толковых там достаточно (во всяком случае в моём потоке). Другое дело, что направляют они свой талант на математику, которую, боюсь, не применят.


 Я не в том смысле, что они глупые люди. Отнюдь. Бездари, я имел ввиду, в программировании. И в этом виноват универ, который я и осуждаю. Поэтому и говорю, что надо учиться самостоятельно. А математику можно и по книжкам выучить. А универ для галочки  :smileflag:

----------


## Passagir

> А математику можно и по книжкам выучить.

----------


## el_Wild

Универ для галочки, математику по книжкам, программист уровня ПТУ... А потом удивляемся откуда столько багов и ужасного кода...

----------


## 18-я весна

> Универ для галочки, математику по книжкам, программист уровня ПТУ... А потом удивляемся откуда столько багов и ужасного кода...


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

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

----------


## el_Wild

Уровень ПТУ -- уровень кодера, который просто набирает текст и решает типовые задачи (даже не решает, а использует готовое решение). Он может быть просто прекрасным кодером, писать быстро и надежно. И такие специалисты тоже нужны. Но если мы говорим о разработчике, который сам может создавать что-то принципиально новое, то для этого необходима теоретическая база. Основы этой базы человек и получает в универе. А уже все остальное это самообразование (высшее образование, как однажды заметил один преподаватель, это 30% занятий в универе и 70% самообразования). Я ведь не говорю, что после универа выходят сразу гениальными разработчиками способными решить любую задачу. Для этого необходим большой опыт работы. Но намного проще приобрести такой же опыт как у выпускника ПТУ, чем самостоятельно изучить всю теорию универа.

Ну а то что везде полно людей, которые занимаются на своим делом, это понятно и с этим я полностью согласен. От этого не защищает ни ПТУ, ни ВУЗ (могут только слегка отсеять).

----------


## 18-я весна

> Уровень ПТУ -- уровень кодера, который просто набирает текст и решает типовые задачи (даже не решает, а использует готовое решение).


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




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


 Теоретическая база нужна чтобы в науке что-то новое делать, а программирование это не наука, а инженерная специальность. Тут надо изучать технологии производства.
Да и кстати, что за теоретическая база у программирования, какие конкретно предметы магически превращают кодера в Разработчика?

----------


## Zelion_D

> Основы этой базы человек и получает в универе. А уже все остальное это самообразование (высшее образование, как однажды заметил один преподаватель, это 30% занятий в универе и 70% самообразования). Я ведь не говорю, что после универа выходят сразу гениальными разработчиками способными решить любую задачу.


 То что преподают в универе можно выучить самостоятельно гораздо быстрее  :smileflag:  Инфы в интернете, в более приемлемой форме, чем начитывают преподы, масса.

----------


## Zelion_D

> 


 А в универе вы не по книжкам учились?  :smileflag:  Разве вам преподаватели не давали литературу с библиотеки?  :smileflag:  Или в конспектах что-то принципиально новое пишут?  :smileflag:  Всё это можно выучить самостоятельно, для этого не надо протирать штаны 6 лет в универе. Вобщем, это моя позиция.

----------


## Passagir

Я думаю математику по книжкам можно выучить точно так же, как и начиться программировать по книжкам)))
С помощью книг изучают теорию. Это мое мнение.
А в универе я не только по книжкам училась, но и любила на консультации к преподавателям ходить, задавать вопросы.
А при изучении программирования любила на форумы "ходить" и общаться с народом)))

----------


## Zelion_D

> Я думаю математику по книжкам можно выучить точно так же, как и начиться программировать по книжкам)))
> С помощью книг изучают теорию. Это мое мнение.
> А в универе я не только по книжкам училась, но и любила на консультации к преподавателям ходить, задавать вопросы.
> А при изучении программирования любила на форумы "ходить" и общаться с народом)))


 Про математику:
С каких это пор универ учит практике?  :smileflag:  Вот как раз универ и учит только теории, а практика практически отсутствует. Если Вы имеете ввиду практические занятия, на которых можно порешать пару примеров по математике, то это можно сделать самостоятельно, опять-же, в интернете есть и практические применения теории.

Про программирование:
Практические занятия по программированию, конкретно в ОНУ, лажа полная. Задачи рассчитаны на людей, которые пришли в универ из-за бумажки, настолько элементарные, что противно их делать. Однако, даже эти простейшие задачи многие не могут сделать (сужу по своим бывшим однокурсникам).
Именно по книжкам и учатся программировать. А форумы - это тоже интернет. Кстати, не на всех форумах могут грамотно проконсультировать. Конечно не все книжки хороши, но, опять-же, в интернете (в том числе и на форумах) можно найти список проверенных книг. И я это Вам говорю как программист со стажем, я сам через всё это прошёл.

----------


## 18-я весна

> Именно по книжкам и учатся программировать.


 Кстати да.
Я изучил на довольно приличном уровне ассемблер 80, бейсик, форт и С по книгам, не имея компьютера - не было другого выбора в той глуши где я жил.
Потом когда комп появился - сразу начал фигачить проги на указанных языках. 
А многие проги, записанные в тетрадочку за пару лет до компа, даже сразу заработали без отладки  :smileflag:  (причем не тривиальные уровня лаб в нынешних вузах, а например ассемблер написанный на форте)

И конечно же никакого интернета у меня не было в 87 году, когда я начал всем этим интересоваться  :smileflag:

----------


## el_Wild

> Пока у нас будут думать что математика и программирование - одно и тоже, так и будет продолжаться.


 Математика и программирование не одно и тоже, но в основе программирования лежит математика.




> Да и кстати, что за теоретическая база у программирования, какие конкретно предметы магически превращают кодера в Разработчика?


 Дискретная математика (Комбинаторика, Сортировки, Теория графов, Теория автоматов, Функциональное программирование, λ-исчисление и т.д.), Численные методы, Теория информации, Теория алгоритмов, Структуры данных, Распределенные вычисления, Моделирование систем и т.д. и т.п.




> Всё это можно выучить самостоятельно, для этого не надо протирать штаны 6 лет в универе. Вобщем, это моя позиция.


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

----------


## Zelion_D

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


 А в универе сильно контроллируется? Сейчас почти всё сдаётся сами знаете как. Никто ничего не контроллирует. А вот решение конкретной задачи, за которую платят деньги, очень быстро покажет качество знаний.
Если не могут освоить, то это их проблемы. Очень маловероятно, что из них получатся хорошие специалисты. В универе ничего нового толком не преподают, а если они не могут самообучаться, то будут топтаться на месте. Толку от таких псевдо-разработчиков?

----------


## 18-я весна

> Дискретная математика (Комбинаторика, Сортировки, Теория графов, Теория автоматов, Функциональное программирование, λ-исчисление и т.д.), Численные методы, Теория информации, Теория алгоритмов, Структуры данных, Распределенные вычисления, Моделирование систем и т.д. и т.п.


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

----------


## Zelion_D

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


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

----------


## el_Wild

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


 Каждый сдает так как считает нужным. Хочешь сдавать сам, пожалуйста, сдавай, твои знания проконтролируют. А те, кто хочет платить, пусть платят, тем выше потом ценятся квалифицированные специалисты.





> Так вот я, не изучая эти предметы (у меня специальность была - электроника), спокойно делал на заказ курсовики по ним для специальностей, которые их изучали.
> Потому что все это по сложности концепций - уровень средней школы.


 Так, а что плохого, если человек это уже изучит в универе? Он что потеряет это время? Или его знания от этого становятся хуже, если освоил не самостоятельно, а в универе на лекциях?

Сложность концепций это спорный вопрос. Вы случайно не РТФ политеха заканчивали?

----------


## 18-я весна

> Так, а что плохого, если человек это уже изучит в универе? Он что потеряет это время? Или его знания от этого становятся хуже, если освоил не самостоятельно, а в универе на лекциях?


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

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

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

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

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

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




> Сложность концепций это спорный вопрос. Вы случайно не РТФ политеха заканчивали?


 Нет, ФАВТ

----------


## Zelion_D

> Каждый сдает так как считает нужным. Хочешь сдавать сам, пожалуйста, сдавай, твои знания проконтролируют. А те, кто хочет платить, пусть платят, тем выше потом ценятся квалифицированные специалисты.


 Как написал 18-я весна, некоторые предметы в универе либо вообще не нужны программисту, либо уровень теоретических познаний привышает необходимый. Зачем тогда тратить на это время? Раз уж универу так важно, чтобы это таки присутствовало в зачётке, то это абсолютно не важно каким образом оно туда попадёт. Ведь можно время, потраченное на эту лабуду, потратить с пользой. Вот именно это обязалово в изучении лишнего и напрягает. Лучше б уделили внимание практическим задачам. Просто универ следит не за качеством образования, а за кол-вом выпущенных человек с бумажкой, толку от которых 0.

----------


## NixonKNR

> Вот последнее - *теория кодирования*, для чего об этом знать каждому программисту?


 Дело в том, что каждый настоящий программист должен знать какую-то хрень, которую знает только он. Это дает ему возможность с чувством собственного удовлетворения каждому говорить: "Представление об этом должен иметь каждый программист"

----------


## lexar

> Я прекрасно понимаю, что вопросы а-ля "А нужна ли математика программисту?" задавались в той или иной форме как минимум несколько раз только на этом форуме. Отвечающие всегда делятся на 2 лагеря, каждый из которых имеет своё мнение и свои доводы; каждая из сторон по-своему права, понятно, что однозначного ответа этот вопрос не имеет (т. е. кому-то нужна, а кому-то нет).
> 
> Но я хочу попросить вас вот о чём: _приведите пожалуйста примеры, когда вы применяли математику университетского уровня на работе_.
> 
> P.S. Вопрос студента, сомневающегося в выбранном направлении.


 В политехе на ИКС Luxoft открыл студенческую лабораторию.
Два проекта: навигация и распознавание образов + дополненная реальность.
В навигации будет решаться задача прокладки маршрутов с учётом пробок,
как инструмент, думаю, задачи оптимизации на взвешенных графах.
В распознавании - построение 3D моделей реальности по движущейся камере.
Перечислять всё, что эта тема может зацепить из математике - никакого терпения не хватит  :smileflag:

----------


## Fallout

> В политехе на ИКС Luxoft открыл студенческую лабораторию.
> Два проекта: навигация и распознавание образов + дополненная реальность.
> В навигации будет решаться задача прокладки маршрутов с учётом пробок,
> как инструмент, думаю, задачи оптимизации на взвешенных графах.
> В распознавании - построение 3D моделей реальности по движущейся камере.
> Перечислять всё, что эта тема может зацепить из математике - никакого терпения не хватит


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

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

----------


## lexar

> А все таки хотелось бы обсудить это перечисление, а именно как много из того что будет реально применятся в этих проектах входит в ВУЗовкие учебные программы.
> 
> PS. сами эти проекты как и эта тенденция вообще отдельная тема для разговора. имхо люксофт нашару решил нужные себе библиотеки написать


 Почему себе? Проекты open source. Всё будет опубликовано в открытом доступе.
Могу сразу сказать, то что нагенирируют ребята на прямую в Luxoft не применимо.

Собственно говоря, проекты были открыты по моей инициативе.
Меня задолбало отсеивать 3/4 выпускников, которые ко мне пиходят. А приходят далеко не самые слабые.
Вот и возникла идея - дать студентам реальную разработку с реальными условиями, полезную и интересную задачу.
Схема работы - 6 человек 4-го кусрса/ 6-человек 3-го. Как только четвёртый курс покидает проект, его место занимают "помощники"
и находят "помощников" себе. Таким обрезом проекты получаются неограниченные во времени и что-то можно будет довести до ума.
А цель одна - подстегуть ИКС, показать, что можно кодить что-то реальное, здесь и сейчас,
а не в бесконечно далёком будущем.

А перечисление?
Дискретка, линейнай алгебра (прежде всего операции над матрицами), мат. статистика(корреляция, ковариация и т.п.), векторная алгебра,
аналитическая геометрия в пространстве, ряды Фурье и работа с комплексными числами...
В общем, если открыть темы "распознавание образов" и "3D" графика, то всё станет понятно.

----------


## Fallout

> Почему себе? Проекты open source. Всё будет опубликовано в открытом доступе.
> Могу сразу сказать, то что нагенирируют ребята на прямую в Luxoft не применимо.


 То что в открытом доступе то может взять каждый, тот же Люксофт, пусть даже если не все и кое что допиливать прийдется, тем более если задания близкие по роду деятельности.
Ребятам же не предлагалось написать Зд шутер. А так уже готовые люди, да еще и с почти готовыми опенсорсными наработками. Ну да ладно. Это ж бизнес, тут ничего никому не должен за просто так.




> Собственно говоря, проекты были открыты по моей инициативе.
> Меня задолбало отсеивать 3/4 выпускников, которые ко мне пиходят. А приходят далеко не самые слабые.
> Вот и возникла идея - дать студентам реальную разработку с реальными условиями, полезную и интересную задачу.
> Схема работы - 6 человек 4-го кусрса/ 6-человек 3-го. Как только четвёртый курс покидает проект, его место занимают "помощники"
> и находят "помощников" себе. Таким обрезом проекты получаются неограниченные во времени и что-то можно будет довести до ума.
> А цель одна - подстегуть ИКС, показать, что можно кодить что-то реальное, здесь и сейчас,
> а не в бесконечно далёком будущем.


 3 из 4 это пожалуй еще очень даже неплохой коэфициент. 
И конечно жаль что ВУЗы сами по себе не могут стартануть такие программы.




> А перечисление?
> Дискретка, линейнай алгебра (прежде всего операции над матрицами), мат. статистика(корреляция, ковариация и т.п.), векторная алгебра,
> аналитическая геометрия в пространстве, ряды Фурье и работа с комплексными числами...
> В общем, если открыть темы "распознавание образов" и "3D" графика, то всё станет понятно.


 Сколько из этого совпадает с программой сферического ВУЗа в вакууме?

----------


## lexar

> Сколько из этого совпадает с программой сферического ВУЗа в вакууме?


 Многое.
Зависит от конкретной специальности.
Я не ограничивал лабораторию только студентами ИКС.
А прикматы, например, всё это должны учить. Как сейчас не знаю, но у них вообще был курс по распознаванию образов.

----------


## lexar

> То что в открытом доступе то может взять каждый, тот же Люксофт, пусть даже если не все и кое что допиливать прийдется, тем более если задания близкие по роду деятельности.
> Ребятам же не предлагалось написать Зд шутер. А так уже готовые люди, да еще и с почти готовыми опенсорсными наработками. Ну да ладно. Это ж бизнес, тут ничего никому не должен за просто так.


 Если бы это был бизнес, у нас бы все ВУЗы такими лабораториями были утыканы.
И зачем нам для такого "бизнеса" открывать лабораторию в универе, если её можно было бы открыть в доме напротив с куда меньшим гембелем?
В том то и фокус, что до реального бизнеса ребята не доросли, вот и хочется как-то их к этому подтянуть.

----------


## Fallout

> Если бы это был бизнес, у нас бы все ВУЗы такими лабораториями были утыканы.
> И зачем нам для такого "бизнеса" открывать лабораторию в универе, если её можно было бы открыть в доме напротив с куда меньшим гембелем?
> В том то и фокус, что до реального бизнеса ребята не доросли, вот и хочется как-то их к этому подтянуть.


 Зависит от расходов в обеих случаях. В первом случае оно таки больше похоже на обучение, а во втором исследовательскую деятельность c какой либо оплатой.

Да и цитата со статьи на DOU, не наводит на мысли что это далеко от бизнеса:

_Если ребята сделают красивый доступный open-source прототип, то мы его можем демонстрировать, получить под него заказ — а готовая команда на разработку у нас уже имеется._ 

Если не секрет что кроме времени кураторов Люксофт еще вкладывает в этот проект?

----------


## lexar

> Если ребята сделают красивый доступный open-source прототип, то мы его можем демонстрировать, получить под него заказ — а готовая команда на разработку у нас уже имеется.


 Золотые слова, в том смысле, что я изрёк. Но это не бизнес. Бизнес не строится по принципу: если найду миллион - вложу в недвижимость. Это надежда. Бизнес на надеждах - прямой путь к банкротсву. Поэтому, основная задача была и остаётся образовательной.




> Если не секрет что кроме времени кураторов Люксофт еще вкладывает в этот проект?


 Не секрет. Отремонтировали помещение, поставили мебель и компьютеры, платим небольшие гранды студентам.

----------


## Fallout

> Золотые слова, в том смысле, что я изрёк. Но это не бизнес. Бизнес не строится по принципу: если найду миллион - вложу в недвижимость. Это надежда. Бизнес на надеждах - прямой путь к банкротсву. Поэтому, основная задача была и остаётся образовательной.
> 
> 
> Не секрет. Отремонтировали помещение, поставили мебель и компьютеры, платим небольшие гранды студентам.


 Я не вижу тут особых надежд. По факту за небольшие относительно небольшие вложения создается кузница кадров заточённая именно под люксофт, или я ошибаюсь и кто то еще занимается подобными направлениями? Ребят ведь не обучают мейнстримам украинского ИТ. А печальная действительность такова что если работодатель монополист на рынке вакансий то нормальной оплаты ждать не приходится. Идем дальше - а вдруг у ребят действительно что либо получится, так отлично, их можно нанять и свою работу они уже продолжат над закрытым кодом, да еще и портфолио будет готово этой команды если че.
Я вижу тут прямую и верную выгоду люксофта как ни крути в большей или меньшей степени. И это нормально ведь эта компания не благотворительный фонд. Но вот как то удивляет что ли когда компании прикрываются типа светлыми идеалами когда речь идет об обучении молодежи, и выставляют себя с нимбом (речь тут не только о Люксофте)

Ps это все мое ИМХО, вот если ребята таки пойдут дальше да и прямиком в какой нибудь гугле- вот эта уже надежда

----------


## oxigen_

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

----------


## Fallout

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


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

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

----------


## oxigen_

> Никто особо то и не спорит что лучше уж так чем вообще никак. Печально то что почему то сами институты не могут, не могут вести такую практику без какой нибудь конторки на "белом коне" c "меценатскими" намерениями. 
> 
> А вперед засветится чтоб попасть на эти проекты, потом на них поработать, потом попасть в сам люксофт, и поработав там полгода найти другую работу, во время всего этого добывая специфические знания для этой отрасли - это самый простой путь чтоб таки попасть в ИТ ?


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

Я так понимаю, что Вы за что-то не любите люксофт. Сам я там не работал, но по отзывам знакомых, работающих там, вполне нормальная контора. Далеко не худшая. 
Студенту после института не так уж и просто попасть в IT. И он должен идти куда угодно, только чтоб получить возможность написать в резюме строчку "опыт работы". А уж потом он сможет искать, что ему действительно по душе. И люксофт в качестве первого места работы - вполне нормальный вариант.

----------


## Fallout

> Я так понимаю, что Вы за что-то не любите люксофт. Сам я там не работал, но по отзывам знакомых, работающих там, вполне нормальная контора. Далеко не худшая. 
> Студенту после института не так уж и просто попасть в IT. И он должен идти куда угодно, только чтоб получить возможность написать в резюме строчку "опыт работы". А уж потом он сможет искать, что ему действительно по душе. И люксофт в качестве первого места работы - вполне нормальный вариант.


 Не сколько сам Люксофт, сколько типичные ИТ компании, да и саму сложившиюся ситуацию в ИТ в этом плане, еще и с попытками навязать какую то свою идеалогию в стране где никто толком не может гарантировать что будет завтра. Немного завуалировано получилось, но надеюсь многие поймут. А к Люксофту у меня ничего личного поверьте, в каждой конторе хватает "ньюансов", чтоб конторы оценивались по критерию _далеко не худшая_.

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

----------


## lexar

Флудите господа. При чём тут математика в прогрвммировании?

----------


## Fallout

> Флудите господа. При чём тут математика в прогрвммировании?


 Зато тему приподнимаем  :smileflag:  Можно кстати вообще еще создать соседнюю тему "применение программирования в разработке ПО"

----------


## хочувсёзнать

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

----------


## 18-я весна

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


 Давно хотел увидеть экстрималов которые хаскель в практических задачах используют ))

ЗЫ. Рекомендую здесь предложить как разовую работу:  http://www.sql.ru/forum/job-offers

----------


## БЮИк

> Препод должен научить мыслить как программист, изобретать... А не заставлять заучивать какую-то теорию, которая без практического подтверждения абсолютно бесполезна. ПМ - это ПМ, там готовят математиков. А вот ФИТ должен готовить программистов, но на практике обучение на ФИТе - это протирание штанов из-за галочки об окончании универа. Практически всем преподам абсолютно параллельно узнает студент что-то или нет. Да и ничего интересного толком рассказать не могут, кроме невнятной теории. Практики мало... Любая теория должна закрепляться практически. Помню был курс проектирования систем массового управления (вроде так назывался), так препод сам не понимал что он читает. Заставлял переписывать бредовую методичку и подставлять значения, которые он сам и давал по вариантам. Рассказывал про рыбалку и прочую ерунду. Это что обучение? Но и экзамен у него получить было не сложно. На прикладной всё немного не так, там мучают нудной, в большинстве своём ненужной, теорией. Практики тоже толком нет. Единицы преподов могут внятно объяснить, но опять-же, без практики это всё пустозвонство. Как уже писали, названия предметов завлекающие, а когда приходишь на лекцию, то понимаешь, что просто тратишь своё время. Не советую заморачиваться универом, надо заниматься самообучением, в интернете много статей и практических примеров. А универ можно закончить для галочки. И потом с лёгкостью устроиться в любую контору. И чем раньше начнёте, тем легче будет в будущем. Без работы сейчас никак...


 
Ребята, подскажите плз, нужно решить задачу:
-есть два ребенка, 7 лет, закончили первый класс, читают, английский начальный(1 класс англ. курсов), математика у одного отлично, второго надо подтягивать.
-есть мысли  учить их компьютерной науке.
-прошу совета у вас, людей, которые в этом понимают: с чего начать, как подойти, где искать препода, готов рассмотреть предложения об обучении детей у нас на дому (котовского), двоих сразу.
-для обучения нужно брать ноутбуки? или как организовать процесс? 
Простите, что не по теме, но думаю что только специалист по профилю подскажет как правильно.

----------


## хочувсёзнать

> Давно хотел увидеть экстрималов которые хаскель в практических задачах используют ))
> 
> ЗЫ. Рекомендую здесь предложить как разовую работу:  http://www.sql.ru/forum/job-offers


 а что с ним не так?))
сын, когда выбрал этот язык для своей дип.работы сказал, что Хаскел очень элегантный язык программирования))

----------


## OG

> Ребята, подскажите плз, нужно решить задачу:
> -есть два ребенка, 7 лет, закончили первый класс, читают, английский начальный(1 класс англ. курсов), математика у одного отлично, второго надо подтягивать.
> -есть мысли  учить их компьютерной науке.
> -прошу совета у вас, людей, которые в этом понимают: с чего начать, как подойти, где искать препода, готов рассмотреть предложения об обучении детей у нас на дому (котовского), двоих сразу.
> -для обучения нужно брать ноутбуки? или как организовать процесс? 
> Простите, что не по теме, но думаю что только специалист по профилю подскажет как правильно.


 начинайте с ассемблера

а вообще, конечно, 7 лет - это уже поздно. надо с 2 лет начинать.

----------


## хочувсёзнать

> начинайте с ассемблера
> 
> а вообще, конечно, 7 лет - это уже поздно. надо с 2 лет начинать.

----------


## Alochka

> Ребята, подскажите плз, нужно решить задачу:
> -есть два ребенка, 7 лет, закончили первый класс, читают, английский начальный(1 класс англ. курсов), математика у одного отлично, второго надо подтягивать.
> -есть мысли  учить их компьютерной науке.
> -прошу совета у вас, людей, которые в этом понимают: с чего начать, как подойти, где искать препода, готов рассмотреть предложения об обучении детей у нас на дому (котовского), двоих сразу.
> -для обучения нужно брать ноутбуки? или как организовать процесс? 
> Простите, что не по теме, но думаю что только специалист по профилю подскажет как правильно.


 Оставьте детей в покое. В 10 лет можете попробовать если интерес будет.

----------


## 18-я весна

> а что с ним не так?))
> сын, когда выбрал этот язык для своей дип.работы сказал, что Хаскел очень элегантный язык программирования))


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

----------


## 18-я весна

> -есть два ребенка, 7 лет, закончили первый класс, читают, английский начальный(1 класс англ. курсов), математика у одного отлично, второго надо подтягивать.
> -есть мысли  учить их компьютерной науке.


 Дайте им нормальное детство.
Раньше 12-14 лет никакого смысла нет этим специально заниматься.
Ну и математика к программированию никаким боком (не больше чем другие точные науки). Так что особо не упирайте на нее.

----------


## смысл

> Ребята, подскажите плз, нужно решить задачу:
> -есть два ребенка, 7 лет, закончили первый класс, читают, английский начальный(1 класс англ. курсов), математика у одного отлично, второго надо подтягивать.
> -есть мысли  учить их компьютерной науке.
> -прошу совета у вас, людей, которые в этом понимают: с чего начать, как подойти, где искать препода, готов рассмотреть предложения об обучении детей у нас на дому (котовского), двоих сразу.
> -для обучения нужно брать ноутбуки? или как организовать процесс? 
> Простите, что не по теме, но думаю что только специалист по профилю подскажет как правильно.


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

----------


## maxx™

> Ребята, подскажите плз, нужно решить задачу:
> -есть два ребенка, 7 лет, закончили первый класс, читают, английский начальный(1 класс англ. курсов), математика у одного отлично, второго надо подтягивать.
> -есть мысли  учить их компьютерной науке.
> -прошу совета у вас, людей, которые в этом понимают: с чего начать, как подойти, где искать препода, готов рассмотреть предложения об обучении детей у нас на дому (котовского), двоих сразу.
> -для обучения нужно брать ноутбуки? или как организовать процесс? 
> Простите, что не по теме, но думаю что только специалист по профилю подскажет как правильно.


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

----------


## Nikles

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


 100%. Например для этого возраста есть кружок робототехники, дочка коллеги туда ходила с удовольствием: http://legocenter-odessa.blogspot.com/

----------


## Мама Чолли

> Дайте им нормальное детство.
> Раньше 12-14 лет никакого смысла нет этим специально заниматься.
> Ну и математика к программированию никаким боком (не больше чем другие точные науки). Так что особо не упирайте на нее.


 Спасибо обнадёжили, что математика "никаким боком". 
Мой уже дорос до 14 и второй год настаивает, что хочет быть программистом, категорически против наших наставлений в пользу морской профессии. Но в его 14 мы имеем: 5 по математике, нарастающее нежелание или лень учиться в школе, постоянная тяга к комп.играм, ютубу... Стоит ли сына  отговаривать от программирования или помогать? С чего советуете начать? Пока ходит на Паскаль Сервера - нравится, до этого моделирование/программирование в Политехе. Что-то мастерит (калькулятор, бильярдный стол...)- я в этом ни бум-бум, оценить не могу. Заставляю слушать на ютубе видео на тему "Как стать программистом", "Какой язык выбрать"... 

Что дальше? 
Все красиво рассказывают в ютубе, зарплаты неплохие, всё вроде просто и красиво. Но читаю тут темку как сложно найти работу, какая конкуренция и цены на обучение... И задумываюсь: вложим приличную сумму в образование (Сервер, Политех), получит документ, а потом скажет - всё очень сложно, пойду в менеджеры-консультанты по продаже компьютеров. 
И опять вопрос: Стоит ли сына с 5кой по математике 8 кл. отговаривать от программирования или помогать? 
Спасибо.

----------


## 18-я весна

> И опять вопрос: Стоит ли сына с 5кой по математике 8 кл. отговаривать от программирования или помогать? 
> Спасибо.


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

----------


## [email protected]@NTiN

> Спасибо обнадёжили, что математика "никаким боком". 
> Мой уже дорос до 14 и второй год настаивает, что хочет быть программистом, категорически против наших наставлений в пользу морской профессии. Но в его 14 мы имеем: 5 по математике, нарастающее нежелание или лень учиться в школе, постоянная тяга к комп.играм, ютубу... Стоит ли сына  отговаривать от программирования или помогать? С чего советуете начать? Пока ходит на Паскаль Сервера - нравится, до этого моделирование/программирование в Политехе. Что-то мастерит (калькулятор, бильярдный стол...)- я в этом ни бум-бум, оценить не могу. Заставляю слушать на ютубе видео на тему "Как стать программистом", "Какой язык выбрать"... 
> 
> Что дальше? 
> Все красиво рассказывают в ютубе, зарплаты неплохие, всё вроде просто и красиво. Но читаю тут темку как сложно найти работу, какая конкуренция и цены на обучение... И задумываюсь: вложим приличную сумму в образование (Сервер, Политех), получит документ, а потом скажет - всё очень сложно, пойду в менеджеры-консультанты по продаже компьютеров. 
> И опять вопрос: Стоит ли сына с 5кой по математике 8 кл. отговаривать от программирования или помогать? 
> Спасибо.


 Высшее IT образование лишним не будет и будет приветствоваться в зарубежных компаниях. У нас пофиг на диплом\бумажку с курсов\записку от родителей. Работу найти всегда сложно начинающему. Главное - желание и труд, как и везде. Если будет работать много и усердно, а главное в удовольствие, то найти работу будет вообще не проблемой.

----------


## Mayya

Ребята, всем привет! Может кто-то подскажет или направит в нужное русло - не могу разобраться с программой SPSS.. Уже смотрела и видео-инструкции, и читала - не могу въехать.  Беда какая-то((((, может кто поможет? Ну очень надо!!

----------


## 18-я весна

Маленький совет тем кто хочет направить детей учить программирование.
Точнее подсказка. 
Надо начать работать программистом как можно раньше. В идеале сразу с началом учебы. Можно бесплатно стажером, но лучше за зарплату - чтобы с тебя требовали результат.
Вообще, практика тут самое важное.
Дело в том что наши институты (а также курсы Шаг, Сервер) не учат профессии программиста. Они учат общим знаниям с некоторым уклоном в компьютеры (скорее всего и по другим профессиям такая же ситуация). 
Поэтому собственно программированию придется учиться самому уже непосредственно работая.
А значит надо начать это как можно раньше. Потому что порог вхождения в профессию до момента, когда заработок достигает тех значений ради которых люди идут в программисты, довольно высок. 
Это занимает годы. И 5 лет просиживать в институте без практики - непозволительная роскошь.

----------


## maxx™

> Маленький совет тем кто хочет направить детей учить программирование.
> Точнее подсказка. 
> Надо начать работать программистом как можно раньше. В идеале сразу с началом учебы. Можно бесплатно стажером, но лучше за зарплату - чтобы с тебя требовали результат.
> Вообще, практика тут самое важное.
> Дело в том что наши институты (а также курсы Шаг, Сервер) не учат профессии программиста. Они учат общим знаниям с некоторым уклоном в компьютеры (скорее всего и по другим профессиям такая же ситуация). 
> Поэтому собственно программированию придется учиться самому уже непосредственно работая.
> А значит надо начать это как можно раньше. Потому что порог вхождения в профессию до момента, когда заработок достигает тех значений ради которых люди идут в программисты, довольно высок. 
> Это занимает годы. И 5 лет просиживать в институте без практики - непозволительная роскошь.


 Програмування це одна з тих речей, де можна здобути досвід вдома. Не буде тільки досвідц комерційної розробки.

----------


## brought

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


 напишите цифру  ради которых люди идут в программисты в Одессе?

----------


## 18-я весна

> напишите цифру  ради которых люди идут в программисты в Одессе?


 Рыночные зарплаты в Одессе - 1000-5000 долл, в зависимости от направления и опыта.

----------


## Мама Чолли

> Маленький совет тем кто хочет направить детей учить программирование.
> Точнее подсказка. 
> Надо начать работать программистом как можно раньше. В идеале сразу с началом учебы. Можно бесплатно стажером, но лучше за зарплату - чтобы с тебя требовали результат.
> Вообще, практика тут самое важное.
> Дело в том что наши институты (а также курсы Шаг, Сервер) не учат профессии программиста. Они учат общим знаниям с некоторым уклоном в компьютеры (скорее всего и по другим профессиям такая же ситуация). 
> Поэтому собственно программированию придется учиться самому уже непосредственно работая.
> А значит надо начать это как можно раньше. Потому что порог вхождения в профессию до момента, когда заработок достигает тех значений ради которых люди идут в программисты, довольно высок. 
> Это занимает годы. И 5 лет просиживать в институте без практики - непозволительная роскошь.


 Спасибо, муж вычитал, что из 22 выпускников Политеха, проходящих собеседование, лишь один немного заинтересовал фирму, ищущую программиста. Что ВУЗы и прочие заведения в своей многолетней подготовке очень далеки от требований времени. Корочка никому не нужна, только мозги, опыт и знания/умения + хороший английский.
Интересно узнать каков процент, мечтающих и веривших, что станут программистами, отсеялись/сдались и на каком году/периоде попыток стать программистом это происходит. 
С какого возраста можно пробовать себя бесплатным стажёром, в 14 рано? Начинать с фриланса или какие-то ещё варианты есть?

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

----------


## 18-я весна

> С какого возраста можно пробовать себя бесплатным стажёром, в 14 рано? Начинать с фриланса или какие-то ещё варианты есть?


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



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


 Да, несколько лет до мидла в среднем. Хотя я знаю чувака который за 5 лет дорос до ЗП сеньора. Кому очень надо тот добьется ))

----------


## Alochka

> Спасибо, муж вычитал, что из 22 выпускников Политеха, проходящих собеседование, лишь один немного заинтересовал фирму, ищущую программиста. Что ВУЗы и прочие заведения в своей многолетней подготовке очень далеки от требований времени. Корочка никому не нужна, только мозги, опыт и знания/умения + хороший английский.


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



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


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



> С какого возраста можно пробовать себя бесплатным стажёром, в 14 рано? Начинать с фриланса или какие-то ещё варианты есть?


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



> Да, несколько лет до мидла в среднем. Хотя я знаю чувака который за 5 лет дорос до ЗП сеньора. Кому очень надо тот добьется ))


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

----------


## rlb

Хорошие ответы, только в общем ниочем и нифига не понятно   Правильное профильное образование как минимум помогает получить визу если едешь в офиц. командировку онсайт    А в общем парень проявил заинтересованность - о чем разговор дальше? Или вы хотите чтоб через десять лет придя из рейса он вам пинял что вы загубили ему жизнь, а так бы он давно сеньйором стал???  это типо шутки, но в каждой шутке есть доля... Если он на паскале полгода продержался, то программист из него может выйти , хотя некоторые преподаватели и смогут отбить желание - но надеюсь повезет  Если 7000 грн это более 50% вашего ежемесячного дохода , то курсы раз в два года, а остальное время пусть сам по интернетам ищет...

----------

