argon bulletin board

Факултети => Факултет по математика и информатика => Темата е започната от: Jack Johnson в 27.07.2011, 17:23:57

Титла: Искам ей такава избираема дисциплина!
Публикувано от: Jack Johnson в 27.07.2011, 17:23:57
Отварям тази тема, за да се синтезират на едно място мненията на студентите (а и на преподавателите, ако пишат тук) относно каква избираема или факултативна дисциплина би било полезно да се организира във ФМИ.

Всеки, който има желание ФМИ да организира курс по дадена технология или по нещо, което ще бъде интересно и полезно за студентите - нека пише в тази тема. Коментарите по темата също са добре дошли, тъй като служат за обратна връзка с преподавателите (поне за тези от тях, които четат форума).

Аз съм активно работещ в IT сферата и наскоро ми се наложи да участвам в проект, където основната задача беше да мигрираме едно голямо и тежко ASP.NET приложение от MVC 2 към MVC 3. Отделно, в приложението имаше и доста голямо количество Web Forms код, който запознатите с ASP.NET отлично знаят, че като парадигма няма нищо общо с ASP.NET MVC. За капак, старият код е бил разработван паралелно на C# и VB.NET. Част от контролерите бяха писани на C#, друга част на VB.NET. В някои от view-тата също имаше много inline C# / VB.NET код. Целият файл Global.asax беше на VB.NET. В някои от Web Forms събитията пък имаше бъгове, които трябваше да оправим сами, преди да продължим с миграцията и т.н. и т.н.

Говоря за реален, истински проект, където клиентите плащат на програмистите, за да извършат подобна миграция. Можете сами да се досетите колко "красив" изглеждаше кода и въобще цялото solution дърво във Visual Studio-то.

Значи накратко - според мен ще бъде изключително полезно във ФМИ да се проведе курс по ASP.NET MVC 3 и да се представи новия Razor engine, разработен от Microsoft. Също така ще е полезно ако не само се представи технологията, ами се дават и задачи как да се мигрира по-стар ASP.NET код към MVC 3, тъй като в реалния живот не малка част от проектите са свързани с миграция - вече съществуващи приложения да се нагодят към по-съвременните и по-нови технологии.

Естествено, това изисква и познаване на по-старите технологии, но като за учебен курс ще е достатъчно да се покаже що е то ASP.NET MVC 3, какви са разликите спрямо ASP.NET MVC 2 и какви техники можем да ползваме (best practices), ако ни се налага да правим миграция на приложение от Web Forms и/или MVC 2 към MVC 3.

И само за справка - аз не съм активен .NET програмист. Навремето бях .NET програмист, но се преквалифицирах и вече от много години съм основно Java програмист. Казвам "основно", защото в реалния живот може да харесваш дадена технология и да искаш да работиш с нея, но конкретният проект (за който ти плащат) да ползва коренно различна технология.
Титла: Re:Искам ей такава избираема дисциплина!
Публикувано от: Михаил Петров в 27.07.2011, 22:28:19
Въпреки че никът ми е такъв не съм професор, по скоро ще да бъда първокурсник, и смятам да предложа следните направления.
Бих се радвал да уча следните неща

Web -> Ruby / Php както и разглеждането на конкретни рамки, за приложенията на съответните езици разбирайте фреимуърковете.

Шаблони за дизайн и различни поведенчески алгоритми.

Методи за подобряване на сигурността в информационните системи , криптиращи и хеширащи алгоритми.

Разбира се и твърде актуалното програмиране за мобилни платформи.

***
Видях в една подобна тема ,че болшинството предпочитат Майкрософт технологии докато аз от друга страна съм привърженик на по-отворените такива, което ми напомня за ще няколко предложения

noSQL бази от данни , напоследък много се говори за тях MongoDB, CouchDB и прочие. Но няма да откажа и някакъв курс ,базиран на SQL които да разглежда всички популярни системи за контрол на базите от данни както безплатни така и платени, смятам ,че това ще бъде чудесен опит за всички.
Титла: Re:Искам ей такава избираема дисциплина!
Публикувано от: radko87 в 28.07.2011, 08:38:21
Здравейте,

Първо да кажа, че идеята е супер.
Напоследък доста се замислям върху въпроса "Какво лиспваше във ФМИ?".
След като понатрупах малко професионален опит си мисля че имаме нужда и ок курс по agile software development или по-конкретно SCRUM.

