Comments 148
Понятно, что для детей такой GUI не годится
Нормальный интерфейс, на мой взгляд.
В возрасте многих текущих детей, которые сейчас радостно пишут на Arduino IDE, мы благополучно писали на Delphi и Builder, и, черт возьми, неплохо это было.
У современной Arduino IDE от IDE — только название, и, на мой взгляд, это неправильно.
… да и с последовательной логикой нет проблем, из логики клепают триггеры, из триггеров регистры, это-же прикольно, бегущий огонёк
PS.Правда ребята, монтессорята, и не то что бы они все были гениями by design, некоторые очень даже наоборот…
PPS.Что с удивлением отметил некогда для себя, симуляторы им нравятся даже больше чем хлеборезка!
Про ардуину. Человек, который начал программировать в их IDE очень тяжело переходит на «взрослые» IDE. Привык потому что. И не понимает того, что там под капотом делается.
Считаю это мифом. Откуда он взялся вообще?
Считайте мифом.
Я озвучиваю свое мнение. Ардуинщиков, переходящих в профессиональное программирование микроконтроллеров не наблюдаю. Те, которых знаю, сразу начинали на «больших» IDE.
Вот именно.
> На новый инструмент переходят, когда текущего перестает хватать и за это имеет смысл заплатить.
И их надо учить почти с самого начала. Пробовал как-то. В итоге люди бросают, говорят что нафиг им это не надо, сложно.
Учить новый инструмент ради инструмента — какой смысл?
Никакого. Но на работу с более менее приличной зарплатой требуется не знание Arduino IDE, а знание профессиональных инструментов. Поэтому вот так. Эту пропасть просто так не перепрыгнуть.
Ардуинщиков, переходящих в профессиональное программирование микроконтроллеров не наблюдаюТак Ардуино это хобби на уровне «смастерить дома по мелочи», а программирование микроконтроллеров — это зарабатывание денег, для которого нужен осознанный выбор профессии и серьезная база.
Arduino это не IDE, это концепция программирования «черного ящика» (то есть абстрактного микроконтроллера
И кстати,
Ардуинщиков, переходящих в профессиональное программирование микроконтроллеров не наблюдаю
наоборот — тоже не вижу.
Хочется мне во всей квартире сделать такое управление, заказываю мелким оптом с Али Лилипадов, Нано и модули — получаю несколько рабочих устройств, каждое за условные 500 рублей.
Если надо мне сделать все еще миниатюрнее и работающее от батарейки не год, а три — покупаю мелким оптом подобные контроллеры и, уже немного посложнее, программирую сходным образом и получаю ящик устройств по 100 рублей.
Для продажи умного дома по своему протоколу — покупаю узкоспециализированные микроконтроллеры, осваиваю соответствующее программирование, получаю девайсы за 30 рублей, которые можно реально продавать и зарабатывать конвейерным потоком.
Каждый новый уровень сложнее и требовательнее к навыкам — примерно на порядок. Что совершенно логично. А количество специалистов на каждом уровне — меньше на порядок, что тоже не удивительно. На каждые каждые десять тысяч самоделкинов-ардуинщиков, приходится один разработчик ПЛИС.
http://mcuhq.com/11/msp430-launchpad-gui-composer-example
Очень наглядная вещь.
Школьников лучше учить базовой теории математики, физики, химии… а дальше разберутся, кому что интереснее.
А уже после создание такого инструмента для быстрого старта и обучения основам можно дорабатывать инструмент для аппаратной части, для тех, кто пройдет первый этап.
Практически любая IDE для плис умеет схемы рисовать как вы говорите. Кинул элемент и оно считает или мультиплексирует или сохраняет. Только основная сложность ПЛИС не в логике, а в интерфейсах. Математика, кстати, не так уж и нужна (в основном булева алгебра нужна, а она достаточно проста).
Насколько вообще востребованным является скилл проектирования микроконтроллеров в наше время, чтобы учить этому аж со школы? Сейчас мало кто этим занимается, поскольку рынок уже поделен и спрос на специалистов не большой.
И как много начинающих инженеров нужно Intel в год? Есть десяток производителей чипов, которые занимают 90% рынка, в каждом трудятся по этой тематике, допустим по 5000 инженеров, которые вполне справляются с R&D и обновлением линейки. Ну каждый нанимает ещё, предположим по 20 человек в год. И это на весь мир. По сравнению с количеством выпускников школ это мизерное количество, так что для 99% процентов выпускников эти знания будут абсолютно ненужны. Скорее им могут понадобиться знания по обычному программированию.
Не только интел разрабатывает микросхемы. А на FPGA-шников вообще спрос большой. Профессионалов как обычно не хватает.
По ключевому слову FPGA hh.ru выдал аж 122 вакансии по всем регионам и странам.
мало? в линкедине посмотрите.
Мало, учитывая, что во многих вакансиях это указано как дополнительный скилл. По языку C вакансий в 30 раз больше.
Или вы может вообще считаете, что в России не нужно дизайнить своих чипов, а только программировать готовые чипы от Intel, Apple, MediaTek, Broadcom, Qualcomm, Microchip и т.д. и т.п.?
В штатах около 300,000 электронщиков:
http://www.computerworld.com/article/2483786/it-careers/electrical-engineering-employment-trending-down.html
В любом случае, знания о базовых кирпичиках цифровой логики хорошо подкрепляют школьную физику и математику (двоичные числа, конечные автоматы, физика полупроводников), а идея устройства микропроцессора хорошо дополняет школьный курс программирования.
Если речь идёт про расширение кругозора детей на область схемотехники, то это можно сделать при помощи ограниченного набора абстрактных квадратиков из которых строится простая схема и по нажатию кнопочки
А вот если дитё выразит интерес к этой области, то можно переходить к объяснению, что все эти квадратики легко и непринуждённо описываются HDL-инструкциями. Но учить «визуальной схемотехнике» не надо — производительность такого подхода подплинтусная, вменяемых тулзов чуть больше нуля, переносимость практически отсутствует. И потом придётся переучивать, причём преодолевая детскую привязанность к красивым схемам, которые сами собой преобразуются в код.
А потом повзрослевшему ребёнку захочется кушать и придётся осваивать Java и ООП, в котором всё делается по-другому.
Думаете, что Java не осилят?
Как-то у вас слишком контрастно всё: если не Java, то сразу C. Есть языки высокого уровня, которые компилируются в native code. C примечателен разве что тем, что из него умудрились выкинуть даже такие базовые вещи, как прерывания, которые поддерживает почти любой процессор на уровне железа.
1. Можно ли обработать сигнал SIGINT на AtMega8? (на языке С, естественно)
2. Какому сигналу соответствует прерывание от Timer0 в AtMega? DOS прерывание INT21? (раз сигналы и прерывания это одно и то же)
А если серьёзно, то область применения схемотехники слишком узка и нет особой необходимости обучать 100500 школьников её тонкостям. А для общего представления пары картинок в презентации более чем достаточно. Так же как 99% школьников вполне удовлетворены простой картинкой, которая объясняет принцип работы ядерного реактора.
Но если речь идёт про твёрдую цель заняться схемотехникой профессионально, то визуальное HDL-программирование — это ловушка. Я лично знаю один замечательный проект, который скончался из-за срыва сроков по причине использования визуальной схемотехники. А использовалась там эта визуальная схемотехника из-за того, что исполнителей «так научили». Вот они и рисовали и перерисовывали до одурения схемы пока время не вышло.
При этом хочу особо заметить, что во первых я вовсе не выступаю против графических средств для создания «рыбы». Особенно если речь идёт об облегчении работы по прикручиванию «ног», подключения сторонних ядер и прочего подобного. Но это не должно заменять сам рабочий процесс.
И во вторых, я прекрасно осознаю ценность визуализации сложной схемотехники при документировании. Но эта визуализация должна получаться из HDL-я, а не наоборот.
P.S. Заранее извиняюсь, но стараниями доброжелателей я ограничен одним сообщением в час и, вероятно, скоро это ограничение ужесточится до одного сообщения в день. Так что, если у вас есть желание развить это обсуждение конкретно со мной, то пишите в личку.
Если следовать вашей логике, то можно спросить: «Хм, а зачем вообще растить школьников, которые будут программировать микропроцессоры? Этим должны заниматься инженеры после получения серьёзного образования в этой области.»
Сейчас, когда частота процессоров общего назначения перестала рости и становятся важными гетерогенные системы, которые включают как CPU, так и специализированные хардверные блоки, важно научить школьника видению системы как комбинации из хардвера и софтвера, а не как программирование растущих на дереве / привозимых с другого конца земли микропроцессоров.
Для успешного (само)обучения нужен базовый фундамент — математика, логика и т.д.
Но относится ли последовательная логика к «базовому фундаменту»? «Базовый фундамент» логики — это Аристотелевы силлогизмы, они же — Булева алгебра.
половина фундамента цифровой электроники
Я очень рад, но ветка начиналась с того, что
Программирование не нужно — большинству нужен Word и Excell. А кому надо, тот начнет сам читать, учить, пойдет на некие внешкольные занятия
…
Для успешного (само)обучения нужен базовый фундамент — математика, логика и т.д.
Я добавил, что схемотехника — тоже не нужна, равно как и программирование. А нужны более базовые математика и логика, для освоения которых программирование — сподручнее, чем макетирование, т.к. требует меньше специальных навыков.
UPD:
Почитал немного про секвенциальную логику. В чём трудность программной реализации? Вы никогда не писали конечный автомат?
Для FPGA много задач, не связанных с проектированием микропроцессоров.
Собственно в середине 1980-х это и спрашивали. Сейчас, когда частота процессоров общего назначения перестала рости и становятся важными гетерогенные системы, которые включают как CPU, так и специализированные хардверные блоки, важно научить школьника видению системы как комбинации из хардвера и софтвера, а не как программирование растущих на дереве / привозимых с другого конца земли микропроцессоров.
Машины тьюринга я в универе программировал, и это было куда понятнее множества современных языков.
По поводу сложно и неудобно — helloworld на МК для меня была мигалка светодиодом, на верилоге — 8-разрядный счетчик, на лабвью — запись данных с ком-порта в эксель файл и вывод их на график. Поэтому если что-то позволяет получить результат быстрее при прочих равных — оно лучше.
Я вообще не имею представления о программировании, и если верилог позволяет хотя б представить происходяще в виде схемы. то все остальное — это очень темный и очень дремучий лес.
По поводу темного леса, даже не знаю что сказать. Для Ардуино от C требуется такой минимум-миниморум, что я даже не могу прикинуть, сколько времени потребуется на освоение синтаксиса. Полчаса? Час? День? Мне кажется, оно того стоит. Посмотрел на скриншоты Лабвью и ужаснулся, компактность «кода» — это не про нее. Видимо это совсем узкоспециализированный инструмент, мне сложно судить.
Касаемо Хелловорда — скетч на С для Ардуинки, аналогичный вашему лабвьюшному, набрасывается за несколько минут, а график Эксель сам строить умеет.
По поводу ардуины — возможно, я чего-то недопонял, возможно дело в том, что все учебники по чему бы то ни было пишутся людьми, в этом разбирающимися настолько хорошо, что многие вещи подразумеваются, но не описываются. Вот пример как раз с порта читать http://robocraft.ru/blog/arduino/76.html — возьмите любой кусок кода и посмотрите на него с точки зрения человека, не знающего. Скорее всего это будет воспринято как абракадабра, перемежаемая некими очевидными строками. Логики этой абракадабры понять сложно. Те учебники. что я читал, обычно написаны так: нам надо действие Х. Подключаем библиотеки (зачем? можно ли без них? Как их выбирать, эти библиотеки? Где их вообще брать и тд), инициализируем порт (опять — зачем? что будет если не инициализировать, каков механизм инициализации порта), пишем код. О написании кода обычно идет по станедартной схеме — переменные такие, сякие, массивы, примитивы и прочее. Для чего оно? как его готовить, с чем есть, где что использовать — сиди и догадывайся сам. А уж если потребуется нестандартная задача (не мигалка, не часы, не управлялка моторчиком) — то вообще не знаешь, что делать — ни примеров, ни библиотек, ничего. А если туда еще и матан прибавляется?
Я не к тому. что язык Х плох, а Y — хорош, а к тому, что многие очевидные вещи для непосвященных совсем не очевидны. Ну скажем, умею я обрезать яблони, могу сказать — вот на этой ветке яблоки будут, на этой — через год будут, на этой будут, если укоротить. а эту вообще убрать. Большинство непосвященных видит дерево, или отдельные ветви в лучшем случае. Можно долго перечислять все эти плодушки, кольчатки, копьеца, углы отхождения, типы почек и тд и тп, но если показать на примере 3-4 деревьев все нюансы, то понимание предмета резко улучшается. А пока мне все это напоминает комп. игру — пинаем крыс, берем уровень, прокачиваем владение компьютером или звездолетом. Мигалки светодиодами, вывод библиотеки символов на дисплей — это. конечно, нужно. но ни на шаг не приближает к решению задачи. В чем мне лично понравилась лабвью — в том, что там можно решать задачу — обрабатывать нужное, а все дисплеи, порты, кнопки и ручки уже готовые — прикрутил и все. А если мне нужна мигалка на светодиоде — то проще взять 2шт КТ315 или один корпус логики.
Таки надо понимать, что Ардуино это хоббийная железка для мелких домашних самоделок. Более того, есть даже хейтеры Ардуино, которые бесятся от того, когда видят цены на всякие модули, потому что хоть они и стоят 100-200 рублей, реально там комплектующих на порядок меньше. Плюсы именно в простоте и модульности, развитом сообществе, на все вопросы легко найти ответ, не надо углубляться в программирование микроконтроллеров на низком уровне, народ охотно платит за это. Но что-то серьезное или серийное на Ардуино делать нет смысла, выйдет или дорого, или громоздко, или просто колхозно.
Например, для простого моргания светодиодом достаточно простейшего мультивибратора, или вообще конденсатора с парой резисторов — цены на такие компоненты уже порядка десятков копеек — а не сотен рублей.
А Лабвью и подобный софт — предназначен для серьезного профессионального использования в очень узкой нише. Я сомневаюсь, что от Ардуино будет хоть какой то толк в автоматизации процессов — для которых используется Лабвью. Это совершенно разные уровни и задачи. Я даже не представляю, возможно ли и будет ли рентабельно сделать с помощью Лабвью — простейший дистанционный диммер для освещения в комнату /*что я собираюсь замутить на выходных*/.
Хотя, я думаю, изучить основы C на уровне пригодном для Ардуинки, вам лишним не будет, просто для собственного развития, что бы не быть «подобным флюсу». Это довольно простой язык, со строгой типизацией, в нем сложно «выстрелить себе в ногу» и тп.
Мигалки светодиодами, вывод библиотеки символов на дисплей — это. конечно, нужно. но ни на шаг не приближает к решению задачи.— смотря какая задача. Если нужно работать с com-портом — да, мигать светодиодом не обязательно. Если нужно чего-то выводить на дисплей — нужно хоть немного понимать, как дисплей работает.
А если мне нужна мигалка на светодиоде — то проще взять 2шт КТ315— ну да. А если 315 нет, а 361 есть — задача не решается? А то я впихнул в те же места на плате такие же корпуса а оно не работает. Если человек плохо понимает, что он делает — инструмент не виноват.
C для Ардуино, это сложно или неудобно?.. Там всего то нужно — четыре оператора да три команды
Можете посмотреть на примеры программирования машины тьюринга, оно точно мало на что похоже…
Зачем сразу школьников ПЛИСам учить. У нас что, все студенты уже с ними знакомы? Давайте может сначала студентов профильных и смежных специальностей этому обучим, и только потом школьников. У нас в институте были какие-то цифровые автоматы, так их реально 20% студентов понимала, а остальные сдали кое-как и забыли.
Это часть картины мира, ее необязательно учить в деталях. Базовые кирпичики цифровой системы: логический элемент, тактовый сигнал, D-триггер. Двоичные числа. Концепция конечного автомата. Идея устройства процессора.
В 1980-х спрашивали, зачем школьников учить программированию. Вы считаете, что и программированию школьников учить не нужно?
Я не имею ничего против внешкольных «мастерских архитекторов микросхем», но в общеобразовательной школьной программе для всех тому, что вы предлагаете, места нет.
Ну ладно, отложим процессор в сторону — это действительно не для всех.
Но вы согласны с утверждением: «концепции переменной в программе, массивов, циклов while и for и подпрограмм — это концепции одинаковой степени фундаментальности, как и концепции логического элемента И-ИЛИ-НЕ, элементарного хранилища бита информации (D-триггера) и конечного автомата»?
Насчет языка SystemVerilog — его подмножество можно объяснить за пару уроков. Писать логику лучше на нем. А как еще? Картинками (схемами и диаграммами состояний)? Ну это как изучать программирование не на Паскале или Питоне, а блок-схемами, кстати, так пытались делать для детей (к меня есть детская книжка начала 1980-х годов с блок-схемами).
«Но вы согласны с утверждением» — никогда не утвержал обратного. Уже хотя бы потому, что я это преподаю.
«Можно объяснить за пару уроков» — многое можно объяснить за пару уроков. С той же логикой и автоматами замечательно работается на листочке в клеточку. В том числе и на контрольных. В том числе и в ВУЗе.
Код на Verilog из которого синтезируются схемы выше:
http://www.silicon-russia.com/public_materials/2016_11_04_one_day_mipsfpga_connected_mcu_materials_public_for_the_website/06_optional_introductory_materials_if_necessary_for_the_audience/06_exercises/exercise_3_counter_shift_fsm.html
// Smiling Snail FSM derived from David Harris & Sarah Harris module pattern_fsm_moore ( input clock, input reset_n, input a, output y ); parameter [1:0] S0 = 0, S1 = 1, S2 = 2; reg [1:0] state, next_state; // state register always @ (posedge clock or negedge reset_n) if (! reset_n) state <= S0; else state <= next_state; // next state logic always @* case (state) S0: if (a) next_state = S0; else next_state = S1; S1: if (a) next_state = S2; else next_state = S1; S2: if (a) next_state = S0; else next_state = S1; default: next_state = S0; endcase // output logic assign y = (state == S2); endmodule //---------------------------------------------------------------------------- // Smiling Snail FSM derived from David Harris & Sarah Harris module pattern_fsm_mealy ( input clock, input reset_n, input a, output y ); parameter S0 = 1'b0, S1 = 1'b1; reg state, next_state; // state register always @ (posedge clock or negedge reset_n) if (! reset_n) state <= S0; else state <= next_state; // next state logic always @* case (state) S0: if (a) next_state = S0; else next_state = S1; S1: if (a) next_state = S0; else next_state = S1; default: next_state = S0; endcase // output logic assign y = (a & state == S1); endmodule
«Не абстрактное без «прощупывания» этого на FPGA плате?» — без понятия, что вы имеете в виду под «прощупыванием», но совершенно точно уверен, что графика с тремя состояниями и шестью переходами намного нагляднее любого из форматов представления, предложенных на странице 177.
Ну ладно, я вашу позицию понял. Она может быть верна, но чтобы сделать окончательный вывод, мне нужно сделать чистый эксперимент на детях. Вот с этим конечным автоматом (и вообще классом автоматов для распознавания последовательностей), а также простым процессором. Что я и собираюсь сделать.
нагляднее, когда ваш мозг уже связал ее с неким процессом во времени
То же можно сказать и о коде, пока нет знаний, как он будет выполняться — это просто набор букв.
Зато схема компактна, а код слишком длинен, чтобы воспринимать его целиком.
Так что пора попрощаться с мечтами, что все школьники, поигравшись с ардуино, станут программистами, системщиками и т.п., половине из них это не будет интересно, но в этом-то и кайф, те, кому интересно, познакомятся и с ПЛИС, и так далее.
Для обучения все же немного дискретной логики нужно использовать, потом ардуино, или контроллер 8051, потом ПЛИС…
Есть нисходящее изучение и восходящее. Вначале проц, потом отдельные блоки, так и до транзисторов дойдем и наоборот.
Одним из недостатков обучения является отсутствие короткой связи между созданием и результатом (может растянуться на дни/недели), дальнейшее социальное одобрение (показать другим).
Сложность IDE способствует сложной кривой обучения.
Это было вводные.
Теперь упрощаем. Ориентирование — как на детей от 3-х лет, так и на представителей старшего поколения, которые любят говорить «я ничего не понимаю в технике» или «я боюсь сломать/повредить». То есть нужно заинтересовать?
Самый простая версия — игра. Причем никакой привязки (!) к микроэлектронике. Простенькая игрушка, хоть в стиле «3 в ряд». Можно подобрать и другие жанры (на самостоятельную разработку).
Как и в любой игре — есть уровни. Каждый следующий уровень — добавляется новые функции.
***
Уровень, где уже мы не просто уничтожаем блоки, а пытаемся строить логические схемы, которые будут уничтожать блоки. (отсылка к игре Factorio)
***
Как насчет теперь не просто играть в игру, а выполнять настоящие заказы? Например: «создать такую-то схему». Получим бонусы, потратим в той же соц.сети (это к примеру). Человеку опыт.
***
Формируется онлайн-библиотека с детскими поделками. Постепенно появляются и более серьезные работы, которые вполне сгодятся и для реальных задач.
***
Заводы заинтересованы в поддержке экосистемы и будут присылать свою рекламу: «всего за N$ вы можете распечатать любое издели из библиотеки или создать свое изделие».
— Подведем итоги:
— для решения проблемы нужен [эко]системный подход;
— быть готовым к тому, что решение может принести пользу и другим отраслям;
— использовать идеологию OpenSource и другие подобные подходы;
— игровой дружелюбный интерфейс;
— переход в реальность (игра тут выполняет роль песочницы);
И т.д.
Задача — заинтересовать людей. Больше интересующихся — больше тех, кто станет системщиками. Немалую важность играет и доступность материалов (тип изложения, язык).
Игровой подход может вообще избавить человека от знания какого-либо языка. Тот же тетрис — не требует перевода на другие языки. Тут названия блоков (в той же схемотехнике) — это всего лишь графический элемент.
P.S. возможно, кому-то мой подход может не понравится. Не спорю. Приглашают к аргументированной беседы. Также хочу увидеть критику моих подходов, ибо в «споре рождается истина». Не исключено, что я могу быть не прав. Либо проведу корректировку методов, чтобы они более подходили реальности. Это все всего лишь концепт.
Спасибо за внимание!
Однако, будь у него профессия, связанная с физикой ускорителей и элементарных частиц, он бы так же носился везде с идеями внедрения физики элементарных частиц в школьный курс? Ходил бы по школам с мини-ускорителями? Приставал бы к ITER'овцам, чтобы они организовали экскурсии для первоклашек?
http://school.iis.nsk.su/lshyup-2017/masterskie-6
Мастерская №1 «Мастерская архитекторов микросхем»
Мастер: Юрий Панчул
Цифровое железо, от логических элементов до собственного процессора
Хотите узнать, как проектируют микросхемы в современных устройствах — от телефона до космического корабля? Последние 25 лет это делают с помощью методологии логического синтеза кода на языках описания аппаратуры. Именно эту технологию мы выучим в нашей мастерской и применим для проектирования собственных устройств.
Мы начнем с трех ключевых кирпичиков цифровой электроники — логического элемента, тактового сигнала и D-триггера, памяти для одного бита информации. Для наглядности мы освоим их старомодным способом, соединяя проводами микросхемы малой степени интеграции на макетной плате.
Затем мы повторим построенные схемы на языке описания аппаратуры SystemVerilog и промоделируем их на программе-симуляторе. Но как мы можем воплотить их в микросхемы? Ведь заказ коммерческой микросхемы на фабрике очень дорогой? К счастью, существуют “перестраиваемые” программируемые логические интегральные схемы (ПЛИС), платы с которыми которые мы и будем использовать для наших занятий.
Помимо упражнений с арифметическими блоками и конечными автоматами, мы попробуем построить простой процессор, похожий по микроархитектуре на процессор Mongoose-V внутри космического корабля New Horizons, который год назад пролетел мимо Плутона.
Заодно мы изучим немного программирования на ассемблере, концепцию прерываний, сравним свой процессор с промышленными микроконтроллерами и встроенными микропроцессора, вплоть до микропроцессора EyeQ5 для самодвижущегося автомобиля, который планируется для выпуска в 2020 году.
Конечно, многое зависит от преподавателя. Один и тот же предмет у разных преподавателей — и первая группа ненавиди предмет, а другая готова до конца жизни им заниматься.
Но тут влияет и сама методика преподавания, материальная база, ее доступность, какие предметы и что они включают.
У меня в школе было так:
— вот вы можете увидеть микроскоп. Он так выглядет. Но пользоваться им нельзя, он один, еще повредите. Поэтому перерисовыем из книги картинки, как будто вы это увидели в микроскоп
Кожица лука не такая привлекательная. И многие лук вообще не любят. Да и клетки тут статичные.
Переиначим ситуацию. Раздать каждому по колбочке с инфузориями, дафниями и прочими. А потом устраивать природную ситуацию — пусть большие рачки едят маленьких. Все это будет в движении в одной капле, но столько экспы!
Пройдет время, на улице дождь. И тут:
— Дети, вот вам колбочки, давайте посмотрим что обитает в лужах!
И под микроскоп.
Тут и вопрос гигиены. И какие препараты (типа антибактериального мыла) влияют на бактерии. А еще можно поизучать дрожжи.
Все, успех биологии у школьников возрастет. Конечно, уничтожить интерес можно фразой:
— Каждому из вас нужно принести по 10 работ до конца недели, начертить схему дафнии, ее расписание дня. А еще провести анализ развития такой-то колонии грибков.
Интерес будет уничтожен. Тех, кого не унизит школа — будет уничтожать университет. И появятся инженеры, которые кое-как закончили «потому что родители сказали» и ненавидеть свой предмет. Но работы нет, предложат остаться в аспирантуру, да и уже сила привычки. Потом станет преподавать.
На новом витке этот преподаватель создаст новые задания, целью которых убить интерес. И история повторится.
Не важно на сколько сложная информация. Важно объяснить зачем она нужна и постараться подать ее максимально приближенно к практике. А предмет информатика, в моем понимании и в том виде в котором преподается в школах, изрядно устарел. Однако в наше время просто необходимо иметь базовые понятия по электронике.
Только 2-3 человека из 30 понимали о чем речь. И это в математически-направленном классе. Не сказать что это было чем-то за облачно сложным, однако совершенно не понятным для чего это все нужно!
Всё правильно. Математика пригождается только умным детям.
Дело в том, что кажущаяся легкость работы с GUI в данном случае — обманчива. Проще написать a = b & (c | d), чем нарисовать это же мышкой на экране. А с даже небольшим усложнением дизайна (простой процессор) писать код на верилоге становится на два порядка поще, чем делать мышкой schematic entry. Порог с верилогом выше, но ненамного, особенно если сначала смотреть на схемы, синтезируемые из кода — см. напр. http://www.silicon-russia.com/public_materials/2016_11_04_one_day_mipsfpga_connected_mcu_materials_public_for_the_website/06_optional_introductory_materials_if_necessary_for_the_audience/08_quizes/quiz_4_synthesis_1.html
Помните, там были прекрасные вставки цветных страниц со схемами/блоками? А в конце книги раздел про автоматику? Кажется, мне тогда было лет 12-13 (сейчас 32), когда я познакомился с этой книгой. И как раз самыми интересными мне казались схемы с логическими элементами. Отталкивала сложность сборки логических элементов на транзисторах. От транзисторов пришёл к К155. И как было бы здорово заполнить пробел длиною в 5 лет (пока не стал изучать МК в учебном заведении) возможностью работы с ПЛИС.
Ардуино, электроника, ПЛИС — всё это хорошо, только в качестве внеурочного, кружкового изучения.
Интересно, вот если GUI был на подобии Scratch, младшим школьникам было бы проще ориентироваться?.. Или быть может интерфейс как у Owen Logic.
Зашел в офис Ардуино; поговорили о ПЛИС-ах; требуются добровольцы