LINUX.ORG.RU

Раннее знакомство с Java калечит судьбы программистов?

 ,


0

0

По мнению профессоров Нью-Йоркского университета Роберта Девара (Robert Dewar) и Эдмонда Шонберга (Edmond Schonberg) у студентов, начавших изучение программирования с Java, присутствуют только поверхностные знания о предмете. Также они считаю, что изучение програмирования стоит начинать с низкоуровневого языка Си, а также языков С++, Lisp и Ada.

>>> Источник

anonymous

Проверено: Shaman007 ()

Ответ на: комментарий от Sidrian

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

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

>Потому что если есть возможность нужно разрешить студентам делать лабы на том, что им нравится

Им нравится 1 язык. 5 лет они будут делать лабы на одном языке. Дальше что?

Далее - про пролог тебя спрашивали? (что-то ты или сложных предложений не перевариваешь или не ясно - все надо разжевывать) Подашь в суд?

>Уже.

Ты работаешь в конторе которая занимается профессиональной разработкой софта?

>Для получения индульгенции продвинутости я хочу по возможности выучить Хаскель :)

Да хоть академиком стань (сходи на петровку книжку купи). Это не меняет факта что между лабами и курсовиками и софтваре девелопмент есть серьезная разница.

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

>Правельно. Сделать как в МИТе - лаборатория с Линуксом и Емаксом и пусть там на Схеме програмят.

Ты несешь феерический бред:) Ты там был?

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

>Ты несешь феерический бред:) Ты там был?

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

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

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

Ты мне своим пистоном уже все уши прожужал. Можеш изложить, почему ты к нему так привязался?

>Далее - про пролог тебя спрашивали? (что-то ты или сложных предложений не перевариваешь или не ясно - все надо разжевывать) Подашь в суд?

ОК: плохо, что нас на ЛП заставляли сдавать лабы именно на Прологе и не давали выбрать любой другой ЛЯП по вкусу. Теперь до тебя дошло?

>Ты работаешь в конторе которая занимается профессиональной разработкой софта?

Для тупых: да. Прикинь, не весь софт делается на Жабе с применением Корбы. Сюрприз?

>Да хоть академиком стань (сходи на петровку книжку купи). Это не меняет факта что между лабами и курсовиками и софтваре девелопмент есть серьезная разница.

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

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


> А чем например отличается Java|Python|C#|Pascal|C++ в этом разрезе?

Я лично видел людей искалеченных Явой :) Страшное зрелище :)

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

Если кратко то _одна из_ причин это то что Ява/.Net _если с них начать_ воспитывает ощущение что язык, фреймворк, операционная система и IDE это одно и тоже и назвается Микрософт Java/.NET. :)

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

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

И тогда не будет искалеченных людей которые считают что программа на ява общается с сетью помимо ОС и TCP/IP&UDP используя исключительно классы которые в свою очередь через астрал напрямую к RJ45! Реальный пример между прочим - и человек очень неглупый.



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

Аминь. Выразил то, что я безуспешно тут пытаюсь донести уже второй день. Типо преподы в МИТе такие глупые учат Схеме потому что жабу не асилили. А класно бы было сразу с первого семестра Жабу пустить! Ынытрпрайзно и куча спецов сразу готовых быдлоко^М профессионально разрабатывать ПО!

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

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

Дите - шутки шутками, но научись себя вести.

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

Ты что думаешь что МИТ это такая мекка линуксоидов где по причине курса SICP каждый второй выходит Торвальдсом, а каждый первый Столманом Гентушником?

Люди такие же самые - просто программа обучения получше.

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

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

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

>Ты мне своим пистоном уже все уши прожужал. Можеш изложить, почему ты к нему так привязался?

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

>Теперь до тебя дошло?

Это до тебя не дошло. Ничего плохого в этом нет.

>Для тупых: да.

Ты нарвешся дите.

>Я понимаю, ты как ПТУшнег хочеш доказать, что ты ничем не хуже

Откуда это дите недоразвитое прилезло?

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

>небось и спецкурс админства линукса был

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

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

Я понимаю. Быдлокодить на жабе приятнее чем доить коров...

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

