вебдев
19 заметок
терапия
Сейчас этот блог в основном про психотерапию.
как правильно
Слушайте меня, я вас научу правильно жить.
психология
Буржуазная лже-наука, пытающаяся выявить закономерности в людях.
практика
Случаи и выводы из психотерапевтической практики.
кино
Фильмы и сериалы.
книги
Это как кино, но только на бумаге.
nutshells
«В двух словах», обо всем.
дорогой дневник
Записи из жизни (скорее всего, не интересные).
беллетристика
Мои литературные произведения и идеи.
духовный рост
Когда физический рост кончается, начинается этот.
дивинация
Как предсказывать будущее.
половой вопрос
Про секс и сексуальность.
заяижопа
Творческий дуэт с моей женой.
магия
«Магическое — другое название психического».
Карл Юнг
игровой дизайн
Раньше я делал игры.
игры
Компьютерные игры.
язык
Слова там всякие.
людишки
Уменьшительно-ласкательно и с любовью.
культ личности
Про великих людей (то есть, в основном про меня).
hwyd
Уникальная Система Прививания Привычек.
буклет
я
идеи
блоги
spectator.ru
дети
wow
вебдев
музыка
контент
программирование
религия
дейтинг
диалоги
яндекс
кулинария
coub
fitness
символы
йога
шаманизм
tiny
ребенок

CSS и борьба со спамом

14 лет назад в категории вебдев

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

Написано вот тут.

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

Я не так давно придумал менее изящный способ: передавать в поле hidden время (timestamp) генерации страници с формой. А потом сравнивать с текущим временем на сервере.

Понятно, что боты будут постить спам, скорее всего, «слишком быстро», не тратя время на набор текста.

Пока не уверен, как будет работать этот способ, надо проверять.

0

Версия для печали

15 лет назад в категории вебдев

На одном сайте у статей есть «печатная версия».
Видимо, все остальное по умолчанию — непечатное.

True story.

0

Оптимизация картинок

16 лет назад в категории вебдев

Бирман открыл для себя программу PureJPEG, начитавшись буржуя Joel-я, который на днях про нее написал. Программа эта убирает из jpeg-ов служебный мусор, уменьшая их размер.

И ведь нет пророка в своем отечестве, ибо во-первых, Bolk давно еще писал программу photoshop crap remover, которая делает то же самое, а во-вторых, использовать фотошоп для оптимизации картинок для веба — черезвычайно глупо, так как он в jpeg-и столько говна пихает, что страшно.

Так что просто надо пользоваться нормальными графическими редакторами.

Другое дело — это pngcrush. Эта программа работает с png-файлами, но она не просто тупо убирает оттуда мусор, а пытается оптимизировать png-файл всеми возможными способами.

Очень удобно, ибо png все-таки гораздо лучше устаревшего gif-а.

PS. Кстати, Болковский crap remover написан на php, поэтому его можно прикрутить прямо к сайту.

0

Фетиш ЧПУ

16 лет назад в категориях usability вебдев

ЧПУ — вещь, безусловно, неплохая и местами полезная. Однако, и она превратилась в фетиш.

Проблема с ЧПУ по большому счету одна: URL не может содержать русские буквы. И она никак не лечится. Есть два способа как это обойти:

1. Использовать английский язык. Способ не так уж и плох, когда используются УРЛы, типа /about. А вот как только мы хотим, например, отображать в УРЛе название статьи... Если адрес статьи day_10_presenting_your_main_content_first.html, и при этом она называется — сюрприз! – «Day 10: Presenting your main content first», и вы, разумеется, спокойно понимаете по-английски, то никаких проблем не возникает.

А если статья называется «Десять убедительных доводов, почему все дураки», то в лучшем случае у вас получится из себя выдавить в качестве УРЛа «fools» или «morons». Вы можете даже разродится чем-то типа «ten_convincing_reasons_why_everyone_is_so_god_damn_stupid.html», но это будет такой специальный ЧПУ для очень ограниченного круга Ч. Не все знают английский. Далеко не все.

