NeoBook: среда программирования для непрограммистов


Для кого эта статья


Статья написана, в первую очередь, для тех, кто не является профессиональным программистом, но хочет уметь создавать свои собственные компьютерные программы для компьютеров с Windows. Программирование сегодня – это универсальная компетенция, которая обязательно пригодится человеку практически в любой профессиональной области и, конечно, для личных целей. Для преподавателей информатики и программирования статья тоже может быть полезна, поскольку в ней речь идёт о NeoBook – визуальной среде программирования в которой можно успешно научиться программированию с нуля и создавать полноценные приложения. Опытные программисты также используют NeoBook вместо профессиональной IDE, когда нужно быстро создать что-то достаточно простое.

Почему я решил написать о NeoBook


За 10 лет программирования в NeoBook и за 5 лет обучения студентов этой программе я много раз ловил себя на мысли – почему же так мало людей знает о том, что с помощью NeoBook можно самостоятельно создавать функциональные и красивые приложения практически любого назначения? Причем, для обычного уверенного пользователя компьютера освоить NeoBook до уровня создания полезных, красивых и надежных программ – дело одного месяца занятий по полчаса в день (и это справедливо для обычного пользователя персонального компьютера без всякой начальной подготовки в области программирования).

Программирование в NeoBook даёт быстрый ощутимый результат, что чрезвычайно важно при обучении программированию, в особенности, для современной молодежи и для занятых людей. Пришло время исправить эту несправедливость и рассказать о NeoBook всем, кто ещё лишь выбирает свой первый язык программирования – ведь это не просто учебный язык, но и позволяющий писать приложения вполне профессионального уровня для компьютеров с Windows.

Зачем гуманитарию программирование


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

Случилось так, что мне потребовалось кое-что компьютеризировать, а конкретно – свою методику диагностики силы мотива (силы желания, стремления…). Прознав про различные конструкторы тестов, я стал перебирать их один за другим и терзать разработчиков письмами, вроде «было бы хорошо добавить ещё такую-то возможность в Вашу замечательную программу».

Как всегда бывает в случае использования готовых конструкторов тестов – то одно, то другое мне не подходило… И мириться с ограничениями никак не хотелось. Наконец, в голову пришла светлая мысль сделать программу самому. Но как? Нанимать специалиста или попробовать полностью самостоятельно?

Избранная для компьютеризации методика очень проста (предъявить вопросы, перемножить баллы полученные в виде ответов и выдать интерпретацию в соответствии с заданным диапазоном), а нанимать программиста – затратно и, в моем случае, неудобно (предполагались существенные обновления программы). Поэтому я решил создать программу самостоятельно и стал читать книги по Delphi, потом Delphi для чайников, потом для школьников, потом для детей… Я бы, наверное, дошел до уровня «Delphi для младенцев», если бы такая книга существовала.

Поскольку базовых знаний в области программирования у меня не было, я не мог отделить важную информацию от второстепенной и толком не мог приступить к практике. Упражнения по кодингу в духе «нарисуй лесенку» вводили меня в состояние тяжелой депрессии. Думаю, что до этого порога дошло порядочное количество неофитов – это тот самый момент, когда хочется опустить руки.

На мое счастье я клюнул на рекламу одного интернет-предпринимателя – он предлагал платные уроки программирования в NeoBook и называл её «программой для создания программ». Так я узнал о NeoBook. В поисках дополнительной информации о ней я набрел на форум необукеров, где меня и научили работе с программой.

Что же можно создать в NeoBook?


Сначала у меня были сомнения – а возможно ли в NeoBook сделать что-то стоящее, не зря ли я трачу свое время? Но теперь я могу сказать, что за всё время работы с NeoBook я ещё ни разу не столкнулся с реально нужной мне задачей, которую не смог бы решить сам или с помощью сообщества необукеров (среди которых есть и создатели многочисленных функций и плагинов для NeoBook). Для личной и профессиональной жизни я делал:

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

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

Для непрограммиста это перечисление полезно тем, что указывает на действительно огромные возможности NeoBook и отвечает на вопрос – стоит ли NeoBook потраченного на ее освоение времени. Для себя я сделал вывод, что ещё как стоит! При этом функционал NeoBook непрерывно расширяется с помощью плагинов и функций, которые активно пишут для NeoBook профессиональные программисты. За что им низкий поклон!

Заглянем в NeoBook


Вот так выглядит окно NeoBook в режиме редактирования (открыт проект предметного теста к видеолекции «Развитие логики мышления», квадратными точками выделен текстовой объект с вопросом теста):



На скриншоте представлено главное окно русифицированной NeoBook (версии 5.8.7). Кстати, справочный файл также переведен на русский язык, как и большинство плагинов.

NeoBook обладает всеми признаками среды программирования, в ней есть:

  • визуальный конструктор интерфейса (обеспечивающий проектирование по принципу «что вижу, то и получу» – программа создаётся простым перетаскиванием объектов и в этой части напоминает обычный текстовой или графический редактор; нужный код прописывается в свойствах проекта, в свойствах созданных объектов и страниц для разных доступных событий);
  • редактор кода (с подсветкой синтаксиса и окном помощника настройки параметров команды; редактор кода доступен в окнах настройки свойств проекта, страниц проекта, а также используемых объектов; код пишется на своём скриптовом языке – можно сказать на очень упрощенном Delphi);
  • интерпретатор (работает в режиме тестовой компиляции, а также встраивается в конечное приложение при финальной компиляции и делает созданную программу в дальнейшем полностью независимым от NeoBook приложением);
  • отладчик (с возможностью видеть текущие значения переменных и выполняемые команды, позволяющий управлять скоростью выполнения скрипта и даже с построчным выполнением кода в режиме паузы, что делает отлов ошибок довольно простым занятием).

Основные возможности и ограничения NeoBook


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

Для кодирования доступны разнообразные события (левый клик, правый клик, наведение мыши, уход мыши, перетаскивание, срабатывание таймера, изменение состояния объекта, изменение состояния или размера окна приложения и др.); позволяет использовать в проектах главное, контекстное и трей меню; можно сделать сменяемый на лету интерфейс (язык и скины); доступны различные средства аудио, видео, анимации (GIF, Flash, NeoToon), а также браузер (на основе IE или Chrome), который можно встроить прямо в приложение NeoBook и работать с интернетом через него.

NeoBook даёт возможность взаимодействовать с периферийными устройствами (например, превратить обычную веб-камеру в камеру с датчиком движения), использовать различные интернет и интранет протоколы (HTTP, HTTPS, FTP, TCP, IP, UDP); умеет работать с командной строкой Windows, с целыми папками, архивами (zip, zlib, rar, cab) и с отдельными текстовыми, графическими, мультимедиа, исполняемыми, а также системными и конфигурационными файлами (в том числе BAT, CMD, INI, INF, SCF, CFG, и реестром Windows); может шифровать и хешировать, вызывать другие программы и управлять ими; создавать локальные и глобальные сочетания клавиш (и отправлять их другим приложениям); может скомпилировать автономный, не требующий установки (portable) exe-файл Вашей программы или дополнить Вашу программу инсталлятором.

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

Язык NeoBook


Язык NeoBook можно отнести к скриптовым интерпретируемым языкам высокого уровня.
Он состоит из специальных слов – команд. С помощью этих команд можно отдавать компьютеру «приказы». Например, команда AlertBox – это «приказ» показать на экране окно с заголовком, картинкой, текстом сообщения и кнопкой ОК. Правила написания команд называют синтаксисом.

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

Например, если мы напишем команду AlertBox в свойствах кнопки (на событии «левый клик»), то когда пользователь нажмет левой кнопкой мыши по данной экранной кнопке в нашей программе, плеер NeoBook прочитает и выполнит команду – т.е. покажет окно сообщения.

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

Привет, Мир!


Приведу для примера синтаксиса классический пример: «Привет, Мир!». Заодно покажу как выбирать команды в редакторе кода через меню «Команды».

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

Для вывода на экран монитора простого окна сообщения достаточно одной команды:

AlertBox "Тут заголовок окна" "Привет, Мир!!! ))"

В первой программе новичка этот код может быть помещен на кнопку, клик по которой в работающей программе должен открыть данное окно приветствия.
Стиль создаваемого по команде AlertBox окна заимствуется из Windows, изображение по умолчанию можно заменить на любое своё (в т.ч. прозрачное и любого размера), как я сделал в этом случае:



Команда AlertBox поддерживает и многострочный текст (перенос строки в редакторе кода указывают спецсимволом – вертикальной чертой). Спецсимволы не обязательно заучивать, поскольку можно редактировать текст сообщения более удобным для непрограммиста способом – через окно помощника настройки параметров команды. Это окно открывается автоматически при выборе команды через меню «Команды» (см. цифру 3 на скриншоте ниже – открыт редактор кода на событии «Left Click» экранной кнопки).

Видно, что команды сгруппированы по разделам («Навигация», «Сообщения/Диалоги», «Мультимедиа» и др.), клик по разделу (цифра 4 на скриншоте ниже) откроет список доступных в этом разделе команд. При этом, если навести мышь на команду из списка (см. цифру 5 на скриншоте), то в специальном желтом поле внизу списка команд отобразится подсказка – назначение команды:



Клик в этом списке по команде AlertBox, как и по любой другой команде имеющей параметры (то, что можно настроить или изменить), откроет окно помощника настройки параметров этой команды. Непрограммистам (по крайней мере поначалу) проще вписывать значения параметров в таком окне помощника – он контролирует правильность написания синтаксиса (например, не забудет закрыть кавычки), плюс, в окне помощника новые строки можно делать просто клавишей Enter, как в любом обычном текстовом редакторе:



При нажатии на кнопку «Тест» (на скриншоте выше отмечена цифрой 3) сможем посмотреть как будет выглядеть окно, даже без запуска тестовой компиляции программы:



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

В редакторе кода команда AlertBox теперь выглядит так (стрелкой отмечен знак переноса строки – вертикальная черта):



Присвоение значения переменной


Ещё показательный пример синтаксиса: как задать переменной какое-то значение (т.е. как поместить в ячейку памяти какое-то содержание).

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

Чтобы создать переменную или изменить её значение в NeoBook достаточно команды SetVar.
У этой команды есть два параметра (того, что может меняться) – это «имя переменной» (оно может быть задано и на русском языке, хотя программисты рекомендуют использовать латиницу), и «новое значение» (может быть любого типа – числом, строкой и т.д.). Имя переменной в NeoBook всегда пишется в квадратных скобках.

Командой SetVar мы помещаем в ячейку памяти с таким-то именем такое-то содержимое (цифру, текст, файл или что угодно ещё). Вот так можно поместить в переменную нужную строку текста:

SetVar "[ИмяПеременной]" "А тут новое значение (содержимое) переменной"

При этом, в NeoBook не требуется, чтобы переменная уже существовала или была заранее объявлена (если переменной нет, то командой SetVar она будет автоматически создана), не нужно выделять память или задавать переменной тип (о типах данных можно не знать вообще, однако, при желании, тип переменной всегда можно задать специальной командой). Всё это существенно упрощает программирование в NeoBook.

Удобно и то, что команда SetVar поддерживает простые математические операции, что позволяет легко создавать различного рода счетчики (например, счетчик правильных ответов в тесте):

SetVar "[VsegoBallov]" "10"
SetVar "[VsegoBallov]" "[VsegoBallov]+1"

После выполнения этих двух команд переменная [VsegoBallov] будет содержать 11.
А вообще для математических вычислений есть своя команда.

Чтобы очистить переменную достаточно оставить второй параметр команды пустым (присвоить переменной пустоту):

SetVar "[VsegoBallov]" ""

Редактор кода