> Люди такие же самые - просто программа обучения получше.

Нее. Справедливости ради замечу что МИТ это вроде физтеха только круче. :) Люди в МИТ действительно другие :)

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

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

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

>Я лично видел людей искалеченных Явой :) Страшное зрелище :)

Я видел людей искалеченных С#/Pascal/C++/C - с питонистами не общался - не требовлись на собеседованиях. Я видел человека искалеченого лиспом, и К.Т.Н.ов которые не осиливали простых вещей.

Дело тут не в языке.

> Если кратко то _одна из_ причин это то что Ява/.Net _если с них начать_ воспитывает ощущение что язык, фреймворк, операционная система и IDE это одно и тоже и назвается Микрософт Java/.NET. :)

Чем отличается C# Compiler + .NET RE, от Java Compiler + JRE, от GCC+libc, от Python + Standard Library от Лубой ЯВУ + стандартная библиотека?

Не увидел пока разницы.

>Реальный пример между прочим - и человек очень неглупый.

Я в этом не сомневаюсь - я просто в таком разрезе не вижу отличия С# от перла.

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

>Ты - типичный представитель.

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

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

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

Измениш. Если этим Хаскелем действительно поиметь, а не просто "ой в зачетке 5 по матану, ну ниасилило дите програмирование все равно 5 надо поставить чтоб красный диплом не испортить". Как только на CS-специальностях начнут иметь CS-дисциплинами все сразу изменится. Опять таки, если людей пересадить в емакс то и програм, где вся логика акуратно зашита в button1OnClick не будет.

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

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

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

>Чем отличается C# Compiler + .NET RE, от Java Compiler + JRE, от
>GCC+libc, от Python + Standard Library от Лубой ЯВУ + стандартная
>библиотека?

как минимум стилем пропаганды и учебного материала :) Ведь все эти ЯВУ не абстрактно в ваккумме, а в конкретных условиях существуют.

Если программист изучит начала Явы то у него будет велик соблазн так на яве и остатся. Так как для него это будет гораздо удобнее - он будет доучивать а не заново разбиратся. По этому он все остальное будет для галочки учить, а Яву для решения реальных задач. Ловушка для ума. И если вы его драконовскими мерами будете пытатся лечить, то возненавидит не болезнь а врача, то есть вас. И у него все эти маразмы будут
накапливатся.
БОлее того - препод тоже человек. И если в программе обучения написано что С а он знает яву то С то он изучит и сможет. А если учитывая распостраненность явы в программе написано ЯВУ это будет ява и никто разным языкам учить не будет. Это как с операционками - даже если сказать что можно сделать на разных ОС , все равно будут делать на венде. Если сказать что нужно на разных - сделают на венде и чуть чуть на линухе, который так никто знать и не будет. То есть вместо специалистов которые казалось бы будут знать венду и Линух на деле будут знать только венду.
По этому нужно нафиг запретить венду в образовании кроме как в отдельных узких областях - например учить венду по Wine :p Так как венда им мешает осознать картину в целом. Они не могут подходить к ней как к еще одной операционке - только как к The Windows. А вот когда осознают картину в целом и реально порешают задачи в этой цельной картине, то пожалуйста - потом хоть C# под Висту, кто жаждет.

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

>Нее. Справедливости ради замечу что МИТ это вроде физтеха только круче. :) Люди в МИТ действительно другие :)

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

>Все компы на факультетах физики и математики были под линуксом. И ноуты у преподов под линуксом. И им это нисколечки не мешалало. И админили они это все в основном совместными усилиями.

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

Но люди делились на 2 категории - кому это было надо и кого и MSVS/Delphi устраивал. А учились все рядом.

Не сомневаюсь что в МИТ шифт в сторону здравомыслия больше - однако это не меняет того факта что Лука Карделли работет в MS Research и делает фактически ненависный С#:)

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

>А резюме мне присылают с его специальности - так кроме дотнета (а одно бывает вообще исключительно с ВБ) нихрена нету и собеседовение пройти не в состоянии. И все окончили КПИ. Чеж они при наличии курса по админству линука тем не менее поголвно практически работают на венде, а при наличии обучени и прологу и лиспу - нихрена кроме .NET не знают? Я бы не стал все валить на низкий уровень преподавания. Люди такие. Нафиг оно им не надо.

