How to watch Russia Today RT Live On Air without Flash

Featured image: Gianpaolo La Paglia | Unsplash (photo)

What is RT?

RT (formerly Russia Today) is an international TV network operated by the Russian government. Right now, it fits among a number of alternative media sources which are on the rise given the falling trust in the mainstream media among the western world (as an example, here is 2015 data for the USA).

RT’s content has been criticized from multiple angles. Regardless, I find it to be a valuable source of news; among other things, I particularly like that they frequently feature commentators like Ron Paul (for nearly 8 years already!) and John McAfee.

RT requires Flash Player plugin for watching their live audio/video streams

(Update 25th of May 2017: RT Live does not require Flash anymore! Just open it in any HTML5-compliant browser and the video stream will start playing.)

However, RT Live (so called On Air) requires you to use Flash Player plugin and does not offer HTML5 video, which is sub-optimal at best. RT uses HTTP Live Streaming (HLS) in JW Player for 5 channels (News, USA, UK, Arabic, and Documentary) and YouTube for one (Spanish). Knowing how JW Player HLS configuration looks allows us to use some hackery to dig up the stream URL.

On Air page embeds the player from another page and the URLs are in variable streams.hls which is set in static/libs/octoshape/js/streams/news.js. Digging through the same file for each of the other channels will uncover their URLs as well (I have listed all of the URLs below). A simpler solution would be to have Flash Player plugin installed (yuck, proprietary software!) and use Video DownloadHelper, which can uncover the URLs accessed by Flash Player plugin while the video is playing.

To play the streams from URLs listed, you can use an open source media player such as mpv, MPlayer, or VLC. I have tested and confirmed all three work with the URLs listed below. If you don’t like those three, there are plenty more options.

RT News

RT News, as well as RT America and RT UK, are served using a CDN from Level 3 Communications. Unfortunately, we are limited to receiving the stream over the unencrypted HTTP.

HD: http://rt-eng-live.hls.adaptive.level3.net/rt/eng/index2500.m3u8
Hi: http://rt-eng-live.hls.adaptive.level3.net/rt/eng/index1600.m3u8
Medium: http://rt-eng-live.hls.adaptive.level3.net/rt/eng/index800.m3u8
Low: http://rt-eng-live.hls.adaptive.level3.net/rt/eng/index400.m3u8
Audio: http://rt-eng-live.hls.adaptive.level3.net/rt/eng/indexaudio.m3u8

RT America

HD: http://rt-usa-live.hls.adaptive.level3.net/rt/usa/index2500.m3u8
Hi: http://rt-usa-live.hls.adaptive.level3.net/rt/usa/index1600.m3u8
Medium: http://rt-usa-live.hls.adaptive.level3.net/rt/usa/index800.m3u8
Low: http://rt-usa-live.hls.adaptive.level3.net/rt/usa/index400.m3u8
Audio: http://rt-usa-live.hls.adaptive.level3.net/rt/usa/indexaudio.m3u8

RT UK

HD: http://rt-uk-live.hls.adaptive.level3.net/rt/uk/index2500.m3u8
Hi: http://rt-uk-live.hls.adaptive.level3.net/rt/uk/index1600.m3u8
Medium: http://rt-uk-live.hls.adaptive.level3.net/rt/uk/index800.m3u8
Low: http://rt-uk-live.hls.adaptive.level3.net/rt/uk/index400.m3u8
Audio: http://rt-uk-live.hls.adaptive.level3.net/rt/uk/indexaudio.m3u8

RT Arabic

RT Arabic and RT Documentary use a different CDN (though operated by Level 3 Communications, just like the CDN for the first three channels). This CDN offers HTTPS in addition to the unencrypted HTTP.

HD: https://rt-ara-live-hls.secure.footprint.net/rt/ara/index2500.m3u8
Hi: https://rt-ara-live-hls.secure.footprint.net/rt/ara/index1600.m3u8
Medium: https://rt-ara-live-hls.secure.footprint.net/rt/ara/index800.m3u8
Low: https://rt-ara-live-hls.secure.footprint.net/rt/ara/index400.m3u8
Audio: https://rt-ara-live-hls.secure.footprint.net/rt/ara/indexaudio.m3u8

RT Documentary

HD: https://rt-doc-live-hls.secure.footprint.net/rt/doc/index2500.m3u8
Hi: https://rt-doc-live-hls.secure.footprint.net/rt/doc/index1600.m3u8
Medium: https://rt-doc-live-hls.secure.footprint.net/rt/doc/index800.m3u8
Low: https://rt-doc-live-hls.secure.footprint.net/rt/doc/index400.m3u8
Audio: https://rt-doc-live-hls.secure.footprint.net/rt/doc/indexaudio.m3u8

