Pull to refresh
9
0
Yojik @yojik

User

Send message

Микроблоги по-новому

Reading time1 min
Views878

В связи с участившимися падениями Твиттера многие твиттеряне стали смотреть на другие сервисы. Не так давно появилась очередная платформа для микроблоггинга – Plurk.
Сегодня у твиттера огромное количество конкурентов, например Jaiku или Pownce. И чтобы выделятся из безликой толпы нужно предложить что-то новое. Такой заманчивой фишкой у Плюрка стало представление постов в виде timeline.
Читать дальше →

MyHeritage — Семейная социальная сеть?

Reading time2 min
Views2.2K
Вашему вниманию представляю сервис MyHeritage.com — генеалогическое древо. С виду кажется, что рисованием своего древа занимаются только молоденькие девочки, и что «большим дядькам» этого не надо, но с таким сайтом не создать свое древо семьи невозможно.Вначале попадая на страницу сервиса, пленяет простой и понятный дизайн, все на своих местах, кажется так все и должно быть, исправлять ничего и не хочется… Итак, какие возможности представляет сайт? Ну, главное это создать собственное генеалогическое древо
Читать дальше →

Почему я использую Linux

Reading time2 min
Views1.7K
Интересно, почему когда людям что-то нравится или не нравится, они стремятся заставить всех разделить свое мнение. Не нравится Java — пишут что на ней программируют только быдлокодеры, не понравилась операционная система — пишут что ос непригодна ни для одного нормального человека.

Я не буду показывать ссылкамипальцами на Леонида Каганова, как на пример того как отвратительно может звучать личное мнение если его попытаться обобщить на всех. Я просто хочу описать то из-за чего последние пять лет на моем домашнем компе живет Linux, и почему я не собираюсь в ближайшее время его на что либо менять.

Читать дальше →

Сделаем наш мир лучше.

Reading time2 min
Views851
При помощи фотошопа и нескольких фоток создадим новый мир, в котором хочется жить. Пошаговая инструкция по манипуляции сознанием и результат в исходном файле в подарок. Реконструкция событий 2006 года.

Читать дальше →

CNN набирает народных журналистов

Reading time1 min
Views549
Крупнейшая в США и вторая в мире вещательная корпорация CNN с годовым отставанием от первых успешных конкурентов начала активно эксплуатировать явление, которое принято называть «народной журналистикой». Портал iReport, по духу, содержанию и оформлению до боли похожий на десяток своих собратьев, чуть больше месяца назад открылся для того, чтобы дать всем желающим почувствовать себя супер-звездой репортажа. Оказались недалеко от места крушения самолета с видео-камерой? Засняли на телефон героические усилия пожарных, спасающих соседа из погибающего в огне дома? Срочно отправляйте материал нам, чтобы о событии узнала вся нация! Подобные призывы нам уже доводилось слышать не раз.

Однако у портала есть и пара изюминок. Первая: полное отсутствие пре-модерации пользовательского контента. Несмотря на принцип «удалить плохое как можно быстрее», попадание в ленту новостей незаконных фото- и видео-материалов вполне вероятно.

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

Статистика сервиса говорит, что за месяц работы из более, чем 100 000 загруженных роликов и снимков CNN использовала в своих новостных выпусках по различным каналам около 900. КПД в 0,9%, но по всей видимости медиа-гигант пока считает, что оно того стоит. Ведь затрат он не несет практически никаких.

37signals: Почему мы забили на Photoshop

Reading time3 min
Views2.6K

Это перевод статьи «Why we skip Photoshop» Джейсона Фрайда (Jason Fried) из 37signals


При разработке UI мы обычно переходим от бумажного наброска сразу к HTML/CSS. Разработку макета в Photoshop мы пропускаем.


Читать дальше →

Смысловой поисковый движок UpTake начал свою работу

Reading time4 min
Views859

По данным прошлогоднего исследования comScore, планирование поездки и покупка билетов через интернет стала неописуемым кошмаром для готовящихся отдыхать. И причина не в том, что тяжело проводить операции с какими-то сервисами по продаже билетов, а в огромном количестве ненужной информации, с которой приходится сталкиваться при планировании путешествия. По данным исследования comScore, в среднем для того, чтобы составить план поездки требуется воспользоваться 12-ю поисковыми системами, ориентированными на путешествие, посетить 22 веб-сайта: на это уходит обычно около 29 дней. Семантический поисковый проект UpTake (в прошлом Kango) призван облегчить задачу пользователям.

