Открытый христианский форум JesusChrist.ru

Библия | Книги | Словари | Софт | Аудио, BQT, Евангелизм, JCQ, Молитва

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

Общие разделы
   >> Технофорум
Просмотров: 75149 Просмотреть ВСЕ ветвиСледующая ветвь*Отображение Ветвями

В теме участвуют: shourisha (34) Тимофей (18) VladimirY (13) jeugen (10) ValeryZ (4) AndreiF (3) SolidCode (3) Tvorojok (3) ANDREW_CH (2) Guest007 (2) Pisklov_A (2) vi_k (2) Шломо (2) adimetrius (1) Alex Pol (1) d-dmitry (1) Emix (1) EtherLord (1) HappyEnd (1) JC_Piligrim (1) manandbytes (1) Rameel (1) StVladimir (1) udjin (1) Новости (1)

Страниц в этой нити: 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | (показать все)
Новости
20/03/07 19:14

# 447642

Приглашаем христиан-программистов к разработке новой версии программы "Цитата из Библии" Help admins  

Данная тема открыта посетителем сайта, читателем новости от 20-03-2007 19:13, находящейся по ссылке http://jesuschrist.ru/news/2007/03/20/12565. Полный дайджест новостей доступен по адресу jesuschrist.ru/news.

Приглашаем христиан-программистов к разработке новой версии программы "Цитата из Библии"

Как вы наверное знаете, веб-сайт JesusChrist.ru начал свое существование с бесплатной программы для работы с Библией под названием "Цитата из Библии" (BibleQuote). Первая версия программы появилась еще в октябре 1998 года и была размещена на сервере www.freeware.ru, затем она кочевала между несколькими серверами (chat.ru, bible.ru, biblerussia.org), пока не обосновалась окончательно по адресу http://jesuschrist.ru/software/ - на странице под названием "Софт-твари: Бесплатный христианский софт" ("твари" = творения).

Программа "Цитата из Библии" при некотором стечении обстоятельств стала довольно популярной среди русскоязычных пользователей, а затем благодаря усилиям Mission Aviation Fellowship Learning Technologies (www.maflt.org) стала инструментом для работы с Библией также и у многих зарубежных миссионеров, которым нужен был простой и доступный интерфейс для работы с Библией и электронными книгами.

У программы есть большой потенциал благодаря простой архитектуре и есть растущий "рынок" потенциальных пользователей - молодых христиан, выросшем на цифровых технологиях, а также служителей, не имеющих доступа к теологическому образованию. Тем не менее, последняя версия "Цитаты" была выпущена аж в 2003 году и с тех пор работа над программой не шла - у единственного ее программиста не было времени из-за занятости по работе и жизни, а код не был готов к open-source разработке из-за одной коммерческой Delphi-компоненты, не было спонсора и т.д., и т.п.

В это же время продолжали появляться различные модули (электронные тексты Библии на разных языках, электронные версии книг, которые можно подключить к программе). Ссылки на модули можно найти на http://jesuschrist.ru/software и новом сайте http://bqt.ru, wiki-образном сайте, специально созданном для хранения модулей. Пользователи снисходительно относились ко всем недостаткам программы и создавали для нее все более сложные модули, что еще больше усиливало нужду в обновленном современном инструменте.

К счастью, есть и положительные сдвиги. Единственный Delphi-компонент, который препятствовал полному открытию кода программы, теперь стал open-source продуктом. Появились также более-менее работоспособные варианты использования Unicode в Delphi-программах, поэтому теперь программа более уверенно заговорит на разных языках, включая арабский, китайский или корейский, а также сможет на одной странице показать русский текст Библии со словами оригинала на греческом и еврейском языках одновременно.

Мы хотели бы пригласить христиан-программистов к обсуждению того, как можно было сообща продолжать данный проект и сделать полностью открытый и бесплатный продукт для всех христиан и не только христиан (среди пользователей есть и не христиане). Открытый, потому что исходный код будет распространяться по принципам open-source, и дальнейшая судьба проекта благодаря открытой лицензии не будет зависеть от конкретных людей. А бесплатный, чтобы сделать продукт максимально доступным для всех (нужно лишь скачать из Интернета или записать у друга, без всякой платы разработчикам).

