Как стать автором
Обновить
0
0
Алексей @Invincible_One

Разработчик

Отправить сообщение

Как правильно сортировать контент на основе оценок пользователей

Время на прочтение5 мин
Количество просмотров91K


В оригинале название звучит как «How Not To Sort By Average Rating». Я подумал, что дословный перевод «Как не сортировать по усреднённому рейтингу» будет малопонятен и хуже отражает содержание статьи.

Постановка проблемы


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

Неправильное решение №1

Рейтинг= (Число положительных оценок) - (Число отрицательных оценок)

Читать дальше →
Всего голосов 458: ↑423 и ↓35+388
Комментарии134

AngularJS — фреймворк для динамических веб-приложений от Google

Время на прочтение6 мин
Количество просмотров138K
AngularJS создан для тех разработчиков, которые считают, что декларативный стиль лучше подходит для создания UI, а императивный — для написания бизнес-логики.

Дзен Angular


  • Хорошо отделять манипуляцию DOM-ом от логики работы приложения. Это существенно улучшает тестируемость кода.
  • Хорошо считать, что автоматизированное тестирование приложения настолько же важно, насколько и написание самого приложения. Тестируемость очень сильно зависит от того, как структурирован код.
  • Хорошо отделять разработку клиентской части от серверной. Это позволяет вести разработку параллельно и улучшает повторное использование на обеих сторонах.
  • Хорошо, когда фреймворк ведет разработчика по всему циклу разработки приложения: от проектирования UI через написание бизнес-логики к тестированию.
  • Хорошо, когда распространенные задачи становятся тривиальными, а сложные — упрощаются.


AngularJS представляет собой комплексный фреймворк. В стандартной поставке он предоставляет следующие возможности:
  • Все, что вам нужно для создания CRUD-приложений: data-binding, базовые директивы для шаблонов, валидация форм, роутинг, deep linking, повторное использование компонентов, dependency injection, инструменты для взаимодействия с серверными (RESTful) источниками данных.
  • Все, что вам нужно для тестирования: средства для модульного тестирование, end-to-end тестирования, mock-и.
  • Шаблон типового приложения, включающего в себя структуру каталогов и тестовые скрипты.


AngularJS разрабатывается сотрудниками Google и используется, как минимум, в одном сервисе Google — DoubleClick.

Читать дальше →
Всего голосов 60: ↑55 и ↓5+50
Комментарии36

На какие конференции по новым медиа стоит и не стоит ходить и почему? Разбор мероприятий 2011 года

Время на прочтение1 мин
Количество просмотров1K
В силу своей профессии, в 2011 году я много времени провела на различных мероприятиях, посвященных социальным сетям, их работе, кейсам и т.д. Поэтому я взялась сравнить все конференции, на которых побывала, с точки зрения организации, спикеров и прочих важных критериев.

Note! Этот пост полностью субъективен и основан на моем личном мнении.

Note! Тут собрана информация только о тех конференциях, которые либо полностью посвящены новым медиа, либо содержат в себе секции по новым медиа. Я не писала об узкоспециализированных конференциях для определенных отраслей.

Note! В этой статье охвачены не все конференции по новым медиа, которые существуют.

image

Собственно, табличка сделана по мотивам статьи, которую я не стала постить на Хабр, так как очень многабукаф. Но если кому не лень, то почитать больше о каждой из конференций можно вот тут.

Буду рада комментариям — какие еще критерии можно добавить в оценку? Можно попробовать сделать рейтинг конференций по новым медиа, если кто-то будет готов добавить материал.
Всего голосов 34: ↑28 и ↓6+22
Комментарии23

Дарим роботов на Новый год

Время на прочтение5 мин
Количество просмотров15K
Новый год осталось ждать уже недолго и многие уже распланировали свои отпуска. С другой стороны о подарках мы начинаем задумываться зачастую только в последние предновогодние дни. Для тех, кто покупает подарки заранее или просто хочет подготовить необычный подарок, подготовлена данная обзорная статья. Всем остальным рекомендую сохранить статью в закладках, чтобы числа 28го внезапно вспомнить о ней, открыть, и, не ломая голову, бегом в магазин. Как вы уже поняли из заголовка, выбирать мы будем исключительно из роботов, ну и, возможно, пару радиоуправляемых моделей.

image

Читать дальше →
Всего голосов 110: ↑106 и ↓4+102
Комментарии58

30-й выпуск подкаста «Откровенно про IT карьеризм». Беседа с Сергеем Романовым про Филиппины

