Я в интернете

РСС    Джейсон-фид

Есть автоматические трансляции в Тумблер и Же-же. Если не работает, напишите мне: ilyabirman@ilyabirman.ru.

Позднее Ctrl + ↑

«Этот кавычкер мой»

Смирнов спрашивает, где я взял кавычкер для e2. Я ему говорю, что мне его дали. Он говорит, — «Смешно», — типа, — «но этот кавычкер мой». Все мои попытки выяснить, с чего он это взял, он просто игнорирует. Говорю ему, типа, — «Давай пришлю тебе кавычкер e2 в незабилденном виде». Он говорит, что, дескать, — «Не сильно-то он и изменился». «Покажи», — говорю я тогда, — «свой кавычкер». «Бери регистр и смотри», — отвечает Смирнов.

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

Ещё раз спрашиваю Смирнова с чего он взял, он снова молчит. И теперь вот я думаю, может SiteTracker тоже не имеет никакого отношения к SpeSta, а Scrinium — к регистру? Просто Смирнов подумал, что «никто всё равно проверять не будет, напишу, что моё».

Мда.

Update:

На «возможно он имел в виду принцип» отвечаю. Принцип работы кавычкера — один:

  1. Выкинуть HTML;
  2. Расставить кавычки;
  3. Вернуть HTML.

Тут как бы трудно изобрести что-то новое. Можно, конечно, сначала расставить кавычки везде, а потом выкинуть их из HTML, не знаю. Но такое может прийти в голову только человеку, который

  1. Прочитал исходники Смирнова;
  2. Поставил перед собой задачу сделать в принципе по-другому.

Проблема безопасности

Проблема безопасности, обнаруженная в v900, проявлялась только на этом сайте. То есть, как показали исследования, те, кто обновился до v900 не подвергли свой блог опасности. В v901 ошибка была исправлена, поэтому, насколько я понимаю, и этому сайту сейчас тоже ничто не угрожает.

В общем, не стесняйтесь, обновляйтесь до v901, ознакомившись с возможными трудностями.

e2 Release 1.02 beta

e2 Release 1.02 beta v900: что нового.

  • Многие страницы, включая главную, теперь генерятся почти в три раза быстрее, чем раньше;
  • RSS-ленты последних заметок и комментариев теперь открываются из статических файлов, за счёт чего dramatically снижается нагрузка на сервер;
  • Скрипты автосохранения и Ctrl-Shift-L теперь работают в Mozilla и Safari;
  • На страницах заметок по кейворду, избранных заметок и результатов поиска больше не отображаются все заметки разом; вместо этого там теперь есть переключалка страниц;
  • Теперь в результатах поиска есть ссылка на соответствующий кейворд, если таковой есть, и наоборот, на странице заметок по кейворду — ссылка на поиск кейворда; всё это пафосно называется интеграцией поиска и кейвордов;
  • Ну и, конечно же, breakthrough! Теперь не придётся долго искать нужную настройку на разных страницах. Новое окно «Настройка e2» поддерживают поиск настроек по ключевым словам (должно работать в Mozilla; в Safari вроде бы не работает);

Подробнее см. верлог

Версия доступна только в виде обновления; дистрибутив с новым релизом появится в ближайшие дни.

Само автообновление в данном случае может и не сработать. При обновлении будет создана папка /system/settings, после чего обновитель попытается туда закачать новые файлы. Однако Кукуц говорил, что на серверах с PHP в safe mode скрипт не может писать файлы в папку, которую сам же и создал. Если это так (я не проверял, но склонен верить Кукуцу), и у вас PHP работает в safe mode, то автообновление не сработает. Если это ваш случай, то вам придётся вручную скачать новые файлы для папки settings с сервера обновлений:

На мастерхосте этой проблемы не должно быть. У меня обновление прошло вообще без проблем.

Для того, чтобы заработала переключалка страниц, необходимо в design_notes_page воткнуть куда-нибудь что-то типа такого:

<? if (@$c['sd_pageswitcher']) { ?><p>Страницы: <?=@$c['pageswitcher']?></p><? } ?>

Не факт, что в финальной версии у страниц останутся такие же урлы.

Поведение поиска настроек может вам показаться немного странным. Ну, оно и есть странное. Хотя, в 98% случаев требуемая настройка находится легко. Опять же, в финальной версии словарь, по которому ищутся настройки, может быть немного подкорректирован.

Наслаждайтесь.

Наподобие

Ворд:

Наподобие

Хм, ну да, возможно, конечно, но явно не здесь.

e2 Release 1.02 preview

Вот почему много настроек это хорошо:

  1. Каждый может настроить движок по своему вкусу, вплоть до самых маленьких мелочей
  2. Увидев много настроек, человек подумает «блин, какая крутая система, да ведь тут можно настроить движок по своему вкусу, вплоть до самых маленьких мелочей!»

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

Windows Group Policy Editor впечатляет, конечно, но когда нужно включить или выключить что-то конктретное, пользоваться этим становится невозможно: на поиск нужной галочки уходит несколько минут. Аналогичная история, например в Microsoft Word. Приятно, что можно повесить любую функцию на любую кнопку, но сделать это не так просто: нужно эту функцию найти в списке из миллиарда возможных. Всё сильнее и сильнее от этой же проблемы страдает e2: его возможности растут, в нём всё больше разных настроек.