Для open-source проекта, скорее всего, также понадобятся спонсоры - для оплаты хостинга, менеджмента, покупки профессионального дизайна для программы, оплата и поощрение работы активных программистов и т.п. Поэтому мы также ожидаем участие христиан-меценатов в данном проекте. Тем не менее уверены, что open-source проект можно начинать практически с чистого листа (и пустого кошелька).

Для обсуждения этой новости будет открыта тема в "Технофоруме" сайта JesusChrist.ru - приглашаем к обсуждению всех вас, пользователей, программистов и всех заинтересованных в судьбе программы!

Внимание: мнение создателей сайта может не совпадать с мнением, изложенным в цитируемых в дайджесте новостях.

Тимофей
Христианин
20/03/07 21:07
timh.ru

# 447692

Re: Приглашаем христиан-программистов к разработке новой версии программы "Цитата из Библии" нов [re: Новости, #447642] Help admins  

Сейчас есть несколько возможностей для проекта:

1) месяца на один-два: сделать Unicode-версию "Цитаты", собрать ее под Turbo Delphi (www.turboexplorer.com), добавить 2-3 новых фичи

2) месяцев на шесть-год: написать полностью новое десктоп-приложение на чем-нибудь современном, например С# или Python, чтобы сразу кросс-платформенный продукт получить. C# по строению похож на Delphi (один автор!). Python не знаю :-)

3) месяцев на шесть-год: написать веб-ориентированное приложение, но которое можно также запускать на десктопе, оффлайн. Мы кое-что обдумывали с shourisha (пользователь этого форума) и он уже кое-что спроектировал. Программирование ведется на Python, которого я пока не знаю.

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

Вариант 1 мне очень нравится тем, что это работа на короткий срок и старым пользователям программы хорошо бы иметь похожий инструмент, чтобы сильно не переучиваться. Однако, у Delphi-компонента THTMLViewer Unicode работает не совсем хорошо. MSIE показывает Unicode-тексты лучше, но встроив MSIE в код, мы потеряем работоспособность под wine/Linux. У компонент TTntUnicode для ввода и показ Unicode на Delphi-формах тоже несовершенная реализация.

Есть надежда, что у C#-компонент и у wxPython с Unicode дела обстоят лучше. Но это новая программа и новый путь развития.

Вариант 3 это вообще другой подход к программе.

В принципе, если найдутся хорошие лидеры по 1, 2, 3, можно попробовать сделать разные инструменты для одной общей платформы (наподобие того, что происходит в Sword-сообществе). Но эффективно это или нет (бесспорно, это интересно) и что благословит Бог, пока не ясно.

Прошу советов и молитв.

Guest007
21/03/07 08:51

# 447827

Re: Приглашаем христиан-программистов к разработке новой версии программы "Цитата из Библии" нов [re: Тимофей, #447692] Help admins  

Про С# могу сказать только то, что
1) кроссплатформанность, в отличие от Питона, довольно условна (всё-таки Mono -- это не C#) Поддерживать хотя бы 2 порта будет затруднительно. И очень зависит от того, как будет всё дальше развиваться.

2) С#, точнее Mono, малораспространён в не Виндовс - мире.

IMHO первый вариант -- лучший. А потом можно подумать про Python. И, кстати, Qt4 более цельная логичная и последовательная GUI библиотека. Лицензия -- GPL даже для Виндов. Потенциал переноса на Мобильные устройства

Исправлено пользователем Guest007 21/03/07 08:52.


shourisha
21/03/07 09:39
www.spreadbible.com

# 447841

Re: Приглашаем христиан-программистов к разработке новой версии программы "Цитата из Библии" нов [re: Тимофей, #447692] Help admins  

Спасибо Тимофей. Лед тронулся, я попробую продолжить.

Что уже есть
Мы с Тимофеем сделали некоторый проект, пол-года назад, о котором сам Тимофей еще не успел никому рассказать: http://www.jesuschrist.ru:8080/ :-) Я возьму на себя такую наглость и об этом расскажу. Посему приглашаю всех пересмотреть всю мной написанную документацию, дизайн системы. Там и диаграммы и прочая документация. User's Manual еще не готов, но Project Documentation есть. Все на английском, конечно — простите...

Идея проекта проста: работать одинаково как на сервере для Web (с ограничениями по пользователях), так и локально у каждого дома на разных операционных системах. Нам неважно что Вы используете. Хоть Amiga или Palm.

Код есть у меня локально, пока-что замороженый. Я приостановил работу над ним до сегодняшнего момента, так как InterBible — прямой дериватив BibleQuote. Вобщем, спасибо Тимофею за данный пост. :-) Нужно организовать поддержку контроля версий и я весь код отдам тут-же.

