Devdays2h2012 — различия между версиями

Материал из SEWiki
Перейти к: навигация, поиск
(Python type checking)
(Разное)
 
(не показано 50 промежуточных версий 18 участников)
Строка 1: Строка 1:
== Идеи проектов ==
+
== Страницы проектов ==
  
* Андроид клиент для biletolovilka.ru
+
* [[Shepherd_Game| Игра "В погоне за овцой" под Android]]
* Сетевые шахматы на троих; бессмысленно и беспощадно.
+
* [[Project_Grothendieck|Project Grothendieck (Визуализатор алгебраических структур)]]
* Фреймворк для организации CTF-соревнований
+
* [[MorseKeyboard|Клавиатура Морзе]]
* Experimental project for http://www.chromeexperiments.com/
+
* [[Cheque recognizer 2.0|Распознавание чеков]]
* Just another extension for Chrome
+
* [[DontMissStop|Будильник "Не проспи остановку"]]
 +
* [[Машина_Тьюринга|Машина Тьюринга]]
 +
* [[SynchronizedPlayer]]
 +
* [[Билетоловилка]]
 +
* [[ScaLaTeX| ScaLaTeX]]
 +
* [[WhereIsMyMoney|Where is My Money]]
 +
* [[GooglePlay client for PC]]
 +
* [[Hear me please]]
  
=== Андроид клиент для biletolovilka.ru===
+
== Разное ==
Очень тяжело найти билет в питер в ночь с пятницы на субботу.
+
Однако билеты периодически возвращаются клиентами и очень хочется заменить кнопку F5 на cron-task.
+
Пройдя по ссылки уже становиться понятен юзкейс приложения, и было бы здорово, сделать андроид(multiplatform)
+
клиент с удобным UI'ем.
+
  
=== Мечта меломана ===
+
* [[audd12_ideas| Идеи проектов]]
Клиентская и серверная части.
+
* [[audday1_initial|Доска с начала мероприятия]]
 
+
* [[audday2_promises_and_status| Состояние проектов на 13.11.2012 утро]]
Сервер:
+
* [[audday2_reality| Состояние проектов на 13.11.2012 вечер]]
- Мониторит аккаунты на youtube, vk
+
* [[audday3_morning| Состояние проектов на 14.11.2012 утро]]
- При добавлении трека в аудиозаписи сама добавляет его в музыкальную
+
* [http://mit.spbau.ru/sewiki/images/b/bc/2H2012.tar.gz Формы для оценки проектов]
коллекцию со структурой по папочкам, скачивает обложку, приводит в
+
порядок все тэги автоматически. Использует, например, информацию о
+
длительности .
+
- При добавлении видео в избранное на 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>
+
# Type signatures for `os` module.
+
signature(os.path.exists, Function(str, bool))
+
 
+
os.path.exists([])  # type: error
+
os.path.exists("/")  # type: bool
+
 
+
os.listdir("/")      # type: object, since we don't know the type 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>
+
 
+
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, который позволит качать файлы прямо на ПК(и можно добавить различные возможности). Притом что протокол довольно прост.
+

Текущая версия на 12:19, 15 ноября 2012

Страницы проектов

Разное