It’s time to stop supporting all Internet Explorer versions


We are in 2020, I manage a website used all over the world and some people are still using Internet Explorer.
At the same time I work on the new version of that website and I have to decide which kind of tool I will use.

The global consensus is to use webpack and babel, providing all polyfills, for supporting old browsers.
While it was a good idea before 2020, when it was complicated to change habits and IT systems, now it’s bad for everyone to continue like this.

Why stop support?

When something works since years you don’t want to change for no real reasons.
For example I don’t update drivers for my graphic card until I’m forced.

By using polyfills, bootstrap, and tools that allow us to produce code for everyone, we don’t encourage people to change or update their browsers.
Since their navigation keeps working, why do they want to change?

Some others are just too lazy to change and count on developers to maintain that status quo on it.
Finally there are companies which stay in the past because of their previous tools using activex, flash, etc…

Furthermore for developers, when it’s time to create a new website, we always choose the same solution.
Because it’s what we have to do by the tech pressure.
We add a lot of tools and processes for transpiling code while it’s maybe not useful.
And Internet Explorer continues to annoy us because we continue to support it.
Take a deep breath and now refuse that scheme.


Hence it’s time to end this period of compliance with a radical solution: simply stop supporting Internet Explorer.
When I said that I mean to simply block access to websites to those browsers.

Be careful!
If your site is intended for use by the government, the medical sector, or developing countries it’s not a good idea to block access (maybe in 2030).

How to do that? With special HTML headers and javascript for detecting Internet Explorer and redirect them to a page listing all other browsers compatible.
First you have to create a new HTML page called ie.html and you will put this code:

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "">
<html xmlns="" xml:lang="en" lang="en">
    <title>My website is not for Internet Explorer</title>
    <meta name="description" content="My website is not for Internet Explorer" />
    <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
    <meta http-equiv="Content-Language" content="en" />
    <h1>My website is not for Internet Explorer</h1>
    <p>This website, is not available for Internet Explorer from version 5.5 to 11, consequently you have to use a modern browser.<br />
        So this a list of compatible browsers with this website.</p>
        <li><a href="">Brave -</a></li>
        <li><a href="">Chrome -</a></li>
        <li><a href="">Edge -</a></li>
        <li><a href="">Firefox -</a></li>
        <li><a href="">Opera -</a></li>
        <li><a href="">Vivaldi -</a></li>

For some of you, you have recognize an old doctype XHTML 1.0 Strict (it’s been a long time my friend).

Then you will add inside the head tag of all your other pages:

    <!--[if IE]>
        <meta HTTP-EQUIV="REFRESH" content="0; url=/ie.html">

This will work for Internet Explorer from 5.5 to 9.

Finally you have to add this script before all other your scripts:

if(window.navigator.userAgent.toUpperCase().indexOf("TRIDENT") !== -1 || window.navigator.userAgent.toUpperCase().indexOf("MSIE") !== -1) {window.location.assign('/ie.html');}

This will work for Internet Explorer from 10 to 11.

How viewers can be actors in streams on Twitch

I have been streaming and viewing on Twitch for several years but I haven’t discovered new innovations in a long time.
When I don’t stream, I try to find new streamers with new ideas in any kind of categories. Sadly, they use the same services, overlays, alerts, sounds and even scenes.
Therefore if i have to sum up the life of a streamer to someone I would say: “Launch stream, switch scenes, read messages, do stuff and disconnect”
Streaming is new in the life of the Internet, we have more to discover and to innovate. With this in mind I try to search something new.
So I looked at how social networks came up in the last years and I came to this conclusion: the next step of streaming will be having streamers and viewers becoming both actors of the stream.

In other words I mean for the streamer it’s not only reading the chat and interacting with viewers, but they will have a real involvement on the stream by acting inside it.

What tools does Twitch give to viewers?

Before creating something, I always searched what are the tools we already have on the platform. So I try to list on Twitch how a viewer can interact with the streamer using free access or with some money.


It’s free and it’s the first thing for interacting between viewers and streaming

Subscriptions and Cheers

It’s a paid option and not all channels can enable it.
Viewers in chat will be displayed differently from others with a badge, special emotes.


There are 3 types of extensions which are showing additional content below, above or inside the stream.
All those extensions had to be added by the streamers, it’s free (sometimes you have to link your account). But some overlays are limited to be used only on desktop. Also it fit only for specific situations and games.

Channel Points

Viewers earn channel points by being faithful to streamers (by watching streams) and with these points they can buy a reward.
By default there is five rewards (which can be disabled):

  • viewer send message on sub chat
  • highlight viewer message
  • select one emotes to unlock
  • customize one emote
  • random emote to unlock

Streamers can customize them by adding rewards and change how much it costs, how many times viewers can use them during one stream, etc…

How channels points are used

I listen to a lot of streamers and viewers complaining about how channel points are useless for them.
A big part of streamers don’t care about it and leave the default settings and rewards. For the others I made a list (non exhaustive) about how they use them:

  • lose channel points
  • add specific rule in a game
  • claim ingame money
  • claim vip
  • claim a sub
  • claim versus on a game
  • unban someone
  • timeout random viewer
  • chat switch to emote only
  • chat switch to sub only
  • offer an item from shop

Channel points API

Because there is no alert after claiming a reward, if there are a lot of viewers some of them can not be seen by the streamer.
So Twitch gave us a page called reward queue.

There is no API for channel points.
But you can have the information on each message sent by a user in your chat if a reward is associated, and what its ID is.

Channel points versus Chat commands

Some people will say: “Reward can be a simple chat command” or “channel points can be made with a bot”.
I agree but I also know by experience, viewers can spam the same command just for annoying you, they can spell wrong a command and retry a lot of time, type some commands to see if you have enabled them…
Even if you give a list of commands below the stream, a lot of users don’t look at it.
For counting channel points by yourself, you will have to find a bot and do some code about, not easy for everyone.
Some of them can detect if a command is usable by regular or admin viewers, but you have to configure them.

There is also a big difference in the cost.
When you set a high price on reward, using them is not a joke anymore. Because viewers have to spend time on your streams, some of these users won’t lose time for fun.
With this purpose in mind a reward with the right price will have a value for viewers and also for streamers. For example I have a reward that costs 100,000 channel points, it’s a lot. When users claim it, I have to make a presidential speech during 30 minutes minimum, dressed as a president and inside the official office.

Example: Viewers control streamers with channel points

As I have said in the introduction, viewers are not part of the journey in the stream.
However rewards from channel points are here to engage viewers by using them wisely if they cost a lot.

I made a little proof of concept on my channel about how viewers can control my OBS with a reward.

For example, viewers can claim a reward for asking medical advice.
It costs 1,000 points and they have to add some text.
When the reward appear on my chat my OBS react like that:

  1. Scene switch automatically
  2. Play a video
  3. At the end of the video I display my webcam on a background picture

In this case my stream journey is completely changed.
Consequently I have to improvise, change my clothes, search for some accessories and think how I can respond when the video is finished.

Because rewards cost channel points, viewers need to feel that acting inside the stream is important and have to act wisely at the good timing.

The downside is when streamers are not comfortable with the improvisation and or letting viewers control stream.

How to do it?

I will post later how you can do it.