Twórcy kanałów JSON mają na celu ożywienie zainteresowania otwartą siecią za pomocą alternatywy dla RSS
Opublikowany: 2017-05-26
JSON Feed, projekt stworzony przez Mantona Reece i Brenta Simmonsa, wystartował w zeszłym tygodniu. Jest to format syndykacji podobny do RSS i Atom, ale zbudowany w formacie JSON.
„Założenie było proste: nadszedł właściwy czas na podejście do kanałów oparte na JSON” — powiedział Reece. „Mamy nadzieję, że JSON Feed jest wystarczająco prosty, aby można go było szybko zaimplementować, i wystarczająco zdolny, aby przesunąć następną dekadę oprogramowania do blogowania do przodu. My też kochamy RSS i staraliśmy się wyciągnąć wnioski z jego sukcesu”.
Wersja 1 specyfikacji została opublikowana w zeszłym tygodniu, a intro zawiera bardzo prosty przykład. Wydawcy mogą dalej rozszerzać swoje kanały, tworząc obiekty niestandardowe.

Zespół opracował również wtyczkę JSON Feed dla WordPress, która jest teraz dostępna w oficjalnym katalogu wtyczek WordPress. Pracują również nad parserem kanałów JSON dla Swift.
Jeśli chcesz zobaczyć przykładowe kanały JSON w sieci, sprawdź Daring Fireball, Allen Pike i Flying Meat. Projekt Micro.blog firmy Reece obsługuje również kanał JSON dla swojej osi czasu podobnej do Twittera.
Twórcy kanałów JSON chcą zainspirować więcej programistów do tworzenia aplikacji dla otwartej sieci
Reece i Simmons zdecydowali, że nadszedł właściwy czas na zbudowanie zaktualizowanego formatu syndykacji, ponieważ coraz więcej programistów odmawia pracy z XML.
„Wierzę, że programiści (szczególnie programiści Mac i iOS, grupa, którą znam najlepiej) są tak niechętni pracy z XML, że nawet nie rozważą tworzenia oprogramowania, które wymaga parsera XML” – powiedział Simmons. „Co mówi mi, że kanał JSON jest potrzebny do przetrwania syndykacji”.
W wywiadzie dla podcastu The Run Loop Simmons przypisał spadek rozwoju otwartej sieci WWW rosnącej niechęci programistów do pracy z XML, który zawsze ma problemy z kodowaniem znaków. Wielu programistów uważa, że JSON jest łatwiejszy w użyciu i mniej wadliwy.
„To trochę mnie zasmuciło w ciągu ostatnich pięciu lub dziesięciu lat, kiedy wydaje się, że rozwój otwartej sieci znacznie zwolnił, szczególnie gdy mówimy o przecięciu pulpitu Maca i otwartej sieci” – powiedział Simmons. „Po prostu niewiele się dzieje. Zdałem sobie sprawę, że jednym z powodów jest to, że ludzie naprawdę nienawidzą XML i robią wszystko, aby go uniknąć. Jeśli widzą interfejsy API XML lub rzeczy związane z XML, nie są zainteresowani. To obrzydliwe, stare, dziwne, trudne rzeczy. Ale każdy lubi JSON, wszystkie fajne API to JSON, nawet te niezbyt fajne API to JSON. Wszyscy używają JSON”.
Simmons powiedział, że ma nadzieję, że istnienie JSON Feed zainspiruje programistów do tworzenia nowych rzeczy dla otwartej sieci.
„Mam nadzieję, że szczególnie programiści Mac i iOS rozważą robienie nowych i innowacyjnych rzeczy w otwartej sieci, zamiast pisania kolejnego klienta Twittera lub czegoś, co robi coś z Facebookiem. Chcę zobaczyć aplikacje, które robią coś z danymi, które nie są przechowywane w czyichś silosach. Mam dość własności korporacyjnej naszych danych i tego, na co patrzę”.
Nic dziwnego, że Simmons zdecydował się na współpracę z Reece, który z podobnych przekonań dotyczących otwartej sieci zbudował micro.blog. Pracowali razem nad projektem od lutego i zwerbowali tuzin różnych współpracowników, aby przejrzeć specyfikację przed uruchomieniem w zeszłym tygodniu. Teraz, gdy została opublikowana wersja 1, jej twórcy mają nadzieję, że kanał JSON trafi do innych części sieci i aplikacji.
„Mam nadzieję, że jest to część większej sprawy” – powiedział Simmons. „Ideą jest ożywienie zainteresowania otwartą siecią, blogowaniem, syndykacją i innymi tego rodzaju rzeczami”.
Czytelnicy kanałów zaczynają dodawać obsługę kanału JSON
Początkowe reakcje na JSON Feed były mieszane. Wielu zwolenników zastanawia się, dlaczego pojawienie się czegoś takiego zajęło tak dużo czasu, ale krytycy pytają, dlaczego sieć potrzebuje jeszcze innego formatu syndykacji. Kilka powszechnych krytyki w Hacker News, które odzwierciedlają odczucia wielu, którzy sprzeciwiają się temu pomysłowi:
„Tak naprawdę nie potrzebujemy innego formatu dystrybucji, którego żaden czytnik nie będzie dobrze obsługiwał ani wspierał przez lata”. – @oefrha
„Jeśli zamierzasz stworzyć nowy format kanału w 2017 roku, przykro mi, ale skopiowanie tego, co było przed nim i wrzucenie go do JSON, po prostu nie wystarczy”. – @russellbeattie
„Trzeba się zastanowić, czy Simmons próbuje tylko ożywić stary ekosystem RSS. „Co obecnie lubią programiści, JSON? Zróbmy RSS w JSON!” … To nie pomaga. Prawdziwym wyzwaniem w dzisiejszych czasach jest replikowanie rozwiązań wprowadzonych przez Facebooka i Twittera do kanałów (w szczególności dwukierunkowość i zatrzymywanie danych) w zdecentralizowany sposób, który mógłby faktycznie stać się popularny. Po prostu replikacja RSS w formacie danych du jour nie zapewni tego”. – @zabawka