Редактор кода в NeoBook поддерживает автоподсветку синтаксиса. Цвета можно настроить свои, по умолчанию же комментарии к коду начинаются с точки и подсвечиваются серым цветом шрифта, переменные в редакторе кода выделяются красным цветом шрифта, а команды – синим. В качестве примера приведу фрагмент кода на событии «Left Click» на кнопке «Результат» (из предметного теста к видеолекции):



На скриншоте отображено начало скрипта обработки результатов теста. Если бы имя команды где-то было написано с ошибкой, то такая команда вместо синего была бы окрашена в черный цвет.
Во время написания кода окно редактора не обязано быть таким компактным, как показано на скриншоте, можно развернуть его на весь экран используя специальную кнопку на панели инструментов (см. цифру 2, на скриншоте выше) – между кнопкой «Вставить переменную» (см. цифру 1) и меню «Команды» (см. цифру 3). Работать в развёрнутом окне редактора удобно, когда код большой.

Видео-пример создания приложения в NeoBook


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

Интервью с создателем


Специально для этой статьи мне удалось взять краткое интервью у создателя NeoBook – Дэвида Райлей (David Riley, NeoSoft Corporation, официальный сайт: neosoftware.com). Поскольку город Бенд (штат Орегон, США) находится далеко от Тюмени (города, в котором я живу), я задал свои вопросы по почте, а Дэвид любезно согласился ответить.

1. Как у вас возникла идея создать NeoBook? Когда и почему вы решили это сделать? Если возможно, расскажите нам немного о себе.
Дэвид: Я не помню точно, откуда пришла идея NeoBook. В то время людей интересовала новая концепция «цифровых публикаций» или «электронных книг», как их тогда называли. (Сегодня мы называем их e-books). Это была первоначальная цель NeoBook, поэтому она называется Neo-BOOK. После того, как была выпущена первая версия, мы обнаружили, что большинство людей используют ее как инструмент программирования, а не как средство публикации. Так NeoBook постепенно превратилась из средства публикации книг в платформу разработки для непрограммистов.

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


2. В каком году вышла первая публичная версия программы? Какой день можно считать днем ??рождения NeoBook? Вы сохранили ее скриншоты?
Дэвид: Первая версия NeoBook для DOS 1.0 была выпущена в конце 1993 года. Я думаю, что день рождения приходится где-то на конец ноября или начало декабря. Где-то могут быть снимки экрана, но они, вероятно, на моем старом компьютере с дисководами гибких дисков, поэтому нет простого способа получить их. Я нашел старое печатное руководство с 1994 года, так что оно, видимо, из первой или второй версии NeoBook. Вот скан страницы, которая демонстрирует старый интерфейс программы для DOS:


3. Что вдохновляло и поддерживало вас при создании и развитии программы?
Дэвид: Я думаю, что было две вещи. Первая – была искренним желанием сделать что-то, что люди сочли бы полезным. Мы получили много отзывов от пользователей и предложений, которые я собирал в отдельный список. Некоторые предложения были ужасны или неосуществимы, но многие были действительно хороши. Я поработал над списком предложений и реализовал как можно больше хороших. Другая вещь, которая мотивировала меня, была необходимость зарабатывать деньги, чтобы содержать себя и сотрудников, которые у меня были в то время.
4. Вы написали программу полностью самостоятельно?
Дэвид: Я фактически делал большую часть программы NeoBook самостоятельно. Как и в большинстве крупных приложений, я использовал много библиотек, как коммерческих, так и общедоступных. Я не знаю как разделить код, который я написал с нуля, и код, полученный из библиотек и других источников.
5. Планируете ли вы принять участие в разработке программы с Луисом под новым брендом программы (VisualNEO Win)?
Дэвид: Я помогал немного, но я не планирую участвовать в каком-либо крупном развитии в будущем.
6. Что бы вы хотели сказать поклонникам NeoBook?
Дэвид: Спасибо за вашу поддержку. Мне жаль, что я не смог продолжать в том же духе, но я думаю, что Луис вдохнет новую жизнь в NeoBook.
Дэвид, большое Вам спасибо!

Новая жизнь


С 1 сентября 2018 года NeoBook передана для дальнейшего развития испанскому программисту Луису Эрнандесу Пенья (Luis Hernandez Pena, SinLios Soluciones Digitales, Becerril De La Sierra, Spain) и NeoBook называется теперь VisualNEO Win (официальный сайт программы: visualneo.com). На момент публикации статьи функционал VisualNEO Win ничем не отличается от NeoBook 5.8.7 Professional (это последняя версия под старым названием), поэтому до существенного обновления можете рассматривать эти программы как одно и то же.

