Pull to refresh

Comments 119

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

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

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


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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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


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

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


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

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


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

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

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

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

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

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


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

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


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

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

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

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


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

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

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


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

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


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

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


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

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


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

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

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

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


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

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


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

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


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

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


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


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

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

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


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

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


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

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


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


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

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


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

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

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

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


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

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

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

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

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

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

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


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

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


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

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

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

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


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

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

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

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

Мы живём в большом мире. Не всё закрытое ПО недоступно для рядового пользователя. К счастью.
преодолевать довольно высокий порог вхождения в мир Delphi
Откуда такая информация? ИМХО в Delphi минимально низкий порог вхождения. Он дополнительно понижен громадностью «мира Delphi»: огромное количество книг и сетевых источников + куча форумов, где всегда можно получить совет по возникшей проблеме. А сколько таких источников для NeoBook?
Термин «порог вхождения», судя по всему, мною выбран не совсем удачно.
Можно сказать иначе: Delphi — это океан (как возможностей, так и книг, форумов, и других источников). Порог вхождения в него — один шаг. А дальше? Как управиться с океаном?
NeoBook — это что-то вроде бассейна. Вода прозрачная, опытных пловцов вокруг не много, но они рядом и всегда можно спросить.
Есть русскоязычный форум и есть англоязычный, есть книги, есть бесплатный онлайн курс на русском языке. Все основные источники приведены в разделе «Ссылки» к статье. Этого более, чем достаточно, чтобы освоить NeoBook.
Порог вхождения в него — один шаг. А дальше? Как управиться с океаном?
А зачем управляться с океаном, если не нужно? Кто не умеет плавать и не хочет учиться — плещутся у берега и довольны. Тут проявляется когнитивное искажение: в реальности часто оправдан взгляд, что не надо колоть орехи большой королевской печатью или дорогим микроскопом. И этот взгляд переносится в виртуальность IT, где он зачастую оказывается совершенно не верен.
Не обязательно погружаться в океан целиком. Даже находясь около берега на Delphi можно сделать немало. Инструмент делают всё более удобным в этом направлении (можно вспомнить тот же ЛайвБиндинг) — минимумом кода можно делать вполне работающие приложения.
функционал NeoBook почти неограниченно расширяем с помощью плагинов
Зашел на официальный сайт — вижу что плагины вполне себе недешево стоят. Каждая работа должна быть оплачена, но мое имхо что для виндос лучше чем Визуал Бейсик или Шарп или Дельфи — нет. (для новичков в программировании)
К счастью необукера, абсолютное большинство плагинов бесплатны. У меня установлено более 130. Из них только один платный — NeoBookDBPro (для работы с базами данных). Но для баз данных есть и бесплатные плагины.
для виндос лучше чем Визуал Бейсик или Шарп или Дельфи — нет. (для новичков в программировании)

Разница между NeoBook и Delphi, образно говоря, как между велосипедом и космическим кораблем «Буран». Что лучше — зависит от целей.
Некорректное сравнение: велосипед и Буран неуниверсальны, а Delphi универсален, как и многие другие языки: можно и в космос и за хлебом в ближайший магазин.
Вот именно эта универсальность и не позволит новичку управиться с Delphi. Ведь универсальностью ещё нужно уметь управлять (это я хотел показать своим сравнением). Особенно если новичок не собирается быть профессиональным программистом, но хотел бы уметь писать простые приложения.
Сама NeoBook написана в Delphi и создана для гораздо более простых задач.
Вот именно эта универсальность и не позволит новичку управиться с Delphi. Ведь универсальностью ещё нужно уметь управлять
Зачем управлять? Как универсальность Delphi может не позволить? Не нужно делать приложение для БД или Web — не используй компоненты со вкладок БД или Web. Просто раскладывать по форме кнопочки и писать тривиальные обработчики события нажатия на кнопочку можно научить за час. Если больше ничего не нужно, то и учить ничего не надо. И про универсальность можно забыть пока что-то еще не будет необходимо.
К слову говоря, Delphi уже и с вебом вполне справляется на уровне формошлёпства (в хорошем смысле). Есть такой замечательный инструмент UniGUI. Можно вообще не иметь понятия о вебе и веб технологиях, и при этом делать вполне работоспособные веб приложения. Я, например, JS/HTML/CSS практически не знаю (я этим не горжусь, просто невозможно объять всё программирование), но это не помешало сделать с пяток достаточно сложных приложений, всего больше сотни форм.
Delphi уже и с вебом вполне справляется
Приятно знать, что Delphi активно развивается и становится всё доступнее для новичков! И все же, это среда для профессиональной разработки. Я же рассказываю о среде программирования специально созданной для непрограммистов.
Вот именно эта универсальность и не позволит новичку управиться с Delphi.

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

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

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

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

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

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

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

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

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


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

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


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


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


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

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


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

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


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

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


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

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

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

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

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

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

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

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

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


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


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

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


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


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

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


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

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


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

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

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

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

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

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