На данный момент:
- Есть SDK. Без нее невозможно работать, ничего собрать и получить рабочего.
- Локальный сервер запускается, браузер открывается прямо на страницу и показывает InterBible с локальной машины. По LAN можно соединиться тоже.
- Есть прелиминарный код скачивания модулей InterBible из удаленного репозитория. Он-же устанавливает модули. Он-же смотрит на обновления модулей.
- Есть поиск. Умеет некоторые фонетические трюки.
- Есть утилита конвертации модулей BibleQuote в новый формат.
- Я разработал формат модулей и назвал его IBX (InterBible data eXchange). Это уже конечно XML с полной поддержкой Unicode. Все детали здесь: http://www.jesuschrist.ru:8080/inb_trac/wiki/ModulesFormat. Там-же ответы почему мною придумывался этот велосипед, вместо использовать готовые форматы (OSIS, USFX, etc). Там-же найдете DTD, Schema и реальный рабочий пример. Утилита для конвертации из BibleQuote в InterBible Format есть в репозитарии и ее можно скачать (Browse Code). Должна работать сразу. :-)

Что нужно для первой Beta
- Молитв.
- Ресурс, кто-бы сделал UI на AJAX. Там-же графический дизайн. Я использую Prototype.js и думаю, что можно использовать Dojo Toolkit. Интерфейс должен быть простой, с минимальными кликами и перегрузками страницы.
- Молитв.
- Ресурс, кто-бы тестировал все это на Microsoft Windows семействе.
- Молитв.
- Ресурс, кто-бы подключился в разработку ядра. Если знаете еще и C++ и знакомы с Boost::Python то вообще великолепно.
- Молитв.
- Молитв.
- Молитв.

Языки, платформы и Holy War
C# не знаю (и не очень хочу, вобщем-то), так как у меня нету ниодной Windows машины в достаточно большом радиусе. Отсюда желающие тестировать и поддерживать Windows-версию системы очень приглашаются. У меня есть MacOSX, Linux, разные *BSD, Solaris для SPARC и Intel... Вобщем, все *nix системы могу изначально взять на себя как в тестировании, так и в помощи что как делать.

Для начала, что нам, людям, нужно:
1. Получить гибкий продукт, который не только по-настоящему кросплатформенный, но и мультицелевой. Под вторым мы с Тимофеем подразумеваем разные режимы работы: как сетевой сервис, как веб-страница, как локальная система и т.д. из одного флакона, без пере/доделки. Вышеописанный дизайн все это предусматривает и уже умеет это делать.
2. Программистам работать с простой, хорошо документированной и легкой в изучении платформой. *Особенно*, когда данный проект hobby-level. Я могу выделять час в день. Не больше. Но за этот час я должен сделать многое и ощутимое.
3. Открытая лицензия на все компоненты.

