Подскажите тему для диплома

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

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

Немного о себе: я студент 3-го курса КПИ (факультет ИПСА), дружу с математикой, есть знания в области электроники. Работаю С++ программистом по удаленке, также знаю C#, T-SQL. Интересуюсь параллельными вычислениями, писал небольшие многопоточные программки на C# и на С с использованием POSIX и WIN32 API. Web тоже интересен, но в этой области у меня нет никакого опыта. Еще очень интересен семантический анализ естественных языков, но боюсь, что не потяну столь сложную тему.

Жду ваших советов :)

👍ПодобаєтьсяСподобалось0
До обраногоВ обраному0
LinkedIn
Дозволені теги: blockquote, a, pre, code, ul, ol, li, b, i, del.
Ctrl + Enter
Дозволені теги: blockquote, a, pre, code, ul, ol, li, b, i, del.
Ctrl + Enter

про андроид исходники еще актуальны, интересно посмотреть.

На злобу дня: «Патологические практики применения OOP/OOD, в сравнении с DOD, с примерами на C++». Потом пришлите ссылку, почитать. :)

Можно пойти в криптографию. И написать какой-то полиморфный криптор *.exe файлов, или интересную задумку по обнаружению и удалению Citadel софта. Тема очень интересная, там и ядро винды и много разных фичь. Жаль что я не работаю в этой области, так проездом разок был.

интересную задумку по обнаружению и удалению Citadel софта

А что это? У меня в голове крутится только ПО для BBS в лохматые годы :)

Коментар порушує правила спільноти і видалений модераторами.

Ответил удаленным коментарием)

Увидел, thanks.

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

Как насчет ORM ? Как по мне сложная, но в тоже время интересная тема )

А что ORM иплементаций мало? Зачем тот же велосипед. Может написать полезное что-то, начём можно будет в перспективе заработать.

Можно e-commerce solution написать, или автоматизировать то что еще не сделано, и т.д.

да, уже существует много ORM... но для меня эта тема интересна, я жалею что не решился делать ее на свой диплом.

Чтоб два года было в запасе

У нас тему и руководителя в конце 3-го курса обычно выбирают. Сдавать в конце 4-го, так что год на написание выходит.

я студент 3-го курса КПИ

После 3 курса будет практика. Иди в НИИ и требуй тему там. Как правило такие темы:
- звучат круто и понятны университетским преподам;
- не сложны в реализации (в плане программирования);

- имеют мат. модель, то шо называется "из коробки".

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

Здравая мысль, а то насоветуем мы тут про кернелы.

Кстати, вот совсем недавно столкнулся и забыл про это.

Нет opensource реализации алгоритма сжатия изображений JPEG XR под одной из свободных лицензий, типа LGPL, BSD, Apache2. Есть в свободном доступе референс реализация от Microsoft под несвободной лицензией, документация и спецификации, набор сжатых изображений для тестов. Также есть письменное обещание от Microsoft не преследовать тех, кто будут реализовывать и использовать какие-либо куски или весь JPEG XR алгоритм (royalty free). В общем есть всё, что надо. Математика понадобится слегка. Вследствие организации сжатого изображения, поддерживает практически неограниченную параллелизацию как при кодировании так и при декодировании. Основными потребителями такого продукта будут Mozilla и реально пачка опенсоурс продуктов. Есть также возможность неслабо прославиться, т.к. появится альтернатива аналогичному, только нестандартизированному алгоритму сжатия изображения от Google под названием "WebP", многие только этого и ждут.

afair в MS JPEG-XR энкодере нет Rate distortion optimization, какой смысл брать их код как референс если они по сути модифицировали исошный референс код (причем неудачно) :)

Нет никакого исошного референс кода :) Есть референс код от microsoft, который лежит в основе ITU-T и ISO/IEC стандартов. Причём, на сколько я знаю, Microsoft WIC не использует свою же референс реализацию, поэтому возможны различные моменты.

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

Я, наверное, тогда не видел референс код именно от MS, всё время крутил в руках именно те исходники, которые шли со стандартами.

Всегда интересно написать нечто имеющее практический интерес а не очередного "сферического коня в ваккуме.". Что-то чем люди будут пользоваться. Потом можно либо выпустить как open source либо развивать самому как коммерческий проект.

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

Собственно поэтому я и прошу подать мне интересную идею)

Если есть желание можно взять медицинскую тематику. Например реализация DICOM ( ru.wikipedia.org/wiki/DICOM ) протокола и создание PACS системы ( ru.wikipedia.org/wiki/PACS ).

Многие импортные медицинские устройства (томографы, УЗИ и т.д.) выдают результаты в DICOM - так что теоретически можно будет похвастаться внедрением если найти заинтересованную клинику. А если еще сделать "облачную" версию - то можно продавать как сервис.

А зачем yet another DICOM implementation?

Патамуша звучит круто, как и

проект на тему нейронных сетей
Напиши патч для ядра линукса
Напишите свой драйвер FS