Самое удачное решение этой проблемы, которое я видел, реализовано в Опере. В окне настроек клавиатуры там есть поле ввода, которое работает по принципу «find-as-you-type». Чтобы назначить клавишу для, скажем, включения/выключения полосы прокрутки, достаточно набрать там «scro», — теперь отображаются только действия, связанные с полосой прокрутки.

Я давно хотел сделать такое в e2, однако всё как-то не доходили руки. Позавчера руки-таки дошли. Сначала я сделал просто поиск настроек по ключевым словам, то есть, на странице настроек отображалось только поле «find-as-you-type» и, по мере набора ключевых слов, под ним появлялись чекбоксы и прочие радиокнопки, относящиеся к делу.

Постепенно я повысил интеллект поиска. Например, если настройка называется «Отображать кейворды на главной», то она будет найдена и по запросу «скрыть ключевые слова с домашней страницы». Разумеется, писать длинные предложения не обязательно, отлично сработает и «убрать рубрики». По запросу «уменьшить число заметок на главной» будут найдены настройки «Число последних заметок, отображаемых целиком на главной странице» и «Число ссылок на прошлые заметки, отображаемых на главной странице снизу». То есть, настройка ищется не только по названию, но и по действию, связанному с ней.

Когда я более-менее довёл этот механизм до ума, я стал решать следующую задачу. Нужно было сделать так, чтобы большая часть настроек была доступна при помощи мыши, безо всяких запросов. Для этого рядом с полем запроса я сделал колонку «Мои ярлыки», со ссылками: сайт, заметки, комментарии, кейворды, пароли.

Всё, что делают эти ссылки — вставляют в поле запроса собственное название. Если вам не нравится состав ярлыков, просто напишите «ярлыки» в поле запроса, и вам дадут настройку, с помощью которой можно их изменить. It’s easy, it’s easy!

Скриншот: Настройка e2

Мда, ну а как же всё-таки порадоваться полторы секунды тому человеку, который хочет просто посмотреть на множество настроек? А вот так: нажать «все настройки...»

В общем, e2 Release 1.02 (beta) выйдет сегодня-завтра. Новые настройки — не единственное изменение.

P. S. Специально для активных комментаторов. Появление новых настроек совершенно случайно совпало с выходом Google Suggest. Как я уже написал, я это придумал довольно давно, где-то пару месяцев назад.

Google Suggest

Теперь Google пытается угадать что вы ищете прямо по ходу ввода поискового запроса. Несмотря на то, что Joel пишет, что это реализовано через XmlHttpRequest, у меня оно отлично работает в Опере. Видимо, для Оперы они не поленились сделать iframe-версию или я не знаю. Пока вникать лень, но надо бы.

Скрипт переезда

Скрипт переезда из Петербурга в Москву.

Скрипт железнодорожного переезда.

Анонс

Code review не прошёл даром. Начиная с Release 1.02, e2 станет работать в среднем втрое быстрее, чем сейчас.

Почему не куки?

Спрашивали некоторые, почему автосохранение в e2 реализовано не через куки. Дескать, в куку-то лучше писать, не нужно с сервером общаться — и трафик экономим, и тормозов меньше. Отвечаю.

Если бы я был браузером, я бы не стал сохранять куки на жёсткий диск после каждого изменения. Я бы сохранял, например, после закрытия страницы. Следовательно, пока пользователь пишет заметку, как бы тщательно я её не записывал в куки, от BSOD’а или недопустимой операции это не спасёт. А смысл тогда? Защищаться от случая случайного закрытия окна нужно драйвером прямых рук, а не автосохранением.

Куки — бесполезно, прямого доступа к жёсткому диску пользователя у нас нет, остаётся одно — жёсткий диск на сервере. Что и реализовано.

Rosh katan

Some people believe that rosh katan is exactly why The United States work. What am I talking about?

In Russia, people tend to «think» when doing their jobs even in (often) case they have no brains. I mean that, when people have some formal directions, they still try to figure out to themselves «why the directions are like this and not like that», «why do they want me to do B after A, when I can easily do it before» and so forth. The reason for that is that people want to do as little as possible to get to the point. In most cases this «thinking» is no good, because the ones who wrote directions are smarter, know better and have better experience.

I spent my summer vacation 2003 working in The United States and was suprised by that how vice-versa the things are in there. In The States, most people don’t think when they have instructions, because, they say, they are paid to follow instructions, not to gain the result. It’s not that they are stupid and so they cannot think. They just know that they have to follow instructions. That’s the key.

For example, imagine your job is to vacuum rooms in a hotel. You get in one of those and you see that it’s almost clean except for a small piece of dust in the corner. So what are you gonna do? Average Russian will go vacuum that corner and proceed to the next room. Average American will vacuum the whole room. Rosh katan? Average Russian will say «yes». But not really. The reason for cleaning the whole room is that the guy is paid for cleaning the room, not for getting the room clean. And this is a right point.

In The States, being paid for doing something means much more to people than it does here.

And, since instructions are written by more advanced people, following the instructions is better then trying to 1) figure out what the instructions are intended to lead to, then 2) figure out how to get that done using another (simpler) way. It’s better in terms of getting the result done precisely as it has to be done.

And room cleaning is just a simple example. The same is right for everything, I guess.

Well, so some people believe, that this is why USA works. They have a way better economy, because smart people developed the system and other people follow its rules. Just follow, no analyses. In Russia, the more we try to be rosh gadol, the more problems we’re gonna have. No matter what a smart plan will someone develop to improve our economy, we will fail. Because it’s the Russian «smart» way.

Just an opinion, of course.

Ранее Ctrl + ↓