Pull to refresh
11
0
Eugene Priestley @priestley

User

Send message

Весь контент — в спам?

Reading time1 min
Views533
К этим размышлениям меня подтолкнуло постоянное увеличение количества топиков в моём RSS-ридере. На Хабре тоже постоянно всплывают статьи в стиле «а вот мне не нравятся топики о ХХХ на главной, дайте возможность фильтровать». Как вариант решения предлагают фильтровать не нравящиеся слова через Regexp-ы в Yahoo Pipes.

Алгоритм Байеса успешно используется для фильтрации спама. Он простой, обучающийся и эффективный (отсекает до 95—97 % спама). Так почему бы не использовать его для фильтрации потока информации?

Предположим, что все топики в ридере — это спам. Поведение пользователя не отличается от обычного — он читает топик за топиком, отмечая про себя что понравилось, а что — не понравилось. Внесем одну дополнительную возможность в ридер — отмечать понравившиеся топики (для обучения фильтра Байеса). Тогда после некоторого периода обучения фильтр сможет отсеивать топики, которые скорее всего понравятся пользователю. И помещать их, например, в раздел «Прочитать в первую очередь».

Можно пойти дальше, и фильтровать информацию с помощью плагина к броузеру.

Может перенести топик в блог «Я безумен»?
Total votes 14: ↑13 and ↓1+12
Comments3

«Отечественные» инвесторы, часть вторая

Reading time3 min
Views830
После обсуждения первой части публикации, решил сделать обзор остальных инвесторов и тех, кто был озвучен в комментариях.

Так же задал несколько животрепещущих вопросов всем компаниям из списка. Ждем ответа (Finam, JumpIDEA и Inventure уже ответили). Публикация на Хабре будет, чуть-чуть позже.

upd Эта публикация теперь и в блоге Venture Magazine

Читаем дальше
Total votes 7: ↑5 and ↓2+3
Comments5

7 рефакторингов для больших ActiveRecord — моделей

Reading time9 min
Views13K
От переводчика: предлагаю вашему вниманию вольный перевод статьи из блога Code Climate под названием 7 Patterns to Refactor Fat ActiveRecord Models.
Code Climate — мощное средство анализа качества кода и безопасности Ruby on Rails — приложений.

Введение


Когда разработчики начинают использовать Code Climate для улучшения качества их Rails-кода, им приходится избегать «распухания» кода их моделей, так как модели с большим количеством кода создают проблемы при сопровождении больших приложений. Инкапсуляция логики предметной области в моделях лучше, чем помещение этой логики в контроллеры, однако такие модели обычно нарушают Принцип единственной обязанности (Single Responsibility Principle). К примеру, если поместить в класс User все что относится к пользователю — это далеко не единственная обязанность.
Читать дальше →
Total votes 23: ↑20 and ↓3+17
Comments12

Домашний GTD: Уборка дома для гиков

Reading time7 min
Views141K
image
Думаю, практически все обитатели Хабра (и я в том числе) ненавидят домашнюю уборку. Все эти горы грязной посуды, кучки разбросанных вещей и анекдоты в стиле «женщины моют посуду после еды, мужчины – перед едой» и рассказы про живность в кружке из-под чая, собственно, довольно обыденная вещь. До жены я практически так и жил ) При этом умудрялся ещё проходить еженедельные проверки комнат в общаге, устраивать вечеринки, что-то готовить и не отравиться. А также искал и находил нужную вещь в своём «творческом беспорядке». У меня «датчик необходимости уборки» включался уже когда в квартире невозможно было ходить, но потом зато квартира блестела чистотой.

Так как мужской праздник прошёл, и, я надеюсь, отметили вы его преотлично, скорее всего после этого беспределья нужно будет навести порядок. Так как информации о мужской точке зрения на уборку вообще нигде нет, решил поделиться несколькими советами по уборке и вообще поддержанию квартиры\дома в чистоте. Эдакий Home GTD.
Итак, приступим
Total votes 133: ↑97 and ↓36+61
Comments113

Предвзятость выжившего

Reading time5 min
Views10K
Читаете ли вы бизнес-блоги, в которых автор раз за разом описывает свои неудачи?
Нет, потому что вы хотите перенять успешный опыт, а не узнать о полученном опыте от парня, который сам еще не преуспел.

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

Приведу несколько историй, которые помогут понять серьезность этой проблемы.

Следы от пуль


Во время Второй Мировой войны британские бомбардировщики ежедневно отправлялись бомбить немцев. Большинство самолетов не возвращалось домой, а те, что возвращались, были покрыты следами от пуль немецких зенитных орудий и истребителей.

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

Логично заключить, что нужно добавить брони в тех местах, где больше всего следов. Но это неверно.
Читать дальше →
Total votes 257: ↑250 and ↓7+243
Comments168

Ubiquity: just another map plug-in

Reading time10 min
Views1.6K
Ubiquity Logo

На Хабре уже была статья про чудесный плагин для Firefox — Ubiquity. Очень экспериментальный плагин. Советую как минимум посмотреть на него.

Так вот, мне он очень понравился и я написал своё расширение — поиск адреса на картах mapia.ua. О чём и написал статейку.