RT Spanish

RT Spanish is broadcasted live via YouTube, therefore it already does not require Flash Player plugin. If you want to watch it outside the browser, the players mentioned above should be able to do that.

And that’s it. No Flash Player plugin required! Hopefully, RT will start offering HTML5 video at some point and allow watching live content without requiring Flash Player plugin. You can try bugging them about it, as I did over Twitter.

(Update: added the note regarding RT Spanish.)

Ideological purge: Curtis Yarvin yesterday, Peter Thiel today, and you tomorrow

Featured image: Benjamin Child | Unsplash (photo)

Back in June 2015 a computer scientist named Curtis Yarvin got booted off Strange Loop, a technology conference. Reason: his political views. He is a part of and arguably one of the leaders in an essentially decentralized movement called the neoreaction, also known as NRx or the Dark Enlightenment. His ideas, presented at his blog Unqualified Reservations (archive), were deemed objectionable and concerning. Before I go any further, I should note that I have not studied his ideas in particular, but I have skimmed through the NRx.

I believe in the free speech, but also in the right of any private business to deny their service at will. Therefore him getting booted off within those rights. However, given that his talk at the conference was not related to his politics, and with full belief that he would respect the topic and not abuse the time slot to try to present his political ideas at the conference, I find it hard to understand the reason why he was removed from the program. Detailed analysis and reasoning of the situation, which I fully agree with, is presented at Popehat.

Fast forward to October 2016 and Peter Thiel‘s 1.25 million dollar donation to Donald Trump. One might expect that, since this is mainstream and everyday politics, there is no reason why it should be considered “controversial”. Thiel chose to support a candidate he considers worth supporting with his private money. But one would be wrong.

The issue stirred a long and interesting discussion on Hacker News, splitting the HN-ers into two camps on the issue of tolerance of ideas they find very different from theirs. Personally, I have no problem with people refusing to do business with those that hold ideas they disagree with. As an employee, I aim to work mostly or entirely on free and open source software, without patent protection. As a consumer, I avoid and speak against Microsoft’s non-free software whenever I can. And I speak about those attitudes openly.

Peter Thiel was expectedly criticized by Ellen Pao and David Heinemeier Hansson for what he did. I find Ellen Pao’s reasoning unnecessarily verbose and screaming “please agree with me”, yet I still don’t agree with it. I would, however, have no problem if she openly said “I don’t like Thiel’s political views and how he uses his money so I refuse to deal with him” without trying to sugarcoat it. DHH, on the other hand, is trying (and failing) to be cool and provocative.

Others, like Anselm Hannemann, took the issue as far as “I don’t want to have anything to do with anything Thiel has ever touched”, which I find extreme and unnecessary, but to each his own. Personally, I have no problem using the Linux kernel, and I know that at least two of the kernel developers are social justice warriors. I am sure many free software developers and users are socialists. They have different ideas about the world they want to build and inhabit, and that’s fine. We agree on the idea of free software, so let’s build on it and ignore the rest.

What surprised me however was Paul Graham stepping up publicly to defend Peter Thiel’s freeedom from DHH’s criticism. Not because of his ideas (he is at least leaning libertarian), but because of the pressure of current political climate of censorship and purge of almost anyone who opposes social liberalism under the false premise of “hate speech” and “non inclusiveness” and “opposition to diversity”. Mark Zuckerberg also unexpectedly defended Thiel.

As for why would a self-proclaimed libertarian such as Thiel support an authoritarian canididate such as Donald Trump, I will quote Timur Vural‘s comment from the Hacker News thread mentioned above:

[Peter Thiel] believes that most of Silicon Valley is naive politically, and that the popularity of social liberalism there is just a moral fashion. He is a liberarian, and believes that the Valley’s instincts are libertarian, not liberal. He has a slightly pessimistic outlook on the future, and believes that America has been falling behind since 1969, “when Woodstock started… and the hippies took over the country”. That aligns well with the central point of Trump’s campaign – America has started losing and we need to “make it great again”.

He’s often said that one of his favorite interview questions is, “tell me something you believe to be true but which nobody agrees with you on”. His support of Trump falls into that category. 40% of the population agrees with him, but the people closest to him see his opinion as unthinkable. He seems to take pleasure in having opinions like that.

Furthermore, Donald Trump represents a giant middle finger to political correctness, identity politics and related anti-meritocratic ideas such as affirmative action. This way, his eventual presidency can be seen as a swing from the present left (social liberalism) back to the middle, which happens to be in the same direction which a libertarian would like to take. Peter Thiel certainly knows that very well and, unfortunately for him, his enemies do know it too.