Титла: Re:Искам ей такава избираема дисциплина!
Публикувано от: kom6u в 28.07.2011, 09:10:43
Аз съм за iOS и Android, като доста актуални в моментa. Java също е добър избор.

Като предлагам в края на самия курс, след като хората се смята, че трябва да са вникнали в материята, се обсъждат реални работни проекти. Това е добре дошло за програмисти без професионален опит...
Титла: Re:Искам ей такава избираема дисциплина!
Публикувано от: lamerko в 28.07.2011, 16:21:27
Ами никакви университетски курсове няма да ти дадат професионален опит. Всъщност няма да ти дадат никакъв опит. Освен може би дипломната работа, ако избереш да прави такава, но и там нещата са доста размити.

Колкото до самите курсове, освен очевадните такива, които се изброяват по-горе, бих добавил и един курс за комуникационни протоколи (с елементи на реинжинеринг). Това са доста полезни неща в практиката. Самия език за реализация в края на краищата няма чак толкова голямо значение.
Титла: Re:Искам ей такава избираема дисциплина!
Публикувано от: kom6u в 29.07.2011, 09:29:24
Ами никакви университетски курсове няма да ти дадат професионален опит. Всъщност няма да ти дадат никакъв опит. Освен може би дипломната работа, ако избереш да прави такава, но и там нещата са доста размити.

Колкото до самите курсове, освен очевадните такива, които се изброяват по-горе, бих добавил и един курс за комуникационни протоколи (с елементи на реинжинеринг). Това са доста полезни неща в практиката. Самия език за реализация в края на краищата няма чак толкова голямо значение.
Да съм казал, че дават проф. опит? Споменавам "се обсъждат реални работни проекти". Пример за джава от една книга:
CЪЗДABAHE HA ЧAT ПPИЛОЖEHИE
CЪЗДABAHE HA ПPИЛОЖEHИE ЗA ОHЛAЙH БAHКИPAHE
CЪЗДABAHE HA ОHЛAЙH МУЗИКAЛHО ПPИЛОЖEHИЕ

По този начин се сблъскват с реално проектиране, а не само тая ф-ция какво прави, онази какво, разни опции и чао... Защото най-много се научава именно като видиш приложени научените неща в проекти.  :roll:
Титла: Re:Искам ей такава избираема дисциплина!
Публикувано от: lamerko в 29.07.2011, 11:38:11
Тук определено не съм съгласен с теб. Когато си нямаш идея от езика и алгоритмите, краткото време в университета, прекарано върху материал, който не можеш да разбереш поради липса на основа, няма да доведе до абсолютно никакви знания. Нещо повече - студентите ще възприемат copy/paste стила и вероятността, никога да НЕ станат професионални програмисти заради изкривеното си обучение, става твърде голяма.
Най-добрия начин да научиш език, е да си вземеш добра книга за ОСНОВИТЕ на конкретния език, която има добър отзвук (ако е Java - КНИГАТА е Thinking in Java http://www.mindview.net/Books/TIJ/ (http://www.mindview.net/Books/TIJ/) - дори има и българско издание). Разбира се, това няма да е достатъчно от гледна точка на похвати, ООП и алгоритми, които се явяват универсални за повечето езици. "Изяждаш" въпросната книга от корица до корица, а неясните в нея моменти - повтаряш. След това си ИЗМИСЛЯШ един РЕАЛЕН проект, който не бива да е твърде прост, но не и прекалено труден. И започваш да го реализираш. Естествено повечето неща, отностно проекта няма да са ти ясни в началото само с основите, но точно тук идва ред на огромните ресурси на Интернет. Търсиш всеки начин за решение, но без да взимаш наготово код... и не си даваш спокойствие, докато не го завършиш. Самостоятелно. С този похват най-бързо ще добиеш практически знания, които да надградят вече получената основа от книжките.

Колкото до споменатата от теб примерна книга за "реални работни проекти", ти явно цитираш книга от серията "Професионални проекти" (http://www.book.store.bg/p1294/j2ee-profesionalni-proekti-pallavi-zhan-shadab-sidikui.html (http://www.book.store.bg/p1294/j2ee-profesionalni-proekti-pallavi-zhan-shadab-sidikui.html)), за която имам изключително ниско мнение. За да получиш фундаментални знания, трябва да се сблъскаш с реални проблеми, които да МИСЛИШ как биха могли да бъдат решени, да видиш как другите предлагат да бъдат решени... а не да вземеш един заучен шаблон, и да бягаш от всичко, извън него. Тази серия трябва да се забрани със закон...
Титла: Re:Искам ей такава избираема дисциплина!
Публикувано от: kom6u в 29.07.2011, 15:16:17
Пак преиначаваш нещата. Как да си нямат на идея от езика като съм написал "в края на самия курс, след като хората се смята, че трябва да са вникнали в материята". А според теб едва ли не съм писал "Направете един курс, в който направо да разглеждат готови проекти."

Иначе единственото, което казваш е "Сядаш и сам си учиш всичко и прекарваш десетки часове в ровене и пробване. В интернет има всичко". Еми, ок. Но съотношение прекарано време/знания ще си е ниско.

Всеки разбира се има свой начин за учене. За мен всичко трябва да е придружено с примери, защото понякога и малък пример обяснява по-добре, отколкото няколко страници гол текст... Затова и за мен най-успешния финал на даден курс, след като си запознат с основите е да се разглеждат етапите по разработката на реални проекти. И никой не говори за наизустяване на стилове за писане на код. А това лесно и бързо да се научиш да изграждаш "качествен код"...



Аз спирам дотук :)
Само бих споменал, че повечето посочвате доста специфични неща, а не мисля, че университетските целят чак толкова тясно специализирани. Все пак се разчита на масовост :)