2. Использовать транслитерацию. Способ тоже не идеален, потому что многие — например, я — так и не застали транслит, и просто физически его не могут читать. Реальный пример — «/02.12.2004/chitallogid/comments». Слово «chitallogid» образовано автоматически из заголовка «Читал логи… долго смеялся».

Где тут понятность?

Выводы тут просты: не делайте из еды культа, не ебите мозги читателям сверхфункциональными УРЛами, которых все равно никто, кроме вас, не понимает. УРЛы, типа entry/3098, ought to be enough for everybody.

Иначе говоря, ЧПУ — это УРЛ, в котором нет непонятных для пользователя элементов. То есть ЧПУ — это не какая-то «добавочная понятность», которую все стараются внести в УРЛ, а всего-навсего отсутствие лишнего мусора.

0
Мой инструмент по развитию силы воли и прививанию полезных привычек.

Skinnable-cacheable

Придумал неболшую идею. Наверняка не я первый.
Идея заключается в том, что страницы кэшируется. Но при этом хочется сделать их Skinnable. То есть чтобы можно было «шкурки» менять. Как кэшировать в таком случае — не совсем понятно. Простой и забавный (полу)выход. Везде в документах пишем и документы, естественно, кэшируем полностью. (еще 71 слово)

ЧПУ и PHP (revisited)

ЧПУ — это термин, придуманный командой НовоКиберска, обозначает он «Человекопонятный УРЛ». Термин нигде широко не употреблялся, пока я не написал 5 сентября 2000 года заметку «ЧПУ и PHP». За эти три года термин довольно неплохо раскрутился. За эти годы очень многие ссылались на эту заметку, поэтому я взял на себя труд переписать ее, добавив еще несколько способов сделать ЧПУ и убрав всякий мусор. (еще 568 слов)

Save changes?

Вот еще идея: есть админский интерфейс — или любая форма — и в ней есть Критичные Поля (КП). После того, как содержание КП изменилось (т.е. было отредактировано) пользователь не может уйти со страницы по любой ссылке, потому что выскакивает диалог «Вы не сохранили изменения. Действительно хотите уйти отсюда?». (еще 86 слов)

Картинки возвращаются-2

«When using a normal web server setup, images should be stored as files. That is, store only a file reference in the database. The main reason for this is that a normal web server is much better at caching files than database contents. So it it’s much easier to get a fast system if you are using files». (еще 205 слов)

Картинки возвращаются

Продолжая про картинки в базе. Вот это сообщение. Народ, однако, упорно комментирует, наглядно показывая выскоий уровень своего непонимания: «К тому-же у картинок могут быть другие атрибуты, которые нужно читать/менять (например счетчики)». Господа, блин, возьмите и почитайте ДОКУМЕНТАЦИЮ. (еще 131 слово)

MySql vs Files

Ну, если про хранение текстовой информации еще можно поспорить — и совершенно справедливо — то некоторые вещи меня удивляют. Использовать MySql для хранения картинок... и выдавать их так... $data = @mysql_result($result, 0, «imageinfouser»);
header(«Content-type: $type»);
echo $data; Мне даже сказать по этому поводу нечего..

Файлы vs Базы Данных

Дима Киселев (наш админ) перевел статистику на файлы www.livejournal.com/talkread.bml?journal=kiselev&itemid=29545 Он молодец. Говорит, что нагрузка резко упала. Еще бы. Сам я большой сторонник файлов, ибо — ... ---- из аськи Salvatore: Я же сделал сбор статистики в файл. Нагрузка упала до нуля :) Ненарадуюсь.
Spectator.ru: Дык :) Мне давно пора бы писать заметку «почему и как базы данных сосут». (еще 199 слов)

Что такое RSS?

Уже стало доброй традицией писать раз в месяц нечто на тему «Чего-то-там для чайников». Итак, аббривиатура дня: RSS. Это такой Web content syndication format. (Ничего, что я по-английски?)
RSS — это сокращение от Really Simple Syndication, что в переводе на русский звучит, как Действительно Простая... (еще 351 слово)