Рубрика «javascript» - 490

Псевдо 3D: Анимация вращения планет и других шароподобных объектов

Описание небольшого трюка по анимации вращения планет или других шарообразных штуковин. На написание этой статьи меня натолкнула статья Сфера из двух треугольников (стоит почитать). А сам трюк основан на весьма простом способе создания в Photoshop псевдо-объемной картинки из плоской, который описан под катом.

микродемо

Читать полностью »

Некоторое время назад я публиковал статью «Эффект слайдов на сайте. Через грабли на собственном велосипеде»
Статья справедливо набрала множество замечаний, в основном касающихся отсутствия практической части и кодов.
Вашему вниманию переработанная статься снабженная живыми примерами.
Читать полностью »

В сети легко находится множество источников, где приводится современная статистика использования языков программирования в мире. Одним из самых известных индикаторов является TIOBE Programming Community Index. Однако все это в большинстве — общемировая статистика, а как обстоит дело в России? Отличается ли Россия от остального мира, и если да, то как?

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

  • продажи или наименования книг
  • предложения вакансий
  • проекты с открытым кодом в GitHub
  • группы и форумы

Основой для предлагаемой читателям оценки являются темы на сайтах вопросов и ответов по программированию универсальной направленности (независимо от языка или платформы) в мире и в России, а именно StackOverflow.com и HashCode.ru. Почему взяты именно эти сайты?

Stackoverflow.com — это оригинальный сайт, где на высоком профессиональном уровне спрашиваются и отвечаются вопросы, связанные с разработкой программного обеспечения. Сайт содержит более 2 миллионов вопросов, из них 81% отвечено (согласно критериям принятым на сайте).

HashCode.ru — это наиболее успешная попытка в России из известных автору (самый популярный сайт подобного рода) перенести оригинальную идею на местную почву: сайт содержит порядка 30 тысяч вопросов, из них 80% отвечено. На форуме общаются более 12 тысяч профессиональных программистов.

Популярность языка программирования будет оцениваться по количеству вопросов, отмеченных ярлыком, соответствующим какому-либо языку.

  1. Считается общее количество вопросов
  2. Считается количество вопросов по метке
  3. Считается удельный вес (доля) вопросов по ярлыку на сайте
  4. Языки ранжируются в соответствии с удельным весом на сайте

Полученная оценка будет отражать популярность языка программирования, в случае StackOverflow — в мире, в случае ХэшКода — в России. Эта оценка будет достаточно грубой, поскольку заранее неизвестно насколько статистически представительна взятая выборка (так же как трудно оценить результаты голосования в целом по стране, зная результаты выборов в отдельном поселке).
Читать полностью »

Здравствуйте.

Хочу поделиться с вами одной техникой организации кода при массивной работе с DOM-элементами. Несколько лет назад, когда еще вовсе не было бэкбона и MVVC, мы писали старый добрый джаваскрипт без фреймворков: создавали объекты и заставляли их плясать на странице в общем танце. Такая практика, без сомнения, до сих пор оправдывает себя, и техника, о которой пойдет речь, применима именно к ней.

Мой рассказ — о маленькой библиотечке PageObject.js (текущая версия v0.14, 2.6K) и о том, как с ее помощью можно упростить себе жизнь.
Читать полностью »

MaskJS — как HMV* фреймворк
Разрабатывая MaskJS вот уже больше полугода, он превратился из DOM шаблонизатора в очень мощный, но при этом производительный веб фреймворк. В статье познакомлю вас с возможно интересными подходами к разработки. Уверен, будет интересно почитать о использовании сигналов и слотов вместо DOM событий. И как компоненты делают нашу жизнь проще. Маска легко интегрируется в уже готовый проект, и даже может быть использована вместе с любым другим фреймворком. Основным же отличием наверное является render flow, где в процессе поэтапно создается Document Fragment / контроллеры / «биндинги». Собственно всю гибкость даже сложно передать, но я попробую, и приглашаю под кат.
Читать полностью »

