This presentation focuses on Deep Learning (DL) concepts, such as neural neworks, backprop, activation functions, and Convolutional Neural Networks, with a short introduction to D3, and followed by a TypeScript-based code sample that replicates the TensorFlow playground. Basic knowledge of matrices is helpful.
This presentation focuses on Deep Learning (DL) concepts, such as neural neworks, backprop, activation functions, and Convolutional Neural Networks, with a short introduction to D3, and followed by a TypeScript-based code sample that replicates the TensorFlow playground. Basic knowledge of matrices is helpful.
this is a briefer overview about the Big O Notation. Big O Notaion are useful to check the Effeciency of an algorithm and to check its limitation at higher value. with big o notation some examples are also shown about its cases and some functions in c++ are also described.
Too Much Data? - Just Sample, Just Hash, ...Andrii Gakhov
Code & Supply | Pittsburgh Meetup | May 31, 2019
Probabilistic Data Structures and Algorithms (PDSA) is a common name of data structures based on different hashing techniques. They have been incorporated into Spark SQL. They are also used by Amazon Redshift and Google BigQuery, Redis and Elasticsearch, and many others. Consequently, PDSA is not just some interesting academic topic.
Book "Probabilistic Data Structures and Algorithms for Big Data Applications" (ISBN: 978-3748190486 ) https://pdsa.gakhov.com
This presentation focuses on Deep Learning (DL) concepts, such as neural neworks, backprop, activation functions, and Convolutional Neural Networks, with a short introduction to D3, and followed by a TypeScript-based code sample that replicates the TensorFlow playground. Basic knowledge of matrices is helpful.
This presentation focuses on Deep Learning (DL) concepts, such as neural neworks, backprop, activation functions, and Convolutional Neural Networks, with a short introduction to D3, and followed by a TypeScript-based code sample that replicates the TensorFlow playground. Basic knowledge of matrices is helpful.
this is a briefer overview about the Big O Notation. Big O Notaion are useful to check the Effeciency of an algorithm and to check its limitation at higher value. with big o notation some examples are also shown about its cases and some functions in c++ are also described.
Too Much Data? - Just Sample, Just Hash, ...Andrii Gakhov
Code & Supply | Pittsburgh Meetup | May 31, 2019
Probabilistic Data Structures and Algorithms (PDSA) is a common name of data structures based on different hashing techniques. They have been incorporated into Spark SQL. They are also used by Amazon Redshift and Google BigQuery, Redis and Elasticsearch, and many others. Consequently, PDSA is not just some interesting academic topic.
Book "Probabilistic Data Structures and Algorithms for Big Data Applications" (ISBN: 978-3748190486 ) https://pdsa.gakhov.com
Recommendation algorithms are intensively used to improve user experience and maximise revenue of several websites: ads targeting, recommendation of products on ecommerce websites, job offers you may be interested in, contact suggestion on social networks, ...
To do so, collaborative filtering algorithms are one of the most popular methods but several other approaches may be used.
It this presentation, we introduce the main strategies (model based vs memory based algorithms) to elaborate a recommendation engine, and we describe how to implement a collaborative filtering algorithm with only 10 lines of code.
In this playlist
https://youtube.com/playlist?list=PLT...
I'll illustrate algorithms and data structures course, and implement the data structures using java programming language.
the playlist language is arabic.
The Topics:
--------------------
1- Arrays
2- Linear and Binary search
3- Linked List
4- Recursion
5- Algorithm analysis
6- Stack
7- Queue
8- Binary search tree
9- Selection sort
10- Insertion sort
11- Bubble sort
12- merge sort
13- Quick sort
14- Graphs
15- Hash table
16- Binary Heaps
Reference : Object-Oriented Data Structures Using Java - Third Edition by NELL DALE, DANEIEL T.JOYCE and CHIP WEIMS
Slides is owned by College of Computing & Information Technology
King Abdulaziz University, So thanks alot for these great materials
Introducing TensorFlow: The game changer in building "intelligent" applicationsRokesh Jankie
This is the slidedeck used for the presentation of the Amsterdam Pipeline of Data Science, held in December 2016. TensorFlow in the open source library from Google to implement deep learning, neural networks. This is an introduction to Tensorflow.
Note: Videos are not included (which were shown during the presentation)
This slides explains how Convolution Neural Networks can be coded using Google TensorFlow.
Video available at : https://www.youtube.com/watch?v=EoysuTMmmMc
Recommendation algorithms are intensively used to improve user experience and maximise revenue of several websites: ads targeting, recommendation of products on ecommerce websites, job offers you may be interested in, contact suggestion on social networks, ...
To do so, collaborative filtering algorithms are one of the most popular methods but several other approaches may be used.
It this presentation, we introduce the main strategies (model based vs memory based algorithms) to elaborate a recommendation engine, and we describe how to implement a collaborative filtering algorithm with only 10 lines of code.
In this playlist
https://youtube.com/playlist?list=PLT...
I'll illustrate algorithms and data structures course, and implement the data structures using java programming language.
the playlist language is arabic.
The Topics:
--------------------
1- Arrays
2- Linear and Binary search
3- Linked List
4- Recursion
5- Algorithm analysis
6- Stack
7- Queue
8- Binary search tree
9- Selection sort
10- Insertion sort
11- Bubble sort
12- merge sort
13- Quick sort
14- Graphs
15- Hash table
16- Binary Heaps
Reference : Object-Oriented Data Structures Using Java - Third Edition by NELL DALE, DANEIEL T.JOYCE and CHIP WEIMS
Slides is owned by College of Computing & Information Technology
King Abdulaziz University, So thanks alot for these great materials
Introducing TensorFlow: The game changer in building "intelligent" applicationsRokesh Jankie
This is the slidedeck used for the presentation of the Amsterdam Pipeline of Data Science, held in December 2016. TensorFlow in the open source library from Google to implement deep learning, neural networks. This is an introduction to Tensorflow.
Note: Videos are not included (which were shown during the presentation)
This slides explains how Convolution Neural Networks can be coded using Google TensorFlow.
Video available at : https://www.youtube.com/watch?v=EoysuTMmmMc
On the necessity and inapplicability of pythonYung-Yu Chen
Python is a popular scripting language adopted by numerical software vendors to help users solve challenging numerical problems. It provides easy-to-use interface and offers decent speed through array operations, but it is not suitable for engineering the low-level constructs. To make good numerical software, developers need to be familiar with C++ and computer architecture. The gap of understandings between the high-level applications and low-level implementation motivated me to organize a course to train computer scientists what it takes to build numerical software that the users (application experts) want. This talk will portray a bird view of the advantages and disadvantages of Python and where and how C++ should be used in the context of numerical software. The information may be used to map out a plan to acquire the necessary skill sets for making the software.
Recording https://www.youtube.com/watch?v=OwA-Xt_Ke3Y
Data Structures in CData Structures in CData Structures in CData Structures in CData Structures in CData Structures in CData Structures in CData Structures in CData Structures in CData Structures in CData Structures in CData Structures in CData Structures in CData Structures in CData Structures in CData Structures in CData Structures in CData Structures in CData Structures in CData Structures in CData Structures in CData Structures in CData Structures in CData Structures in CData Structures in CData Structures in CData Structures in CData Structures in CData Structures in CData Structures in CData Structures in CData Structures in CData Structures in CData Structures in CData Structures in CData Structures in CData Structures in CData Structures in CData Structures in CData Structures in CData Structures in CData Structures in CData Structures in CData Structures in CData Structures in CData Structures in CData Structures in CData Structures in CData Structures in CData Structures in CData Structures in CData Structures in CData Structures in CData Structures in CData Structures in CData Structures in CData Structures in CData Structures in CData Structures in CData Structures in CData Structures in CData Structures in CData Structures in CData Structures in CData Structures in CData Structures in CData Structures in CData Structures in CData Structures in CData Structures in CData Structures in CData Structures in CData Structures in CData Structures in CData Structures in CData Structures in CData Structures in CData Structures in CData Structures in CData Structures in CData Structures in CData Structures in CData Structures in CData Structures in CData Structures in CData Structures in CData Structures in CData Structures in CData Structures in CData Structures in CData Structures in CData Structures in CData Structures in CData Structures in CData Structures in CData Structures in CData Structures in CData Structures in CData Structures in CData Structures in CData Structures in CData Structures in CData Structures in CData Structures in CData Structures in CData Structures in CData Structures in CData Structures in CData Structures in CData Structures in CData Structures in CData Structures in CData Structures in CData Structures in CData Structures in CData Structures in CData Structures in CData Structures in CData Structures in CData Structures in CData Structures in CData Structures in CData Structures in CData Structures in CData Structures in CData Structures in CData Structures in CData Structures in CData Structures in CData Structures in CData Structures in CData Structures in CData Structures in CData Structures in CData Structures in CData Structures in CData Structures in CData Structures in CData Structures in CData Structures in CData Structures in CData Structures in CData Structures in CData Structures in CData Structures in CData Structures in CData Structures in CData Structures in CData Structures in CData Structures in
Natural language processing open seminar For Tensorflow usagehyunyoung Lee
This is presentation for Natural Language Processing open seminar in Kookmin University.
The open seminar reference : https://cafe.naver.com/nlpk
My presentation about how to use tensorflow for NLP open seminar for newbies for tensorflow.
The increased availability of biomedical data, particularly in the public domain, offers the opportunity to better understand human health and to develop effective therapeutics for a wide range of unmet medical needs. However, data scientists remain stymied by the fact that data remain hard to find and to productively reuse because data and their metadata i) are wholly inaccessible, ii) are in non-standard or incompatible representations, iii) do not conform to community standards, and iv) have unclear or highly restricted terms and conditions that preclude legitimate reuse. These limitations require a rethink on data can be made machine and AI-ready - the key motivation behind the FAIR Guiding Principles. Concurrently, while recent efforts have explored the use of deep learning to fuse disparate data into predictive models for a wide range of biomedical applications, these models often fail even when the correct answer is already known, and fail to explain individual predictions in terms that data scientists can appreciate. These limitations suggest that new methods to produce practical artificial intelligence are still needed.
In this talk, I will discuss our work in (1) building an integrative knowledge infrastructure to prepare FAIR and "AI-ready" data and services along with (2) neurosymbolic AI methods to improve the quality of predictions and to generate plausible explanations. Attention is given to standards, platforms, and methods to wrangle knowledge into simple, but effective semantic and latent representations, and to make these available into standards-compliant and discoverable interfaces that can be used in model building, validation, and explanation. Our work, and those of others in the field, creates a baseline for building trustworthy and easy to deploy AI models in biomedicine.
Bio
Dr. Michel Dumontier is the Distinguished Professor of Data Science at Maastricht University, founder and executive director of the Institute of Data Science, and co-founder of the FAIR (Findable, Accessible, Interoperable and Reusable) data principles. His research explores socio-technological approaches for responsible discovery science, which includes collaborative multi-modal knowledge graphs, privacy-preserving distributed data mining, and AI methods for drug discovery and personalized medicine. His work is supported through the Dutch National Research Agenda, the Netherlands Organisation for Scientific Research, Horizon Europe, the European Open Science Cloud, the US National Institutes of Health, and a Marie-Curie Innovative Training Network. He is the editor-in-chief for the journal Data Science and is internationally recognized for his contributions in bioinformatics, biomedical informatics, and semantic technologies including ontologies and linked data.
Cancer cell metabolism: special Reference to Lactate PathwayAADYARAJPANDEY1
Normal Cell Metabolism:
Cellular respiration describes the series of steps that cells use to break down sugar and other chemicals to get the energy we need to function.
Energy is stored in the bonds of glucose and when glucose is broken down, much of that energy is released.
Cell utilize energy in the form of ATP.
The first step of respiration is called glycolysis. In a series of steps, glycolysis breaks glucose into two smaller molecules - a chemical called pyruvate. A small amount of ATP is formed during this process.
Most healthy cells continue the breakdown in a second process, called the Kreb's cycle. The Kreb's cycle allows cells to “burn” the pyruvates made in glycolysis to get more ATP.
The last step in the breakdown of glucose is called oxidative phosphorylation (Ox-Phos).
It takes place in specialized cell structures called mitochondria. This process produces a large amount of ATP. Importantly, cells need oxygen to complete oxidative phosphorylation.
If a cell completes only glycolysis, only 2 molecules of ATP are made per glucose. However, if the cell completes the entire respiration process (glycolysis - Kreb's - oxidative phosphorylation), about 36 molecules of ATP are created, giving it much more energy to use.
IN CANCER CELL:
Unlike healthy cells that "burn" the entire molecule of sugar to capture a large amount of energy as ATP, cancer cells are wasteful.
Cancer cells only partially break down sugar molecules. They overuse the first step of respiration, glycolysis. They frequently do not complete the second step, oxidative phosphorylation.
This results in only 2 molecules of ATP per each glucose molecule instead of the 36 or so ATPs healthy cells gain. As a result, cancer cells need to use a lot more sugar molecules to get enough energy to survive.
Unlike healthy cells that "burn" the entire molecule of sugar to capture a large amount of energy as ATP, cancer cells are wasteful.
Cancer cells only partially break down sugar molecules. They overuse the first step of respiration, glycolysis. They frequently do not complete the second step, oxidative phosphorylation.
This results in only 2 molecules of ATP per each glucose molecule instead of the 36 or so ATPs healthy cells gain. As a result, cancer cells need to use a lot more sugar molecules to get enough energy to survive.
introduction to WARBERG PHENOMENA:
WARBURG EFFECT Usually, cancer cells are highly glycolytic (glucose addiction) and take up more glucose than do normal cells from outside.
Otto Heinrich Warburg (; 8 October 1883 – 1 August 1970) In 1931 was awarded the Nobel Prize in Physiology for his "discovery of the nature and mode of action of the respiratory enzyme.
WARNBURG EFFECT : cancer cells under aerobic (well-oxygenated) conditions to metabolize glucose to lactate (aerobic glycolysis) is known as the Warburg effect. Warburg made the observation that tumor slices consume glucose and secrete lactate at a higher rate than normal tissues.
Observation of Io’s Resurfacing via Plume Deposition Using Ground-based Adapt...Sérgio Sacani
Since volcanic activity was first discovered on Io from Voyager images in 1979, changes
on Io’s surface have been monitored from both spacecraft and ground-based telescopes.
Here, we present the highest spatial resolution images of Io ever obtained from a groundbased telescope. These images, acquired by the SHARK-VIS instrument on the Large
Binocular Telescope, show evidence of a major resurfacing event on Io’s trailing hemisphere. When compared to the most recent spacecraft images, the SHARK-VIS images
show that a plume deposit from a powerful eruption at Pillan Patera has covered part
of the long-lived Pele plume deposit. Although this type of resurfacing event may be common on Io, few have been detected due to the rarity of spacecraft visits and the previously low spatial resolution available from Earth-based telescopes. The SHARK-VIS instrument ushers in a new era of high resolution imaging of Io’s surface using adaptive
optics at visible wavelengths.
A brief information about the SCOP protein database used in bioinformatics.
The Structural Classification of Proteins (SCOP) database is a comprehensive and authoritative resource for the structural and evolutionary relationships of proteins. It provides a detailed and curated classification of protein structures, grouping them into families, superfamilies, and folds based on their structural and sequence similarities.
2. Who am I?
● Ex Vailati student (2009-2014)
● Computer Engineering Bachelor Degree @Università degli
Studi di ROMA 'Tor Vergata' (2014-2017)
● Computer Engineering Master Degree @Università degli
Studi di ROMA 'Tor Vergata' (2017-present)
● Researcher @CNIT (2017-present): new version of the TCP
protocol & network programmability at transport layer
3. Some numbers…
● On January 2017 there were 1 062 660 523 registered
hosts on DNS servers [11: Internet System Consortium]
● Global mobile traffic grown by 70% in the last year, and
average mobile connection @ ≥10Mbps in 32 countries
[12: The Akamai’s state of Internet]
● The global average Internet connection speed reached
7.2 Mbps, while global broadband adoption above 10
Mbps was 45% [12]
● 77% of Americans have a smartphone in 2018 [14]
4. … more numbers
● 73.98% of Italians, 81.45% of Americans, 90.84% of
English have a personal computer [13: The world bank]
5. Used in a vast variety of fields…
● Education
● Health and medicine
● Science
● Business
● Recreation and entertainment
● Government
● Defense [15]
It’s hard to find a field where it’s not used!
8. So many users, so many technologies but...
Chris Bishop
Distinguished Scientist, Microsoft
Research Cambridge
Vice President, The Royal Institution
of Great Britain
Professor of Computer Science,
University of Edinburgh
9. Computing is transforming our society in ways that are
as profound as the changes wrought by physics and
chemistry in the previous two centuries. Indeed, there is
hardly an aspect of our lives that hasn't already been
influenced, or even revolutionized, by digital technology. Given
the importance of computing to modern society, it is therefore
somewhat paradoxical that there is so little awareness
of the fundamental concepts that make it all possible.
The study of these concepts lies at the heart of
computer science, [...] it is rarely taught in high school.
While an introduction to subjects such as physics and
chemistry is generally considered mandatory, it is often
only at the college or university level that computer
science can be studied in its own right. Furthermore, what
is often taught in schools as “computing” or “ICT”
(information and communication technology) is generally
little more than skills training in the use of software
packages.
[1]
11. Today
●
Sunway TaihuLight: 93 Petaflops = 93*1015
(1000000000000000)
● 1 FLOP = 1 floating point op / 1 s
● Intel® Core™ i9-7980XE Extreme Edition: 1 Tetaflops =
10¹²
● 10 000 times slower but very fast too!
12. 181 years ago, in 1837...
Charles Babbage, English polymath(mathematician,
philosopher, inventor and mechanical engineer)
The Analytical Engine incorporated an arithmetic logic unit,
control flow in the form of conditional branching and loops,
and integrated memory, making it the first design for a
general-purpose computer that could be described in
modern terms as Turing-complete
“Even steam-powered, the analytical engine would have
been able to compute any computable function” [7]
13.
14. Von Neumann 1945 [8]
John von Neumann, Hungarian-American mathematician,
physicist, and computer scientist.
15.
16. ● CPU: control (decide what instruction to execute), ALU
(performs basic Arithmetical and logic operations)
● Memory: to store the data alongside the program which use
them
● I/O deivces
A computer is an engine that can execute some set of basic
operations, stored in a program (i.e. an algorithm)
Old but gold! Still used today...
17. Alan Turing 1936
Alan Mathison Turing, English computer scientist, mathematician,
logician, cryptanalyst, philosopher, and theoretical biologist.
18. Alan Turing presents the notion of a universal machine, later
called the Turing machine, capable of computing anything
that is computable. The central concept of the modern
computer was based on his ideas.
Computable = can be expressed as an algorithm
Formally defined in his paper “On Computable Numbers, with an
Application to the Entscheidungsproblem”
In short Turing defined the mathematical concept of the Turing
machine and Von Neumann the modern realization of it!
19. A computer is simply an executor of algorithms.
It’s a Turing machine, it can execute every
program that can be expressed as an algorithm.
Every Turing machine is universal, it can execute
every program.
The only things that change is a more powerful
machine can execute the program faster,
because can execute instructions faster… but
every computer can execute the same basic
operations.
20. What is an algorithm?
A set of instructions defined step-by-step in a way that can
be executed mechanically, producing a well determined
result.
A sequence of computing steps, which receiving an input
return an output ( A: {input} → {output} ). [19]
Is a precise recipe that specifies the exact sequence of
steps required to solve a problem. [1]
21. The 0 example: ‘moka algorithm’ [19]
1. open the moka pot
2. fill the water chamber with water
3. put the basket filter
4. fill the basket with the coffee powder
5. screw the upper part on the basis
6. put the moka on an heat source
7. when the coffee is ready turn off the heat source
8. pour coffee in a cup
22.
23. What I want to stress now
An Algorithm is a
solution to a practical
problem, executed on a
general purpose
machine
24. 1st
problem: searching an item in a list [19]
Suppose we have a list of unsorted
numbers. I have to search a specific
number. How to solve the problem?
25.
26. The pseudo-code
Algorithm linearSearch( list L, element x ) → bool
for each ( y ∈ L ) do
if ( y = x ) then return FOUND
Return NOT_FOUND
2 main ingredients: the if branch and the for each loop
27. Is it fast?
● We can measure time
● But it’s computer dependent!
Need of a computer independent metric:
● Based on the input size
● Measure number of steps required (i.e. number of
instructions)
28. An algorithm is a Sequence of computing steps,
that receiving an input return an output, so
given a certain input it will require some
number of instructions, i.e. some numbers of
steps…
So for the linear search?
29. Algorithm linearSearch( list L, element x ) → bool
for each ( y ∈ L ) do
if ( y = x ) then return FOUND
Return NOT_FOUND
● The if can be considered as 1 step
● How many time the step is repeated?
● It depends on the size of the input
● Let be N the # of the elements of the list. The if step is
repeated at most N times
● So we can say O(N) is the performance of this algorithm
30. 2nd
problem: searching in a sorted list [19]
Suppose we have a sorted list and we
want to look for an item in the list. The
same as before, but we have that the
elements in the list are now sorted.
Can we solve the problem in a better way?
31.
32. The pseudo-code [20]
Algorithm binarySearch( list L, element x ) → bool
a ← 1
b ← N
while( there are elements in the sub-list starting in a and
ending in b ) do
m ← ( a + b ) / 2
if( L[ m ] > x ) then b ← m - 1
else if( L[ m ] < x ) then a ← m + 1
else then return FOUND
return NOT_FOUND
33.
34. 3rd
problem: sorting a list
But searching on a ordered list requires the list to
be ordered! So sorting algorithms!
Suppose we have an unsorted list and we want to
make it ordered. So the input is the unsorted list
and the output will be the sorted list.
How can we do it?
35.
36.
37.
38. The pseudo-code [19, 21, 22]
Algorithm bubbleSort( list L ) → void
while ( there are swaps )
for j from 1 to N
if( L[ j ] > L[ j + 1 ] ) then
swap( L[ j ], L[ j + 1 ] )
What are the performance? O( N² ). There are better algorithms!
39. 4th
problem: ranking search results
Suppose we are searching for some web pages, for
example looking for a certain title.
We want that given a title, it will give us back all the pages
with that title.
We can use a search algorithm for an exact match for sure,
but we can make also more complex queries, but we don’t talk
about that here. The only modification of the algorithm, is
that instead of giving the first page found, it will give the
list of all the pages found.
40. Modified search algorithm
Algorithm linearSearchModified( list L, title t ) → list R
R ← {}
for each ( y ∈ L ) do
if ( y = t ) then insert page in R
Return R
So from a list of pages, e.g. all the pages of the web, and
a title we can obtain the list of all the pages with that
title.
We can obtain a list of the pages that matches a certain
query. But the # of pages that we get, can be very big.
We are rarely interested in all the results, we are rather
interested in the most relevant results.
41.
42.
43.
44.
45.
46. The random surfer trick
● A web surfer, choose a random page
● Choose randomly one of the exiting links of the page and go
to the linked page
● Every time the random surfer visit a page, has a probability
of 15% to start a again the surf from a randomly chosen
page (the user get bored...)
Every page has a counter of the # of times the random user has
visited it.
47.
48.
49. random visitor authority = ‘% of time user spent on that
page in respect of all the time spent on the total of pages’
● hyper-link trick: the more incoming links I have, the
more likely the random user will visit me.
● authority trick: the more authority a page have, more
authority I obtain if that page links me. (more high is
the authority, more incoming link I have, more likely
the user will visit me, and so he will more likely visit
the pages that I link).
Problem? Web spammers, there’s lot of research in fixing that
issue!
50. Lawrence Edward Page & Sergey Brin
Founded Google on 4th
of September 4 in 1998. Pagerank is the
core of their search engine
53. [1] John MacCormick, 9 Algorithms that changed the future
[2] https://www.top500.org/lists/2017/11/slides/ (Top500)
[3] https://en.wikipedia.org/wiki/TOP500
[4] https://www.top500.org/news/china-tops-supercomputer-
rankings-with-new-93-petaflop-machine/
[5]https://en.wikipedia.org/wiki/Analytical_Engine
[6] https://www.livescience.com/20718-computer-history.html
[7] https://www.newscientist.com/article/mg20827915.500-lets-
build-babbages-ultimate-mechanical-computer/
[8] https://en.wikipedia.org/wiki/Von_Neumann_architecture
[9] https://en.wikipedia.org/wiki/Turing%27s_proof
[10] https://www.cs.virginia.edu/~robins/Turing_Paper_1936.pdf
[11]http://ftp.isc.org/www/survey/reports/2017/01/(Internet
Systems Consortium)
54. [12] https://content.akamai.com/gl-en-pg9135-q1-soti-
connectivity.html (The Akamai’s state of the Internet)
[13]https://tcdata360.worldbank.org/indicators/entrp.household.comp
uter?country=ITA&indicator=3427&viz=choropleth&years=2016 The
world bank
[14] http://www.pewinternet.org/fact-sheet/mobile/
[15] http://ecomputernotes.com/fundamental/introduction-to-
computer/uses-of-computer
[16] https://www.gartner.com/smarterwithgartner/top-trends-in-the-
gartner-hype-cycle-for-emerging-technologies-2017/
[17] https://storiografia.me/2013/11/10/ada-lovelace-e-il-primo-
programma-di-calcolo-della-storia/