Поздрави и останете със здраве  :beer:
Титла: Re:Искам ей такава избираема дисциплина!
Публикувано от: lamerko в 29.07.2011, 15:41:47
Някои неща, от тези, които съм написал ще разбереш много скоро - най-вече какво значи студентите да си нямат на идея от езиците... без значение какъв курс са минали. И как точно заради тях фразата "вникнали в материята" добива съвсееем друг смисъл :)

Колкото съотношението време/знания дали ще е ниско при самостоятелната подготовка - това може да е валидно само, ако липсва такава. Но и това ще разбереш :)
Титла: Re:Искам ей такава избираема дисциплина!
Публикувано от: Ники Вълчанов в 30.07.2011, 09:13:01
...Значи накратко - според мен ще бъде изключително полезно във ФМИ да се проведе курс по ASP.NET MVC 3 и да се представи новия Razor engine, разработен от Microsoft. Също така ще е полезно ако не само се представи технологията, ами се дават и задачи как да се мигрира по-стар ASP.NET код към MVC 3, тъй като в реалния живот не малка част от проектите са свързани с миграция - вече съществуващи приложения да се нагодят към по-съвременните и по-нови технологии....

Здрасти,

повтарям се от други теми, но все пак няма да пропусна да изтъкна, че ФМИ винаги е една крачка напред! :)
Такъв курс имаше миналата година - "Въведение в ASP.NET MVC2". Освен models, views, partial views, viewmodels, controllers и actions и filters бяха разгледани основи на nHibernate, употреба на IoC ( конкретно ползвахме StructureMap ), Get-Post-Redirect имплементация с filters, употреба на singleton (СЕК) ... не се сещам друго какво ползвахме, но като цяло се получи сравнително добър курс.

Идната година ще има пак курс ASP.NET MVC, но този път 3 :) И ще се разглежда Razor, даже може да включим малко основи на jQuery (до колкото да се работи с DOM или да се изпълни един Ajax call)

Като гледам има интерес и към мобилните устройства. Ще бъде взето предвид :)

Поздрави
            Ники
Титла: Re:Искам ей такава избираема дисциплина!
Публикувано от: antoniy в 30.07.2011, 13:35:54
@lamerko, абе принципно за това, що говориш си има адекватен филтър да се избягва до колкото е възможно. То и се прави на някои курсове. Пускат ти входящ тест, за да ти определят нивото и по това се определя дали да бъдеш допуснат до курса. Това е съвсем адекватно решение. Не може да не знаеш ООП и да учиш Design Patterns, нито може да не знаеш java, а да ти водят j2ee дисциплина. Става бе. Ако има на кого да му се знаимава.

