Разработчики сервиса облачного хранения данных Ubuntu One объявили об отказе от использования популярной NoSQL-СУБД CouchDB в пользу нового продукта — U1DB.
CouchDB является ориентированной на хранение документов базой данных, написанной на Erlang и поддерживаемой организацией Apache Software Foundation (ASF), а также коммерческой компанией Couchbase, образованной в результате слияния CouchOne (разработчик CouchDB) и Membase. Она использовалась в Ubuntu One с момента появления этого сервиса, однако со временем привела к проблемам с масштабированием.
Несмотря на то, что CouchDB славится своей масштабируемостью, ситуацию с Ubuntu One разработчики сервиса называют уникальной: «мы не можем наращивать масштаб CouchDB на миллионы пользователей и баз данных, имеющихся в наших дата-центрах, а также не можем уменьшать масштаб БД для формирования разумной нагрузки для небольших клиентских машин». «Ни одна другая компания не использует CouchDB в таких масштабах, как мы», — утверждают разработчики Ubuntu One.
Сворачивая все инициативы, относящиеся к использованию CouchDB в Ubuntu One (в частности, прекращается и развитие пакета desktopcouch), авторы запустили проект базы данных U1DB, который на Launchpad описан как «API для хранения документов и их синхронизации в различных местах». Заявленные языки программирования — Си и Python, лицензии — GNU GPL v3 и MIT / X / Expat License.
Появление образцовой реализации U1DB на Python ожидается к релизу Ubuntu 12.04, т.е. к апрелю 2012 года.
Леннарт Поттеринг (Lennart Poettering) и Кэй Сиверс (Kay Sievers), разработчики из Red Hat, представили альтернативу классической системе журналирования различных событий в ОС syslog. Новый проект получил название journald (systemd Journal daemon).
Авторы отмечают, что пользу syslog, существующего уже около 30 лет, сложно переоценить для системных администраторов, однако у этого инструмента накопилось множество ограничений, которые «со временем превратились в серьезные проблемы». Среди них, например, выделяются: отсутствие аутентификации источников данных («любой локальный процесс может представиться веб-сервером Apache с PID 4711, и syslog ему поверит»), слишком свободная форма логируемых данных (это приводит к излишним сложностям в анализе данных журнала), отсутствие данных о часовом поясе во временных метках (впрочем, не всегда), отдельные логи своего формата для журналов различных системных компонентов (вызывает дополнительные сложности, а также «прячет» зависимости различных событий) и целый ряд других.
Новое решение — демон Journal — позиционируется как ответ на современные требования, который будет достаточно прост, надежен, портируем, производителен, удобен в интеграции, масштабируем и т.п. При этом journald должен стать «хранилищем событий общего назначения», т.е. использоваться для хранения «журнальных записей любого вида вне зависимости от его формата [т.е. от содержащихся в описании событий данных], метаданных или размера». При этом все сведения о произошедшем событии будут передаваться в определенном формате, все записи в журнале — содержать криптографический хеш предыдущей записи в файле (старший в такой цепочке хеш хранится в безопасном месте, открытом только на запись).
Планируется, что первая реализация journald войдет в следующий релиз Linux-дистрибутива Fedora — 17 «Beefy Miracle».
Новый проект вызвал разную реакцию в Linux-сообществе. Например, некоторые считают, что переход с syslog на систему вроде journald — это «прямая атака» на классическую UNIX-концепцию «всё является файлом».
P.S. Леннарт Поттеринг известен как автор PulseAudio и systemd — системных компонентов, которые пришли (или «приходят») во многие современные Linux-дистрибутивы.
Компания Red Hat анонсировала запуск сайта проекта нового языка программирования — Ceylon.
Ceylon позиционируется как «язык программирования для написания больших программ в команде». Написанные на Ceylon приложения запускаются в рамках виртуальной машины Java (JVM). Сам язык является объектно-ориентированным, использует статическую типизацию данных, синтаксис Ceylon очень похож на Java.
На сайте проекта Ceylon называется «элегантным, хорошо читаемым, очень надежным в смысле типов данных (typesafe) и призванным просто решать задачи», а также легким в обучении для программистов, знакомых с популярными в бизнес-среде языками программирования. Интегрированная среда разработки (IDE) для Ceylon основана на Eclipse и доступна в виде «сборки предварительного релиза», которая пока рекомендуется для использования только большими энтузиастами.
Авторы Ceylon утверждают, что «любят Java, но знают об ограничениях этого языка». Новый язык призван стать «более простым средством создания общего кода (библиотек и фреймворков) и описания древовидных структур (особенно пользовательских интерфейсов)». При этом в качестве «вдохновителей» Ceylon называется не только Java, но и «другие семейства языков: от Smalltalk до ML».
Компилятор Ceylon распространяется под лицензией GNU GPLv2 с исключением Classpath, поскольку он основан на javac из OpenJDK. Среда Ceylon IDE лицензирована под EPL (Eclipse Public License) 1.0, некоторые другие компоненты Ceylon — под Apache License 2.0.
17 часов назад американский программист и соучредитель id Software Джон Кармак (John Carmack) анонсировал в своем твиттере публикацию исходного кода популярной компьютерной игры Doom 3 под лицензией GNU GPLv3.
В своем сообщении Кармак благодарит Тимоти Бессета (Timothee Besset) за то, что он «сделал большую часть работы по подготовке релиза», и приводит ссылку на репозиторий с Doom 3 в GitHub. Лицензия GPLv3 была выбрана юристами ZeniMax Media (нынешняя владелица id Software), причина не уточняется (сам Кармак не интересовался у них, почему выбрана именно третья версия GPL).
В опубликованных исходниках Doom 3 не содержатся различные игровые данные (художественное оформление и т.п.), которые распространяются по своей коммерческой лицензии.
Вскоре после выпуска исходников стартовал Open Source-проект iodoom3 от создателей ioquake3. В рамках этой инициативы планируется создание открытых игр на базе движка из Doom 3 (id Tech 4).
Компания id Software, стоящая за многими популярными компьютерными играми, публиковала исходный код и для других своих творений. Например, в прошлом году стали доступны исходники игры «Return to Castle Wolfenstein».