Schematron to the rescue!

In an ideal world all the standards fit well into their places. It is sufficient to use just one serious standard, because all the problems can be solved with it - the standardization processes is there for some reason. But that happens only in ideal world, which we're not living in. In ideal world, when dealing with XML instances you'd be more than fulfilled using XML Schema, or RelaxNG, or any other simple xml formal definition language to declare your data structure. With that you get rigid rules as to how XML documents should look like. There doesn't seem to be much space to deviate from specs. Well, in fact there is. ...

October 21, 2010 · 5 min · Marcin Cylke

Complex flows with Apache Camel

At work, we're mainly integrating services and systems, and since we're on a constant lookout for new, better technologies, ways to do things easier, make them more sustainable, we're trying to Usually we use Apache Camel for this task, which is a Swiss-knife for integration engineer. What's more, this tools corresponds well with our approach to integration solutions: try to operate on XML messages, so you get the advantage of XPaths, XSL and other benefits, don't convert XML into Java classes back and forth and be worried with problems like XML conversion, try to get a simple flow of the process. However, at first sight Apache Camel seems to have some drawbacks mainly in the area of practical solutions ;-). It's very handy tool if you need to use it as a pipeline with some marginal processing of the data that passes through it. It gets a lot harder to wrap your head around if you consider some branching and intermediate calls to external services. This may be tricky to write properly in Camel's DSL. ...

August 26, 2010 · 5 min · Marcin Cylke

Meetbsd 2010

Some time ago, I've attended MeetBSD conference in Kraków. This BSD event is held yearly in either Warsaw, or Kraków. Due to relatively small group of people that registered there was only one track, which had both good and bad sides - you didn't have to choose from myriads of lectures, but there was no way to skip boring ones either. Well, I guess this kind of niche conference - about operating system :) - will not attract bigger attention. ...

August 18, 2010 · 5 min · Marcin Cylke

6+ hour layover in Stockholm

Last Monday, while coming home from Sweden, I had ~7h layover between my flights. Since Arlanda Airport does not offer a lot to do, at least not for me and not for 7h, I had decided to go to Stockholm. This post sums up a few nice places, that I'd like to visit on my next trip there. I took Arlanda Express, fast train that takes you directly from the airport to Stockholm. On board, you travel with 200km/h in good enough conditions. The trains takes you near the Central station in 20 minutes, which is great! The main venue I planned to see was Gamla Stan. All the attractions were also there, on the island. ...

August 12, 2010 · 3 min · Marcin Cylke

Generic Enum converter for iBatis

My goal was to create a simple, extensible Enum converter that would work with iBatis. This seems like a trivial problem, but took me a while to find a proper solution. There were some additional preconditions: all given Enums are jaxb generated objects - but any standard Java Enum should work conversion was 1-to-1, no special conditions and processing The example Enum for this problem looks like this one (copy&paste from jaxb generated source): ...

June 28, 2010 · 2 min · Marcin Cylke

Readability powala!

Już dziś możecie skorzystać z "umilacza" czytania artykułów. Od zawsze denerwowało mnie rozpraszające badziewie na stronach z artykułami. Teraz z tym koniec. Odkąd odkryłem Readability -- strona bookmarkletu,. Wszelkie instrukcje na temat korzystania są dostępne na stronie projektu, tak więc warto sprawdzić. Comments Marcin Zgodnie z niektórymi źródłami, to jednak jest tam część kodu Readability. Polecam ten link: http://www.downloadsquad.com/2010/06/08/think-safari-reader-looks-familiar-thats-because-apple-used-op/ Dominik Porada > Z tego co gdzieś tam czytałem, to nawet Apple wykorzystał kawałki kodu JS z tej strony w Safari nowym. Wątpię, aczkolwiek Reader na pewno powstał dzięki inspiracji Readability. ...

June 28, 2010 · 1 min · Marcin Cylke

Javarsovia 2010

This year's Javarsovia conference took place on 26th june. It was held at Centrum Konferencyjno-Kongresowe, Bobrowiecka Street, Warsaw. First of all - the organization was very nice. Everything seemed smooth, maybe with the exception of conference registration, it was simply overcrowded. The agenda was split into four tracks, each hour 4 different presentations were given in different halls. So you just had to choose which one to attend. My path through the conference is described below, together with my views on each of the presentations I attended. ...