Поздрави
Титла: Re:Искам ей такава избираема дисциплина!
Публикувано от: jdbc в 05.08.2011, 10:26:04
- Математическа логика
- Разпределени/паралелни системи  - имам предвид това: http://en.wikipedia.org/wiki/Distributed_computing , да не се бърка с дисциплината "Разпределени приложения".  До колкото прочетох анотацията на последната, двете са различни неща.
- Интелектуална собственост - представям си го като дисциплина с юридическа насоченост, фокусирана върху инт. собственост, касаеща софтуера и продуктите на процеса на софтуерна разработка.
- High-performance &  High Availability systems , Clustering fundamentals

EDIT: И най-вече ми се иска задочниците да разполагат със същия набор избираеми дисциплини, като студентите редовно обучение.
Титла: Re:Искам ей такава избираема дисциплина!
Публикувано от: Светослав Енков в 05.08.2011, 10:36:08
Хайде, помислете си, как да Ви се проведе избираемата дисциплина на задочниците?

На редовните се правят обикновено в събота, когато лекторите са свободни, защото често са извън ПУ...

Сложен е казуса.
Титла: Re:Искам ей такава избираема дисциплина!
Публикувано от: jdbc в 05.08.2011, 10:41:48
Не ми се ще да влизам в полемики, нито да се отклонявам от темата, но според мен работата на преподавателите е да преподават, а не да се намират основно извън съответния ВУЗ.
Иначе казано - всичко е въпрос на желание.
Титла: Re:Искам ей такава избираема дисциплина!
Публикувано от: lamerko в 05.08.2011, 10:48:58
Хайде, помислете си, как да Ви се проведе избираемата дисциплина на задочниците?

На редовните се правят обикновено в събота, когато лекторите са свободни, защото често са извън ПУ...

Сложен е казуса.

Лично за мен е най-удобна офлайн системата. Правят се достатъчно подробни видео-записи на лекциите - може да се вземат направо курсовете от редовните. Определя се "приемно" време - онлайн - с някаква конферентна система (най-просто скайп), където се задават всички неясни въпроси.


jdbc: клъстеризацията (Разпределени/паралелни системи) изисква доста специфични ресурси... не мисля, че може да се получи.
Титла: Re:Искам ей такава избираема дисциплина!
Публикувано от: jdbc в 05.08.2011, 10:56:11

jdbc: клъстеризацията (Разпределени/паралелни системи) изисква доста специфични ресурси... не мисля, че може да се получи.
Факт!
Но няма лошо дисциплината да дава теоритическата основа на въпроса, мисля е доста интересно също.
Впрочем в ерата на виртуализацията, не изглежда невъзможно.  Друг е въпроса до колко подобни усилия си заслужават. А и като стана дума, мисля, че добра идея за избираема дисциплина би било:
- Технологии и решения за виртуализация
Титла: Re:Искам ей такава избираема дисциплина!
Публикувано от: Jack Johnson в 05.08.2011, 13:37:28
Не ми се ще да влизам в полемики, нито да се отклонявам от темата, но според мен работата на преподавателите е да преподават, а не да се намират основно извън съответния ВУЗ.
Иначе казано - всичко е въпрос на желание.

Това е напълно вярно за онези преподаватели, които са на постоянен трудово договор към ПУ. Само че ПУ наема и външни преподаватели (на временен трудов договор), които водят специфични избираеми и факултативни дисциплини. Ето за тези преподаватели става дума - те работят на пълен работен ден някъде другаде и затова основният им фокус си остава официалната им работа, а в ПУ преподават както се казва "за чест и слава".
Титла: Re:Искам ей такава избираема дисциплина!
Публикувано от: Светослав Енков в 05.08.2011, 15:09:36
Точно така, визирах точно 'външните' хоноровани преподаватели, водещи избираеми дисциплини. Точно по тази причина няма и как да се предложи такава избираема за задочниците - няма как преподавателят да е свободен 7 дена подред да преподава дисциплината на задочниците. Да, получава се разминаване и са ощетени, ама сори - такъв е животът.

Слава Богу, вече има Интернет, скоро ще се наложи и ошлайфа т.нар. дистанционно обучение и подобни курсове ще могат да се провеждат дистанционно в удобно и за преподавателят и обучаемият време. Но имам чувството, че нашите студенти, голямата част от тях, не искат така, а искат жив контакт (все още). Иначе по друг начин не си обяснявам, че доста голям процент избягват да учат самостоятелно.
Титла: Re:Искам ей такава избираема дисциплина!
Публикувано от: Михаил Петров в 05.08.2011, 17:07:47
Идеята за запис на лекциите е така, както правят в Телерик - записват се ключовите дисциплини и се качват някъде (например на сайта на факултета) и който е заинтересован информативно от повече от една, да ги гледа, понеже може да се получи застъпване на повече от една дисциплина в дадено време.

