Javascript-форум (https://javascript.ru/forum/)
-   Сайт Javascript.ru (https://javascript.ru/forum/site/)
-   -   Новый учебник javascript (https://javascript.ru/forum/site/14158-novyjj-uchebnik-javascript.html)

Илья Кантор 03.01.2011 17:57

Новый учебник javascript
 
Новый учебник javascript доступен (пока на английском) на сайте http://javascript.info

Процесс написания продолжается.

Очень нужна вычитка (с начала).

monolithed 03.01.2011 20:05

1. affiliated правильно.

2. в Function arguments у анкоров некорректные пути.
нужно: http://javascript.info/tutorial/esse...rray-arguments

3. в http://javascript.info/tutorial/esse...rray-arguments
подправить в коде примера: alert(args[0]);

4. после нажатия перейти на площадку "Switch to edit mode" (рядом с run) в низу страницы появляется форма с запускаемым кодом


PS: с белым фоном читается лучше.

Илья Кантор 03.01.2011 20:50

1,2,3 понял, спасибо!

4. Можно подробнее?

PS. Ты это в плане, что белый фон на сайте это гуд? Лучше чем на javascript.ru?

monolithed 03.01.2011 21:12

Вложений: 1
Цитата:

Сообщение от Илья Кантор
4. Можно подробнее?

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

Цитата:

Сообщение от Илья Кантор
. Ты это в плане, что белый фон на сайте это гуд? Лучше чем на javascript.ru?

ага, на светлом фоне как-то информация лучше воспринимается (например, как на http://dmitrysoshnikov.com/ легко читать).

monolithed 03.01.2011 21:28

тут (ну и во всех подобных разделах) мне кажется блок с комментариями не уместен

Илья Кантор 03.01.2011 22:08

Спасибо, все исправил. Еще? :)

monolithed 03.01.2011 22:22

в пример возможно стоит добавить строки (чтобы во время перемещения объекта не выделять текст)?:

<script type="text/javascript">
document.onmousemove = function(){   
    document.selection && document.selection.empty ? document.selection.empty() : 
    (function(){
        if(window.getSelection) { 
            var select = window.getSelection();
            if(select && select.removeAllRanges) select.removeAllRanges();
        }
     }());
};
</script>
try to select me!


в Mouse events возможно стоит добавить материал про DOM Level 3 Events: mouseenter, mouseleave, mousewheel

Dmitry A. Soshnikov 04.01.2011 00:52

Хорошее дело, молодец, Илья!

P.S.: хорошо также указывать источники литературы, из которых ты черпаешь знания для написания своих статей ;)

Илья Кантор 04.01.2011 00:59

monolithed: они там есть. добавлю в заголовки.

Дмитрий - а если конкретнее? Что и где мне следовало бы указать?

К большинству статей я даже не представляю, какие источники бы приписать. Специально искать их в интернете пока руки не доходят. Буду рад дополнениям.

Dmitry A. Soshnikov 04.01.2011 01:03

Ну, это уж ты, я уверен, сам способен решить. Что ты используешь, что тебе помогло самому в изучении и в объяснении -- то ты и указываешь.

Dmitry A. Soshnikov 04.01.2011 01:13

По поводу "See also". К статье про "The scope and closures" я рекомендую добавить ссылки на "Chapter 3.1 Lexical Environments" (и на дальнейший Chapter 3.2). Просто я вижу, что это статья свежая (во всяком случае, переработанная под ES5). Если ты её писал после прочтения 3.1, тогда 3.1. -- в список использованной литературы. Если до (или вообще не читал), тогда будет хорошим дополнением для более детального изучения. Также можно добавить на "Chapter 6. Closures" (ES3).

Dmitry A. Soshnikov 04.01.2011 01:15

Ну и, конечно, ссылки на разделы первоисточника (спецификация) тоже полезны. В любом случае, уж оттуда-то мы точно черпаем информацию. К тому же, сейчас есть несколько хороших онлайн версий ES5.

Илья Кантор 04.01.2011 01:22

Про Closures - там для понимания необходимо прочитать не один-два раздела, а где-то разделов 5 (не полностью, а нужные фрагменты достаточно), от базы (что такое Lexical Environment, Variable Environment и почему они блин разные хотя одинаковые) и выше.

Так что, видимо, весь стандарт указать надо.. :)

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

Dmitry A. Soshnikov 04.01.2011 01:29

Цитата:

Сообщение от Илья Кантор
Так что ... укажу

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

Посмотри, каждая моя статья заканчивается разделом "Additional literature". Большинство буржуйских ресурсов -- тоже (только они называют "Further reading"). Это не указ, конечно, как тебе строить свои статьи, но "just a useful recommendation" ;)