UpTake представляет собой поисковый движок с вертикальной системой поиска, которая обладает крупнейшей базой данных, состоящей из более чем 400,000 отелей и развлекательных учреждений Америки, упоминающихся более чем на 1,000 сайтах. Используя такой вертикальный подход сверху-вниз, UpTake удалось собрать более 20 миллионов отзывов, мнений и описаний отелей и развлекательных заведений США и предоставлять эту информацию по смысловому запросу. Это что-то наподобие Metacritic только для путешественников. Основным критерием поиска является не только рейтинг популярности, UpTake так же пытается охарактеризовать отель или развлекательное учреждение на основе информации, которую поисковая система черпает из базы данных. Например, подходит ли отель для семейного отдыха, годится ли место, информацию о котором вы запрашиваете, для романтического путешествия, приемлема ли стоимость отдыха, и т.д.
Читать дальше →

PHP: array_search — быстрый поиск по массиву

Reading time3 min
Views14K
Я уже достаточно долго использую функцию array_search() для поиска значений в массиве, так как неоднократно слышал и читал о том, что она работает заметно быстрее, чем поиск по массиву в цикле, но насколько она быстрее — не знал. Наконец-то дошли руки самому проверить и посчитать.

Сравнил скорость поиска в массиве с помощью этой функции с обычным перебором массива в циклах foreach и while. На 10-100 элементах массива разница незаметна да и время столь мало, что им можно принебречь. А вот для больших массивов разница оказалась весьма существенной. С увеличением размера массива на порядок, значительно увеличивалось и время поиска. При ста тысячах элементов скорость foreach падала до 0,013 секунды, а while — до 0,017, при том что array_search() тоже замедлился, но все-таки остался на порядок быстрее — 0.004 секунды. Для большого скрипта, работающего с большими массивами замена поиска в цикле на поиск с помощью array_search() будет вовсе не «блошиной оптимизацией».

UPD: добавил в циклы break и менял искомое значение так, чтобы оно было в середине массива — 5-50-500 и т.д. Данные в таблице обновленные.
Число элементов массива   array_search   Цикл foreach  Цикл while  
10 0.0000068 0.0000064 0.0000076
100 0.0000078 0.0000153 0.0000185
1000 0.0000209 0.0001177 0.0001351
10000 0.0004210 0.0012128 0.0018670
100000 0.0039679 0.0130989 0.0175215


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

UPD: нужен программистский склад ума, тоже нужен! И внимательность с памятью не помешают (навеяно break и range :)

Под хабракатом код скрипта, которым подсчитывал время:

Читать дальше →

Twitter + динамический IP

Reading time1 min
Views976
Сегодня при обсуждении с другом проблемы динамических IP адресов и домашнего сервера решили, что для определения IP-адреса можно использовать не только динамические DNS, но и Twitter. API у него открытый, можно не только записывать статус(т.е. IP), но и считывать. Несколько часов работы руками и можно получить легкий автоматический динамический DNS, поставив код отправки на крона. Или написать демон/службу, чтобы следило за изменением внешнего IP. А можно расширить функционал и передавать какую-нибудь полезную информацию или статус сервера.

AdFun готовит новую сеть

Reading time1 min
Views574
Ходят слухи, что популярная среди развлекательных сайтов партнерская программа AdFun готовит новую версию сети. Новый движок значительно увеличит эффективность сети и станет сюрпризом не только для рекламодателей и партнеров, но и для конкурентов, работающих на рынке монетизации развлекательного трафика.

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

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

Сколько по Вашему должна длиться бета стадия продукта/сервиса?

Reading time1 min
Views1K
Многие компании создают продукты/сервисы и сообщают о начале его открытого бета тестирования. Это наверное нормально — но все же какие сроки Вы считаете разумными для этого этапа? Полгода, год, пять лет? Чем они определяются?

Учитывая что любой проект в процессе развития меняется под воздействием замечаний пользователей, изменения ситуации на рынке, спроса на те или иные функции — есть ли реальная необходимость заявлять о стадии бета? Что это дает?

Книжко-непотопляйко

Reading time1 min
Views1.2K
Не претендуя на гениальность решил поделиться интересным открытием. Мне очень нравится читать книги принимая ванну, а тут еще подарили электронную книжку, что оказалось просто очень приятным подарком. Вот только, к сожалению, программистские руки, не расcчитанные на удержание, не раз подводили с бумажными книгами. В итоге размышлений и экспериментов оказалось что электронная книга, совмещенная с «самозашивающимся» пакетиком добавляет +10 к мудрости даже для тех у кого -1 ловкости.

A book-sink-me-not

