Статьи

Главные разработчики: Джон Резиг

Он принес нам jQuery , наиболее широко используемую библиотеку JavaScript на планете. Затем он принес нам Processing.js , порт JavaScript популярного языка программирования визуализации данных. Теперь Джон Резиг выполняет миссию по обновлению способа обучения программированию в качестве декана факультета компьютерных наук Академии Хана . Этот человек никогда не перестаёт (он вообще спит?) Отдавать деньги сообществу, и после того, как какое-то время был вне поля зрения общественности, я догнал его, чтобы узнать, чем он занимается.


Вокруг 🙂 Но если серьезно, я решил больше времени уделять разработке приложений и серверной части — на что я не тратил много времени, работая над jQuery полный рабочий день.


Я тратил меньше времени на ежедневное исправление ошибок в jQuery и хотел убедиться, что проект окажется в хороших руках, так как я начал работать над другими вещами. Они проделали отличную работу по поддержанию библиотеки в отличной форме. Это в хороших руках!


Ханская академия

Я работал над несколькими различными проектами. Я создал фреймворк, который мы используем для построения упражнений (доступно на Github https://github.com/khan/khan-exercises ), помог создать iPad-приложение Khan Academy , создал платформу Computer Science и сейчас работаю над интернационализацией сайт, делая его доступным на многих языках людям во всем мире.


Я решил больше времени уделять разработке приложений и серверной части.

Я действительно взволнован работой, которую мы делаем в Академии Хана. Мы работали над тем, чтобы научить основам программирования тех, кто никогда раньше не программировал. Кроме того, мы находим способы интеграции образования в области компьютерных наук с нашей существующей учебной программой по математике и естественным наукам, связывая все воедино.

Это имеет большой смысл и обеспечивает целостный способ обучения, которого нет у других программных платформ. Например, понимание алгебры — это важная предпосылка для понимания переменных. Понимание тригонометрии важно для графической работы. Объединение всего этого вместе имеет большой смысл. По крайней мере, сейчас мы в первую очередь ориентируемся на нашу существующую аудиторию K-12. На сегодняшний день у нас было около 2,9 млн пользователей платформы с момента ее запуска в августе 2012 года.


Я действительно взволнован работой, которую мы делаем в Академии Хана.

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


Мы используем JavaScript и Processing.js и среду программирования в реальном времени, чтобы дать студентам простой способ начать работу и взаимодействовать с кодом. Недавно мы нашли способы заставить студентов сотрудничать в работе друг друга. Когда мы начинали, мы включали возможность для студентов «разветвлять» код друг друга. Мы добавили некоторые способы, чтобы сделать эти вилки легко обнаруживаемыми, что привело к тому, что многие студенты строили друг друга на работе. Это интересно видеть это в прогрессе!


Я работал над i18n для двух проектов: один — побочный, а другой — сайт Академии Хана. Это было довольно сложно; у нас есть большой сайт со множеством оригинального контента, который нужно перевести. Организовать все движущиеся части и придать им видимость порядка, определенно довольно сложно. К счастью, есть много инструментов, которые уже помогают с этим (например, мы используем библиотеку Jed.js, чтобы выполнить некоторую работу по мультипликации на стороне клиента).


Довольно круто! Это так здорово видеть, как многие люди получают выгоду от его использования. Удивительно, что даже с новыми браузерами и API-интерфейсами у нас все еще нет абсолютно бесполезного опыта кросс-браузерной разработки. Все ближе, и jQuery в этом абсолютно помогает, но я с нетерпением жду того дня, когда у нас будет действительно унифицированный, простой в использовании API-интерфейс для разработки.


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

Особенно хитрая проблема заключается в том, что поскольку использование jQuery настолько распространено повсеместно, это означает, что почти все используют его каким-либо образом, включая людей, которые вообще не знают, как программировать, и просто копируют и вставляют код вместе, не заботясь о том, как он работает. Лучший способ борьбы с этим — попытаться предоставить лучшие учебные материалы для тех, кто хочет стать лучшими программистами, например, новый учебный центр jQuery.


О, конечно, API селекторов (API селекторов — это то, что дает нам querySelectorAll и позволяет нам запрашивать узлы DOM с помощью селекторов CSS). Забавно, что тот факт, что jQuery популяризировал использование CSS-селекторов для поиска узлов DOM, побудил начать его стандартизацию. Это ситуация с курицей и яйцом 🙂


Как человек, который пишет много JavaScript, я проводил больше времени с Node.js и PhantomJS. Эти среды дают вам возможность писать JavaScript на стороне сервера и выполнять всевозможные сценарии и разработку приложений. Очень интересно иметь возможность писать JavaScript и работать с ним как на клиенте, так и на сервере (например, возможность делиться логикой для игры клиент-сервер).


Мы видели некоторые замечательные результаты в школах, которые используют Академию Хана как часть своей учебной программы.

Я думаю, что самая большая вещь, которая случится с браузерами за последние несколько лет, — это переход к быстрому циклу выпуска, отстаиваемому командой Chrome, а затем — командой Firefox. Релизы, которые выходят каждые три месяца, а не каждый год (или раз в два года), полностью изменяют способ представления и использования новых функций разработчиками. Любой браузер, который хочет оставаться конкурентоспособным, должен идти в ногу с этим головокружительным графиком разработки; иначе они наверняка отстанут.


Увеличение доступа к большему количеству людей (и с хорошим браузером!) — это действительно победа для всех. Мы не нацеливались на это явно в Академии Хана, но есть замечательный проект под названием KA Lite, который пытается это осуществить.


Я все еще думаю, что это возможно, но трудно сказать, какую пользу принесло бы это. Если код уже был предварительно скомпилирован в байт-код и просто ожидал в памяти, то я бы предположил, что будут некоторые хорошие ускорения. При этом я держу пари, что ускорения будут меньше, чем те, которые обеспечены улучшением производительности DOM в целом.


Тайны JS ниндзя

Это конечно было путешествие! Я написал большую часть контента за 2008-2010 годы, и мой соавтор, Bear Bibeault, работал над ним в течение 2011-2012 годов. Я думаю, что это все еще исключительно актуально для современного развития.

Первая половина книги охватывает лучшие практики и некоторые хитрые аспекты современной разработки JavaScript. Вторая половина посвящена DOM и всему, что вам нужно знать для написания кросс-браузерного кода. Эти две темы по-прежнему являются неотъемлемой частью разработки JavaScript сегодня и должны помочь всем, от среднего до продвинутого разработчика.


Возможно нет! По крайней мере, не традиционная печатная книга. Я стремлюсь больше вести блог и писать статьи. Если я когда-нибудь напишу еще одну книгу, она обязательно будет опубликована самостоятельно и, скорее всего, только в виде книги.


Я люблю Нью-Йорк. Я встречался с широким кругом разработчиков здесь, и я был удивлен тем, насколько сильное сообщество здесь с множеством встреч, лекций, взломов и других событий. Хотя я пробыл здесь совсем недолго, создается впечатление, что это сообщество только укрепляется.


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

Конечно, вещь! Я трачу больше времени на изучение искусства, и меня увлекла одна особенность искусства: японская печать на ксилографии. Это была форма искусства в Японии, которая была популяризирована с начала 1700-х до конца 1800-х годов (и продолжается до настоящего времени, хотя и как ниша).

На гравюрах изображен невероятный мир самураев, чернокнижников, богов, красавиц и природы. Они очень яркие и выглядят на удивление современно. Я использовал свои навыки программирования и разработал инструмент для исследователей, который объединяет отпечатки из ряда музеев по всему миру и делает их доступными для поиска по изображениям: http://ukiyo-e.org/ Я получаю очень положительный ответ от ряда ученых, который был наиболее полезным.