Devdays Осень 2016 — различия между версиями

Материал из SEWiki
Перейти к: навигация, поиск
Строка 219: Строка 219:
  
 
Предложила: Тищенко Олеся
 
Предложила: Тищенко Олеся
 +
 +
== вконтакТеХ ==
 +
 +
Иногда людям очень хочется обсуждать математические задачи вконтактике, но, к сожалению, это жутко неудобно. Предлагается написать скрипт, который будет красиво отображать теховские формулы в сообщениях и комментариях.
 +
 +
Предложила: Черниговская Мария

Версия 23:53, 27 октября 2016

Темы проектов

Чтобы править эту страницу, нужно залогиниться в Sewiki. Тогда сверху будет кнопочка "править". Если у вас нет учётной записи - напишите Мише Кольцову желаемый логин.

Редактировать wiki одновременно нескольким людям стоит осторожно: после внесения правки проверьте, что она действительно сохранилась.

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

Определение проплаченных отзывов к товарам

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

Я и сам смотрю на отзывы. Поэтому есть интерес в том, чтобы они были "честными".

Давайте возьмём русскоязычные отзывы из конкретной области и научимся определять, какие из них являются проплаченными. Или подозрительными. Скажем, возьмём все отзывы к микроволновкам с Я.Маркета.

Технологии: python (библиотеки: sklearn, NLTK, bs4, ...), анализ текстов (Mystem, ...)

Предложил: Михаил Кольцов

Поиск деликатных данных в открытых источниках

Есть много сайтов, на которых пользователи могу добавлять свои документы и медиафайлы. Иногда другие неавторизованные пользователи могут смотреть на эти файлы. Некоторые люди думают, что если ни у кого нет ссылки, то никто не видит их файлов. Давайте это исправим!

Сделаем программу, которая тыкается в случайные страницы на ideone, paste.ubuntu.com, google drive, cloud.mail.ru, ..., и собирает с них информацию. Пароли, конфигурация, топология локальной сети, обнажённые фотографии - что угодно.

Например, я случайно ткнулся на paste.ubuntu.com и получил информацию о чьей-то сломанной файловой системе.

Технологии: python

Предложил: Михаил Кольцов

Twitter-бот для ответов на жалобы

Сейчас у многих компаний есть представительство в Twitter. К примеру, если какой-то пользователь пишет "вот ведь в мегафоне чудаки", то специально обученные сотрудники Мегафона ему могут ответить: что не так, как нам исправить свою ошибку и т.п.

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

Технологии: python

Предложил: Михаил Кольцов

Генератор скриптов для контрольных по bash

