diff --git a/1-js/1-getting-started/1-intro/article.md b/1-js/1-getting-started/1-intro/article.md
index f26c9dea..924b36d6 100644
--- a/1-js/1-getting-started/1-intro/article.md
+++ b/1-js/1-getting-started/1-intro/article.md
@@ -22,14 +22,14 @@
JavaScript может выполняться не только в браузере, а где угодно, нужна лишь специальная программа -- [интерпретатор](http://ru.wikipedia.org/wiki/%D0%98%D0%BD%D1%82%D0%B5%D1%80%D0%BF%D1%80%D0%B5%D1%82%D0%B0%D1%82%D0%BE%D1%80). Процесс выполнения скрипта называют "интерпретацией".
[smart header="Компиляция и интерпретация, для программистов"]
-Строго говоря, для выполнения программ существуют "компиляторы" и "интерпретаторы".
+Для выполнения произвольных программ, не существуют два способа: "компиляция" и "интерпретация".
-- *Компиляторы* преобразуют программу в машинный код. Этот машинный код затем распространяется и запускается.
-- *Интерпретаторы*, в частности, встроенный JS-интерпретатор браузера -- получают программу в виде исходного кода. При этом распространяется именно сам исходный код (скрипт).
+- *Компиляция* -- это когда исходный код программы, при помощи специального инструмента, другой программы, которая называется "компилятор", преобразуется в другой язык, как правило -- в машинный код. Этот машинный код затем распространяется и запускается. При этом исходный код программы остаётся у разработчика.
+- *Интерпретаторы*, в частности, встроенный JS-интерпретатор браузера -- получают программу в виде исходного кода и выполняют "как есть". При этом распространяется именно сам исходный код (скрипт).
-Современные интерпретаторы перед выполнением преобразуют JavaScript в машинный код или близко к нему, а уже затем выполняют. Поэтому JavaScript в них работает очень быстро.
+Современные интерпретаторы перед выполнением преобразуют JavaScript в машинный код или близко к нему, оптимизируют, а уже затем выполняют. И даже во время выполнения стараются оптимизировать. Поэтому JavaScript работает очень быстро.
[/smart]
Во все основные браузеры встроен интерпретатор JavaScript, именно поэтому они могут выполнять скрипты на странице.
diff --git a/2-ui/1-document/12-multi-insert/article.md b/2-ui/1-document/12-multi-insert/article.md
index c8c47401..efe5ef4d 100644
--- a/2-ui/1-document/12-multi-insert/article.md
+++ b/2-ui/1-document/12-multi-insert/article.md
@@ -54,7 +54,7 @@ document.body.appendChild(ul); // затем в документ
-Код для тестов находится в файле [](insert-bench.js).
+Код для тестов находится в файле [insert-bench.js](insert-bench.js).
[/online]
## Добавление множества узлов
diff --git a/2-ui/1-document/14-styles-and-classes/article.md b/2-ui/1-document/14-styles-and-classes/article.md
index a4bc5c62..cd73976a 100644
--- a/2-ui/1-document/14-styles-and-classes/article.md
+++ b/2-ui/1-document/14-styles-and-classes/article.md
@@ -2,18 +2,18 @@
Эта глава -- о свойствах стиля, получении о них информации и изменении при помощи JavaScript.
-Перед прочтением убедитесь, что хорошо знакомы с блочной моделью CSS и понимаете, что такое `padding`, `margin`, `border`.
+Перед прочтением убедитесь, что хорошо знакомы с [блочной моделью CSS](http://www.w3.org/TR/CSS2/box.html) и понимаете, что такое `padding`, `margin`, `border`.
[cut]
-## Объект стилей style
+## Стили элемента: свойство style
Объект `element.style` дает доступ к стилю элемента на чтение и запись.
С его помощью можно изменять большинство CSS-свойств, например `element.style.width="100px"` работает так, как будто у элемента в атрибуте прописано `style="width:100px"`.
[warn header="Единицы измерения обязательны в `style`"]
-Об этом иногда забывают, но в `style` так же, как и в CSS, нужно указывать единицы измерения, например `px`.
+Об этом иногда забывают, но в `style` так же, как и в CSS, нужно указывать единицы измерения, например `px`.
Ни в коем случае не просто `elem.style.width = 100` -- работать не будет.
[/warn]
@@ -97,7 +97,7 @@ setTimeout(function() {
[/warn]
-## Строка стилей style.cssText
+### Строка стилей style.cssText
Свойство `style` является специальным объектом, ему нельзя присваивать строку.
@@ -135,7 +135,7 @@ setTimeout(function() {
Свойство `style.cssText` используют, например, для новосозданных элементов, когда старых стилей точно нет.
-## Чтение стиля из style
+### Чтение стиля из style
Записать в стиль очень просто. А как прочитать?
@@ -162,7 +162,7 @@ setTimeout(function() {