Сделай сам 05.11.2002 Сергей Занд
В настоящий момент параллельно разрабатывается два разных Firebird. Вам еще не страшно? А ведь это последствия многих проектов Open Source: если есть исходные тексты, легче «отпочковывать» проекты один за другим, чем договориться со всеми и писать один продукт. Часть разработчиков сочла, что надо целиком переписать существующую реализацию с нуля, назвав ее Firebird 2. Во-первых, это позволит избежать ошибок архитектуры, которые, как они считают, заложены в InterBase, а значит, и в Firebird. Во-вторых, условия лицензии позволяют закрывать исходные тексты только тех файлов, которые были целиком добавлены в проект. В итоге после полного изменения внутренней организации кода уже нельзя будет разобраться, что добавлено, а что исправлено, а значит, весь Open Source-проект можно быстренько прикрыть, вернувшись, таким образом, к продаже лицензий на использование сервера. Это прекрасно и совершенно понятно, поскольку программисты должны кушать, однако стоимость лицензий вновь рожденного Firebird 2 (если он действительно перестанет быть Open Source) наверняка превысит финансовые возможности российских разработчиков, поскольку проект ориентирован на конкуренцию с Borland, в первую очередь — на европейском рынке. В связи с предстоящими переделками и очевидным желанием оставить все права за собой компания IBPhoenix уже не столь радостно относится к участию в проекте сторонних разработчиков, а любые изменения кода, которые она считает ненужными, до сервера не добираются или добираются с большим трудом. Yaffil обошел конкурентов по всем важнейшим пунктам. Конечно, хороший коммерческий продукт отличает не только производительность, но и стабильность работы в реальных условиях. Сотрудники Borland неоднократно подчеркивали, что тщательно проверяют очередные версии InterBase, прежде чем пускать их в эксплуатацию. Конечно, возможностей у Borland несравненно больше, чем у авторов Yaffil, но не будем забывать, что в тестировании Yaffil участвуют уже несколько десятков групп сторонних разработчиков. Что даст лучший результат: большая статистика пользователей Borland и медленная реакция корпорации на отчеты об ошибках или небольшая, но активная группа тестеров Yaffil и быстрые отклики разработчиков на просьбы и замеченные «неисправности»? Скоро увидим. Быстродействие Yaffil было достигнуто за счет переписывания внутреннего автоматического оптимизатора сложных запросов и оптимизации кода сервера для Windows-платформы, то есть как раз той части функциональности, на которую все время указывали любители MS SQL и Oracle. Если в Yaffil удастся достигнуть уровня оптимизации запросов, близкого хотя бы к MS SQL, то последнему будет трудно предложить что-то в противовес — ни кроссплатформностью, ни особой устойчивостью к падениям системы он похвастать не может. Не будем касаться очевидных маркетинговых проблем, поскольку задавить Microsoft «простым» техническим преимуществом невозможно, однако такая цель и не ставилась. Задача у команды Yaffil гораздо более прозаическая и достижимая — предложить рынку качественный, быстрый и недорогой SQL-сервер, с поддержкой русского языка, учетом местных особенностей и прочего. Вот он, наш первый фактор.
Второй фактор — средство разработки — начал формироваться еще в 2000 году, когда отечественная компания Devrace выпустила библиотеку прямого доступа к InterBase — FIBPlus. Сейчас она входит в число трех самых развитых продуктов этого направления в мире наряду с компонентами IBX корпорации Borland и IBObjects Джейсона Вартона. Среди российских InterBase-разработчиков библиотека FIBPlus уже давно номер один, поскольку поддерживает русский язык, имеет специальную неправдоподобно низкую цену для стран экс-СССР, а ее авторы всегда готовы внести в продукт изменения. Справедливости ради отмечу, что такая ситуация сложилась не сразу. Еще год назад FIBPlus была демонстративно ориентирована только на зарубежный рынок, так как ее продвижение в России руководство компании считало нерентабельным. И сейчас отсутствие русской документации для FIBPlus критично воспринимается разработчиками, хотя сотрудники Devrace стараются свести этот недостаток к минимуму путем активной онлайновой поддержки. Получается у них это или нет — другой вопрос. Тем не менее, библиотека FIBPlus сыграла важную роль в формировании идеи в мозгах российских программистов о том, что неплохо бы вообще-то и покупать средства разработки. «Как, спрашиваю, будем жить дальше?» В заключение хочу обратиться к тем, кто «думает, сделать бы жизнь с кого». Так вот, делать ее вполне можно с InterBase. Или с Firebird. И уж точно — с Yaffil. Нам не раз твердили, что «крутые» проекты всегда нужно делать на «крутых» серверах типа Oracle или, на худой конец, MS SQL. Это дилетантская точка зрения. Проекты создаются на базе обеспечения, которое лучше подходит к конкретной задаче. «Подходит лучше» — это комплексное понятие, включающее в себя стоимость, трудозатраты, технические требования, профессионализм разработчиков и пр. Конечно, если программисты не умеют оптимизировать свои программы, то самый простой выход для улучшения производительности — наращивание компьютерной мощи и «приляпывание» пиратского ( в девяти случаях из десяти) Oracle для учета жалкой пары миллионов наименований. Разумеется, если менеджеры не знают, что вместо MS SQL, который работает только на Windows-платформе (а значит, требует и сервера NT/2000), можно купить Yaffil, который может работать на бесплатном Linux, прекрасно себя чувствует в многопроцессорной среде и имеет цену, учитывающую российские реалии, то они будут вынуждены тратить деньги зря.
|