Ну наконец ты, пастух, меня понял! Я же о том же: после того, как им показали С# твои собратья больше ничего учить не хотят. А зачем? Можно ведь спокойно в Киеве сидеть сайтеги паять. Точно по той же причине им нельзя показывать Жабу на младших курсах.

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

>как минимум стилем пропаганды и учебного материала :)

Здесь можно согласится относительно .NET - однако сановские технологии не подразумевают наличие IDE.

Какой язык вы предложите? C++? Его так же наура начнут делать в MSVS.

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

На любом майнстримном языке будет такой соблазн (Python/C++ не исключение).

>Это как с операционками - даже если сказать что можно сделать на разных ОС , все равно будут делать на венде.

Я же не сижу:) Правда я начинал с CP/M80 и MicroDOS:)

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

Да кстсати я заметил то, что вы написали какие языки _не учить_. А какие учить?

И еще тут надо просто проработать программу. Например у нас был весьма грамотный курсовик - надо было написать свой шелл. Как не крути - венда тут не помошник.

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

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

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

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

>А не так как предлагает наш выдающийся стукдент "на чем хочу на том ворочу". Это и ведет к курсовикам на дотнете.

Ну конечно. Все курсовики должны быть исключительно на Жабе!

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

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

"Только постоянные тренировки в боевых искусствах обеспечат долгую и счастливую жизнь. Б.Ли" (Р. Асприн - Мифологическая серия ) :) Пообъясняй пару лет студентам чего нибудь, и многому научишся - очень полезно любому образованному человеку. Причем полезно вообще и по жизни а не только на ЛОре :)

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

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

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

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

Нет, просто у нас разные цели. Мы оба терпеть не можем физику/матан, но он хочет превратить вузы в ПТУ, а я просто хочу, что-бы на CS-специальностях учили(как ни странно) CS. К тому же я еще до начала обсуждения наступил на его любимый мозоль - Жабу, у он, даже не смотря на то что его уже тыкнули мордочкой в то, что ни в Украинских вузах, ни в Беркли-МИТе распределенным вичислениям не учат задрочкой корбы и жабы, не может попустится.

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

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

А что такое CS о тебя не хватит ни образования ни опыта сформулировать. Сиди дальше в своей необразованности.

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

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

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

>Бугога пастухи меня научат CS!

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

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

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


>Здесь можно согласится относительно .NET - однако сановские технологии
>не подразумевают наличие IDE.

Есть еще толпа быдлокниг в магазинах от которых не получится не только избавится но и игнорировать. И дело не только в IDE дело во всей куче технологий которые фактически сразу и в одном флаконе.

>Какой язык вы предложите? C++? Его так же наура начнут делать
>в MSVS.

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

И кстати по этому идея что в ВУЗе должен быть везде линукс вполне разумна. Только вот если у вас это уже как то поняли, то у нас например вообще все глухо и мрачно(средняя полоса России) - один ( мой :) ) линукс класс в океане венды.

То что вы написали про свой ВУЗ это _действительно_ помогает в сдвигании ситуации в сторону разумности. Просто вам этого не заметно так как вы не видели как оно бывает мрачно !

>На любом майнстримном языке будет такой соблазн (Python/C++ не
>исключение).

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

И кстати если с C++ вы правы, то Микрософт Вижуал Питона нету :) А это все не в пример упрощает, кстати. Так как тут тупость обучаемого в нашу пользу - про то что в Питоне можно как в Яве он вообще говоря не узнает :p пока мы ему не расскажем.

В любом случае ясно что нужна система обучения а не просто учим ЯВУ такой-то.

> Я же не сижу:) Правда я начинал с CP/M80 и MicroDOS:)

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

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

Грамотное построение задач ПЛЮС нормальная среда. Что бы был двоякий эффект. Грамотное построение задач это конечно основа, но если писать этот же интерпретатор командной строки на C#, .NET разрушает мозг подспудно :) С помощью мануалов и пропаганды :) И ява тут делает совершенно аналогично.

То есть если суммировать то практический курс:

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

