Kilka dni temu natchnęło mnie na wyszukiwanie informacji o prowadzonych projektach badawczych wokół OSGi na polskich uczelniach. Nie pamiętam dokładnie jaką frazę wpisałem w Google, ale było to bodajże "osgi uniwersytet" i w zakładce zaawansowane wybrałem język polski. Ku mojemu zdumieniu natrafiłem na bardzo zaawansowany technologicznie projekt IT-SOA, którego uczestnikami są AGH z Krakowa, Uniwersytet Ekonomiczny w Poznaniu, Politechnika Poznańska, Instytut Podstaw Informatyki PAN i Politechnika Wrocławska.
Za stroną główną projektu: "Projekt dotyczy współczesnych technologii informacyjnych działających w systemach rozproszonych." Nie powiem, żeby mnie nie zaintrygowało. Zacząłem przeglądać informacje o projekcie i trafiłem na Obszar Badawczy 5, którego tematem przewodnim był OSGi (było tam kilka innych akronimów, ale ja widziałem, albo chciałem widzieć, jedynie OSGi :)).
Postanowiłem napisać do koordynatora projektu (namiary na stronie Kontakt) i niedługo musiałem czekać, aby dostać odpowiedź z...Sekretariatu Projektu SOA. Po krótkiej korespondencji z panem prof. Krzysztofem Zielińskim z AGH, który zawiaduje projektem okazało się, że dzisiejszy dzień (środa) jest najlepszy dla obu stron i spotykamy się w Krakowie, aby przedyskutować temat współpracy (okazało się, że IBM jest również zaangażowany w temat, więc nie mogłem życzyć sobie więcej).
Po kilkugodzinnej rozmowie w gronie pracowników AGH zaangażowanych w temat okazało się, że mimo początkowego sceptycyzmu, że OSGi jest, i SOA też, ale pewnie jedynie dla wzmocnienia przekazu projektu, bez jakiegokolwiek mocniejszego wykorzystania, projekt nie tylko, że wymienia je z nazwy, ale rozpoznanie technologiczne nie skupia się na podstawowym użyciu, ale również w postaci rozwiązań typu Spring-DM, Swordfish, Distributed OSGi (D-OSGi) i in. Bardzo mocno korzysta się z ServiceMix 4 z jego wsparciem dla OSGi i możliwością klastrowania komponentów JBI (jako członek ServiceMix PMC nie miałem nawet świadomości, że JBI jest wspierane przez niego). Padły również akronimy typu SCA, CEI (rozwiązanie WebSphere AS do rozgłaszania komunikatów) oraz CBE (format komunikatów), więc można sobie tylko wyobrazić, jak chłonąłem te wszystkie informacje podczas spotkania. Widać, że jest z kim porozmawiać na te tematy w Krakowie, bo na AGH naliczyłem 6 osób, które wiedzą, co w trawie piszczy.
Byłoby to niesamowite doświadczenie móc uczestniczyć w tego typu przedsięwzięciu, więc rozpoczynam moją krucjatę, aby choć przez chwilę móc czerpać z doświadczeń projektu IT-SOA.
Podczas podróży miałem okazję przeczytać pierwsze rozdziały książki Programming Clojure. Jedyne co mogę powiedzieć po 3 rozdziałach, to że programowanie funkcyjne jest...trudne dla mojego imperatywno-obiektowego postrzegania świata. Wciąż zachodzę w głowę dlaczego miałbym się nauczyć Clojure, ale skoro mam o nim książkę i wielu wychwalało programowanie funkcyjne jako odświeżające, postaram się wytrwać do końca. Tak wiele trudności w zrozumieniu tematu z branży IT już dawno nie miałem, a już odnośnie samego programowania, wcale. Czy tylko ja doświadczam takich trudności intelektualnych?!
Odnosnie programowania funkcyjnego.. pozwole sobie wtracic cytat
OdpowiedzUsuń"A language that doesn't affect the way you think about programming, is not worth knowing."
No, a programowanie funkcyjne (i moj ulubiony Haskell) zdecydowanie zmienia podejscie do programowania ;)
Faktycznie, jeśli wziąć ten cytat jako myśl przewodnia do lektury tej książki, to czekają mnie niesamowite "wstrząśnienia" :) Piszesz ulubiony Haskell. Możesz jeszcze napisać do czego go stosujesz? Wtedy ja wiedziałbym do czego ja zastosuję Clojure.
OdpowiedzUsuńServiceMix 4 to projekt, który po prostu wyrasta na porządnego gracza - OSGi, poprawione wsparcie dla klastrowania, konsola administracyjna z prawdziwego zdarzenia, rozbudowany hot-deployment, routing komunikatów z Apache Camel - wszystko to można podsumować jako "killer app integration infrastructure". :)
OdpowiedzUsuńTeż ostatnio trafiłem na IT-SOA, bo akurat moja uczelnia w tym uczestniczy, ale we Wtorek planuje przestać być studentem ...
OdpowiedzUsuńPomijając współbieżność, podejrzewam, że po powrocie z Clojure do Groovy, zauważysz kolejny przyrost wydajności. Np. zaczniesz używać foldLeft, map, reduce i inne takie niezrozumiałe twory ;)
Chwilowo akurat nie stosuje haskella do niczego ;) A jesli juz, to glownie do problemow czysto matematycznych.
OdpowiedzUsuńPodoba mi sie ze wzgledu na swoja czystosc i relatywnie (tzn. jak na jezyk funkcyjny) prosta skladnie - mozna tworzyc swoje DSL jeszcze prosciej niz w groovym. Inne jezyki maja duzo ulatwiaczy - to kawalek programowania obiektowego, to jakies zmienne, albo cos innego jest w jezyku, co powoduje ze teoretycznie latwiej sie przesiasc, ale nie ma wtedy az takiego rygoru zeby przestawic myslenie na funkcyjne. W haskellu nie ma tak latwo :D
Heh, jako czytelnik Twojego bloga nie spodziewalem sie, ze przeczytam tu o projekcie w ktorym uczestnicze :-)
OdpowiedzUsuńMoze i zajmuje sie tylko namiastka tego kobylastego systemu (monitorowanie wykonania BPELa) to projekt na prawde robi wrazenie. Oby cos z tego wyszlo!
@Mateusz, a ja wierzę, że będę mógł wykazać się swoją wiedzą OSGi/SCA i produktów wokół. Zobaczymy.
OdpowiedzUsuń