Правильный вопрос. Ответ, к сожалению, банальный. Существует масса медицинских протоколов для PACS и EMR ( en.wikipedia.org/..._medical_record ) и много примеров их реализации на разных языках. Но совместимости добиться все равно очень сложно. Поэтому в большинстве прикладных задач приходится либо допиливать что-то чужое «напильником», либо писать свое.
В качестве близкой аналогии можно привести пример поддержки HTML5 и CSS3 в разных браузерах.

То есть, человеку в качестве диплома на ИПСА, надо просто реализавать 100500 томов спеки на каком-то языке?

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

А продолжая аналогию с web — стандартами: ведь написали же JQuery что бы покрыть несовместимость браузеров и «кривизну» ДОМ — модели. И очень полезная штука вышла.

Знаете в чем разница между инженером и научным работником?

Да

Инженер внедряет на практике ту теорию, которую ученый придумал.

Да. Но «внедрять теорию» и «реализовать спецификацию» — это 2 принципиально разные вещи.

Во-первых что бы научиться

Чему?

может кому-то пригодится (внедрение добавит диплому баллов).

DICOM — это мед стандарт. Сомневаюсь что найдется человек готовы внедрить систему «написанную студентом» при этом еще и без сертификата.

Почему каждая гейм-девелопмент команда пишет свой 3D-движок, когда есть куча готовых?

Из адекватных далеко не каждая. А движки отличаются реализациями и их качеством, у них нет жесткой спеки. То есть в одном может быть классная вода в другом огонь. Это те места куда инженеры внедряют научные знания. Куда и что вы предлагаете внедрять в реализацию DICOM?

А продолжая аналогию с web — стандартами: ведь написали же JQuery что бы покрыть несовместимость браузеров и «кривизну» ДОМ — модели.

Вот только у прототайпа/мутулса/доджо/и_тд не одинаковый интерфейс. Они все пользуются разными видами абстракции, разными стилями программировани (не только кодирования, но и мышления). По аналогии с DICOM они это DICOM1/DICOM2. Или вы предлагали человеку, разработать свой стандарт? Это Задача. На таком мона и магистра и кандидата засчитать. Вот только получится ли внедрить новый стандарт, это уже другой вопрос :)

Идея интересная и вроде бы даже вполне осуществимая. Спасибо, возьму на заметку)

Сделай дипломный проект на тему нейронных сетей

В нейросетях сложнее всего выделить регулярную структуру входных-выходных данных. А сами библиотеки можно скачать с google code.

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

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

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

А что по поводу регистрации изображений(особенно если 3D изображения)?

Напишите свой драйвер FS(файловой системы). Вас в киевском отделении Dropbox с руками оторвут. Если интересно могу рассказать как использовать C++ в kernel-режиме.

Могу выложить сканы "Windows NT File System Internals"

в киевском отделении Dropbox

В Киеве есть дев-офис дропбакса? Поподробнее пожалуйста.

Где-то пару месяцев назад звонили рекрутеры. Проглашали на работу в Киевское отделение Dropbox, проект доработка драйвера файловой системы уровня ядра. На собеседование не ходил.

Спасибо, идея интересная. "Windows NT File System Internals" я в гугле нашел.)

А какой смысл (кроме образовательного) в написании своего драйвера?

сложно сказать. Программирование на C++ с зарплатой в 3K, так как разработка уровня ядра — это всегда считалось сеньорской позицией.

А вообще смысл в разработке собственной ФС.

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

SVD не прельщает? там математики можно много напихать и паралельные вычисления пристроить для быстродействия. Лично я такой диплом бы не отказался почитать.

SVD есть в MATLAB и GNU Octave.

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

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

Это обычная np полная задача, которая решается элементарно десятком различных способов.

С другой стороны, эта задача не будет иметь решений ни в одном из университетов. Т.к. расписание составляется тоже элементарно, те, кто, сидят выше в курятнике, делают себе 2-3 рабочих дня в неделю без окон, а те, кто сидят ниже получают оставшееся. В самом низу получают объедки, например, первая, четвёрта и восьмая пара каждый день.

Мы такое в качестве курсового делали на 2-м курсе) На дипломную не потянет по сложности...

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

Обратимость необратимых хэш-функций посредством терморектального криптоанализа :)

Добровольцев для практической части найти поможете? :)

Одна моя знакомая писала диплом на тему разработки системы для отслеживания перемещения курьеров по городу: данные по GPS (или по координатам из сотовой сети) накапливаются на Андроид девайсе у курьера, а потом сливаются по HTTP в базу на сервере, а там это все интегрировано с йандекс мапой и красиво показывается. А я ей писал клиента под Андроид. Если че — могу подарить андроидные исходники

Исходники посмотреть было бы интересно.

Та там ниче интересного нет - один Application object с активити и сервисом. Даже без PreferencesActivity - все вхардкоджено. Ну и каждую строчку из формируемого csv файла шлет через post, а не передает на сервер файл полностью (так захотел руководитель дипломного проекта) Разве что для затравки. Ну хоть в личку стукните, на какой емейл прислать.

Про андроид исходники еще актуально?

Да, буду очень благодарен, актуально как никогда)

можно и мне исходники по андроид, интересно посмотреть. на почту если можно andrey/[email protected]

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