Pomimo krytyki, czytelnicy kanałów już zaczynają dodawać obsługę kanału JSON. Dobrą wiadomością dla wydawców jest to, że nie muszą rezygnować ze swoich kanałów RSS. Wydawcy mogą dodać obsługę kanału JSON obok swoich istniejących kanałów.
Nowa aplikacja JSON Feed Viewer jest oparta na JSON Feed. NewsBlur ogłosił wsparcie dla specyfikacji w tym tygodniu, wraz z Inoreader, News Explorer i Feedbin.
Ben Ubois, założyciel Feedbin, odniósł się do jednej z najczęstszych krytyki, że czytelnicy kanałów prawdopodobnie nie dodadzą wsparcia dla nowej specyfikacji kanału JSON ze względu na powszechność RSS:
„Jedną z krytyki, jaką widziałem w odniesieniu do kanału JSON, jest to, że nie ma zachęty dla czytelników kanałów do wspierania kanału JSON” – powiedział Ubois. "To nie jest prawda. Jedno z najczęściej zadawanych pytań dotyczących pomocy technicznej, które otrzymuję, brzmi: „Dlaczego ten losowy plik danych nie działa?”. I w 95% przypadków dzieje się tak, ponieważ kanał jest uszkodzony w jakiś subtelny sposób. JSON Feed pomoże złagodzić te problemy, ponieważ łatwiej jest to zrobić dobrze”.
JSON Feed ma również kilka dodatkowych funkcji, których istniejące formaty nie oferują tak łatwo. Simmons podkreślił kilka cech związanych z grafiką w swoim wywiadzie dla podcastu The Run Loop:
Na przykład, kiedy definiujesz autora, możesz podać adres URL obrazu awatara. Możesz sobie wyobrazić kogoś, kto robi coś w rodzaju widoku Twittera kanału z awatarami dla różnych postów. Obsługuje również takie rzeczy jak adres URL polecanego obrazu lub obraz banera, który możesz określićdla artykułu, a twój czytnik RSS może go sformatować tak, jakbyś wyglądałby w rzeczywistości wszedłeśna stronę internetową z obrazem banera w tło. Ma sposób na określenie ikon ulubionych i większej ikony dla twojego kanału, które teraz czytelnicy wiadomości muszą odgadnąć, co to jest twoja favicon lub zeskrobać stronę główną, szukając tagu metadanych, który mówi, gdzie się znajduje. Muszą złożyć wszystkie te dodatkowe prośby, aby poznać podstawowe grafiki dotyczące Twojego kanału lub artykułu, a wszystkie te rzeczy są określone w kanale JSON. Osoby, które faktycznie z nich korzystają, uzyskują znacznie ładniejszy interfejs po stronie czytania.
Dave Winer eksperymentował z ideą JSONified RSS w 2012 roku, ale nie przyjął się. Jego reakcja na nową specyfikację kanału JSON jest „całkiem neutralna, rodzaj wzruszenia ramionami”.
„Jeśli programiści mają trudności z używaniem XML w swoich aplikacjach, jeśli to jest problem, dlaczego nie zaatakować go właśnie tam?” powiedział Winer. „Pracuj, aby było łatwiej. Pracuję w Node i przeglądarce, w obu miejscach XML i JSON są równie łatwe w użyciu. To samo można zrobić dla każdego środowiska. W rzeczywistości w przeglądarce XML jest głęboko zintegrowany z modelem programowania, ponieważ sieć jest zbudowana z XML”.
W przeciwieństwie do tego John Gruber uważa, że nadszedł właściwy czas na projekt i nie zawahał się dodać kanału JSON dla Daring Fireball. Chętnie wspiera projekt JSON Feed i uważnie monitoruje jego wdrażanie, publikując linki do wszystkich aplikacji i czytników kanałów, które już dodały obsługę.
„Myślę, że to świetny pomysł i dobra specyfikacja”, powiedział Gruber. „Podoba mi się nawet styl, w jakim napisana jest specyfikacja: dla prawdziwych ludzi (podobnie jak specyfikacja RSS). Jeśli chcesz zobaczyć przykład z życia, Daring Fireball ma kanał JSON. Mam dobre przeczucia co do tego projektu — to samo, co kiedyś o Markdown”.
Wraz z tempem szybkiego przyjęcia przez mniejszych czytelników wiadomości, kanał JSON może ożywić dystrybucję wiadomości, jeśli niektóre z większych doda wsparcie. Deweloperzy mogą być jeszcze bardziej zainspirowani do tworzenia nowych czytników kanałów, biorąc pod uwagę łatwość implementacji nowej specyfikacji.
Manton Reece powiedział, że gdyby JSON Feed pojawił się w szczytowym momencie blogowania, gdy było mniej problemów, uważa, że nie byłoby tak naglącego poczucia, że sieć potrzebuje nowego formatu dystrybucji.
„Jestem zdumiony przyczepnością, jaką uzyskał”, powiedział Manton Reece w niedawnym wywiadzie dla podcastu Core Intuition. „Oczywiście niektórzy ludzie będą negatywnie na to patrzeć, a niektórym się to nie spodoba. Z pewnością spodziewaliśmy się, że w tej sprawie spotkamy się z dużym odzewem. Wszyscy wiedzą, że tego potrzebujemy, ale to zniechęcające. Kto będzie próbował popchnąć coś takiego, gdy istnieją miliony kanałów RSS? Wydaje mi się, że nawet po co się zawracać, to niemożliwe. Ale z biegiem czasu wszystko się zmienia i myślę, że jest to wystarczająco ważne, a blogowanie jest na tyle ważne, że warto zainwestować już teraz. Jutro sieć nie będzie się różnić, ale z czasem może być trochę inaczej. Wszyscy wiedzą, że potrzebujemy czegoś takiego, ale do tej pory nie było czegoś, co wszyscy mogliby mieć za sobą”.
