Обновить
351.93

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

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

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

Google App Engine: достоинства и недостатки

Время на прочтение3 мин
Количество просмотров3.8K
Google App Engine: достоинства и недостатки
Изучив информацию в интернете о Google App Engine, хотел бы высказать собственное мнение по поводу громких споров вокруг этого продукта, а также предоставить общий перечень его ограничений на основе изученных публикаций по данной теме.

Профессиональный разработчик подбирает инструмент под задачу и решает ее средствами, которые есть в наличии.

Это касается как выбора языка Python, так и платформы в целом. Я лично являюсь Python и Django разработчиком уже больше года и могу судить об их преимуществах и недостатках. Python и Django показали себя в качестве отличных средств для создания web-приложений. Использовать их или нет — дело каждого. По моему мнению, Google подобрал и предоставил достаточно средств для полноценной web-разработки. Почему выбран именно Python, я думаю, понятно всем — корпорация имеет широкий опыт работы с данным языком. А также не следует забывать, что Guido van Rossum — член команды разработчиков.
Читать дальше →

Механизм работы Виджетов

Время на прочтение1 мин
Количество просмотров640
Пришел не рассказать, а спросить, но надеюсь будет полезно многим. Несколько дней ломаю голову над разработкой в одном проекте системы работы с виджетами (чтобы можно было новые добавлять легко). Смотрел примеры в других проектах, активно гуглил, но достойного примера не нашел. Можете поделиться ссылками и мнениями на сей счет?

Заранее благодарен!

Ajax image прелоадер

Время на прочтение2 мин
Количество просмотров2K
На днях на работе поставили задачу, нужно было сделать смену картинок. Задача решается в 5 минут при помощи jQuery. И как всегда есть одно «НО», картинки размером 1000x500 =)

И тут то оказалось что событие onLoad отрабатывает когда становятся извесны размеры изображения, а в случае больших картинок, нужно чтобы скрипт начинал работать только когда картинки подгружены полностью. И тут я подумал почему бы не использовать Ajax )

В общем вот что получилось:

Кодирование цифрового идентификатора

Время на прочтение2 мин
Количество просмотров2.6K
Читая как-то статью Сессии — всегда ли они нужны? вспомнил свои давнишние мучения по тому же самому поводу.
Когда-то я тоже строил хеши из полученных и серверных данных, дабы не показывать пользователю его внутренний идентификатор, а в базе хранил подпись последнего.

Однако, со временем меня перестал устраивать подобный алгоритм, а количество контейнеров в cookies захотелось сократить до минимума.
Не взыщите, если уже было (искал — на хабре не нашёл), а также если кому не понравится, да не гордости ради, а пользы для:
Алгоритм шифрования цифрового идентификатора

Процедурные сниппеты: моя идея

Время на прочтение1 мин
Количество просмотров591
Сейчас я разрабатываю со своей командой CMS (если хотите знать какую смотрите мои предыдущие посты), я решил внести что-то особенное. И идея мне моя показалась очевидной. Для CMS скоро будет сделан клиент на java (j2me) и это один из самых коротких путей для использования процедурных сниппетов. Например, есть библиотека действий, есть, например, скрипт заменяющий все такие-то фразы на то, что укажет пользователь, пользователь открывает в ява-клиенте вкладку «Терминал», пишет change_phrases_title [новое название], отправляет, ядро процедурных сниппетов принимает, находит скрипт и подставляет параметр (в данном случае новое название). Пока что это только концепция, в разработке которой вы можете принять участие, ссылка снизу.
Вообще процедурные сниппеты = пуль ДУ от телевизора
Я хочу чтобы вы высказали своё мнение.
<img src=«groups.google.ru/groups/img/3nb/groups_bar_ru.gif»
height=26 width=132 alt=«Группы Google»>
PolishedEngine
Перейти в эту группу

Борьба с фрагментацией PHP кешеров

Время на прочтение3 мин
Количество просмотров3.8K
Я надеюсь, что нормальные люди уже прониклись необходимостью кешировать вывод данных на своих сайтах, либо кэшировать промежуточные результаты работы с базой данных, либо просто кешировать opcode скриптов для их более быстрого выполнения.
И что разработчики предоставляют нам для этого дела?
Читать дальше →

Методика рейтинга Тэглайн — давайте обсуждать

Время на прочтение1 мин
Количество просмотров951

Рейтинг TOP-100 ведущих студий Рунета 2008", как в прошлом году, вызвал много споров, в том числе и на хабре. Особенно много разногласий вызывает методология.

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