Время на прочтение1 мин
Количество просмотров1.1K
image
  • Виза
  • Перелет
  • Собственность на Филиппинах
  • Особенности филиппинского менталитета
  • Английский язык
  • Где лучше жить и работать на Филиппинах
  • Транспорт
  • Безопасность в городах Филиппин
  • Образование
  • Филиппинский язык
  • Уровень жизни
  • Джипни
  • Филиппинская кухня и продукты
  • Медицина
  • Техника и интернет на Филиппинах
  • Цена на машины
  • Поиск рабочей силы
  • Внешность аборигенов
  • Развлечения
  • Тайфуны
  • Бюрократия и коррупция
Всего голосов 24: ↑19 и ↓5+14
Комментарии9

Таблетки с CES. Итоговая таблица

Время на прочтение3 мин
Количество просмотров2K

Выставка CES в Лас-Вегасе просто разразилась невиданным множеством планшетных компьютеров на всевозможных платформах. Среди них преобладают железки на Android или Windows 7. Журналисты engadget постарались и собрали список всех анонсированных планшетов. Под хабракатом вы увидите весь сводный список грядущих таблеток с кратким описанием каждой из них, а также планируемой датой выпуска и ценой.
Читать дальше →
Всего голосов 79: ↑75 и ↓4+71
Комментарии117

Разработка сайта — от первой встречи с заказчиком до сдачи проекта, или как быть фрилансером и выжить

Время на прочтение12 мин
Количество просмотров73K
Привет, Хабр!

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

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

Я попробую описать весь процесс создания сайта с собственной и, как мне кажется, более приближенной к жизни для большинства точки зрения. Просто в один момент я решил уйти из компании, где я работал по найму, и начать делать своё дело — без стартового капитала, офиса и какого бы то ни было прикрытия «пятой точки»; разве что отсутствия острой необходимости в съеме жилья и наличия питерской прописки.

Кому интересно — добро пожаловать под кат!
Читать дальше →
Всего голосов 89: ↑78 и ↓11+67
Комментарии64

Шпаргалки для тех, кто делает первые шаги

Время на прочтение1 мин
Количество просмотров31K


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

Шпаргалка по электронным компонентам (PDF, 168Kb)
Шпаргалка по контроллерам AVR (ч.1) (PDF, 61Kb)
Шпаргалка по контроллерам AVR (ч.2) (PDF, 61Kb)

PS: Там же, на сайте, имеется любопытный блог с описанием эффектных электронных поделок. Культура исполнения на высоте, приведены ссылки на open source прошивки.
Всего голосов 135: ↑130 и ↓5+125
Комментарии42

JavaScript паттерны… для чайников

Время на прочтение8 мин
Количество просмотров181K
Однажды вечером, сразу после того, как я закончил разбираться с наследованием в JS, мне пришла в голову идея, что пора бы заняться чем-нибудь посложнее — например паттернами. На столе внезапно оказалась книжка Gof, а на экране ноутбука появился труд с названием «JavaScript patterns».

В общем, спустя пару вечеров, у меня появились описания и реализации на JavaScriptе самых основных паттернов — Decorator, Observer, Factory, Mediator, Memoization (не совсем паттерн, а скорее техника, но мне кажется что она прекрасно в этот ряд вписывается) и Singleton.

Читать дальше →
Всего голосов 118: ↑108 и ↓10+98
Комментарии46

Пример Sphinx поиска на реальном проекте — магазин автозапчастей Tecdoc

Время на прочтение9 мин
Количество просмотров97K
Вкратце: статья будет полезна тем программистам, кто уже заинтересовался релевантным поиском и прочитал статьи по стартовой установке сфинкс поиска, погонял на тестовых примерах и таких же синтетических задачах. Часто эти примеры не дают ответа на вопрос, а как же ощутить реальную пользу от поискового модуля Sphinx в сравнении с другими более простыми вариантами поиска. Примеры кода в статье — на php+smarty, Sphinx 2.0.1-beta, база данных — mysql, исходники и дамп структуры базы выложены отдельным архивом в подвале. В статье описан пример использования таких особенностей сфинкса, как:
  • Создание единого конфиг файла для windows development и linux production
  • SetMatchMode(SPH_MATCH_EXTENDED2) и почему SPH_MATCH_ANY и другие не подходят для реального поиска
  • SetSortMode(SPH_SORT_RELEVANCE), SetFieldWeights — сортировка по релевантности и установка весов для полей индекса
  • SetLimits(0,20) — ограничение вывода результатов
  • AddQuery, RunQueries — построение мультизапросов
  • SetFilter, ResetFilters — добавление фильтрации в мулльтизапросе для ограничения получаемых данных
  • Wordforms — использование синонимов и преодоление ограничений для нестандартных словоформ, как «C#»