Интересно?
Total votes 61: ↑52 and ↓9+43
Comments21

Project Euler — решайте алгоритмические задачи и смотрите как это делали другие 30к участников на огромном количестве языков.

Reading time1 min
Views35K
Пару-тройку месяцев назад наткнулся на замечательный ресурс Project Euler.

Project Euler представляет собой набор математических задач, которые вам предлагается решить хоть программным методом, хоть на бумаге.

Для участия в проекте надо пройти быструю регистрацию, после чего можно смело штурмовать алгоритмы.
Читать дальше →
Total votes 43: ↑40 and ↓3+37
Comments48

Повышаем производительность Ruby on rails приложений с помощью ActiveMQ

Reading time4 min
Views8.5K
В своём посте хочу рассказать о возможности использования ActiveMQ в проекте написанном на фреймворке Ruby on rails.

Что такое Message Queue?


MQ – это архитектура обмена сообщениями между компонентами приложения в асинхронном режиме. Т. е. отправитель и получатель могут взаимодействовать в разное время. Состоят такие системы из producer'а (отправителя) и consumer'a (получателя) которые взаимодействуют между собой через broker.

Используя такие системы можно существенно увеличить производительность приложения, выполняя код в асинхронном режиме. Допустим у вас есть код который очень замедляет выполнение какой то части на вашем сайте, чтобы пользователь не ждал завершение работы такого кода, лучше его выполнить в асинхронном режиме. Несколько простых примеров:
— генерация thumbnails;
— сбор статистики;
— рассылка писем/сообщений;
— удаление данных с таблиц;
— индексация данных;
— импорт данных в базу.

Таких примеров может быть много, думаю, каждый может найти часть кода у себя в проекте, который можно вынести для выполнения в асинхронном режиме.
Читать дальше →
Total votes 9: ↑9 and ↓0+9
Comments4

Стартапинг из кафе (Мск)

Reading time4 min
Views728
(содержит полезную Гугл-карту)


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

Пролог


В середине июня я послал подальше «офисную» позицию и вместе с другом-технологом засел за давно назревшую идею стартапа (результатами мы скоро похвалимся в отдельном посте).

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

Посему, мы притворились студентами в Кремниевой Долине и решили колбасить код и интерфейсы из кафешек. Вот, что получилось.

Читать дальше →
Total votes 97: ↑85 and ↓12+73
Comments193

Юзабилити и Продвижение

Reading time1 min
Views1.2K


"… В числе самых интересных выступлений на eTarget-2009 оказался доклад Дмитрия Сатина из UsabilityLab. Он объяснил рекламодателям, как впустую потратить их деньги. Речь в основном шла о том, куда переходит пользователь после клика, и, в частности, о дурной привычке вести потребителей на главную страницу своего сайта.

Простая мысль о том, что «посадочную» страницу надо готовить еще тщательнее, чем баннер, очень понравилась аудитории. Та с удовольствием рассматривала слайд, в котором автопроизводитель после клика по баннеру показывал посетителю комплект разноцветных шарфов вместо новой машины...." Александр Амзин lenta.ru/articles/2009/03/28/etarget/

Update: Чуть лучше качество видео на Яндексе: video.yandex.ru/users/dmitrysatin/view/7
Total votes 47: ↑33 and ↓14+19
Comments26

Веб-формы «Светофор». Вариант реализации

Reading time1 min
Views2.4K
Не так давно Gunger представил вариант раскрашивания элементов ввода текста на форме. Мне этот вариант, несмотря на критику некоторых юзеров, очень понравился и я решил что со временем сделаю свою реализацию.

Время пришло и я рад представить свой вариант реализации написанный в виде JQuery-плагина. Я назвал плагин semaphore, по моему вполне удачное название. Плагин работает с регулярными выражениями для проверки валидности ввода.
Читать дальше →
Total votes 80: ↑70 and ↓10+60
Comments41

Expert Python Programming

Reading time2 min
Views6K
Expert Python Programming Совсем недавно (24.09.08) Tarek Ziadé анонсировал публикацию своей замечательной книги (IMHO).

 Для кого написана


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

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

Из книги вы узнаете какие использовать IDE, DVCS, фреймворки тестирования, технику оптимизации; как выпускать и поддерживать разработанные приложения; как документировать код, используя reStructuredText и Sphynx; как распространять с помощью setuptools и других инструментов (PasteScript, zc.buildout, builbots); как использовать систему issue/bag трекинга Trac.

Ссылки


* Детальная информация о книге
* Подробный обзор Мишеля Симонато (Michele Simionato)
* Блог автора
* Chapter 10, Documenting Your Project. [PDF 3MB]

Далее немного информации о каждой главе
Total votes 28: ↑26 and ↓2+24
Comments30

Супер-юзабильные формы

Reading time2 min
Views54K
super_form

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

На помощь приходит замечательный скрипт «Masked Input Plugin», который позволяет назначить для каждой формы маску, по которой данные будут заполнятся.

Возможно Вы не совсем поняли, но лучше один раз увидеть, чем сто раз услышать.
Читать дальше
Total votes 209: ↑164.5 and ↓44.5+120
Comments91

Information

Rating
Does not participate
Registered
Activity