Нотатки з конференції FOSDEM'08

Нотатки з конференції FOSDEM'08

Вступ

Отже, цього року мені вкотре (23-24 лютого) вдалося побувати на

FOSDEM — Free Open Software Developers European Meeting.

Цей захід проходить щорічно наприкінці лютого у Вільному Університеті в Брюсселі.

Як і минулого разу, не буду вдаватися в технічні деталі доповідей, просто спробую передати атмосферу конференції. Якщо вам хочеться погортати слайди або подивитися відеозаписи виступів то ви це зможете знайти на офіційному фосдемівському сайті.

Цього разу я більше зосередився на доповідях, які мені були цікаві, тому я не можу вам розповісти більше того, що бачив і чув сам.

Мені цікаво було послухати людей які працюють з FreeBSD і паралельними системами (кластерами та іншим HPC), тому більшу частину часу я провів в * BSD user group room.

Субота

Після традиційної п'ятничної Beer Party (бельгійське пиво - це просто музика!), з ранку в суботу ми вже були на відкритті конференції, яке за традицією проводиться в аудиторії Janson. Після вступного слова FOSDEM committee настала черга першої доповіді - «Linux in Hollywood». Все було смішно до того моменту коли хтось не запитав доповідача яке саме вільне ПЗ використовують в Голлівуді. Крім самого лінукса той не зміг назвати що-небудь (ffmpeg не в рахунок). Зал зароптав:)

Але що поробиш, це правда життя - серйозна обробка відео на даний момент часу забезпечується тільки платними пакетами.

<img

src=«https://habrastorage.org/getpro/geektimes/post_images/c13/037/eec/c13037eec0c9d35cf86639a0138a7576.jpg» />

Сервери проекту FreeBSD

<img

src=«https://habrastorage.org/getpro/geektimes/post_images/efc/dc2/ace/efcdc2ace79a0b1c0508d801a8605c14.jpg» />

Пояснення до різних гілок розробки

<img

src=«https://habrastorage.org/getpro/geektimes/post_images/21e/d01/a8c/21ed01a8c399d15f366a07515a1f002f.jpg» />

FreeBSD ecosystem

<img

src=«https://habrastorage.org/getpro/geektimes/post_images/f77/975/16d/f7797516df5ba5bb492e2b5a9a74896d.jpg» />

Графік розподілу учасників проекту за віком

<img

src=«https://habrastorage.org/getpro/geektimes/post_images/b94/27d/f57/b9427df57001825acfbdc9c8c064f949.jpg» />

Карта світу з місцезнаходженням розробників

Втім, найцікавіше почалося після цього. Треба сказати, мене дуже радує збільшення BSD-related контенту з кожним роком. Цього року одним з перших доповідачів на конференції був сам Роберт Ватсон, security officer з FreeBSD core team! І тема його доповіді («How a large scale open source project works») на мій погляд дуже актуальна - він розповідав про те, як організована розробка проекту FreeBSD. Добре злагоджена робота тисяч людей, багаторівневий контроль якості, обговорення нових фіч, вирішення виникаючих суперечок між розробниками - це дозволяє створювати якісну операційну систему без якої немислимо нинішній інтернет.

Мені пам'ятається виступ Алана Кокса, майнтейнера ядра Linux, яке я слухав пару років тому. Він тоді дуже хвалив організацію роботи в команді FreeBSD, скаржився, що йому з кожною версією доводиться розгрібати код, мержити патчі. Тоді в своїй доповіді він розповідав про ізоляцію коммітів в різні branches так щоб нові шматки коду спочатку проходили тести інтеграції і потім тільки потрапляли в стабільну версію так як це роблять хлопці з FreeBSD. У розмовах в кулуарах багато хто скаржився що так, мовляв, доводиться постійно стежити за новими версіями ядра і оперативно оновлюватися.

Ну та гаразд, не хочеться сперечатися що краще - кожен вибирає для себе. Мені тільки здається, що * BSD системи недостатньо відомі широкій публіці і такого роду доповіді дуже потрібні всім нам. До речі, Роберт Ватсон виступав у найбільшій аудиторії яка доступна на FOSDEMe і зал був повністю забитий - люди навіть сиділи на сходинках у проходах.

Наступна доповідь «Status update of Software Patents» була трохи сумною - ситуація ускладнюється з кожним роком. В Америці патентування стало основним гальмом повсюдного поширення інноваційних технологій, патентні бар'єри там всюди і ІТ-індустрія дуже від цього страждає. Ситуація в Європі на щастя трохи краща, проте великі компанії здійснюють потужне лобіювання своїх інтересів. Доповідач - юрист за професією, він з колегами захищає інтереси Open Source Community і був вельми песимістичний. Без підтримки з боку урядів і без роз'яснення шкоди патентування буде дуже важко боротися з цими бар'єрами.