1 этап : среда аналогичная компу под ДОС + процедурные языки типа паскаля(С итп) + соотв задачи, например нариовать на экране (в памяти которая 1:1 меппится на экран) кружок/квадратик без применения библиотек. Наверное это можно и в школе. Умников отлавливать, прогонять через специальные тесты и пускать адаптированную версию программы обучения.

2 этап - среда линукс/юникс но "простой", библиотеки(в смысле dll и статической линковки), пока по прежнему процедурные языки, (выделяется С, но и остальные), но пайпы, бат файлы(шелл), основы сети и пр. Книжка Баха :) по теории ;). Простые интерпретаторы, создание комплексов из нескольких независимых программ, make файлы итп
Для графики использовать создаваемые самомтоятельно svg файлы или вызываемые через pipe программы типа gnuplot. Понятия о веб технология - CGI "вручную". rpc для C (и прочих процедурных языков). Сетевые протоколы и пр. Всякие лиспы тоже куда-то сюда. Тут же всякое простое железо вида "напиши в порт байтик рука у робота и дернется"


3 этап - среда линукс/юникс + GUI : основы ООП, соотв языки: может питон и перл, C++ ,мб smalltalk . Цикл событий в GUI, понятия о тулкитах и написание первых графических программ с применением оконных интерфесов. Тут как раз то что gtk отвязан от обьектной модели языка здорово пригодится. Допустимо применение осмысленных рисователей интерфейса, типа glade, но без управлением проектом. Те должны писать программы понимая что происходит, но сокращая работу руками.
В общим весь третий этап осваивают ООП и GUI. При чем не только в красивых языках , но и в грязных типа perl, что бы видели что обьекты можно реализовывать самостоятельно. В конце этапа веб программирование в его быдлоPHP смысле.

4 этап - Для сложных объектных( и не только) наваротов, OO RPC(Corba и пр). AJAX всякие, IDE, фреймвоки. Но пока на примере в основном не Явы. Хотя уже можно немного давать Ява и .Net. Тут можно также рассказывать про атское утройство Винды изнутри - благо базовые знания все есть. Лабы под wine :p . Javascript/Activescript и прочие *script языки, соотв технологии, XML, DOM и всякие такие радости в зависимости от желания/необходимости. Тут наверное про виртуальные машины, биндинги к ним и прочее.

5этап - полное переключение из режима даем знания вообще, к режиму
"что нужно знать энтерпрайз ява программисту" или "писателю драйверов пад висту":) Требовать гетерогенности если это разумно но особо не заморачиватся. Вот тут кто хочет дотнет, кто хочет яву, кто вижуал васик. На этом этапе уже смотря на яву ясно что это куча кусочков в бумажном пакете с надписью САН :)

Я наверное кучу всего забыл - но общий вектор вроде наметил. "От простого к сложному" это наше все :)

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

Ты конечно не знаешь, что CORBA это стандарт Object Management Group. Членами OMG в дополнение к W3C, NASA и тому подобному является 89 университетов. Что такое Fraunhofer, INRIA, Carnegie Mellon, Токийский Технологический и т.д. объяснять не надо? В прочем такому умному и образованному computer scientistу как ты наверняка не интересны индустриальные стандарты - ты если надо вооруженный и обученный налабаешь все наколенке как невопрос, и принесешь все в жертве великому МИТу.

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

А где всякое "нетрадиционное" программирование вроде функционального/логического/работы со знаниями? Где машинные архитектуры и всё, что касается железа? Где математика и то, что с ней тесно связано (КА, формальные языкм)?

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

Я же написал что
а) это с точки зрения практики
б) я многое забыл :)

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

Апдейт:

По этому по тому какую к этому и где надо математику и особенно теорию должны думать теоретики :p А какое и где железо - соотв железячники :)
Я там кратко упоминул про лисп и про роботов :)





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

>И дело не только в IDE дело во всей куче технологий которые фактически сразу и в одном флаконе.

Ну и что? В питоне и перле и в С они в таком же флаконе.

>Btw C++ давать не в коем случае нельзя до того как не буден усвоен C. Именно чистый C. В моей иерархии концепций :) процедурное программирование должно идти до обьектного :)