Ниже излагаю аргументы и наблюдения своей маленькой 7-ти летней практики. Может это поможет кому-то заинтересоваться работать с платформой Python, а не Java, Perl, Ruby или C#:
1. Будучи таким-же кросплатформенным как и Java, в отличии он Java где "Write once, [u]debug[/u] everywhere", Python работает одинаково на любой поддерживаемой им платформе с одинаковым side-эффектом. Единственная частая проблема на уровне взаимосвязи с FileSystem — только с Microsoft Windows, где файловые пути не как в людей.
2. Python учится очень легко, а код выглядит сладко. Практически, достаточно прочесть Tutorial и начинать что-то писать практически.
3. Дизайн языка делался так, чтобы комментарии не нужно было писать к коду. Код всегда чистый и на Python достаточно трудно написать неразбериху.
4. Платформа равна по силе Java. Зато намного легче, а продукты не только более стабильны, но и быстрее работают, хоть сам по себе Python значительно медленнее Java.
5. Серьезно развивается. Автор работает на Google, которая спонсирует развитие этой платформы. 75% кода в Google именно на Python, остальное на C++. Google Code постоянно увеличивает проекты на Python, и там можно найти очень интересные модули, наработки и системы.
6. Стандартная библиотека очень стабильна, достаточно большая и хорошо документирована. Я могу 100% быть уверенным, что моя программа будет работать на любой стандартной установке этой платформы у любого пользователя.
7. Python разрабатывался изначально как встраиваемый язык. От сего он такой-же портабельный как и Perl. На сегодня он уже значительно быстрее Perl. Если-же включить JIT (Just In Time Compilation), почти равен C/C++. JIT пока доступен только на x86 платформе.
8. Кроме Java, это единственная нормальная платформа, где по-человечески поддерживается Unicode: имеется именно Unicode String, а не 8-bit Encoded UTF-[8/16/32] или UCS-[2/4].
9. Признан лучшей платформой для работы с XML. Парсеры XML одни из самых быстрых. Хорошие статьи по этому топику можно найти на IBM Developers Site.
10. Код получается всегда меньше любого другого мне известного языка, пишется быстрее. То, что Java программист пишет за день, Python программист запишет за пол-часа или час (проверено не раз).
11. На Python очень легко делать фреймворки. Настолько легко, что это всегда искушение.
12. Кроме обычного ООП, есть поддержка мультинаследования, интроспекция, аспектное программирование...
13. GUI: QT, GTK, wxWindows, MacOSX/Cocoa, Win32, Tk. IDE и визуальные композеры тоже имеются. Как один из вариантов могу посоветовать Python Card. Впрочем, я не любитель GUI. Web-based мне больше нравится и здесь будущее.
14. Кроме традиционного ООП и современного АОП, вполне поддерживается (хоть и не всегда приветствуется, особенно мной) старое-доброе структурное программирование.

Почему не...
1. C#: Microsoft Windows-only. Mono-же еще очень сырой, работает плохо, медленно и берет неоправдано много памяти. Для Маков требуется дополнительные танцы с бубном чтоб установить. Под Solaris/Nexenta достаточно много проблем, хоть идет по дефолту в пакетах. В общей сложности нужно отобрать немало мегабайт как памяти, так и места на диске, чтобы получить одну веб-страницу.
2. Java: Неплохо. Но как всегда громоздко, медленно и сложно.
3. Ruby: Лично мне как язык нравится. Но к сожалению, пока-что невероятно медленный, не поддерживает Unicode вообще (только UTF-8 строки, что есть 8-битовые строки), стандартная библиотека немалая, но еще очень сырая и построена на грубых хаках. Библиотека очень сильно пахнет качеством и стилем решения Perl'ового CPAN. Ruby On Rails очень хорошая идея, но пока-что будущее у нее небольшое, пока поддержка Unicode в самого Ruby отсутствует напрочь.
4. Perl: Версия 5.х уже музейный экспонат, а Perl 6 еще не вышел. В Perl нельзя нормально сделать Exception handling (можно use Error, но это на самом деле перегруженый eval {} и не больше). В Perl, как и в PHP нельзя сделать декораторы. Нельзя сравнить два массива или два ассоциативных массива (или структурой из массивов и хэшей) всего одной коммандой. Нормальной поддержки Unicode строк нету, ООП — настоящий хак и эмулируется хэшами. Объекты нужно контроллировать самому от начала и до конца. Многие вещи необходимо делать руками, где в других языках они поддерживаются «с коробки». Работать с XML нормально невозможно в силу невероятной седутивности языка. Синтаксис очень страшный и легко наделать больших ошибок, которые вылезут значительно позже.
5. Common LISP Один я и буду работать тогда. :-)

Общие проблемы ко всем вышеперечисленным:
1. Не имеют ниодной настоящей встраиваемой объектной базы данных (не путать с иерархическими, реляционными и объектно-реляционными). Python имеет две: ZODB и Durus.
2. Не имеют вообще или имеют очень громоздкие и не гибкие паблишеры объектов. Это решается различными способами: установка урезанного Apache или других маленьких HTTP серверов. Но тогда имеем flaw со взаимосвязью и пр.
3. Не имеют вообще или имеют очень громоздкие серверы приложений.

Вобщем, все это вышенаписанное — мои личные практические субьективности, которые можно вполне игнорировать. :-)



OK, flame on. :-)

StVladimir
церковь полного евангелия
21/03/07 10:19