Мы предлагаем хабрахабровцам принять участие в формировании правил и обсудить методологию проведения рейтинга в 2009, готовы рассмотреть любые предложения, пожелания. Единственная просьба — больше конструктива и продуманных аргументов. Так же мы надеемся, что перед обсуждением вы ознакомитесь с описанием текущей методологии на сайте проекта.

Также мы планируем иницировать обсуждение методолгии на нашей мини-секции на КИБЕ — приходите, пообщаемся (голосовать за секцию могут только зарегистрированные посетители КИБа).

РИТ-2008: Программа блиц-докладов

Время на прочтение1 мин
Количество просмотров883
На РИТ-2008 мы запускаем новый формат докладов — так называемые блиц-доклады или lightning talks. Если вкратце, то блиц-доклад читается в течение ровно 5 минут в серии из 10-20 таких же докладов без перерывов между ними.

Сессии блиц-докладов в течение многих лет неизменно пользуются большой популярностью на международных конференциях TPC, OSCON, YAPC, PyCon, а также многочисленных баркэмпах и не-конференциях. Подтягиваемся и мы.

Хабралюди первыми узнают программу блиц-докладов РИТ-2008:
Читать дальше →

Совпадение

Время на прочтение1 мин
Количество просмотров740
Много раз слышал от людей предостережения о том, что не стоит проверять домены на доступность средствами whois, принадлежащими регистраторам, таким как, например, nic.ru; что стоит пользоваться для таких целей консольными приложениями.

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

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

Самое смешное в этом то, что с некоторых пор данные хуиз запросов веб-интерфейса nic.ru стали передаваться средствами защищённого протокола https.

Woopra

Время на прочтение2 мин
Количество просмотров4.5K
Вот как любопытно получилось, только вчера писал на хабре о Piwik. А сегодня мне друг прислал на другой проект тоже вышедший недавно на стадию beta-тестирования — Woopra. Этот сервис также позиционирует себя как альтернатива Google Analytics. Правда, на данный момент Woopra выглядит перспективней Piwik’a, и обещает по-больше.

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

А теперь подробнее о возможностях Woopra

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

DojoCampus — примеры использования компонент из Dojo Toolkit

Время на прочтение3 мин
Количество просмотров2.7K
Приветствую наших читателей. Наряду с библиотекой для построения мощный, функциональных и красивых интерфейсов для веб-приложений ExtJS, я в последнее время снова (по второму кругу) заинтересовался другим фреймворком, а именно, Dojo Toolkit. В чем-то мощнее, в чем-то проигрывая Ext-у, он может быть быть незаменимым при построении действительно мощный и функциональных веб-приложений, предлагая развитые библиотеки для создания всего, что угодно на javascript просто в браузере (а теперь еще и в среде Adobe AIR).
Читать дальше →

Ноутбук для Ubuntu

Время на прочтение1 мин
Количество просмотров9.9K
Сейчас нахожусь в выборе ноутбука для работы (веб разработка).

В связи с этим вопрос, на какой ноутбук в пределах 50к БЕЗ ГЕМОРАЯ встает ubuntu и вменяемо работает?

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

p.s. МакБуки не предлагать, разочаровался в них.

Программа РИТ-2008 готова!

Время на прочтение1 мин
Количество просмотров668

Программу конференции «РИТ — 2008» мы готовили для вас на протяжении года: искали новые темы для докладов, следили за технологиями и компаниями, росли и развивались вместе с вами.

Секции «Российский интернет-технологии — 2008»: разработка больших Интернет-сайтов, серверное программирование, клиентское программирование, базы данных, качество (тестирование, интерфейсы, безопасность), технологии и алгоритмы, блиц-доклады.

Доклады конференции по управлению проектами «Success Story — 2008» разделены на: стартапы, команды, антикризисное управление, организация процессов, техническое управление и бизнес.

Программа «Agile Russia — 2008» определится в ближайшее время.

Подробности — на сайте конференции.

Microsoft раздает домены на халяву.

Время на прочтение1 мин
Количество просмотров2.8K
Microsoft в рамках акции «10 000 доменов в подарок» начала регистрировать домены в зоне .ru любым желающим! Вы можете зарегистрировать один домен на себя. В процессе регистрации указываете свои паспортные данные, регистрируетесь в неком «Персонал-Н» и вуаля. Инструкция к действиям:

1. Заходим на platforma2008.ru/Materials.aspx?…
2. Регаемся
3. Заходим в личные данные.
Читать дальше →

Рисуем векторной графикой в браузере (SVG/VML с помощью Google Web Toolkit + Dojo GFX)

