discovery @discovery
User
Семь принципов успешного социального продукта, которые вам надо знать
6 min
5.3KTranslation
Социальные продукты — это весьма интересная птица. Даже для самого опытного продакт-менеджера, социальные продукты остаются неуловимыми. И хотя есть много очевидных истин про них, существует масса способов продумать их неправильно. Особенно если вы глубоко в текущем моменте, принимаете решения на уровне пикселей, стараетесь помнить что же именно важно, — и общая картина размывается.
Есть единственная магия, которую я обнаружила в дизайне привлекательных социальных продуктов, которые отлично прорываются через шум и овладевают временем и деньгами людей. Это тотальное следование следующим ключевым принципам дизайна, архитектуры продукта.
Есть единственная магия, которую я обнаружила в дизайне привлекательных социальных продуктов, которые отлично прорываются через шум и овладевают временем и деньгами людей. Это тотальное следование следующим ключевым принципам дизайна, архитектуры продукта.
+33
Яндекс. Директ. Анализируем конкурентное окружение
4 min
16KПредставьте ситуацию. Вы разрабатываете сайты. Хорошие сайты для хороших людей. Ваши рекламные кампании работают давно, вы вышли на хороший уровень ROI, заказы идут с завидной периодичностью. Все казалось бы хорошо, пока в один прекрасный день мы не получаем кучу писем от Директа, о том что мы кем-то вытеснены с насиженных позиций. Мы идем в выдачу и видим на своей любимой позиции незнакомый сайт конкурента. Естественным нашим желанием будет узнать что это за фрукт и на основании этой информации принять стратегическое решение – ввязываться ли в войну бюджетов (если это серьезный и жирный конкурент) или подпереть снизу и помочь слить бюджет (если это мелочевка).
«Но это же невозможно!» – Скажете вы. – «Любая система контекстной рекламы руководствуется принципами закрытого аукциона и не предоставляет своим рекламодателям информацию о конкурентах. Мы ведь не знаем ни ключевых запросов конкурента, ни настроек его РК. Не знаем использует он минус-слова или кавычки. Самое главное – мы не знаем его ставок и CTR»
Спокойствие, только спокойствие! (с)
В статье я расскажу, как по косвенным признакам узнать максимум стратегически важной информации о конкурентах, достаточной для принятия решений.
+84
47 принципов игровой механики
1 min
7.9KНе секрет, что многие социальные сервисы внедряют у себя принципы игровой механики, хотя бы в виде статусов, рейтингов, голосований, виртуальных подарков. Аналогичные принципы применяются в офлайновом мире, где на игровой механике основаны маркетинговые акции, дисконтные программы. Игры вызывают эмоции, что делает отношения с пользователями более крепкими и эффективными. Среди экспертов существует мнение, что любой бизнес в будущем должен взять элементы игры.
Чтобы использовать игровой арсенал в полном объёме, нужно знать все имеющиеся методы и сочетать их друг с другом. Существующие термины, концепции и научные теории в данной области можно хотя бы напечатать в виде колоды карт и вытягивать их в случайной последовательности.
Компания SCVNGR занимается разработкой мобильных игр и создала именно такую колоду карт, которую можно позаимствовать и использовать в своих целях. Вот здесь приводится объяснение каждого из 47-ми терминов и примеры их использования: достижения, фиксированный интервал, поведенческий кураж, информационная теория фрагментарной информации (то есть что любую информацию для пользователей нужно выделять минимально возможными порциями — так она лучше усваивается), динамика достижений, совместная игра, кросс-ситуационные хит-парады, бесконечный геймплей, мысль о великой цели, бесплатный завтрак, лотерея, собственность и т.д.
Чтобы использовать игровой арсенал в полном объёме, нужно знать все имеющиеся методы и сочетать их друг с другом. Существующие термины, концепции и научные теории в данной области можно хотя бы напечатать в виде колоды карт и вытягивать их в случайной последовательности.
Компания SCVNGR занимается разработкой мобильных игр и создала именно такую колоду карт, которую можно позаимствовать и использовать в своих целях. Вот здесь приводится объяснение каждого из 47-ми терминов и примеры их использования: достижения, фиксированный интервал, поведенческий кураж, информационная теория фрагментарной информации (то есть что любую информацию для пользователей нужно выделять минимально возможными порциями — так она лучше усваивается), динамика достижений, совместная игра, кросс-ситуационные хит-парады, бесконечный геймплей, мысль о великой цели, бесплатный завтрак, лотерея, собственность и т.д.
+46
Восстановление зрения
2 min
45KОднажды у меня появились видеозапись лекций Жданова.
Так были предложены упражнения для глаз. Я решил попробовать выполнять их, чтобы проверить их эффективность.
Ниже вы увидите сами упражнения.
Так были предложены упражнения для глаз. Я решил попробовать выполнять их, чтобы проверить их эффективность.
Ниже вы увидите сами упражнения.
+66
В Google провели исследование социальных взаимодействий между людьми
2 min
4.5KПол Адамс, занимающийся исследованиями пользовательского взаимодействия в Google, разместил слайдшоу из недавней презентации, на которой освещалось его исследование того, как люди используют технологии социальных сетей.
Презентация показывает недостатки существующей технологии и акцентирует внимание на тех вещах, которые в текущей реализации (например в Facebook) сделаны неправильно.
Но обо всем по порядку.
+54
Социальные сети. Модели информационного влияния, управления и противоборства
1 min
1.5KХочу порекомендовать одну интересную книгу про социальные сети. Книга имеет название «Социальные сети. Модели информационного влияния, управления и противоборства». Я не видел на русском языке книгу про социальные сети (не считая «Программируем коллективный разум»), может быть есть и другие. Эта книга затрагивает интересные и скрытые моменты, также в ней упоминается Хабр.
Небольшое введение в содержание:
1. Моделирование социальных сетей
2. Стохастические модели социальных сетей
3. Модели информационного управления и информационного противоборства в социальных сетях
4. Имитационное моделирование информационного влияния и управления в социальных сетях
скачать
купить
Небольшое введение в содержание:
1. Моделирование социальных сетей
2. Стохастические модели социальных сетей
3. Модели информационного управления и информационного противоборства в социальных сетях
4. Имитационное моделирование информационного влияния и управления в социальных сетях
скачать
купить
+24
Национальный видеочат «Мой Выбор»: взгляд разработчика
2 min
1.7KВ 2010 году рекламное агентство «Danke» собственными силами разработало национальный видеочат «Мой Выбор». Основой проекта послужила новая технология Adobe Stratus, которая позволяет присваивать каждой флешке уникальный id, который и позволяет соединять 2 флешки и передавать видео-пакеты напрямую. Начиная с 10 версии Adobe Flash Player поддерживает возможность передачи данных непосредственно с одного компьютера на другой посредством протокола UDP без помощи медиа-сервера. Задачей сервиса на стороне сервера (так называемый пировый сервер) является связь передающего и принимающего объектов на двух или нескольких компьютерах пользователей. Таким сервисом является Adobe Stratus.
Подробнее от разработчиков (на английском естественно):
labs.adobe.com/wiki/index.php/Stratus
labs.adobe.com/wiki/index.php/Stratus:FAQ
labs.adobe.com/technologies/stratus
Тем самым обеспечивается неплохая связь без организации множества серверов и сверхбыстрых широкополосных каналов связи.
Сам проект отличается от других подобного рода проекта. Это не чат рулетка, потому что здесь невозможно соединится за несколько секунд со случайным собеседником. Это не быстрый чат, это проект для живого общения знакомящихся людей. Безусловно, все понимают, что каждый человек может просто не знать о существовании других людей на других концах страны, которые сделают его счастливее. Данный проект был разработан для пользователей, которые хотят найти свою вторую половинку, общаясь с ней в живую.
Большинство пользователей проекта действует на сайте следующим образом: ищут людей, используя различные критерии поиска по анкетам, просматривают 2-3 человека на проекте и пишут им сообщения. Некоторые – сразу звонят. Если человек находится он-лайн, то на его экране появится соответствующее сообщение, что к нему желают подключится.
В самом видео-приложении пользователь может изменять качество передаваемого видео, уровень звука, выбирать input-средства. На проекте планируется абонентская плата.
Подробнее от разработчиков (на английском естественно):
labs.adobe.com/wiki/index.php/Stratus
labs.adobe.com/wiki/index.php/Stratus:FAQ
labs.adobe.com/technologies/stratus
Тем самым обеспечивается неплохая связь без организации множества серверов и сверхбыстрых широкополосных каналов связи.
Сам проект отличается от других подобного рода проекта. Это не чат рулетка, потому что здесь невозможно соединится за несколько секунд со случайным собеседником. Это не быстрый чат, это проект для живого общения знакомящихся людей. Безусловно, все понимают, что каждый человек может просто не знать о существовании других людей на других концах страны, которые сделают его счастливее. Данный проект был разработан для пользователей, которые хотят найти свою вторую половинку, общаясь с ней в живую.
Большинство пользователей проекта действует на сайте следующим образом: ищут людей, используя различные критерии поиска по анкетам, просматривают 2-3 человека на проекте и пишут им сообщения. Некоторые – сразу звонят. Если человек находится он-лайн, то на его экране появится соответствующее сообщение, что к нему желают подключится.
В самом видео-приложении пользователь может изменять качество передаваемого видео, уровень звука, выбирать input-средства. На проекте планируется абонентская плата.
-2
Тоби Сегаран «Программируем коллективный разум»
3 min
11KЗнаете, люблю я книжки про всякие интересные алгоритмы, и вот недавно попалась еще одна такая книжка.
Книга «Программируем коллективный разум» в основном посвящена алгоритмам классификации и кластеризации, хотя есть главы, посвященные другим темам вроде создания собственного поисковика, генетическим алгоритмам и генетическому программированию. Почти все описанные алгоритмы применяются в духе Web 2.0, используя анализ поведения пользователей на разных сайтах, которые предоставляют свой API. Но что особенно приятно удивило, так это то, что все примеры написаны на языке Python.
Вот какие алгоритмы описываются в книге:
- Коллаборативная фильтрация. Или, говоря человечески языком, алгоритмы, которые могут рекомендовать вам какие-то покупки, сайты или музыку в зависимости от оценок, которые вы поставили другим подобным вещам. По таким алгоритмам работает навязывание покупок в интернет-магазинах или подбор музыки на last.fm. В конце главы приводится пример, который будет рекомендовать вам ссылки из сервиса del.icio.us.
- Алгоритмы группировки (кластеризации). Создаваемый пример анализирует RSS-каналы блогов и пытается их автоматически разделить на группы в виде дерева в зависимости от частоты слов, которые попадаются в блоге. Заодно Сегаран рассказывает как можно сделать так, чтобы названия блогов расположились на плоскости кучками в зависимости от их близости в плане рассматриваемых тем.
- Отдельная глава посвящена построению поисковиков – созданию паука и, самое главное, рассматриваются алгоритмы ранжирования ссылок, в том числе и с учетом ссылок страниц друг на друга, создавая, таким образом, аналог Google PageRank. Еще интересно, что в этой же главе есть пример, где для выдачи наиболее релевантных ссылок используется нейронная сеть, которая обучается по мере того как пользователь щелкает на понравившиеся ему ссылки.
+61
10 юзабилити-преступлений, которых вы не должны совершать
2 min
4.5KTranslation
На стадии дизайна и разработки мы должны учитывать прописные истины и основные концепции для улучшения юзабилити сайта. В этой статье описываются классические, но непростительные ошибки в области веб-дизайна и способы их решения.
Использование атрибута «for» позволит пользователям кликать по метке, для выбора соответствующего поля формы. Это особенно важно для чекбоксов и радиокнопок — увеличить область клика.
Преступление #1: В формах метки не связаны с полями ввода
Использование атрибута «for» позволит пользователям кликать по метке, для выбора соответствующего поля формы. Это особенно важно для чекбоксов и радиокнопок — увеличить область клика.
+253
Улучшаем интерфейс Java-приложения
27 min
100KTutorial
Добрый день, Хабражитель!
Достаточно много различной раздробленной информации существует на тему работы со Swing и графикой в просторах интернета, а также на тему интерфейсов Java-приложений. Кто-то твердит о том, что Java морально устарела и десктоп-приложения на Java не имеет смысла писать, кто-то с пеной у рта доказывает обратное. В то же время работа идет, приложения пишутся и встают очередные проблемы. В предыдущей статье я уже привел небольшой список полезных библиотек для исключительных случаев, но нередко бывает так, что никакая сторонняя библиотека не позволяет сделать то, что Вам нужно. Именно в такой момент стоит задуматься о возможной необходимости написания своих компонентов.
Итак, в данном посте я постарался изложить самые важные и значимые на мой взгляд моменты по работе со Swing и графикой — как создавать компоненты, как стилизовать интерфейс, чего делать не стоит и многое другое…
Достаточно много различной раздробленной информации существует на тему работы со Swing и графикой в просторах интернета, а также на тему интерфейсов Java-приложений. Кто-то твердит о том, что Java морально устарела и десктоп-приложения на Java не имеет смысла писать, кто-то с пеной у рта доказывает обратное. В то же время работа идет, приложения пишутся и встают очередные проблемы. В предыдущей статье я уже привел небольшой список полезных библиотек для исключительных случаев, но нередко бывает так, что никакая сторонняя библиотека не позволяет сделать то, что Вам нужно. Именно в такой момент стоит задуматься о возможной необходимости написания своих компонентов.
Итак, в данном посте я постарался изложить самые важные и значимые на мой взгляд моменты по работе со Swing и графикой — как создавать компоненты, как стилизовать интерфейс, чего делать не стоит и многое другое…
+108
Какие бывают типы OutOfMemoryError или из каких частей состоит память java процесса
3 min
206KЕсли вы словили OutOfMemoryError, то это вовсе не значит, что ваше приложение создает много объектов, которые не могут почиститься сборщиком мусора и заполняют всю память, выделенную вами с помощью параметра -Xmx. Я, как минимум, могу придумать два других случая, когда вы можете увидеть эту ошибку. Дело в том, что память java процесса не ограничивается областью -Xmx, где ваше приложение программно создает объекты.
+70
Расширяем возможности Java-приложения
11 min
19KЗдраствуй, Хабражитель!
Вот уже несколько лет проработав над разными десктопными Java-приложениями и в очередной раз копаясь в своих залежах полезных библиотек я понял, что настал момент немного структурировать всю накопившуюся коллекцию и выкинуть лишнее. Заодно, захотелось выделить из нее наиболее редкие экземпляры и дописать небольшие пояснения к ним (что, где и как работает), чтобы при необходимости быстро и легко использовать нужную часть. Собственно информацией о некоторых особо выделяющихся библиотеках из коллекции мне и захотелось поделиться с Вами — вдруг кому-то это окажется интересным или даже полезным.
Итак, сегодня я приведу здесь библиотеки, которые могут Вам помочь решить часто возникающие вопросы вроде «Как сделать это на Java?» по разным узким направлениям разработки.
Сразу скажу, что большая часть приведенных в статье библиотек использует нативные средства, для реализации того или иного функционала. Но это совсем не значит, что от них сразу нужно отказаться. Впрочем, не буду разводить холивар и сразу перейду непосредственно к теме...
Вот уже несколько лет проработав над разными десктопными Java-приложениями и в очередной раз копаясь в своих залежах полезных библиотек я понял, что настал момент немного структурировать всю накопившуюся коллекцию и выкинуть лишнее. Заодно, захотелось выделить из нее наиболее редкие экземпляры и дописать небольшие пояснения к ним (что, где и как работает), чтобы при необходимости быстро и легко использовать нужную часть. Собственно информацией о некоторых особо выделяющихся библиотеках из коллекции мне и захотелось поделиться с Вами — вдруг кому-то это окажется интересным или даже полезным.
Итак, сегодня я приведу здесь библиотеки, которые могут Вам помочь решить часто возникающие вопросы вроде «Как сделать это на Java?» по разным узким направлениям разработки.
Сразу скажу, что большая часть приведенных в статье библиотек использует нативные средства, для реализации того или иного функционала. Но это совсем не значит, что от них сразу нужно отказаться. Впрочем, не буду разводить холивар и сразу перейду непосредственно к теме...
+68
Многопоточность в Java: ExecutorService
2 min
247KTranslation
В Java 5 было добавлено много вещей для организации многопоточности и особенно касаемо организации параллельного доступа. В этой и последующих статьях мы пройдемся по некоторыми из них.
+50
Стремимся к минимализму (подборка сайтов, где можно черпать вдохновение)
1 min
33KНи для кого не секрет, что в настоящее время многие стремятся к минимализму в дизайне чего бы то ни было. Действительно, когда нет ничего лишнего, то повышается и восприимчивость информации. Но это все лирика. Сказано было это еще до меня и много. Предлагаю вашему вниманию подборку сайтов, посещение которых может направить ваши мысли по поводу разрабатываемого дизайна в нужное русло.
+100
Google упрощает контрактное программирование
1 min
2.6KGoogle выпустил открытую библиотеку Contracts for Java, которая упрощает реализацию методов контрактного программирования в Java. С помощью библиотеки Contracts for Java предусловия, постусловия и инварианты можно добавлять в Java как булевые выражения внутри аннотаций.
Как сказано в официальном анонсе, библиотека разработана двумя программистами Google в свободное от основной работы время (20% на личные проекты) и основана на Modern Jass и сделана под впечатлением от языка Эйфель, в котором впервые был реализован метод контрактного программирования.
Как сказано в официальном анонсе, библиотека разработана двумя программистами Google в свободное от основной работы время (20% на личные проекты) и основана на Modern Jass и сделана под впечатлением от языка Эйфель, в котором впервые был реализован метод контрактного программирования.
+29
Garbage Collection наглядно
10 min
286KTranslation
В последнее время я работаю с клиентами над вопросами настроек JVM. Смахивает ситуация на то, что далеко не все из разработчиков и администраторов знают о том, как работает garbage collection и о том, как JVM использует память. Поэтому я решил дать вводную в эту тему с наглядным примером. Пост не претендует на то, чтобы покрыть весь объем знаний о garbage collection или настройке JVM (он огромен), ну и, в конце концов, об этом много чего хорошего написано уже в Сети.
+66
Инструменты для дизайнеров и разработчиков
2 min
4.8KTranslation
Предлагаю ознакомиться с небольшим набором инструментов для веб-разработки, которые могут сделать вашу жизнь проще. Все сервисы бесплатны и просты в использовании, но (как обычно) есть и минус – они все на английском, хотя когда и кого это останавливало?)
+107
Верстка почтовых рассылок
6 min
71KTutorial
Привет, Хабр!
В этой статье я бы хотел поделиться своими познаниями в кроссбраузерной и кроссмейлерной верстке почтовых рассылок. Под словом кроссмейлерность подразумевается — корректное отображение верстки во всех почтовых клиентах. Я считаю, что статья вполне актуальна, в виду того, что на хабре эта тема несколько раз освещалась, но некоторые нюансы были неточными, а другие просто устарели. По долгу службы я долгое время занимался версткой html расылок по всему миру, и приведенные ниже правила будут касаться следующих почтовых клиентов и веб-интерфейсов: MS Outlook 2003-2010, mail.ru, rabmler почта, Яндекс почта, Gmail, Yahoo! Mail (Classic), Thunderbird 2.0-3.0, Hotmail, Windows Live Mail, Apple Mail 3-4, AOL Mail, Lotus Notes 8-8.5.
В этой статье я бы хотел поделиться своими познаниями в кроссбраузерной и кроссмейлерной верстке почтовых рассылок. Под словом кроссмейлерность подразумевается — корректное отображение верстки во всех почтовых клиентах. Я считаю, что статья вполне актуальна, в виду того, что на хабре эта тема несколько раз освещалась, но некоторые нюансы были неточными, а другие просто устарели. По долгу службы я долгое время занимался версткой html расылок по всему миру, и приведенные ниже правила будут касаться следующих почтовых клиентов и веб-интерфейсов: MS Outlook 2003-2010, mail.ru, rabmler почта, Яндекс почта, Gmail, Yahoo! Mail (Classic), Thunderbird 2.0-3.0, Hotmail, Windows Live Mail, Apple Mail 3-4, AOL Mail, Lotus Notes 8-8.5.
+142
Автоматический контроль структуры класса
4 min
4.9KУ каждой компании есть свой стандарт оформления кода и важно придерживаться его. Встроенные в IDE форматеры кода решают это задачу частично, так как они в основном позволяют лишь добиться простого выравнивая кода. Помимо этого хочется еще и порядка в последовательности объявления как полей, методов, так и вложенных классов. Причин, по которым код-стандарт не соблюдается масса: программист перед отправкой кода в репозиторий может не заметить отклонение от стандарта; новый разработчик недостаточно внимательно прочитал документ; в погоне за хот фиксом о формате забыли; либо из-за банальной усталости или лени программиста; автоматического рефакторинга и так далее. Регулярный код-ревью не решает суть проблемы, так как занимает слишком много времени и тормозит разработку — нужна автоматизация проверки соответствия кода в момент его написания!
Частые проблемы:
Частые проблемы:
- конструктор неожиданно появляется в середине класса;
- внутренний класс объявлен где-то в середине внешнего класса;
- абстрактный метод объявлен где-то в середине большого абстрактного класса;
- @Autowired метод тоже расположен где угодно но только не на самом видном месте;
- статические билдер методы разбросаны по коду класса;
- поле класса затерялось где-то между внутренним классом и методами.
Надоело такое терпеть в коде?
+18
Information
- Rating
- Does not participate
- Location
- Москва и Московская обл., Россия
- Date of birth
- Registered
- Activity