Вот техзадания для начала (обновлено 12 ноября 2011).
Первый этап. Запоминание алфавита, правил чтения (как с наличием надстрочных и подстрочных символов, так и без них), а также правил словообразования (сарф) на основе примеров.
Исходные данные - есть система папок. В каждой папке другие папки, а также файлы со звуками и картинками (с совпадающими именами, но разными расширениями,
например, 01aleef.bmp, 01aleef.mp3, 02be.bmp, 02be.mp3 и т.д.). Если есть файлы topic.mp3, topic.bmp - то это данные о теме.
В папках могут быть как виды написания букв отдельно, в начале, в середине, в конце, так и примеры из книги муаллимус сани.
В режиме обучения программа последовательно или произвольно показывает картинки и выдает звуки.
В режиме контроля случайным образом выдается звук, надо будет выбрать из нескольких картинок.
Каждый раз набор картинок отличается, чтобы ученик не выучил последовательность ответов.
Программа постепенно по нарастающей увеличивает сложность заданий.
Использование звуков и рисунков позволят применить эту программу практически для любого языка (арабского, русского, английского, татарского, турецкого, финского и т.д.),
независимо от кодировок и системных настроек. Надо будет только создавать папки, заполнять их рисунками и звуками.
Это позволит подключить сразу много добровольцев, так как готовить звуки и рисунки смогут даже те, кто пока не умеет программировать.
Эту программу можно будет также использовать для изучения некоторых сведений из школьных, вузовских предметов, а также специализированных курсов,
что должно привлечет к ней массу добровольцев из числа тех, кто хочет перенести часть труда от человека к машине,
как размножились в последние десятилетия коллекции одних и тех же рефератов в интернете.
После примеров настольной версии готовятся примеры веб-интерфейса программы.
На сервере заводятся учетные записи и регистрируются участники.
Участники через CGI приложение (
viewtopic.php?f=34&t=3631) заводят новые папки с описаниями для групп рисунков и новые звуки с рисунками.
Это позволит координировать работу многих добровольцев по введению данных в программу.
Для полностью самостоятельной разработки новичками предлагается следующее задание.
По сравнению с исходной задачей одно отличие. Звук и рисунок как минимум двух языков: язык, который изучается и язык, который пользователь знает.
Например, kalam.mp3, kalam.bmp, kalam_ru.mp3, kalam_ru.bmp,
topic.mp3, topic.bmp, topic_ru.mp3, topic_ru.bmp.
Точно также сделав базовую программу, надо только заполнить папки с рисунками и звуками.
----------------------------------
Второй этап. Пополнение словарного запаса.
Отличие от первого этапа - работа с текстом.
В настольном варианте базу данных вводятся слова на арабском и других языках.
Программа может работать в режиме словаря (подряд и через поиск находить значения слов)
и в режиме тестирования на знание слов (предлагать выбрать один из правильных вариантов).
Один из планируемых примеров - работа через COM с Excel на основе практического примера.
Сайфутдинов Марат Хаджиевич разработал программу арабско-русского электронного словаря на основе словаря Баранова Х.К., работающаю в Excel.
http://www.twirpx.com/file/157389/Планируемый пример через механизм COM читает данные из этого словаря и загружает в нашу разрабатываемую программу.
Точно также, как и в первом этапе, затем вводится веб-интерфейс, для того, чтобы
множество добровольцев могли вводить через интернет слова в словарь.
Задание на самостоятельную разработку новичкам - дополнительно к работе с текстом реализовать работу с аудиофайлами (чтение слов).
----------------------------------
Третий этап. Построение предложений.
В отличие от первого и второго этапов, где сравнительно маленькая программа допускала работу с большим объемом данных,
следовательно, можно было привлечь много добровольцев для сравнительно простой работы - подготовки и ввода данных,
здесь уже надо вводить правила. А это делается через элементы управления - кнопки, выпадающие списки, поля и т.д. и содержится
на так называемых формах. BlackBox в данном случае предоставляет очень удобное решение, рассматривая форму, как документ.
То есть формы с кнопками и другими элементами управления можно загружать, как документ Word.
И здесь понадобится умение программировать, отработанное у массы добровольцев, на первом и втором этапах выполнявших сравнительно простые работы.
Для Web интерфейса надо будет сделать небольшой плагин к обозревателю интернета Firefox, позволяющему загружать эти формы
с алгоритмами обработки через интернет и использовать их.
----------------------------------
Четвертый этап. Практика перевода текстов.
Разрабатываются как настольный вариант программы, так и
динамический сайт, с помощью которых общими усилиями переводятся тексты различной сложности, например, книги.
Результаты работы в настольной программе можно будет синхронизировать с данными сайта, разрабатывая программы для работы
с базами данных Firebird (
viewtopic.php?f=34&t=3664).
С использованием COM и SQL механизмов в ВlackBox можно сделать экспорт большого числа книг на арабском языке из системы Шамела (десятки гигабайт),
хранящиеся в формате Access.
-----------------------------------
В ходе совместной разработки программ - игр задания будут подготовлены так, чтобы участники получили следующие знания/умения/навыки.
1. Введение в программирование. Работа с папками, файлами.
2. Работа с кнопками и другими элементами управления. Программная генерация форм.
3. Работа с базами данных (Firebird) на одном компьютере и согласованная через БД работа программ в локальной сети.
4. Работа через COM с разными программами, например, Excel, Word.
5. Разработка движков для интернет-сайтов.
6. Компьютерная графика, использование OpenGL.
7. Подключение готовых библиотек на других языках через API.
и другие актуальные темы.
Создавая открытые учебные программы, новичок, с одной стороны, получит опыт,
с другой стороны, проявит себя для дальнейшей оценки для приема на работу.
Каждый активный участник может преобразовать полученные знания в деньги, в дальнейшем сотрудничая с нами по любому из следующих вариантов.
1. Дилера по продаже нашего готового коммерческого программного обеспечения (по модели бизнеса, аналогичной модели
http://www.1c.ru).
Для этого особых умений не надо, достаточно уметь вводить данные, что отрабатывается в участии в этапах 1 и 2.
2. Программиста-разработчика. По тому, как участники разрабатывают программы, мы можем оценить, что они могут делать и какие работы им уже можно поручать за оплату.
То есть, участие в разработке открытых бесплатных программ-игр сравнимо с получением опыта работы в фирме по разработке программного обеспечения.
Аналогичным образом набирают на работу в проекте Minix (
http://minix3.ru/cgi-bin/yabb2/YaBB.pl?num=1318486847). Возможен вариант работы через интернет,
оплата производится по мере выполнения выдаваемых этапов работы.
3. Программиста - партнера, которому оказываем помощь в реализации и продвижении его собственных идей за долю в деле, для того, чтобы дать
возможность человеку сосредоточиться на технической задаче и помочь ему выйти на рынок. Похожие условия имеются в Силиконовой Долине в США (
http://ru.wikipedia.org/wiki/%D0%A1%D0% ... 0%BD%D0%B0).
Вот список книг, которые желательно прочесть, чтобы стать хорошим программистом самостоятельно.
1. Форд Г. Моя жизнь, мои достижения
http://www.twirpx.com/file/69553/http://www.twirpx.com/file/336280/2. Форд Генри. Сегодня и завтра. Продолжение книги Моя жизнь, мои достижения
http://www.twirpx.com/file/572179/3. Ершов А.П., Монахов В.М., Бешенков С.А. и др. Основы информатики и вычислительной техники
http://www.twirpx.com/file/578562/4. Купер Алан. Психбольница в руках пациентов
http://www.twirpx.com/file/536694/http://www.twirpx.com/file/104308/5. Вирт Н. Алгоритмы и структуры данных
http://www.twirpx.com/file/1776/6. Система программирования BlackBox с документацией на русском языке
http://www.inr.ac.ru/~info21/software.htmhttp://oberoncore.ru/blackbox/environment7. Альтов Г. И тут появился изобретатель
http://www.twirpx.com/file/487219/8. Альтшуллер Г., Верткин И. Жизненная стратегия творческой личности
http://www.twirpx.com/file/266131/9. Альтшуллер Г. Найти идею: Введение в ТРИЗ - теорию решения изобретательских задач
http://www.twirpx.com/file/427321/10. Левитин А. Алгоритмы: введение в разработку и анализ
http://www.twirpx.com/file/318786/11. Брукс Ф. Мифический человеко-месяц или как создаются программные системы
http://www.twirpx.com/file/536701/12. Пфистер К. Компонентное программное обеспечение
http://oberoncore.ru/library/component_soft13. Йордон Э. Путь камикадзе
http://www.twirpx.com/file/212139/14. Гербер М. Малый бизнес - от иллюзий к успеху
http://www.twirpx.com/file/561903/15. Федорчук А.В. Доступный UNIX: Linux ...
http://www.twirpx.com/file/97668/Для желающих подключиться информация по арабскому языку в достаточном объеме предоставлена тут
http://www.twirpx.com/files/languages/arabic/И здесь хорошие идеи об использовании социальных связей для построения современных фирм
http://video.polit.ru/auzankiev.flv