Після обіду я пішов послухати відкриття FreeBSD Developer Room. Так як хлопці з Берклі роблять не тільки unix систему, але і PostgreSQL, то вони робили свої доповіді в корпусі AW. Це було зручно, до того ж постгресівці недавно випустили серйозно перероблену версію своєї БД.

Цій події і була присвячена перша доповідь - перераховувалися нововведення і поліпшення існуючої функціональності. Основне в новій версії - це повністю перероблений движок, який тепер став значно продуктивнішим.

Далі слідувала доповідь про нову версію FreeBSD 7.0, проте я і сам був в курсі всіх її нововведень так як уважно стежу за її розвитком і заапгрейдился ще напередодні. Тому я піддався на вмовляння друзів і пішов послухати Андрія Зміївського з його «Unicoding with PHP6». Загалом, нічого особливого крім повної підтримки юнікоду в новій версії немає, вся доповідь була про те, як тепер буде здорово писати на пихпиху без різних милиць. Мені ще чомусь здалося що Андрій був якось відсторонений, «далекий від аудиторії», його доповідь «не чіпляла». Було відчуття що йому все одно на цей проект, що він просто приїхав відзвітувати про роботу. До речі, мною було помічено кілька хлопців з RoR-community, вони тихо сиділи і лише зрідка багатозначно переглядалися посміхаючись:) Питань вони не ставили...

Як мені сказали, попередня доповідь «Perl 6» була також нудною - розробники повністю змінили синтаксис перла не додавши нічого істотного по суті. У кулуарах щосили обговорювалося як тепер буде складно переписувати все під нову версію - як відомо, перл важкочитний мову, буде дуже складно розібратися в реалізованому функціональності і відтворити те ж саме, що працює в новій версії. Загалом було багато критики на адресу Патріка (доповідача). Той виправдовувався, навіть спеціально підкреслив, що він «лише реалізував те, що затвердило ком'юніті». Новий синтаксис - це до речі щось, гляньте як небудь якщо буде час, є дуже цікаві речі.

Патрік особливу увагу в доповіді приділив Parrot - цікава речниця, що дозволяє легко робити інтерпретатори нових мов за бнф-схемою.

Загалом після PHP6 я не витримав і повернувся до * BSD & PgSQL talks. Там якраз закінчували обговорювати статус SNMP в FreeBSD (як я зрозумів справи просуваються непогано). Далі слідувала доповідь, детально описує прогрес у збільшенні швидкодії постгрес сервера. Хоча я все це вже читав і це вже обговорювалося в багатьох місцях в інеті, було цікаво дізнатися деталі, за рахунок яких була поліпшена продуктивність. Це переважно велика передиктивність рушія і більш розумне управління операціями введення-виведення на диск.

Далі мало бути найцікавіше - «SWOT Analysis between PostgreSQL and MySQL». Зал забився під зав'язку. Тут треба сказати, що на конференції були присутні багато людей з MySQL і кілька людей з Sun. Торік тут виступав віце-президент Sun з open-source технологій Simon Phillips зі своєю доповіддю «Liberating Java». Цього року я його бачив в кулуарах, крім того був традиційний стенд OpenSolaris і як відомо, Sun - один зі спонсорів FOSDEM. Тепер дабавте до цього той факт, що Sun недавно придбав MySQL. Представляєте тепер який інтерес був до цієї доповіді з обох сторін?

З одного боку PostgreSQL під BSD-ліцензією і з іншого - поки вільний, але з потужним корпоративним покровителем MySQL.

Коротше, перед нами вийшла тітонька і повідомила, що доповідь переноситься на неділю. Через пару хвилин зал майже спорожнів...

Загалом, далі було не дуже цікаво і я вирішив прогулятися і поглазіти на стенди.

Треба сказати, на FOSDEMe можна скласти іспити з Linux і FreeBSD адміністрування. Це дуже зручно, оскільки інакше досить складно утрясти різні організаційні питання.

Так закінчився перший день конференції.

Неділя

У неділю я спочатку зацікавився системами складання проектів і відправився послухати доповідь про Hudson. Доповідь була коротка, всього півгодини, протягом яких доповідач розповів як конфігурується цей тулкіт і «як воно здорово працює потім». До кінця я не дослухав, так як в 10:30 починався «Postgres Future Directions» і я побіг туди.

Там Брюс Момжлан захопливо розповідав про різні нові ідеї, які постгресівці хотіли б реалізувати в наступних версіях. Він зізнався, що звичайно все не вдасться реалізувати до наступної версії, але тим не менш в 8.4 будуть поліпшено пристрій сховища і оптимізована робота індексів і деяких вбудованих функцій. У майбутньому вони поліпшать кластеризацію (тут думаю можна і взяти участь навіть) і реплікацію.

