- PVSM.RU - https://www.pvsm.ru -

DisQwerty: чтобы печатать не нужно больше одной кнопки

Всем привет! Как я писал тут [1], я разработал клавиатуру для людей с очень тяжелыми двигательными нарушениями, которые могут нажимать только одну кнопку. Наверно нужно сразу оговориться, что это не уникальная разработка и такие клавиатуры есть во многих операционных системах в стандартных программах экранных клавиатур. Однако моя разработка включает уникальные функции. О них и как они появились я сейчас расскажу. Ссылки на GitHub будут в конце поста.

DisQwerty: чтобы печатать не нужно больше одной кнопки - 1

Лина пишет письмо отцу

Глава нулевая. Начало

Лето 2014 года. Я только весной познакомился с Линкой [2], и летом (на каникулах) мне хотелось ей как-то помочь.

Мой личный совет и мнение

Знаете, часто говорят, что есть список вещей, которые стоит сделать хоть раз в жизни. Вот, я вам советую съездить в любой интернат/школу/детдом для инвалидов и посмотреть как там живут. Это тяжело, но полезно для души. Займет у вас день. Вы не обязаны, но an experience очень интересный.

Основное, что нам не хватало, это было общение. Так как общение и коммуникация это основа всего. И я решил, что Лина сможет нажимать кнопку [3], слава Богу у нас в школы закупают их. Алгоритм выбора я видел на занятиях с Линой. Сначала учитель показывает по очереди строки на бумажной клавиатуре от 1-9, человек на нужной кивает, дальше выбор идет по строке. Я сделал тоже самое в JavaScript.

Лето кончилось. Я радостно притащил программу в школу. Показал клавиатуру Лине и ее учителю. Лина посмотрела на меня и стала капризничать. Я не учел одну маленькую деталь. Она ребенок! Она второклашка. И просто так освоить что-то мигающее на экране с большим количеством букв сложно.

Еще имхо

Этих детей часто называют умственноосталыми, но я яростно спорю с такими мнениями. Просто потому что если вы прожили свои 10 лет без возможности спросить: "А почему небо голубое?", конечно вы не будете полноценным человеком. Например, даже с моими "легкими" нарушениями я

Глава первая. «А если не буквы?»

Осень/зима 2014. Мы поняли, что детям слишком сложно освоить побуквеный набор. Тогда я дал возможность учителю создавать наборы кнопок из целых слов или слогов. Сначала это был двумерный массив js, который подключался к программе отдельным <script>. Да, да, я научил учителя начальных классов писать js массивы.

Ближе к весне я понял, что ТАК делать не надо. Не гуманно заставлять учителя работать в одном файле, когда на каждый урок нужен новый набор кнопок. Значит учителю нужно дать возможность выбора файлов с наборами. За одно как-то уйти от кроссбраузерных заморочек. Я посмотрел на технологию node-webkit. Остановился на app.js [4], так как там были готовые api по выбору файлов.

За одно написал парсилку файлов, так как заставлять учителя писать на js больно сурово. Так же добавил возможность добавлять в наборы картинки.

GitHub node-webkit версии [5]. В репе бины для мак оси, надо подумать как наладить работу

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

Глава вторая. Игрушка

Весна 2016. Согласитесь играть приятней чем печатать? Я тоже так считаю. Почему не совместить приятное с полезным? Я решил создать детям игрушку для освоения принципа набора в unity3d. Назвал ее DisCoin. Всё очень просто. 9 сундуков, на случайном сундуке появляется монетка и надо выбрать этот сундук. Детям очень нравится играть в эту игру, хоть она и с очень простым дизайном, они с удовольствием играют в нее после уроков пока ждут автобус домой.

После уроков

GitHub repo [6]

Я буду очень рад помощи с оформлением игры, созданием атмосферы и т.п.

Глава третья. Не для детей

Лето 2016. Этим летом мне написала девушка Саша из Москвы, что хочет попробовать мою клавиатуру. Оказалось, что у нее mac, тогда у меня не было еще macbook'а и я послал девушке Саше старую браузерную версию с кучей багов и лагов. Саша ей попользовалась, у нее получилось. И они с мамой выдали мне целый список багов и лагов. Я понял, что я дольше буду багфиксить чем писать с нуля. Написал на browserify хорошую версию. Почти без багов, с использованием yandex.predict [7] (Спасибо яндекс, сервис крут). Саша в первые за 17 лет сама пишет свои мысли, а не через маму.

Девушка Саша печатает

Размещена здесь [8]
GitHub browser version [9]


Мой сайт. [10]

Автор: ibakaidov

Источник [11]


Сайт-источник PVSM.RU: https://www.pvsm.ru

Путь до страницы источника: https://www.pvsm.ru/node-js/183334

Ссылки в тексте:

[1] тут: https://habrahabr.ru/post/308514/

[2] познакомился с Линкой: https://www.miloserdie.ru/article/m-ma-mam-mama/

[3] кнопку: https://www.ablenetinc.com/technology/switches/big-red

[4] app.js: http://appjs.com/

[5] GitHub node-webkit версии: https://github.com/aacidov/DisQwerty-webkit

[6] GitHub repo: https://github.com/aacidov/DisCoin

[7] yandex.predict: https://tech.yandex.ru/predictor/

[8] Размещена здесь: http://aacidov.ru/DisQwerty

[9] GitHub browser version: https://github.com/aacidov/DisQwerty-browser

[10] Мой сайт.: http://aacidov.ru

[11] Источник: https://habrahabr.ru/post/309088/?utm_source=habrahabr&utm_medium=rss&utm_campaign=best