|
|
(не показано 30 промежуточных версий 15 участников) |
Строка 1: |
Строка 1: |
− | == Идеи проектов ==
| |
− |
| |
− | * Андроид клиент для biletolovilka.ru
| |
− | * Сетевые шахматы на троих; бессмысленно и беспощадно.
| |
− | * Фреймворк для организации CTF-соревнований
| |
− | * Experimental project for http://www.chromeexperiments.com/
| |
− | * Just another extension for Chrome
| |
− | * Платформа для Web Автоматизации
| |
− | * HDR-creator
| |
− |
| |
| == Страницы проектов == | | == Страницы проектов == |
| | | |
− | * [[Project_Grothendieck|Визуализатор алгебраических структур]] | + | * [[Shepherd_Game| Игра "В погоне за овцой" под Android]] |
| + | * [[Project_Grothendieck|Project Grothendieck (Визуализатор алгебраических структур)]] |
| * [[MorseKeyboard|Клавиатура Морзе]] | | * [[MorseKeyboard|Клавиатура Морзе]] |
− | * [[Check recognition|Распознавание чеков]] | + | * [[Cheque recognizer 2.0|Распознавание чеков]] |
| * [[DontMissStop|Будильник "Не проспи остановку"]] | | * [[DontMissStop|Будильник "Не проспи остановку"]] |
| + | * [[Машина_Тьюринга|Машина Тьюринга]] |
| + | * [[SynchronizedPlayer]] |
| + | * [[Билетоловилка]] |
| + | * [[ScaLaTeX| ScaLaTeX]] |
| + | * [[WhereIsMyMoney|Where is My Money]] |
| + | * [[GooglePlay client for PC]] |
| + | * [[Hear me please]] |
| | | |
− | === Андроид клиент для biletolovilka.ru=== | + | == Разное == |
− | Очень тяжело найти билет в питер в ночь с пятницы на субботу.
| + | |
− | Однако билеты периодически возвращаются клиентами и очень хочется заменить кнопку F5 на cron-task.
| + | |
− | Пройдя по ссылки уже становиться понятен юзкейс приложения, и было бы здорово, сделать андроид(multiplatform)
| + | |
− | клиент с удобным UI'ем.
| + | |
− | | + | |
− | === Мечта меломана ===
| + | |
− | Клиентская и серверная части.
| + | |
− | | + | |
− | Сервер:
| + | |
− | - Мониторит аккаунты на youtube, vk
| + | |
− | - При добавлении трека в аудиозаписи сама добавляет его в музыкальную
| + | |
− | коллекцию со структурой по папочкам, скачивает обложку, приводит в
| + | |
− | порядок все тэги автоматически. Использует, например, информацию о
| + | |
− | длительности .
| + | |
− | - При добавлении видео в избранное на youtube конвертирует его в mp3,
| + | |
− | дальше всё аналогично.
| + | |
− | - Синхронизируется со всеми устройствами. В домашней wifi сетке
| + | |
− | автоматом синхронизируется со всеми android-девайсами по wifi. При
| + | |
− | подключении MTP-девайса (плеер) автоматом синхронизируется с ним.
| + | |
− | Можно в две стороны.
| + | |
− | | + | |
− | | + | |
− | Клиенты: всякие мобильные платформы
| + | |
− | Обеспечивают синхронизацию с базой на сервере при входе в зону
| + | |
− | домашнего Wifi или вручную.
| + | |
− | | + | |
− | === Python type checking ===
| + | |
− | Предлагаю реализовать cli tool для проверки типов в Python проектах. Вдохновиться можно [[http://www.erlang.org/doc/man/dialyzer.html аналогичным]] инструментом из мира Erlang. Основная идея: в динамическом языке мы не можем вывести тип для '''любого''' выражения, но нас это устраивает! будем проверять типы только там, где их можно вывести. Таким образом, если уж наш инструмент найдет ошибку типов, то она всегда истиная. Как это делать? давайте типизируем __builtin__ и часть стандартной библиотеки, этого должно хватить, чтобы находить ошибки вида <code>map(1, 2)</code> или <code>os.path.exists([])</code>. Всё, что мы таким образом типизировать не можем считаем значением типа <code>object</code>. Примеры:
| + | |
− | | + | |
− | <pre>
| + | |
− | # Assign a type signature to `os.path.exists`, it's a function, which takes a string and returns a boolean.
| + | |
− | signature(os.path.exists, Function(str, bool))
| + | |
− | | + | |
− | # Now try to infer a type of the following expressions.
| + | |
− | os.path.exists([]) # type: error, the input argument should be a string!
| + | |
− | os.path.exists("/") # type: bool
| + | |
− | | + | |
− | # Try the same for a function, with an unknown signature.
| + | |
− | os.listdir("/") # type: object, since we don't know the signature of `os.listdir`.
| + | |
− | </pre>
| + | |
− | | + | |
− | Можно сразу ориентироваться на Python3 и использовать [[http://www.python.org/dev/peps/pep-3107/ function annotations]] в качестве источника информации о типах:
| + | |
− | | + | |
− | <pre>
| + | |
− | def f(x : int) -> float:
| + | |
− | return float(x)
| + | |
− | </pre>
| + | |
− | | + | |
− | P. S. Создатели dialyzer написали paper по мотивам своих изысканий: [[http://citeseerx.ist.psu.edu/viewdoc/summary?doi=10.1.1.66.699 Experience from Developing the Dialyzer: A Static Analysis Tool Detecting Defects in Erlang Applications]]
| + | |
− | | + | |
− | === stream-lib revisited ===
| + | |
− | Для Java [[https://github.com/clearspring/stream-lib есть]] замечательная библиотека, реализующая summary statistics для потоков данных. Было бы здорово реализовать что-то похожее на Python.
| + | |
− | | + | |
− | === Клиент для Google Play ===
| + | |
− | Есть только 2 способа пользоваться Google Play, с телефона, или из браузера, при этом если хочется получить apk файл на компьютер, то единственный способ это вытаскивать его с телефона.
| + | |
− | Почему бы не написать кросс платформенный клиент с использованием Qt, который позволит качать файлы прямо на ПК(и можно добавить различные возможности). Притом что протокол довольно прост.
| + | |
− | | + | |
− | === Экстеншен для идеи про обход массивов ===
| + | |
− | Экстеншен для идеи, который видит, что двумерный массив обходится в "плохом" порядке (с потерей кэшей) и предлагает поправить.
| + | |
− | | + | |
− | === Парсер теховских формул на хаскелле (или на скале) ===
| + | |
− | Хочется взять теховскую формулу и получить по ней объект, который умеет ее исполнять.
| + | |
− | | + | |
− | -- Обычно идут другим путем, записывают формулу на каком-нибудь DSL, чтобы можно было её вычислить и сконвертировать в TeX. (С. Лебедев)
| + | |
− | | + | |
− | === Платформа для Web автоматизации ===
| + | |
− | Было бы здорово написать библиотеку, которая бы позволила писать простые скрипты: зайти на сайт N, вытащить данные с помощью данного регулярного выражения, сохранить данные.
| + | |
− | В будущем возможно расширение скриптов добавлением различных возможностей, как минимум ветвлений.
| + | |
− | Основное требование: скорость работы и максимальная загрузка сетевого соединения.
| + | |
| | | |
− | === HDR-creator ===
| + | * [[audd12_ideas| Идеи проектов]] |
− | Оказалось, что бесплатные программы для создания HDR-фото не найти. А фото получаются хорошие, и задача создания одного фото из нескольких кажется интересной.
| + | * [[audday1_initial|Доска с начала мероприятия]] |
| + | * [[audday2_promises_and_status| Состояние проектов на 13.11.2012 утро]] |
| + | * [[audday2_reality| Состояние проектов на 13.11.2012 вечер]] |
| + | * [[audday3_morning| Состояние проектов на 14.11.2012 утро]] |
| + | * [http://mit.spbau.ru/sewiki/images/b/bc/2H2012.tar.gz Формы для оценки проектов] |