# 447857

Re: Приглашаем христиан-программистов к разработке новой версии программы "Цитата из Библии" нов [re: Новости, #447642] Help admins  

Здравствуйте, уважаемые верующие программисты. Я давно пользуюсь Цитатой и она мне очень нравится по стилю, дизайну, простоте и оригинальности. Хотел бы учавствовать в разработке новой версии - помогу чем смогу.
Молитвой как минимум :-)
Работаю на С# (и очень нравится)
Основной вид деятельности - разработка ПО для серъёзных проектов, работа в команде.
Есть большой опыт разработок БД под Access, Ms SQL 2005, Firebird
Работал также на Delphi, VBA но с переходом на C# больше возвращаться не хотел бы.

manandbytes
21/03/07 11:06

# 447870

Re: Приглашаем христиан-программистов к разработке новой версии программы "Цитата из Библии" нов [re: Новости, #447642] Help admins  

А где можно узнать о причинах создания (и теперь, естественно, дальнейшего развития) ещё одной программы вместо помощи, например, тому же http://www.crosswire.org/sword/index.jsp или http://www.e-sword.net/?

Тимофей
Христианин
21/03/07 14:07
timh.ru

# 447937

Re: Приглашаем христиан-программистов к разработке новой версии программы "Цитата из Библии" нов [re: manandbytes, #447870] Help admins  

Тому есть несколько причин. Самая простая - мы появились еще тогда, когда не знали про Sword и e-Sword.

Более сложные

1) e-Sword не является открытым проектом - там сидит один программист, которые получает пожертвования на разработку программы.

2) Crosswire Sword это в первую очередь форматы хранения Библии и текстов (shourisha готов оспорить их эффективность), затем некоторая библиотека для извлечения этих текстов. Но у них нет единого лица - есть много приложений для десктопа и веба, работающих с Sword.

По этой причине, "Цитата" может сохранить свое имя и добавить возможность работать с модулями Sword и она даже сможет в таком случае считаться частью CS :-)

Тимофей
Христианин
21/03/07 14:08
timh.ru

# 447938

Re: Приглашаем христиан-программистов к разработке новой версии программы "Цитата из Библии" нов [re: Тимофей, #447937] Help admins  

В процессе работы над диском "Библиология" миссионеры из MAF тестировали Sword и Logos и некоторые другие проекты. Бесплатный Sword for Windows по интерфейсу им понравился меньше также бесплатной "Цитаты".

d-dmitry
православный
21/03/07 14:14

# 447942

Re: Приглашаем христиан-программистов к разработке новой версии программы "Цитата из Библии" нов [re: Тимофей, #447692] Help admins  

> MSIE показывает Unicode-тексты лучше, но встроив MSIE в код, мы потеряем работоспособность под wine/Linux

Немалая ценность BQ в том, что работает не только под MS Windows, но и GNU/Linux+Wine. Если Вы не планируете делать отдельные приложения под GNU/Linux, пожалуйста, не отказывайтесь от работы BQ в связке GNU/Linux+Wine.

Большой Вам респект за программу.
И пожелание помощи Божией.

shourisha
21/03/07 14:49
www.spreadbible.com

# 447962

Re: Приглашаем христиан-программистов к разработке новой версии программы "Цитата из Библии" нов [re: d-dmitry, #447942] Help admins  

не отказывайтесь от работы BQ в связке GNU/Linux+Wine.

К сожалению. Wine только для x86. Лично я испытываю проблему запустить Wine на своем PPC Маке. Я не могу запустить Wine на Palm, а пользователь данного форума Paulus не сможет запустить BQ на своем Symbian гаджете. :-) Также Wine не работает как положено на x86 боксах. К тому-же, нужно будет идти тем-же путем, что и Google Picasa for Linux: носить с собой статический и отрегулированный Wine. BQ к тому-же имеет ряд существенных проблем, которые описаны в вышеподанном ресурсе InterBible, включая лицензию кода.

Вобщем, это хорошая идея для продолжения жизни BQ на короткий срок. Но никак не может быть ее полноценной заменой и дальнейшим развитием.


Страниц в этой нити: 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | (показать все)

ОТВЕТИТЬ ВСЕМ   Просмотреть ВСЕ ветвиСледующая ветвь*Отображение Ветвями
Перейти на