We will travel to the heart of major application areas: robotics, virtual reality, health, mobility, energy, the factory of the future, not forgetting the major questions that this �digitization� can raise. This book is the author�s testimony after fifty years spent in environments that are very open to new technologies. It offers perspectives on the evolution of the digital world that we live in.
Table of Contents
Foreword xi
Jean-Pierre BANÂTRE
Preface xv
Acknowledgments xxi
Chapter 1. From the Calculator to the Supercomputer 1
1.1. Introduction 1
1.2. Some important concepts 1
1.2.1. Information and data 1
1.2.2. Binary system 3
1.2.3. Coding 3
1.2.4. Algorithm 5
1.2.5. Program 7
1.3. Towards automation of calculations 7
1.3.1. Slide rule 7
1.3.2. The Pascaline 8
1.3.3. The Jacquard loom 9
1.3.4. Babbage’s machine 9
1.3.5. The first desktop calculators 10
1.3.6. Hollerith’s machine 11
1.4. The first programmable computers 12
1.4.1. Konrad Zuse’s machines 12
1.4.2. Colossus 13
1.4.3. ENIAC 13
1.5. Generations of computers 14
1.5.1. First generation: the transition to electronics 15
1.5.2. Second generation: the era of the transistor 17
1.5.3. Third generation: the era of integrated circuits 20
1.5.4. Fourth generation: the era of microprocessors 24
1.6. Supercomputers 28
1.6.1. Some fields of use 28
1.6.2. History of supercomputers 29
1.6.3. Towards exaflops 33
1.7. What about the future? 35
1.7.1. An energy and ecological challenge 35
1.7.2. Revolutions in sight? 36
Chapter 2. Computer Networks and Their Applications 37
2.1. Introduction 37
2.2. A long history 38
2.3. Computer network infrastructure 42
2.3.1. Geographic coverage: from PAN to WAN 43
2.3.2. Communication media 44
2.3.3. Interconnection equipment and topologies 48
2.3.4. Two other characteristics of computer networks 52
2.3.5. Quality of service 54
2.4. Communication protocols and the Internet 55
2.4.1. The first protocols 55
2.4.2. The OSI model 56
2.4.3. The history of the Internet 57
2.4.4. The TCP/IP protocol 58
2.4.5. IP addressing 59
2.4.6. Management and use of the Internet 60
2.4.7. Evolving technologies 61
2.4.8. What future? 62
2.5. Applications 63
2.5.1. The World Wide Web 64
2.5.2. Cloud computing 67
2.5.3. The Internet of Things 68
2.5.4. Ubiquitous computing and spontaneous networks 72
2.6. Networks and security 74
2.6.1. Vulnerabilities 74
2.6.2. The protection of a network 76
2.6.3. Message encryption 76
2.6.4. Checking its security 77
Chapter 3. Software 79
3.1. Introduction 79
3.2. From algorithm to computer program 80
3.2.1. Programs and subprograms 82
3.2.2. Programming languages 83
3.3. Basic languages and operating systems 85
3.3.1. Basic languages 85
3.3.2. Operating system functions 86
3.3.3. A bit of history 88
3.3.4. Universal operating systems 91
3.3.5. Targeted operating systems 93
3.4. “High-level” programming and applications 96
3.4.1. Imperative languages 96
3.4.2. Functional languages 98
3.4.3. Object programming 99
3.4.4. Other programming languages 100
3.4.5. The most used languages 101
3.5. Software development 102
3.5.1. Software categories 102
3.5.2. Software quality 103
3.5.3. Development methods 104
3.5.4. Software engineering 107
3.6. Software verification and validation 107
3.6.1. Errors with sometimes tragic consequences 107
3.6.2. Software testing 109
3.6.3. Formal methods 111
3.6.4. Software certification 114
3.7. Legal protection and distribution of software 115
3.7.1. Legal protection of software 115
3.7.2. Licenses 116
3.7.3. Free software and open source 117
3.8. The software market 118
Chapter 4. Data: From Binary Element to Intelligence 121
4.1. Introduction 121
4.2. Data and information 122
4.2.1. Digitization of data 122
4.2.2. Data compression 125
4.3. The structuring of data towards information 125
4.3.1. Structured data 126
4.3.2. Semi-structured data and the Web 127
4.4. Files and their formats 128
4.5. Databases 129
4.5.1. The main characteristics 129
4.5.2. DBMS models 131
4.5.3. Database design 133
4.5.4. Enterprise resource planning (ERP) systems 133
4.5.5. Other types of databases 134
4.5.6. Data protection in a DB 137
4.6. Intelligence and Big Data 137
4.7. Data ownership and Open Data 141
4.7.1. Personal data 141
4.7.2. Opening up public data: Open Data 142
Chapter 5. Technology Building Blocks 145
5.1. Embedded systems 145
5.1.1. Specific architectures 146
5.1.2. Some fields of use 147
5.2. Artificial intelligence (AI) 150
5.2.1. A bit of history 150
5.2.2. Intelligence or statistics? 152
5.2.3. Important work around automatic learning 152
5.2.4. A multiplication of applications 154
5.2.5. The challenges of AI 155
5.2.6. What about intelligence? 156
5.3. The Internet 157
5.3.1. Mobility 157
5.3.2. Social networks 158
5.3.3. The Internet of Things 159
5.3.4. The Cloud 159
5.3.5. Blockchain 159
5.3.6. Vulnerabilities 160
5.4. Image processing and vision 160
5.4.1. A bit of history 160
5.4.2. Image sources and their uses 161
5.4.3. The digital image 162
5.4.4. Image storage and compression 163
5.4.5. Computing and images 164
5.4.6. Some applications 165
5.5. Conclusion 166
Chapter 6. Some Areas of Application 167
6.1. Robots 167
6.1.1. A bit of history 168
6.1.2. Fields of use regarding robots today 169
6.1.3. Communication in the world of robots 173
6.1.4. Fear of robots 174
6.1.5. Challenges for researchers 175
6.2. Virtual reality and augmented reality 175
6.2.1. A bit of history 176
6.2.2. Hardware configurations of virtual reality 177
6.2.3. Fields of use of virtual reality 179
6.2.4. Augmented reality 180
6.3. Health 181
6.3.1. Health informatics 182
6.3.2. Information technology at the service of our health 184
6.4. The connected (and soon autonomous?) car 185
6.4.1. Levels of autonomy 186
6.4.2. Challenges associated with the autonomous car 187
6.4.3. Advantages and disadvantages of the autonomous car 188
6.5. The smart city 189
6.5.1. Smart energy 190
6.5.2. Smart buildings 190
6.5.3. Smart infrastructure 191
6.5.4. Smart governance 192
6.5.5. Dangers 193
6.6. Smart mobility 193
6.7. The factory of the future 195
6.7.1. Technologies 195
6.7.2. Issues 197
6.7.3. The place of the human 198
Chapter 7. Societal Issues 199
7.1. Security 199
7.1.1. Specific characteristics 200
7.1.2. Some great threats 200
7.1.3. Acting to protect oneself 202
7.2. The respect of private life 202
7.2.1. Our personal data 202
7.2.2. Uses of our data 204
7.2.3. What about the future? 205
x Inside the World of Computing
7.3. Influence on social life 206
7.3.1. The development of social ties 206
7.3.2. Citizen participation 207
7.3.3. The socialization of knowledge 207
7.4. Dangers to democracy 208
7.4.1. The liberation of speech 208
7.4.2. Private life under surveillance 208
7.4.3. Job insecurity 209
7.4.4. The power of the big Internet firms 209
7.5. The digital divide 210
7.5.1. From division to exclusion 210
7.5.2. Digital technology and education 211
7.6. Mastering the use of artificial intelligence 212
7.7. The intelligent prosthesis and the bionic man 213
7.8. Transhumanism 214
7.9. What kind of society for tomorrow? 215
Bibliography 217
Index 219