JavaScript → ISO 8601 и ECMAScript — головная боль от разночтения стандартов
Разрабатываем мы тут некоторый сервис интеграции с очень сторонней системой. Сам сервис работает на Node.js. И всё бы хорошо, но только недоступность сервера во время сборки мусора очень нервировала стороннюю систему.
В канун нового года было решено сделать серверу подарок — обновить Node.js с версии 0.4.8 до 0.6.6 В силу ряда организационных причин, обсуждать которые здесь не очень хочется, обновление было проведено сразу на боевой системе и даже без регрессионного тестирования.
Неужели в этой ситуации что-то могло пойти не так?
В канун нового года было решено сделать серверу подарок — обновить Node.js с версии 0.4.8 до 0.6.6 В силу ряда организационных причин, обсуждать которые здесь не очень хочется, обновление было проведено сразу на боевой системе и даже без регрессионного тестирования.
Неужели в этой ситуации что-то могло пойти не так?
Веб-разработка → Разработчики IE высказались против Google Dart
Прошло полтора месяца с момента официальной презентации нового языка программирования Google Dart, который позволит создавать быстрые и высокопроизводительные веб-приложения. Он также позиционируется в качестве замены/альтернативы JavaScript, якобы страдающего от «фундаментальных изъянов».
Для развития Google Dart очень важно, чтобы во все браузеры была встроена поддержка трансляции из Dart в JavaScript, а в будущем Dart был реализован в браузере как основной нативный клиентский язык. Понятно, что с Chrome проблем не будет. Но вот разработчики других браузеров пока не спешат поддержать революционную инициативу Google, а группа разработки Internet Explorer высказалась категорически против нового языка программирования. По их мнению, JavaScript вполне может эволюционировать для создания больших масштабируемых веб-приложений.
Для развития Google Dart очень важно, чтобы во все браузеры была встроена поддержка трансляции из Dart в JavaScript, а в будущем Dart был реализован в браузере как основной нативный клиентский язык. Понятно, что с Chrome проблем не будет. Но вот разработчики других браузеров пока не спешат поддержать революционную инициативу Google, а группа разработки Internet Explorer высказалась категорически против нового языка программирования. По их мнению, JavaScript вполне может эволюционировать для создания больших масштабируемых веб-приложений.
Блог компании Microsoft → Прототипы новых расширений стандарта JavaScript
Современные тенденции таковы, что платформа HTML5 становится все более функциональной, веб-приложения становятся все более богатыми и сценарии, которые требуют взаимодействие с серверной стороной для выполнения тривиальных задач становятся все более нудными. Если мы взглянем на клиентский код, то можем заметить некоторый дефицит возможностей JavaScript.
Microsoft вовлечен в совершенствование стандарта JavaScript. Через активное участие в рабочей группе Ecma TC39 мы согласовали и отправили на утверждение готовую часть предложенных стандартов, которые предлагают расширение таких важных библиотек, как Math, Number и String и представили поддержку нового функционала Globalization. Мы рассказали о первых версиях прототипов библиотек на встрече посвященной стандарту в июле в кампусе Microsoft и рассказали про реализацию Globalization на встрече группы стандарта в кампусе Apple в Купертино на прошлой неделе. В добавок, мы выпустили эти базовые реализации для того, чтобы JavaScript-сообщество могло предоставить свои отзывы при использовании новых функций на практике.
В этом выпуске мы предлагаем следующие расширения для встроенных JavaScript-библиотек:

Для того, чтобы проиллюстрировать приведем следующий код:
Microsoft вовлечен в совершенствование стандарта JavaScript. Через активное участие в рабочей группе Ecma TC39 мы согласовали и отправили на утверждение готовую часть предложенных стандартов, которые предлагают расширение таких важных библиотек, как Math, Number и String и представили поддержку нового функционала Globalization. Мы рассказали о первых версиях прототипов библиотек на встрече посвященной стандарту в июле в кампусе Microsoft и рассказали про реализацию Globalization на встрече группы стандарта в кампусе Apple в Купертино на прошлой неделе. В добавок, мы выпустили эти базовые реализации для того, чтобы JavaScript-сообщество могло предоставить свои отзывы при использовании новых функций на практике.
Что мы предлагаем
В этом выпуске мы предлагаем следующие расширения для встроенных JavaScript-библиотек:

Для того, чтобы проиллюстрировать приведем следующий код:
Браузеры → IE10 platform preview 2

Буквально несколько минут назад на официальном сайте была выложена вторая превьюшка IE10.
А в блоге появилось подробное описание изменений и обновилась техническая информация для разработчиков на тему этого выпуска.
JavaScript → Опасности необязательных аргументов в JavaScript
Моя последняя тема про “минус ноль” вызвала много интереса. По этому сегодня я собираюсь описать ещё одну особенность JavaScript, на что меня так же вдохновил твит:
Без попытки повторить это в браузере, что вернет следующий код?
["1", "2", "3"].map(parseInt);
Персональные блоги → Изменения Jscript и DOM в IE9 preview 3