June 27, 2010 · 3 min · Marcin Cylke

osnews.com - hobby projects

Kilka dni temu na portalu OSNews pojawiła się notatka o skromym tytule: What Are You Working On?. Takie proste pytanie spowodowało lawinę komentarzy. Mnóstwo projektów, których ludzie się "dopuszczają" w czasie wolnym. Wszystkie można przeczytać tutaj: komentarze. Jest tam wiele do przeczytania, ale jeden komentarz naprawdę "zrobił mój dzień" :) Come on people, you can do better than that. - trying to improve a tube theremin I built last year to get more linear response. - putting a webcam in the eye of a HAL9000 replica finished a while ago so it can stream fisheye video ;) - part of a team which put a 4m high black monolith in the pedestrian area of my home town :-D - working on a hardware/software solution so my iTunes can display the current track on the cheap LED display i got off eBay - organizing a visit from Tesla Coil Orchestra to play on their tesla coils ...and all that wile running a museum of old computers. I think I may be overstretching myself a bit, but it feels good. Comments Marcin Słuszna uwaga - zmienię może :) ...

June 10, 2010 · 1 min · Marcin Cylke

Eclipse ecosystem

Do you use Eclipse? Or perhaps you use other IDE but would like to try "the big E"? Well, that's OK, and completely understandable, because Eclipse is actually a great, versatile tool. But Eclipse is not just an IDE, in fact it is a comp let, extensible platform. What's even more important, there are tones of valuable Eclipse-related projects gathered around the platform. Yes, there are lots. Some are good, some are bad, but the usual, stock ones, signed by Eclipse, are worth taking a closer look. They're not a mere innovation to the way we write code with an IDE. Those tools provide new ways to _create_ our code. ...

May 7, 2010 · 4 min · Marcin Cylke

Dmesg z Openbsd/sgi

Wracając do starego tematu OpenBSD na moim SGI O2, postanowiłem lekko odświeżyć tą maszynę. Dostałą uaktualnienie małe. Przysiedziałem również nad dostosowaniem systemu do swoich potrzeb, instalacji potrzebnego softu itp. Na początek dmesg z działąjącego systemu: [ using 433608 bytes of bsd ELF symbol table ] Copyright (c) 1982, 1986, 1989, 1991, 1993 The Regents of the University of California. All rights reserved. Copyright (c) 1995-2009 OpenBSD. All rights reserved. http://www.OpenBSD.org OpenBSD 4.6-current (GENERIC-IP32) #49: Fri Jul 31 05:07:50 MDT 2009 deraadt@sgi.openbsd.org:/usr/src/sys/arch/sgi/compile/GENERIC-IP32 real mem = 67108864 (64MB) rsvd mem = 7020544 (6MB) avail mem = 40771584 (38MB) mainbus0 at root cpu0 at mainbus0: MIPS R5000 CPU rev 2.1 180 MHz with R5000 based FPC rev 1.0 cpu0: cache L1-I 32KB D 32KB 2 way, L2 512KB direct clock0 at mainbus0: ticker on int5 using count register macebus0 at mainbus0: crime rev 10.1 macepcibr0 at macebus0: mace rev 1, host system O2 pci0 at macepcibr0 bus 0 ahc0 at pci0 dev 1 function 0 "Adaptec AIC-7880" rev 0x00: irq 9 ahc0: Host Adapter Bios disabled. Using default SCSI device parameters scsibus0 at ahc0: 16 targets, initiator 7 sd0 at scsibus0 targ 1 lun 0: SCSI2 0/direct fixed sd0: 4340MB, 512 bytes/sec, 8888543 sec total cd0 at scsibus0 targ 4 lun 0: SCSI2 5/cdrom removable ahc1 at pci0 dev 2 function 0 "Adaptec AIC-7880" rev 0x00: irq 10 ahc1: Host Adapter Bios disabled. Using default SCSI device parameters scsibus1 at ahc1: 16 targets, initiator 7 dsrtc0 at macebus0: DS1687 com0 at macebus0 base 0x00390000 irq 5: ns16550a, 16 byte fifo com1 at macebus0 base 0x00398000 irq 5: ns16550a, 16 byte fifo mec0 at macebus0 base 0x00280000 irq 4: MAC-110 rev 1, address 08:00:69:0c:98:fb nsphy0 at mec0 phy 11: DP83840 10/100 PHY, rev. 0 mavb0 at macebus0 base 0x00300000 irq 7: AD1843 rev 1 audio0 at mavb0 mkbc0 at macebus0 base 0x00320000 irq 6 pckbd0 at mkbc0 (kbd slot) wskbd0 at pckbd0: console keyboard power0 at macebus0 irq 6 gbe0 at mainbus0: rev 1, 8MB, 1280x1024 at 8 bits wsdisplay0 at gbe0 mux 1: console (std, vt100 emulation), using wskbd0 wsdisplay0: screen 1 added (std, vt100 emulation) softraid0 at root ahc0: target 1 using 16bit transfers ahc0: target 1 synchronous at 20.0MHz, offset = 0x8 boot device: sd0 root on sd0a swap on sd0b dump on sd0b Niby działa dobrze, z kilkoma wyjątkami: ...

