#173 3. "разгильдяйство пошло из-за невозможности ставить пары и оставлять на 2 год" +1000, вы нашли ещё одну причину (пятую =)
Я же имел в виду несколько иные причины, более полезные для нашей дискуссии – повышение сложности ПО. Не той сложности, о которой говорите Вы (сложность алгоритмическая, исследовательская), а сложности из-за увеличения числа элементов и связей системы (сложность "мощности", что-ли). Проще говоря – в наше время, чтобы качественно программить что-то, надо знать на порядок больше API, и утилит, чем в 90-х для аналогичной задачи. В итоге, опять же, всё хочу свести к мысли – специализация необходима. Необъятное необъять =((( Т.е., опять же, ПТУ рулят (т.к. алгоритмическая, исследовательскаясложность низка, но вот узкоспециальные знания – треба).
#173 4, 4.1 Всё-таки мы опять переходим на статистически незначимые вещи, которые уже нельзя принимать за факты =))) В масштабах хотя бы страны или ИТ отрасли вообще =)
#175 "Много знаний не бывает" +1
Недавно было проведеног исследование – старые навыки не пропадают со временем, т.е. мозг, в отличие от тела, не обладает способностью (свойством) атрофировать ненужные функции. Т.е. нейронные связи образуются, но не разрушаются никогда в течение жизни (кроме травм =).
Там на примере движений и пространственной ориентации проверяли.
#172 Это всё-таки оффтоп, т.к. я не вижу аргументации. Какова она? Просто свидетельства недостаточно, нужна аргументация (аналитика) или статистика (факт).
P.S. Угрозами покинуть группу нас не напугать =))) Всегда приятно, когда человек не обостряет ситуацию до бана и сам покидает группу =)))
#173 2. Хм, с одной стороны, все массовые поделки – сотовые, плееры и т.п. содержат алгоритмы ЦОС. С другой – эти алгоритмы примитивны или используются спецбиблиотеки (для эхо канселлейшен, например). Каков процент кода приходится на ЦОС в сотовом или плеере, как считаете? =) Про ИИ думал – так и не увидел, где оно применяется массово (софт модемы разве что на ум приходят =). Приведите примеры, пожалуйста.
У нас, например. Для первачков. Ибо первачок должен не просто лабать проги, но лабать ПРАВИЛЬНО. И второе. Программер должен уметь не только правильно лабать проги, но и грамотно писать, и уметь разговаривать с заказчиком (то есть с преподом).
Николаю Фоминых. Этот метод – из средневековья… Метод стать хорошим мастром___ (подставить по своему усмотрению) – учиться у других хороших мастеров. И в настоящее время – это не единственный метод.
Мишке Ховричеву.
Много знаний не бывает. Я вот писал на алголе и фортране. А сейчас пишу на С++ и Компонентном паскале.
Тебе еще много раз придется менять инструумент (язык программирования), так что не зацикливайся на одном.
здрасте =) я присоединюсь)) ответить на вопрос пока не могу, ибо я самоучка сам, да и маленький еще, 14 лет)) почитав предыдущие посты (взрыв мозга!) я понял, что можно. Но хочу немного отклониться от темы. Вот я изучаю Python (это к примеру, я еще только VB.NET осваиваю) , изучил довольно глубоко, а надо мне идти в институт. А там только экзамен по С++ или что-нить в этом духе. и как быть?? может, я чего-то недопонял??
Смотрителю.
2. По поводу специфики задач и ограниченности предметной области ЦОС и ИИ. В настоящее время это уже не так. Если в 80-е годы это действительно был передний край, то сейчас методы ИИ включаются удже прмо в учебные курсы. Причем не конкретно ИИ, в, например, анализ данных – там дофига этих вещей. Не говоря уж о прогнозах . Или вон распознавание всяких бланков для тестирования – у нас несколько дипломов было на эту тему. А интеллектуальный поиск – это же прям вот уже насущнейшая проблема! И в обучающих системах, которыее скоро начнут появляьтся непосредственно на рынке – дофига ИИ. А генетический алгоритм – это один из лучших методов оптимизации!
3. Причина снижения уровня обученности контингента кроется, конечно же в школе. Я разговаривал с учителями неоднократно. се как один говорят, что разгильдяйство пошло из-за невозможности ставить пары и оставлять на 2 год. К нам в 94-м году поступила группа из 25 человек – отличные ребята. Они сдавали 4 экзамена: русский математику, физику и английский. Из 100 оценок было только 2 тройки. Выпустились они в 1999 году. И через 10 лет – в 2004 году группа пришла – выпустилась в 2009. Они в массе своей были слабее. Но еще приличные по сравнению с 2005 годом. Мы тогда сдуру "сохранили контингент" – теперь кошмар с защитами. После них мы вычищаем на 1-2 курсах. Обычно остается 15 вполне приличных студентов, из которых 2-3-4 уровня 94 года.
4. Бизнес может и задает направление. Но еще и наука сама по себе развивается. Я больше ученый по натуре. Мне ИНТЕРЕСНО!
4.1. Наши выпускники, те самые 15 человек, имеют отточенные навыки. В городе выпускники нашей кафедры котируются намного выше, чем все остальные выпускники всех институтов и кафедр вместе взятые.
Константин, по поводу #167: это был не офтоп, а ответ на твой пост #162:
"1. Это специальные знания, которых у выпускника как раз нет. Он решит олимпиадную, но не промышленную задачу. И наоборот. Подробнее – поищите тему олимпиады против промышленного программирования."
Если здесь за аргументированное выражение своего мнения по поднятым вопросам принято выдавать предупреждения, я с радостью покину эту группу.
2. Да, меня тоже приглашали в ЦНИИХМ по поводу дронов… Но, тем не менее, вокруг меня дронов мало, а сотовых/компьютеров/iPodов/iPadов и т.п. даже перебор. Если говорить "про зарплату" – то 1Сников в нашей стране, по-видимому, больше, чем всех остальных вместе взятых…
Область спецприложений (ЦОС, ИИ) крайне ограничена, Вы с этим не согласны? Можно будет привести факты, если не согласны.
3. Допустим. А в чём причины? Подумайте, что изменилось с 90-х годов? (Но, предостерегаю, попытайтесь найти иные ответы кроме "разруха"; есть мысли? =)
4. Бизнес-то и задаёт направление развития чего-либо в рыночном обществе. Это, кстати, отсылка к вопросу 3 =))) Как ещё одна (третья) альтернатива =)))
4.1 "Я не смогу ДОВЕРИТЬ работу неспециалисту" – а выпускник и бедет неспециалистом, т.к. не имеет отточенных навыков программирования по сравнению с самоучкой такого же возраста. Я тоже не могу доверить работу по программированию неспециалисту (ведь речь о программировании, а не исследовании или кодировании). Или вы считаете, что выпускник обладает специальными знаниями (теперешний, а не 90-х =)
P.S. А ещё интересная мысль – почемы же Вы написали книги по С++, а не по ЦОС, например? Это к вопросу 3 как, возможно, четвёртый альтернативный контраргумент.
Смтрителю.
1. По определению терминов – полностью согласен…
2. По особенности задач, коими я занимался, как раз не согласен. Просто это задачи были для вояк, а они, как известно, впереди гражданских идут. Еще в 1975 году меня приглашали в ВЦ КГБ Узбекистана работать над задачами распознавания образов. Типа две фотографии и надо разобраться, один человек или нет. Или сличение двух отпечатков пальцев.
Но и зарплате и АСУ я отдал достаточно времени и сил… Просто после 91 года я дал себе обет никогда не тратить свое вреемя на АСУ и в частности, на бухгалтерию…
3. По поводу ваших размышлений о совсем не средних студентах, способных применить генетический алгоритм для обучения нейронной сети – тут я полностью согласен. Это совсем не средние студенты. Но должен сказать, что в 90-е годы у нас таких было абсолютное большинство. Но постепенно этот поток все редел и сейчас уже таких студентов буквальноединицы на курсе. Хотя попадаются…
4. Я никогда бизнесом не занимался. Если я решу начать свой бизнес, то, конечно, я буду смотреть разные модели, но… Скорее всего в силу особенностей моего характера и мышления я не смогу использовать модель с домохозяйками. Я не смогу ДОВЕРИТЬ работу неспециалисту.
#164 Научить можно… Забудет или нет – зависит от того, будет сталкиваться с этим или нет – вы об этом случае и пишете (что нафиг им это не нужно), перечитайте сами себя =) Плюс случаи клинического идиотизма и 9 классов с тройками, конечно, не берём. Также не берём и случаи, когда человеку это не интересно (это пересекается с отсутствием необходимости).
Какие ещё аргументы остались против? Хотя, забейте, тут мы уходим в сторону (откройте новую тему, если хочешь обсудить)
По сабжу.
1. Специальные знания для олимпиад – математика. Также я подразумевал (думал, что это всем очевидно) и навыки к этим знаниям. Вы говорите "каких-то основ" – мне это в ответе и не нравится. Назовите конкретно, каких именно. Сравните свой ответ с ответом Валерия, чуете разницу? =)
2) А как остальные части данного контраргумента? Попрошу впредь не вырывать фразы из контекста. Я-то вас понял, хотя вы так витеевато попытались рассказать о 5% творческих людей, но вот вы меня не поняли – перечитайте пункт 2) поста #162 ещё раз.
Но, в любом случае, остаются ещё вопрос 2. и 4 пункта контраргументов О_о
#159 По поводу того, что вы бы никогда не взяли на работу домохозяйку со знанием Ява -почитайте про модель CMMI for Development, увидите, что можно вполне успешно вести бизнес и такими мерками. Это иная модель бизнеса, в основном – оутсорсинговый бизнес, который и является массовым. Компании наподобие Майкрософт, Гугл, подавляющее большиснтво стартапов – пропагандируемая вами модель. Но, повторяю, она не единственная и не только она работает. Специализация всё же берёт своё, и только такой подход даёт гарантированный результат (прежде всего, по срокам разработки ПО, что важно для аутсорсинга).
Вообще, пообщайтесь на эту тему с каким-нить менеджером =) Поскольку именно они главные в вопросе программирования
По поводу вуза – я рад за вас (без иронии). Однако, мы статистику берём или нет? Но, я не об этом даже, а ещё раз о специализации. Это важный принцип, поскольку человек – сильно ограниченное существо. помните Козьму – "никто не может объять необъятное"? Так и здесь. Знают ли ваши студенты, например, быстрые аналоги преобразования Фурье? Способны ли они применить генетические методы к обучению нейросети? И т.д. и т.п. – чтобы всё это знать, человек должен быть выше среднего, среднестатистический студент просто не потянет такой объём знаний, да и не охватить за 5 лет все тонкости всех специализаций.
Так что, быть может, обсудим насколько общие вещи даются в вашем вузе? =)
#165 Да, я в таком ключе и хотел ответить. Тем не менее, я имею в виду всё же инженеров-программистов, а вы говорите уже о программистах-исследователях, которые и должны являться учёными, а не просто инженерами или "рабочими". Если у вас задачи на нейронные сети или разработку преобразования Фурье решают инженеры – это проблема. Инженер может и не знать вяких узкоспециальных вещей, да и НИОКР инженер провести не способен – это не его задача.
Плюс, мне видится, что вы путаете массовость подходов – нейронные сети и т.п. это как раз немассовые вещи, а мы рассматриваем именно большинство случаев. В большинстве случаев нам нужны лишь инженеры-программисты (не кодеры, т.к. они не умеют работать с архитектурой), кодеры и учёные нужны в меньшем количестве случаев, и это, в принципе, отдельные профессии.
На том и порешим?
Т.е. на уточнении терминов инженер-проектировщик (инженер-программист, программист), кодер и программист-исследователь.
P.S. Вообще, вашей позиции про "универсала" противоречит всё развитие нашей цивилизации – всё постоянно специализируется, и программист – это лишь способный по ГОТОВЫМ спецификациям получить программу человек. Спецификации (алгоритмы и т.п.) готовит уже не он, т.к. он в них просто не разбирается – на это есть аналитики и программисты исследователи (ну или просто учёные, ВУЗы, получившие задачу на НИОКР).
По-иному построенные бизнес-схемы мало распространены – возможно,Ю только в фирмах с крезанным бюджетом, где программист делает и то, и это, и ещё систему администрирует. Но в таком случае он уже не программист =)
P.S. По первой части – пост #161 "А потом уже на этом языке написали модель парохода и систему обучения.
Так что я занимался не только академическими задачами." – это как понимать? Как раз и есть прямо таки академическая вестч =))) Т.е. в вашей узкой специализации (ИИ, например, или ЦОС – чем вы занимаетесь) программисты мало применимы, а тем более кодеры. Вам нужны к.т.н. – программисты-исследователи, причём много и по разным направлениям (иначе решения не будут самыми эффективными).
Смотрителю.
Понятно. Мы по-разному рассматриваем понятие "программист". Для вас это просто кодер. Для меня – это инженер-проектировщик. Я согласен, что для кодера достаточно ПТУ. Но для инженера-проектировщика – недостаточно.
Я думаю, вуз должен готовить инженеров проектировщиков.
ну не знаю кто такие эти программисты-олимпиадники))) меня просили ездить на олимпиады, потому что больше некому было….
а на счет промышленных задач, смотря какие, симплекс метод когда-тоосвоил, думаю, что некоторые задачи решить смогу… ну возможно я не способен к программированию, но приходилось разрабатывать программы для узи, дополнения к программному обеспечению томографов, рентгенов, так же создавал программное обеспечение для наладки приборов энерго-учета.
>>1. Это специальные знания, которых у выпускника как раз нет. Он решит олимпиадную, но не промышленную задачу. И наоборот. Подробнее – поищите тему олимпиады против промышленного программирования.
какие специальные знания??? логарифмы, пределы, интегралы, производные??? ну извините это в школе еще преподают. да и брат тогда еще только заканчивал школу и никаких спец знаний не получал.
а примером я хотел показать, что не зная каких-то основ написать программу можно, но долго и не "профессионально".
ну если можешь научить любого, ну попробуй взять человека лет 40-50, который почти 30 лет работал на одной работе и делал всегда одно и то же, и на учи его… возможно он и научится, что мало вероятно, но очень скоро он это забудет.многие преподаватели, что у меня преподавали так же вели курсы по повышению квалификации(в основном на предприятиях) и они сами говорили, что учить людей в возрасте очень сложно, потому что как человек работал 20-30 лет так он и будет работать, его обязанности никак не изменятся, и эти знания никак не помогут ему прокормить семью, устроить ребенка в школу, а голова у них забиты житейскими делами, а не новыми научными знаниями…. (прошу не обобщать, я говорю о основной части населения, а не о индивидах).
>>2) Ваше мнение противоречит статистически подтверждённым данным – например, посмотрите статистику математических открытий по возрасту учёных.
я не говорил, что в 25 или 30 или даже 40 лет человек не может что-то изобрести или открыть.и как много людей открывших что-то новое, относительно всего населения планеты? поэтому мое мнение никак не противоречит вашей статистике. если не поняли, тогда ответьте на вопрос: почему дети не получают по несколько высших образований в 10-12 лет, хотя некоторые на это способны?
Константин, мнение о неспособности программистов-олимпиадников решать промышленные задачи – это достаточно распространенное заблуждение. Особенно, если учесть, что оно исходит от неолимпиадников. Большинство моих знакомых-олимпиадников являются очень хорошими программистами.
Вообще, на поставленный в топике вопрос ответ однозначен – да, может, это факт: мне известны такие самоучки (и здесь даже одного профессионала-самоучки хватит, чтобы ответить положительно =). Мы же здесь обсуждаем уже несколько другую тему – что ПРАВИЛЬНЕЕ и СТАТИСТИЧЕСКИ вероятнее в плане профессиональзма – самоучка или вузовец, пытаемся оценить вероятность успешности самоучки. Причём, мы сейчас рассматриваем неизвестный возраст, а ведь можно рассмотреть градации выпускник/специалсит менее 3 лет/более 3 лет и т.п, тогда в первой возрастной номинации ("выпускник", 21-22 года) однозначно победят самоучки… Но это обсудим позже.
#152 Это, конечно, так, только мы рассматриваем крайние случаи, чтобы прояснить именно самоучек, а не кого-то ещё.
#156 Это я и называю "отсутствие специальных знаний", страшного здесь ничего нет, но это контраргумент против образования. Вообще, моё мнение – программистам ВУЗ не нужен, ВУЗ готовит учёных, исследователей. Программистам нужно ПТУ. Но, это мы ещё обсудим (я к этому и клоню =)
#157
1) Откуда постулат "все другие знания тоже нужны"? Даже если и так (докажите), почему школьных недостаточно?
2) Ваше мнение противоречит статистически подтверждённым данным – например, посмотрите статистику математических открытий по возрасту учёных. Кроме того, есть научные данные по развитию мозга – например, поищите скорость образования новых связей в мозгу в зависимости от возраста. То, что с возрастом процессы обучения замедляются – это факт =( А приведённый вами аргумент действует и на самоучек тоже – получается, всё-таки, что они усвоят на 5 лет больше знаний =)
3) В армии потерял только год (два), т.е. 3 года всё равно есть в запасе.
4) Статистика здесь важна не для того, чтоб её собирать, а как показатель неаргументированности единичных случаев.
5) Я уверен, что смогу научить базовой Яве любого за 2 месяца (обладающего только школьными знаниями, пусть даже и без Паскаля). По крайней мере, мне пока не попадались иные случаи. Может, я что-то делаю не так?
1. Это специальные знания, которых у выпускника как раз нет. Он решит олимпиадную, но не промышленную задачу. И наоборот. Подробнее – поищите тему олимпиады против промышленного программирования.
2. Это ваше ИМХО, где аргументация?
По поводу ЗЫ – см. #158, может быть он что-то сделал не так? А, может, вы просто не способны к программированию. Я вот, допустим, лет 15 назад учился играть на фортепьяно – и где моё умение? О_о
Роман Белоус.
Я рад за вас. Мне логистика – не интересна. IP-телефония – тоже. А вот мы делали однажды для питерской конторы интересную задачу: тренажер для обучения командиров различных подразделений на пароходе…
Там задача состояла в том, чтобы на компьютере создать модель парохода, на которой командир главный дает вводную об аварии. А командиры подразделений должны предпринять ряд действий по ликвидации аварии.
Дык мы при реализации этой работы сначала реализовали и пристегнули к языку программирования PL-1 лисп. Затем придумали язык программирования для адекватного представления задачи, написали интерпретатор для этого языка на связке PL+Лисп. А потом уже на этом языке написали модель парохода и систему обучения.
Так что я занимался не только академическими задачами.
На заводе Красный Богатырь в Москве несколько лет крутилась моя заплата…
Видимо, Валерий, вам просто не везло с самоучками) В общем-то, обсуждение зашло в тупик. По третьему кругу повторяется уже сказанное. И ещё, как я понял, весь ваш опыт сосредоточен в академической среде и больше на системном уровне.
На прикладном уровне и у крупных промышленных разработчиков ПО – своя специфика. Там, зачастую, действительно ниже порог вхождения, и необходимы разнородные команды – от начинающих до экспертов. И задач на прикладном уровне помимо "асучных" – хватает) Я, например, работал над весьма комплексной логистической софтиной, а сейчас работаю в области IP-телевидения. Могу вас уверить, что интересных задач там масса, и интересны мне они не от моего малого опыта и незнания алгоритмов) А вот системный уровень мне не очень интересен.
ЗЫЖ Может быть, конечно, в вашей терминологии примитивные АСУчные задачи – это все не системные задачи,я не в курсе)
ЗЗЫЖ Лицензионное ПО – это вчерашний день! Да здравствует Open Source! =)
Константину.
1 и 2. Самоучке может хватать знаний в той конкретной области, куда он пошел работать. А пошел он работать в очень ограниченное количество мест. Только туда, где нужны знания только конкретных языков и технологий. Задачи в такой конторе совершенно типичные – асучные. Например, его никогда не возьмут в контору, где надо писать компиляторы. Или он ПРЕДВАРИТЕЛЬНО должен изучить все про написание компиляторов. А когда? Он же работает на другой работе!
То есть, параллельно с работой он должен изучать совершенно незнакомую для него область. Причем, глубоко. Если он это сможет, то я его первого на работу возьму… Нам такие люди ВО КАК НУЖНЫ!!!!!!
Тут уже приводили пример про распознавание речи – надо знать разложение в ряд Фурье… Даже для написания FineReadera требуется знание нейронных сетей – а их надо уметь обучать… А это – метод градиентного спуска…
У нас внедряли систему тестирования, дык надо было писать прогу распознавания бланков с ответами – это дипломный проект. Пацан серьезно покопался в тематике распознавания образов. А там такая математика – мама не горюй!
Насчет расизма… Это не расизм, а нормальное собеседование… Я в жизни не только программистом и преподавателем был, но и заведующим кафедрой и главным инженером проекта и начальником отдела… И естественно, собеседовал… И вынес вот такой опыт: если у человека есть диплом, он имеет преимущество перед тем, кто его не имеет.
Про Ява для дромохозяек лучше не надо – я такую домохозяйку на работу НИКОГДА не возьму… И не только я. Мои выпускники-руководители тоже никогда не возьмут. А возьмут на работу наших же выпускников ибо знают качество подготовки.
Насчет того, что вуз мало чему учит.Смотря какой вуз и какая кафедра. Во-первых, у нас после 3 и 4 курсов есть производственная практика. Студиозы сами находят предприятие, где будут проходить, и приносят официальное письмо от директора. С просьбой направить студента для прохождения. Если сами не находят, мы им находим – у нас дофига предприятий, где наши же выпускники работают и/или директора. Или засовываем их в отдел АСУ нашего ВУЗА – а там тоже наши выпускники работают начальником.
Во-вторых, начиная с третьего курса мы самых сильных студиозов принимаем на работу в отдел АСУ, сетевой и еще есть пара штук. Например, в библиотеке девочка работала, и делала для библиотеки нашего вуза сайт. Хороший получился диплом…
Поэтому к диплому они РЕАЛЬНО все умеют и знают. И в команде работать – тоже. И самые современные технологии – тоже знают, ибюо у нас все ПО лицензионное, и АСУ работает на самых последних версиях от Микрософта.
Короче, у нас таких очников, что не могут на 4 курсе написать программу для решения квадратного уравнения, просто нет. Среди заочников – есть. Больше половины. Но тут мы просто ничего не можем сделать. Заочники платные и к тому же, индивидуальные планы у них. Когда сдаст, тогда и сдаст. У нас один заочник учился 10 лет. На 11-й защитил диплом… В свое время вылетел с дневного.
Я вижу к обсуждению присоеденились преподаватили, поэтому у меня к ним вопрос, как на четвертом курсе специальности Программная Инженэрия досих пор учатся люди что кроме "хэлоу ворлд" наврятли чтото могут написать, это не тема этого обсуждения поэтому я создал новое, а здесь написал(надеюсь меня извенят), чтобы не потерять ваше внимание
любой программист может стать профессиональным, если у него будет не малый опыт за плечами. ВУЗ дело хорошее и наличие диплома это как минимум статус. Но в основном в ВУЗах учат основам, а вот тонкостям научишься только сам, а следовательно нужен опыт. Да и не всякий студент в свободное время пишет программы, большинство учатся для корочки и не планируют идти работать по профессии (такова печальная статистика).
Константин Смотритель, ждал возражений по пунктам))) вот они::
1) если самоучка будет только учиться кодить, то он точно будет подтверждать стереотип(худого, волосатого и разговаривающем на непонятном языке), все таки другие знания тоже нужны, хотя бы основы (конечно не все, что преподают в ВУЗе)
2)да, после 22 лет человек хуже усваивает и запоминает информацию, но только в тех случаях, когда эта информация не очень важна и тем более не интересна. А вот когда человеку это надо знать и он хочет это знать, и ему это нравится, то он быстро запомнит и усвоит.
3)если программист не пошел в ВУЗ или колледж, то он пошел в армию (в большинстве своем. Все таки девушек среди нас не так много).
4)статистика конечно нужна, но вот собрать ее большая проблема
5)попробуй мою маму научить Яве за 2 месяца! я лет 5не могу научить нормально пользоваться компьютером…а вообще, если есть уже какие-то знания (несколько языков программирования), то выучить еще 1-н не составит труда, но опять же тонкости познаешь только с опытом. да и учить то не требуется, главное синтаксис понять, чтобы хоть что-то написать, да и на работе не будут спрашивать знание всех процедур и функций…..
>>1. Каких знаний не хватает самоучке? (Конкретные примеры)
вот пример: мне было лет 12-14, я участвовал в окружной олимпиаде, помню не смог полностью решить одну задачу, там нужен был сложный алгоритм составить используя математику, поэтому написал программу на половину… мой алгоритм занимал порядка 40 строк, а мой брат, составил алгоритм из 5-х строк, который превосходил мой по функционалу раза в 2-3… а все это из-за не знания математики…
другой пример: пишу CMMS(система управления техническим обслуживанием), в ней нужна аналитика, но без знаний о системе массового обслуживания, графах и других знаний высшей математики и мат. экономики можно такого там намудрить……
>>2. Хотелось бы аргументации, почему он их сам получить не в состоянии.
ну как минимум не все знания легко даются…иногда нужен человек, который доходчиво объяснит. например попробуй объяснить кому-нибудь что такое ротор и дивергенция, и как это применять в физике, экономике, да и вообще в жизни… мало кто поймет, а если он еще и сам читать будет, то точно ничего не осмыслит…
ЗЫ. в школе у меня не было информатики, вместо этого 2 года ездили в ВУЗ на курсы программирования, сдал кстати на отлично, а толку никакого, как сказали знающие люди, можно засунуть этот диплом в одно место….. да и на самих курсах нам давали то, что я знал и умел писать еще в 12 лет…
да и если человек не оканчивал ВУЗ, а опыт и знаний вагон, то и ВУЗ можно окончить экстерном…
Касательно того после кого сложно дописывать, рефакторить, я думаю это сюда никак не относится, тяжело дописывать после людей, что не работали в тиме.
Касательно третьего, что вы назвали расизмом, то я обращу ваше внимание на "..ПРОЧИХ РАВНЫХ…", я думаю что это подрозумевает что два человека претендующие на одно место показали (к примеру в тэсте) одинаковые результаты, и в полне логично склоница к человеку с образованием, не бросать же монетку.
И я наверно только могу посочуствовать тому работодателю, что возьмет на роботу человека окончившого курсы "Жавы" для домохозяек.
"Каких знаний нехватает самоучке?" – думаю, я бы никогда самостоятельно не взял того, что мне дал мой преподаватель с Дескретной матиматики и мой преподаватель с Теории Компиляторов(за что им огромное спасибо).
Вот мое субективное мнение, что неисключает то что я могу ошибатся.
Только идиоты и мертвецы не меняют своих убеждений, мы разумные люди и мы их меняем. (Бенито Муссолини)
#152 +1
#151 Я учусь и работаю с первого курса, почему бы самоучке так же не зделать, а не спецеализированые предметы с мозгами человека поступившего на программиста(покрайней мере на 3), не так сложно здавать и приделять тоже время програмированию, что и полному самоучке, я например кроме програмирования дома ничего не делал, а матиматику, физику изучал за час до контрольной и без проблем здавал на 5(правда контрольные были через пару)
Наши(постсоветские) ВУЗы, програмистам дают не совсем то, что требует роботодатель – я согласен, но они розвивают интелект, что на порядок важнее точных знаний, есть люди с энциклопедичискими знаниями, но элементарно неумеют ими оперировать, есть люди с небольшим(относительно) запасом знаний, но их интелект всегда помогает им адаптироватся к любой роботе, найти эти знания, использовать с максимальным КПД, и избавится от них при необходимости. Так вот этот интелект дает токо наш советский политех, с математикой, физикой, теореей вероятности(нащот которой, кто-то сильно возмущался).
Но с другой стороны, как я уже цитировал Энштэйна, делаю это ище раз:"Единственное что мешает моему обучению – мое образование"
С образованием ты теряеш свои шансы на изобретение чегото кардинально нового(тоисть если тебя обучили в школе дисятичной системе то на 11-ричную с такимже КПД перейти уже практически невозможным), я сам лично сталкивался с этим когда обяснял своему другу экономисту(очень далекому от програмирования) суть и решение одной задачи по Теории Компиляторов, дослушав он сказал:"Это все конечно круто, но почему вы не делаете вот так…".И диствительно, его решение было простым, как доска и выигрывало практически в всех показателях. Поговорив с преподавателем, я узнал, что он не видел,чтобы так это раньше решалось. Тоисть не один специализированый ум за всю исторюю ИТ(возможно я ошибаюсь) не пришол к этому решению.Нас убучают пузырьковой, быстрой сортировок, и наверное это в будущем избавляет нас шанса ивозможности посмотреть на проблему с другой ище незашаблонезированой стороны. Извеняйте за ошибки, я украинец
не хочу перебивать но
а что вообще мешает человеку учиться в ВУЗе и параллельно заниматься самообразованием, неужели приходиться выбирать только одно из двух?
комплекс методов дает в сотни раз большую результативность, чем какой-то один метод.
С нормальными мозгами можно стать профессиональным программистом и с ВУЗовским дипломом и с хорошими теоритическими и может даже практическими знаниями в какой-то специализации, по которой человек будет работать.
Оба варианта вполне доступны, ибо в универ с мозгами поступить не так уж и тяжело, да и за 5 лет самому можно будет занимаясь в свободное время поднакопить хороший багаж знаний.
Валерий, отлично, если по пункту невозможности впихнуть знания разногласий нет, то вопросы остаются (повторю их):
1. Каких знаний не хватает самоучке? (Конкретные примеры)
2. Хотелось бы аргументации, почему он их сам получить не в состоянии.
Пункт 3 – это ИМХО, оно ниоткуда не следует. Это расизм какой-то получается =) Тем более, судите по одному самоучке. Я самоучек больше знаю, и как раз код разгребать приходилось им за дипломированными специалистами =))) Предлагаю обсуждать конструктивно. Характер – это хорошо, но есть и бесхарактерные студенты =( Хотя, возможно, ответ "характер" подойдёт для вопроса 1, но тут нужна детализация – прошу её представить.
P.S. Контраргументы могу такие привести (для отличия – нумерация скобкой):
1) Пока студент учится всему, самоучка учиться только программированию.
2) После определённого возраста среднестатистический человек уже не так хорошо усваивает информацию – и выпускник находится после выпуска на грани фола, имеет общеподготовительные знания за 5 лет, а самоучка в том же возрасте имеет уже специальные знания.
3) Самоучка стал самоучкой потому, что ещё со школы у него получалось программировать, и он пошёл работать а не в ВУЗ. В ВУЗ пошли те, кто решил "может быть я буду программистом… а, может, начальником" =) В итоге, к 5 годам добавляются ещё школьные знания
4) Никто не застрахован от единичных случаев, мы рассматриваем вопрос конструктивно, следовательно, нужна статистика.
5) На западе существуют двухмесячные курсы по Ява для домохозяек (информация по памяти =). Значит, это работает?
1. Чтобы не было сомнений в моей компетентности как программиста. Опыт программирования более 20 лет. От типовых задач АСУ вроде зарплаты до операционной системы для бортового компьютера. Диапазон используемых средств: от восьмеричных кодов до языков высокого уровня, баз данных и интегрированных сред. Последнее время пишу системные программы по системному программированию на С++: интерпретаторы виртуальных машин, трансляторы ассемблеров для тех же машин, загрузчики, линкеры, отладчики, профайлеры. Собираюсь писать специализированную интегрированную среду для обучения языку программирования – выбираю инструментарий. Среди претендентов: Компонентный паскаль в среде БлэкБокс, С++ и/или С# в среде Дотнет. Более экзотические варианты: Питон и Руби.
2. Чтобы не было сомнений в моей компетентности как преподавателя: более 15 лет преподаю разнообразные дисциплины ИТ. Программирование (на Паскале, С/С++ и Ява), Объектно-ориентированное программирование (С++), Операционные системы (Window и WinAPI), Системное ПО, архитектура ЭВМ. Преподавал также Технологию программирования, Системы ИИ, Теорию информации и кодирования.
Написал пару книжек по С++ – изданы в издательствах БХВ и Питер. Можете найти по фамилии Лаптев В.В.
3. Лично я при ПРОЧИХ РАВНЫХ условиях из двух претендентов выберу претендента с высшим образованием. Уже само наличие высшего образования говорит мне о некоторых особенностях характера претендента. Имею опыт работы с гениальным самоучкой в течение 5 лет. Я был его начальником и мы писали бортовую ось. Парень мог написать ВСЕ, причем на ассемблере. Однако боже ты мой, какой УЖОС был за ним разгребать его тексты!
4. Полностью согласен с тем, что знания впихнуть невозможно. Но опять же, если рассмотреть двух претендентов без образования, но один студент, а второй нет, и оба ХОТЯТ, то я выберу студента, а не самоучку.
Опыт большой у меня, ребята.
Наличие самоучек в нашей сфере – это большая беда ИТ. Даже на права нужно экзамен сдавать. Хотя вполне можно научиться водить и без инструктора и ездить без прав…
#144 +1 Как профессиональный преподаватель во втором поколении могу подтвердить обратное: знания насильно не впихиваются (читать, впихиваются в меньшем объёме и длительнее, если ещё такого преподавателя найдёте – читать, репититора).
Вообщем, от противников положительного решения вопроса ждём ответов на #144 и #147, а также хорошо бы услышать определение профессионального программиста (а то см. #146)
Вопрос поставлен неверно. Верный вопрос: "Может ли программист-не самоучка стать профессиональным программистом?"
На верно сформулированный вопрос мой ответ – "нет" =)
Все кто пишут про "специальные знания" и прочее всегда забывают одно: сколько ты эти знания в студента/кандидата не впихивай, они не впихнуться, пока он сам того не захочет. Самообразование здесь стоит на первом месте. Каких-то "специальных знаний", без которых немыслимо программирование – вуз не даёт. Также и опыта вуз не даёт. Он учит только самостоятельности, может быть. И то не всех.
Впрочем, для конструктивного диалога – какие "специальные знания" есть у выпускника вуза и нет у самоучки? Раз вы так утверждаете, что они есть, приведите примеры.
По утверждению того же самого Макконела, в США нет нормального высшего образования для программистов (это на 2006 год, вроде). В России, думаю – тем более. Специальность "Прикладная математика и информатика/управление" – говоря откровенно, не то. С другими специальностями, как я полагаю, примерно то же самое. В то же время, потребность в программистах большая – поэтому неудивительно, что много самоучек.
Теперь, что касается "правильного программирования". Ему не учат. Базовые алгоритмы, структуры данных и инварианты циклов – это только часть качества кода, и не самая важная. Байесовы сети – это вообще частный метод.
Я когда пришёл устраиваться на работу, знал PHP, Java, Pascal и немного Haskell и С++, в универе был курс структур данных, дискретки, тв, информатики, мат.статистики, матана, системного по, дифуров и других страшных слов. Да, это учит системно мыслить, и это хорошо. Но я понятия не имел о том, что код который я пишу, нужно будет кому-то потом читать, изменять, что код развивается со временем. Я понятия не имел как можно декомпозировать задачу в терминах языка и что это можно делать по разному, понятия не имел об уровне предметной области, уровне языка и семантическом пробеле между ними, и естественно не знал, что с этим пробелом делать. Ещё, я понятия не имел, что такое фреймворк и архитектура. Имел довольно смутное представление о паттернах, хоть мы их и проходили. Не знал, что обычно все эти алгоритмы и структуры, как правило, уже кем-то реализованы и даже опубликованы с открытыми кодами и обычно их не просто не нужно реализовывать самому, а даже настоятельно не рекомендуется. Имел очень смутное представление о контроле версий и ещё более смутное о сборке. Не знал, что такое модульное тестирование и xUnit. Не знал, что такое рефакторинг.
Неудивительно, что я этого не знал, специальность у меня больше математическая. Но люди с более программисткими специальностями изучают в универах примерно то же, что и я, и также не знают все те вещи, которые я перечислил. Все они узнаются из практического опыта. Хотя можно было бы и преподавать.
ЗЫЖ А печатать 10-пальцевым методом я вообще научился меньше года назад. И сейчас считаю это одним из базовых навыков программиста.
ЗЗЫЖ Валерий, а вы что преподаёте? Это не провокация, просто интересно)
"И самостоятельно он их вряд ли осилит." – это, как я понимаю, базис всех ваших рассуждений. Суть моего с вами несогласия заключается в том, что я считаю это утверждение неверным. Как вы можете его подтвердить?
#141
Владимир, уж больно у тебя фамилия классная!
Навевает ассоциации – про имя забываешь
Но смотри, что ты предлагаешь-то. Ты сам учишься не на программиста. Очевидно, в той сфере, где ты образование получаешь, самоучек просто не принимают на работу без образования.
А в программировании ты считаешь, что можно и без образования.
Где логика?
Да, без образования можно кодить. И возможно, неплохо. Но ведь инженером без образования не станешь. А ИТ – это инженерная область.
Поэтому я и говорю, что без образования программисты-недоучки получаются.
Во-вторых, без образования самоучка обречен работать в очень узкой сфере – типовая обработка данных. Ну, вроде того, что делают системы SAP/R3 или 1С. Потому как специальных знаний, необходимых для других сфер деятельности у него просто нет. И самостоятельно он их вряд ли осилит.
Я учусь не на программиста, поэтому и защищаю права самоучек) Точнее не защищаю, потому что мне лень и потому что я заранее знаю что ты останешься при своей точке зрения и споры с любыми аргументами ни к чему не приведут, но вот такие мои короткие фразы возможно заставят тебя задуматься)
Кстати, обращаться к незнакомому человеку по фамилии – признак плохого тона) Но я не парюсь что тебе лень строчку с именем скопипастить, а набирать имя целиком – долго)
Можно. Но!!!!
Самоучка не обратит внимание на фундаментальные математические разделы. А недавно одна моя выпускница призналась (она уже начальник отдела АСУ у нас в вузе), что ей в работе все, что преподавали по математике, пригождается. Будучи студенткой, она не раз высказывала мысль, что нафига это учить или это. Типа никогда не пригодится. А вот теперь оказывается, что все это нужно и полезно в работе.
Самоучку не заставишь учить теорию вероятности… Или исчисление предикатов…
Александр, как мне кажется, расставил все точки над i в данном обсуждении) А на счёт "заставишь, не заставишь", – заставить человека вообще сложно. Если человек работает в программировании и ему нравится эта работа и в какой-то момент он почувствует необходимость в изучении ТВ, то он её изучит. Без специального образования ему будет сложнее, но справится. А если же человек работает только потому, что платят много, то никакое специальное образование ему не поможет улучшить его код, сроки и остальное. Просто потому, что ему пофигу. А вообще всё это мне напоминает споры теоретиков и практиков, о которых писал Роберт Гласс в книге "Software Creativity", раз уж речь зашла о конкретной литературе) Истина, как всегда, посередине.
Самое важное в систематическом образовании – оно выстраивает мозги. В правильном направлении. После обучения в вузе, если не сачкуешь и не дурак, – много легче учиться самому, чем без этого 5-тилетнего опыта.
Я вот старый, писал еще в кодах, на всех советских машинах. Но это не мешает мне осваивать новые технологии и преподавать их студентам. А самоучка так сможет?
да вот аргументы
есть некие знания
их можно освоить с учителем, а можно и без него. учителем может быть информатик в школе, преподы в ВУЗЕ, а может и наставник
зависит от учителя, если он хороший – пройдет процесс быстрее, естестенно.
но это не значит, что без учителя нельзя получить знания.
А вот вам и конкретный пример недоучки.
Алексей Орлов – порет откровенную чушь относительно стандартного типа C++ string и еще советует учить матчасть. А сам довольно простую прогу слабать не в состоянии.
По сути я с Валерием соласен.
Знание математики дает возможность решения более широкого спектра задач или же более рационального последних же.
В домашних условиях я, например, не понимаю как можно поднять ее на хороший уровень.
@Роман Белоус.
Все я понял. Но вот именно потому, что в профессию ломятся недоучки без фундаментальной подготовки, мы имеем такое положение в профессии сейчас. Более половины проектов срываются либо по срокам, либо по деньгам. Треть вообще закрывается. Это официальные данные, которые можно найти в сети. Макконел говорит о том же в книге "Профессиональное программирование".
В какой еще профессии разрешат заниматься профессиональной деятельностью без образования? Где можно найти самоучек, которые разрабатывают дома, машины, самолеты, пароходы? НИГДЕ!!
А в программировании – каждый второй!
Вот и сравните, профи это или нет. Совершенно очевидно, что – нет.
Я тут уже приводил пример, что при наличии знания об инварианте цикла чел пишет болееправильные циклы. Более надежные. Кто из самоучек хотя бы слыхал об этом, не говоря уже об использовании?
Самоучки изучают ТОЛЬКО ИНСТРУМЕНТ. Навыков ПРАВИЛЬНОГО программирования они не имеют и НЕ ПОЛУЧАЮТ. Потому и тексты программ такие, что УЖОС!!!!!
@Валерий Лаптев
Сочувствую) Вы, к тому же, кажется вообще не поняли о чём я говорю, зато обиделись на замечаниеи начали пенять своим опытом.
Я совершенно уверен, что дискретка – это хорошо и полезно. Но это менее важно, чем очень большое количество других вещей, в том числе "всякая лабуда", о которой вы писали. Если же вы считаете, что человек становится профессионалом только после минимум 10 лет работы, то вы используете какое-то другое значение слова "профессионал". Вероятно, смешиваете его со словом "эксперт".
Как я понимаю, топик – о начинающих программистах без специального образования, которые хотят сделать программирование своей профессией. Так вот – начинать им надо вовсе не с дискретки и прикладной математики, в чём вы и прочие пытаются их убедить. По крайней мере, это моё мнение, основанное на результатах моего обучения в универе, последующем трудоустройстве и имеющемся опыте работы. Кроме того, в рамках проекта на нынешней работе, я как раз изучаю вопросы управления навыками – что программист должен знать и уметь и как он должен развиваться со временем. Не буду утверждать, что я большой специалист, но я ознакомился с достаточно большимколичеством литературы, статей и подходов, применяемых в разных компаниях.
Я работал в одной фирме – два года подряд на SofTool первые в своей теме – там в программистском отделе (Программировали CMS, сайты – PHP и т.п., приложение – Delphi, другое – на Borland C++) – лишь треть с высшим образованием, один руководитель – с двумя.
to Роман Белоус.
Насчет моего ограниченного взгляда на программирование.
Вы говорите, что в программировании мало типовых задач. У вас просто МАЛО опыта. Если я говорю, что есть типовые задачи обработки данных, так это от большого опыта (20 лет программирования от написания операционной системы до зарплаты, и более 15 лет преподавания разнообразных программерских дисциплин). Опыт позволяет мне говорить, что задачиобработки данных – ТИПОВЫЕ, а для вас каждая задача – новье.
Поэтому не нужно говорить о моем ограниченном взгляде на программирование.
Профессионал – ДОЛЖЕН знать дискретку и уметь применять ее в повседневной программерской деятельности. Чтобы просто не изобретать велосипед, и не считать, что нет типовых задач…
Роман, во-первых, у слова профессионал имеется два значения:
- индивид,основное занятие которого является его профессией;
- специалистсвоего дела, имеющий соответствующую подготовку и квалификацию.
И топикстартер имел в виду именно второе значение.
Во-вторых, никто и не утверждает, что необходимо в совершенстве владеть всей дискретной математикой. Но нельзя говорить о профессионализме программиста, который не в состоянии дать асимптотическую оценку времени выполнения написанного им же кода. Или не может обосновать, почему его код корректно выполняет поставленную задачу.
По поводу SWEBOK… Разработка ПО и программирование – две разные вещи (программирование (дизайн+конструирование) является лишь одним из этапов разработки). Зачем в обсуждении программирования упоминать весь процесс разработки? В общем случае, программисту почти ничего не надо знать ни про сбор требований, ни про менеджмент, ни про QA.
И еще… В ней говорится не только что математика и информатика относятся к смежным дисциплинам, но и то что связь между ними обоснована, важна и фундаментальна.
Кстати, если вы ознакомитесь с документом SWEBOK (Software Engineering Body Of Knowledge), то обнаружите, что математика и информатика относятся к смежным дисциплинам, а не входят в состав инженерии ПО. Конечно, может быть, инженер по разработке – это не программист, но вроде эти понятия обычно считаются синонимичными. Этот документ также не является истиной в последней инстанции, но это неплохая инициатива по определению того, что входит в инженерию ПО. Рекомендую к ознакомлению.
Валерий, ни одна из вещей, что вы перечислили не делает из программиста профессионала. И если какой-то программист чего-то из перечисленного не знает – он не становится непрофессионалом. Естественно, если вы знаете, например, метод динамического программирования – хуже вам от этого не будет. Так что лучше знать. Но если не знаете, то вряд ли сильно вам это повредит. Может когда-нибудь столкнётесь с задачей, где он полезен, ну тогда и узнаете, добрые люди подскажут. А вот если вы не умеете пользоваться своей IDE, то это вам вредит практически ежесекундно. А по моим наблюдениям , многие программисты не умеют. И при этом, как ни странно, остаются неплохими специалистами.
Мы должны уметь решать задачи. Это общий навык. Динамическое программирование – частный. Если вы им владеете – это вам плюс. Но это не слишком важно. Это гораздо меньший плюс, чем вы пытаетесь изобразить. И ваши рассуждения про типовые задачи обработки данных, на мой взгляд, говорят вашемограниченном представлении о программировании. В программировании вообще довольно мало типовых задач. А если они встречаются, то немедленно возникает новая задача – автоматизировать типовую задачу. А если взглянуть с другой стороны, то баейсовские сети, о которых вы упомянули – вполне себе типовое решение типичной задачи классификации данных. В общем, ваши рассуждения мне кажутся неубедительными. Для деления же на любителей и профессионалов знание дискретки и т.п. – вторичный критерий, хоть и имеющий вес. Хотя часто при найме на работу студентов приходится ориентироваться именно на него, потому что всё равно ничего из того что действительно нужно – не знают и не умеют. Так пусть хотя бы в дискретке разбираются)
ЗЫЖ Да, кстати, профессионал – этот тот, кто зарабатывает на жизнь профессией.
Ребята, , что я перечислил – это лишь малая толика ОБЩЕПРОФЕССИОНАЛЬНЫХ знаний в ИТ. Например, если понятия не имеешь об инварианте цикла и цикле Дейкстры, то в целом твои циклы БОЛЕЕ ПОДВЕРЖЕНЫ ОШИБКАМ по сравнению с теми, кто знает об этих вещах.
Про вероятность – совсем смешно. Например, алгоритм классификации данных так и называется "Наивный Байесовский алгоритм". Это я не говорю о байесовских сетях, которые сплошь и рядом применяются в интеллектуальных системах. А что такое интеллектуальные системы? Да вон на Гугл посмотрите… Или наигры…
Конечно, если вас устраивает всю жизнь делать типовые задачи обработки данных, то многие знания просто не пригодятся. Можно и не знать. Но тогда у вас большие ограничения в выборе интересной работы…
Программист, конечно, не должен быть математиком (все же другая деятельность), но понимать должен. И обязан просто знать дискретную математику.
Иначе это – любитель.
>>видели в документе о высшем образовании специальность "программист"? Дословно:))
видел… есть такая специальность.
у меня например специальность "программист-экономист", еще часто называют "системный аналитик"
быть прогрмаммистом и математиком разные вещи. поэтому, если человек хорошо владеет математическим аппаратом, то это еще не говорит что он программист и вообще способен написать программу. нельзя просто взять и стать программистом! для этого нужны некоторые личные качества. например, хорошо выстраивать логические цепочки не каждый способен.знаю множество умных людей, которые отлично знают мат-ку, имеют аналитический склад ума и т.д., но программирование вообще не понимают…
я например не помню ни одного названия теорем и определений из матана, но зато написав мне формулу я могу вывести теорему и доказать ее, но название все равно не смогу сказать…
Да вот, у коллеги, например: СПб ГУ, мех-мат, системное программирование. И в трудовых договорах пишут "программист", "разработчик" или "инженер по разработке".
А на мой взгляд, наличие знаний ни CS (что вообще довольно размытая область), ни прикладной математики не является ни необходимым, ни достаточным условием. Единственно, что во что я готов поверить – это то, что в среднем есть положительная корреляция между опытом работы в индустрии и наличием и глубиной упомянутых знаний. Тем не менее, ничто не мешает быть профессионалом и их не иметь. Я например, не уверен, что Джоэль Спольски – крутой прикладной математик и специалист по теории информации, алгоритмам и криптографии. У меня есть коллеги, успешно решающие поставленные перед ними задачи, и не имеющие этих знаний. А если они им понадобятся, они их приобретут в необходимом объёме, если это возможно и целесообразно. Вот это и есть профессионализм, с моей точки зрения. Конечно, если я, скажем, спец по графическим интерфейсам, а мне предложат написать софт для управления атомным реактором, то я вряд ли справлюсь с задачей в разумный срок и с приемлемым качеством. И профессионализм здесь в том, чтобы донести до менеджера или заказчика, что они обращаются не к тому спецу.
Имхо, гораздо важнее, чем бытие сильным математиком – это знание принципов VCS, владение инструментами для сборки, навыки модульного тестирования, владение рефакторингом, умение ясно излагать свои и чужие мысли и так далее. Этому почему-то и не учат особо. А про CS, как правило, достаточно знать, что есть базовые алгоритмы и где их искать. Численные методы или теория вероятностей вообще подавляющему большинству программистов никогда не понадобятся.
Роман, а вы видели в документе о высшем образовании специальность "программист"? Дословно:)) Я не видел, зато видел "прикладная математика"))))
В моем посте речь шла не о задачах, решаемых человеком, а о его навыках. Мы обсуждаем профессиональных программистов. На мой взгляд, так можно называть лишь человека, более-менее знакомого с Computer Science.
Роман прав, наверное)
Дмитрий, если задача состоит не в математике – программист становится кодером)? Да взять тот же геймдев – проблема разрушающихся ладншафтов до сих пор не решена. Но всяко, когда ее решать, надо иметь человека, который бы представил, как это сделать, и человека, понявшего, как именно сделать то, что другой представил, не так ли?
Интересно, а вы где-нибудь в трудовом договоре или, скажем, в документе о высшем образовании видели специальность "кодер"? Сомневаюсь. На мой взгляд, эти рассуждения про "не путать программистов и кодеров" и "сильных математиков" – не более, чем снобизм. Некоторые задачи требуют больше математики, некоторые – понимания бизнес-процессов, другие – ещё чего-нибудь. И от того, что Вася реализует пользовательские интерфейсы, а Федя реализует численные алгоритмы, Федя не становится программистом, а Вася – кодером. Просто они специализируются в разных областях.
Давайте не будем путать программистов и кодеров. Профессиональный программист – в первую очередь сильный математик.
В этом смысле я полностью поддерживаю Валерия.
Александр, ты прав: для решения одних требуются профессиональные программисты, а для других достаточно хороших кодеров. Нужны и те, и те.
Может. Если не будет зацикливаться только на изучении инструментов (языков, осей, СУБД и прочей лабуде). А заглянет еще в математику и разберется, что такое инвариант цикла и что такое цикл Дейкстры… И что такое алгоритм поиска кратчайшего пути того же Дейкстры, и что такое алгоритм банкира того же Дейкстры… И что тако динамическое программирование Беллмана…что такое метод ветвей и границ, оно же – альфа-бета процедура…
А без этого – только любитель, хотя и продвинутый…
Господа, кто нить в курсе что за программа включает в опр промежуток времени рекламные ролики? В ресторане вещает какой то канал типа фешон тв но раз в 10 мин включается реклама этого ресторана, как они это сделали? Там не запись, ТВ вещает реально….
>> только в условиях распи$дяйства в семестр и жопы на сессии можно обрести навык быстро в крайне сжатые сроки разбираться в теме и выдавать результат.
Для этого не обязательно учиться на программера)))
может, хотя все таки подавляющее большинство действительно талантливых программистов имеют соответствующее образование.
пройти высшую школу стоит все равно, только в условиях распи$дяйства в семестр и жопы на сессии можно обрести навык быстро в крайне сжатые сроки разбираться в теме и выдавать результат.
#85
Romea Nelissen
Не знаю ни одного экономического, в котором бы давали хорошую матбазу по программированию. Экономисты не программированием занимаются…
Как-то раз я пытался на пальцах, своими словами, рассказать на экзамене по мат.анализу о том, что такое супремум. Меня выгнали))
Тутречь идет о том, что с Вас спрашивают не то, что Вы умете, а о том, что Вы должны знать с точки зрения плана.
я не согласен. если я понимаю и могу рассказать, то что у меня спросят, но только своими словами – это не значит, что я не знаю теории… и вообще сколько писал прогрмаммы для фирм, ни в одной меня не спрашивали о теории и ничего не расспрашивали о познониях в информатики… и в основном везде так… ИМХО главное не то, что программист помнит и может объяснить, а то что он умеет и может сделать.
я написал первую примитивную програмульку в 8 лет, у брата в школе началась информатика… потом начал заниматься этим, но через пару лет забросил… и вот пару лет назад опять начал программировать.. а вот на счет школы и универа – ничего нового в написании прог я там не узнал, пару раз сходил на информатику в универе – было такое чувство, что начинаю тупеть от тех знаний, которые там давали… например, когда дома начинаешь уже работать с ком-портами и с вин апи, приходишь в универ и тебя просят написать программу хаотичного движения шарика по экрану… а когда ты пытаешь сказать что ты знаешь намного больше, то тебя валят теорией…
Мммм… не думал что подобный "голод" встречается у девушек;)
Да, проблема с "кружками" и курсами для молодежи в России существует уж не первый день, но ты сама нашла выход – сеть. Internet – клад информации, тут ты найдешь то, что тебе не расскажет ни один преподаватель. Ну, вот представь, в университете тебе все объясняет один – два преподавателя, которые уже по отлаженной схеме выучили не один десяток людей. Если бы эти люди не совершенствовались сами, а только зубрили то, что говорят в университете – цена им нуль… Вывод напрашивается сам: да, образование нужно, но полагаться только на него нельзя, нужно самому(ой) стремится к знаниям.
Того, что преподают в школе на уроке информатики лично мне не достаточно… Прям голод чувствую какой-то… Никаких кружков в моём "городе" нет… Вот и приходится мучатся над скачанными из инета учебниками, вникать в суть, искать задачи и тд…
профессиональным программистом – запросто, главное опыт! а вот стать талантливым разработчиком без технической "вышки" врядли получится!
учиться, учиться и еще раз учиться!
а для такой специальности учиться придется всю свою жизнь.
в большинстве случаев профессионалами становятся именно самоучки, т.к. знаний интститутских маловато, вот и "роют" сами горы книг и ссылок
Было б желание!!
#73 – да я учился языкам программирования у преподавателей в институте. И после института было сложновато начинать работать программистом. А вот так что б без института и сразу работать не представляю как так можно … На работе не учат программировать, а требуют что б уже мог программировать, и все еще ограничивают сжатыми сроками. В институте преподают разные языки программирования, задают лабораторки с помощью которых будущий программист учится "азам" – самостоятельно решать функциональные задачи программирования от создания алгоритма программы, до правильно написанного кода (чтоб код был ООП, правильно написаны функций, что б не одной лишней переменной не было, что б код был как можно короче , если надо были вставки на других языках программирования, да их много заморочек по написанию кода…).
А в книжках можно синтаксис подсмотреть, и какие то функции списать…
"Литература обязательная к изучению" – такой не существует (по крайней мере, в моем понимании). Существуют материалы по синтексу какого – либо языка, алгоритмизации, ОПП….
товарищи специалисты, немогли бы вы дать список литературы, обязательной к изучению? Ибо сейчас столько книжек, хз какие по делу, а какие "вилами по воде".
Мне кажется, что преподаватель не обязателен, но вот наставник нужен обязательно. В гордом одиночестве и самообразовании ты никогда не станешь хорошим программистом. В нашей работе очень велика роль весьма расплывчатых черт личности, как коммуникабельность, умение находить информацию, практичность, и т.п. Об этом в книжках, в принципе, пишут, но начинающий просто их не поймёт. Ему нужно усваивать это долго и на примере. А "азы" которые обычно преподают в универах (алгоритмы и структуры данных) не слишком важны, с моей точки зрения. Их действительно можно изучить по книжкам.
#72, у вас был преподаватель?
Я знаю двух высококвалифицированных программиста, когда я спросил у каждого: кто тебя учил? он мне ответил: фантазия.
Что в принципе и мне помогает, если вы понимаете, о чем речь.
А что для вас: минимальные азы?
Если его возьмут на работу программистом без диплома и он там будет заниматься программированием + ему будут помогать профессионалы программисты. ))
Мое мнение навряд ли. По любому должен быть преподаватель, которые должен научить минимум азам.. Очень много моментов есть в программировании, которые не описаны в книгах. )
Сергей reliable Рыбьяков, не совсем так, обучение происходит во время обучения, на практике оно лишь закрепляется, если человек научился складывать и вычитать, то сколько он не складывай и вычитать умножать делить и считать интегралы не научится. я набираю текст, кое как его форматирую и возвращаюсь в командную строку или на худой конец в билдер, вот там моя жизнь. но с другой стороны если бы я умел хорошо работать в офисе и документ выглядел красивее оно было бы хорошо и полезно.
#40
напротив, обычно мастера и учат нас – пишут книги
#41
а тут я с вами согласен, если человек ставит себя выше других он не достоин ни уважения, ни даже сострадания
#54
если вы в школе брали деньги у друзей за свою хреновую (да простят меня, но яуверен что это правда) работу, ты вырят ли будете Программистом с Большой буквы
#56
у Программистов нет разделения на возраст, есть разделения на знания
#62
практика доказывает: обучение приходит во время практики, вы говорите что много раотаете с оффисом – тогда в своем после вы нас обманули)
#51/
Возможно, но учитель может пробудить интерес. Например, я увлекся всем этим еще в 7-м классе, когда приобрел тетрадь по информатике.
А потом, в восьмом, нас посадили за "Кенгуру" (если кто-нибудь помнит, что это). И все. Правда, к Паскалю и Прологу нас не подпускали, но я начал ходить в библиотеку (!) – нашел там учебник Могилева и Пака по информатике. В нем познакомился с Лиспом, Смолтоком и C, и учебным компьютером Е97. Даже после выпуска после 9-го я пошел и к учителю и достал там ТП 7.
Поступил в техникум (2003), там информатик дал мне Борланд C++ и Тасм.
Там еще половину парка компьютеров составляли древние машины с интерпретаторами Бейсика и Win 3.1. Мы вообще офигевали.
CCNA от Cisco, а это зачем вобще? или есть маза сразу на работу по этой теме устроиться?
программисту самоучке совершенно естественно придти в форум и начать задавать вопрос в стиле я специалист но возникла маленькая неприятность по ком порту не получаю ответов пользуюсь таким-то классом билдера… это кодер а не программист, он умеет что-то делать, и делает это хорошо, но программировать он не умеет, он не может решить нестандартную задачу, не задумывается об оптимизации алгоритма и уж совсем не задумывается о том чтобы провести исследование на тему какой аглоритм лучше для его конкретной задачи.
до смешного иногда доходит когда мне пиняют что я пол часа сижу играюсь, а за соседним столом кипит работа, ага, копипастом устанавливают биты в зависимости от галочек, копи-паст человек знает и делает, а я цикл поставлю вместо 160 раз по 5 строк копипастить, а потом если ещё что-то поправить это же кодеру работы на неделю как и баг в виде опечатки тут выловить мозги на бекрень.
Ребят, вы как то медленно, но верно отходите от темы обсуждения. Офис это конечно действительно интересно и актуально, но все же программирование здесь основа. Вот например мне 17 лет, и буквально за 5 лет, как я начал заниматься программированием, я успел изучить: Turbo pascal, С++, Perl, HTML, Java Sсript, PHP. И мало того, еще у меня почти полное образование CCNA от Cisco, еще чучуть до учиться осталось. И я вам с уверенностью говорю, что программированию нельзя научить, а можно только научиться. Да, возможно, преподаватели по программированию, как то могут помочь, в вопросе каких то действительно сложных понятий, но опять же, смогут помочь только если вы сами захотите в этом разобраться.
если хорошо читают офис это прекрасно. лучше хорошо знать офис чем плохо программирование.
я бы тоже с удовольствием подтянул знания по офису как общие, так и конкретно по новой версии, а то там чёрт ногу сломит, 2003 ещё куда ни шло а старшие подойти страшно так как времени разбираться нету, а печатать и отправлять надо вчера.
к сожалению сколько встречался со школьной информатикой это полный бред нафиг никому не нужный (верю что бывают исключения, но мой опыт таков)
Офис тоже полезно знать)) Я бы, например, не отказался иметь какое-нибудь цельное представление о возможностях Экселя. А поскольку его нет, то сейчас мои столкновения с ним каждый раз заканчиваются либо каким-нибудь найденным в интернете/хелпе решением, либо решением той же задачи на неком языке программирования, хотя в экселе, вероятно, было бы быстрее и наглядней.
у меня информатику не отменяли, но за то на ней майкрософт офис преподают!) погряз в электронных учебниках, книгах, лажу по сайтам….
знаю паскаль, основы бэйсика, разбираюсь в компьютерной механике и сборке. вроде как нормально знаю для 12 летнего ребёнка (мне 12 лет)
Хороший программист – человек с особым складом ума, я бы даже сказал творческим. БОльшая чать знаний поступает в мозг сама, потому что человеку это интересно => стопки книг и "закладок" из Гугла.
Если есть тяга к такого рода знаниям – путь открыт. И чем раньше на этот путь ступишь – тем лучше.
Мое личное мнение – 15-16 лет для "начала" – оптимально.
как в любом деле выучиться лучше лет до 23, после 27 начинается новая перестройка организма и учиться уже становится совсем сложно, но программирование это не спорт и в принципе можно хоть в 90 лет начать учиться, помню даже годах в 96-98 какой-то буддистский храм с дедами выигрывал конкурсы по красоте сайтов… программирование ли html оставим для теоретиков, но специалистов достаточного уровня в то время было мало, средств визуального построения тоже не было так что всё в блокноте далалось, а получалось очень красиво.
предельный возраст это где-то 20-21 год, потому что программерами в основном работают до 30 лет, а потом либо руководят проектами, либо просто помогают в обучении молодых спецов.
А нас в школе учили делать сайты в html но никто почему то не понял,и мне пришлось уже тогда заработать деньжат:))а щас вот снова нахлынуло,сидел (уже в php)писал сайт…И потом нашел эту замечательную группу.Я думаю каждый может стать программистом,главное желание стремление и чуточку обезбашенность это мое мнение:)
#51.
Я с тобой в какой-то степени не согласен.
Научить и научиться – слова идентичные. Человек может научить кого-нибудь научиться программировать – это 100%. Самое главное, чтобы у обучающегося было большое желание научиться, а если этого желания нет, то все усилия учителя будут пустыми!!!
да может если этого захотеть и нужно много времени провести изучить тонкостей компьютера знать каждую деталь и т.д выучить язык программирование знать каждую букву вслепую на клавише знать все проблемы которые можно исправлять без посторонней помощи и тюд
Потому и указал как "желательно". На самом деле ХП в большей мере позволяет получать и опыт и знания, чем то же чтение книг или лекций по программингу – просто потому что это удобнее, естественнее и знания поступают "между делом" ))) И п.4 оптимально дополняет п.2 и п.3 и частично позволяет бороться с отсутствием п.1.
Тот "уровень", который дают в вузах часто _вообще_ отношения к реальности не имеет 8-))) Причём, во всех не крупнейших вузах это правило работает на 100%, в крупнейших – на 90%.
Мне кажется, что нормальный программер должен как минимум:
1) иметь просто огромную тягу к новым зананиям
2) постоянно и плодотворно заниматься самообразованием
3) работать с коллегами, имеющими уровень выше твоего
4) желательно ХП (экстрим программинг который, а не винда)
И, безусловно, как бы там ни было, программер-самоучка, имеющий желание и возможность развиваться, в сто раз более предпочтителен для работодателя, чем прогер с дипломом, но который "и так всё знаю, учиться дальше некуда". Хотя самоучка с образованием ВМиК – это, в любом случае, лучший вариант, наверное ))))
И ещё есть такое "золотое правило": чем больше программист знает, тем больше он понимает, что пока ещё ничего не знает Потому тот, кто "всё знает" – это обычно либо школьник, либо студент как максимум
> Программист – это не профессия, а стиль жиzни)
А мне говорили «Программист – это диагноз»
Все зависит от того, с какой стороны подходить к вопросу. У меня, например, есть образование в сфере IT, но, не смотря на это, считаю себя самоучкой, потому, что тот уровень, который дают в высших учебных заведениях, зачастую ниже, чем уровень, который требуется программисту для создания работающего приложения.
А учиться нужно всегда, учиться самому, читая техническую литературу. Но самое приятное и главное, если есть такая возможность учиться нужно у мастеров в этом деле, наблюдая за тем, как они работают, перенимая и используя их приемы. Мастера научат тому, о чем не пишут не в одном учебнике.
Да, но потребуеться много времени и усилий.. Я два года назад не зналваще ничего, в автобусе услишал разговор двух людей.. А по чему бы и нет? Сейчас знаю С++, HTML, Pascal, CSS.. И мне только 14. А если взрослый дяденька?
Думаю надо "выучиться" по соответствующей специальности и ещё, что любой программист, в принципе, самоучка. Это же не молотком колотить, учился, пока попадать не начал, а потом – специалист ёпт =)
Ну если этот человек научится писать слово программист в двумя буквами "М" .. Может что-то и получиться..
А вообще если писать и разрабатывать толковые вищи то тогда и без корочек монжо идти.. Главное мозг.. Но универ конечно не помешает..
а если я например учусь на заочке. нам никто нихера необъясняет, придешь раз в полгода в универ, тебе дадут задания и иди делай их как хочешь.
так что заочники тоже в какойто степени самоучки.
>А вообще – удел программистов – всю жизнь учиться.<
Хорошо сказано)
Универ дает базу все-таки(ну или не даёт,это кому как)),стимул,что ли…
Да и консультация с Хорошим преподавателем никогда не помешает(все-таки беседа со специалистом с глазу на глаз лучше общения на форуме)
Но без самостоятельного изучения языков и штудирования мануалов-никуда…
Конечно же, программист-самоучка может стать профессиональным программистом. После того, как подучится, конечно.
Если серьезно – знаю некоторых программистов (вообще-то я и сама из их числа), которые начинали как самоучки, а потом уже осмысленно выбирали специальность и получали высшее образование. Читать книги и мануалы – это само собой. Но профильное высшее образование еще ни одному программисту не помешало. Просто когда уже знаешь, что к чему,и специальность выбираешь осмысленно – пользы от обучения гораздо больше.
А вообще – удел программистов – всю жизнь учиться.
Я думаю, что если человек нормальный, и он готов посвятить этому всю или хотя бы часть жизни, то у него всё получится. Самое главное, чтоб это было интересно, потом уже надо ориентироваться на те вещи которые действительно можно реализовать.
При написании программ Вы должны обращать внимание не только на её структуру, но и защищенность, актуальность кода, альтернативы и т.д.
Если Вы готовы учиться, продуктивно работать, проявлять энтузиазм и смекалку, то программирование – Ваш выбор.
Лучше чем опыт и реальные знания? Да диплом вообще мало о чём говорит. Он ведь может быть и куплен, в конце-концов. Даже красный. К тому же, даже если красный диплом получен в результате обучения, то это тоже может говорить о разном. Например, что человек всё вызубривает, что скажут, но не имеет ни малейших углублённых знаний и определённых интересов (такого человека я знаю – не с красным дипломом, но близким к нему). Или обладает хорошими навыками общения с преподами. Например, у меня красный диплом, но из него процентов 30% – результат политики.
Большинство работодателей будут смотреть на резюме, опыт работы и главное – результаты собеседования/теста. Когда я устраивался мой диплом либо вообще никого не волновал, либо волновал отдел кадров для отчётности – уже после того, как я устроился. А если работодатель смотрит на корочки – то нах такого работодателя.
Программа информатики в школе – полная хуйня, вот что я вам скажу (: Я на нее, собственно, и не ходил ни разу. Зато зарабатываю довольно прилично (для фрилансера).
Мне кажется, что определение "профессиональный программист" у каждого свое ))
Если под этим термином понимать – человека, который не только умеет писать программы, но еще и делает это грамотно и красиво, то да – поддерживаю предыдущих ораторов – надо читать и копать самому, а главное практиковаться… сначала для себя, сам с собой, потом в команде для кого-то.
Просто, общаясь с программерами вынес для себя, что "профессиональный программист" – это кодер, который мало думает об общей задаче и плохо понимает общую картину работы приложения, за то кодит быстро и профессионально…
Как в том анекдоте, про скорость набора на клаве – такая фигня получается.
Ну информатика в школе (по крайней мере мне) не дала ничего. Поэтому убиваться по поводу ее отмены я бы не стала.
Если штудировать учебники (а также мануалы, доки и т. д.) для тебя проблема, то профессиональным программистом тебе не стать никогда. Дальше выбор за тобой или ты этого хочешь и добиваешься, или ты идешь в манагеры
Это у всех так.
Потому что перед сном немного расслабляешься, мозг разгружается от напряжения, получает передышку и через минут 15 подсознательно генерирует новое решение. Надо обязательно воплотить. Приходится вставать с кровати, включать комп и доделывать, иначе не заснёшь…
Зато потом спишь, как младенец.
Да, однозначно может!!!
Большинство талантливых программистов – не те, кому программирование преподавалось в институте… а те, у кого есть желание что-то делать, и ковырять, познавать новое, то, что интересно!… Если в 3 часа ночи, когда уже давно пора спать, тебе вдруг в голову приходит НОВАЯ идея,… и ты бежишь к компу, чтобы попробовать её реализовать,… – то ты точно будешь успешным программистом в будущем.
А технические вещи (языки, платформы, реализации) – этому всему учишься походу дела. И опять же – только сам, ковыряя литературу и сайты…
15 мая 2010 в 9:53
Конечно еще как!!!!!!!!!!!
15 мая 2010 в 9:51
Да
12 марта 2010 в 2:03
#173 3. "разгильдяйство пошло из-за невозможности ставить пары и оставлять на 2 год" +1000, вы нашли ещё одну причину (пятую =)
Я же имел в виду несколько иные причины, более полезные для нашей дискуссии – повышение сложности ПО. Не той сложности, о которой говорите Вы (сложность алгоритмическая, исследовательская), а сложности из-за увеличения числа элементов и связей системы (сложность "мощности", что-ли). Проще говоря – в наше время, чтобы качественно программить что-то, надо знать на порядок больше API, и утилит, чем в 90-х для аналогичной задачи. В итоге, опять же, всё хочу свести к мысли – специализация необходима. Необъятное необъять =((( Т.е., опять же, ПТУ рулят (т.к. алгоритмическая, исследовательскаясложность низка, но вот узкоспециальные знания – треба).
12 марта 2010 в 2:03
#173 4, 4.1 Всё-таки мы опять переходим на статистически незначимые вещи, которые уже нельзя принимать за факты =))) В масштабах хотя бы страны или ИТ отрасли вообще =)
12 марта 2010 в 2:03
#178 А если абитуриент Паскаль в школе изучал? С++ вроде в программе отсутствует? Или я опять не врубился в смысл сказанного?
12 марта 2010 в 2:03
#175 "Много знаний не бывает" +1
Недавно было проведеног исследование – старые навыки не пропадают со временем, т.е. мозг, в отличие от тела, не обладает способностью (свойством) атрофировать ненужные функции. Т.е. нейронные связи образуются, но не разрушаются никогда в течение жизни (кроме травм =).
Там на примере движений и пространственной ориентации проверяли.
Ссылку куда-то потратил =))
12 марта 2010 в 2:02
#172 Это всё-таки оффтоп, т.к. я не вижу аргументации. Какова она? Просто свидетельства недостаточно, нужна аргументация (аналитика) или статистика (факт).
P.S. Угрозами покинуть группу нас не напугать =))) Всегда приятно, когда человек не обостряет ситуацию до бана и сам покидает группу =)))
12 марта 2010 в 2:02
#173 2. Хм, с одной стороны, все массовые поделки – сотовые, плееры и т.п. содержат алгоритмы ЦОС. С другой – эти алгоритмы примитивны или используются спецбиблиотеки (для эхо канселлейшен, например). Каков процент кода приходится на ЦОС в сотовом или плеере, как считаете? =) Про ИИ думал – так и не увидел, где оно применяется массово (софт модемы разве что на ум приходят =). Приведите примеры, пожалуйста.
11 марта 2010 в 14:00
Единственный способ стать ХОРОШИМ программистом – учится у других ХОРОШИХ программистов.
11 марта 2010 в 14:00
У нас, например. Для первачков. Ибо первачок должен не просто лабать проги, но лабать ПРАВИЛЬНО. И второе. Программер должен уметь не только правильно лабать проги, но и грамотно писать, и уметь разговаривать с заказчиком (то есть с преподом).
11 марта 2010 в 14:00
Николаю Фоминых. Этот метод – из средневековья… Метод стать хорошим мастром___ (подставить по своему усмотрению) – учиться у других хороших мастеров. И в настоящее время – это не единственный метод.
11 марта 2010 в 12:02
экзамен по С++?
это где такое есть)?
10 марта 2010 в 22:01
Мишке Ховричеву.
Много знаний не бывает. Я вот писал на алголе и фортране. А сейчас пишу на С++ и Компонентном паскале.
Тебе еще много раз придется менять инструумент (язык программирования), так что не зацикливайся на одном.
10 марта 2010 в 17:04
здрасте =) я присоединюсь)) ответить на вопрос пока не могу, ибо я самоучка сам, да и маленький еще, 14 лет)) почитав предыдущие посты (взрыв мозга!) я понял, что можно. Но хочу немного отклониться от темы. Вот я изучаю Python (это к примеру, я еще только VB.NET осваиваю) , изучил довольно глубоко, а надо мне идти в институт. А там только экзамен по С++ или что-нить в этом духе. и как быть?? может, я чего-то недопонял??
9 марта 2010 в 21:05
Смотрителю.
2. По поводу специфики задач и ограниченности предметной области ЦОС и ИИ. В настоящее время это уже не так. Если в 80-е годы это действительно был передний край, то сейчас методы ИИ включаются удже прмо в учебные курсы. Причем не конкретно ИИ, в, например, анализ данных – там дофига этих вещей. Не говоря уж о прогнозах . Или вон распознавание всяких бланков для тестирования – у нас несколько дипломов было на эту тему. А интеллектуальный поиск – это же прям вот уже насущнейшая проблема! И в обучающих системах, которыее скоро начнут появляьтся непосредственно на рынке – дофига ИИ. А генетический алгоритм – это один из лучших методов оптимизации!
3. Причина снижения уровня обученности контингента кроется, конечно же в школе. Я разговаривал с учителями неоднократно. се как один говорят, что разгильдяйство пошло из-за невозможности ставить пары и оставлять на 2 год. К нам в 94-м году поступила группа из 25 человек – отличные ребята. Они сдавали 4 экзамена: русский математику, физику и английский. Из 100 оценок было только 2 тройки. Выпустились они в 1999 году. И через 10 лет – в 2004 году группа пришла – выпустилась в 2009. Они в массе своей были слабее. Но еще приличные по сравнению с 2005 годом. Мы тогда сдуру "сохранили контингент" – теперь кошмар с защитами. После них мы вычищаем на 1-2 курсах. Обычно остается 15 вполне приличных студентов, из которых 2-3-4 уровня 94 года.
4. Бизнес может и задает направление. Но еще и наука сама по себе развивается. Я больше ученый по натуре. Мне ИНТЕРЕСНО!
4.1. Наши выпускники, те самые 15 человек, имеют отточенные навыки. В городе выпускники нашей кафедры котируются намного выше, чем все остальные выпускники всех институтов и кафедр вместе взятые.
9 марта 2010 в 1:03
Константин, по поводу #167: это был не офтоп, а ответ на твой пост #162:
"1. Это специальные знания, которых у выпускника как раз нет. Он решит олимпиадную, но не промышленную задачу. И наоборот. Подробнее – поищите тему олимпиады против промышленного программирования."
Если здесь за аргументированное выражение своего мнения по поднятым вопросам принято выдавать предупреждения, я с радостью покину эту группу.
5 марта 2010 в 21:02
2. Да, меня тоже приглашали в ЦНИИХМ по поводу дронов… Но, тем не менее, вокруг меня дронов мало, а сотовых/компьютеров/iPodов/iPadов и т.п. даже перебор. Если говорить "про зарплату" – то 1Сников в нашей стране, по-видимому, больше, чем всех остальных вместе взятых…
Область спецприложений (ЦОС, ИИ) крайне ограничена, Вы с этим не согласны? Можно будет привести факты, если не согласны.
3. Допустим. А в чём причины? Подумайте, что изменилось с 90-х годов? (Но, предостерегаю, попытайтесь найти иные ответы кроме "разруха"; есть мысли? =)
4. Бизнес-то и задаёт направление развития чего-либо в рыночном обществе. Это, кстати, отсылка к вопросу 3 =))) Как ещё одна (третья) альтернатива =)))
4.1 "Я не смогу ДОВЕРИТЬ работу неспециалисту" – а выпускник и бедет неспециалистом, т.к. не имеет отточенных навыков программирования по сравнению с самоучкой такого же возраста. Я тоже не могу доверить работу по программированию неспециалисту (ведь речь о программировании, а не исследовании или кодировании). Или вы считаете, что выпускник обладает специальными знаниями (теперешний, а не 90-х =)
P.S. А ещё интересная мысль – почемы же Вы написали книги по С++, а не по ЦОС, например? Это к вопросу 3 как, возможно, четвёртый альтернативный контраргумент.
5 марта 2010 в 20:05
Смтрителю.
1. По определению терминов – полностью согласен…
2. По особенности задач, коими я занимался, как раз не согласен. Просто это задачи были для вояк, а они, как известно, впереди гражданских идут. Еще в 1975 году меня приглашали в ВЦ КГБ Узбекистана работать над задачами распознавания образов. Типа две фотографии и надо разобраться, один человек или нет. Или сличение двух отпечатков пальцев.
Но и зарплате и АСУ я отдал достаточно времени и сил… Просто после 91 года я дал себе обет никогда не тратить свое вреемя на АСУ и в частности, на бухгалтерию…
3. По поводу ваших размышлений о совсем не средних студентах, способных применить генетический алгоритм для обучения нейронной сети – тут я полностью согласен. Это совсем не средние студенты. Но должен сказать, что в 90-е годы у нас таких было абсолютное большинство. Но постепенно этот поток все редел и сейчас уже таких студентов буквальноединицы на курсе. Хотя попадаются…
4. Я никогда бизнесом не занимался. Если я решу начать свой бизнес, то, конечно, я буду смотреть разные модели, но… Скорее всего в силу особенностей моего характера и мышления я не смогу использовать модель с домохозяйками. Я не смогу ДОВЕРИТЬ работу неспециалисту.
5 марта 2010 в 19:04
#164 Научить можно… Забудет или нет – зависит от того, будет сталкиваться с этим или нет – вы об этом случае и пишете (что нафиг им это не нужно), перечитайте сами себя =) Плюс случаи клинического идиотизма и 9 классов с тройками, конечно, не берём. Также не берём и случаи, когда человеку это не интересно (это пересекается с отсутствием необходимости).
Какие ещё аргументы остались против? Хотя, забейте, тут мы уходим в сторону (откройте новую тему, если хочешь обсудить)
По сабжу.
1. Специальные знания для олимпиад – математика. Также я подразумевал (думал, что это всем очевидно) и навыки к этим знаниям. Вы говорите "каких-то основ" – мне это в ответе и не нравится. Назовите конкретно, каких именно. Сравните свой ответ с ответом Валерия, чуете разницу? =)
2) А как остальные части данного контраргумента? Попрошу впредь не вырывать фразы из контекста. Я-то вас понял, хотя вы так витеевато попытались рассказать о 5% творческих людей, но вот вы меня не поняли – перечитайте пункт 2) поста #162 ещё раз.
Но, в любом случае, остаются ещё вопрос 2. и 4 пункта контраргументов О_о
5 марта 2010 в 19:02
#163 Это оффтоп? Предупреждение =)
5 марта 2010 в 19:02
#159 По поводу того, что вы бы никогда не взяли на работу домохозяйку со знанием Ява -почитайте про модель CMMI for Development, увидите, что можно вполне успешно вести бизнес и такими мерками. Это иная модель бизнеса, в основном – оутсорсинговый бизнес, который и является массовым. Компании наподобие Майкрософт, Гугл, подавляющее большиснтво стартапов – пропагандируемая вами модель. Но, повторяю, она не единственная и не только она работает. Специализация всё же берёт своё, и только такой подход даёт гарантированный результат (прежде всего, по срокам разработки ПО, что важно для аутсорсинга).
Вообще, пообщайтесь на эту тему с каким-нить менеджером =) Поскольку именно они главные в вопросе программирования
По поводу вуза – я рад за вас (без иронии). Однако, мы статистику берём или нет? Но, я не об этом даже, а ещё раз о специализации. Это важный принцип, поскольку человек – сильно ограниченное существо. помните Козьму – "никто не может объять необъятное"? Так и здесь. Знают ли ваши студенты, например, быстрые аналоги преобразования Фурье? Способны ли они применить генетические методы к обучению нейросети? И т.д. и т.п. – чтобы всё это знать, человек должен быть выше среднего, среднестатистический студент просто не потянет такой объём знаний, да и не охватить за 5 лет все тонкости всех специализаций.
Так что, быть может, обсудим насколько общие вещи даются в вашем вузе? =)
5 марта 2010 в 19:01
#165 Да, я в таком ключе и хотел ответить. Тем не менее, я имею в виду всё же инженеров-программистов, а вы говорите уже о программистах-исследователях, которые и должны являться учёными, а не просто инженерами или "рабочими". Если у вас задачи на нейронные сети или разработку преобразования Фурье решают инженеры – это проблема. Инженер может и не знать вяких узкоспециальных вещей, да и НИОКР инженер провести не способен – это не его задача.
Плюс, мне видится, что вы путаете массовость подходов – нейронные сети и т.п. это как раз немассовые вещи, а мы рассматриваем именно большинство случаев. В большинстве случаев нам нужны лишь инженеры-программисты (не кодеры, т.к. они не умеют работать с архитектурой), кодеры и учёные нужны в меньшем количестве случаев, и это, в принципе, отдельные профессии.
На том и порешим?
Т.е. на уточнении терминов инженер-проектировщик (инженер-программист, программист), кодер и программист-исследователь.
P.S. Вообще, вашей позиции про "универсала" противоречит всё развитие нашей цивилизации – всё постоянно специализируется, и программист – это лишь способный по ГОТОВЫМ спецификациям получить программу человек. Спецификации (алгоритмы и т.п.) готовит уже не он, т.к. он в них просто не разбирается – на это есть аналитики и программисты исследователи (ну или просто учёные, ВУЗы, получившие задачу на НИОКР).
По-иному построенные бизнес-схемы мало распространены – возможно,Ю только в фирмах с крезанным бюджетом, где программист делает и то, и это, и ещё систему администрирует. Но в таком случае он уже не программист =)
P.S. По первой части – пост #161 "А потом уже на этом языке написали модель парохода и систему обучения.
Так что я занимался не только академическими задачами." – это как понимать? Как раз и есть прямо таки академическая вестч =))) Т.е. в вашей узкой специализации (ИИ, например, или ЦОС – чем вы занимаетесь) программисты мало применимы, а тем более кодеры. Вам нужны к.т.н. – программисты-исследователи, причём много и по разным направлениям (иначе решения не будут самыми эффективными).
5 марта 2010 в 15:04
Смотрителю.
Понятно. Мы по-разному рассматриваем понятие "программист". Для вас это просто кодер. Для меня – это инженер-проектировщик. Я согласен, что для кодера достаточно ПТУ. Но для инженера-проектировщика – недостаточно.
Я думаю, вуз должен готовить инженеров проектировщиков.
5 марта 2010 в 15:02
ну не знаю кто такие эти программисты-олимпиадники))) меня просили ездить на олимпиады, потому что больше некому было….
а на счет промышленных задач, смотря какие, симплекс метод когда-тоосвоил, думаю, что некоторые задачи решить смогу… ну возможно я не способен к программированию, но приходилось разрабатывать программы для узи, дополнения к программному обеспечению томографов, рентгенов, так же создавал программное обеспечение для наладки приборов энерго-учета.
>>1. Это специальные знания, которых у выпускника как раз нет. Он решит олимпиадную, но не промышленную задачу. И наоборот. Подробнее – поищите тему олимпиады против промышленного программирования.
какие специальные знания??? логарифмы, пределы, интегралы, производные??? ну извините это в школе еще преподают. да и брат тогда еще только заканчивал школу и никаких спец знаний не получал.
а примером я хотел показать, что не зная каких-то основ написать программу можно, но долго и не "профессионально".
ну если можешь научить любого, ну попробуй взять человека лет 40-50, который почти 30 лет работал на одной работе и делал всегда одно и то же, и на учи его… возможно он и научится, что мало вероятно, но очень скоро он это забудет.многие преподаватели, что у меня преподавали так же вели курсы по повышению квалификации(в основном на предприятиях) и они сами говорили, что учить людей в возрасте очень сложно, потому что как человек работал 20-30 лет так он и будет работать, его обязанности никак не изменятся, и эти знания никак не помогут ему прокормить семью, устроить ребенка в школу, а голова у них забиты житейскими делами, а не новыми научными знаниями…. (прошу не обобщать, я говорю о основной части населения, а не о индивидах).
>>2) Ваше мнение противоречит статистически подтверждённым данным – например, посмотрите статистику математических открытий по возрасту учёных.
я не говорил, что в 25 или 30 или даже 40 лет человек не может что-то изобрести или открыть.и как много людей открывших что-то новое, относительно всего населения планеты? поэтому мое мнение никак не противоречит вашей статистике. если не поняли, тогда ответьте на вопрос: почему дети не получают по несколько высших образований в 10-12 лет, хотя некоторые на это способны?
5 марта 2010 в 14:00
Константин, мнение о неспособности программистов-олимпиадников решать промышленные задачи – это достаточно распространенное заблуждение. Особенно, если учесть, что оно исходит от неолимпиадников. Большинство моих знакомых-олимпиадников являются очень хорошими программистами.
5 марта 2010 в 13:03
Вообще, на поставленный в топике вопрос ответ однозначен – да, может, это факт: мне известны такие самоучки (и здесь даже одного профессионала-самоучки хватит, чтобы ответить положительно =). Мы же здесь обсуждаем уже несколько другую тему – что ПРАВИЛЬНЕЕ и СТАТИСТИЧЕСКИ вероятнее в плане профессиональзма – самоучка или вузовец, пытаемся оценить вероятность успешности самоучки. Причём, мы сейчас рассматриваем неизвестный возраст, а ведь можно рассмотреть градации выпускник/специалсит менее 3 лет/более 3 лет и т.п, тогда в первой возрастной номинации ("выпускник", 21-22 года) однозначно победят самоучки… Но это обсудим позже.
#152 Это, конечно, так, только мы рассматриваем крайние случаи, чтобы прояснить именно самоучек, а не кого-то ещё.
#156 Это я и называю "отсутствие специальных знаний", страшного здесь ничего нет, но это контраргумент против образования. Вообще, моё мнение – программистам ВУЗ не нужен, ВУЗ готовит учёных, исследователей. Программистам нужно ПТУ. Но, это мы ещё обсудим (я к этому и клоню =)
#157
1) Откуда постулат "все другие знания тоже нужны"? Даже если и так (докажите), почему школьных недостаточно?
2) Ваше мнение противоречит статистически подтверждённым данным – например, посмотрите статистику математических открытий по возрасту учёных. Кроме того, есть научные данные по развитию мозга – например, поищите скорость образования новых связей в мозгу в зависимости от возраста. То, что с возрастом процессы обучения замедляются – это факт =( А приведённый вами аргумент действует и на самоучек тоже – получается, всё-таки, что они усвоят на 5 лет больше знаний =)
3) В армии потерял только год (два), т.е. 3 года всё равно есть в запасе.
4) Статистика здесь важна не для того, чтоб её собирать, а как показатель неаргументированности единичных случаев.
5) Я уверен, что смогу научить базовой Яве любого за 2 месяца (обладающего только школьными знаниями, пусть даже и без Паскаля). По крайней мере, мне пока не попадались иные случаи. Может, я что-то делаю не так?
1. Это специальные знания, которых у выпускника как раз нет. Он решит олимпиадную, но не промышленную задачу. И наоборот. Подробнее – поищите тему олимпиады против промышленного программирования.
2. Это ваше ИМХО, где аргументация?
По поводу ЗЫ – см. #158, может быть он что-то сделал не так? А, может, вы просто не способны к программированию. Я вот, допустим, лет 15 назад учился играть на фортепьяно – и где моё умение? О_о
#159 и ниже – отвечу позже, пора бежать
5 марта 2010 в 12:00
Роман Белоус.
Я рад за вас. Мне логистика – не интересна. IP-телефония – тоже. А вот мы делали однажды для питерской конторы интересную задачу: тренажер для обучения командиров различных подразделений на пароходе…
Там задача состояла в том, чтобы на компьютере создать модель парохода, на которой командир главный дает вводную об аварии. А командиры подразделений должны предпринять ряд действий по ликвидации аварии.
Дык мы при реализации этой работы сначала реализовали и пристегнули к языку программирования PL-1 лисп. Затем придумали язык программирования для адекватного представления задачи, написали интерпретатор для этого языка на связке PL+Лисп. А потом уже на этом языке написали модель парохода и систему обучения.
Так что я занимался не только академическими задачами.
На заводе Красный Богатырь в Москве несколько лет крутилась моя заплата…
5 марта 2010 в 11:04
Видимо, Валерий, вам просто не везло с самоучками) В общем-то, обсуждение зашло в тупик. По третьему кругу повторяется уже сказанное. И ещё, как я понял, весь ваш опыт сосредоточен в академической среде и больше на системном уровне.
На прикладном уровне и у крупных промышленных разработчиков ПО – своя специфика. Там, зачастую, действительно ниже порог вхождения, и необходимы разнородные команды – от начинающих до экспертов. И задач на прикладном уровне помимо "асучных" – хватает) Я, например, работал над весьма комплексной логистической софтиной, а сейчас работаю в области IP-телевидения. Могу вас уверить, что интересных задач там масса, и интересны мне они не от моего малого опыта и незнания алгоритмов) А вот системный уровень мне не очень интересен.
ЗЫЖ Может быть, конечно, в вашей терминологии примитивные АСУчные задачи – это все не системные задачи,я не в курсе)
ЗЗЫЖ Лицензионное ПО – это вчерашний день! Да здравствует Open Source! =)
5 марта 2010 в 9:04
Константину.
1 и 2. Самоучке может хватать знаний в той конкретной области, куда он пошел работать. А пошел он работать в очень ограниченное количество мест. Только туда, где нужны знания только конкретных языков и технологий. Задачи в такой конторе совершенно типичные – асучные. Например, его никогда не возьмут в контору, где надо писать компиляторы. Или он ПРЕДВАРИТЕЛЬНО должен изучить все про написание компиляторов. А когда? Он же работает на другой работе!
То есть, параллельно с работой он должен изучать совершенно незнакомую для него область. Причем, глубоко. Если он это сможет, то я его первого на работу возьму… Нам такие люди ВО КАК НУЖНЫ!!!!!!
Тут уже приводили пример про распознавание речи – надо знать разложение в ряд Фурье… Даже для написания FineReadera требуется знание нейронных сетей – а их надо уметь обучать… А это – метод градиентного спуска…
У нас внедряли систему тестирования, дык надо было писать прогу распознавания бланков с ответами – это дипломный проект. Пацан серьезно покопался в тематике распознавания образов. А там такая математика – мама не горюй!
Насчет расизма… Это не расизм, а нормальное собеседование… Я в жизни не только программистом и преподавателем был, но и заведующим кафедрой и главным инженером проекта и начальником отдела… И естественно, собеседовал… И вынес вот такой опыт: если у человека есть диплом, он имеет преимущество перед тем, кто его не имеет.
Про Ява для дромохозяек лучше не надо – я такую домохозяйку на работу НИКОГДА не возьму… И не только я. Мои выпускники-руководители тоже никогда не возьмут. А возьмут на работу наших же выпускников ибо знают качество подготовки.
Насчет того, что вуз мало чему учит.Смотря какой вуз и какая кафедра. Во-первых, у нас после 3 и 4 курсов есть производственная практика. Студиозы сами находят предприятие, где будут проходить, и приносят официальное письмо от директора. С просьбой направить студента для прохождения. Если сами не находят, мы им находим – у нас дофига предприятий, где наши же выпускники работают и/или директора. Или засовываем их в отдел АСУ нашего ВУЗА – а там тоже наши выпускники работают начальником.
Во-вторых, начиная с третьего курса мы самых сильных студиозов принимаем на работу в отдел АСУ, сетевой и еще есть пара штук. Например, в библиотеке девочка работала, и делала для библиотеки нашего вуза сайт. Хороший получился диплом…
Поэтому к диплому они РЕАЛЬНО все умеют и знают. И в команде работать – тоже. И самые современные технологии – тоже знают, ибюо у нас все ПО лицензионное, и АСУ работает на самых последних версиях от Микрософта.
Короче, у нас таких очников, что не могут на 4 курсе написать программу для решения квадратного уравнения, просто нет. Среди заочников – есть. Больше половины. Но тут мы просто ничего не можем сделать. Заочники платные и к тому же, индивидуальные планы у них. Когда сдаст, тогда и сдаст. У нас один заочник учился 10 лет. На 11-й защитил диплом… В свое время вылетел с дневного.
5 марта 2010 в 9:00
А я окончил школу и уже дипломов 10 программистам написал)))) Защищаются на 4 или 5))))
5 марта 2010 в 3:03
Я вижу к обсуждению присоеденились преподаватили, поэтому у меня к ним вопрос, как на четвертом курсе специальности Программная Инженэрия досих пор учатся люди что кроме "хэлоу ворлд" наврятли чтото могут написать, это не тема этого обсуждения поэтому я создал новое, а здесь написал(надеюсь меня извенят), чтобы не потерять ваше внимание
5 марта 2010 в 3:03
любой программист может стать профессиональным, если у него будет не малый опыт за плечами. ВУЗ дело хорошее и наличие диплома это как минимум статус. Но в основном в ВУЗах учат основам, а вот тонкостям научишься только сам, а следовательно нужен опыт. Да и не всякий студент в свободное время пишет программы, большинство учатся для корочки и не планируют идти работать по профессии (такова печальная статистика).
Константин Смотритель, ждал возражений по пунктам))) вот они::
1) если самоучка будет только учиться кодить, то он точно будет подтверждать стереотип(худого, волосатого и разговаривающем на непонятном языке), все таки другие знания тоже нужны, хотя бы основы (конечно не все, что преподают в ВУЗе)
2)да, после 22 лет человек хуже усваивает и запоминает информацию, но только в тех случаях, когда эта информация не очень важна и тем более не интересна. А вот когда человеку это надо знать и он хочет это знать, и ему это нравится, то он быстро запомнит и усвоит.
3)если программист не пошел в ВУЗ или колледж, то он пошел в армию (в большинстве своем. Все таки девушек среди нас не так много).
4)статистика конечно нужна, но вот собрать ее большая проблема
5)попробуй мою маму научить Яве за 2 месяца! я лет 5не могу научить нормально пользоваться компьютером…а вообще, если есть уже какие-то знания (несколько языков программирования), то выучить еще 1-н не составит труда, но опять же тонкости познаешь только с опытом. да и учить то не требуется, главное синтаксис понять, чтобы хоть что-то написать, да и на работе не будут спрашивать знание всех процедур и функций…..
>>1. Каких знаний не хватает самоучке? (Конкретные примеры)
вот пример: мне было лет 12-14, я участвовал в окружной олимпиаде, помню не смог полностью решить одну задачу, там нужен был сложный алгоритм составить используя математику, поэтому написал программу на половину… мой алгоритм занимал порядка 40 строк, а мой брат, составил алгоритм из 5-х строк, который превосходил мой по функционалу раза в 2-3… а все это из-за не знания математики…
другой пример: пишу CMMS(система управления техническим обслуживанием), в ней нужна аналитика, но без знаний о системе массового обслуживания, графах и других знаний высшей математики и мат. экономики можно такого там намудрить……
>>2. Хотелось бы аргументации, почему он их сам получить не в состоянии.
ну как минимум не все знания легко даются…иногда нужен человек, который доходчиво объяснит. например попробуй объяснить кому-нибудь что такое ротор и дивергенция, и как это применять в физике, экономике, да и вообще в жизни… мало кто поймет, а если он еще и сам читать будет, то точно ничего не осмыслит…
ЗЫ. в школе у меня не было информатики, вместо этого 2 года ездили в ВУЗ на курсы программирования, сдал кстати на отлично, а толку никакого, как сказали знающие люди, можно засунуть этот диплом в одно место….. да и на самих курсах нам давали то, что я знал и умел писать еще в 12 лет…
да и если человек не оканчивал ВУЗ, а опыт и знаний вагон, то и ВУЗ можно окончить экстерном…
5 марта 2010 в 2:05
Касательно того после кого сложно дописывать, рефакторить, я думаю это сюда никак не относится, тяжело дописывать после людей, что не работали в тиме.
Касательно третьего, что вы назвали расизмом, то я обращу ваше внимание на "..ПРОЧИХ РАВНЫХ…", я думаю что это подрозумевает что два человека претендующие на одно место показали (к примеру в тэсте) одинаковые результаты, и в полне логично склоница к человеку с образованием, не бросать же монетку.
И я наверно только могу посочуствовать тому работодателю, что возьмет на роботу человека окончившого курсы "Жавы" для домохозяек.
"Каких знаний нехватает самоучке?" – думаю, я бы никогда самостоятельно не взял того, что мне дал мой преподаватель с Дескретной матиматики и мой преподаватель с Теории Компиляторов(за что им огромное спасибо).
Вот мое субективное мнение, что неисключает то что я могу ошибатся.
Только идиоты и мертвецы не меняют своих убеждений, мы разумные люди и мы их меняем. (Бенито Муссолини)
5 марта 2010 в 2:04
#152 +1
#151 Я учусь и работаю с первого курса, почему бы самоучке так же не зделать, а не спецеализированые предметы с мозгами человека поступившего на программиста(покрайней мере на 3), не так сложно здавать и приделять тоже время програмированию, что и полному самоучке, я например кроме програмирования дома ничего не делал, а матиматику, физику изучал за час до контрольной и без проблем здавал на 5(правда контрольные были через пару)
Наши(постсоветские) ВУЗы, програмистам дают не совсем то, что требует роботодатель – я согласен, но они розвивают интелект, что на порядок важнее точных знаний, есть люди с энциклопедичискими знаниями, но элементарно неумеют ими оперировать, есть люди с небольшим(относительно) запасом знаний, но их интелект всегда помогает им адаптироватся к любой роботе, найти эти знания, использовать с максимальным КПД, и избавится от них при необходимости. Так вот этот интелект дает токо наш советский политех, с математикой, физикой, теореей вероятности(нащот которой, кто-то сильно возмущался).
Но с другой стороны, как я уже цитировал Энштэйна, делаю это ище раз:"Единственное что мешает моему обучению – мое образование"
С образованием ты теряеш свои шансы на изобретение чегото кардинально нового(тоисть если тебя обучили в школе дисятичной системе то на 11-ричную с такимже КПД перейти уже практически невозможным), я сам лично сталкивался с этим когда обяснял своему другу экономисту(очень далекому от програмирования) суть и решение одной задачи по Теории Компиляторов, дослушав он сказал:"Это все конечно круто, но почему вы не делаете вот так…".И диствительно, его решение было простым, как доска и выигрывало практически в всех показателях. Поговорив с преподавателем, я узнал, что он не видел,чтобы так это раньше решалось. Тоисть не один специализированый ум за всю исторюю ИТ(возможно я ошибаюсь) не пришол к этому решению.Нас убучают пузырьковой, быстрой сортировок, и наверное это в будущем избавляет нас шанса ивозможности посмотреть на проблему с другой ище незашаблонезированой стороны. Извеняйте за ошибки, я украинец
5 марта 2010 в 0:03
#152 +1
5 марта 2010 в 0:01
не хочу перебивать но
а что вообще мешает человеку учиться в ВУЗе и параллельно заниматься самообразованием, неужели приходиться выбирать только одно из двух?
комплекс методов дает в сотни раз большую результативность, чем какой-то один метод.
С нормальными мозгами можно стать профессиональным программистом и с ВУЗовским дипломом и с хорошими теоритическими и может даже практическими знаниями в какой-то специализации, по которой человек будет работать.
Оба варианта вполне доступны, ибо в универ с мозгами поступить не так уж и тяжело, да и за 5 лет самому можно будет занимаясь в свободное время поднакопить хороший багаж знаний.
4 марта 2010 в 22:02
Валерий, отлично, если по пункту невозможности впихнуть знания разногласий нет, то вопросы остаются (повторю их):
1. Каких знаний не хватает самоучке? (Конкретные примеры)
2. Хотелось бы аргументации, почему он их сам получить не в состоянии.
Пункт 3 – это ИМХО, оно ниоткуда не следует. Это расизм какой-то получается =) Тем более, судите по одному самоучке. Я самоучек больше знаю, и как раз код разгребать приходилось им за дипломированными специалистами =))) Предлагаю обсуждать конструктивно. Характер – это хорошо, но есть и бесхарактерные студенты =( Хотя, возможно, ответ "характер" подойдёт для вопроса 1, но тут нужна детализация – прошу её представить.
Пункты 1, 2 – это хорошо, значит, диалог будет и будет конструктивным =) Названия книг нашёл – //www.piter.com/publish/authors/23712/0/
P.S. Контраргументы могу такие привести (для отличия – нумерация скобкой):
1) Пока студент учится всему, самоучка учиться только программированию.
2) После определённого возраста среднестатистический человек уже не так хорошо усваивает информацию – и выпускник находится после выпуска на грани фола, имеет общеподготовительные знания за 5 лет, а самоучка в том же возрасте имеет уже специальные знания.
3) Самоучка стал самоучкой потому, что ещё со школы у него получалось программировать, и он пошёл работать а не в ВУЗ. В ВУЗ пошли те, кто решил "может быть я буду программистом… а, может, начальником" =) В итоге, к 5 годам добавляются ещё школьные знания
4) Никто не застрахован от единичных случаев, мы рассматриваем вопрос конструктивно, следовательно, нужна статистика.
5) На западе существуют двухмесячные курсы по Ява для домохозяек (информация по памяти =). Значит, это работает?
Потом ещё придумаю, жду возражений по пунктам.
4 марта 2010 в 21:01
1. Чтобы не было сомнений в моей компетентности как программиста. Опыт программирования более 20 лет. От типовых задач АСУ вроде зарплаты до операционной системы для бортового компьютера. Диапазон используемых средств: от восьмеричных кодов до языков высокого уровня, баз данных и интегрированных сред. Последнее время пишу системные программы по системному программированию на С++: интерпретаторы виртуальных машин, трансляторы ассемблеров для тех же машин, загрузчики, линкеры, отладчики, профайлеры. Собираюсь писать специализированную интегрированную среду для обучения языку программирования – выбираю инструментарий. Среди претендентов: Компонентный паскаль в среде БлэкБокс, С++ и/или С# в среде Дотнет. Более экзотические варианты: Питон и Руби.
2. Чтобы не было сомнений в моей компетентности как преподавателя: более 15 лет преподаю разнообразные дисциплины ИТ. Программирование (на Паскале, С/С++ и Ява), Объектно-ориентированное программирование (С++), Операционные системы (Window и WinAPI), Системное ПО, архитектура ЭВМ. Преподавал также Технологию программирования, Системы ИИ, Теорию информации и кодирования.
Написал пару книжек по С++ – изданы в издательствах БХВ и Питер. Можете найти по фамилии Лаптев В.В.
3. Лично я при ПРОЧИХ РАВНЫХ условиях из двух претендентов выберу претендента с высшим образованием. Уже само наличие высшего образования говорит мне о некоторых особенностях характера претендента. Имею опыт работы с гениальным самоучкой в течение 5 лет. Я был его начальником и мы писали бортовую ось. Парень мог написать ВСЕ, причем на ассемблере. Однако боже ты мой, какой УЖОС был за ним разгребать его тексты!
4. Полностью согласен с тем, что знания впихнуть невозможно. Но опять же, если рассмотреть двух претендентов без образования, но один студент, а второй нет, и оба ХОТЯТ, то я выберу студента, а не самоучку.
Опыт большой у меня, ребята.
Наличие самоучек в нашей сфере – это большая беда ИТ. Даже на права нужно экзамен сдавать. Хотя вполне можно научиться водить и без инструктора и ездить без прав…
4 марта 2010 в 17:00
#144 +1 Как профессиональный преподаватель во втором поколении могу подтвердить обратное: знания насильно не впихиваются (читать, впихиваются в меньшем объёме и длительнее, если ещё такого преподавателя найдёте – читать, репититора).
4 марта 2010 в 17:00
Вообщем, от противников положительного решения вопроса ждём ответов на #144 и #147, а также хорошо бы услышать определение профессионального программиста (а то см. #146)
4 марта 2010 в 16:05
Вопрос поставлен неверно. Верный вопрос: "Может ли программист-не самоучка стать профессиональным программистом?"
На верно сформулированный вопрос мой ответ – "нет" =)
Все кто пишут про "специальные знания" и прочее всегда забывают одно: сколько ты эти знания в студента/кандидата не впихивай, они не впихнуться, пока он сам того не захочет. Самообразование здесь стоит на первом месте. Каких-то "специальных знаний", без которых немыслимо программирование – вуз не даёт. Также и опыта вуз не даёт. Он учит только самостоятельности, может быть. И то не всех.
Впрочем, для конструктивного диалога – какие "специальные знания" есть у выпускника вуза и нет у самоучки? Раз вы так утверждаете, что они есть, приведите примеры.
4 марта 2010 в 16:04
#777
>> Может ли программист самоучка зарабатывать, как профессиональный программист?
Да.
4 марта 2010 в 16:02
>> Где логика?
В посте #139, первый абзац
4 марта 2010 в 12:02
По утверждению того же самого Макконела, в США нет нормального высшего образования для программистов (это на 2006 год, вроде). В России, думаю – тем более. Специальность "Прикладная математика и информатика/управление" – говоря откровенно, не то. С другими специальностями, как я полагаю, примерно то же самое. В то же время, потребность в программистах большая – поэтому неудивительно, что много самоучек.
Теперь, что касается "правильного программирования". Ему не учат. Базовые алгоритмы, структуры данных и инварианты циклов – это только часть качества кода, и не самая важная. Байесовы сети – это вообще частный метод.
Я когда пришёл устраиваться на работу, знал PHP, Java, Pascal и немного Haskell и С++, в универе был курс структур данных, дискретки, тв, информатики, мат.статистики, матана, системного по, дифуров и других страшных слов. Да, это учит системно мыслить, и это хорошо. Но я понятия не имел о том, что код который я пишу, нужно будет кому-то потом читать, изменять, что код развивается со временем. Я понятия не имел как можно декомпозировать задачу в терминах языка и что это можно делать по разному, понятия не имел об уровне предметной области, уровне языка и семантическом пробеле между ними, и естественно не знал, что с этим пробелом делать. Ещё, я понятия не имел, что такое фреймворк и архитектура. Имел довольно смутное представление о паттернах, хоть мы их и проходили. Не знал, что обычно все эти алгоритмы и структуры, как правило, уже кем-то реализованы и даже опубликованы с открытыми кодами и обычно их не просто не нужно реализовывать самому, а даже настоятельно не рекомендуется. Имел очень смутное представление о контроле версий и ещё более смутное о сборке. Не знал, что такое модульное тестирование и xUnit. Не знал, что такое рефакторинг.
Неудивительно, что я этого не знал, специальность у меня больше математическая. Но люди с более программисткими специальностями изучают в универах примерно то же, что и я, и также не знают все те вещи, которые я перечислил. Все они узнаются из практического опыта. Хотя можно было бы и преподавать.
ЗЫЖ А печатать 10-пальцевым методом я вообще научился меньше года назад. И сейчас считаю это одним из базовых навыков программиста.
ЗЗЫЖ Валерий, а вы что преподаёте? Это не провокация, просто интересно)
4 марта 2010 в 12:02
"И самостоятельно он их вряд ли осилит." – это, как я понимаю, базис всех ваших рассуждений. Суть моего с вами несогласия заключается в том, что я считаю это утверждение неверным. Как вы можете его подтвердить?
4 марта 2010 в 8:03
#141
Владимир, уж больно у тебя фамилия классная!
Навевает ассоциации – про имя забываешь
Но смотри, что ты предлагаешь-то. Ты сам учишься не на программиста. Очевидно, в той сфере, где ты образование получаешь, самоучек просто не принимают на работу без образования.
А в программировании ты считаешь, что можно и без образования.
Где логика?
Да, без образования можно кодить. И возможно, неплохо. Но ведь инженером без образования не станешь. А ИТ – это инженерная область.
Поэтому я и говорю, что без образования программисты-недоучки получаются.
Во-вторых, без образования самоучка обречен работать в очень узкой сфере – типовая обработка данных. Ну, вроде того, что делают системы SAP/R3 или 1С. Потому как специальных знаний, необходимых для других сфер деятельности у него просто нет. И самостоятельно он их вряд ли осилит.
4 марта 2010 в 1:03
Владимир Aiditz Муромский
А называть человека,в 3 раза старшего тебя самого на "ты", так вообще быдлостайл.
4 марта 2010 в 1:03
Прости, я просто подумал, что ты будешь не против, если сам так делаешь) #138
upd: нет, не ты. Забыл на ник посмотреть.
Я не смотрю на возраст каждого, кто отписался в теме. Простите если кого обидел.
4 марта 2010 в 1:01
Я учусь не на программиста, поэтому и защищаю права самоучек) Точнее не защищаю, потому что мне лень и потому что я заранее знаю что ты останешься при своей точке зрения и споры с любыми аргументами ни к чему не приведут, но вот такие мои короткие фразы возможно заставят тебя задуматься)
Кстати, обращаться к незнакомому человеку по фамилии – признак плохого тона) Но я не парюсь что тебе лень строчку с именем скопипастить, а набирать имя целиком – долго)
4 марта 2010 в 0:05
>> Самоучку не заставишь учить теорию вероятности..
очередной бред:)
Видимо, тебе только плохие самоучки попадались, которые ничего учить не хотят)
4 марта 2010 в 0:05
Муромский, но сам-то ты учишься…
Брось сначала и давай самоучкой…
А то обзывать бредом – это каждый дурак может…
4 марта 2010 в 0:03
С Робертом Глассом – согласен…
4 марта 2010 в 0:02
Можно. Но!!!!
Самоучка не обратит внимание на фундаментальные математические разделы. А недавно одна моя выпускница призналась (она уже начальник отдела АСУ у нас в вузе), что ей в работе все, что преподавали по математике, пригождается. Будучи студенткой, она не раз высказывала мысль, что нафига это учить или это. Типа никогда не пригодится. А вот теперь оказывается, что все это нужно и полезно в работе.
Самоучку не заставишь учить теорию вероятности… Или исчисление предикатов…
4 марта 2010 в 0:02
Александр, как мне кажется, расставил все точки над i в данном обсуждении) А на счёт "заставишь, не заставишь", – заставить человека вообще сложно. Если человек работает в программировании и ему нравится эта работа и в какой-то момент он почувствует необходимость в изучении ТВ, то он её изучит. Без специального образования ему будет сложнее, но справится. А если же человек работает только потому, что платят много, то никакое специальное образование ему не поможет улучшить его код, сроки и остальное. Просто потому, что ему пофигу. А вообще всё это мне напоминает споры теоретиков и практиков, о которых писал Роберт Гласс в книге "Software Creativity", раз уж речь зашла о конкретной литературе) Истина, как всегда, посередине.
4 марта 2010 в 0:01
Самоучка как раз тем и занимается, что сам осваивает новые технологии.
4 марта 2010 в 0:01
Валерий, да, сможет.
никто же не спорит, что ВУЗ вправляет мозги.
вопрос тут поставлен – МОЖНО ЛИ
можно)
4 марта 2010 в 0:00
Самое важное в систематическом образовании – оно выстраивает мозги. В правильном направлении. После обучения в вузе, если не сачкуешь и не дурак, – много легче учиться самому, чем без этого 5-тилетнего опыта.
Я вот старый, писал еще в кодах, на всех советских машинах. Но это не мешает мне осваивать новые технологии и преподавать их студентам. А самоучка так сможет?
3 марта 2010 в 23:04
Валерий, а где критерии "самоучки"?
да вот аргументы
есть некие знания
их можно освоить с учителем, а можно и без него. учителем может быть информатик в школе, преподы в ВУЗЕ, а может и наставник
зависит от учителя, если он хороший – пройдет процесс быстрее, естестенно.
но это не значит, что без учителя нельзя получить знания.
ну да, со стрингом он перемудрил
3 марта 2010 в 21:05
А вот вам и конкретный пример недоучки.
Алексей Орлов – порет откровенную чушь относительно стандартного типа C++ string и еще советует учить матчасть. А сам довольно простую прогу слабать не в состоянии.
3 марта 2010 в 21:04
Муромский
Это ВАША оценка. Обоснуйте – только без эмоций. Я свою ТЗ обосновал. Слушаю ВАШИ аргументы.
Если аргументов нет, то ваши речи – бред.
3 марта 2010 в 16:01
По сути я с Валерием соласен.
Знание математики дает возможность решения более широкого спектра задач или же более рационального последних же.
В домашних условиях я, например, не понимаю как можно поднять ее на хороший уровень.
3 марта 2010 в 15:03
Спасибо, Валерий, посмеялся)
3 марта 2010 в 15:02
>> Самоучки изучают ТОЛЬКО ИНСТРУМЕНТ.
что за бред…
3 марта 2010 в 15:01
@Роман Белоус.
Все я понял. Но вот именно потому, что в профессию ломятся недоучки без фундаментальной подготовки, мы имеем такое положение в профессии сейчас. Более половины проектов срываются либо по срокам, либо по деньгам. Треть вообще закрывается. Это официальные данные, которые можно найти в сети. Макконел говорит о том же в книге "Профессиональное программирование".
В какой еще профессии разрешат заниматься профессиональной деятельностью без образования? Где можно найти самоучек, которые разрабатывают дома, машины, самолеты, пароходы? НИГДЕ!!
А в программировании – каждый второй!
Вот и сравните, профи это или нет. Совершенно очевидно, что – нет.
Я тут уже приводил пример, что при наличии знания об инварианте цикла чел пишет болееправильные циклы. Более надежные. Кто из самоучек хотя бы слыхал об этом, не говоря уже об использовании?
Самоучки изучают ТОЛЬКО ИНСТРУМЕНТ. Навыков ПРАВИЛЬНОГО программирования они не имеют и НЕ ПОЛУЧАЮТ. Потому и тексты программ такие, что УЖОС!!!!!
3 марта 2010 в 12:02
Насчет того, что программист должен знать и уметь: //www.indiangeek.net/programmer-competency-matrix/
3 марта 2010 в 11:03
@Валерий Лаптев
Сочувствую) Вы, к тому же, кажется вообще не поняли о чём я говорю, зато обиделись на замечаниеи начали пенять своим опытом.
Я совершенно уверен, что дискретка – это хорошо и полезно. Но это менее важно, чем очень большое количество других вещей, в том числе "всякая лабуда", о которой вы писали. Если же вы считаете, что человек становится профессионалом только после минимум 10 лет работы, то вы используете какое-то другое значение слова "профессионал". Вероятно, смешиваете его со словом "эксперт".
Как я понимаю, топик – о начинающих программистах без специального образования, которые хотят сделать программирование своей профессией. Так вот – начинать им надо вовсе не с дискретки и прикладной математики, в чём вы и прочие пытаются их убедить. По крайней мере, это моё мнение, основанное на результатах моего обучения в универе, последующем трудоустройстве и имеющемся опыте работы. Кроме того, в рамках проекта на нынешней работе, я как раз изучаю вопросы управления навыками – что программист должен знать и уметь и как он должен развиваться со временем. Не буду утверждать, что я большой специалист, но я ознакомился с достаточно большимколичеством литературы, статей и подходов, применяемых в разных компаниях.
3 марта 2010 в 10:04
Я работал в одной фирме – два года подряд на SofTool первые в своей теме – там в программистском отделе (Программировали CMS, сайты – PHP и т.п., приложение – Delphi, другое – на Borland C++) – лишь треть с высшим образованием, один руководитель – с двумя.
3 марта 2010 в 9:04
to Роман Белоус.
Насчет моего ограниченного взгляда на программирование.
Вы говорите, что в программировании мало типовых задач. У вас просто МАЛО опыта. Если я говорю, что есть типовые задачи обработки данных, так это от большого опыта (20 лет программирования от написания операционной системы до зарплаты, и более 15 лет преподавания разнообразных программерских дисциплин). Опыт позволяет мне говорить, что задачиобработки данных – ТИПОВЫЕ, а для вас каждая задача – новье.
Поэтому не нужно говорить о моем ограниченном взгляде на программирование.
Профессионал – ДОЛЖЕН знать дискретку и уметь применять ее в повседневной программерской деятельности. Чтобы просто не изобретать велосипед, и не считать, что нет типовых задач…
3 марта 2010 в 9:04
: : :: : :
: : :: : :: : :
: : :: : :
3 марта 2010 в 2:01
Роман, во-первых, у слова профессионал имеется два значения:
- индивид,основное занятие которого является его профессией;
- специалистсвоего дела, имеющий соответствующую подготовку и квалификацию.
И топикстартер имел в виду именно второе значение.
Во-вторых, никто и не утверждает, что необходимо в совершенстве владеть всей дискретной математикой. Но нельзя говорить о профессионализме программиста, который не в состоянии дать асимптотическую оценку времени выполнения написанного им же кода. Или не может обосновать, почему его код корректно выполняет поставленную задачу.
По поводу SWEBOK… Разработка ПО и программирование – две разные вещи (программирование (дизайн+конструирование) является лишь одним из этапов разработки). Зачем в обсуждении программирования упоминать весь процесс разработки? В общем случае, программисту почти ничего не надо знать ни про сбор требований, ни про менеджмент, ни про QA.
И еще… В ней говорится не только что математика и информатика относятся к смежным дисциплинам, но и то что связь между ними обоснована, важна и фундаментальна.
3 марта 2010 в 0:02
Единственное что мешает моему обучению – мое образование
Альберт Энштэйн
3 марта 2010 в 0:02
Кстати, если вы ознакомитесь с документом SWEBOK (Software Engineering Body Of Knowledge), то обнаружите, что математика и информатика относятся к смежным дисциплинам, а не входят в состав инженерии ПО. Конечно, может быть, инженер по разработке – это не программист, но вроде эти понятия обычно считаются синонимичными. Этот документ также не является истиной в последней инстанции, но это неплохая инициатива по определению того, что входит в инженерию ПО. Рекомендую к ознакомлению.
3 марта 2010 в 0:01
Валерий, ни одна из вещей, что вы перечислили не делает из программиста профессионала. И если какой-то программист чего-то из перечисленного не знает – он не становится непрофессионалом. Естественно, если вы знаете, например, метод динамического программирования – хуже вам от этого не будет. Так что лучше знать. Но если не знаете, то вряд ли сильно вам это повредит. Может когда-нибудь столкнётесь с задачей, где он полезен, ну тогда и узнаете, добрые люди подскажут. А вот если вы не умеете пользоваться своей IDE, то это вам вредит практически ежесекундно. А по моим наблюдениям , многие программисты не умеют. И при этом, как ни странно, остаются неплохими специалистами.
Мы должны уметь решать задачи. Это общий навык. Динамическое программирование – частный. Если вы им владеете – это вам плюс. Но это не слишком важно. Это гораздо меньший плюс, чем вы пытаетесь изобразить. И ваши рассуждения про типовые задачи обработки данных, на мой взгляд, говорят вашемограниченном представлении о программировании. В программировании вообще довольно мало типовых задач. А если они встречаются, то немедленно возникает новая задача – автоматизировать типовую задачу. А если взглянуть с другой стороны, то баейсовские сети, о которых вы упомянули – вполне себе типовое решение типичной задачи классификации данных. В общем, ваши рассуждения мне кажутся неубедительными. Для деления же на любителей и профессионалов знание дискретки и т.п. – вторичный критерий, хоть и имеющий вес. Хотя часто при найме на работу студентов приходится ориентироваться именно на него, потому что всё равно ничего из того что действительно нужно – не знают и не умеют. Так пусть хотя бы в дискретке разбираются)
ЗЫЖ Да, кстати, профессионал – этот тот, кто зарабатывает на жизнь профессией.
2 марта 2010 в 21:01
посмотрите, кто за последние десятилетия удостоился хоть каких то наград в области информатики, и поймете, чем прогер от кодера отличается…
2 марта 2010 в 20:04
Ребята, , что я перечислил – это лишь малая толика ОБЩЕПРОФЕССИОНАЛЬНЫХ знаний в ИТ. Например, если понятия не имеешь об инварианте цикла и цикле Дейкстры, то в целом твои циклы БОЛЕЕ ПОДВЕРЖЕНЫ ОШИБКАМ по сравнению с теми, кто знает об этих вещах.
Про вероятность – совсем смешно. Например, алгоритм классификации данных так и называется "Наивный Байесовский алгоритм". Это я не говорю о байесовских сетях, которые сплошь и рядом применяются в интеллектуальных системах. А что такое интеллектуальные системы? Да вон на Гугл посмотрите… Или наигры…
Конечно, если вас устраивает всю жизнь делать типовые задачи обработки данных, то многие знания просто не пригодятся. Можно и не знать. Но тогда у вас большие ограничения в выборе интересной работы…
Программист, конечно, не должен быть математиком (все же другая деятельность), но понимать должен. И обязан просто знать дискретную математику.
Иначе это – любитель.
2 марта 2010 в 19:02
>>видели в документе о высшем образовании специальность "программист"? Дословно:))
видел… есть такая специальность.
у меня например специальность "программист-экономист", еще часто называют "системный аналитик"
быть прогрмаммистом и математиком разные вещи. поэтому, если человек хорошо владеет математическим аппаратом, то это еще не говорит что он программист и вообще способен написать программу. нельзя просто взять и стать программистом! для этого нужны некоторые личные качества. например, хорошо выстраивать логические цепочки не каждый способен.знаю множество умных людей, которые отлично знают мат-ку, имеют аналитический склад ума и т.д., но программирование вообще не понимают…
я например не помню ни одного названия теорем и определений из матана, но зато написав мне формулу я могу вывести теорему и доказать ее, но название все равно не смогу сказать…
2 марта 2010 в 18:02
Да вот, у коллеги, например: СПб ГУ, мех-мат, системное программирование. И в трудовых договорах пишут "программист", "разработчик" или "инженер по разработке".
А на мой взгляд, наличие знаний ни CS (что вообще довольно размытая область), ни прикладной математики не является ни необходимым, ни достаточным условием. Единственно, что во что я готов поверить – это то, что в среднем есть положительная корреляция между опытом работы в индустрии и наличием и глубиной упомянутых знаний. Тем не менее, ничто не мешает быть профессионалом и их не иметь. Я например, не уверен, что Джоэль Спольски – крутой прикладной математик и специалист по теории информации, алгоритмам и криптографии. У меня есть коллеги, успешно решающие поставленные перед ними задачи, и не имеющие этих знаний. А если они им понадобятся, они их приобретут в необходимом объёме, если это возможно и целесообразно. Вот это и есть профессионализм, с моей точки зрения. Конечно, если я, скажем, спец по графическим интерфейсам, а мне предложат написать софт для управления атомным реактором, то я вряд ли справлюсь с задачей в разумный срок и с приемлемым качеством. И профессионализм здесь в том, чтобы донести до менеджера или заказчика, что они обращаются не к тому спецу.
Имхо, гораздо важнее, чем бытие сильным математиком – это знание принципов VCS, владение инструментами для сборки, навыки модульного тестирования, владение рефакторингом, умение ясно излагать свои и чужие мысли и так далее. Этому почему-то и не учат особо. А про CS, как правило, достаточно знать, что есть базовые алгоритмы и где их искать. Численные методы или теория вероятностей вообще подавляющему большинству программистов никогда не понадобятся.
2 марта 2010 в 15:04
Роман, а вы видели в документе о высшем образовании специальность "программист"? Дословно:)) Я не видел, зато видел "прикладная математика"))))
В моем посте речь шла не о задачах, решаемых человеком, а о его навыках. Мы обсуждаем профессиональных программистов. На мой взгляд, так можно называть лишь человека, более-менее знакомого с Computer Science.
2 марта 2010 в 14:05
Роман прав, наверное)
Дмитрий, если задача состоит не в математике – программист становится кодером)? Да взять тот же геймдев – проблема разрушающихся ладншафтов до сих пор не решена. Но всяко, когда ее решать, надо иметь человека, который бы представил, как это сделать, и человека, понявшего, как именно сделать то, что другой представил, не так ли?
2 марта 2010 в 12:03
Интересно, а вы где-нибудь в трудовом договоре или, скажем, в документе о высшем образовании видели специальность "кодер"? Сомневаюсь. На мой взгляд, эти рассуждения про "не путать программистов и кодеров" и "сильных математиков" – не более, чем снобизм. Некоторые задачи требуют больше математики, некоторые – понимания бизнес-процессов, другие – ещё чего-нибудь. И от того, что Вася реализует пользовательские интерфейсы, а Федя реализует численные алгоритмы, Федя не становится программистом, а Вася – кодером. Просто они специализируются в разных областях.
2 марта 2010 в 12:00
Давайте не будем путать программистов и кодеров. Профессиональный программист – в первую очередь сильный математик.
В этом смысле я полностью поддерживаю Валерия.
Александр, ты прав: для решения одних требуются профессиональные программисты, а для других достаточно хороших кодеров. Нужны и те, и те.
2 марта 2010 в 11:00
Валерий, разные задачи ведь требуют разного, не правда ли?)
2 марта 2010 в 0:02
Может. Если не будет зацикливаться только на изучении инструментов (языков, осей, СУБД и прочей лабуде). А заглянет еще в математику и разберется, что такое инвариант цикла и что такое цикл Дейкстры… И что такое алгоритм поиска кратчайшего пути того же Дейкстры, и что такое алгоритм банкира того же Дейкстры… И что тако динамическое программирование Беллмана…что такое метод ветвей и границ, оно же – альфа-бета процедура…
А без этого – только любитель, хотя и продвинутый…
1 марта 2010 в 15:04
И так, после 103 сообщений я могу четко сказать: Да, программист самоучка может стать профессионалом своего дела.
28 февраля 2010 в 23:01
главное постараться и всё у вас будет
28 февраля 2010 в 0:00
а я вот делфи учи!)радости полные штаны!завтра буду учить компоненты adinational(или как оно там пишеться?)и вин32…а потом базы данных)
воо!)))))))))
27 февраля 2010 в 21:04
Отличный топик для вопроса выбрал. Хвалю.
27 февраля 2010 в 21:04
Онотоле.
27 февраля 2010 в 21:03
Господа, кто нить в курсе что за программа включает в опр промежуток времени рекламные ролики? В ресторане вещает какой то канал типа фешон тв но раз в 10 мин включается реклама этого ресторана, как они это сделали? Там не запись, ТВ вещает реально….
27 февраля 2010 в 1:05
#94
+1)
27 февраля 2010 в 0:04
#94 +10000)))))
как принято – институт учит учиться!
27 февраля 2010 в 0:03
>> только в условиях распи$дяйства в семестр и жопы на сессии можно обрести навык быстро в крайне сжатые сроки разбираться в теме и выдавать результат.
Для этого не обязательно учиться на программера)))
26 февраля 2010 в 22:05
А ещё очень важно научиться сохранять спокойствие. Я уже понял, что не стоит себе нервы трепать и расстраиваться, когда что-то не получается.
bla bla bla
26 февраля 2010 в 22:04
может, хотя все таки подавляющее большинство действительно талантливых программистов имеют соответствующее образование.
пройти высшую школу стоит все равно, только в условиях распи$дяйства в семестр и жопы на сессии можно обрести навык быстро в крайне сжатые сроки разбираться в теме и выдавать результат.
26 февраля 2010 в 22:01
Во девушки пошли! Программируют по любви!
А серьезно – все же нужно в институт. Только выбрать его не по престижу, а по качеству образования.
26 февраля 2010 в 21:05
ну я не могу заплатить за институт.. сижу учусь и программирую сама.
25 февраля 2010 в 2:04
#85
Romea Nelissen
Не знаю ни одного экономического, в котором бы давали хорошую матбазу по программированию. Экономисты не программированием занимаются…
24 февраля 2010 в 23:03
Как-то раз я пытался на пальцах, своими словами, рассказать на экзамене по мат.анализу о том, что такое супремум. Меня выгнали))
Тутречь идет о том, что с Вас спрашивают не то, что Вы умете, а о том, что Вы должны знать с точки зрения плана.
24 февраля 2010 в 20:03
я не согласен. если я понимаю и могу рассказать, то что у меня спросят, но только своими словами – это не значит, что я не знаю теории… и вообще сколько писал прогрмаммы для фирм, ни в одной меня не спрашивали о теории и ничего не расспрашивали о познониях в информатики… и в основном везде так… ИМХО главное не то, что программист помнит и может объяснить, а то что он умеет и может сделать.
24 февраля 2010 в 20:01
и правильно делают.
В итоге получается, что фраза "ты знаешь намного больше" себя не оправдывает.
24 февраля 2010 в 19:04
я написал первую примитивную програмульку в 8 лет, у брата в школе началась информатика… потом начал заниматься этим, но через пару лет забросил… и вот пару лет назад опять начал программировать.. а вот на счет школы и универа – ничего нового в написании прог я там не узнал, пару раз сходил на информатику в универе – было такое чувство, что начинаю тупеть от тех знаний, которые там давали… например, когда дома начинаешь уже работать с ком-портами и с вин апи, приходишь в универ и тебя просят написать программу хаотичного движения шарика по экрану… а когда ты пытаешь сказать что ты знаешь намного больше, то тебя валят теорией…
18 февраля 2010 в 15:01
Почитайте Кнута Искусство Программирования все 5 томов. Если разберетесь – вы теперь отличный прогер! Оторвут вас с руками!
17 февраля 2010 в 18:00
на счет вышки.
могут ли дать в ВУЗе экономического профиля хорошую теоритическую матбазу для программирования?
23 августа 2009 в 12:05
Мммм… не думал что подобный "голод" встречается у девушек;)
Да, проблема с "кружками" и курсами для молодежи в России существует уж не первый день, но ты сама нашла выход – сеть. Internet – клад информации, тут ты найдешь то, что тебе не расскажет ни один преподаватель. Ну, вот представь, в университете тебе все объясняет один – два преподавателя, которые уже по отлаженной схеме выучили не один десяток людей. Если бы эти люди не совершенствовались сами, а только зубрили то, что говорят в университете – цена им нуль… Вывод напрашивается сам: да, образование нужно, но полагаться только на него нельзя, нужно самому(ой) стремится к знаниям.
22 августа 2009 в 11:04
Того, что преподают в школе на уроке информатики лично мне не достаточно… Прям голод чувствую какой-то… Никаких кружков в моём "городе" нет… Вот и приходится мучатся над скачанными из инета учебниками, вникать в суть, искать задачи и тд…
10 августа 2009 в 20:04
профессиональным программистом – запросто, главное опыт! а вот стать талантливым разработчиком без технической "вышки" врядли получится!
учиться, учиться и еще раз учиться!
а для такой специальности учиться придется всю свою жизнь.
8 августа 2009 в 23:01
>> А в книжках можно синтаксис подсмотреть, и какие то функции списать…
Я PHP полностью учился по книге готовых рецептов и справочной системе программы Nusphere PHPEd. А с классами Гугл помог ))
8 августа 2009 в 17:02
в большинстве случаев профессионалами становятся именно самоучки, т.к. знаний интститутских маловато, вот и "роют" сами горы книг и ссылок
Было б желание!!
8 августа 2009 в 16:01
#73 – да я учился языкам программирования у преподавателей в институте. И после института было сложновато начинать работать программистом. А вот так что б без института и сразу работать не представляю как так можно … На работе не учат программировать, а требуют что б уже мог программировать, и все еще ограничивают сжатыми сроками. В институте преподают разные языки программирования, задают лабораторки с помощью которых будущий программист учится "азам" – самостоятельно решать функциональные задачи программирования от создания алгоритма программы, до правильно написанного кода (чтоб код был ООП, правильно написаны функций, что б не одной лишней переменной не было, что б код был как можно короче , если надо были вставки на других языках программирования, да их много заморочек по написанию кода…).
А в книжках можно синтаксис подсмотреть, и какие то функции списать…
5 августа 2009 в 15:04
"Литература обязательная к изучению" – такой не существует (по крайней мере, в моем понимании). Существуют материалы по синтексу какого – либо языка, алгоритмизации, ОПП….
5 августа 2009 в 14:03
Я думаю, что всю литературу, обязательную к изучению просто не удастся прочесть)) Ты бы немного конкретней задал вопрос. Что именно тебя интересует?
5 августа 2009 в 14:02
товарищи специалисты, немогли бы вы дать список литературы, обязательной к изучению? Ибо сейчас столько книжек, хз какие по делу, а какие "вилами по воде".
5 августа 2009 в 12:02
#74, верно.
Одиночество не сулит ничего хорошего… Человек так устроен.
5 августа 2009 в 10:05
Мне кажется, что преподаватель не обязателен, но вот наставник нужен обязательно. В гордом одиночестве и самообразовании ты никогда не станешь хорошим программистом. В нашей работе очень велика роль весьма расплывчатых черт личности, как коммуникабельность, умение находить информацию, практичность, и т.п. Об этом в книжках, в принципе, пишут, но начинающий просто их не поймёт. Ему нужно усваивать это долго и на примере. А "азы" которые обычно преподают в универах (алгоритмы и структуры данных) не слишком важны, с моей точки зрения. Их действительно можно изучить по книжкам.
4 августа 2009 в 22:05
#72, у вас был преподаватель?
Я знаю двух высококвалифицированных программиста, когда я спросил у каждого: кто тебя учил? он мне ответил: фантазия.
Что в принципе и мне помогает, если вы понимаете, о чем речь.
А что для вас: минимальные азы?
4 августа 2009 в 21:01
Если его возьмут на работу программистом без диплома и он там будет заниматься программированием + ему будут помогать профессионалы программисты. ))
Мое мнение навряд ли. По любому должен быть преподаватель, которые должен научить минимум азам.. Очень много моментов есть в программировании, которые не описаны в книгах. )
4 августа 2009 в 20:00
спасибо за поправку, ваши мысле мне более по душе.
4 августа 2009 в 12:01
Сергей reliable Рыбьяков, не совсем так, обучение происходит во время обучения, на практике оно лишь закрепляется, если человек научился складывать и вычитать, то сколько он не складывай и вычитать умножать делить и считать интегралы не научится. я набираю текст, кое как его форматирую и возвращаюсь в командную строку или на худой конец в билдер, вот там моя жизнь. но с другой стороны если бы я умел хорошо работать в офисе и документ выглядел красивее оно было бы хорошо и полезно.
4 августа 2009 в 9:04
#40
напротив, обычно мастера и учат нас – пишут книги
#41
а тут я с вами согласен, если человек ставит себя выше других он не достоин ни уважения, ни даже сострадания
#54
если вы в школе брали деньги у друзей за свою хреновую (да простят меня, но яуверен что это правда) работу, ты вырят ли будете Программистом с Большой буквы
#56
у Программистов нет разделения на возраст, есть разделения на знания
#62
практика доказывает: обучение приходит во время практики, вы говорите что много раотаете с оффисом – тогда в своем после вы нас обманули)
4 августа 2009 в 9:01
Я например увлёкся программированиев в 9 – м классе. Но учителя к этому не имели никакого отношения. У нас даже программирования в школе не было:)
4 августа 2009 в 8:04
#51/
Возможно, но учитель может пробудить интерес. Например, я увлекся всем этим еще в 7-м классе, когда приобрел тетрадь по информатике.
А потом, в восьмом, нас посадили за "Кенгуру" (если кто-нибудь помнит, что это). И все. Правда, к Паскалю и Прологу нас не подпускали, но я начал ходить в библиотеку (!) – нашел там учебник Могилева и Пака по информатике. В нем познакомился с Лиспом, Смолтоком и C, и учебным компьютером Е97. Даже после выпуска после 9-го я пошел и к учителю и достал там ТП 7.
Поступил в техникум (2003), там информатик дал мне Борланд C++ и Тасм.
Там еще половину парка компьютеров составляли древние машины с интерпретаторами Бейсика и Win 3.1. Мы вообще офигевали.
PS. Учусь на электрика.
31 июля 2009 в 13:00
CCNA от Cisco, а это зачем вобще? или есть маза сразу на работу по этой теме устроиться?
программисту самоучке совершенно естественно придти в форум и начать задавать вопрос в стиле я специалист но возникла маленькая неприятность по ком порту не получаю ответов пользуюсь таким-то классом билдера… это кодер а не программист, он умеет что-то делать, и делает это хорошо, но программировать он не умеет, он не может решить нестандартную задачу, не задумывается об оптимизации алгоритма и уж совсем не задумывается о том чтобы провести исследование на тему какой аглоритм лучше для его конкретной задачи.
до смешного иногда доходит когда мне пиняют что я пол часа сижу играюсь, а за соседним столом кипит работа, ага, копипастом устанавливают биты в зависимости от галочек, копи-паст человек знает и делает, а я цикл поставлю вместо 160 раз по 5 строк копипастить, а потом если ещё что-то поправить это же кодеру работы на неделю как и баг в виде опечатки тут выловить мозги на бекрень.
30 июля 2009 в 18:02
Ну да, программирование примерно одинаково во все языках, просто знание множества языков выгодно
30 июля 2009 в 15:00
Ну так везде так. Программирование в этом смысле ничем не выделяется. Научить чему-то нежелающего учиться – задача сложная.
Имхо, кстати, что ты чем-то не тем пять лет занимался)) Языки – вопрос вторичный.
30 июля 2009 в 13:04
Ребят, вы как то медленно, но верно отходите от темы обсуждения. Офис это конечно действительно интересно и актуально, но все же программирование здесь основа. Вот например мне 17 лет, и буквально за 5 лет, как я начал заниматься программированием, я успел изучить: Turbo pascal, С++, Perl, HTML, Java Sсript, PHP. И мало того, еще у меня почти полное образование CCNA от Cisco, еще чучуть до учиться осталось. И я вам с уверенностью говорю, что программированию нельзя научить, а можно только научиться. Да, возможно, преподаватели по программированию, как то могут помочь, в вопросе каких то действительно сложных понятий, но опять же, смогут помочь только если вы сами захотите в этом разобраться.
30 июля 2009 в 12:03
если хорошо читают офис это прекрасно. лучше хорошо знать офис чем плохо программирование.
я бы тоже с удовольствием подтянул знания по офису как общие, так и конкретно по новой версии, а то там чёрт ногу сломит, 2003 ещё куда ни шло а старшие подойти страшно так как времени разбираться нету, а печатать и отправлять надо вчера.
к сожалению сколько встречался со школьной информатикой это полный бред нафиг никому не нужный (верю что бывают исключения, но мой опыт таков)
30 июля 2009 в 11:01
Офис тоже полезно знать)) Я бы, например, не отказался иметь какое-нибудь цельное представление о возможностях Экселя. А поскольку его нет, то сейчас мои столкновения с ним каждый раз заканчиваются либо каким-нибудь найденным в интернете/хелпе решением, либо решением той же задачи на неком языке программирования, хотя в экселе, вероятно, было бы быстрее и наглядней.
30 июля 2009 в 10:04
у меня информатику не отменяли, но за то на ней майкрософт офис преподают!) погряз в электронных учебниках, книгах, лажу по сайтам….
знаю паскаль, основы бэйсика, разбираюсь в компьютерной механике и сборке. вроде как нормально знаю для 12 летнего ребёнка (мне 12 лет)
24 июля 2009 в 13:04
Хороший программист – человек с особым складом ума, я бы даже сказал творческим. БОльшая чать знаний поступает в мозг сама, потому что человеку это интересно => стопки книг и "закладок" из Гугла.
Если есть тяга к такого рода знаниям – путь открыт. И чем раньше на этот путь ступишь – тем лучше.
Мое личное мнение – 15-16 лет для "начала" – оптимально.
23 июля 2009 в 10:02
как в любом деле выучиться лучше лет до 23, после 27 начинается новая перестройка организма и учиться уже становится совсем сложно, но программирование это не спорт и в принципе можно хоть в 90 лет начать учиться, помню даже годах в 96-98 какой-то буддистский храм с дедами выигрывал конкурсы по красоте сайтов… программирование ли html оставим для теоретиков, но специалистов достаточного уровня в то время было мало, средств визуального построения тоже не было так что всё в блокноте далалось, а получалось очень красиво.
23 июля 2009 в 0:05
предельный возраст это где-то 20-21 год, потому что программерами в основном работают до 30 лет, а потом либо руководят проектами, либо просто помогают в обучении молодых спецов.
22 июля 2009 в 23:02
А какойпо вашему предельный возраст что б начинать учиться, и потом получить работу программиста ?
21 июля 2009 в 4:02
Автору темы еще пожелание : научиться печатать без ошибок)
21 июля 2009 в 1:05
А нас в школе учили делать сайты в html но никто почему то не понял,и мне пришлось уже тогда заработать деньжат:))а щас вот снова нахлынуло,сидел (уже в php)писал сайт…И потом нашел эту замечательную группу.Я думаю каждый может стать программистом,главное желание стремление и чуточку обезбашенность это мое мнение:)
18 июля 2009 в 22:04
Всем спасибо!Что не поленились направить меня по правельному руслу.Всё уяснил всё понял учёл недачёты.
12 мая 2009 в 23:01
#51.
Я с тобой в какой-то степени не согласен.
Научить и научиться – слова идентичные. Человек может научить кого-нибудь научиться программировать – это 100%. Самое главное, чтобы у обучающегося было большое желание научиться, а если этого желания нет, то все усилия учителя будут пустыми!!!
12 мая 2009 в 23:00
Программированию нельзя научить, ему можно только научиться.
12 мая 2009 в 22:05
Конечно да, может!!! Это безусловно.
Но в то же время, диплом о высшем образовании тоже необходим!!!
12 мая 2009 в 22:00
Конечно!!!!Хороший программист это не тот кого учили, а тот кто сам учился и многого достиг, но корочки не помешают)
5 мая 2009 в 18:03
Может, если продолжит учиться не в "вакууме", а в команде. Например, устроится на работу. Хотя универ тоже сильно не помешает.
8 февраля 2009 в 10:04
да может если этого захотеть и нужно много времени провести изучить тонкостей компьютера знать каждую деталь и т.д выучить язык программирование знать каждую букву вслепую на клавише знать все проблемы которые можно исправлять без посторонней помощи и тюд
5 февраля 2009 в 17:04
А что же максимум "нормальный программер" должен? А то тут как-то мелоковато все
5 февраля 2009 в 16:04
Может.
1 февраля 2009 в 15:00
Потому и указал как "желательно". На самом деле ХП в большей мере позволяет получать и опыт и знания, чем то же чтение книг или лекций по программингу – просто потому что это удобнее, естественнее и знания поступают "между делом" ))) И п.4 оптимально дополняет п.2 и п.3 и частично позволяет бороться с отсутствием п.1.
31 января 2009 в 15:03
Может
31 января 2009 в 15:01
Я бы пункт 4 вычеркнул, как нерелевантный.
31 января 2009 в 2:01
Тот "уровень", который дают в вузах часто _вообще_ отношения к реальности не имеет 8-))) Причём, во всех не крупнейших вузах это правило работает на 100%, в крупнейших – на 90%.
Мне кажется, что нормальный программер должен как минимум:
1) иметь просто огромную тягу к новым зананиям
2) постоянно и плодотворно заниматься самообразованием
3) работать с коллегами, имеющими уровень выше твоего
4) желательно ХП (экстрим программинг который, а не винда)
И, безусловно, как бы там ни было, программер-самоучка, имеющий желание и возможность развиваться, в сто раз более предпочтителен для работодателя, чем прогер с дипломом, но который "и так всё знаю, учиться дальше некуда". Хотя самоучка с образованием ВМиК – это, в любом случае, лучший вариант, наверное ))))
И ещё есть такое "золотое правило": чем больше программист знает, тем больше он понимает, что пока ещё ничего не знает Потому тот, кто "всё знает" – это обычно либо школьник, либо студент как максимум
25 января 2009 в 16:05
> Программист – это не профессия, а стиль жиzни)
А мне говорили «Программист – это диагноз»
Все зависит от того, с какой стороны подходить к вопросу. У меня, например, есть образование в сфере IT, но, не смотря на это, считаю себя самоучкой, потому, что тот уровень, который дают в высших учебных заведениях, зачастую ниже, чем уровень, который требуется программисту для создания работающего приложения.
А учиться нужно всегда, учиться самому, читая техническую литературу. Но самое приятное и главное, если есть такая возможность учиться нужно у мастеров в этом деле, наблюдая за тем, как они работают, перенимая и используя их приемы. Мастера научат тому, о чем не пишут не в одном учебнике.
22 января 2009 в 21:05
Программирование – искусство …
18 января 2009 в 3:05
результат вклада – это главное в жизни
18 января 2009 в 1:02
Программист – это не профессия, а стиль жиzни)
18 января 2009 в 0:02
Программистов не самоучек—- Не бывает.
17 января 2009 в 18:03
Собственный опыт))
17 января 2009 в 18:02
в вопросе есть сомнение
10 января 2009 в 20:03
Да, но потребуеться много времени и усилий.. Я два года назад не зналваще ничего, в автобусе услишал разговор двух людей.. А по чему бы и нет? Сейчас знаю С++, HTML, Pascal, CSS.. И мне только 14. А если взрослый дяденька?
9 января 2009 в 1:04
Да. Однозначно. На собственном опыте (=
4 января 2009 в 19:05
Думаю надо "выучиться" по соответствующей специальности и ещё, что любой программист, в принципе, самоучка. Это же не молотком колотить, учился, пока попадать не начал, а потом – специалист ёпт =)
4 января 2009 в 19:03
Вопрос поставлен неправильно. Смотря в какой степени профессионал (где работать то будешь). Хорошим программистом можно стать точно.
4 января 2009 в 16:00
Ну если этот человек научится писать слово программист в двумя буквами "М" .. Может что-то и получиться..
А вообще если писать и разрабатывать толковые вищи то тогда и без корочек монжо идти.. Главное мозг.. Но универ конечно не помешает..
4 января 2009 в 9:02
а если я например учусь на заочке. нам никто нихера необъясняет, придешь раз в полгода в универ, тебе дадут задания и иди делай их как хочешь.
так что заочники тоже в какойто степени самоучки.
28 декабря 2008 в 10:05
А в чем сыр бор? Если даже никто не смог раньше на собственном энтузиазме "стать хорошим программистом", то кто мешает стать в истории первым?
28 декабря 2008 в 1:01
>А вообще – удел программистов – всю жизнь учиться.<
Хорошо сказано)
Универ дает базу все-таки(ну или не даёт,это кому как)),стимул,что ли…
Да и консультация с Хорошим преподавателем никогда не помешает(все-таки беседа со специалистом с глазу на глаз лучше общения на форуме)
Но без самостоятельного изучения языков и штудирования мануалов-никуда…
27 декабря 2008 в 19:02
Конечно же, программист-самоучка может стать профессиональным программистом. После того, как подучится, конечно.
Если серьезно – знаю некоторых программистов (вообще-то я и сама из их числа), которые начинали как самоучки, а потом уже осмысленно выбирали специальность и получали высшее образование. Читать книги и мануалы – это само собой. Но профильное высшее образование еще ни одному программисту не помешало. Просто когда уже знаешь, что к чему,и специальность выбираешь осмысленно – пользы от обучения гораздо больше.
А вообще – удел программистов – всю жизнь учиться.
26 декабря 2008 в 18:03
Я думаю, что если человек нормальный, и он готов посвятить этому всю или хотя бы часть жизни, то у него всё получится. Самое главное, чтоб это было интересно, потом уже надо ориентироваться на те вещи которые действительно можно реализовать.
При написании программ Вы должны обращать внимание не только на её структуру, но и защищенность, актуальность кода, альтернативы и т.д.
Если Вы готовы учиться, продуктивно работать, проявлять энтузиазм и смекалку, то программирование – Ваш выбор.
Желаю удачи!
26 декабря 2008 в 17:04
Лучше чем опыт и реальные знания? Да диплом вообще мало о чём говорит. Он ведь может быть и куплен, в конце-концов. Даже красный. К тому же, даже если красный диплом получен в результате обучения, то это тоже может говорить о разном. Например, что человек всё вызубривает, что скажут, но не имеет ни малейших углублённых знаний и определённых интересов (такого человека я знаю – не с красным дипломом, но близким к нему). Или обладает хорошими навыками общения с преподами. Например, у меня красный диплом, но из него процентов 30% – результат политики.
26 декабря 2008 в 17:03
Обычно диплом лучше говорит о квалифицированности, особенно красный, а таких директоров кто в диплом фтопку
26 декабря 2008 в 16:04
>>Роман Rorick Белоус
+1
26 декабря 2008 в 14:03
Большинство работодателей будут смотреть на резюме, опыт работы и главное – результаты собеседования/теста. Когда я устраивался мой диплом либо вообще никого не волновал, либо волновал отдел кадров для отчётности – уже после того, как я устроился. А если работодатель смотрит на корочки – то нах такого работодателя.
26 декабря 2008 в 14:01
Напоминаю, что большинство работодателей будут смотреть на корочки а не на навыки, может но лучше все таки с заведением ))))
24 декабря 2008 в 15:01
Может, конечно
24 декабря 2008 в 11:05
С укчетом того как преподают программирование на программерских специальностях некоторых вузов, по другому и не получится.
24 декабря 2008 в 10:01
Да я не насчёт информатики парюсь.Просто фундаментбыл заложен в школе. Мне нравится чем я занимаюсь и это главное.
24 декабря 2008 в 3:02
Я из-за того, что в 3-4 часа ночи придумываю что-то интересное всегда просыпаю первые 2 пары ))
24 декабря 2008 в 3:01
>> Если в 3 часа ночи, когда уже давно пора спать, тебе вдруг в голову приходит НОВАЯ идея,…
ыыыы)) из той же оперы когда уходишь с работы, идешь и все думаешь "а как бы вот это лучше реализовать…"
24 декабря 2008 в 2:00
Думаю, что может!Главное хотеть и уметь прогить, остальное можно в инете накопать.
24 декабря 2008 в 0:03
Программа информатики в школе – полная хуйня, вот что я вам скажу (: Я на нее, собственно, и не ходил ни разу. Зато зарабатываю довольно прилично (для фрилансера).
24 декабря 2008 в 0:01
Мне кажется, что определение "профессиональный программист" у каждого свое ))
Если под этим термином понимать – человека, который не только умеет писать программы, но еще и делает это грамотно и красиво, то да – поддерживаю предыдущих ораторов – надо читать и копать самому, а главное практиковаться… сначала для себя, сам с собой, потом в команде для кого-то.
Просто, общаясь с программерами вынес для себя, что "профессиональный программист" – это кодер, который мало думает об общей задаче и плохо понимает общую картину работы приложения, за то кодит быстро и профессионально…
Как в том анекдоте, про скорость набора на клаве – такая фигня получается.
24 декабря 2008 в 0:01
да
23 декабря 2008 в 23:04
Ну информатика в школе (по крайней мере мне) не дала ничего. Поэтому убиваться по поводу ее отмены я бы не стала.
Если штудировать учебники (а также мануалы, доки и т. д.) для тебя проблема, то профессиональным программистом тебе не стать никогда. Дальше выбор за тобой или ты этого хочешь и добиваешься, или ты идешь в манагеры
23 декабря 2008 в 22:01
Это у всех так.
Потому что перед сном немного расслабляешься, мозг разгружается от напряжения, получает передышку и через минут 15 подсознательно генерирует новое решение. Надо обязательно воплотить. Приходится вставать с кровати, включать комп и доделывать, иначе не заснёшь…
Зато потом спишь, как младенец.
23 декабря 2008 в 21:04
>> Если в 3 часа ночи, когда уже давно пора спать, тебе вдруг в голову приходит НОВАЯ идея,…
Как знакомо, как знакомо!
23 декабря 2008 в 17:03
Да, однозначно может!!!
Большинство талантливых программистов – не те, кому программирование преподавалось в институте… а те, у кого есть желание что-то делать, и ковырять, познавать новое, то, что интересно!… Если в 3 часа ночи, когда уже давно пора спать, тебе вдруг в голову приходит НОВАЯ идея,… и ты бежишь к компу, чтобы попробовать её реализовать,… – то ты точно будешь успешным программистом в будущем.
А технические вещи (языки, платформы, реализации) – этому всему учишься походу дела. И опять же – только сам, ковыряя литературу и сайты…
23 декабря 2008 в 17:01
Оно то кончно верно, но в универ тоже пойти надо…
23 декабря 2008 в 17:01
Это само сабой!!!
23 декабря 2008 в 16:04
+1
23 декабря 2008 в 16:00
Как раз так и бывает.)) Читайте книги, Хабр и просто гугл. Пишите как можно больше и будет вам счастье.)