Ви знаєте, але мені дуже сподобалося як Брюс все це розповідав, він так захоплений цим проектом! У нього є та сама іскорка в очах, він говорив не по слайду, а від душі, здавалося що ідеї у нього народжувалися прямо тут. Я дуже порадів за цей проект, він у правильних руках і ці хлопці знають що роблять. В кінці він звичайно ж зірвав оплески:)

Далі виступав Магнус, розповівши про те, як вони портували PostgreSQL на Win32 платформу в native режимі. Ну тут звичайно йшлося про fork (), shared memory, I/O і тп - типовий набір проблем при портуванні. Довгий час вони відставали від основної гілки розробки, але поступово нагнали її і інтегрували свої напрацювання в неї. Дивно, але в якийсь момент у них була краща продуктивність, ніж в unix-версії. До речі, я не знав, що основна система, під якою розробляється PostgreSQL - це FreeBSD. Зараз вже не пам'ятаю хто, але хтось із доповідачів говорив напередодні, що FreeBSD - їх основна робоча конячка. І хоча вони не заточують код спеціально під неї, проте стверджувалося, що найкраще постгрес крутиться саме на фрі. Ось такі справи.

Звичайно, доповідача запитували, навіщо вони затіяли портування на пропріетарну систему, на що той сказав, що це дозволить значно розширити кількість людей, які використовують цю чудову БД. Важко не погодитися.

Наступна 15-хвилинна доповідь була про «Ruby on Rails on FreeBSD with PostgreSQL». Ну що ж, тут нічого екстраодинарного для мене не було, я і сам рік тому сконфігурував у себе вдома таку зв'язку, навіть з Apache впридачу - перевіряв для хостингу. Все просто працює, нічого особливого.

Потім була невелика доповідь про «DBI-Link 3.0» - це Perl-binding для PostgreSQL, теж корисно знати.

Далі був «New Enterprise Features in PostgreSQL» де описувалися різні можливості щодо резервного копіювання, управління вкладеними транзакціями і тп.

Після обіду була цікава систематизуюча доповідь про GNU autotools: autoconf, automake, libtool etc. Дійсно, такі речі дуже важливі, оскільки дозволяють стандартизувати збирання відкритих проектів і позбутися вирішення безлічі вже вирішених проблем. Доповідач категорично попросив використовувати тільки autotools і не винаходити велосипед щоразу заново. "Навіть не думайте створити щось схоже на autotools, швидше за все ви просто не зможете це зробити, але витратите багато сил даремно. Краще беріть наш інструментарій і зосередьтеся на тій ідеї, яку збираєтеся реалізувати ". Ще він розповідав як розгрібав одного разу чийсь проект, який наполовину був в autotools, наполовину - в анархії. Наводив перли програмування - виявляється багато хто намагається використовувати autotools не до кінця розуміючи як це працює. Загалом, хоча я і користуюся цим у роботі, але мені захотілося освіжити свої уявлення про це. Зараз собі завантажив мануал за цими штучками, перечитую, дізнаюся нові деталі, просвітлюся:)

Наступна доповідь була про повнотекстовий пошук на сайті постгреса. Виявляється, якщо правильно застосовувати вже реалізовані речі, то все це працює дуже швидко. Ну і звичайно потрібно гарненько обміркувати що і як індексувати.

Я звичайно розумію, що такі речі як DBSight (що базується на Lucene) більш універсальні, але як показує приклад того ж Sphinx, спеціалізовані рішення дозволяють домогтися кращого. Нічого екстраодинарного в доповіді не було, просто приклад правильного підходу до вирішення завдання використовуючи штатний функціонал PostgreSQL.

Останнє що мені вдалося послухати цього разу - це доповідь про реалізацію «Two-Phase Commit with PostgreSQL», яку було реалізовано у версії 8.1. Звичайно це вже давно існує в багатьох комерційних БД, але той факт, що це є в постгресі ставить його в один ряд з ними.

Тут моя увага була привернута не стільки доповіддю, скільки підсівши поруч зі мною... Робертом Ватсоном! Звичайно ж мені захотілося поспілкуватися з ним ближче.

Повинен сказати, він мені здався молодшим ніж на фото, з вигляду молодше 30 років. У нього 15 «» MacBook Pro з Tiger (у мене око натякане, так як я сам сиджу за макбуком і недавно пересів на леопарда, різницю бачу відразу). Правда Роберт практично не користується рідними «маковими» додатками (мабуть крім Safari) - я помітив кілька терміналів з ssh-сесіями в яких він дивиться пошту через Pine, чатиться в IRC за допомогою чогось текстового і звичайно ж компілює щось в eterm в текстовому Emacs:Ех, адже ми з ним в чомусь схожі виявляється...