April 25, 2010 · 3 min · Marcin Cylke

Unicode w Pythonie

Szlag by to trafił! Czemu tak ciężko jest obsługiwać unicode w pythonie? No niby wszystko jest ładnie konwertowane wewnętrznie na odpowiednie reprezentacje, ale jeśli przychodzi co do czego, i chcemy wypisać sobie taki ciąg znaków na ekran, to już jest ciężej. Weźmy prosty przykład. Wczytywałem plik z polskimi znaczkami, o taki: Roger Macdonald;Człowiek w żelaznej masce;25 a potem w kodzie pythonowym robiłem sobie tak: for line in open(sys.argv[1],'r').readlines(): print line.decode('utf-8') (.... tu wysłanie do jakiegoś tam Web Service'u) ...

April 21, 2010 · 3 min · Marcin Cylke

Reaktywacja o-filmoramy?

Mam nadzieję, że wreszcie jednak ruszę z blogiem filmowym, po raz kolejny należy mu się reaktywacja. http://o-filmorama.blogspot.com

April 21, 2010 · 1 min · Marcin Cylke

Mass Effect

Już dawno nie wciągnęła mnie tak żadna gra. To było olśnienie, ale dopiero za drugim razem wzięło mnie na dobre. Pierwsze podejście raczej mnie zniechęciło, bo choć fabuła zapowiadała się całkiem fajnie, to grając na XBoxie - przy użyciu pada - nie byłem w stanie poradzić sobie z celowaniem. Pewnie dziś byłoby lepiej, bo i technikę w tej dziedzinie podszkoliłem na licznych bijatykach i ef-pe-esach, ale i tak dorwałem werjsę na PC Mass Effect :D. ...

April 21, 2010 · 4 min · Marcin Cylke

Nokia bez certyfikatów :)

Od kilku dni walczyłem z wyłączeniem sprawdzania certyfikatów w Nokii E51. Okazało się, że to trywialna sprawa. Wystarczy: Tools -> App mgr -> Options -> Settings. Zmienić "software installation" z "Signed Only" na "All" i "Onlline certificate check" na "Off" :D Dzięki temu mogłem sobie zainstalować prostego i funkcjonalnego playera http://symbianoggplay.sourceforge.net/ i jest on o niebo lepszy niż ten domyślny dostarczany przez Nokie. Comments Marcin Cylke U mnie akurat zadziałąło :) a wszelkie próby korzystania z chińskich "rozwiązań" do odblokowywania Nokii poległy. Także jestem całkiem zadowolony. Oczywiście w świetle tego co napisałem, może się okazać, że to przez te szacher-machery z chińszczyzną dało się to łatwo odblokować w opisany przeze mnie sposób. ...

April 18, 2010 · 1 min · Marcin Cylke

Recenzja - Drools JBoss Rules 5.0 Developer's Guide

