Jako programista, stoczyłem ponad miesiąc na polu walki pomiędzy standardami, a wdrożeniami. Chodzi mi oczywiście o technologiczne podłoże 10przykazan. Z przykrością stwierdzam, że żaden z agregowanych przez nas serwisów blogowych nie generuje poprawnego kanału RSS.
Piszę to w nawiązaniu do analizy polskiej blogosfery, napisanej przez Riddle’a, a do której nawiązał też Maciej Łebkowski. Poziom techniczny naszego kawałka Internetu przypomina bardziej chałupy zbudowane z powiązanych drutem łodyg bambusa, niż domy. Niby wszystko działa, niby wszystko mamy to samo, ale wystarczy zajrzeć pod śliczny papierek z kokardką, żeby okazało się, że pod spodem mamy pęk drutów posklejanych taśmą klejącą.
Drodzy panowie administratorzy serwisów — kanał RSS jest aplikacją XML i wymaga kodowania encji w standardzie XML. Tak, oznacza to dokładnie tyle, że ampersand i znak mniejszości powinny być zamienione na ich odpowiedniki (w praktyce, dla czytelności, zamienia się też znaki większości). Nie, kanał RSS nie jest dokumentem HTML i stosowanie w nim encji HTML to raczej głupi pomysł — dokument przestaje być poprawny.
RSS przewiduje dwa formaty podawania dat. Wersja 1.0 i wcześniejsze stosowały kosmiczne kodowanie W3C, wersja 2.0 podaje czas w standardzie RFC 822. Używanie pierwszego wariantu w RSS 2.0 jest błędem.
Gdyby 10przykazan miało przetwarzać tylko poprawne dokumenty, to musiałbym usunąć z serwisu wszystkie blogi, które nie są oparte o WordPressa.
Technorati Tags: wordpress, rss, blog, xml


by m
22 sty 2006 at 19:08
Niedawno też kleciłem mały kawałek kodu do odczytu feedów RSS na własne potrzeby i sporo gównianych tricków w tym było. Anyway, tak to jest jak ludzie zamiast pomyśleć, zaproponować i poczekać siądą od razu do standaryzacji… i tak oto mamy teraz generalnie RSS w dwóch wersjach i Atom, które z punktu widzenia końcowego usera niczym a niczym się nie różnią, służą w końcu do tego samego. Najweselsze jest to, że Atom dorobił się RFC (4287, „The Atom Syndication Format”).
Nie zauważyłem za to, żeby na zachodzie, w szczególności za oceanem, było lepiej z przestrzeganiem tych „standardów” — nawet duże i bardzo duże serwisy niekoniecznie budują poprawne feedy RSS [1]. Pewnie dlatego, że liczba wejść na ich strony przez linki z RSS stanowi mniej niż 1%…
btw, może warto wskazać jakieś sprawdzone biblioteki do budowania feedów? Z jednej strony niby nie jest trudno samodzielnie sklecić kawałek XML, z drugiej, jak widać, diabeł tkwi w szczegółach. A to właśnie brak popularnych narzędzi sprawia, że ludzie po nocach potworki tworzą zamiast na becikowe pracować.
[1] http://validator.w3.org/feed/check.cgi?url=http%3A%2F%2Fhealth.yahoo.com%2Fnews%2Frss%2Fhealth
by Patrys
22 sty 2006 at 19:50
Z technicznego punktu widzenia, ATOM jest dużo lepszym formatem od RSS. Problem w tym, że u nas daleko mu do popularności.
by Maciej Łebkowski
22 sty 2006 at 20:13
Oczywiście poza pięcioma podstawowymi:
http://www.w3.org/TR/REC-xml/#sec-predefined-ent
Rozumiem, że w tym swoim rozpędzie mówileś również o moim blogu/kanale RSS? Bo ja nie widzę u siebie żadnych niepoprawnych danych.
Mówisz o tym samym WP, które potrafi podzelić stringa tak, że odcina jeden bajt z dwubajtowego znaku? :-)
by Patrys
22 sty 2006 at 21:56
Maciej:
Nie, nie chodziło o ciebie akurat. Chodzi mi głównie o serwisy typu jogger.pl, blog.pl itp.
by DeeJay1
22 sty 2006 at 22:50
Nie tak dawno Google sporządziło stosowne statystyki odnośnie feedów, można sobie przejrzeć je tutaj, jeśli ktoś nie miał okazji oglądać (aczkolwiek wartości są podane w procentach, to i tak daje w miarę dobry pogląd na zawartość feedów „blogosfery”).
by m
23 sty 2006 at 00:08
Patrys:
Hmm, ale o co chodzi? Nie przyglądałem się z lupą, ale nie widzę w Atom tych ekstra ficzerów rewolucjonizujących ideę RSS ;). Sęk w tym, żeby chociaż dla jednego z tych „standardów” popularyzować bibliote(cz)ki, które pozwalają na wygodne i poprawne tworzenie feedów. Nie wiem, jak to wygląda np. z punktu widzenia programisty php, ale generalnie jest trochę kiepsko. A za granicą taki sam śmietnik jak u nas.
i jeszcze:
Hej, no skąd to rozżalenie! Tak to już jest, że real world nigdy nie będzie idealny, dopóki nie wymrą ludzie, poza tym Szef Projektu ™ nie powinien się martwić takimi pierdołami ;).
by m
23 sty 2006 at 00:12
DeeJay1:
A w Google Readerze to ludzie niby najczęściej blogaski subskrybują? Not so sure ;)
Sam nie śledzę przez RSS żadnego bloga, bo informacje w interesujących serwisach aktualizowane są dużo częściej niż najciekawsze blogi, które mogę sobie wieczorkiem przejrzeć sam.