От модератора: Приятелю, аз също допускам правописни и пунктуационни грешки и както се казва - човешко е да се греши. Само моля ти се недей да ставаш твърде човечен, за да не се наложи да ставам и аз твърде "модераторен", защото е много по-лесно да трия мнения, отколкото да ги редактирам. :)
Титла: Re:Искам ей такава избираема дисциплина!
Публикувано от: Светослав Енков в 05.08.2011, 17:49:41
Ако е само да 'гледате', има си хиляди web-инари, видеолекции и прочие по Интернет. Е, повечето са на английски, руски или друг чужд език. Темата се отплесна, но за дистанционно обучение (включващо и видеолекции) се замисляме активно и ще има в скоро време.
Титла: Re:Искам ей такава избираема дисциплина!
Публикувано от: ash_ в 19.08.2011, 11:23:23
Уеб и мобилните истории са толкова горещи, че всеки, който може да събере 2 и 2, може да си намери и сам материали. Преди известно време имах проект за Windows Phone 7 и срещу половин час ровене в братските руски тракери, си намерих чудесни книги. Не прочетох нито една, разбира се, но това е защото обичам да ми е гадно и се запознах с фреймуърка от exception-ите.

Знам, че никой няма да погледне сериозно на това, но лично аз бих намерил смисъл в избираема дисциплина, която се занимава с програмиране на малко по-ниско ниво, като например за Atmel AVR микроконтролери. Не съм убеден до каква степен занимават бъдещите инженери по електроника с програмиране, но работата с микроконтролери е 95% с мишка и 5% с поялник. Освен това е страшно интересно, образователно и какво ли още не, да си припомниш, че има и свят без интерфейси, наследяване и събития.

А от чисто практична гледна точка - такива специалисти просто липсват. Наистина. Част от тях ги чакаме да умрат всеки момент, а другата част в общия случай не е достатъчно компетентна.
Преди три месеца поправях един RFID четец, понеже на шефа не му се даваха пари за сервиз, а аз имах нужда от отпуска :) Та, от там съм насъбрал едни плашещи впечатления...
Титла: Re:Искам ей такава избираема дисциплина!
Публикувано от: Светослав Енков в 19.08.2011, 12:13:10
Да, и в същото време програмирането на контролери (особено по-евтините AVR 8-bit) е изкуство, защото всичко е ограничено по обем и скорост и се научаваш на 'дисциплинираност' в програмирането. Както и да е - нека има всякакви избираеми - само да са с актуални неща.
Титла: Re:Искам ей такава избираема дисциплина!
Публикувано от: Георги Соколов в 19.08.2011, 23:13:47
Аз лично може да съм малко далеч от темата, но на мен би ми се искало да има факултативна дисциплина как се оформят документи на едно по високо ниво, как се правят презентации, как се правят по-сложни електронни таблици. Погледа ми от последното време е че(на база видяни дипломни работи и въобще доста кандидат работници които ходят по интервюта и си предават автобиографиите и "недай си боже" мотивационните писма):
а) 90% от излизащите от ФМИ, не могат да пишат в текстов редактор, камо ли в текстов процесор(да знам че са си взели изпита по информационни технологии, но това далеч не ги прави специалисти)
б) каква част от курсовите и дипломните работи се форматират със стилове и каква част се правят с tab-ове и 40 space-а за да се премести вдясно или 5 enter-a за да отиде на другата страница?
в) една голяма част от студентите в университета не знае как се правят графики или въобще отчети базирани на външен източник данни - примерно Excel sheet или Access база данни, а повярвайте ми такива в бизнеса се налагат да се правят, особено ако бъдат назначени на една по-висока позиция
г) в първи курс се изискват презентации(доколкото могат да се нарекат 3 слайда презентация), но правенето на презентации и въобще документи се изучава във втори курс?!

Та си мисля че една такава факултативна дисциплина би била сравнително полезна. Знам че аз бих я посещавал!