При отсутствии пакетиков сгодится «файл» для бумаг и скотч. Но пакетик все же выглядит попрактичней и поэстетичней. А стоит копейки: сотня за $4. Для проверки герметичности был надут, закрыт и опущен под воду — ни единого разрыва.
Жалко, что в пакетике A5 остается еще немного места (с lbook v3), но надеюсь производители этих книг обратят внимание на сей факт и подгонят габариты к природным.

Счастливого отпуска! :)

Редакторы кода с помощью javascript

Reading time2 min
Views1.4K
Очень часто в web-проектах надо использовать визуальный редактор кода (richtext code editor), похожий на существующие IDE, с номерами строк и подсветкой кода. Наиболее часто он используется в редактировании исходного кода статьи или шаблонов в админке. В этой статье я перечислю существующие скрипты по аналогии со списком WYSIWYG-редакторов.
Практически все существующие визуальные редакторы создают iframe и генерируют внутри страницу в соответсвии с данными javascript-объекта, занимающимся всеми задачами по генерации кода и обработке клавиш.
Основанные на iframe:
  • EditArea — наиболее популярный редактор благодаря табуляции, gzip, совместимость пространства имён с другими библиотеками
  • CodePress — парсит SQL, Perl, C#, XSL, ASP, VBscript. Отдельные движки для разных браузеров (gecko=firefox, ie, opera). Создаётся iframe со внутренним CodePress'объектом с обращением через contentWindow. Сразу внутри скрипта идёт поиск textarea-элементов по классу, так что с динамическими ajax-редакторами прийдётся изменять скрипт. Кроме того нумерация (до 1500) строк сделана при помощи одной картинки
  • CodeMirror — парсит JS, HTML, CSS

Напомню что iframe не соответсвует XHTML спецификации, а с использовать
предложенный тэг object с не сильно получится, из-за ограничения на
доступ внутренних dom-элементов (поправьте если я неправ).
Основанные на div'ах
  • MDK-editor — самый нормальный редактор, есть контекстное меню. В минусы можно отнести некрасивый скин, небольшую тормознутость и неизвестную лицензию на использование.
  • Helene — вместо iframe используется фоновый div и динамически позиционируемая textarea поверх. Поскольку изменяется только один ряд, то невозможно выделить нескольких строк сразу
  • 9ne — похож на консоль, но нет возможности выделения всей строки Shift+End. Эмулирует каретку мигающим div'ом.

PS. Аннонсирую что в скором времени выйдет блог-движок моего производства…

Оригинал

Виртуализация как средство распространения ПО

Reading time1 min
Views5.1K
Думаю, что большинство ITшников слышало о VirtualPC и VMware.

То, насколько этот рынок сейчас на пике лишний раз подтвердил уход одного из топ-сотрудников из MS в правящий состав VMware.
(уже не помню где читал, но было этой зимой)

Но совсем недавно обнаружил, что VMware Server абсолютно бесплатный!
VMware Server отличается от VMware Workstation тем, что устанавливается как сервис и может при включении автоматом поднимать все виртуальные машины.

Но VMware пошли дальше.
Читать дальше →

JavaScript: получаем информацию о временной зоне.

Reading time2 min
Views627
Иногда бывает очень красиво хранить время на сервере в UTC и преобразовывать его в локальное время пользователя при выдаче страницы. По крайней мере такая задача встала в проекте, в котором я участвую. Перевод из utc в локальное время задача непростая, но по нему достаточно много информации и опубликованных алгоритмов. Все что для них нужно это данные о временной зоне клиента, но как оказалось информации об этом как раз не так уж и много.

Все опубликованное ниже результаты собственных наработок

Читать дальше →

Эксперименты с функциями замены в php

Reading time1 min
Views573
Несколько месяцев назад стал меня занимать вопрос: что быстрее — eregi_replace или str_replace? Когда просто надо заменить один кусок текста другим куском.
Написал какой-то скрипт, который время считал, исправлял там одно на другое и наоборот, но получалась фигня. Все-таки на рабочей машине мерять миллисекунды странно:).

А недавно догнал, что можно же все замерять в одном скрипте и тут же посчитать.
В результате обнаружилось, что str_replace при простой замене на два порядка шустрее eregi. Охренел от результата.

UDP. Впихнул в тест preg_replace. Теперь понимаю, почему из шестой версии PHP POSIX-регулярки собираются вообще убрать.

Код скрипта:
http://drusha.msk.ru/times.php

Стартап: Единый сервис объявлений — OnBazar.Ru

Reading time4 min
Views1K
Единый сервис объявлений - OnBazar.Ru

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

Читать дальше →

Information

Rating
Does not participate
Registered
Activity