Время на прочтение1 мин
Количество просмотров5.1K
svg/vml demo on gwt + dojo
Мы разрабатывали несколько тестовых проектов с использованием векторной графики в интерфейсе и после просьб поделиться опытом разработки написали пример для изучения. На самом деле, это очень просто, и в качестве примера предлагаем небольшое демо из документированным кодом, разработанное на GWT, с использованием библиотеки Dojo для работы с SVG (VML) графикой. Работает в большинстве браузеров, разработка практически только на Java.

Для начала ознакомьтесь с самим демо: gwt.org.ua/demos/gwt-dojo-drawdemo/DojoSimpleDemo.html
Читать дальше →

Кастомайзим INPUT FILE.

Время на прочтение3 мин
Количество просмотров70
Когда-то давно видел подобное действо на хабре ( спасибо elfiki за линк habrahabr.ru/blog/la_france/24341.html ), но, недавно, пришлось столкнуться с этим самому. Старое решение мне не понравилось количеством javascript, решил попробовать реализовать, по возможности, с минимальным JS. Пара просмотренных воркэраундов не подошла, так как задать размер в пикселях для input file мне не удалось (если это вообще реально), а даже при фиксированном шрифте в разных браузерах «пиксели», почему-то, «разные» получились. Особенно ИЕ удивил, уместив в DIV размером 400px два дива размером по 200 и еще половину третьего.

в итоге получилось примерно такое решение:



Итого, мое доработанное, может кому пригодится.

продолжение дальше

data URI

Время на прочтение2 мин
Количество просмотров8K
Пару лет назад я занимался проблемой data URL в Internet Explorer, добился определённых результатов, но то, что получилось, использовать было невозможно. Data URL (иногда его ещё называют «протокол data:») — возможность вставлять ресурсы (графику, CSS, JavaScript и так далее) в HTML код.


Подробнее о data URL можно узнать из свежей статьи на «Хабре» «Картинки в теле страницы с помощью data:URL». Хотелось только её дополнить двумя замечаниями: IE8b1 поддерживает data URL длиной не более 32Кб, в современных версиях других браузеров ограничений увидеть не удалось, Safari/Opera/FF показали изображения размером около 700Кб.


Теперь амбула.


Вчера ночью мне пришла в голову идея как можно попытаться корректно совместить data URL и включение картинок через протокол mhtml. То, что у меня не получилось два года назад, получилось сейчас.


Результат — готовый код на PHP из двух функций. Первую функцию («bolk_data_uri_header») нужно вызвать в самом начале перед выводом любого вашего кода, вторую («bolk_data_uri») собственно для включения картинки в код.


Надеюсь на примерах всё понятно:
bolk_data_uri_header();
bolk_data_uri('myjpeg.jpg');
bolk_data_uri('ourpng.png', 'border: 2px dotted red');


Код самой библиотеки:
function bolk_data_uri_header() 
{ 
    echo "<!--\n" 
        ."Content-Type: multipart/related; boundary=\"=_NextPart_01C6A9B1.539AB070\"\n\n" 
        ."--=_NextPart_01C6A9B1.539AB070\n" 
        ."Content-Transfer-Encoding: base64\n" 
        ."Content-Type: text/html\n" 
        ."-->\n\n"; 

} 

function bolk_data_uri($file, $style = '') 
{ 
    if (!( file_exists($file) && ($data = @getimagesize($file)) )) return false; 

    $name = uniqid('', true); 

    if ($style <> '') $style = ' style="'.htmlspecialchars($style).'"'; 
    $mime = strpos($_SERVER['HTTP_USER_AGENT'], 'Gecko') ? " type='{$data['mime']}" : '';

    echo "<!--\n" 
        ."--=_NextPart_01C6A9B1.539AB070\n" 
        ."Content-Location: {$name}\n" 
        ."Content-Transfer-Encoding: base64\n" 
        ."Content-Type: {$data['mime']}; -->\n" 
        ."<object data='data:{$data['mime']};base64,\n\n"; 

    echo base64_encode(file_get_contents($file)); 

    echo "' {$data[3]}{$style}{$mime}'><img " 
        ."src='mhtml:http://{$_SERVER['HTTP_HOST']}"
        ."{$_SERVER['REQUEST_URI']}!{$name}' {$data[3]}{$style} /></object>\n\n" 
        ."<!--\n" 
        ."--=_NextPart_01C6A9B1.539AB070-->"; 

    return true; 
}



Секрет в совмещении данных, чтобы IE, обратившись к странице по протоколу mhtml нашёл нужный кусор, «спрятанный» внутри тега, а остальные браузеры увидели бы картинку через data URL.


Код тестировался под Opera 9.50b, FF 2.0.0.13, Safari 3.1 и IE6. Предложения и результаты испытаний — прошу в комментарии.


Оригинал записи опубликован в моём блоге.

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