ECMAscript 5 и Jscript
Наибольшей новостью является та, что IE9pre3 имеет (почти) полную поддержку ES5. Под «полной поддержкой» подразумевается то, что уже сейчас включено большинство нового API, такого как, например, Object.create, Object.defineProperty, String.prototype.trim, Array.isArray, Date.now и много других дополнений. На сегодняшнее время IE9 поддерживает наибольшее количество методов, даже большее, чем последние версии Chrome, Safari и Firefox. Невероятно, не правда ли? :)
Internet Explorer → Internet Explorer 9: наиболее полное руководство разработчика (и не только), часть 4
что еще нового в IE9 PP3, кроме canvas и video? Огромное описание, масса картинок.
![HeaderLeft[1] HeaderLeft[1]](http://www.gotdotnet.ru/upload/blog/XaocCPS/34a/HeaderLeft_1__af7f68ac-8518-4986-b125-36cadf758c50.png)
23 июня строго по графику (период 8 недель) вышла третья тестовая сборка IE9. На Хабре уже успели написать про этот релиз и в самых общих словах обрисовать нововведения. Кроме того, тут же на Хабре успели сравнить производительность canvas в IE9 и Chrome.
Этот пост раскроет значительно больше деталей третьей тестовой версии Internet Explorer 9 и расскажет о нововведениях в браузер, которые будут важны для разработчиков.
Это четвертая статья из серии статей про нововведения в IE9 для разработчиков. Ознакомится с предыдущими частями можно здесь: часть 1 (CSS3, HTML5, DOM), часть 2 (SVG, GPU), часть третья (профили ICC, форматы изображений, Javascript).
![HeaderLeft[1] HeaderLeft[1]](http://www.gotdotnet.ru/upload/blog/XaocCPS/34a/HeaderLeft_1__af7f68ac-8518-4986-b125-36cadf758c50.png)
23 июня строго по графику (период 8 недель) вышла третья тестовая сборка IE9. На Хабре уже успели написать про этот релиз и в самых общих словах обрисовать нововведения. Кроме того, тут же на Хабре успели сравнить производительность canvas в IE9 и Chrome.
Этот пост раскроет значительно больше деталей третьей тестовой версии Internet Explorer 9 и расскажет о нововведениях в браузер, которые будут важны для разработчиков.
Это четвертая статья из серии статей про нововведения в IE9 для разработчиков. Ознакомится с предыдущими частями можно здесь: часть 1 (CSS3, HTML5, DOM), часть 2 (SVG, GPU), часть третья (профили ICC, форматы изображений, Javascript).
JavaScript → Викторина для тех, кто любит Javascript больше ECMAscript
Викторина для тех, кто любит Javascript больше ECMAscript. Главный приз: пирожок на полке.
Update: Пояснение. Для тех кто совсем не в теме. ECMAscript — это стандарт языка, на котором основаны реализации Javascript в современных браузерах. Именно этот стандарт определяет поведение программ в этой статье. Javascript является «надстройкой» над ECMAscript.
Пояснение номер 2. Глюки IE не имеют прямого отношения к викторине поскольку это ошибки (ну или «особенности») реализации стандартов.
Update: Пояснение. Для тех кто совсем не в теме. ECMAscript — это стандарт языка, на котором основаны реализации Javascript в современных браузерах. Именно этот стандарт определяет поведение программ в этой статье. Javascript является «надстройкой» над ECMAscript.
Пояснение номер 2. Глюки IE не имеют прямого отношения к викторине поскольку это ошибки (ну или «особенности») реализации стандартов.
Opera → Зачем Опере свой JS движок?
Давно было интересно: зачем Опере писать собственный интерпретатор Javascript, когда есть открытые альтернативы? SpiderMonkey, допустим, может быть проблемой из-за LGPL, но v8 — это BSD лицензия, для проприетарного ПО годится. Поинтересовался мнением людей. Говорят, самая вероятная причина — не хотят зависеть от стороннего разработчика. При этом Opera уже использует сторонний Aspell, хотя он, конечно, не является жизненно важной функцией.
Решил выяснить официальное мнение. JL ответил, что, с технической точки зрения, интеграция такого объёма чужого кода — большая работа. Поддержка всех операционных систем, на которых работает Opera, требует определённого проектирования и повышает требования к коду, и очень вероятно, что разработчики основного движка отказались бы принимать странные модификации в больших количествах, что привело бы к перманентному форку. Что возможно, но затраты сопоставимы с разработкой своего движка. Звучит разумно, хотя я и не знаю, на скольких платформах используется Carakan — кажется, мобильная Opera получает с сервера, грубо говоря, скриншоты с отмеченными ссылками, и скрипты там не работают?
Решил выяснить официальное мнение. JL ответил, что, с технической точки зрения, интеграция такого объёма чужого кода — большая работа. Поддержка всех операционных систем, на которых работает Opera, требует определённого проектирования и повышает требования к коду, и очень вероятно, что разработчики основного движка отказались бы принимать странные модификации в больших количествах, что привело бы к перманентному форку. Что возможно, но затраты сопоставимы с разработкой своего движка. Звучит разумно, хотя я и не знаю, на скольких платформах используется Carakan — кажется, мобильная Opera получает с сервера, грубо говоря, скриншоты с отмеченными ссылками, и скрипты там не работают?
Веб-разработка → Гармония ECMAscript
Создатель языка Javascript Брендан Эйч опубликовал в рассылке интересное письмо о будущем спецификации ECMAscript-262 после встречи в Осло. В обсуждении учавствовали представители Adobe, Google & MicroSoft, которые имеют собственные реализации этого стандарта (Javascript, Actionscript, Rhino, Jscript.NET).
Разработчики решили сконцентрироваться на версии 3.1 и отказаться от ряда возможностей, которые изначально предполагалось добавить в ES4: packages, namespaces & early binding. Под вопрос теперь так же поставлены классы, которые можно упростить до lambda-coding + Object.freeze.
ES 4 is dead, long live ES 3.1! AS 3 теперь сам себе хозяин.
Разработчики решили сконцентрироваться на версии 3.1 и отказаться от ряда возможностей, которые изначально предполагалось добавить в ES4: packages, namespaces & early binding. Под вопрос теперь так же поставлены классы, которые можно упростить до lambda-coding + Object.freeze.
ES 4 is dead, long live ES 3.1! AS 3 теперь сам себе хозяин.