С 2014 года я преподаю программирование в среде NeoBook для магистрантов-психологов (как часть курса «Инновационные и коммуникационные технологии в деятельности психолога», а с 2016 года веду семестровый электив «Основы программирования для гуманитариев», целиком построенный на NeoBook, для бакалавров всех специальностей Тюменского государственного университета. В 2016-м году мне удалось выиграть грант В. Потанина на создание онлайн-курса «Быстрое программирование с нуля для гуманитариев» (сделал его на открытой платформе Moodle) и теперь программированию в NeoBook / VisualNEO Win могут совершенно бесплатно и в любое время учиться все, кто пожелает. В этом курсе полностью представлено всё содержание ранее написанных мною учебника и практикума по NeoBook.

Курс рассчитан на 15-30 часов самостоятельных занятий (для всех пользователей персональных компьютеров от 14 лет, без начальной подготовки в области программирования) и позволяет освоить NeoBook всего за месяц (если заниматься по 30-60 минут в день) до уровня самостоятельного создания полезных, надежных и красивых программ начального и среднего уровня сложности. Теоретическая часть курса представлена лекциями, а практическая – пошаговыми инструкциями (со скриншотами и краткими видео), позволяющими создать простую и завершенную программу.

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

Информация для программистов


NeoBook позволяет использовать внешние DLL, локальные и глобальные переменные; поддерживает работу с массивами, развитыми логическими операторами, регулярными выражениями, рекурсией; позволяет оформлять код в подпрограммы и функции (в т.ч. созданные на других языках программирования: VBScript и JScript, а с помощью специальных плагинов ещё на языках PHP, PdScript, AutoIt, Ruby и newLISP); есть возможности вызова функций WinAPI. Программисты Delphi, Visual Basic, C++, С#, VB.NET (и любой другой программной среды с поддержкой элементов управления ActiveX) могут встраивать скомпилированные в NeoBook приложения в свои программные продукты. Отдельно следует подчеркнуть, что функционал NeoBook почти неограниченно расширяем с помощью плагинов: программисты, поддерживающие развитие NeoBook, создают новые плагины на самые разные темы (SDK есть для Delphi, C++ и PowerBasic). Например, с помощью плагина NeoBookDBPro (который использует ODBC и технологию ADO) проект NeoBook может работать с множеством форматов баз данных: Microsoft Access, MySQL, SQLite, Microsoft SQL Server, Oracle, PostgreSQL, Paradox, dBase и др.

Заключение


В завершение хочу подчеркнуть, что сочетание простоты освоения и больших возможностей делает NeoBook (теперь VisualNEO Win) очень эффективным инструментом как создания программ, так и обучения программированию. В первую очередь – для молодежи и гуманитариев, при обучении которых традиционно возникает множество проблем.

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

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

Ссылки


  1. Бесплатный онлайн курс, посвященный программированию в NeoBook / VisualNEO Win: https://distant.orgpsiholog.ru/course/view.php?id=20
  2. Официальный сайт VisualNeo Win: https://visualneo.com
  3. Форум «Русский дом для NeoBook»: http://neobooker.ru
  4. Русскоязычный форум для всех продуктов VisualNEO: https://visualneo.info
  5. Лёвкин В.Е. NeoBook. Быстрое программирование с нуля для гуманитариев: учебник / В.Е. Лёвкин. — М.; Берлин: Директ-Медиа, 2016. — 218 с. ISBN 978-5-4475-8750-5; То же [Электронный ресурс]. — URL: https://www.directmedia.ru/book_450198_NeoBook_byistroe_programmirovanie_s_nulya_dlya_gumanitariev/
  6. Лёвкин В.Е. NeoBook. Практикум по быстрому программированию с нуля: учебное пособие / В.Е. Лёвкин – Москва; Берлин: Директ-Медиа, 2018. – 190 с. ISBN 978-5-4475-9464-0; То же [Электронный ресурс]. — URL: https://www.directmedia.ru/book_486254_NeoBook_praktikum_po_byistromu_programmirovaniyu_s_nulya/

Комментарии (116)


  1. Baigildin
    11.05.2019 18:03
    +4

    Что-то я как непрограммист не увидел очевидных плюсов этой среды как первый язык программирования. Не проще ли начать с того же visual basic?


    1. VadimLjovkin Автор
      11.05.2019 21:21

      Думаю, что зависит от целей. Если непрограммист планирует когда-либо все же стать профессиональным программистом, то, возможно, Visual Basic (как более профессиональный язык) подойдёт больше (в этом смысле — проще). При этом Visual Basic в варианте языка сценариев VBScript может быть использован внутри проекта NeoBook в качестве подключаемых функций (которые пишут для необукеров как правило значительно более опытные программисты, что тоже говорит о разнице в сложности). На мой взгляд NeoBook существенно проще (нет модулей и классов; нет констант; нет модификаторов — нет вообще понятий о способах передачи параметров: «по ссылке» или «по значению»; структура кода более читабельна; не требуется .NET Framework). К сожалению, я не делал более детального сравнения языков и не смогу его здесь привести. Но мои общие впечатления — NeoBook гораздо проще для непрограммиста.


      1. third112
        11.05.2019 21:39

        Если сравнивать, то ИМХО нужно в первую очередь смотреть насколько данная среда (NeoBook) универсальна. Часто бывают среды, где некоторые простые типовые вещи сделать очень трудно или даже невозможно.


        1. VadimLjovkin Автор
          11.05.2019 21:46

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


          1. third112
            11.05.2019 21:54

            их накопилось множество, у меня установлено более 130 штук
            Это капля в море, если, нпр., сравнить с количеством плагинов для Фотошопа :)


  1. BkmzSpb
    11.05.2019 18:16
    +6

    Мне кажется над синтаксисом точно нужно поработать. Зачем погоня за кавычками?
    Самый странный пример это SetVar — для имени переменной уже есть специальное обозначенией [], зачем кавычки? Отсюда сразу вопрос про типы. На JavaScript не пишу, но наслышан про всяческие причуды и конверсию в строки там где не надо.
    Окей, SetVar "[x]" "1 + 1", это что? Целочисленная переменная со значением 2? С плавающей точкой? Строка, содержащая символ "2"?
    Ну и главный вопрос, а если мне нужна строка, содержащая "1 + 1", как ее присовить?


    Странноватая локализация, "Комманды", но "Left Click". Т.е. человек, далекий от программирования, должен будет все равно разобраться, что такое Left Click или Mouse Enter.


    1. VadimLjovkin Автор
      11.05.2019 20:25

      Про кавычки согласен. В версии для веб-программирования — VisualNEO Web — они, по возможности, убраны.
      Чтобы получить в переменной [x] просто «1 + 1» в NeoBook (теперь VisualNEO Win) нужно использовать восклицательный знак (мне стоило написать об этом в статье, спасибо):

      SetVar "[x]" "!1 + 1"

      человек, далекий от программирования, должен будет все равно разобраться, что такое Left Click или Mouse Enter
      Да, это не всем интуитивно понятно, придётся это узнать из Справки или другого источника (есть учебник, онлайн курс, форум).


      1. VadimLjovkin Автор
        13.05.2019 20:55

        Ещё, хочу добавить. Я в статье оговаривал, но не расшифровал, что есть возможность объявлять переменным тип. В частности, по Вашему вопросу, чтобы в переменной [x] получить просто «1 + 1» есть и такой способ — можно предварительно объявить переменную [x] как строковую (командой DefineVar).

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


  1. BlessYourHeart
    11.05.2019 19:03
    +5

    Вы пишете что это «для непрограммистов» и предлагаете учить синтаксис и концепции программирования какого то фреймворка. Зачем, когда «для непрограммиста» проще и полезнее будет выучить любой более менее не сложный распространенный язык?


    1. JustDont
      11.05.2019 19:50
      +2

      Очень поддерживаю. Попытка подать какой-то местячковый фреймворк «для непрограммистов», хотя по скриншотам и описаниям там явно видно, что в конце концов всё дойдет до вполне обычного программирования — она мягко говоря странна. Если уж хочется какой-нибудь RAD-инструмент, то нужно смотреть на максимально мейнстримные штуки (да хоть Дельфи), потому что чем более мейнстримный инструмент вы возьмете, тем меньше шансов остаться наедине с проблемой, которую вы не можете решить.

      И это даже не говоря о том, что если уж всё равно программировать, то лучше это делать не на каком-то «птичьем» языке, который за пределами своего уютненького мирка на 2.5 человек никому не нужен.

      PS: В новом MS Office вон можно плагины (add-in по микрософтовской терминологии) фигачить прямо на JS и реакте (и не только реакте). Уже даже и VBS особо не нужен.


    1. VadimLjovkin Автор
      11.05.2019 20:35

      Я сужу по себе и по своим студентам (они как раз из гуманитарных направлений — филологи, историки, психологи и т.д.). После NeoBook (если возможностей этой среды программирования окажется не достаточно) гуманитарий сможет освоить и что-то более профессиональное. Однако для подавляющего большинства из них (включая меня) возможностей NeoBook предостаточно. Вот только чтобы создавать веб-приложения нужна другая среда, например, от того же создателя с похожим синтаксисом: VisualNEO Web. Поэтому для гуманитария нет смысла преодолевать довольно высокий порог вхождения в мир Delphi или другого профессионального языка (99% гуманитариев отвалится ещё в самом начале пути).

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


      1. JustDont
        11.05.2019 21:41

        Поэтому для гуманитария нет смысла преодолевать довольно высокий порог вхождения в мир Delphi или другого профессионального языка (99% гуманитариев отвалится ещё в самом начале пути).

        В мир Delphi нет «довольно высокого порога вхождения», в этом вся и соль. От самого момента её появления до настоящего дня (сейчас есть и другие вещи с очень низким порогом вхождения, но у Delphi по прежнему всё очень неплохо).
        Мне кажется вы путаете возможности с порогом вхождения. На Delphi можно писать очень серьезный код (миллионы килобайт написанного на Delphi энтерпрайз-кода не дадут соврать), но сбацать что-то из формочек и кнопочек на ней всё так же можно в течении пары часов после первого запуска IDE и с крошечным минимумом непосредственно кода.


        1. VadimLjovkin Автор
          11.05.2019 22:03

          В мир Delphi нет «довольно высокого порога вхождения», в этом вся и соль.

          Уверен, что это полностью так, для человека разбирающегося в Delphi хотя бы на «около среднем» уровне. А для непрограммиста всё выглядит иначе. Из какой позиции смотрит на задачу новичок? Для него любая неизвестная настройка — это дезориентация. А когда он не знает что для решения его задачи потребуется, а что нет? Это и есть порог вхождения — объем неизвестного из которого нужно как-то вычленить нужное.
          На языке аналогии: на кларнете можно сыграть и простую мелодию, но чтобы извлечь хоть что-то приемлемое по звучанию нужно потрудиться (сам по себе инструмент не простой). А для опытного кларнетиста это давно не проблема, у него уже другое восприятие.

          Я изучаю реакцию своих студентов на разные новые для них вещи. Например, я обнаружил, что файл CHM (обычная справка), когда открывается ими впервые, вводит их в оцепенение… Я был удивлен и озадачен, когда это обнаружил. Для программиста CHM — это невероятно удобный формат, а для непрограммиста — это что-то чуждое и вводящее в транс. Я думаю, что многие разработчики именно поэтому стали делать справку в простом PDF.
          Чем больше непривычного и неизвестного, тем психологически труднее сориентироваться.


          1. JustDont
            11.05.2019 22:26
            +1

            Для него любая неизвестная настройка — это дезориентация. А когда он не знает что для решения его задачи потребуется, а что нет? Это и есть порог вхождения — объем неизвестного из которого нужно как-то вычленить нужное.

            Вы принимаете весь набор возможностей за «объем неизвестного», но это мягко говоря неверно. Весь набор возможностей поначалу даже и не осознаётся — и это нормально. Важнее набор очевидных возможностей. То, что прямо на экране, то, с помощью чего можно добиться нужного поведения (даже если поначалу код будет выглядеть как магия), и так далее.

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

            У Delphi с набором очевидных возможностей всё довольно хорошо. И к слову, я не мастер с черным поясом в Delphi, я с ним немного ковырялся еще в институтские времена (в ранних 00-х), и путь от «запустил IDE» до «скомпилировал чего-то работающее» там проходился крайне быстро еще в те времена (а сейчас, говорят, с этим даже получше).

            Для программиста CHM — это невероятно удобный формат

            Очень сомнительное заявление. Я, если честно, не встречал ни одного человека в своей жизни, кто считал бы CHM удобным. А нынче и вообще это html каменного века, да еще и завернутый в пропиетарный формат.


            1. VadimLjovkin Автор
              11.05.2019 22:59

              Важнее набор очевидных возможностей.

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

              Мне этот формат очень удобен :). Ясная структура, хороший полнотекстовый поиск с подсветкой результатов, закладки… Однако, я не считаю его лучшим форматом, конечно.
              У Delphi с набором очевидных возможностей всё довольно хорошо.

              Я с большим уважением отношусь к Delphi и всем, кто в ней трудится (не говоря уже о тех, кто её создал и развивает). И не опровергаю, что её возможности могут быть для многих людей очевидными. Мой личный опыт и опыт преподавания говорит, что «очевидное» — это очень субъективная категория. А когда речь идет об обучении новичков, которые и не собираются быть программистами, а просто хотят (в лучшем случае) уметь автоматизировать какие-то свои простые задачи, то Delphi — это открытый космос для них.


          1. lair
            11.05.2019 22:36
            +1

            Для него любая неизвестная настройка — это дезориентация.

            Так не надо давать "неизвестных настроек". Этим, кстати, и хороши текстовые языки — сколько синтаксических элементов дал, столько люди и знают.


            Например, я обнаружил, что файл CHM (обычная справка), когда открывается ими впервые, вводит их в оцепенение…

            А давайте уточним, они этот файл открывают для чтения в специально предназначенной программе, как это задумано было, или внутрь ему залезли?


            Для программиста CHM — это невероятно удобный формат

            Неа. Ничего "невероятно удобного" я в нем не вижу.


            многие разработчики именно поэтому стали делать справку в простом PDF.

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


            1. VadimLjovkin Автор
              11.05.2019 23:14

              Так не надо давать «неизвестных настроек».
              Но ведь их и не спрячешь… Не знаю, будет ли уместным сравнение: летчики говорят, что летать лучше учиться сначала на планере, а не на пассажирском боинге.

              Но, для понимания места NeoBook в IT-мире, важно, что NeoBook — это не учебный язык для будущих профи, а среда разработки для непрограммистов. Именно по этой причине NeoBook хороша и как первый язык (для непрограммистов), поскольку даёт быстрый результат и позволяет обучиться алгоритмическому мышлению. Но как учить будущих профи могут сказать только профи. Я к профессиональным программистам себя не отношу. Хотя я намерен, конечно же, развиваться в этой сфере дальше.
              А давайте уточним, они этот файл открывают для чтения в специально предназначенной программе, как это задумано было, или внутрь ему залезли?

              О, нет. Внутрь мы не лезли. Открывали русифицированный справочный файл к NeoBook, чтобы посмотреть как с помощью Справки прояснять синтаксис команд на примерах.
              Ничего «невероятно удобного» я в нем не вижу.
              Возможно это вкусовое различие. Мне CHM удобен. Хотя я и не считаю себя программистом.
              «Многие разработчики» стали делать справку в PDF, потому что PDF открывается где угодно, включая браузер, телефон и планшет. Скачал и читай себе.
              Да, с этим не поспоришь!


              1. lair
                11.05.2019 23:26

                Но ведь их и не спрячешь…

                Почему бы? Вот какие "неизвестные настройки", скажем, есть в Питоне? Которые сразу видны и смущают?


                Но, для понимания места NeoBook в IT-мире, важно, что NeoBook — это не учебный язык для будущих профи, а среда разработки для непрограммистов. Именно по этой причине NeoBook хороша и как первый язык (для непрограммистов), поскольку даёт быстрый результат и позволяет обучиться алгоритмическому мышлению.

                Я очень не люблю сегрегированные среды разработки "для непрограммистов" — потому что они создают ощущение, что "программисты" — это какие-то особенные люди.


                Возможно это вкусовое различие. Мне CHM удобен. Хотя я и не считаю себя программистом.

                Тогда зачем вы что-то говорите о том, что удобно для программистов?


      1. lair
        11.05.2019 21:48

        Поэтому для гуманитария нет смысла преодолевать довольно высокий порог вхождения в мир Delphi или другого профессионального языка (99% гуманитариев отвалится ещё в самом начале пути).

        А за что вы так гуманитариев-то? Я вот, даром что гуманитарий, совершенно спокойно пишу на нескольких, как вы выражаетесь, "профессиональных языках". И искренне считаю, что если хочется программировать — нужно писать на языках, которые потом можно успешно применять.


        Не надо "для гуманитариев" никаких отдельных подходов, они прекрасно способны на общие.


        1. VadimLjovkin Автор
          11.05.2019 22:14

          Согласен, не корректно говорить о гуманитариях вообще. И согласен с тем, что крайне важна мотивация.
          У меня бывают студенты (примерно один из пятидесяти), которые схватывают программирование легко. Это те, у кого ещё до моих занятий был интерес к программированию и они что-то пытались делать.
          Среди остальных много способных, но они не интересовались этим на столько, чтобы освоить «мышление программиста». Им необходим быстрый и наглядный результат, который даст им возможность поверить в себя. Вот для таких гуманитариев нужен не столько отдельный подход, сколько более простой инструмент для решения их (довольно простых для программистов) задач.
          Я обучаю магистрантов и бакалавров, вижу их трудности. Для меня очевидно, что для них необходим простой инструмент, который либо останется надолго единственным для них, либо даст старт к другим языкам (уже по потребностям).


          1. lair
            11.05.2019 22:33

            Среди остальных много способных, но они не интересовались этим на столько, чтобы освоить «мышление программиста».

            Ну так если не интересовались, то может и не надо?


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

            Так есть же их, простых инструментов, которые при этом не отдельные от остального мира. Ну хотя бы python.


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

            Anaconda, Jupyter Notebook — и вуаля.


            для них необходим простой инструмент, который либо останется надолго единственным для них

            Вот это как раз и плохо. Единственный — и весьма ограниченный — инструмент. Даже Excel — и тот полезнее.


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

            А вот тут сразу вопрос: есть ли объективные оценки, сколько занимает изучение "другого языка" после NeoBook, и есть ли выигрыш?


            1. VadimLjovkin Автор
              11.05.2019 23:26

              Ну так если не интересовались, то может и не надо?
              Записываются на мой курс по разным причинам. Некоторые лишь для того, чтобы не идти на математику)).
              Так есть же их, простых инструментов, которые при этом не отдельные от остального мира. Ну хотя бы python.
              Там, на сколько я знаю, с созданием визуального интерфейса не все просто. А в NeoBook — проще некуда. Хотя, время идёт, может и в python уже можно легко ваять такие же проги? Тут надо чтобы сравнил человек, который знает и то, и другое. Я очень мало чего знаю про python.
              Anaconda, Jupyter Notebook — и вуаля.
              Спасибо, поинтересуюсь!
              Даже Excel — и тот полезнее.
              Не соглашусь. Ведь я работаю с NeoBook с 2009 года…
              А вот тут сразу вопрос: есть ли объективные оценки, сколько занимает изучение «другого языка» после NeoBook, и есть ли выигрыш?
              Нет, исследований таких я не проводил и не слышал о таких. Однако, вполне объективным можно считать тот факт, что если у человека уже есть умение использовать логические условия, циклы, переменные, массивы, регулярные выражения, и т.п., то он быстрее освоит любой новый для себя язык программирования. Быстрее, чем тот, кто этими умениями не обладает. Потому, что он умеет мыслить алгоритмически, уже умеет делать визуальные интерфейсы и писать код.


              1. lair
                11.05.2019 23:31

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

                Тогда и в программировании от них толка не будет.


                Нет, исследований таких я не проводил и не слышал о таких.

                Тогда зачем вы делаете громкие утверждения о полезности вашего инструмента?


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

                Нет, нельзя считать этот "факт" объективным, потому что это не факт, а ваше предположение. Но даже если оно верно, нужно еще продемонстрировать, что NeoBook дает корректные знания этих абстракций (что мне вот, после строки SetVar "[VsegoBallov]" "[VsegoBallov]+1" совершенно не очевидно).


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

                Вы почему-то считаете, что создание визуальных интерфейсов необходимо для программирования. Во-первых, нет. А во-вторых, там столько парадигм, что все равно все заново учить.


                При этом я вам открою еще одну занятную вещь: можно годами писать код, и при этом все равно не уметь "мыслить алгоритмически".


                Честное слово, намного полезнее учить людей работать с системами контроля версий (и писать в текстовых форматах), на сегодняшний момент это чрезвычайно полезный (и при этом недооцененный) навык. Не, серьезно: в ваших "основах программирования для гуманитариев" есть системы управления версиями и, прости г-ди, GitHub или BitBucket?


                1. VadimLjovkin Автор
                  11.05.2019 23:47

                  Тогда и в программировании от них толка не будет.
                  Так они не собираются быть программистами. Они будут использовать умение делать свои программы для простых задач в своей профессиональной области и личной жизни.
                  Нет, нельзя считать этот «факт» объективным, потому что это не факт, а ваше предположение. Но даже если оно верно, нужно еще продемонстрировать, что NeoBook дает корректные знания этих абстракций
                  Человек либо умеет использовать логические условия, либо нет. Либо может использовать переменные, либо не может. Это факт, согласно третьему закону формальной логики.
                  там столько парадигм, что все равно все заново учить.
                  Вам виднее. Вместе с тем, я ведь не утверждаю, что знание NeoBook может заменить знание других языков. Напротив, как мне казалось, ясно очерчиваю и область применения, и тех, на кого рассчитан этот инструмент разработки приложений.
                  Честное слово, намного полезнее учить людей работать с системами контроля версий (и писать в текстовых форматах), на сегодняшний момент это чрезвычайно полезный (и при этом недооцененный) навык.
                  Что и кому полезнее, все же, зависит от целей этого кого-то.
                  Система контроля версий в NeoBook сводится к номеру версии компилируемой программы и комментариям в исходном коде. И то, и другое — опционально. Ничего более сложного не требуется, поскольку разработчик в большинстве случаев один и проект у него простой.


                  1. lair
                    11.05.2019 23:53

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

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


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

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


                    Что и кому полезнее, все же, зависит от целей этого кого-то.

                    … а задача образования — научить людей ставить правильные цели и выбирать правильные способы их достижения.


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


                    Система контроля версий в NeoBook сводится к номеру версии компилируемой программы и комментариям в исходном коде.

                    А внешние системы контроля версий NeoBook не умеет?


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

                    Мне кажется, вы не понимаете, зачем нужна система контроля версий.


                    1. VadimLjovkin Автор
                      12.05.2019 00:01

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


                      1. lair
                        12.05.2019 00:08

                        Известно. Но это уже другой предмет беседы.

                        Да нет, именно тот. Если принять это утверждение, то становится понятно, что нет никакого "объективного факта", что из какого-то умения пользоваться переменными вытекает ускорение освоения произвольного языка программирования.


                        Не использовал никогда.

                        Вот я и говорю: недооцененное.


              1. FForth
                12.05.2019 00:55
                +2

                Знаете ли Вы о свободном и открытом инструменте визуального программирования HiAsm?
                Для непрограммистов вполне годный инструмент с активным форумным сообществом и группа в Vk

                P.S. И насколько Ваше применение NeoBook ограничено процессом «автоматизации» учебного процесса?
                Может причина в достаточно неплохом решении данным инструментом определённого круга задач и вне этих задач данный инструмент мало актуален.
                А то некоторые аппологеты и Дракон язык выдвигают на примененение его вне понимания специфики разных предметных областей где применяется программированиe.


                1. VadimLjovkin Автор
                  12.05.2019 20:39

                  HiAsm — это интересный проект, со своим визуальным подходом. Когда я выбирал NeoBook, то одной из альтернатив был именно HiAsm. Однако свой выбор я остановил на NeoBook, как на более понятной для меня.


          1. lair
            11.05.2019 22:46

            для них необходим простой инструмент, который либо останется надолго единственным для них

            Эм. Я вот сходил на сайт, и выяснил, что VisualNEO Win, вообще-то, не бесплатный. Вы считаете нормальным давать людям в качестве единственного инструмента платное ПО?


            1. VadimLjovkin Автор
              11.05.2019 23:35

              Вы считаете нормальным давать людям в качестве единственного инструмента платное ПО?
              Я за бесплатное ПО и бесплатные знания. Только мы живём пока в мире, где еду покупают за деньги. А будет ли VisualNEO Win единственным инструментом — зависит уже от пользователя. Если пользователь, обучившись программированию, найдет более удобную среду для него, то он сможет перейти. Для меня же это пока единственный инструмент (уже 10 лет). И я доволен. Кстати, я покупал тогда за цену на треть большую, чем сейчас. Не смотря на выросший с тех пор курс доллара… Лицензия на среду разработки в 4300 рублей — это очень доступная цена, на мой взгляд. Прежний разработчик (Дэвид Райлей) делал и новый разработчик (Луис Эрнандес) делает существенные скидки для образовательных учреждений. Так что это не проблема. Но, кто знает, может быть когда-то удастся сделать NeoBook (VisualNEO Win) открытым проектом. Мне очень нравится эта мысль!


              1. lair
                11.05.2019 23:43

                Только мы живём пока в мире, где еду покупают за деньги.

                В этом же мире есть много бесплатного ПО.


                Если пользователь, обучившись программированию, найдет более удобную среду для него, то он сможет перейти.

                А как он это сделает, если вы его ничему другому не учили?


                Так что это не проблема.

                Для вас? Возможно. Для человека, которому надо заплатить эти деньги, чтобы сделать себе безделушку для домашней автоматизации? Не факт.


                1. VadimLjovkin Автор
                  11.05.2019 23:55

                  А как он это сделает, если вы его ничему другому не учили?
                  Почему же, на занятиях студенты работают в учебном классе, и не обязаны покупать лицензию. При этом я рассказываю о том, что принципы программирования общие и если вы научились писать код на одном языке, то сможете освоить и другой.
                  Для вас? Возможно. Для человека, которому надо заплатить эти деньги, чтобы сделать себе безделушку для домашней автоматизации?
                  К сожалению, да, для многих это проблема. Мы от своего форума связались с разработчиком и указали на то, что цена на VisualNEO Win может быть большой для многих россиян. Он предложил варианты, в частности бесплатные лицензии для победителей конкурсов, для пользователей моего бесплатного онлайн курса он тоже предложил существенную скидку (в рублях получается без копеек 2850 руб. за лицензию). Так что и здесь можно находить решения.


                  1. lair
                    12.05.2019 00:00

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

                    Но другие языки не показываете.


                    Так что и здесь можно находить решения.

                    Самое простое из которых — не использовать закрытое ПО для обучения.


                    1. VadimLjovkin Автор
                      12.05.2019 00:08

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

                      Самое простое из которых — не использовать закрытое ПО для обучения.
                      Это тоже подход.

                      Мы живём в большом мире. Не всё закрытое ПО недоступно для рядового пользователя. К счастью.


      1. third112
        11.05.2019 21:52
        +1

        преодолевать довольно высокий порог вхождения в мир Delphi
        Откуда такая информация? ИМХО в Delphi минимально низкий порог вхождения. Он дополнительно понижен громадностью «мира Delphi»: огромное количество книг и сетевых источников + куча форумов, где всегда можно получить совет по возникшей проблеме. А сколько таких источников для NeoBook?


        1. VadimLjovkin Автор
          11.05.2019 22:21

          Термин «порог вхождения», судя по всему, мною выбран не совсем удачно.
          Можно сказать иначе: Delphi — это океан (как возможностей, так и книг, форумов, и других источников). Порог вхождения в него — один шаг. А дальше? Как управиться с океаном?
          NeoBook — это что-то вроде бассейна. Вода прозрачная, опытных пловцов вокруг не много, но они рядом и всегда можно спросить.
          Есть русскоязычный форум и есть англоязычный, есть книги, есть бесплатный онлайн курс на русском языке. Все основные источники приведены в разделе «Ссылки» к статье. Этого более, чем достаточно, чтобы освоить NeoBook.


          1. third112
            11.05.2019 22:31

            Порог вхождения в него — один шаг. А дальше? Как управиться с океаном?
            А зачем управляться с океаном, если не нужно? Кто не умеет плавать и не хочет учиться — плещутся у берега и довольны. Тут проявляется когнитивное искажение: в реальности часто оправдан взгляд, что не надо колоть орехи большой королевской печатью или дорогим микроскопом. И этот взгляд переносится в виртуальность IT, где он зачастую оказывается совершенно не верен.


          1. Groramar
            12.05.2019 11:27

            Не обязательно погружаться в океан целиком. Даже находясь около берега на Delphi можно сделать немало. Инструмент делают всё более удобным в этом направлении (можно вспомнить тот же ЛайвБиндинг) — минимумом кода можно делать вполне работающие приложения.


  1. ligor
    11.05.2019 19:45
    +1

    функционал NeoBook почти неограниченно расширяем с помощью плагинов
    Зашел на официальный сайт — вижу что плагины вполне себе недешево стоят. Каждая работа должна быть оплачена, но мое имхо что для виндос лучше чем Визуал Бейсик или Шарп или Дельфи — нет. (для новичков в программировании)


    1. VadimLjovkin Автор
      11.05.2019 20:41

      К счастью необукера, абсолютное большинство плагинов бесплатны. У меня установлено более 130. Из них только один платный — NeoBookDBPro (для работы с базами данных). Но для баз данных есть и бесплатные плагины.


    1. VadimLjovkin Автор
      11.05.2019 21:29

      для виндос лучше чем Визуал Бейсик или Шарп или Дельфи — нет. (для новичков в программировании)

      Разница между NeoBook и Delphi, образно говоря, как между велосипедом и космическим кораблем «Буран». Что лучше — зависит от целей.


      1. third112
        11.05.2019 22:03

        Некорректное сравнение: велосипед и Буран неуниверсальны, а Delphi универсален, как и многие другие языки: можно и в космос и за хлебом в ближайший магазин.


        1. VadimLjovkin Автор
          11.05.2019 22:27

          Вот именно эта универсальность и не позволит новичку управиться с Delphi. Ведь универсальностью ещё нужно уметь управлять (это я хотел показать своим сравнением). Особенно если новичок не собирается быть профессиональным программистом, но хотел бы уметь писать простые приложения.
          Сама NeoBook написана в Delphi и создана для гораздо более простых задач.


          1. third112
            11.05.2019 22:39

            Вот именно эта универсальность и не позволит новичку управиться с Delphi. Ведь универсальностью ещё нужно уметь управлять
            Зачем управлять? Как универсальность Delphi может не позволить? Не нужно делать приложение для БД или Web — не используй компоненты со вкладок БД или Web. Просто раскладывать по форме кнопочки и писать тривиальные обработчики события нажатия на кнопочку можно научить за час. Если больше ничего не нужно, то и учить ничего не надо. И про универсальность можно забыть пока что-то еще не будет необходимо.


            1. Groramar
              12.05.2019 11:33

              К слову говоря, Delphi уже и с вебом вполне справляется на уровне формошлёпства (в хорошем смысле). Есть такой замечательный инструмент UniGUI. Можно вообще не иметь понятия о вебе и веб технологиях, и при этом делать вполне работоспособные веб приложения. Я, например, JS/HTML/CSS практически не знаю (я этим не горжусь, просто невозможно объять всё программирование), но это не помешало сделать с пяток достаточно сложных приложений, всего больше сотни форм.


              1. VadimLjovkin Автор
                12.05.2019 20:43

                Delphi уже и с вебом вполне справляется
                Приятно знать, что Delphi активно развивается и становится всё доступнее для новичков! И все же, это среда для профессиональной разработки. Я же рассказываю о среде программирования специально созданной для непрограммистов.


          1. lair
            11.05.2019 22:40

            Вот именно эта универсальность и не позволит новичку управиться с Delphi.

            с помощью NeoBook можно самостоятельно создавать функциональные и красивые приложения практически любого назначения

            Вы себе противоречите. Либо NeoBook — универсальный инструмент, и тогда не понятно, почему вы противопоставляете его Дельфи по этому параметру, либо он не универсальный, и тогда в нем нельзя создавать "приложения практически любого назначения".


            1. VadimLjovkin Автор
              12.05.2019 00:19

              Вы себе противоречите. Либо NeoBook — универсальный инструмент, и тогда не понятно, почему вы противопоставляете его Дельфи по этому параметру, либо он не универсальный, и тогда в нем нельзя создавать «приложения практически любого назначения».
              Универсальность NeoBook описана мною на примерах создаваемых приложений. Они разного назначения и функциональности. В этом значении я использовал термин «универсальность» — инструмент для разных задач. И, конечно, универсальность NeoBook не идет ни в какое сравнение с Delphi, в которой она написана.

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


              1. lair
                12.05.2019 00:28

                В этом значении я использовал термин «универсальность» — инструмент для разных задач.

                Вы, похоже, не отличаете "универсальности" от "многофункциональности". Это печально, особенно для гуманитария.


                1. VadimLjovkin Автор
                  12.05.2019 20:50

                  Да, тут Вы меня крепко прижали, однако ). Использовал не точный термин. Можно было выразиться точнее. Да. Всегда можно лучше. Однако не всё в тексте определяется словом. Многое — контекстом. А контекст задан ясно и однозначно, в том числе в заголовке — среда программирования для непрограммистов. По тексту пишу — для новичков, не для тех, кто собирается быть профессиональным программистом и т.п.
                  Ясно же, что речь идёт не о Delphi или ей подобной среде. Чего уж так наседать то?


                  1. lair
                    12.05.2019 20:55

                    А контекст задан ясно и однозначно, в том числе в заголовке — среда программирования для непрограммистов.

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


                    1. VadimLjovkin Автор
                      12.05.2019 21:08

                      Не вижу противоречия. NeoBook действительно достаточно простая и, вместе с тем, достаточно мощная среда (если под мощностью понимать возможность делать всё то, что я в явной форме перечислил в статье). Для непрограммиста — это очень даже мощная среда. Тут нет создания иллюзии, поскольку я привожу примеры того, что считаю широкими возможностями. Я пользуюсь NeoBook уже 10 лет и она всё ещё мощная для меня.
                      У Вас другое восприятие «мощности», поскольку Вы не являетесь новичком и, судя по всему, работаете в профессиональной IDE.


                      1. lair
                        12.05.2019 21:17

                        если под мощностью понимать возможность делать всё то, что я в явной форме перечислил в статье

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


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

                        Проблема примеров в том, что они заведомо не исчерпывающи.


                        Но еще большая проблема в том, что вы говорите о "научиться [...] создавать полноценные приложения" и "приложения вполне профессионального уровня". А потом немедленно прячетесь за "это же непрофессиональная среда, чего вы от нее хотите".


                        Вы в вашем курсе явно говорите:


                        Если Вы не собираетесь быть профессиональным программистом, то возможностей NeoBook / VisualNEO Win Вам хватит с избытком!

                        Как мы уже выяснили, это неправда. Но вы продолжаете:


                        NeoBook / VisualNEO Win — это лучшее начало, поскольку научит Вас главному в программировании — думать как программист, уметь создавать удобные интерфейсы и писать код для своих программ! Поэтому, если вдруг Вы захотите изучить любой другой язык программирования (например, для создания веб-сайтов или для создания мобильных приложений), то Вы освоите его легко.

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


                        Я пользуюсь NeoBook уже 10 лет и она всё ещё мощная для меня.

                        Вот-вот. Вот вы — опытный пользователь NeoBook. Правда же, высказывания выше (про "научить думать" и "любой другой язык") должны быть к вам применимы. Или… нет? Если нет, то почему?


                        У Вас другое восприятие «мощности», поскольку Вы не являетесь новичком и, судя по всему, работаете в профессиональной IDE.

                        … а еще вы не отличаете IDE от языка и платформы. И это, для человека, преподающего программирование, непростительно.


                        1. VadimLjovkin Автор
                          12.05.2019 21:39

                          Вы в вашем курсе явно говорите:

                          Если Вы не собираетесь быть профессиональным программистом, то возможностей NeoBook / VisualNEO Win Вам хватит с избытком!

                          Как мы уже выяснили, это неправда.
                          Я пишу то, в чем вижу правду. NeoBook — это мощная среда программирования для непрограммиста, её возможностей с лихвой хватит человеку, если он не собирается быть профессиональным программистом, но хочет писать свои приложения вполне профессионального уровня для компьютеров с Windows.

                          нет никаких свидетельств, что NeoBook научит «думать как программист»
                          Не согласен. Научит! И у меня есть пятилетний опыт преподавания NeoBook, чтобы говорить так.

                          а еще вы не отличаете IDE от языка и платформы.
                          С чего Вы взяли?

                          Я Вас прошу остановиться. Мне понятно, что у Вас сложилось негативное отношение к моей работе. Я больше не хочу тратить время на споры. Не хотите, не пользуйтесь. Оставайтесь при своём. Избавьте меня от обвинений. Они, по меньшей мере, несправедливы.
                          Не ожидал такого здесь…
                          Желаю Вам продуктивного творчества!


                          1. lair
                            12.05.2019 21:53

                            Я пишу то, в чем вижу правду. NeoBook — это мощная среда программирования для непрограммиста, её возможностей с лихвой хватит человеку, если он не собирается быть профессиональным программистом, но хочет писать свои приложения вполне профессионального уровня для компьютеров с Windows.

                            Я вам привел один пример, где это неверно. Могу, в принципе, продолжать их приводить.


                            Но отдельно меня забавляет оговорка про "компьютеры с Windows". Вы это называете "актуальным курсом"? А что делать владельцам Mac-ов?


                            Не согласен. Научит! И у меня есть пятилетний опыт преподавания NeoBook, чтобы говорить так.

                            Да ладно бы преподавание… там рядом был вопрос про ваш собственный опыт, который вроде как в два раза дольше. Вы его проигнорировали, я его повторю: применимы ли ваши утверждения про "научит думать как программист" и "легко освоить другой язык" к вам самому?


                            С другой стороны, раз уж у вас есть пятилетний опыт преподавания, которым вы аргументируете свое заявление, то я задам еще один вопрос: а как вы формально определяете, научился ли ваш студент "думать как программист"?


                            С чего Вы взяли?

                            С того, что вы считаете, что я работаю "в профессиональной IDE", хотя все мои замечания были к платформе, а не IDE.


                            Я Вас прошу остановиться.

                            Я тоже прошу вас остановиться и перестать вести свой курс, или по крайней мере убрать из него голословные обобщения.


                            Они, по меньшей мере, несправедливы.

                            Если это так, вам не составит труда их опровергнуть.


  1. Duti_Fruti
    11.05.2019 20:31

    Для непрограммистов есть HiASM. :)
    Когда был школьником, было интересно. До того как начал программировать.


    1. VadimLjovkin Автор
      11.05.2019 20:38

      HiASM — это интересный проект, со своим подходом! Однако для меня NeoBook оказалась куда более понятной средой программирования. Надеюсь, что HiASM тоже будет развиваться дальше.


  1. aleks-th
    11.05.2019 20:49

    Это новый Вижуал Бейсик что ли?


    1. VadimLjovkin Автор
      11.05.2019 20:50

      Не совсем. Они появились примерно в одно время. Visual Basic в 1991 году, а NeoBook в 1993 году.


  1. third112
    11.05.2019 21:31

    Поэтому я решил создать программу самостоятельно и стал читать книги по Delphi, потом Delphi для чайников, потом для школьников, потом для детей… Я бы, наверное, дошел до уровня «Delphi для младенцев», если бы такая книга существовала.
    А какие конкретно проблемы были с Delphi? Нпр., не самая новая книга Фаронов В.В. Delphi 5 учебный курс. Там уже на 30ой странице детально рассказано как окошко с «Привет, Мир» сделать, причем предыдущие страницы можно вообще не читать.
    Такую программу:
    Избранная для компьютеризации методика очень проста (предъявить вопросы, перемножить баллы полученные в виде ответов и выдать интерпретацию в соответствии с заданным диапазоном),
    можно сделать из «Привет, Мир» следующим ходом за 1 день. Только надо не просто книгу читать, а за ПК, где Delphi запущен. И по ходу чтения делать, что сказано в книге.

    Программирование это не только знание языка программирования и среды разработки, но и знание алгоритмов и т.д. За один день всё это не изучить, но для приведенной задачи с опросом это и не нужно.

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


    1. VadimLjovkin Автор
      11.05.2019 22:37

      А какие конкретно проблемы были с Delphi?

      Если кратко, то было не понятно как кодить, что важно, а что второстепенно. Понять это можно только на практике. Поэтому чем проще инструмент, который позволяет освоить алгоритмическое мышление, тем лучше. NeoBook в этом смысле удобная платформа.
      Сейчас я в целом понимаю как пишутся программы и можно было бы приступить к освоению Delphi, но для решения моих профессиональных задач возможностей NeoBook пока хватает. А ресурс времени не бесконечен…


      1. third112
        11.05.2019 22:55

        было не понятно как кодить, что важно, а что второстепенно
        Типичная ошибка при самообучении. А в Delphi это очень просто: что нужно — то и важно. Нужны кнопочки — прочесть пару страниц «как работать с кнопочками», нужны списки выбора — прочесть еще несколько страниц со списками. Читать на первом шаге весь учебник — как читать подряд все статьи энциклопедии: никакого смысла.

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


        1. VadimLjovkin Автор
          12.05.2019 00:22

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


          1. third112
            12.05.2019 01:00

            нужна практика решения реальных задач
            Прежде, чем решать задачу, надо узнать, как решают подобные типовые задачи. А это не про языки.


  1. vagon333
    11.05.2019 21:34

    Похожий проект — среда Clarion от SoftVelocity.
    Тоже давно на рынке (с 1986, если не ошибаюсь).
    У Clarion ориентация на приложения работы с данными.
    Есть сильная сторона — язык шаблонов. Т.е. язык генерации исходников на основании метаданных.


    1. VadimLjovkin Автор
      11.05.2019 22:39

      Спасибо! Интересно будет посмотреть. Ещё не сталкивался с этой системой.


    1. AlePil
      12.05.2019 01:37

      насколько помню там слабая сторонам это ценник.


      1. vagon333
        12.05.2019 04:30

        $1000 единоразово.
        Обновления версий — $400/год, но никто не заставляет.


  1. lair
    11.05.2019 21:46

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

    А точно можно?


    Вот, допустим, нужно мне очень простое: при загрузке новой картинки в Google Photos, проверить, есть ли на ней птица, если есть — попробовать определить, какая, результат написать в комментарий к картинке и отправить мне на почту. Естественно, никакой принадлежащий мне компьютер в этот момент не включен, фотографии делаются на телефон, и оттуда заливаются автоматом в облако.


    1. VadimLjovkin Автор
      11.05.2019 22:46

      Вот, допустим, нужно мне очень простое

      Хех, у нас разные представления о простоте )). Распознавание образов, работа кода на веб-сервере, связь с мобильным приложением… Нет, этого NeoBook (VisuaNEO Win) не даст, она ориентирована на более простые задачи, как те, что я перечислил в статье.

      Для веб-программирования есть другая среда программирования того же разработчика — VisualNEO Web. Я не являюсь специалистом в её использовании, но не думаю, что она сейчас может дать возможность распознавать образы (если только через специальный плагин).

      Все-таки, давайте помнить, что речь идет не о профессиональной IDE. В этом её сила, и её слабость.


      1. lair
        11.05.2019 22:52

        Я специально процитировал вашу фразу: "практически любого назначения". Описанная мной задача возникла у человека, который вообще не программист, и просто в свободное время смотрит на птичек. Казалось бы, самое то для "программирования для непрограммистов".


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


        Ну не знаю там, научить определять композитора по midi-записи музыкального произведения-то ее можно? Куда уж гуманитарнее задача.


        1. VadimLjovkin Автор
          12.05.2019 00:25

          Я специально процитировал вашу фразу: «практически любого назначения».
          Да, фраза не удачная. Слишком общая получилась по смыслу.


          1. lair
            12.05.2019 00:30

            Вот это и ответ на ваш вопрос "почему так мало людей знает" — потому что это просто не так.


            1. VadimLjovkin Автор
              12.05.2019 19:12

              Фраза не удачная, согласен, однако я сказал то, что пережил и то, что хотел сказать. NeoBook предоставляет колоссальные возможности, совершенно разного плана. Это не конструктор тестов, не конструктор электронных книг, не что-то другое узкоспециализированное. Все замыслы, которые у меня были я смог реализовать, равно как и мои студенты. «Практически любого назначения» все же не значит «любого назначения». Кроме того, смысл фразы уточнен контекстуально — речь идет о среде программирования для непрограммистов. Поэтому не корректно предъявлять к ней требования как к Delphi или другой профессиональной среде разработки.


              1. lair
                12.05.2019 19:24

                Все замыслы, которые у меня были я смог реализовать, равно как и мои студенты.

                Это говорит только о ваших замыслах.


                Поэтому не корректно предъявлять к ней требования как к Delphi или другой профессиональной среде разработки.

                А я и не предъявляю. Я всего лишь привел пример задачи, возникшей у непрограммиста — целевой аудитории этой программы.


                1. VadimLjovkin Автор
                  12.05.2019 21:02

                  Это говорит только о ваших замыслах.
                  Я достаточно подробно описал возможности NeoBook и рад пользоваться ими, делиться с другими. Если Вам это не нужно — не пользуйтесь.
                  Я всего лишь привел пример задачи, возникшей у непрограммиста — целевой аудитории этой программы.
                  Возможно этот непрограммист найдёт решение приведенной Вами задачи с помощью NeoBook, в отличие от меня. Я буду только рад.


                  1. lair
                    12.05.2019 21:08

                    Я достаточно подробно описал возможности NeoBook и рад пользоваться ими, делиться с другими. Если Вам это не нужно — не пользуйтесь.

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


                    Возможно этот непрограммист найдёт решение приведенной Вами задачи с помощью NeoBook, в отличие от меня. Я буду только рад.

                    … или возьмет другой, более подходящий для этого инструмент.


                    1. VadimLjovkin Автор
                      12.05.2019 21:28

                      Вы делаете из своего опыта обобщение масштабов учебного курса, но при этом игнорируете множество актуальных вещей.
                      Нельзя объять необъятное. Я показываю одну проверенную актуальную технологию, немного затрагиваю другие. Есть множество других технологий и других курсов, посвященных другим вещам. Это нормально.
                      … или возьмет другой, более подходящий для этого инструмент.
                      Совершенно верно.


  1. fori1ton
    11.05.2019 23:07

    Когда у тебя в руках молоток, всё вокруг кажется гвоздями. Я, конечно, не знаю специфики задач, но…

    интерактивные предметные и психологические тесты, анкеты и опросники
    Чем не устраивали десятки готовых конструкторов тестов разной степени интерактивности?
    электронные книги с гиперссылками, закладками и эффектом перелистывания страниц
    Чем не устроил HTML + CSS + браузер?
    интерактивные меню автозагрузки для DVD и CD дисков;
    В те времена, когда Windows ещё не отключала автозагрузку со сменных носителей, существовало немало конструкторов меню автозагрузки разной степени интерактивности. Чем они не устраивали?
    иллюстрированные базы данных с форматированным текстом, фильтрами поиска и печатью отчетов;
    Эталонная задача для Microsoft Access. Но при желании и Excel можно приспособить.
    защищенный веб-браузер для тестирования студентов (пока студент проходит онлайн тест, он не может открыть ничто другое ни в веб-браузере, ни на компьютере вообще);
    Переопределяем популярные горячие клавиши для работы с окнами, чтобы студент не альттабнулся в другое окно. Выдёргиваем сетевой кабель, чтобы не гуглил ответы. Если для прохождения теста нужен интернет — настраиваем hosts или файрвол.
    программу мониторинга активности и дистанционного (с телефона) управления компьютером для ребенка (свой родительский контроль);
    Чем не устраивали десятки существующих программ родительского контроля?
    удобную базу данных для хранения паролей;
    Чем не устраивали десятки существующих менеджеров паролей?
    скриншотер для пожилых родителей (чтобы в один клик из трея могли отправить мне скрин экрана на почту);
    Чем не устраивали существующие инструменты для создания скриншотов (во многих из которых есть возможность отправить скриншот по почте)?

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


    1. tBlackCat
      12.05.2019 14:25

      Не могу не согласиться.

      > NIH-синдром, который вы ещё и студентам передаёте.

      В моё время бытовала фраза: «Все начинающие программисты начинают с написания собственного редактора». Велика в ней доля правды.
      Вторая сторона данного продукта, впрочем, как и почти любой «визуализации» — привитие ложного чувства простоты, что крайне негативно сказывается впоследствии, когда человек, втянувшийся в эту простоту, становится невосприимчив к функциональному программированию. Ему становится довольно сложно воспринять даже Delphi.
      Что же до указанных автором задач, то они неплохо решаются и на Бейсике. По крайней мере большинство из них в рамках обучающего курса. Не столь уж и сложный язык, разработанный изначально аккурат для обучения студентов-непрограммистов
      ru.wikipedia.org/wiki/%D0%91%D0%B5%D0%B9%D1%81%D0%B8%D0%BA

      VadimLjovkin, привить базовые знания по данному языку — дело нескольких занятий, в течении которых можно постепенно и непринуждённо поднимать планку сложности.
      Был у меня случай, когда пришлось помогать одной студентке, очень далёкой от компьютера, не то, что от программирования. Она даже в тетрис играла, когда ей компьютер включат и загрузят игрушку.
      После пошагового объяснения написанного текста (третье или четвёртое задание, но не более) она весьма неплохо сама стала справляться. Да и с самим компьютером перестала бояться общаться.
      Программистом она не стала, да и не её это было дело, но к концу курса программирования в институте справлялась с весьма сложными заданиями.

      ps: Прошу людей знающих не пинать больно. Знаю, что после Бейсика учиться общаться с ассемблером тоже сложновато :-)


      1. FForth
        12.05.2019 15:21

        Иногда пытаюсь обратить внимание на такую книгу для понимания программирования «Cпособ мышления — Форт язык и философия для решения задач» (автор Броуди) -1984г которая приблизит и к пониманию ассемблера и метапрограммирования.

        P.S. Правда может, в какой то степени, повлиять на восприятие майнстрим языков программирования. :)
        Форт и в современных реалиях не потерял актуальности, применяется и находит своих сторонников.


        1. tBlackCat
          12.05.2019 15:33

          Не имел с Фортом дела, когда он появился у меня в вычислительном центре (тода я работал на СМ-4 и СМ-1420), я уже плотненько сидел на Си, не считая везессущего ассемблера. Ознакомился только на уровне документации, но по первым ощущениям Форт произвёл более, че приятное впечатление. Но, как водится, коллектив был жестко подсажен на ассемблер и повторять борьбу за внедрение нового языка сил уже не было после тягомотины с пробиванием Си.
          На самом деле, что Форт, что фортран — языки не столь неоднозначные, как Бейсик, даже очень хорошие в плане решения задач. Просто по тем временам основной задачей было более приближённое к железу программистское творчество.


      1. VadimLjovkin Автор
        12.05.2019 20:01

        Не могу не согласиться.
        > NIH-синдром, который вы ещё и студентам передаёте.
        Я ответил выше. Эта оценка не соответствует действительности. Мне нравится софт, нравится радоваться от наблюдения интересных решений в области интерфейса и функциональности. Я пользуюсь большим числом программ и считаю труд программистов чрезвычайно значимым. Блин, я даже испытываю удовольствие от их обновлений :).

        Более того, умение ценить программы созданные другими — это одна из причин, почему я считаю важным учить программированию непрограммистов — чтобы они делали простые проекты сами. Это гуманизирует жизнь. Т.е. высвобождает время непрограммистов — благодаря автоматизации какой-то рутины. Занимаясь рутиной человек перестаёт быть человеком… Когда непрограммисты делают для себя простые проекты сами — это высвобождает время профессиональных программистов для действительно сложных и социально значимых проектов, повышая ценность и общественную полезность их труда.

        Ему становится довольно сложно воспринять даже Delphi.
        Даже не знаю как Вам ответить. Наверное Вы просто хорошо знаете Delphi. Фраза «даже Delphi» о многом говорит. Вам кажется эта среда простой для новичка. Мой опыт преподавания говорит, что и в NeoBook новичок не сразу разберется. Все известные мне программисты, которые в Delphi делают плагины для NeoBook неоднократно подтверждали, что NeoBook — это лучшее, что можно придумать для новичка и в простоте не может сравниться с Delphi. А уж они прекрасно знают NeoBook, и в состоянии корректно сравнить её с Delphi.


        1. tBlackCat
          12.05.2019 21:41

          Delphi я знаю на уровне, что эта среда основана на паскале. Иными словами — не знаю от слова «совсем». Не моё это, я, будучи программистом, занимался в основном тем, что сейчас называется драйверами. Для более высокого уровня приложений кодил на Си.
          Причина банальна — широкая возможность ассемблерных вставок. Следует отметить, что по тем временам ещё и не было особого разнообразия в языках. Это потом, когда персоналки «пошли в массы» у нас, среды программирования стали расти, как грибы.
          И, возможно я и не прав, но по моему скромному мнению, изучив одну IDE, разобраться в иных уже не ахти какая задача. Да и в современности немало сред разработки, заточенных под довольно широкий спектр языков, что предоставляет пользователю комфортные условия.
          > Фраза «даже Delphi» о многом говорит. Вам кажется эта среда простой для новичка.
          Да ни о чём не говорит фраза. Просто в комментариях было упомянуто про Delphi, вот и я не стал выбиваться из общего контекста, не стал плодить сущности без необходимости.
          Но вот то, что Паскалевы системы весьма хороши именно для обучения программированию — факт и факт неоспоримый. И обучив человека работе с помянутой системой, можно дать ему очень добротную базу для дальнейшего самостоятельного изучения иных сред и языков, поскольку с некоторого времени среды разработки в данном классе языков приобрели некий общий стандарт и человек не лупится на новую IDE, как некто на ворота новые.
          > NeoBook — это лучшее, что можно придумать для новичка и в простоте не может сравниться с Delphi.
          Возможно, в данной среде ученик быстрее сваяет Hello World", но веть это такая незначительная малость — быстро увидеть плоды своего труда. Первый восторг проходит быстро, а в итоге может наступить болезненное осознание, что СТОЛЬКО времени угрохано не на то, что требуется. Подозреваю, что среди Ваших учеников есть такие, кто в итоге подсаживаются не программирование, вот их искренне жаль.
          Вот Вас интересуют интерфейсы. Но ведь у программиста со стажем есть свои библиотеки наработок и в них наверняка завалялись разнообразные решения.
          Мне тоже интерфейсы небезразличны, поскольку использую GIMP и для него LUA. Но вот чувство нехватки ассемблера очень сильнО, но не судьба. Используя две операционные системы лень не позволяет кодить два разо одно и то же.
          > Занимаясь рутиной человек перестаёт быть человеком…
          Не знаю, что Вы под рутиной подразумеваете. Для мена это занятие нелюбимым делом. Но если дело любимо, то не могу ситать его рутиной. Хотя без рутины, если подразумевать многократные повторения одного и того же, редко можно обойтись.
          Например, мне, как любому фотографу (давно сменил поле деятельности), постоянно приходится корпеть над обработкой и доработкой отснятого материала. Но ведь без этого никак. Зато окончательный результат приносит несравненное удовольствие.
          Впрочем это уже иная деятельность и программирование здесь является подручным инструментом — плагинчики.
          По поводу простоты среды разработки. Уже поминали в комментариях, что не надо оценивать IDE по всей совокупности возможностей, надо заострять внимание ученика только на самом необходимом. Да и радость ему будет великая, когда он сам раскопает что-то доселе неизвестное. А вся совокупность… можно сравнить с фотошопом, с его чудовищного объёмом багажом возможностей (уж про плагины молчу), который пользователь использует для устранения «красных глаз» и изредка для кадрирования. Это ведь любой просмотрщик, даже из бесплатных, делает прекрасно.


          1. Groramar
            13.05.2019 20:58

            Причина банальна — широкая возможность ассемблерных вставок
            К слову, в Delphi вставки отлично вставляются и работают. 'Видят' все переменные, функции и т.д. Удобно. Сам, бывает пользуюсь. Например: фильтры-свёртки на mmx запилил.


            1. tBlackCat
              13.05.2019 21:42

              Спасибо за расширение кругозора. Я ранее писал, что в Delphi полный профан. Листинг ещё могу разобрать через пень-колоду, да и то не очень заковыристый.
              Не имел возможности поработать с Паскалем, несмотря на его неоспоримые достоинства.


    1. VadimLjovkin Автор
      12.05.2019 19:39

      Чем не устраивали десятки готовых конструкторов тестов разной степени интерактивности?
      Я в статье написал чем — ограниченностью. А я не хотел мириться с теми ограничениями, которые были в то время.
      Чем не устроил HTML + CSS + браузер?
      Для меня это точно не проще. Кроме того, я хотел получить самостоятельный exe-шник.
      В те времена, когда Windows ещё не отключала автозагрузку со сменных носителей, существовало немало конструкторов меню автозагрузки разной степени интерактивности. Чем они не устраивали?
      Я пробовал, радовался, но их функционала мне становилось мало.
      Эталонная задача для Microsoft Access. Но при желании и Excel можно приспособить.
      Если владеть большим числом инструментов, то многое можно сделать их средствами. Однако я не владел этими инструментами. И, главное, зачем? Когда можно решать задачи довольно таки разноплановым и простым инструментом.
      Выдёргиваем сетевой кабель, чтобы не гуглил ответы.
      У меня тест был на веб-сервере. Дергать кабель — это неудобно и придется следить, чтобы не вставили обратно. Переопределять горячие клавиши — это полумера, потому, что есть мышь, флешки и прочее… А мой метод был надежным.
      Чем не устраивали десятки существующих программ родительского контроля?
      Некоторые ценой, другие отсутствием нужных мне функций.
      Чем не устраивали десятки существующих менеджеров паролей?
      Пробовал разные. То не нравился интерфейс, то замороченность. Делал для жены, в итоге и я пользуюсь — удобно получилось.
      Чем не устраивали существующие инструменты для создания скриншотов (во многих из которых есть возможность отправить скриншот по почте)?
      Самое главное — мне нужна была простота, чтобы родители (которые в другом городе) могли в один клик отправить мне скрин экрана (чтобы я мог посмотреть на «внезапно вылезшую табличку и сказал что делать»). А потом было приятно подарить им на праздник собственноручно сделанную программу, которая с ними здоровается при загрузке и удобна в использовании.
      Но уж больно ваши сценарии напоминают NIH-синдром, который вы ещё и студентам передаёте.
      Категорически не согласен. Я очень люблю разные программы изучать, и очень уважаю труд программистов. Ваше оценочное суждение, вероятно, имеет основания в Вашем опыте общения с кем-то. Но ко мне не имеет отношения.
      Да ещё и рекламируете им платный инструмент. Не надо так.
      Я обучаю работе с инструментом творчества и основам программирования. Я делюсь опытом и информирую, а не рекламирую (я не получаю никаких процентов с продаж). Для обучения им не нужно приобретать программу. Да и потом, студенты могут в компьютерном классе заниматься столько лет, сколько учатся в ТюмГУ.

      Купит программу только тот, кому она действительно нужна. Кроме того, для своих студентов и пользователей бесплатного онлайн курса я получил от производителя большую скидку (2850 руб за лицензию). Да, это не бесплатно. Но это более, чем доступная цена для такого удивительного инструмента. Кроме того, студенты в состоянии сделать самостоятельный выбор. В университетах обучают множеству платных программ, для того, чтобы будущий специалист мог в них работать. И что, теперь перестать их преподавать? Кому от этого будет лучше?


      1. FForth
        12.05.2019 19:54

        > Да, это не бесплатно. Но это более, чем доступная цена для такого удивительного инструмента.

        Извините, но в статье мало фидбэков для проникновения в грандиозность замыслов создателей программы для непосвящённого читателя.


        1. VadimLjovkin Автор
          12.05.2019 20:02

          Извините, но в статье мало фидбэков для проникновения в грандиозность замыслов создателей программы для непосвящённого читателя.
          Что Вы имеете в виду? Не понимаю Вашу мысль.


  1. firedragon
    12.05.2019 17:22

    На моей памяти была куча попыток создать для не программистов.

    * VBA
    * Конструкторы сайтов типа тильда
    * У Микрософта и Оракла для конструирования сайтов
    * ColdFusion Markup Language
    * PHP (успешный)
    * Nintex workflow (Кто знает тот поймет мою боль)
    * SharePoint workflow (Кто знает тот поймет мою боль, и фрустрацию)
    * SharePoint SPD workflow (Кто знает тот поймет мою боль, и фрустрацию и маты)
    * SharePoint workflow VS (Кто знает тот поймет мою боль, и фрустрацию и маты и дзен)


  1. mishem
    12.05.2019 20:03

    Чем не устраивали десятки готовых конструкторов…
    Чем не устроил HTML + CSS + браузер?
    Чем они не устраивали…
    ...

    Ну хотя бы тем, что все эти приложения нужно устанавливать и изучать. В данном случае, достаточно изучить NeoBook и выполнять все перечисленные задачи в одной программе.

    Читая комментарии я вижу что идет сравнение NeoBook с Delphi. Здесь не может быть никакого сравнения. Грубо говоря, в NeoBook заложены готовые компоненты написанные на Delphi или на другом языке. Или преподносятся такие же компоненты в виде плагинов. Все что остается пользователю NeoBook, подставить константы в окошках вызываемых при выборе определенной команды или другими словами действия.

    В NeoBook например не надо заботится о типе переменной. NeoBook сама определит, что содержится в переменной. Хорошо это или плохо? Думаю для тех кто ничего не понимает в программировании, хорошо.

    Есть ли те, кто после NeoBook начали изучать серьезные языки? Практически все. Как только более менее начинают понимать основы программирования, пытаются самостоятельно писать плагины для NeoBook. Другое дело, всем ли это удается?

    С чего лучше начать? Если в планах хочется стать программистом, однозначно не стоит начинать с NeoBook. Если нужно приложение которого нет и не хочется кого то просить, а есть желание написать самому и начать прямо сегодня, то однозначно NeoBook.

    Все зависит от желания, времени, возможности… Все как всегда и везде.


    1. tBlackCat
      13.05.2019 22:27

      > Грубо говоря, в NeoBook заложены готовые компоненты написанные на Delphi или на другом языке.
      Не совсем корректо сравнивать будет, но у серьёзных языков великое множество готовых библиотек. Помно, как долго копался в стандартных библиотеках (в описании, конечно) в одном из Сишных компиляторов. Изначально это был интерес или изучение возможностей, но он перерос во вполне конкретные мысли о применении той или иной функции в моей работе.
      Но и иная мысль была — просто изучение, без практической направленности, не приносит особой пользы. Быстро забывается неиспользуемое.

      > В NeoBook например не надо заботится о типе переменной. NeoBook сама определит, что содержится в переменной. Хорошо это или плохо? Думаю для тех кто ничего не понимает в программировании, хорошо.
      Вопрос крайне неоднозначный. Много копий было сломано над строгой типизацией. Нл есть и иная сторона вопроса. А именно — реализация. Если переменная строго определена, то это почти однозначно воспринимается любым компилятором, интерпретатором или обработчиком промежуточного кода. Это ведь в основе основ. А вот с переходом на продукт иного производителя с вольной трактовкой типа переменных могут возникать неприятности, да и что уж грешить — в новой версии того же производителяя подобное не исключено.
      Пала слов о оговорке «почти однозначно». Суть этого в том, что неспотря на переносимость в исходниках программ между аппаратными платформами есть ряд неприятностей, как то разный порядок следования бит в байте (было такое, но это проблема для низкоуровненых языков в ряде операций), разная размерность декларированных стандартных типов. Например, в Си long int имел разную длину на разных архитектурах. И так, ещё по мелочи.
      Конечно, в продуктах такого высокого уровня, как NeoBook, это неактуально, но свобода имеет и оьратную стороны медали — большую ответственность.
      В качестве примера попытки устранить все неоднозначности можно вспомнить про язык АДА
      Яркий пример высокоуровневого ЯП, на который было затрачено много средств и времени. Не думаю, что NeoBook даже близко подощел к подобному.
      Ошибки реализации можно считать досадным недоразумением в некритичных областях, но ведь само понятие критичности у всех своё. Банальное 2+2=5 может и посмешить порой, но вот, например, бухгалтеру будет совсем не смешно, когда налоговая штраф на контору выкатит. Исходя из подобного я начал понимать те конторы, которые до последнего противятся внедрению у себя новых версий софта, начиная с той же Windows, они проповедуют проверенную временем прописную истину про лучшее и хорошее.
      Вернёмся же к нетипизированным переменным. Думаю, что человеку, плотно подсевшему на это будет довольно проблематично перейти на язык со строгой типизацией. По крайней мере начертыхается с отладкой ;)
      А если язык (о, ужас!) тоже допускает ряд вольностей? Вопрос риторический, но злободневный. В том же Си переменная типа long int может принять в себя значение float, возвращаемое функцией и всё проскочит, если не принять соответствующих мер. Понятно, что это косяк программиста, но всё же…
      Только не подумайте, что я противник NeoBook. Любой инструмент можно и дОлжно использовать в своей области применения. И хорошо, что количество инструментов растёт. Оно же (количество) не с неба падает, а растёт исходя из вполне конкретных потребностей.
      Как говорили в StarTrek-е вулканцы — мира и процветания новому инструменту.


  1. borovichok13
    12.05.2019 20:04

    На мой взгляд самый низкий порог вхождения у Бэйсика, но только не современного Visual Basic. Есть бесплатный Free Basic c IDE.

    Я никогда не писал программы на Delfi, но когда надо было улучшить написанную студентом программу справился за один день: вставил вывод графиков при наличии опыта программирования только на Бэйсике. Программы пишу один раз в два-три года, сейчас на Julia. Для редкого написания программ надо использовать простые и бесплатные языки программирования.


    1. VadimLjovkin Автор
      12.05.2019 20:12

      Для редкого написания программ надо использовать простые и бесплатные языки программирования.
      Разве правильно решать за пользователя? У него есть выбор что использовать. Я остановил свой выбор на NeoBook и счастлив. Делюсь позитивным опытом с теми, кому он может пригодиться. Люди в состоянии выбирать. Для этого нужно лишь одно — понимание альтернатив. Про NeoBook (VisualNEO Win) очень мало информации. Несправедливо мало. Поэтому я и написал статью.

      Знаете, нет ничего плохого в том, чтобы поделиться радостью. В том числе радостью от творчества с использованием технологии, которая это позволяет. Я не стесняюсь говорить, что я люблю NeoBook. Потому, что эта среда разработки принесла мне много практической пользы и радости творчества. Уж точно она стоит всех потраченных денег (а я брал лет десять назад значительно дороже той цены, что сейчас). Если кому-то NeoBook не нравится, то ведь есть множество других сред разработки. На любой вкус. Разве это основание отвергать NeoBook? Да ещё делая выводы в отношении других людей, их личного выбора.


      1. lair
        12.05.2019 20:57

        Разве правильно решать за пользователя?

        Да, конечно. Это именно то, чем занимаются разработчики ПО. И, кстати, именно то, что вы сделали в своем курсе, поэтому ваш вопрос несколько, гм, лицемерен.


        1. VadimLjovkin Автор
          12.05.2019 21:17

          то, что вы сделали в своем курсе
          Ваши суждения мне не понятны. Я сделал бесплатный онлайн курс, доступный для всех, получил для всех пользователей (кто захочет) клевую скидку на шикарную среду программирования (по моей обоснованной опытом использования и преподавания оценке). Ни копейки не получаю с этого. Более того, я оплачиваю хостинг, доменное имя, улучшаю курс за свои деньги и своё личное время. И Вы называете это лицемерием? У меня нет слов.


          1. lair
            12.05.2019 21:20

            Я называю лицемерием то, что вы в одном месте принимаете решение за своих студентов, на каком языке им учиться программировать (и я говорю не об онлайн-курсе, я говорю о "семестровом элективе «Основы программирования для гуманитариев»" в государственном ВУЗе), а в другом невинно спрашиваете, правильно ли решать за пользователя.


            1. VadimLjovkin Автор
              12.05.2019 21:25

              Вот неверно называете, поскольку электив — это курс по выбору. Студенты читают материалы к курсу, прежде, чем выбрать его. Это раз. А предлагаю я лучшее, что у меня есть и в полезности чего я уверен на 100% как раз для гуманитариев. Поскольку сначала пробовал показывать элементы работы с NeoBook в другом курсе, где посвящал этому мало времени. Апробация показала пользу. В ответ на это я создал самостоятельный целый курс. Это два.
              Ваша оценка не только не верна, но и груба. Интересно, чем я успел заслужить такое отношение.


              1. lair
                12.05.2019 21:28

                Вот неверно называете, поскольку электив — это курс по выбору. Студенты читают материалы к курсу, прежде, чем выбрать его.

                Сколько еще курсов "программирование для гуманитариев" им доступно в ВУЗе, и на каких языках?


                А предлагаю я лучшее, что у меня есть

                Лучшее, что у вас есть, да. Сколько языков вы знаете кроме используемого в NeoBook?


                (пример с системой управления версиями еще помните, или уже нет?)


                Интересно, чем я успел заслужить такое отношение.

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


                в полезности чего я уверен на 100% как раз для гуманитариев.

                Ну, вот этим, например, заслужили. Гуманитарии — они такие же люди, как и не-гуманитарии.


                1. VadimLjovkin Автор
                  12.05.2019 21:42

                  Говоря «гуманитарии» я имею в виду людей не специализирующихся в области программирования и технических наук. Не передёргивайте.

                  Давайте просто завершим наше общение, ладно?
                  Я лучше что-нибудь полезное сделаю… Чего и Вам желаю.


                  1. lair
                    12.05.2019 22:00

                    Говоря «гуманитарии» я имею в виду людей не специализирующихся в области программирования и технических наук. Не передёргивайте.

                    Подождите, это я передергиваю? Вы используете несловарное определение, и говорите, что я передергиваю?


                    Знаете, скажем, биологи сейчас смотрят на ваше определение с большим непониманием.


                    Но ладно, фиг с ним.


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

                    Вы же понимаете, что под это определение попадает любой человек, который еще не начал заниматься программированием — скажем, человек, изучающий статистику, которому нужно проанализировать большой набор данных; да что там статистика, любой школьник кроме тех, которые в спецшколах. И вы утверждаете, что NeoBook для них "100% полезен"?


      1. borovichok13
        13.05.2019 19:55

        Каково время жизни NeoBook у студента? Сдал курс и забыл? Или он потом будет его использовать в постстуденческой жизни? Известен процент ли использующих позже?

        Я согласен с тем, что в идеале каждый подбирает язык программирования под себя.


        1. VadimLjovkin Автор
          13.05.2019 20:45

          Известен процент ли использующих позже?
          Такой статистики пока нет, к сожалению. Через пару-тройку лет сделаю опрос (система Moodle, на которой построен курс, это позволяет). Самому интересно.


    1. Groramar
      13.05.2019 21:04

      Для редкого написания программ надо использовать простые и бесплатные языки программирования.
      Delphi сейчас бесплатен для любых разработок с ограничением по прибыли в год (Community Edition). А первую программу, думаю, можно написать в течение часа, посмотрев видео на ютубе.


  1. FForth
    12.05.2019 20:56

    >Делюсь позитивным опытом с теми, кому он может пригодиться. Люди в состоянии выбирать.
    И пишете платные книжки, что в них попало вне бесплатного позитивного опыта? :)


    1. VadimLjovkin Автор
      12.05.2019 21:20

      И пишете платные книжки, что в них попало вне бесплатного позитивного опыта? :)

      В моем бесплатном онлайн курсе черным по белому написано, что всё содержание учебника и практикума представлено в разделе «лекции» и «практикум», и уже существенно больше, поскольку я постоянно улучшаю курс глядя на трудности студентов.
      Заголовок спойлера
      Теперь мне ещё и оправдываться приходится за то, что я делаю бесплатно))


      1. FForth
        12.05.2019 21:59

        Стоп а, зачем на бесплатном и открытом для изучения курсе необходима регистрация на сайте?
        Неужели из-за гранда В.Потанина? Какой «его» интерес в этом.

        P.S. Есть ли на курсе сравнение с другими общепринятыми практиками программирования и в какой степени?
        То, что Вы их не смогли освоить (судя по Вашим сообщениям в треде) — это не оправдание для учебного курса.


        1. VadimLjovkin Автор
          12.05.2019 22:16

          а, зачем на бесплатном и открытом для изучения курсе необходима регистрация на сайте?
          Неужели из-за гранда В.Потанина? Какой «его» интерес в этом.
          Регистрация нужна для моих студентов, чтобы я мог видеть их в системе и для доступа к функциям статистики, сообщений и прочего :)
          Есть ли на курсе сравнение с другими общепринятыми практиками программирования и в какой степени?
          Такая задача не ставилась.
          То, что Вы их не смогли освоить (судя по Вашим сообщениям в треде) — это не оправдание для учебного курса.
          Вы смешиваете описание того как я узнал о NeoBook и причины создания курса. Мои мытарства описаны как то, что привело меня к NeoBook, а учебный курс родился годами позже, когда я понял, что эта среда программирования будет полезна и другим людям.


  1. Fox_exe
    12.05.2019 22:12

    Так и не понял, чем это все отличается от уже упомянутой VisualStudio?
    Причем, помню, мне было значительно проще освоить C# под .net + WPF, чем VisualBasic.

    А вообще есть такая замечательная штука, как Scratch, где программного кода нет вообще, но оставлена голая логика, что, по сути, и есть программирование. Только без языка.


    1. VadimLjovkin Автор
      14.05.2019 06:33

      Так и не понял, чем это все отличается от уже упомянутой VisualStudio?

      Доброго времени! Поскольку я не работаю в VisualStudio и тех языках, которые она поддерживает, то спросил друга, который имел с ней дело и сейчас пишет плагины к NeoBook в Delphi. Его ответ (только про VisualBasic, если Вас устроит):
      «Основное отличие NeoBook — это простота написания кода. На мой взгляд это самое большое и единственное отличие со знаком „плюс“.
      Не надо думать и вспоминать команды — всё это есть в окне выбора команд, там же и описание команды и что она делает. Фактически весь процесс программирования сведён к минимуму — нарисовать кнопочки, расставить картинки и подписи, и в этих же созданных картинках и кнопочках написать что они делают всего лишь выбрав команды (действия). Все свойства созданных объектов выбираются в самих объектах в наглядной форме.
      Смысла описывать преимущества и недостатки не вижу — каждый выбирает по себе. Если вы не собираетесь стать профессиональным программистом (к слову — профессионалы и не пишут на VisualBasic) но хотите быстро достичь результата при минимуме затрат — NeoBook лучшее решение для этого.
      И ещё раз повторюсь — простота кода — единственное отличие при других минусах NB.»


      1. Fox_exe
        14.05.2019 14:29

        Забавно, но и в VS есть выбор готовых действий для кнопочек/формочек.
        Есть вполне удобный (И очень функциональный) конструктор форм, где тоже многие действия можно сделать одной лиш мышкой.
        Ну а косательно кода — тотже C# имеет «Говорящие» имена для всех функций. Всё понятно и логично. А IntelliSense подсказывает и дописывает код. А также показывает краткую справку по всем функциям и даже варианты её использования.


        1. VadimLjovkin Автор
          14.05.2019 19:57

          Кнопки и т.п. есть и в Delphi, и есть люди, которые считают, что человеку, который не собирается быть профессиональным программистом, но хотел бы уметь делать для себя простые приложения нужно изучать сразу Delphi.
          Я не смогу ответить Вам иначе, как повторив приведенные выше слова — NeoBook проще. Именно этим и ценна. Для непрограммистов, естественно.


    1. VadimLjovkin Автор
      14.05.2019 06:35
      -1

      А вообще есть такая замечательная штука, как Scratch
      Да, я пробовал в этой среде учить ребёнка 7 лет. Хорошая штука! Всем рекомендую до 11-14 лет использовать именно Scratch! Но если ребенок постарше или уже не ребенок, то на мой взгляд лучше начать с NeoBook. Поскольку она позволяет делать самостоятельные приложения широкого спектра назначения и профессионального качества. Т.е. позволяет решать вполне реальные задачи.


      1. FForth
        14.05.2019 13:14
        +1

        > Но если ребенок постарше или уже не ребенок, то на мой взгляд лучше начать с
        > NeoBook. Поскольку она позволяет делать самостоятельные приложения широкого
        > спектра назначения и профессионального качества. Т.е. позволяет решать вполне
        > реальные задачи.

        Где и на какие программы широкого спектра можно посмотреть сделанных на NeoBook?
        а ещё лучше в открытом доступе, например на Github.


        1. VadimLjovkin Автор
          14.05.2019 20:00

          На форуме neobooker.ru в разделе «Проекты NeoBook» выложены различные проекты, которыми поделились форумчане. Там все проекты с исходниками. Можно составить представление.