Just like Trump, Thiel is rich enough to do basically whatever he wants because he does not have to seek employment afterwards and see his applications being rejected due to his political views. Another glorious comment from Hacker News, from AvenueIngres, explains Thiel’s financial status very well:

People don’t risk openly supporting Trump unless they have the kind of fuck-you money/assets [like Peter Thiel does] that allows them to do so. Truth is that the tech industry is probably leaning toward the Democratic party a lot less than it actually seems simply because of the politically motivated discrimination you would face should you endorse the wrong candidate (or embrace the “wrong” opinions in public).

I have seen what happened to a couple folks who told “unappropriate” jokes in a private discussion to their friends while at a public event. They lost their job.

I have seen how tons of progressives (not to say most) are so entrenched in their own bias that they fail to realize that dissenting opinions to their beliefs are not morally reprehensible. And that their cultish attitude with respect to diversity is as stupid as the white nationalistic obsession of homogeneity.

You might be next. Yes, you, no matter who you are and what you do. No matter how much you agree with the ever changing dominant narrative, how religiously you accept the mainstream ideas, and how peaceful and tolerant you are to those you disagree with. Something you wrote somewhere might be “inappropriate” for whatever reason under whatever narrative is active at present. The argument for “inappropriateness” does not even have to be rational. It does not matter at all.

To fight this insanity and restore freedom of speech, we should call out all those who propagate the idea of “tolerance” and then limit their personal tolerance to exclude people they politically disagree with. We should call out those who claim that “diversity” excludes diversity of “wrong” ideas. They, of course, have every right to invent whatever definition of those words that works to suit whatever agenda they want to push at that moment, but should expect to be regularly called out on it.

These anti-meritocratic and anti-freedom actions have to be exposed to the scrutiny every time they occur because, should we forget to do so and fail to carry on the ideas of Ronald Reagan and many before him, “we will spend our sunset years telling our children and our children’s children what it was once like in the United States where men were free”.

How to get Facebook Messages working in Firefox for Android without the Messenger app

Featured image: Loic Djim | Unsplash (photo)

When one tries to use Facebook Messages from a browser on a phone or tablet running a relatively recent Android, the website (m.facebook.com or touch.facebook.com) will open the Google Play store. Some of us prefer using browsers and avoid installing apps when possible. Unfortunately for us, Messenger does not offer a mobile website, only a link to download the app.

Luckily for us, there a are a few tricks that will help get Facebook Messages working from a browser on Android.

Google Chrome

The trick to avoid Facebook’s nagging is to enable “Request Desktop Site” in Chrome Menu. The explanation of what this option does is available on Stack Overflow.

Mozilla Firefox

Firefox also has the “Request Desktop Site” but, unfortunately, it doesn’t do the job; you actually get the desktop version of Facebook and it’s quite unusable.

One option is to use mbasic.facebook.com. Unfortunately, mbasic is neither as functional nor as pretty as m, let alone touch.

The way to get Messages working on m or touch is to pretend to be running a version of Android that is unsupported by the Messenger app. In my experiments, anything older than 4.4 will do the trick, so I picked 4.3.1. You can pick your poison from Wikipedia, but bear in mind that using very old versions might get Facebook mobile website to use workarounds which are no longer needed and will break stuff if used.

To pretend to be using an old version of Android, we will alter the Firefox’s user agent string. In Firefox, go to about:config. Add a new String option called general.useragent.override the and set it to e.g.

Mozilla/5.0 (Android 4.3.1; Mobile; rv:48.0) Gecko/48.0 Firefox/48.0

Compare this with the default usera gent string which is in my case

Mozilla/5.0 (Android 6.0.1; Mobile; rv:48.0) Gecko/48.0 Firefox/48.0

Note that this string will not be automatically updated when Firefox is updated, so you should take care to update it manually. For more information about the user agent override option, check out this Super User question.

Što je prvi hrvatski predsjednik rekao o prijetnjama slobodi softvera otvorenog koda?

Naslovna slika: Justin Luebke | Unsplash (fotografija)

Poznati govor prvog hrvatskog predsjednika dr. Franje Tuđmana u Zračnoj luci Zagreb 23. studenog 1996. je jako dobro strukturiran. Stoga je na tekstu govora vrlo lako izvesti search&replace koji mijenja njegov sadržaj, ali zadržava formu. Rezultat nakon nepretjeranog drljanja mi izgleda prilično upotrebljivo:

