Reviving le Minitel
This is a modal window.
The media could not be loaded, either because the server or network failed or because the format is not supported.
Formal Metadata
Title |
| |
Subtitle |
| |
Title of Series | ||
Number of Parts | 490 | |
Author | ||
License | CC Attribution 2.0 Belgium: You are free to use, adapt and copy, distribute and transmit the work or content in adapted or unchanged form for any legal purpose as long as the work is attributed to the author in the manner specified by the author or licensor. | |
Identifiers | 10.5446/47441 (DOI) | |
Publisher | ||
Release Date | ||
Language |
Content Metadata
Subject Area | ||
Genre | ||
Abstract |
|
FOSDEM 2020262 / 490
4
7
9
10
14
15
16
25
26
29
31
33
34
35
37
40
41
42
43
45
46
47
50
51
52
53
54
58
60
64
65
66
67
70
71
72
74
75
76
77
78
82
83
84
86
89
90
93
94
95
96
98
100
101
105
106
109
110
116
118
123
124
130
135
137
141
142
144
146
151
154
157
159
164
166
167
169
172
174
178
182
184
185
186
187
189
190
191
192
193
194
195
200
202
203
204
205
206
207
208
211
212
214
218
222
225
228
230
232
233
235
236
240
242
244
249
250
251
253
254
258
261
262
266
267
268
271
273
274
275
278
280
281
282
283
284
285
286
288
289
290
291
293
295
296
297
298
301
302
303
305
306
307
310
311
315
317
318
319
328
333
350
353
354
356
359
360
361
370
372
373
374
375
379
380
381
383
385
386
387
388
391
393
394
395
397
398
399
401
409
410
411
414
420
421
422
423
424
425
427
429
430
434
438
439
444
449
450
454
457
458
459
460
461
464
465
466
468
469
470
471
472
480
484
486
487
489
490
00:00
Projective planeCuboidSoftware developerComputer animation
00:40
Web pageDemo (music)ModemVideoconferencingMetreWater vaporLevel (video gaming)FamilyWeb browserComputer animation
01:33
Quality of serviceSystem callLine (geometry)Point (geometry)Multiplication signComputer animation
02:17
Operator (mathematics)Inheritance (object-oriented programming)System callTrailPlanningInheritance (object-oriented programming)Barrelled spaceSystem callOperator (mathematics)Computer animation
03:05
Decision theoryDirection (geometry)TelecommunicationCommutative propertyComputer networkDecision theoryTelecommunicationSpectrum (functional analysis)DissipationTransport Layer SecurityMultiplication signSoftwareAutomationComputer animation
03:54
Computer networkBit rateModemDirected setDigital electronicsVirtual realityLink (knot theory)Connected spaceMultiplication signPoint (geometry)DistanceBeat (acoustics)2 (number)Bit rateBitModemComputer animation
04:43
Asynchronous Transfer ModeVirtual machineLink (knot theory)Computer networkTask (computing)VideoconferencingRadical (chemistry)Chemical equationSoftwareTask (computing)TouchscreenKeyboard shortcutNeuroinformatikMikrocomputerVirtual machineModemComputer animation
05:52
Web pageDirectory serviceTelecommunicationInstallation artSoftware maintenanceMaxima and minimaSoftware maintenanceMetreRadical (chemistry)TelecommunicationComputer animation
06:37
PlastikkarteDirectory serviceTelecommunicationPoint (geometry)Different (Kate Ryan album)Computer animation
07:24
Server (computing)Internet service providerComputer networkDigital electronicsPoint (geometry)Server (computing)NumberView (database)Internet service providerVirtual machineSoftwareConstraint (mathematics)Table (information)Directory serviceCubeVideoconferencingTelecommunicationAnalogyModemComputer animation
08:42
Bit rate2 (number)TouchscreenRule of inferenceRadical (chemistry)Keyboard shortcutCubeBit rateVideoconferencingPixelBit
09:39
Clique-widthForcing (mathematics)Musical ensembleTouchscreenVideoconferencingGraph (mathematics)Data miningVideo gameDifferent (Kate Ryan album)Complex (psychology)Doubling the cubeDimensional analysisPixelComputer fontRadical (chemistry)Clique-widthKeyboard shortcutLimit (category theory)Standard deviationSet (mathematics)Computer animation
10:45
Attribute grammarInversion (music)VideoconferencingPhotographic mosaicLevel of measurementTouchscreenExtreme programmingSpacetimeAttribute grammarBeat (acoustics)Semiconductor memoryWeightComplex (psychology)Set (mathematics)VideoconferencingRevision controlCodePhotographic mosaicAlphabet (computer science)Inversion (music)Computer animation
11:40
Normal (geometry)Clique-widthCursor (computers)TouchscreenStreaming mediaDoubling the cubeAreaGraph coloringCursor (computers)Clique-widthVideoconferencingStreaming mediaTouchscreenNeuroinformatikSystem callComputer animation
12:39
PeripheralComputer hardwareGame controllerVideoconferencingEEPROMVideoconferencingWeb 2.0NeuroinformatikDifferent (Kate Ryan album)Video cardComputer programmingCoprocessorGame controllerComputer animation
13:16
Duplex (telecommunications)Client (computing)Presentation of a groupContent (media)Flow separationContinuous functionHyperlinkComputer hardwareCross-site scriptingSequenceSystem callState of matterWave packetClient (computing)Shift operatorServer (computing)Different (Kate Ryan album)Lattice (order)Web 2.0Game theoryPhysical systemView (database)PlastikkartePoint (geometry)Content (media)Presentation of a groupAnalytic continuationGame controllerVideoconferencingHyperlinkComputer hardwareFlow separationStreaming media
14:37
Computing platformMereologyTelecommunicationGeometric primitiveInterpreter (computing)VideoconferencingGame controllerInterpreter (computing)MereologyVideoconferencingMetreTelecommunicationGeometric primitiveComputing platformServer (computing)Computer animation
15:04
Element (mathematics)Computer programmingKeyboard shortcutNetwork socketRing (mathematics)Functional (mathematics)Computer programmingTouchscreenDigital electronicsKeyboard shortcutComputer animation
15:40
Arc (geometry)Read-only memoryCellular automatonClique-widthInversion (music)Vertical directionPhotographic mosaicService (economics)MetrePresentation of a groupTouchscreenSpacetimeSemiconductor memoryFraction (mathematics)Photographic mosaicExecution unitComputer animation
16:07
Bit error rateExecution unitElectronic visual displayVideoconferencingInversion (music)Computer chessAttribute grammarLine (geometry)Computer programmingSemiconductor memory2 (number)Graph coloringAuditory maskingVideoconferencingMultiplication signRow (database)Computer animation
17:04
Computer animation
17:29
Web browserText editorWeb pageComputerHome pageAbsolute valueStreaming mediaBlock (periodic table)BootingLocal GroupStandard deviationPhotographic mosaicCursor (computers)Content (media)Extension (kinesiology)TouchscreenParameter (computer programming)Row (database)Graph (mathematics)String (computer science)Lattice (order)Web pageTouchscreenContent (media)Computer animation
18:01
Network topologyTouchscreenClique-widthInversion (music)Home pageText editorCursor (computers)Graph (mathematics)String (computer science)Content (media)IterationPhotographic mosaicStandard deviationSound effectAbsolute valueRow (database)Greatest elementDiscrete element methodOrder (biology)Integrated development environmentSequenceServer (computing)Line (geometry)Inversion (music)Computer animation
19:31
Block (periodic table)Inversion (music)Text editorHome pageCursor (computers)TouchscreenLocal GroupStreaming mediaString (computer science)Row (database)Graph (mathematics)Standard deviationContent (media)Scalable Coherent InterfaceText editorTouchscreenKeyboard shortcutPixelComplete metric spaceGreen's function19 (number)Cellular automatonGraph coloringComputer animationDiagram
21:57
Text editorHome pageString (computer science)Graph (mathematics)Block (periodic table)Cursor (computers)Standard deviationTouchscreenLocal GroupInversion (music)Uniform resource locatorStreaming mediaContent (media)Maxima and minimaComputer animation
22:22
DialectFile formatSoftware bugCodierung <Programmierung>Computer clusterProgram flowchartComputer animation
22:47
String (computer science)Graph (mathematics)Text editorLocal GroupTouchscreenStandard deviationCursor (computers)Inversion (music)Content (media)Maxima and minimaStreaming mediaNetwork topologyUniform resource locatorVideoconferencingConnected spaceRight angleState of matterBit rateText editorComputer animation
23:43
TouchscreenPolygon meshString (computer science)Cursor (computers)Home pageStandard deviationInversion (music)Local GroupWell-formed formulaService (economics)Electronic program guideSuite (music)Computer fontField (computer science)WeightFlow separationQuery languageInteractive kioskServer (computing)Real numberType theoryMobile appComputer animation
25:27
Suite (music)Common Intermediate LanguageCodeElectronic program guideService (economics)Server (computing)Type theoryComputer animation
25:53
LoginTape driveElectronic program guideDialectSuite (music)Instance (computer science)TouchscreenComputer animation
26:22
LoginPlastikkarteElectronic program guideModemSuite (music)Tape drivePolygon meshWebsiteExecution unitServer (computing)NumberGoodness of fitInteractive kioskWebsiteComputer animationLecture/Conference
27:36
Electronic program guideSuite (music)Bulletin board systemGame theoryType theoryCode
28:02
Electronic program guideSuite (music)Sound effectComputer animation
28:25
Cloud computingElectronic program guideVideoconferencingRevision controlMedianFluxComputer animation
29:17
EmailComputer-generated imageryDemo (music)Polygon meshForm (programming)Internet forumComputer animation
29:49
Radio-frequency identificationHacker (term)Polygon meshSuite (music)Electronic program guideTape driveComputer-generated imageryAsynchronous Transfer ModePoint cloudFacebookOpen sourceComputer animation
Transcript: English(auto-generated)
00:17
So, I'm Frédéric Bisson. I'm a French developer. I work for the city of Rouen, but this project
00:28
is on my pastime. It began when my employer gave away, started to give away its old French little boxes. So, yes, some of what I will say will be very ironic. First, we will see
01:02
our friends conquer the world. Next, we will see how it works and how HTML5 and ES6 can be used to emulate Minitel in a browser, in a modern web browser. And then we will have
01:22
two live demos, one which will be creating a video text page, and the second we will be surfing on Minitel. So, the French technology conquered the world, but in the late 60s,
01:44
we were quite a bit late. In the USA, 90% of the household had a phone line. In France,
02:01
it was only 15%. In the USA, at the same time, you would need three days to have a phone line at home. In France, it was three years. And I'm not joking. Really, three years. The last operator worked until 1978. I was born in 1974. My parents had known this. But the
02:36
first automatic switch was tested in 1912, 66 years before. It employed up to 30,000
02:50
operators, which makes every call super expensive. But France has a super plan to take all over
03:07
the world. In the late 60s, the government made a decision. And in 1972, the telecommunication
03:21
became the first investor in France. In 1978, less than 10 years after, the PSTN was complete. The PSTN is the Public Switched Telephone Network. It's an automated telephone network. And at the same time, Transpac was born. Transpac is the French packet-switched network
03:47
based on X25, which is a technology so much better than TCPIP. You know it. So Transpac here worked from 50 bits per second, yes, because of telex, to 64,000 bits per second.
04:13
It was heterogeneous because you could access it directly or via a modem or via telex. But its very innovative point was the billing, the pricing, because before, you paid against
04:33
the distance. With Transpac, you paid on rate and connection time. At that time, you
04:48
could do B2B applications, like linking agencies for balance insurance, connecting ATA machine, and have payment terminal. For the B2C applications, it was the Minitel. Minitel, it's a video
05:12
text screen with a keyboard connected to the network with an internal modem. So you have
05:22
all this in this machine. But the main task was to get it adopted by the French because if in the USA, the microcomputing was very present, in France, it was a desert
05:41
because microcomputing is hard to grasp. It was also expensive and networks, nobody dreams of them. So the great French mind knew what to do. The Minitel was a plug-and-play
06:06
terminal with zero configuration, zero maintenance, but you could not update it. There was one killer app, the electronic telephone directory, which was free.
06:26
And also, the Minitel was free, like in free beer. So you just have to sign a paper and you could get your Minitel at home. But it means that the French government entirely paid
06:44
all the Minitels. Minitel cost 260 euros to build. It's 260 euros today. It was 1,000 francs in 1980. On this map, you have 750 million euros
07:12
of Minitel. In 1993, there were 6.5 millions of Minitels.
07:20
So the French government needed to get the money back. But how it worked? The Minitel network, at home, you had a Minitel and a phone. The phone was used to dial the number because
07:42
the modem inside the Minitel was very basic. The France Telecom network was an analog network on which was connected the video text access point, or Pavi in French.
08:03
On this machine, you had the electronic telephone directory. You also had all the billing. And it connected the analog network and the digital network. The service provider
08:24
had its servers connected to Transpac. But it could also have servers connected directly to the PSTN, but with the constraint that you would have less lines available. The Minitel, it's a Minitel 2. It's a little cube.
08:50
It was a black and white passive terminal, which communicates in 7-bit video text. Screens are composed of 40 columns for 25 rows, which gives us 320 by 250 pixels.
09:06
It could display 8 colors, though nearly all the Minitel were black and white. And it downloads at 1200 bits per second and uploads at 75 bits per second,
09:27
because 75 is only for the keyboard. 75 gives you approximately 7 characters per second.
09:43
This keyboard is quite good. To overcome the limitation of text screens, because it's a terminal text screen, video text has 64 special characters, the mosaic character,
10:01
which divides each character in 2 by 3 pixels. Graphically, you would have 80 pixels by 72 pixels. And the graphist would have to use
10:22
standard characters, like here, where you have an outline to represent a button. Here, you have an anti-slash with a double width dimension and a slash in its normal size. You have also a very complex set of attributes,
10:50
because each character is coded as 16-bit in the Minitel memory. But with this, you could encode 449 characters, so you have all that is necessary to have exempted characters.
11:12
You have RGB for the foreground, RGB for the background. You have blinking attributes.
11:24
Here, you say if you want to have alphabetic characters or mosaic characters, you can say that you have underlined, etc. You also have a video inversion.
11:42
So what the video text stream looks like, to display FOSDEM20, you would first start with VOC, which clears screens, and which puts the cursor
12:00
on the upper left area. 1F for C4C, you go to row 12, column 12. 1B for F, you set double width and double height. 1B for T3, you set foreground color to yellow. 46, etc., it's only ASCII characters to write FOSDEM. 1B for E, 1B for T6, ZOB.
12:31
To have this screen, you need approximately 20, 25 characters.
12:41
The Minitel inside, it's like a small computer. The processor is a medical controller, an 8032. You have all the programs in aneprom, a chipset for the modem,
13:04
a speaker, a connector to the screen, the video controller, and the RAM, which was directly connected to the video controller. The difference between the web before HTML5
13:22
and Minitel, the web, the client initiates the request. The server cannot initiate the request. While with Minitel, the server and the client can communicate at any time.
13:45
In the web, you have no state, while the Minitel is a continuous stream. You have a separation of content and presentation with HTML, while Minitel is only a sequence of either a character or a control code.
14:10
The main feature of the web is its hyperlink system, while there is absolutely nothing like that with Minitel. HTML is also hardware agnostics, while Minitel is completely tied to hardware.
14:28
For the web, you have HTML, CSS, JavaScript, but you have only video text for Minitel. What's needed to emulate Minitel? A widely available platform with some specific capabilities.
14:46
It must be able to do asynchronous communication, to have graphic primitives, and it is divided into three parts, the video interpreter, the video controller,
15:02
and a Minitel service to connect to. Actually, with HTML5 and ES6, all we need is there, because we can draw the Minitel screen with Canvas, we can do keyboard click with audio,
15:23
and the main capability is the WebSocket, which can do full-duplex communication. Also, ES6 brings lots of programming facilities, like premises, like functional approach, etc.
15:42
So once you have the dots, it's very simple to represent a screen. A screen is made of cells, which can be either character, mosaic character, or denominator. The denominator is
16:04
the space. The video display unit written in JavaScript reads the video memory 50 times per second. It will draw modified rows and also blinking characters. It will draw this with
16:28
the foreground and background color, with video inversion, with underline, with size, with mask, but when you start underline, it will be taken into account just after the character. But when
16:46
you use other attributes, it will be taken into account immediately. So there are very, very small problems that can arise with this technology. So I will be showing you
17:31
the Minitel page editor. It's available online. So first, we clear the screen.
17:48
We write content. If you want to have a double-size character, you can move
18:12
the double size, and here you have the first problem with the Minitel. You cannot double size
18:20
the first line. So you have to go through the second line, and also every absolute move
18:55
resets all attributes. So you have to put the sequence in the right order. You can blink.
19:16
The marquee was made by the server. You can do video inversion. You can also
19:42
draw something. You must be aware that I have a mouse, but in 1980 and 1990,
20:05
it was entirely made at keyboard. Yes, so your question was how you can have all these colors?
20:41
How many colors on the screen at the same time? Eight. And it's also the complete palette. It's because it's encoded in three bits, red, green, and blue. So you have black, red, green,
21:05
blue, cyan, magenta, yellow, and white. Yes, because though you see pixels, in fact,
21:25
they are characters. You have here apparently more than two colors
21:46
in a cell. It's only because you are in an editor. If you save graphics,
22:08
so you can draw the thing at the minute speed. You can also record your animation in a GIF
22:25
format. The GIF encoder was entirely made in JavaScript. Maybe it's a bug.
22:52
So this is for the editor. What is the letter on the top right?
23:12
The letter on the top right indicated the state of the connection. Yes, no.
23:30
The editor works entirely locally. Yes, I will show you with the next demo because
23:50
here's the killer app of the Minitel. So, for example, if I type my name, I will do
24:06
sweet is next. So you go to the next field. Next. And what is send? For this, you have to
24:34
thank Christian Quest because I did the font and he did the server.
24:44
Yes, they are real numbers because the server Christian Quest made online just queries the 118, 712. So that's why they have 10 digits.
25:09
Yes, but these are data.
25:26
When you use the Minitel, you would do a 3615. This is the kiosk. And you would type the name of the service, for example.
26:06
So this is only the looking screen. Behind it, you have a Mastodon instance.
26:29
It's okay. So on the emulator, you can set the speed. So it's a teaser. It was a service
26:47
you could access either by the kiosk or by the standard numbers. So depending on your Minitel,
27:01
you would use one of these numbers. Sorry. Like a special site in which I can search for the kiosk to keep the exact name. Yes. Sorry.
27:25
Yes. And the items were selected by typing the characters. So for example, for the museum,
27:59
you would type star M-U-S. You could use code to make special effects,
28:29
et cetera. You also have a love story.
29:16
Do you have any questions?
29:31
Ah, it's only a forum.
Recommendations
Series of 6 media