К этим размышлениям меня подтолкнуло постоянное увеличение количества топиков в моём RSS-ридере. На Хабре тоже постоянно всплывают статьи в стиле «а вот мне не нравятся топики о ХХХ на главной, дайте возможность фильтровать». Как вариант решения предлагают фильтровать не нравящиеся слова через Regexp-ы в Yahoo Pipes.
Алгоритм Байеса успешно используется для фильтрации спама. Он простой, обучающийся и эффективный (отсекает до 95—97 % спама). Так почему бы не использовать его для фильтрации потока информации?
Предположим, что все топики в ридере — это спам. Поведение пользователя не отличается от обычного — он читает топик за топиком, отмечая про себя что понравилось, а что — не понравилось. Внесем одну дополнительную возможность в ридер — отмечать понравившиеся топики (для обучения фильтра Байеса). Тогда после некоторого периода обучения фильтр сможет отсеивать топики, которые скорее всего понравятся пользователю. И помещать их, например, в раздел «Прочитать в первую очередь».
Можно пойти дальше, и фильтровать информацию с помощью плагина к броузеру.
Не так давно по просьбам пользователей моего сервиса Getting tasks done! сделал версию таск-менеджера в виде одного html-файла. Симпатишная софтинка получилась. Работает под iPhone/iPod Touch, умеет работать оффлайн и синхронизироватся с сервером.
Размер приложения — 55Kb. Все скрипты, css и картинки встроены в html. В разработке очень помог сервис Base64 Online для кодирования картинок в base64.
Мне нравятся простые вещи. Мне нравится обдумать предстоящую работу над проектом, и затем сделать её. Во время процесса мышления создаются разнообразные записи. Элегантный инструмент создал Майк Падилла (Mike Padilla) — Protonotes, сервис для создания небольших заметок прямо в окне веб-сайта. Заметки выглядят точь-в-точь, как разбросанные по вашему рабочему столу липкие бумажки.
Задачу документирования разработки можно решить и с помощью Вики, электронной почты или систем управления проектами. Но по наглядности и метафоре — липкие бумажки на экране, — это что-то особенное.
После добавления кода загрузки Protonotes на свою страницу, все посетители этой страницы смогут добавлять, удалять и редактировать заметки без каких либо дополнительных телодвижений. Использование Protonotes очень удобно для заказчиков. Они получают возможность оставлять свои комментарии находясь на разрабатываемом сайте. Для администрирования заметок можно подключить их к своей базе данных (MySQL).
Как и обещал thecentury, сделал исходники игры ФИДО 2.0 доступными для всех,
Open Source рулит! Надеюсь, эти исходники помогут желающим разобратся в разработке на Google App Engine, а заодно и Django ;)
В предыдущем посте было рассказано, как создать простейший проект на GAE + Django. Сейчас давайте попробуем подключить к проекту шаблоны Django и поддержку статических файлов — таблиц стилей, скриптов и картинок.
Наш Django проект будет называтся dvk, и содержать приложение main. В папке приложения создаем каталог для шаблонов templates:
Я сейчас разрабатываю игру на Google App Engine и Django. Этот проект пишется «just for fun», основная цель — разобратся в GAE и получить удовольствие :-)
Если сообществу будет интересно, то можно будет написать парочку статей по процессу разработки.
Игра представляет собой римейк популярной в далекие времена игры «ФИДО» от Юрия Нестеренко.
Очень хочется услышать ваши замечания и пожелания.
О Google App Engine не слышал уже наверное только ленивый. Использование фреймворка Django совместно с GAE дает в руки разработчика удобные инструменты для быстрого создания веб-приложений.
В этом туториале рассказывается, как создать простое Django приложение с использованием этой платформы. Предполагается, что у вас уже есть аккаунт в Google App Engine.
Один из моих самых любимых детских авторов, Роальд Даль (Roald Dahl), имел весьма специфический распорядок дня. «Я начинаю работать в 10 и оканчиваю ровно в 12. Всегда.» — сказал он в интервью Тоду МакКормаку.
Вы также как и я оставляете открытые вкладки в Firefox чтобы дочитать их позже?
Недавно я наткнулся на Австралийском Lifehacker на заметку о дополнении к Firefox — Taboo. Это дополнение добавляет возможность сохранить вкладку вместе с метаинформацией — позицией прокрутки, введенными данными в формы и т.д. Для каждой сохранённой страницы делатся скриншот.
Все, кто пользуется GMail и завсегдатеи Хабрахабра замечали, что приаттаченные файлы потихоньку загружаются на сервер через несколько секунд бездействия и затем поля с именами файлов заменяются на чекбоксы.
Похожий функционал я реализовал в одном Django-проекте с помощью JQuery.
При выборе ползователем логотипа для визитки, файл логотипа прозрачно загружается на сервер, обрабатывается и затем «отдается» браузеру. и пользователь видит, что в макете логотип поменялся на выбранный им.
Django-tagging 0.2.1 я не похачил, а наоборот — взял всё самое лучшее из него и перенёс в версию 0.1. Таким образом получилось совместимое с Django 0.96 приложение с готовыми инструментами для создания облака тэгов.
Скачать можно с моего сайта (34Kb). Просто распакуйте архив в папку проекта и добавьте это приложение в INSTALLED_APPS.
«django-tagging — Джанго приложение, позволяющее добавлять к объектам любой модели тэги и делающее процесс работы с тэгами проще». code.google.com/p/django-tagging
На странице скачивания в можно скачать самую новую на текущий момент версию — django-tagging 0.2.1
Для меня проблемма в том, что эта версия не работает с Django 0.96 который установлен на хостинге.
Путем несложных умозаключений пришёл к выводу, что старую версию на сервере никто не удалял. Для того что-бы в списке показались все файлы, выбрал опцию поиска «All downloads». Предположение оказалось верным — вот она, django-tagging 0.1.
Прекрасно заработала в моём проекте. Из минусов версии 0.1 хочу отметить отсутствие облака тэгов.
p.s.: Скорее всего прийдеться таки похачить django-tagging 0.2.1 на предмет совместимости с Django 0.96. Очень уж нужно облако тэгов. О результатах обещаю сообщить :)
Существует прелестная библиотека для Python — libGmail. Используя эту библиотеку очень просто получать и отправлять письма с GMail. А еще можно сделать из своего аккаунта POP или SMTP сервер.
LibGmail можно использовать как с Питоном так и в связке с любым популярным фреймворком. Например, с Django.
Например, я использую следующий код для отправки уведомления о необходимости активации аккаунта новому пользователю:
Использование LibGmail избавило меня от необходимости использовать встроенный SMTP сервер моего хостера. Плюс отсутствие спама на служебный почтовый ящик :) Весь спам попадает в GMail.