Обновить
467.03

Веб-разработка *

Делаем веб лучше

Сначала показывать
Порог рейтинга
Уровень сложности

Разработка снизу-вверх и базы данных.

Время на прочтение5 мин
Охват и читатели4.1K
    Пол Грэм в своих эссе часто касается темы разработки снизу-вверх. Этот метод упоминается у него, когда он пишет о разработке програмного обеспечения, о способе ведения бизнеса, о преимуществах open source и блогах. Ниже я опишу почему при этой модели разработки взаимодействие с базой данных встает поперек глотки, и предложу решение уместное в некоторых случаях.

читать далее...

focus в Opera Mobile 9.5 для Pocket PC

Время на прочтение1 мин
Охват и читатели722
Задача очень специфичная, возникает только если вы разрабатываете web приложение для КПК.

Мне её предложил мой друг. Он реализовывал сбор информации о остатках на складе с помощью сканеров. Т.е. специальные аппараты под управлением Windows Mobile со считыванием штих кода, связанные по WiFi с сервером где храниться номенклатура товара. Реализовано было как web приложение, тонкий, да не очень клиент — Opera. Одна из задач — экономить время рабочих на работу с интерфейсом и минимизировать или совсем убрать повторяющиеся рутинные операции. Под задача — автоматический перевод фокуса на input'ы.

Выяснилось, что Opera метод focus для input работает не так как ожидалось — при вызове этого метода для input KEY_DOWN этим элементом не ловиться.

Далее решение...

Заметка: Касперский блокирует gif-анимацию

Время на прочтение1 мин
Охват и читатели1.8K
Возможно для кого-то это не новость, но я недавно столкнулся с данной проблемой: Антивирус Касперского заблокировал gif-анимацию.
После проведенных небольших экспериментов понял следующее:
Gif размером примерно до 50Кб он показывает только первый кадр, если размер больше, то не отображает вовсе.
Начал задумываться. Обычно при разработке сайтов проверяешь его в разных браузерах, может теперь стоит еще его проверять с разными антивирусами? :)

Favicon для любого сайта в PNG

Время на прочтение1 мин
Охват и читатели8.3K
Уже в нескольких проектах была необходимость показывать иконки для различных доменов (например, рядом с какой-нибудь ссылкой). Для этого был написан на PHP механизм, добывающий по требованию иконку со страницы по некоторому набору правил (так же, как её добывают браузеры), конвертирующий картинку в png и сохраняющий в специальном месте. Периодически эти иконки обновлялись.

После того, как я в третий раз скопировал этот механизм в очередной проект, я решил создать для себя (и других) сервис, который отдавал бы по запросу иконку в формате png для любого домена. Но ему не суждено было родиться, потому что я случайно наткнулся на аналогичную функциональность, реализованную гуглом. Достаточно набрать адрес www.google.com/s2/favicons?domain=habrahabr.ru и получишь сконверченую в PNG иконку этого домена. Решил, что многим это будет полезно — используйте :)

UPD: нашлись баги. конвертер не умеет работать с прозрачным фоном, а также грузит только те иконки, которые лежат в /favicon.ico, игнорируя мета-теги :( Так что мой сервис, видимо, появится :)

Сравнение средств проектирования — 2

Время на прочтение5 мин
Охват и читатели38K
Этот топик является продолжением статьи о средствах проектирования.
В данной части я постараюсь рассмотреть не менее достойных представителей данной «отрасли».
Итак следующая тройка выходит на старт!
Читать дальше →

Блокирование просмотра из IE6

Время на прочтение1 мин
Охват и читатели1.3K
IE 6 Blocker Script
Отыскал на просторах Всемирной интересный скрипт, блокирующий просмотр сайта из IE6. Возможно, это кому-то покажется большой пакостью для пользователей, но, видимо, это один из выходов заставить юзера обновиться до IE7 или пересесть на нормальный броузер. Скрипт использует jQuery.
Собственно, IE 6 Blocker Script
Читать дальше →

Интерактивная каптча

Время на прочтение1 мин
Охват и читатели1.3K
Поскольку сегодня 15 января — международный CAPTHA-day, то и я предложу свой вариант.
Моя идея в интерактивном взаимодействии с пользователем, чтобы понять что это не робот. Для начала нужно задать пользователю какую-то несложную задачу. Символы, введённые с клавиатуры немедленно отправлять на сервер с помощью AJAX и таким образом определять — человек это или нет. Если слово введено за одну миллисекунду — значит это робот. Опять-же можно интерактивно менять задачу и следить за реакцией пользователя. Как это могло бы быть в несколько утрированном виде можно увидеть на картинке McBernar, в каждой шутке лишь доля шутки ;-)
ещё немного мыслей для тех, кому это может быть полезно...

UPD. Демон конвертации видео в FLV.

Время на прочтение1 мин
Охват и читатели2.3K
Это продолжение, а точнее развитие, статьи написанной ранее.

В результате небольшого рефакторинга, получилось повысить производительность, и упростить код. Результатом стало изменение перечня используемого софта.
Читать дальше →

Файловый менеджер для FCKeditor — FCKfsys 2.0 (PHP)

Время на прочтение2 мин
Охват и читатели2.7K
Эта статья продолжение первого варианта файлового менеджера.

FCKfsys — файловый менеджер для визуального редактора для web FCKeditor. Мне в FCKeditor все нравится, кроме файлового менеджера. Так что надо както исправлять это самому.
Подробная информация о плагине на моем сайте и там же можете посмотреть пример работы.

Выглядит файловый менеджер с превьюшками:

Вид FCKfsys 2.0

UPD: Доработки сделаны, теперь надо над интерфейсом поработать. По моему ориентир должен быть на Windows-проводник, чтобы было привычно. То есть немного причесать надо.
Читать дальше →