Ну и куда тогда денуться быдлокниги? Что сказать им чтоб не в комем случае книжек не покупали и дальше лекций ничего не учили? Пойдут они и купят - во как раз в магазине книга по с/++ кусок содержания:

Глава 20. Прокладки ...20.1. Всеохватность изменений и усиливающаяся гибкость ...20.2. Прокладки атрибутов ...20.3. Логические прокладки ...20.4. Управляющие прокладки ...20.5. Прокладки преобразований ...20.6. Концепции составных прокладок Глава 21. Облицовочные классы Глава 22. Прикрепляемые классы

и пойдет студент наура ваять прокладки:) И что делать? В этой области ситуация одинаковая. Есть хорошие книги - есть прочие.

>Так как тут тупость обучаемого в нашу пользу - про то что в Питоне можно как в Яве он вообще говоря не узнает :p пока мы ему не расскажем.

ТА ладно - он что читать не умеет? Он быстро доберется до туториалов по ваянию сайта за 2 четыре часа на питоне - и его уже не остановить. А не дай бог найдет какой нить RoR в котором вообще все выглядит магией - и как вы ему потом обясните зачем С?;)

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

>В любом случае ясно что нужна система обучения а не просто учим ЯВУ такой-то.

100 пудово. На самом деле фактически в наших вузах и нету (ну когда я учился) изучения языков - возможно только первый курс где учат программированию. Во всех остальных сулчаях обычно прилагается к какойто теме - С к сиспрогу, SmallTalk/Java к ООП, пролог к ЛП, лисп(уже в некоторых вузах есть курсы на хаскеле) к ФП. А изучение идет в наших вузах самостоятельно - читайте книжки. К стати в беркли и мит как раз есть конкретные языковые курсы.

> То есть если суммировать то практический курс:

Все бы хорошо, но будет обратный эффект. Данный курс предполагает что студенты будут посажены в закрытое помещение без возможности общения с внешним миром. А поскольку это не получится - будем иметь (из опыта): однажды какой нить умник придет и покажет как он заделал формочки и кнопочки которые показывают картинку которую он нахенерил в SVG. И придет он не на 3тьем этапе, а на первом курсе. Он им покажет гениальный инструмент RAD - и все остальные почувствуют себя лохами делающими лабы в то время как он уже создал Программу! Реальность примера в том, что делфи то мы не учили, но ко второму курсу все освоили:) Студенты народ пытливый - вечно занимаются не тем чем надо:) И уровень крутости среди коллег определяется не сдаными лабами (вообще не показатель), а что ты можешь помимо этого - и они будут это все изучать, и будут читать быдлокнижки чтобы побыстрому ваять морды к базе данных, мучать опенжл (мы мучали vesa режим:)) и прочую фигню - и ждать этого недолго - это начнется сразу же в пермо семестре.

Курс построенный на сокрытии реальности - не выживет. Нам _не_ преподавали Delphi - все на нем делали лабы уже на втором курсе. Нам _ не_ преподавали Java и Smalltalk как ЯП - он был иллюстрацией к ООП, и даже С/++ никто не преподавал - это стало необходимостью для сиспрога.

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

Я думаю самая большая проблема вообще не связана с ЯП (не считая MS подхода который прямо направлен на уменьшение квалификации разработчика) а с методикой преподавания той или иной штуки - то есть самый большой вред это высосанные из пальца лабы. Меня например очень пропер пролог потому что я писал систему которая обучается на естественном английском лбому набору фактов а потом систему на этом же английксом можно допрашивать по поводу чего нибудь. Конечно мне нравилось! И я понимаю почему 90% этот курс просто ненавидели - конечно находить на прологе НОКи и НОДы от лабы к лабе. А потом то же самое на лиспе.

Это то о чем говорил sv75 - надо прекращать пагубную практику обработки строк на "C" - и все будет в порядке с мозком.

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

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

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

>1 этап : среда аналогичная компу под ДОС + процедурные языки типа паскаля(С итп) + соотв задачи, например нариовать на экране (в памяти которая 1:1 меппится на экран) кружок/квадратик без применения библиотек. Наверное это можно и в школе. Умников отлавливать, прогонять через специальные тесты и пускать адаптированную версию программы обучения.

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