Также хочется внести свой вклад в развитие проекта и откровенно недостаточной русской документации при том, что проект создан и поддерживается русскоязычным программистом. Поэтому решено: непрекращающийся поток блокер задач идет лесом, вместо него в качестве благодарности разработчикам сфинкса в общем и пользователю Андрей Аксёнов ака shodan я пишу эту статью.
Читать дальше →
Всего голосов 59: ↑52 и ↓7+45
Комментарии47

Защита от спама в phpBB 3 без капчи

Время на прочтение3 мин
Количество просмотров18K
Думаю, многие владельцы форумов на phpBB 3 уже знают, что стандартная капча, идущая в комплекте с форумом, особо не спасает.

В общем, зайдя однажды на свой форум, увидел, что за считанные часы добавилось несколько сотен спаммерских сообщений, при том, что и капча включена, и постить можно только зарегенным. Поначалу попробовал просто выбрать другую капчу, но тоже не помогло. Тогда и задумался о другом подходе.
Читать дальше →
Всего голосов 78: ↑71 и ↓7+64
Комментарии73

Коды возврата vs исключения — битва за контроль ошибок

Время на прочтение7 мин
Количество просмотров21K
Судя по всему, неделя исключений на хабре успешно наступила :). Накопив достаточную «подушку» кармы чтобы не бояться уйти в минус, я, пожалуй, тоже выскажу свое мнение по данному вопросу. Сразу оговорюсь, что мнение сугубо личное, основанное на небольшом практическом опыте коммерческой разработки: C++, Objective-C, C#, Java, Python, Ruby.
Под катом много текста, фрагментов кода и нет картинок O_O
Всего голосов 111: ↑100 и ↓11+89
Комментарии159

Хабравстречи по четвергам

Время на прочтение1 мин
Количество просмотров390
Хабравстречи по четвергам продолжаются (отчёт с первой встречи). Мы встречаемся каждую неделю в кафе «Март» на Петровке, 25 в 20 часов (столик заказан на моё имя). Сегодня состоится уже четвёртая встреча. Как обычно, приглашены все, кому интересно зависать и общаться с хабралюдьми не только в комментариях.

И вот ещё что: я бы хотел начать приглашать на эти встречи гостей, людей, которые могут рассказать что-то интересное о себе, о том, что они делают, что умеют делать — презентовать какой-то проект, работу, ответить на вопросы. Я буду делать о таких встречах специальные отчёты на Хабре.

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

До встречи сегодня вечером!
Всего голосов 33: ↑31 и ↓2+29
Комментарии34

Официальная презентация языка Google Dart

Время на прочтение3 мин
Количество просмотров5.9K
Сегодня компания Google официально представила новый язык структурного веб-программирования Dart, который позволит создавать быстрые и высокопроизводительные веб-приложения. При всей своей простоте для написания маленьких скриптов, с помощью Dart можно будет создавать и сложные модульные веб-приложения, использовать библиотеки, дебаггеры, редакторы кода и другой инструментарий.

На официальном сайте представлен технический обзор языка (перевод на русский от azproduction), спецификации (PDF), список библиотек.

Как объяснялось во внутренней переписке компании, Dart позиционируется в качестве замены/альтернативы Javascript, страдающего от «фундаментальных» изъянов, которые невозможно исправить путём эволюционного развития.
Читать дальше →
Всего голосов 101: ↑86 и ↓15+71
Комментарии55

Тестирование веб-приложений — эмулятор интернет-канала Sloppy.

Время на прочтение2 мин
Количество просмотров15K
Сегодня же мы поговорим об очень простой утилите, но тем не менее которая может стать вашим постоянным и надёжным другом и помощником.

Из всех видов тестирования веб-приложений, самым, по моему мнению, востребованным и распространённым, является тестирование работы системы у пользователей с различным каналом доступа. Ну, может быть, кроме теста совместимости в разных браузерах. И так, нам почти в каждом проекте нужно или очень желательно посмотреть, как люди с разной скоростью подключения будут видеть наш проект. Особенно это касается веб-приложений — от этого иногда зависит вообще работоспособность проекта, в частности, когда загружаются большие AJAX-библиотеки и проект часто взаимодействует с сервером. Вот как раз для таких случаев есть проект Sloppy.
Читать дальше →
Всего голосов 38: ↑37 и ↓1+36
Комментарии30

