Вам нравится этот блог, но вы не пользуетесь rss?

Сентябрь 22, 2007

Тогда воспользуйтесь подпиской по email. Буду рад.

Реклама

Меня не любит Яндекс, хотя я против того, чтоб пиздили посты.

Сентябрь 21, 2007

GogA вчера обратил мое внимание на грустную тенденцию: меня не уважает яндекс:

Результат поиска: страниц — 0
Область поиска: сайт — jeka911.wordpress.com

А сегодня Серега обратил мое внимание на то, что некто (http://tailer777.wordpress.com/) тырит посты, не скрывая это совершенно.

Буквально недавно мое внимание на себя обратила панель администратора  wordpress.com. Теперь тэги и категории — это не одно и то же.

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


Панты дороже денег

Сентябрь 21, 2007

С этим утверждением не поспоришь.

Примеры из жизни:

1. Cuill (произносится как cool), — стартап, основаный бывшими гугловцами и просто хлопцами с высшим образованием. Идея — поисковик, который будет индексировать страницы гораздо дешевле других (в 10 раз дешевле гугла).
Сайт их пуст, хотя юмор имеется.
Итого: удачный пресс-релиз, замена юзер-агента в браузере у всех сотрудников (Twiceler is an experimental robot. The user-agent is “twiceler”). И еще до официального открытия (где-то в 2008) гугл уже готов это дело приобрести.

2. Xoma (произносится как xoma), — биотехнологический стартап, основаный в 1981! году и с того времени не выпустивший ни одного продукта. Тем не менее, размер инвестиций полученых и потраченых — $700,000,000. Да и вообще, только 54 из 342 американских биотех компаний были прибыльными в 2006м.

3. Desktop Factory — контора, работающая над революционным девайсом — 3d принтером. Конечно красивая идея и выглядит впечатляюще. Но, его никто не видел, а люди уже с радостью оставляют 500 баксов в качестве предоплаты.

4. beta.ya.ru — сколько боролись за инвайты, получили их, получили публичную версию — энтузиазм уменьшился в разы.

5. Цену пантов Лебедева знают все. Крут он или нет, но другого «самизнаетекого» у нас пока нет.

Конечно, многое из вышеперечисленного — всего лишь мои предположения. Но то, что народ прется не только по цинизму, но и по красивому понту — факт.


imagegrabwindow

Сентябрь 19, 2007

Вот какая мощная функция есть в >= 5.2.2 под виндой

imagegrabwindow — делает скриншот окна приложения. возвращает идентификатор изображения или false при неудачной попытке.

$browser = new COM("InternetExplorer.Application");
$handle = $browser->HWND;
$browser->Visible = true;
$browser->Navigate("https://jeka911.wordpress.com");

/* Still working? */
while ($browser->Busy) {
com_message_pump(4000);
}
$im = imagegrabwindow($handle, 0);
$browser->Quit();
imagepng($im, "iesnap.png");

И получается скриншот сайта с php.

Опа, какой мощный комментарий от nopox’a:

Первый нах! :)

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

Вообще, если кому вдруг понадобится куча скриншотов: для Windows можно использовать утилиту url2bmp (http://www.pixel-technology.com/freeware/url2bmp), которая помимо графического имеет мощный консольный интерфейс.

Для Unix придётся устанавливать X-server, запускать браузер и делать снимок окна посредством import из ImageMagick.

Вообще, наверное, надо взяться и написать универсальный интерфейс, максимально упрощающий и унифицирующий процедуру создания скринов сайта :)


BlogCamp CIS

Сентябрь 18, 2007

Я, наверное, поеду на БлогКемп. Народное блогерское гуляние, которое будет иметь место в Киеве 13-14 октября. Там обещают наливать нахаляву и вести умные беседы о модных нынче вещах и тенденциях. В планируемых темах довольно много интересного, так что, думаю, оно того стоит.

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

Кроме того, мероприятие не коммерческое, а я все такое люблю.

Ознакомтесь.

Да.. и самое главное. Там будет WiFi свободного доступа, за два дня можно скачать фильм отличного качества. :)


Злая идея или digg по-другому

Сентябрь 17, 2007

Пока хлопцы парятся с извращенными реализациями captch’и, читал Дениса Радченко и мою сонную голову посетила идея:

Помогать народу оцифровывать книги — это хорошо, но, почему бы не сделать что-то для себя?

«Что за бред?», — скажите вы.

Почему бы не попросить пользователя перед тем как оставить комментарий проголосовать за пост на дигге?

Назовем это — «Агрессивное SMO

Вы можете возразить: «Гениально, иди спать».

Но я закончу.

Digg CaptchaПоставить маленькую кнопку дигга рядом с формой комментария, когда пользователь хочет что-то добавить, попросить его проголосовать, а затем проверить, сделал ли он это через Digg API. Еще один плюс: из дигга можно вытянуть заодно его аватар.

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


Как по мне, я нормально исполнил, потому попрошу у вас: посмотрите, плз, качает ли ваш ридер rss с фидбернера: http://feeds.feedburner.com/jeka911 , а не с jeka911.wordpress.com/feed. А то мне стыдно статистику показывать. Спасибо.


innerHTML — тормоз

Сентябрь 14, 2007

Оказывается, что innerHTML может быть ужасным тормозом, если после его изменения перестраивается dom. Вот такая функция работает намного быстрей:

/* This is much faster than using (el.innerHTML = value) when there are many
existing descendants, because in some browsers, innerHTML spends much longer
removing existing elements than it does creating new ones. */
function replaceHtml(el, html) {
var oldEl = (typeof el === "string" ? document.getElementById(el) : el);
/*@cc_on // Pure innerHTML is slightly faster in IE
oldEl.innerHTML = html;
return oldEl;
@*/
var newEl = oldEl.cloneNode(false);
newEl.innerHTML = html;
oldEl.parentNode.replaceChild(newEl, oldEl);
/* Since we just removed the old element from the DOM, return a reference
to the new element, which can be used to restore variable references. */
return newEl;
};

описание

тестовая страница