Не пам'ятаю, говорив я чи ні, але на FOSDEMe в кожній будівлі є кілька точок доступу Wi-Fi. Вільного природно, так що багато хто сидить зі своїми лептопами і чогось там «хачат» весь час.

Я не став його сильно відволікати, та й доповідь теж послухати треба було, він мені сказав, що фря вже релізнута, то не відрепліціювалася ще на всі дзеркала, порадив для надійності cvsup-нутися в понеділок або пізніше.

(UPD: дійсно, вихідці були позначені тегом тільки 26-го, я вже

оновився).

Різне

Після цього я пішов шукати своїх товаришів тому що треба вже було збиратися щоб повертатися додому. Ми купили кілька книжок (O'Reily теж спонсори конференції) і ще раз пройшлися повз стенди. Народу вже було менше - багато хто поїхав.

<img

src=«https://habrastorage.org/getpro/geektimes/post_images/4c1/730/78d/4c173078d95505748160d5c6c60fa505.jpg» />

Було кілька десятків людей, які обмінювалися PGP-ключами. Це традиційна Key Signing Party, на якій люди показують свій паспорт і обмінюються з партнером своїм публічним ключем. Цього року вперше був ще й обмін SSL-сертифікатами, але як я читав, Open CA поки не визнається серйозними організаціями, їм необхідно пройти сертифікацію щоб стати повноцінним certificate authority. Тим не менш, вже зараз можна зареєструвати публічний сертифікат Open CA у себе на комп'ютері і з певною часткою захищеності користуватися криптованим контентом. До речі, Open CA підтримується практично у всіх відкритих веб-броузерах. Тому ви можете створити власний сертифікат і підписати його у Open CA, щоб зробити доступним криптований контент на своєму веб-сервері. Жодних попереджувальних повідомлень про «self-signed certificate» користувач не побачить, як якби ваш сертифікат був підписаний самим Verisign наприклад.

Трохи про атмосферу конференції.

Як зазвичай, були присутні кілька сильних user groups - Debian, CentOS, Jabber, KDE, Gnome, PostgreSQL, * BSD, OpenSolaris, Gentoo (хоча вони щось зовсім здулися в цьому році). Був стенд з embedded пристроями, правда мені здалося, що там не було нічого нового в порівнянні з попереднім роком. Перший раз масово були представлені Mozillівці - і значки у них там розсипом лежали, і плакати вони роздавали, і тениски продавали:) Стало більше представлено * BSD і пр - у них були навіть два великих стенди цього разу. Відповідно значно більше було людей від PostgreSQL, стенд був теж помітний здалеку - і синій слон, і значки, і тініски (купив собі одну, не втримався), і книжки-диски у них були. Стенди KDE і Gnome були неподалік один від одного, навпаки - традиційна дошка оголошень на стіні з купою наклеєних post-it-ів ЗА і ПРОТИ. Навколо штовхався народ і обговорював написонне там.

<img

src=«https://habrastorage.org/getpro/geektimes/post_images/c85/65d/210/c8565d210113443c89b215bfcce96db1.jpg» />

За моїми спостереженнями, приблизно 60% відвідувачів - звичайні користувачі, які цікавляться open source. З решти - приблизно половина кулхакерів, які часто намагаються виділитися всякими wicked T-shirts, обклеєними всякою нісенітницею laptops тощо. Решта - це люди реально беруть участь у розробці відкритих проектів або представники компаній, що серйозно використовують open source проекти.

Мені здається що в цьому році стенди були менш популярні ніж talk rooms. Це радує, це означає, що все більше цей захід служить для обміну думками і для поширення ідей. Знову був Гугл, але дуже непомітно, стенду у нього зовсім не було, але захід він спонсорував. Ось би Sun у нього приклад взяв, а то вже дуже він затуляє багато проектів собою...

Вибір книг від O'Reily цього року мені не дуже сподобався, бракувало чогось ґрунтовного, вічного (як Страуструп наприклад). Було багато книжок-одноденок, які в більшості своїй повторюють мануали і які тому купувати не хочеться.

Сподобався вибір пива в кафетерії, тут у організаторів прогрес очевидний, молодці. Кому як, але я залишився вірний своєму улюбленому Kriek. Може бути слід було б відкрити другий кафетерій десь неподалік, а то народу стає більше і в перерві доводиться стояти велику чергу щоб купити свій сендвіч. Ми з друзями в результаті поїли в ресторані неподалік, але це вже і подорожче і довше.

Ах так, ті хто читав мій попередній звіт пам'ятають про ту дівицю в короткій спідниці, яка приїжджає на FOSDEM щороку. Так ось, ми бачили її в цьому році знову, правда вона була з хлопцем в цей раз:Ну та й гаразд...

Ось такі враження.

28 Feb 2008