>3 этап - среда линукс/юникс + GUI : основы ООП, соотв языки: может питон и перл, C++ ,мб smalltalk .

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

>Хотя уже можно немного давать Ява и .Net. Тут можно также рассказывать про атское утройство Винды изнутри - благо базовые знания все есть. Лабы под wine :p .

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

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

>Ты конечно не знаешь, что CORBA это стандарт Object Management Group. Членами OMG в дополнение к W3C, NASA и тому подобному является 89 университетов. Что такое Fraunhofer, INRIA, Carnegie Mellon, Токийский Технологический и т.д. объяснять не надо? В прочем такому умному и образованному computer scientistу как ты наверняка не интересны индустриальные стандарты - ты если надо вооруженный и обученный налабаешь все наколенке как невопрос, и принесешь все в жертве великому МИТу.

Я щаслив. А теперь перичитай что я писал все это время тебе: ГДЕ В ЭТОМ МЕГАСТАНДАРТЕ СКАЗАНО, ЧТО ЕГО НУЖНО УЧИТЬ ОБЯЗАТЕЛЬНО НА ЖАБЕ? НУЖНО ДАТЬ СТУДЕНТАМ, ЕСЛИ ЕСТЬ ВОЗМОЖНОСТЬ, ИСПОЛЬЗОВАТЬ НОРМАЛЬНЫЕ ЯЗЫКИ. Дошло наконец?

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

В случае с твоей любимой корбой такая возможность есть.

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

>Я щаслив.

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

>ИСПОЛЬЗОВАТЬ НОРМАЛЬНЫЕ ЯЗЫКИ

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

Нда. Это почти клинический идиотизм.

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

>Нет - просто твое заявление снобистское. Ты им заявил о своем элитарном положении а емго "признал" низшим.

Смотри сначала, на что я отвечал. Если моё заявление "снобистское", то его ответ - "ответ скромного униженного человека:)

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

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

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

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

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

Вы же учили все остальное "не по программе" потому что кое кто начиная с самого верха наплевал на то что-бы программа обучения была интересной не только для партии и правительства но и для безумного Васи :) лично. И кстати для нормального человека правильные лабы даже с ограничениями вполне себе интересны. Так как человек не тупой, особенно если ему обьяснить все прекрасно понимает. И на этом втором этапе можно много всего нормальному компутерщику рассказать так что никакой Дельфи и RAD ему интересен не будет :)

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

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

> Нда. Это почти клинический идиотизм.

Это юнышеский максимализм против всезнайства человека под 30 :p.

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

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

Много причин. (Но, как я уже говорил я за индивидуальный подход.)

Дело в том что вся эта функциональшина с лямбдами это уровень выше простого процедурного подхода. Тот же C это просто переносимый ассемблер. Соотвественно все хитрые навороты нужно давать после того
как человек поймет что "внутре у нее неонка". Те что внутри у ней те же процедуры. И когда это он усвоит можно давать всякие расширения этой концепции. И происходит это расширение массово в языках типа Питона, Перла и прочего Лиспа. То есть в языках с виртуальной машиной / интерпретируемых или/и со всякими синтаксическими наворотами. которые надо бы осваивать уже освоив начала знаний о том как делать компиляторы и прочие синтаксические анализаторы.

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

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

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

Как можно не асилить ФП? Там на самом деле ничего такого сложного нет. Это если их сначала научить императивщине то да, будут требовать выдать им чикл for и матерится.

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

> Это если их сначала научить императивщине то да, будут требовать
> выдать им чикл for и матерится.

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

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

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

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

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

Я не очень люблю физику. Как-то не сложилось... хотя выигрывал как-то областную олимпиаду (в 8-ом классе):)

Но говорить о том, нужна она или нет не стану - не могу быть обьективным этом вопросе - у меня предвзятое отношение к физике:)

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

Тебе, питоноиду, не кажется, что хамить людям нехорошо, даже на лоре?

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

Как выражается Витус, надо бы тебя отправить в гости к банной обдерихе.

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

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

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

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