Многие задачи на контрольной и в домашних работах были достаточно шаблонными и можно было их разбить на подзадачи (например: получаем данные | выделяем регулярное выражение | обработка sed'ом/awk | вывод). Почему бы и не попробовать написать и обучить систему, которая может решать такие простые задачи?

Технологии: python, bash

Предложил: Мыров Владислав


GrammarMan

Fig1.jpg

Давайте напишем игру, похожую на пакмена. Которая будет поедать фрукты, если мы не правильно отгадаем артикль.

Технологии: C# ( или Qt )

Предложила : Малютина Катя


Приложение "что мне делать"

У всех есть дела, которые нужно делать.

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

Идея — сделать приложение, у которого можно спросить "чем я могу заняться прямо сейчас?" и оно предложит какие-то варианты. Если дедлайны по каким-то делам близко, оно будет показывать только эти дела. Если вы много работали, а дедлайны не очень близко, будут показаны скорее дела для души.

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

Технологии: Android

Предложил: Антон Гардер

Планировщик студента

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

1. Возможность задавать расписание + даты дедлайнов + первое приближение для времени выполнения каждого типа домашки.

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

3. Напоминалки о том, что хорошо бы отдохнуть каждые n минут, когда ты делаешь домашку.

4. Напоминалки о том, что ты офигел ничего не делать, если ты ничего не делаешь (:

5. Какие-нибудь графички, статистику, все дела.

6. Рисовала гробик, если ты физически ничео не успеваешь ):

Технологии: да что угодно python, Qt?..

Предложила: Аня Явейн

Генерация сообщения для знакомств

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

Технологии: python

Предложил: Мыров Владислав

WhipLash

WhipLash.png

Наверное, большинство из вас замечало, что почти все игры "залипалки" имеют крайне простую идею (например, стройка из тетриса, танчики, angry birds, cut the rope и др.). Предлагается дерзнуть и написать что-то подобное. Идея следующая: есть прямоугольное поле, на котором изначально хаотичным образом размещены квадраты разных цветов (пусть черного и белого). У каждого квадрата есть плетка, для удара, ее необходимо какое-то время раскручивать. Ударив несколько раз плетью в квадрат с другим цветом, можно перекрасить его в свой цвет. Цель каждого квадрата сохранить свой цвет, игра заканчивается когда все квадраты одного цвета.

Игра многопользовательская (чтобы не писать AI).

Технологии: Java

Предложил: Кручинин Дмитрий

Своя эволюция

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

Технологии: Машинное обучение, Python

Предложил: Симиютин Борис

Сортировщик почты

Мы поговорили с Антоном и выяснили, что у нас таки одинаковые проекты.

Поэтому идея номер два: нам на почту прилетает чудовищное количество писем, связанных с ау. И, чтобы не искать каждый раз нужное письмо по несколько минут, хотелось бы как-нибудь собирать эту инфу и представлять в удобочитаемом виде. Например, написать какой-нибудь gui, в котором будут отдельно материалы для домашек, рассортированные по предметам; отдельно какая-нибудь долгосрочная инфа типа паролей к svn и т. д. При этом сортировку писем хотелось бы автоматизировать.

Технологии: python, Qt

Предложила: Аня Явейн

3D представление для Graphviz

Есть Graphviz — набор программ для визуализации графов, заданный на языке DOT. Однако представление непланарных графов довольно неинформативно. При этом, любой граф можно вложить в трехмерное пространство без самопересечений. Цель: научиться по файлу в формате Graphviz'а строить трехмерное представление графа с использованием WebGL (или чего-то другого, позволяющего получить доступное для просмотра в браузере представление).

Технологии: Language agnostic, поскольку библиотеки для парсинга .dot есть для почти любого языка, и также многие языки транслируются в JavaScript; немного WebGL. Например, Python + JavaScript/TypeScript (хотя интересно было бы попробовать связку Haskell + Elm).

Предложил: Святослав Грязнов


Карта Мародёров

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

Технологии: Python || Javascript

Предложила: Колесниченко Лара

Сборщик досье

Интересно, насколько много информации можно узнать о человеке из открытых источников (соцсети, участие в различных мероприятиях итп). Можно автоматизировать поиск и фильтрацию результатов и сохранить, что получилось.

Технологии: python

Предложила: Ерохина Лена

Навигатор по зданию АУ

По введенным двум номерам аудиторий пишет инструкцию, как добраться от одной до другой. Кажется, подобная штука функционировала(ет) в ИТМО.

Технологии: пусть python

Предложила: Ерохина Лена


Конспектор

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

Предложила: Лапицкая Людмила

Анализатор успехов в учебе

По многим предметам у нас есть таблички с результатами, их приходится постоянно открывать, искать себя и так далее. Хочется сделать приложение, которое объединяло бы все эти результаты, выводило статистику, график успехов-неуспехов, отражало динамику, в идеале давало рекомендации в стиле "Неплохо бы подтянуть алгоритмы, можно не успеть набрать достаточное количество баллов", показывало ободряющие картинки с котиками и тп. В объединении с другими идеями в теории можно собрать удобное приложение для АУ, которое у многих университетов уже имеется.

Предложила: Лапицкая Людмила

Библиотека для работы с памятью в openсl

Зачастую, бутылочным горлом проектов, использующих gpgpu, становится копирование памяти между хостом и устройством (i.e. gpu). Если обратиться к многотомным спецификациям хардварных производителей, то можно найти очевидные и не очень способы оптимизации ее использования.

Хотелось бы иметь библиотеку для opencl, абстрагирующую программиста от проблем правильного менеджмента памяти. Нужна система аллокации-владения, позволяющая opencl автоматически использовать dma или zero-copy buffers для архитектур с разделяемой (с хостом) памятью.

с/с++, opencl api, cross-platform (linux & windows)

Предложил: Бегунков Павел

Расширение для Google Chrome

Файл:Featured.png <- Тут могла быть картинка

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

Технологии: python

Предложила: Дергун Карина

Telegram-бот для получения домашних заданий

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

Технологии: Обертки на API ботов есть на все мейнстримные языки, но предпочитают python. Сам написанный бот должен быть запущен на сервере.

Предложила: Тищенко Олеся

вконтакТеХ

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

Предложила: Черниговская Мария