-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathindex.html
103 lines (103 loc) · 2.89 KB
/
index.html
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="utf-8">
<title>sql-ite</title>
<meta name="viewport" content="width=device-width, initial-scale=1">
<link rel="stylesheet" href="style.css">
<script defer src="script.js"></script>
</head>
<body>
<main>
<section>
<h1>SQLite</h1>
<ul>
<li>Wat?</li>
<li>Single file, transactional SQL database engine geschreven in C</li>
</ul>
<img src="wow.webp" />
</section>
<section>
<h2>"Most Widely Deployed and Used Database Engine (in the world)"</h2>
<ul>
<li>Every Android device</li>
<li>Every Mac, iPhone and iOS device</li>
<li>Every Windows10 machine</li>
<li>Every Firefox, Chrome, and Safari web browser</li>
<li>Every instance of Dropbox, Skype, iTunes, Aperture, Mail</li>
</ul>
<a href="https://www.sqlite.org/mostdeployed.html" target="_blank">Source</a>
</section>
<section>
<h1>Profit: 0$</h1>
<p>Public domain?</p>
<blockquote>"The author disclaims copyright to this source code. In place of a legal notice, here is a blessing: may you do good and not evil. May you find forgiveness for yourself and forgive others. May you share freely, never taking more than you give."</blockquote>
</section>
<section>
<h2>History</h2>
<ul>
<li>Richard Hipp</li>
<li>May 29, 2000 -> GnuDBM hashing-based DB</li>
<li>2001 -> B-tree based Sqlite2</li>
<li>2004 - Sqlite3</li>
<li>Airbus, A350 -> 2050</li>
</ul>
</section>
<section>
<h2>Features</h2>
<ul>
<li>C, dus cross-platform</li>
<li>100% open-source</li>
<li>ACID compliant</li>
<li>Uitgebreid getest (meer tests dan source code)</li>
<li>Stabiel & LTS</li>
<li>Small: 600kb</li>
<li>Gemakkelijk backup/deploy want 1 file</li>
</ul>
</section>
<section>
<h2>Limits & myths</h2>
<ul>
<li>1 writer per keer</li>
<li>5 seconden PENDING default</li>
<li>Concurrency -> Write ahead log (WAL)</li>
<li>50,000 inserts/s</li>
<li>Corrupt -> automatische rollback</li>
<li>140TB - 1GB</li>
</ul>
<p>> Key is het aantal gebruikers</p>
</section>
<section>
<h2>Use cases</h2>
<ul>
<li>Embedded</li>
<li>Scripting & kleine tools -> JSON of YAML 🤮</li>
<li>Websites?
<ul>
<li>100-500k request/day</li>
<li>Doctrine -> pdo_sqlite</li>
</ul>
</li>
<li>SQLitebrowser</li>
</ul>
</section>
<section>
<h2>Slechte kanten</h2>
<ul>
<li>(very) dynamic typing. It's a feature.</li>
<li>Niet 100% backwards compatible met MySQL -> tools & scripts</li>
</ul>
<img src="frustration.jpg" />
</section>
<section>
<p>Deze presentatie</p>
<ul>
<li>80 lijnen CSS + 30 lijnen JS</li>
<li>100vh section elements met flexbox</li>
<li>querySelectorAll -> arrow keys -> scrollIntoView</li>
<li>Goed? nee. Goed genoeg? Ja.</li>
</ul>
</section>
</main>
</body>
</html>