Mi nećemo dopustiti ostacima vlasničkih Unixa, niti Microsofta, stanje kakvo smo bili zatekli u računarstvu uspostavom slobode softvera i otvorenog koda. Nećemo dopustiti da nam sve to dovedu u pitanje. Nećemo to dopustiti tim ostacima vlasničkih Unixa, ali ni onim tehnološkim redikulima, bezglavim smušenjacima koji ne vide o čemu se zapravo radi danas u slobodnom softveru i u svijetu sa kojekakvim GitHub projektima… Nećemo dopustiti onima koji se vežu i s raznobojnim vragom protiv slobode softvera i otvorenog koda, ne samo s raznobojnim, nego i crvenim i crnobijelim vragovima… Nećemo dopustiti onim koji se povezuju sa svima protivnicima slobodnog softvera, ne samo povezuju nego im se nude, ne samo da im se nude nego im se prodaju za Secure Boot, DRM i softverske patente, kao što se i sami hvale da dobivaju tehnologiju iz svih laboratorija svijeta, a povezuju se od ekstremista zatvorenosti, do kojekakvih lažnih hipstera, pseudootvorenih obmanjivača koji nam danas propovijedaju velike ideje o pravima korisnika i otvorenim standardima.

Da! Mi smo stvarali svoju slobodu za prava korisnika i za otvorene standarde, ali za prava korisnika prije svega većine korisnika slobodnog softvera. Ali ćemo, razumije se, mi sa tom slobodom softvera i otvorenim kodom osigurati i korisnicima neslobodnog softvera ta prava i otvorene standarde. Ali nećemo dopustiti da nam ti sa strane rješavaju, odnosno nameću rješenja. Slobodan softver neće biti pod kontrolom nijedne kompanije. Unix je dosta bio i pod Berkeleyem i pod AT&T-em, i pod Sunom i pod IBM-om, i pod SGI-em. Zajednica oko Linuxa je izborila svoju slobodu, svoju samostalnost, svoje pravo da sama odlučuje o svojoj sudbini.

Izvorni tekst moguće je pronaći na Wikiizvoru.

Komentari na Nacrt pravilnika o uvjetima za izbor u znanstvena zvanja u području tehničkih znanosti

Naslovna slika: Jeff Sheldon | Unsplash (fotografija)

Pred nekoliko tjedana priupitan sam da dam komentare na Nacrt pravilnika o uvjetima pravilnika o uvjetima za izbor u znanstvena zvanja. Svoje komentare na uvjete u području tehničkih znanosti objavljujem i ovdje, kako bih bio siguran da će ostati sačuvani dugoročno.

Interdisciplinarnost

Za razliku od nekih drugih područja, interdisciplinarno područje znanosti koje uključuje tehničke znanosti ni na koji način nije spomenuto. Konkretno, potrebno je precizirati kako će se bodovati radovi u interdisciplinarnom području tehničkih znanosti i prirodnih znanosti ili biomedicine, za znanstvenika koji se bira u području tehničkih znanosti.

Višeautorski radovi

Brojanje višeautorskih članaka u tehničkim znanostima koje rad do 4 autora boduje svakom autoru sa 100% je korak u pravom smjeru u odnosu na prošli pravilnik. Međutim, problem postoji kod interdisciplinarnih radova u području tehničkih znanosti i području prirodnih znanosti polja fizike, kemije, biologije, geologije, geofizike i interdisciplinarnih prirodnih znanosti.

Znanstveniku koji se bira u području prirodnih znanosti broj autora na radu se ne gleda, što je razumno obzirom da u kolaboracijama teoretiračara i eksperimentalaca često bude i do 10 autora na radu (pa čak i više u nekim poljima). S druge strane, znanstveniku koji se bira u području tehničkih znanosti se gleda broj autora i rad se sukladno boduje. Ovo destimulira kolaboraciju znanstvenika kojemu je cilj izbor u tehničkim znanostima sa znanstvenicima koji rade u području prirodnih znanosti. Potrebno je za znanstvenika koji se bira u području tehničkih znanosti definirati adekvatno bodovanje višeautorskih radova u interdisicplinarnom području tehničkih i prirodnih znanosti.

Razvoj znanstvenih softvera

U polju računarstva prvenstveno, ali i u drugim poljima tehničkih i prirodnih znanosti, znanstvena istraživanja ovise o znanstvenim softverima. Neka od istraživanja vrše razvoj softvera tako da ga vežu uz znanstveni rad koji provode. Razvoj softvera se tada boduje kod izbora u zvanje samo ako su objavljeni članci o novim značajkama u softveru, što nije uvijek moguće. Takav destimulira doprinošenje inkrementalnim promjenama u postojećim softverima; između ostalog, to ograničava suradnju s industrijom koja traži poboljšanja u postojećim softverima sukladno potrebama poslovanja. Potrebno je razviti model bodovanja doprinosa razvoju znanstvenog softvera. Primjer bodovanja koji već postoji i koristi se kod zapošljavanja u industriji su profili na OpenHubu i GitHubu.