Цитата:

Сообщение от Илья Кантор
и почему они блин разные хотя одинаковые

Их разница появляется при работе с различными видами функций (FE, FD).

Илья Кантор 04.01.2011 01:42

Все мои знания о разработке почерпнуты из разных источников. Это, конечно же, верно. Форумы, обсуждения, общение, проекты..
С другой стороны, статьи я преимущественно пишу "с чистого листа", без источников, и без цитат из них. Как и все мы, я не очень-то помню, откуда я что узнал, хотя благодарен всем людям, которые расположили полезный контент в сети.

В этом смысле, пожалуйста, об общей этике не надо, я ее соблюдаю. Материалы авторские (во всяком случае, пока). За конкретные рекомендации буду признателен.

Dmitry A. Soshnikov 04.01.2011 01:53

Цитата:

Сообщение от Илья Кантор
без цитат из них

Цитаты не при чем в общем случае.

Цитата:

Сообщение от Илья Кантор
За конкретные рекомендации буду признателен

Да, я уже отметил выше. Ну и, опять же, это уже ты сам решаешь (субъективно/объективно), что относить к списку, а что нет.

Успехов; дело благородное!

Илья Кантор 04.01.2011 01:55

Да ну, наговорил тут всего, к этике призвал, успехов пожелал, но ни к чему конкретно в плане материалов не придрался! ;(

monolithed 05.01.2011 14:07

Дмитрий, поправьте меня если я не прав, но в компьютерной литературе не принято писать список литературы (если знания получены эмерическим путем или чтения спецификации).
По крайней мере из более 30 книг, что у меня стоят на полке по тематике JS, .NET, PHP, SQL и С++, только в одной 'мной забытой))' книге по UML есть список литературы.
По всей видимости ни авторы ни издательства не решаются приводить СЛ из двух строчек.


PS: Моя бабушка, доктор наук, профессор, долго не верила, что такое может быть пока сама не увидила, аргументируя, что читатели не воспримут в серьез такую литературу. Их, учили что нужен список литературы, причем не важно читал ли ты хоть что-то из того что указано.

Илья Кантор 05.01.2011 16:24

Вообще, линки это гуд.

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

monolithed 05.01.2011 16:57

Цитата:

Сообщение от Илья Кантор
Вообще, линки это гуд.

Согласен, ведь действительно очень удобно читать статью когда можно углубиться в материал (особенно это в википедии прослеживатся, когда начинаешь читать какое-то маленькое описание предмена, а заканчиваешь чтением полноценной книги :)) и у Дмитрия это тоже отлично сделано (не возможно что-то упустить).

Просто мне интересно почему издательства не спрашивают авторов про источники их знаний и не настаивают на включении даже хотя бы ссылок на разделы спецификации. Быть может они это компенсируют сносками на полноценные книги по той или иной тематике (если такие есть ;))

Dmitry A. Soshnikov 05.01.2011 21:53

Цитата:

Сообщение от monolithed
но в компьютерной литературе не принято писать список литературы

Я не знаю всех публицистических тонкостей (возможно, это зависит от издательства ещё).

Цитата:

Сообщение от monolithed
если знания получены эмерическим путем или чтения спецификации

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

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

Мне самому приятно указать, что здесь и здесь вы можете прочитать что-то дополнительно, и что здесь и здесь я сам прочитал это, разобрался, понял и вам рассказал.

Тут всё зависит от целей, которые ты преследуешь. Моя цель -- образовательная. Еще раз повторю, я считаю своим долгом указать либо людей которые мне помогли разобраться (привет, Zeroglif), либо источники информации.

Опять же, если в дополнение к образовательной цели, препод еще и монетизирует знания (в чем нет ничего плохого, естественно, а даже наоборот), то это должно делаться в обязательном порядке. Но, опять же, это по моему мнению. Иначе -- "спецификация сложная, читать её не хочу, вон, Сошников попонятней и подробней расписал, прочитаю его, напишу похожую статью (а потом, почему нет, буду продавать эти знания на курсах), но при этом не сошлюсь. Зачем? У меня же техническая литература; там не принято". Это не конкретно, а в общем -- в ответ на "не принято". Кстати сказать, буржуи все ссылаются.

