Diffengine – narzędzie do śledzenia zmian w treści newsów publikowanych online

Diffengine (skrót od difference engine) to oprogramowanie stworzone w ramach projektu „Documenting the Now” (DocNow) przez Maryland Institute for Technology in the Humanities. Narzędzie to służy do śledzenia zmian w publikowanych on-line treściach (głównie newsach czy wpisach blogowych) dzięki wykorzystaniu kanałów RSS.

Zasada działania diffengine jest prosta: program subskrybuje wybrane kanały RSS i automatycznie wyłapuje oraz dokumentuje zmiany w publikowanych w nich treściach (tworzy tzw. diff – zapis powstałych różnic). Jeśli komunikowany przez RSS artykuł zostaje edytowany i już po edycji zostaje ponownie wysłany kanałem RSS w zmienionej wersji, program wysyła jego URL do zarchiwizowania w Wayback Machine oraz publikuje na Twitterze informację o zmianie.

Treści publikowane on-line, w przeciwieństwie do tych w papierowej wersji, są dynamiczne i często zmieniają się z czasem, jednak informacja o tych zmianach nie zawsze jest łatwo dostępna dla odbiorców. Mniej lub bardziej poważne zmiany w zawartości informacji mogą być spowodowane nie tylko chęcią ich uaktualnienia czy poprawienia po zauważeniu błędów. Negatywne reakcje opinii publicznej, bezpośrednie interwencje polityczne czy grup interesu albo autocenzura również mogą być przyczyną wprowadzania zmian.

Jakie może więc być zastosowanie Diffengine? Z jednej strony codzienne: użytkownik może obserwować zmiany w szczególnie interesujących go treściach online. Z drugiej strony naukowe i archwistyczne: narzędzie może pomóc np. w zrozumieniu, jak powstają newsy i fake newsy lub jak wydawcy informacji reagują na naciski opinii publicznej lub polityków. Diffengine umożliwia zbudowanie rejestru zmian w treści wybranych URLI, a kopie zarchiwizowane w Internet Archive pozwalają łatwe podglądanie i porównywanie zmian.

Przykładowe konta na Tweeterze publikujące diffy z newsów najważniejszych wydawców to:

Diffengine to program działający w Pythonie. Aby umożliwić rejestrowanie zmian na bieżąco, po konfiguracji programu należy ustawić cron job (harmonogram wymuszający jego uruchamianie z określoną częstotliwością). Szczegółowy opis konfiguracji dostępny jest na GitHubie.

Treść dostępna na licencji Creative Commons Uznanie autorstwa-Na tych samych warunkach 4.0 Blog naukowy, publikacje i materiały edukacyjne pracowni w 2018 roku powstały w ramach projektu Upowszechnianie wiedzy o archiwizacji Webu i metodach korzystania z historycznych zasobów WWW w instytucjach publicznych i sektorze NGO, prowadzonego przez Stowarzyszenie EBIB i finansowanego przez MNISW w programie Działalność Upowszechniająca Naukę (DUN).