чем проще инструмент, который позволяет освоить алгоритмическое мышление
Еще одна распространенная ошибка начинающих. Инструмент и язык не позволяют освоить алгоритмическое мышление. Как и естественный язык не позволяет освоить худ.литературу. Языки — только средство, чтобы читать книги с литературными произведениями или с кодами программ.
Типичная ошибка при самообучении.
Так и есть.
Инструмент и язык не позволяют освоить алгоритмическое мышление.
Согласен, нужна практика решения реальных задач.
нужна практика решения реальных задач
Прежде, чем решать задачу, надо узнать, как решают подобные типовые задачи. А это не про языки.
Похожий проект — среда Clarion от SoftVelocity.
Тоже давно на рынке (с 1986, если не ошибаюсь).
У Clarion ориентация на приложения работы с данными.
Есть сильная сторона — язык шаблонов. Т.е. язык генерации исходников на основании метаданных.
Спасибо! Интересно будет посмотреть. Ещё не сталкивался с этой системой.
UFO just landed and posted this here
$1000 единоразово.
Обновления версий — $400/год, но никто не заставляет.
почему же так мало людей знает о том, что с помощью NeoBook можно самостоятельно создавать функциональные и красивые приложения практически любого назначения?

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


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

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

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

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

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

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


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


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

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

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

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

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


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

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

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

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


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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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


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

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


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


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

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


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

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

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

Давайте просто завершим наше общение, ладно?
Я лучше что-нибудь полезное сделаю… Чего и Вам желаю.
Говоря «гуманитарии» я имею в виду людей не специализирующихся в области программирования и технических наук. Не передёргивайте.

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


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


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


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

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

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

Я согласен с тем, что в идеале каждый подбирает язык программирования под себя.
Известен процент ли использующих позже?
Такой статистики пока нет, к сожалению. Через пару-тройку лет сделаю опрос (система Moodle, на которой построен курс, это позволяет). Самому интересно.
Для редкого написания программ надо использовать простые и бесплатные языки программирования.
Delphi сейчас бесплатен для любых разработок с ограничением по прибыли в год (Community Edition). А первую программу, думаю, можно написать в течение часа, посмотрев видео на ютубе.
>Делюсь позитивным опытом с теми, кому он может пригодиться. Люди в состоянии выбирать.
И пишете платные книжки, что в них попало вне бесплатного позитивного опыта? :)
И пишете платные книжки, что в них попало вне бесплатного позитивного опыта? :)

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

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

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

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

Доброго времени! Поскольку я не работаю в VisualStudio и тех языках, которые она поддерживает, то спросил друга, который имел с ней дело и сейчас пишет плагины к NeoBook в Delphi. Его ответ (только про VisualBasic, если Вас устроит):
«Основное отличие NeoBook — это простота написания кода. На мой взгляд это самое большое и единственное отличие со знаком „плюс“.
Не надо думать и вспоминать команды — всё это есть в окне выбора команд, там же и описание команды и что она делает. Фактически весь процесс программирования сведён к минимуму — нарисовать кнопочки, расставить картинки и подписи, и в этих же созданных картинках и кнопочках написать что они делают всего лишь выбрав команды (действия). Все свойства созданных объектов выбираются в самих объектах в наглядной форме.
Смысла описывать преимущества и недостатки не вижу — каждый выбирает по себе. Если вы не собираетесь стать профессиональным программистом (к слову — профессионалы и не пишут на VisualBasic) но хотите быстро достичь результата при минимуме затрат — NeoBook лучшее решение для этого.
И ещё раз повторюсь — простота кода — единственное отличие при других минусах NB.»
Забавно, но и в VS есть выбор готовых действий для кнопочек/формочек.
Есть вполне удобный (И очень функциональный) конструктор форм, где тоже многие действия можно сделать одной лиш мышкой.
Ну а косательно кода — тотже C# имеет «Говорящие» имена для всех функций. Всё понятно и логично. А IntelliSense подсказывает и дописывает код. А также показывает краткую справку по всем функциям и даже варианты её использования.
Кнопки и т.п. есть и в Delphi, и есть люди, которые считают, что человеку, который не собирается быть профессиональным программистом, но хотел бы уметь делать для себя простые приложения нужно изучать сразу Delphi.
Я не смогу ответить Вам иначе, как повторив приведенные выше слова — NeoBook проще. Именно этим и ценна. Для непрограммистов, естественно.
А вообще есть такая замечательная штука, как Scratch
Да, я пробовал в этой среде учить ребёнка 7 лет. Хорошая штука! Всем рекомендую до 11-14 лет использовать именно Scratch! Но если ребенок постарше или уже не ребенок, то на мой взгляд лучше начать с NeoBook. Поскольку она позволяет делать самостоятельные приложения широкого спектра назначения и профессионального качества. Т.е. позволяет решать вполне реальные задачи.
> Но если ребенок постарше или уже не ребенок, то на мой взгляд лучше начать с
> NeoBook. Поскольку она позволяет делать самостоятельные приложения широкого
> спектра назначения и профессионального качества. Т.е. позволяет решать вполне
> реальные задачи.

Где и на какие программы широкого спектра можно посмотреть сделанных на NeoBook?
а ещё лучше в открытом доступе, например на Github.
На форуме neobooker.ru в разделе «Проекты NeoBook» выложены различные проекты, которыми поделились форумчане. Там все проекты с исходниками. Можно составить представление.
Sign up to leave a comment.

Articles

Change theme settings