Вот я и хотел спросить Илью, читал ли он мою статью 3.1. про Lexical Environments (либо 2. Variable Object + 4. Scope chain + 6. Closures) до того, как написал/переработал свою статью? Я прочел её и вижу схожее построение, описания, сокращения и т.д. И если да, справедливо ли сослаться на дополнительную/использованную литературу? Если же не читал, то я предложил её в качестве дополнения.

Цитата:

Сообщение от Илья Кантор
ни к чему конкретно в плане материалов не придрался!

Вероятно ты меня с кем-то спутал (про "придрался").

Цитата:

Сообщение от Илья Кантор
Поставить хорошие ссылки для дальнейшего чтения, сослаться на источники информации - это дополняет статью.

Да, именно это я и имел в виду.

Илья Кантор 06.01.2011 11:35

По статье твоей понял. Не знал, что такая есть. При написании статьи руководствовался только стандартом. Собственно, переписал предыдущую статью с учетом нового стандарта и для более понятного (я надеюсь) изложения.

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

По материалам - вместо слова "не придрался" следует читать "не посоветовал практических улучшений и не указал на недостатки".

Dmitry A. Soshnikov 06.01.2011 15:15

Цитата:

Сообщение от Илья Кантор
Не знал, что такая есть.

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

Повторю, образовательное дело -- благородное. Я не считаю, что я должен кому-то что-то указывать или даже просто обращать внимание. Уверен (и отметил дважды), каждый сам способен решить этот вопрос. Так что, успехов ещё раз!

Илья Кантор 06.01.2011 18:12

Dmitry A. Soshnikov,
Так, зашел к тебе на сайт, статью увидел. Моя была написана полгода назад где-то, так что ее я точно не смотрел. Тем не менее, вижу, она большая, и более подробная, чем мой раздел учебника. Почитаю, и конечно же, добавлю на нее ссылку.

Если будут еще идеи - пиши.

Dmitry A. Soshnikov 06.01.2011 21:56

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

К слову, тема, конечно же не новая (с lexical environments больше смена терминологии; хотя, есть и идеологический оттенок -- чтобы уйти от низкоуровневых activation record на стеке и т.д. и заменить более высокоуровневыми). В моих статьях описывалась еще и год назад (пачка статей 2, 4 и 6, как я отмечал). Да и до меня лет 6 назад Cornford писал. И до него ещё 100 раз писана-переписана (в классических трудах, 70-ых - 80-ых гг. типа SICP, который указан в списке литературы моей статьи). Статью Cornford'a, я видел, ты тоже добавил в "See also" (впрочем, как и я в ES3.6.Closures, поскольку статья действительно хорошая для 2004 года).

По поводу моей статьи, 3.1 -- это общая углубленная теория scope и lexical environments; охватывает множество аспектов. В 3.2. будет конкретика под ECMAScript.

Насчет твоей статьи. Статья хорошая, неплохо иллюстрирована. Есть несколько технических неточностей, упрощений (например, обобщенно: хранилище -- это сама LE, а не её компонент EnvrionmentRecord и т.д. Однако, бОльшее углубление может усложнить описание), где-то -- собственных домыслов, но с точки зрения подачи -- очень неплохо; поздравляю.

Ну всё, на этом, я думаю, мы полностью разобрались с этим вопросом и услышали друг друга.

Gozar 06.01.2011 22:43

удалено.

Dmitry A. Soshnikov 06.01.2011 22:53

Цитата:

Сообщение от Gozar
Dmitry A. Soshnikov, почему вы делаете ссылку в подписи на русском(Тонкости ECMAScript), а когда переходишь на сайт, то попадаешь на англоязычную версию?

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

Серия ES5, я надеюсь, тоже будет переведена на русский. На некоторые статьи (например, "JavaScript. The Core.") уже нашлись желающие, но пока что-то затягивается (кстати, самые быстрые в этом отношении -- это китайцы). Подождем ещё; если нет -- я сам переведу. Кстати, те, кто заинтересован в JS поглубже -- двери открыты для перевода ES5 серии на русский. Это хороший опыт и сразу двойная практика.

Gozar 07.01.2011 00:38

удалено.

Илья Кантор 07.01.2011 14:13

Gozar: мне хочется, чтобы учебник был и на русском и на английском.

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


Часовой пояс GMT +3, время: 13:45.