Вслед за изобретением распределенных методов аутентификации, таких как OpenID сообщество закономерно озаботилось также и возможностью этих пользователей связывать разные свои ипостаси воедино, со всеми причитающимися хвостами типа списка френдов. Идея уже давно летает в воздухе, и даже реализована много раз, правда пока не в глобальных масштабах, а в рамках отдельных сервисов. Теперь сообщество, точнее было бы сказать "Те Же Лица", дошло до того чтобы собрать все эти наработки и выкатить стандарт.
среда, 26 сентября 2007 г.
среда, 29 августа 2007 г.
javascript.options.strict в Firefox
Дин Эдвардс написал о странных тормозах у некоторых пользователей, открывающих его сайт в Firefox, что лечилось отключением Firebug.
Причина была в установке опции
Если эта опция включена, Firefox кроме серьезных ошибок в скриптах будет сообщать о возможных ошибках. Если при этом в консоли Firebug включена опция Show JavaScript Warnings, то эти сообщения вываливаются в консоль, что и порождает описанные тормоза.
Но речь не о тормозах, как вы понимаете. Эти возможные ошибки, как показывает практика, часто не просто возможны, а просто наиболее вероятны, типа присваивания значения неопределенной переменной (забыли
В-общем, отключайте эти опции если вы просто ходите по вебу, но обязательно включайте их при тестировании собственных скриптов. Можете увидеть много интересного.
Причина была в установке опции
javascript.options.strict
в конфигурации Firefox (about:config).Если эта опция включена, Firefox кроме серьезных ошибок в скриптах будет сообщать о возможных ошибках. Если при этом в консоли Firebug включена опция Show JavaScript Warnings, то эти сообщения вываливаются в консоль, что и порождает описанные тормоза.
Но речь не о тормозах, как вы понимаете. Эти возможные ошибки, как показывает практика, часто не просто возможны, а просто наиболее вероятны, типа присваивания значения неопределенной переменной (забыли
var
), что порождает как засорение глобальной области видимости, так и непредусмотренные побочные эффекты, или переопределения аргумента внутри функции (перестарались с var
), или путаницы =
и ==
при сравнении.В-общем, отключайте эти опции если вы просто ходите по вебу, но обязательно включайте их при тестировании собственных скриптов. Можете увидеть много интересного.
пятница, 11 мая 2007 г.
Итерирование по свойствам объекта в JavaScript.
Любой объект в JavaScript может быть расширен в рантайме. Более того, прототип (свойство
prototype
) любого объекта может быть также расширен, что влечет за собой изменение свойств всех объектов, унаследованных от измененного. Все добавленные в объект либо в прототип объекта-предка свойства и методы будут видны при использовании for (name in obj) {...}
.четверг, 3 мая 2007 г.
JSON validation: the Schema By Example.
[lang_en]Есть по-русски
There are a lot of JSON data currently around, and virtually no standard means to validate it against a schema, the way everybody accustomed to in the XML world.
A fair number of proposals for a schema language occurred recently, and I'm going to add my 5 cents. The idea is that the schema should be expressed as JSON (no need to invent languages), and represent an example of a valid data structure of the data to be validated against. I call this "Schema By Example".[/lang_en]
[lang_ru]English version available
Формат JSON стал очень популярен в сфере обмена данными, но до сих пор пока не существует стандартных механизмов валидации, таких как схема, к каким люди уже давно привыкли, если имеют дело с XML.
Немало хороших предложений языка схемы для валидации JSON возникло в последнее время, и я хочу добавить к ним еще кое-что от себя. Моя идея в том, что схема должна быть описана в том же формате JSON (нет нужды изобретать новые языки), и представлять собой пример правильной структуры данных. По этому примеру и следует проверять действительность полученных данных. Назовем это "Схема по примеру".[/lang_ru]
There are a lot of JSON data currently around, and virtually no standard means to validate it against a schema, the way everybody accustomed to in the XML world.
A fair number of proposals for a schema language occurred recently, and I'm going to add my 5 cents. The idea is that the schema should be expressed as JSON (no need to invent languages), and represent an example of a valid data structure of the data to be validated against. I call this "Schema By Example".[/lang_en]
[lang_ru]English version available
Формат JSON стал очень популярен в сфере обмена данными, но до сих пор пока не существует стандартных механизмов валидации, таких как схема, к каким люди уже давно привыкли, если имеют дело с XML.
Немало хороших предложений языка схемы для валидации JSON возникло в последнее время, и я хочу добавить к ним еще кое-что от себя. Моя идея в том, что схема должна быть описана в том же формате JSON (нет нужды изобретать новые языки), и представлять собой пример правильной структуры данных. По этому примеру и следует проверять действительность полученных данных. Назовем это "Схема по примеру".[/lang_ru]
вторник, 24 апреля 2007 г.
Интерфейс Python для Flickr API.
Некоторое время назад нужно было использовать Flickr API. Конечно, есть и готовые Python API для Flickr, но тут сработал синдром NIH и захотелось чего-то своего, понятного и простого. Публикую как иллюстрацию развития идеи от простого к усложнению, но не слишком сложному :) Опять же, как у меня часто получается, тут скорее не про Flickr, а про Python.
вторник, 17 апреля 2007 г.
Удаленная отладка приложений на Python в Eclipse с Pydev Extensions
Тем кто до сих пор не определился с тем, какой IDE для Python лучше всех, скажу, что лучший IDE — это Eclipse с плагином Pydev. Функции и вкусности перечислять не буду, скажу только что всё чего вам скорее всего захочется, в нем есть, и можно органично использовать все остальные прелести Eclipse, например интеграцию с системой контроля версий. Можете со мной спорить, но это мой блог, что хочу то и пишу :)
К базовому бесплатному Pydev также существует расширение Pydev Extensions, которое, кроме того что все-таки уже стоит денег — $42,5, на которые финансируется разработка "бесплатного" Pydev — хотя, по правде говоря, позволяет работать и бесплатно, только настойчиво напоминая о том, что хочет денег. Pydev Extensions дополняет базовый пакет некоторыми приятными возможностями, среди которых — возможность удаленной отладки. Под удаленной я имею в виду отладку во внешнем по отношению к Eclipse процессе. Он может работать как на той же машине, на которой работает Eclipse, так и на удаленной, "разговаривая" с Eclipse по TCP/IP. Простая отладка возможна и без использования Pydev Extensions.
К базовому бесплатному Pydev также существует расширение Pydev Extensions, которое, кроме того что все-таки уже стоит денег — $42,5, на которые финансируется разработка "бесплатного" Pydev — хотя, по правде говоря, позволяет работать и бесплатно, только настойчиво напоминая о том, что хочет денег. Pydev Extensions дополняет базовый пакет некоторыми приятными возможностями, среди которых — возможность удаленной отладки. Под удаленной я имею в виду отладку во внешнем по отношению к Eclipse процессе. Он может работать как на той же машине, на которой работает Eclipse, так и на удаленной, "разговаривая" с Eclipse по TCP/IP. Простая отладка возможна и без использования Pydev Extensions.
пятница, 23 марта 2007 г.
ctypes: использование произвольных функций из библиотек на C из Python
Часто бывает, что хочется использовать функции из библиотеки на C, но для нее не написан модуль-обертка для Python, либо по какой-то причине нам не хочется использовать то что написано. Что ж, выход есть. Модуль
ctypes
(который включен в стандартную библиотеку Python начиная с версии 2.5, а до этого доступен в качестве стороннего модуля) позволяет нам вызывать практически что угодно откуда угодно.понедельник, 22 января 2007 г.
OpenID & phishing, продолжение
Идею, описанную во вчерашнем посте, подхватил Дмитрий Шехтман.
Он значительно упростил ее, также добавив некоторые аспекты, о которых я до этого не подумал. Разберу его замечания, и добавлю кое-что от себя.
Он значительно упростил ее, также добавив некоторые аспекты, о которых я до этого не подумал. Разберу его замечания, и добавлю кое-что от себя.
воскресенье, 21 января 2007 г.
OpenID & phishing
Если вы не в курсе, спецификация OpenID версии 2.0 уже в финальной стадии. Учитывая усиливающийся buzz, касающийся OpenID, мы скоро увидим очень много мест, где эту валюту принимают (я сам тоже собираюсь приложить к этому руку :).
Если вы не в курсе о чем речь, то дальнейшее будет довольно сложно понять :)
Если вы не в курсе о чем речь, то дальнейшее будет довольно сложно понять :)
Подписаться на:
Сообщения (Atom)