Разработчики создали компактную систему из пульсового оксиметра и мобильного телефона для быстрого получения показателей жизнедеятельности пациента

Время на прочтение2 мин
Количество просмотров2.4K


Исследовательская группа из Университета Британской Колумбии, Ванкувер, разработали систему Phoneoximeter, состоящую из многофункционального медицинского датчика и программного обеспечения для мобильных устройств, работающих на iOS, Android и Windows Phone. Датчик, по словам тех самых разработчиков, помогает сходу определить такие параметры, как частота дыхания, пульса, содержание кислорода в крови. Для того, чтобы использовать датчик, необходимо подключить его к смартфону, с одной стороны, и к пальцу пациента, с другой. Получается как бы походная медицинская лаборатория. После снятия параметров, их можно отправить в больницу (как именно, не сказано, но, вероятно, по электронной почте).

Читать дальше →
Всего голосов 23: ↑21 и ↓2+19
Комментарии21

Технический долг

Время на прочтение6 мин
Количество просмотров25K
Будь вы простым программистом, матерым лидом, архитектором или даже ПМ-ом, вы наверняка в своей нелегкой работе сталкивались с проблемой выбора при добавлении в систему новой возможности. Одно решение гораздо проще реализовать в сжатые сроки и успеть к очередному очень важному релизу, однако оно будет более затратное в сопровождении, менее расширяемое или менее надежное. Другое решение может не обладать всеми этими недостатками, однако обладать другим, в некоторых случаях более важным недостатком – на его реализацию потребуется значительно больше времени.
Читать дальше →
Всего голосов 53: ↑48 и ↓5+43
Комментарии8

Максимальный поток минимальной стоимости

Время на прочтение15 мин
Количество просмотров84K
Транспортная задача (классическая) — задача об оптимальном плане перевозок товара со складов в пункты потребления на транспортных средствах.

Для классической транспортной задачи выделяют два типа задач: критерий стоимости (достижение минимума затрат на перевозку) или расстояний и критерий времени (затрачивается минимум времени на перевозку).

Под катом очень-очень много текста, т.к. рассказывается один из вариантов решения данной задачи «в картинках» для тех, кто мало знаком с графами. Листинг прилагается.

Путешествие в тысячу миль начинается с первого шага
Всего голосов 173: ↑165 и ↓8+157
Комментарии76

Файл⇨строка или активность работы над файлом

Время на прочтение19 мин
Количество просмотров2.2K
Большинство разработчиков знакома с таким продуктом, как визуализатор code_swarm (на google code). Как минимум каждый третий наверняка выгружал для него лог и создавал видео, которое визуализирует процесс разработки приложения, в котором видно активность программистов. Ну и конечно каждый второй видел видео подобного рода. Практически все эти видео делались на срезе отношения программист⇨файл.
В этой статье будет описан процесс формирования лога в срезе отношения файл⇨строка, то есть с генерированное видео будет демонстрировать активность работы над файлом.

Кому это интересно под прошу под кат.
В статье будет использованы:
  • Git — VCS
  • code_swarm — визуализатор истории репозиториев.
  • gource — визуализатор истории репозиториев.
  • Эмулятор среды linux в Windows или UNIX OS (с git уже идет для win эмулятор msysgit)
  • MEncoder — свободный кодировщик видео
  • ffmpeg — программа для конвертации видео с использованием различных кодеков.
Далее...
Всего голосов 44: ↑42 и ↓2+40
Комментарии12

Использование Delegate и Undelegate в jQuery 1.4.2

Время на прочтение5 мин
Количество просмотров8.8K
jQuery
В комментариях к анонсу версии 1.4.2 было много вопросов по поводу 2-х новых методов, появившихся в новой версии jQuery
Вы наверное слышали, что в jQuery 1.4.2 было добавлено 2 новых метода: .delegate() и .undelegete(). Эти два метода предназначены для тех же целей, что и методы .live() и .die() ссответсвенно, они только используют другой синтаксис.
узнать больше
Всего голосов 135: ↑85 и ↓50+35
Комментарии75

Информация

В рейтинге
Не участвует
Откуда
Орел, Орловская обл., Россия
Дата рождения
Зарегистрирован
Активность