Ремонтируем онлайн банкинг
На днях у меня перестал работать онлайн-банкинг моего банка. Нет, не то чтобы совсем перестал — вроде бы можно зайти и даже кое-что сделать, но вот одна из самых важных вещей (просмотр архива платежей) — просто намертво отказалась работать (а как раз было очень нужно). Выглядит это так: при открытии страницы со списком платежей браузер съедает всю доступную оперативную память и падает. В Chrome падает только текущая вкладка, а вот Firefox и IE умирают совсем. Баг воспроизводится на трёх разных PC, айпаде, в Safari под Mac OS и в Firefox под Linux. Ну это я просто так рассказываю, для того чтобы показать наивность советов техподдержки «поставить антивирус» и «перезагрузиться и зайти ещё раз». Давайте подумаем — можем ли мы что-нибудь в этой ситуации сделать?
Читать полностью »

Около двенадцати часов назад Джон Резиг нащебетал в Твиттер, что на конференции Google I/O было объявлено о поддержке Asm.js в движке V8 и во браузере Google Chrome.

Так как про Asm.js упоминали на Хабрахабре (1, 2), то достоинства его могли стать известны многим читателям. Тем приятнее им предвкушать теперь в самом скором времени появление этих достоинств не только во браузере Firefox (где они впервые были внедрены Фондом Мозиллы), но и в движке V8 (а значит — в построенном на его основе движке Node.js!), и во браузере Google Chrome.

Но для тех читателей, которые до сих пор пропускали эту новинку мимо себя, я также вкратце напомню суть. Asm.js — это особое подмножество языка JavaScript: ограничившись им в своём скрипте, автор скрипта обеспечивает возможность оптимизации интерпретируемого кода не только в момент исполнения (just-in-time, JIT), но даже и заблаговременно (ahead-of-time, AOT), то есть такому джаваскрипту становится возможно один раз однозначно заранее поставить в соответствие некоторый машинный код. Эффект этот достигается ценою заметных усилий по самоограничению. (В частности, при помощи операции «|0» и других специальных приёмов тип значения каждого входного параментра функции, равно как и выходного значения, оказывается однозначно заданным и неизменным.) Зато его итогом становится небывалый рост скорости исполнения джаваскрипта — теперь по скорости он уступает скомпилированной программе (на Си или Си++) не более чем в два раза.

Читать полностью »

Директивы в Angularjs для начинающих. Часть 1На мой взгляд, директивы являются основной изюминкой декларативного стиля Angularjs. Однако, если открыть комментарии пользователей в разделе официальной документации Angularjs, посвященной директивам, то вы увидите, что самый популярный из них: «Пожалуйста, перепишите документацию, сделайте ее более доступной и структурированной. Начинающему разработчику на Angularjs сложно в ней разобраться» («Please rewrite a clearer well structured documentation of directives., this is not friendly to first time angular developers»). С этим сложно не согласится, документация пока еще сыровата и в некоторых моментах приходится прилагать большие усилия, чтобы разобраться в логике и сути функционала. Поэтому я предлагаю вам свой вольный пересказ данной главы в надежде, что кому-то это позволит сэкономить время, а так же рассчитываю на вашу поддержку и участие в комментариях. Итак, поехали!
Читать полностью »

Перевод статьи от Реми Шарп (Remy Sharp)
Для любителей пролистывать в самый конец — уже накрыто.

Я завёл этот разговор: "Я знаю jQuery. Что теперь?" на jQuery UK 2013, но вместо моего обычного подхода пост-IT взрыва на моем столе, я написал сначала пост и создал по нему слайды. Так вот, мои (довольно неотредактированные) квази-прогулки о том, как я использовал jQuery и как я смотрю на то, где я использую нативные технологии браузера.
I know jQuery. Now what?
Читать полностью »

Мы в Dream Industries в этом году хостим одну из встреч Google I/O Extended 15 мая с 17:30 до 0:30 у себя в офисе в здании Центрального Телеграфа по адресу Тверская 7.

В программе:
— трансляция основных выступлений и событий с Google I/O в Сан-Франциско;
— презентация ключевых проектов DI — Bookmate; Zvooq;
— приятное общение и здоровый, легкий ужин;

Вход бесплатный, по предварительной регистрации.
Пожалуйста, регистрируйтесь до 15 мая 2013 12:00 MSK, особенно, если вы Android или Javascript разработчик :)

До встречи!

Читать полностью »


https://ajax.googleapis.com/ajax/libs/jquery/3.4.1/jquery.min.js