Критерии 100% читаемости сайтов

Время на прочтение5 мин
Охват и читатели3.6K
Перевод статьи Oliver Reichenstein «The 100% Easy-2-Read Standard».

Большинство сайтов доверху наполнены мелким текстом, который больно читать. Но зачем? Нет причины вжимать так много информации в экран. Это глупая коллективная ошибка, которая относится к временам когда экраны были действительно маленькими. Так что…

screen vs magazine
Экран и журнал: 100%-размер шрифта — это не много. Фотограф: Wilson Miner.

Не заставляйте нас изменять размер шрифта

Мы не хотим изменять настройки браузера каждый раз когда посещаем новый сайт!

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

Изобретаем технологию: опыт соединения нескольких open-source проектов

Время на прочтение6 мин
Охват и читатели2K
Я хотел бы поделиться опытом создания приложения, или точнее технологии, основанной на нескольких open-source проектах. Это нечто вроде веб-сервера с поддержкой асинхронных сообщений и возможностью исполнения скриптов на JavaScript.

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

Глубокое непонимание юзабилити

Время на прочтение2 мин
Охват и читатели812
Все больше убеждаюсь, что люди не понимают юзабилити. Это печально, поскольку масса этих людей клепает сайты, программы и прочее. Люди не видят сути задачи и не понимают, что даже лучшие представители современных программ — это компромисс удобства, связанный с состоянием и возможностями технологий.

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

Ближайшие события

Всегда ли нужна «резиновая» верстка?

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

На написание этого текста меня натолкнули постоянные споры, возникающие за время моей практики как веб-дизайнера. Собственно, первый раз мне пришлось столкнуться с «резиновыми сайтами» благодаря прихоти заказчика. Когда дизайн проекта был полностью готов, а сам сайт сверстан и подключен, заказчик спросил: «А почему он не растягивается?». Было это достаточно давно, но этот вопрос я слышу примерно раз в 4-5 месяцев. О «резиновой» верстке сайтов говорили и писали много. Говорили что она обязательна, и наоборот, что использование ее ошибка. Однозначно, были причины возникновения резиновости. И утверждать, что использование этой технологии на 99% ошибочно, однозначно нельзя. Любую технологию нужно применить, если она нужна. Я хочу очертить примерную границу применения резиновой верстки.

полный текст

Движок древовидного форума

Время на прочтение1 мин
Охват и читатели2.1K
Есть идея выпустить движок древовидного форума на основе нашей разработки. Хотелось бы понять — нужен ли подобный форум? Что хотелось бы добавить в этом движке? Внутри описание особенностей и ссылка на демо.

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

Design Review vs Design by Committee

Время на прочтение2 мин
Охват и читатели5.8K
Мне в основном очень нравятся архитекторы в Microsoft. Некоторые более, чем другие, а некоторые — совершенно замечательные.

Одного из совершенно замечательных зовут Дэвид Блайс (David Blythe), и он архитект в Windows в области графики. Дядька раньше дизайнил OpenGL в SGI, писал по нему книжку, а сейчас вот работает в том числе над Direct3D. Дядька совершенно монструозный и замечательный. Я с ним говорил минут 20 и просветлился больше, чем за два предыдущих месяца. Читал его гуидлайны про API design и опять же радовался.

Отрывок на сегодня:
«DESIGN BY COMMITTEE. Avoid design by committee. There should be a single person with final say in the design… and this person should have good architectural experience and instincts.»
Читать дальше →

Сообщение об ошибках. Мой вариант.

Время на прочтение2 мин
Охват и читатели542
Недавно захотелось мне сделать, что бы на моем проекте ошибки отображались именно там, где они были совершены. Т.е. если вы не верно ввели e-mail, то и ошибка должна отображаться именно рядом с «инпутом» для ввода e-mail’а. Так в чем проблема? Писать прям под этим «инпутом» и все. Нет! А если не хватает места? Вот именно такая ситуация возникла у меня, в некоторых местах «впендюрить» ошибку просто некуда из-за отсутствия места для нее.

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

Поискав немного среди плагинов для «jQuery» я не нашел ничего путного. Либо я плохо искал, либо действительно ничего подходящего нет. Поэтому прошу взглянуть на мой вариант:

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

jQuery Alert Dialogs — замена стандартным функциям Alert(), Confirm() и Prompt()

Время на прочтение2 мин
Охват и читатели39K
image
Плагин jQuery Alert Dialogs призван заменить основную функциональность стандартных предупреждений JavaScript, alert(), confirm(), и prompt() функций. Они полностью настраиваются с помощью CSS (это позволит выглядеть вашему сайту гораздо более привлекательно). И вы также можете настроить пользовательский заголовок для каждого диалогового окна.

Эти методы моделируют обычные модальные диалоговые окна. Они автоматически изменяют свое положение при изменении окна браузера. Если включить jQuery UI Draggable плагин, то окна можно перемещать, перетаскивая их за заголовки. В отличие от стандартных JavaScript функций, вы можете использовать HTML в сообщении. Например, чтобы задать переход на новую строку, вы можете использовать либо \n, либо < br / >.
Читать дальше →

Правильная «резина»

Время на прочтение3 мин
Охват и читатели15K
Задачей этой статьи является систематизация знаний о том, как правильно растягивать сайт для различных разрешений экрана.
Читать дальше →

Что за файл?

Время на прочтение1 мин
Охват и читатели11K
Бывает такая ситуация, когда приходят данные в непонятном виде. Если не та кодировка, это решается достаточно просто, а если неизвестные бинарные данные? Экзотический архиватор, шифрованные данные, хеш или вообще мусор?

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

Отсюда вопрос / идея / предложение.
Читать дальше →

Вклад авторов