Kilka dni temu skończyłem czytać niezbyt grubą - jak na standardy branżowej literatury - książeczkę o Droolsach. A co to jest Drools? Ot taki silnik reguł od JBossa, stronę ma o tu: http://jboss.org/drools. Umożliwia on wydzielenie reguł biznesowych do oddzielnego komponentu przez co możemy zyskać na przejrzystości naszego kodu oraz odseparować potencjalnie podatny na zmiany fragment - logikę biznesową właśnie :) Oczywiście można przy pomocy Droolsów zrobić dużo więcej fajnych rzeczy, ale jest to dalekie od podstawowych informacji. ...

April 14, 2010 · 2 min · Marcin Cylke

Here cometh English :)

From this day on, this blog will contain only posts in English.

April 10, 2010 · 1 min · Marcin Cylke

Inteligentny mock w SoapUI

Któż z nas nie testował WebService'ów, a któż z nas nie używał do tego SoapUI :) Ok, z rzeczami oczywistymi dyskutować nie będę, ale przy okazji jednego projekciku okazało się, że fajnie by było gdyby mój mock potrafił zrobić coś więcej niż tylko odpowiedzieć na nadesłany komunikat. Oczywiście sam SoapUI posiada dosyć spory wachlarz możliwości, bo może wysłać losowy request spośród wprowadzonych, lub wysyłać wedle sekwencji, itp. Problem w tym, że moim wysublimowanym życzeniem było aby korelować komunikaty określonego typu na podstawie jednego pola z XMLa - nazwijmy je polem "X". Jeśli w polu X przyszła wartość, której do tej pory nie widzieliśmy - odpowiedz jednym komunikatem, jeśli ta wartość już została przez nas odebrana (ostatnio :) ), to prześlij trochę inną odpowiedź. ...

November 18, 2009 · 2 min · Marcin Cylke

Czyżby BPEL wreszcie stał się bardziej użyteczny?

Nieee... to po prostu udało mi się uruchomić BPEL Designera - plugin do Eclipse'a. Co prawda wymagało to grzebnięcia w źródłach, które nie były aktualizowane już od dłuższego czasu. Zmiany polegały głównie na poprawie zależności. Niemniej, plugin z wersją 3.5 Eclipse'a działa sprawnie. W poprzednich wersjach miał tendencje do zacinania się, a przyczyny tego nie udało mi się namierzyć. A co to jest BPEL? ...

November 15, 2009 · 2 min · Marcin Cylke

Solaris w TR

Wczoraj byłem w TR (http://www.trwarszawa.pl/). Na wejściówki, po taniości. Obejrzałem spektakl Solaris, bo to Lem, bo znam, bo jako jedną z niewielu rzeczy Lema czytałem. Powody były. Wrażenia? Bardzo fajnie się oglądało. Problem jedynie w tym, że z wydawałoby się dosyć prostej fabularnie książki zrobiono spektakl, którego nie da się w całości zrozumieć z powodu niedopowiedzeń. Czy to jest domena nowoczesnych interpretacji teatralnych?? Comments Marcin @Biały, tak, faktycznie. Ale ostatecznie na prawdę nie wyszło to tak źle. Akurat te aspekty, które wspomniałeś były ciekawie przedstawione. ...

November 13, 2009 · 2 min · Marcin Cylke

<p>Love - some kind of preview...</p>

Czytając mój ulubiony serwis o grach, czyli Rock-Paper-Shutgun dowiedziałem się, że osobnik znany jako Eskil Steenberg wypuścił nieinteraktywne preview swojego "multiplayer experience" - LOVE. O co tyle szumu? Wystarczy spojrzeć na to jak gra wygląda. Nie chodzi w tym o jakąś wypasioną grafikę, a o frajdę z gry. Eskil pisze swoją grę w pojedynkę. Idzie mu to naprawdę sprawnie. A zestaw narzędzi jakich używa wprawia mnie za każdym razem w podziw. Chodzi mi z grubsza o narzędzia pokroju Verse (http://www.quelsolaar.com/verse/), które to jest rozproszonym edytorem modeli 3D. Pozwala na współpracę wielu osób i do tego integruje się chociażby z Blenderem. A to tylko wierzchołek tej góry :) Całość wygląda niesamowicie innowacyjnie i imponująco. ...

September 24, 2009 · 1 min · Marcin Cylke