Главные отличия от существующих учебников:
— реальный язык программирования JavaScript (а не специализированный язык для обучения)
— не требуется устанавливать среду разработки (разве что редактор кода)
Естественно, в нем нет ничего про замыкания, области видимости, ООП и т.д. Только самое простое процедурное программирование. И выбор языка связан только с тем, что JS самый доступный. Открыл браузер, и вперед.
В начале года я сделал анонс http://megamozg.ru/post/7802/. Благодаря этому появилась обратная связь и много приятных отзывов. Теперь считаю учебник цельным (но не законченным). В планах: видео с короткими мастер-классами (думаю, они доступнее для неподготовленного человека). Хотел сделать скачиваемую версию на gitbook.com, но останавливает необходимость переформатирования для лучшего оформления кода.
http://kidsjs.blogspot.ru
Комментарии (21)
maximw
04.06.2015 15:37+6Цитата из урока «Игра Бомбермен»
Порядок создания игры у меня был такой:
Если честно, очень напоминает широко известное
1. Сделал текстовое описание.
2. Создал файлы index.html и style.css и начал поочередно вставлять теги и настраивать стили. Вначале создал поле и прикрутил стили, затем все остальные элементы. Когда все элементы были созданы, я скрыл элементы, которые не должны показываться вначале с помощью css-свойства display: none.
3. Создал файл программы (script.css) и начал добавлять туда переменные и функции по плану.
4. Написал комментарии в программе для лучшего понимания кода.
как нарисовать совуalexeizuzin Автор
04.06.2015 15:44+2Число комментариев от первого урока к последнему уменьшается и фидбека на последние уроки вообще не было. Но этот урок — не рассказ о том, как запрограммировать игру, это готовая игра для самостоятельного разбора.
maximw
04.06.2015 15:47Ясно, спасибо. Значит это я так «удачно» попал на такой урок. Почитаю с начала.
andyudol
04.06.2015 20:44Число комментариев от первого урока к последнему уменьшается и фидбека на последние уроки вообще не было.
А как вы думаете, почему?
И что дальше? В смысле, ваши планы.alexeizuzin Автор
04.06.2015 22:59-1Думаю, что это нормально и закономерно.
Дальше — правки существующих статей и добавление 3-4 новых (не больше), видео мастер-классов.
maximw
04.06.2015 16:05Два предложения:
1) Сделать к учебнику песочнику типа jsfiddle, только более простую и понятную, заточенную под учебник.
2) В описании понятия переменных добавить сноску, что эти переменные совсем не те что в уравнениях на уроках математики. Что мы не ищем их значения, а наоборот знаем и храним их. Для меня это было одно из самых трудных осозаний когда начинал, хотя описание было почти один-в-один похожим на ваше через аналогию «ящиков».alexeizuzin Автор
04.06.2015 16:30Спасибо за предложения.
> переменные совсем не те
Да, я заметил, что их путают, обязательно исправлю.
alemiks
04.06.2015 17:38+2>обычный домашний компьютер
у меня на одном компьютере OS X, на другом Ubuntu. Какой из них «обычный» и на какой встанет «Notepad++»?)alexeizuzin Автор
04.06.2015 17:50-2Для OS X, видимо, надо сделать комментарий. А у linux-пользователей наверняка есть более опытный товарищ, установивший систему :)
Nikobraz
05.06.2015 07:33+1Имхо, JS для обучения не подходит.
Если ориентироваться на прикладные языки и делать упор на алгоритмизацию, то Pascal.
Если на скриптовые языки — Python.
Если начинать по хардкору — C/C++.
Динамическая слабая типизация в первом ЯП — это очень плохо и может обучаемому жизнь сломать.apelsyn
05.06.2015 14:23-1Его простота с лихвою перекрывает его недостатки.
Если ориентироваться на прикладные языки и делать упор на алгоритмизацию, то Pascal.
Это «каменный век», я его учил еще в конце 80-х. Тогда это было «свежо». Ребенок хочет видеть результат немедленно, строчку в консоли браузера написал colsole.log(2+2), запустил — сработало — сын счастлив, можно и друганам в школе в браузере показать.
Если на скриптовые языки — Python.
То JavaScript
Если начинать по хардкору — C/C++.
Да чего там, Ассемблер мне кажется тут уместнее.
G0ran
08.06.2015 11:28+1Да зачем Pascal, когда можно спокойно изучать Python, знания которого потом можно применить во многих сферах. В плане выразительности он ничем не хуже Pascal. Язык Си вообще я считаю обязательный к изучению, программист обязан иметь хотя бы поверхностное представление о низком уровне.
Nikobraz
10.06.2015 11:20Pascal лучше для изучения алгоритмизации. Там нет никаких встроенных сортировок, все ручками писать надо.
Python лучше, когда нужен красивый и эффектный результат. Куча «батареек» располагает.
C — сам сейчас за микроконтроллеры взялся. Указатели, битовые маски и прочая веселуха нехило бодрит мозги. И понял к чему нам системы счисления давали учить.G0ran
11.06.2015 12:38Я понимаю о чём Вы, но для меня это не совсем аргумент. Ну да, есть сортировка встроенная и куча других вещей, но с точки зрения преподавания-то что меняется? Точно также в Python можно написать свою сортировку. Просто какой смысл тратить время на изучение синтаксиса (да, очень простого, как впрочем и синтаксиса Python) языка, который в будущем Вы не будете использовать? В ведущих мировых вузах (например, MIT) Python вполне себе язык для начальной стадии программирования.
G0ran
08.06.2015 11:15+1Всё-таки весьма спорный выбор языка программирования. Если действительно целью ставится обучение программированию, то лучше выбрать на начальном этапе Python, а потом добавить к этому рассмотрение работы ОС + программирование на Си, чтобы человек в будущем имел продставление о низкоуровневой разработке, хотя бы поверхностное.
GreatRash
JavaScript, среда разработки не требуется, рабочее окружение у юзера уже есть (браузер), но при этом вы не осилили живые примеры, а предлагаете скачивать архивы или довольствоваться скриншотами. И это при наличии таких сервисов как codepen.io и jsfiddle.net…
alexeizuzin Автор
> не осилили живые примеры
Честно говоря, и не планировал. На мой взгляд, важно показать на уровне файлов: твой код запускается не в какой-то специальной среде, а из обычного файла на обычном компьютере.
tegArt
Это же учебник для начинающих, а не каталог скриптов с примерами их работы. Ученику надо рассказать как и что работает, а не просто показать «вот, глянь, работает. теперь следующий урок». Посмотрел несколько разделов, все пошагово и последовательно.
зы. Даже вспомнилось как мелкий книжки по бейсику для спектрума читал и перенабирал по несколько страниц примеров из книги, чтобы услышать пищащую калинку-малинку или наблюдать, как экран заполняется затейливыми геометрическими фигурами в бесконечном цикле пока кнопку не ткнешь. Часто в книгах были опечатки, и чтобы что-то заработало нужно было найти ошибки. Не представляете какой это был восторг, когда «программа» запускалась.