Skip to content

Commit fcfc480

Browse files
committed
Refactor course-definition.yml: Improve SQLite course description and add support for .dbinfo command
1 parent 6c52666 commit fcfc480

File tree

1 file changed

+23
-9
lines changed

1 file changed

+23
-9
lines changed

course-definition.yml

Lines changed: 23 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -3,11 +3,25 @@ name: "Build your own SQLite"
33
short_name: "SQLite"
44
release_status: "live"
55

6+
# This is shown on the course overview page. Markdown supported, recommended length ~40 words.
7+
#
8+
# Recommended format:
9+
#
10+
# > ABC is <whatever>. In this challenge, you'll build your own ABC that's capable of D, E, F and G.
11+
# >
12+
# > Along the way, we'll learn about X, Y, Z and more.
13+
#
14+
# Example:
15+
#
16+
# > Redis is an in-memory data structure store often used as a database, cache, message broken and streaming engine. In this challenge
17+
# > you'll build your own Redis server that is capable of serving basic commands, reading RDB files and more.
18+
# >
19+
# > Along the way, you'll learn about TCP servers, the Redis Protocol and more.
620
description_md: |-
7-
In this challenge, you'll build a barebones SQLite implementation that supports
8-
basic SQL queries like SELECT. Along the way you'll learn about SQLite's
9-
[file format](https://sqlite.org/fileformat.html), how indexed data is
10-
stored in B-trees and more.
21+
SQLite is a popular SQL database engine. In this challenge, you'll build your own version of SQLite
22+
that is capable of reading a SQLite database file and answering basic SQL queries like SELECT and using indexes.
23+
24+
Along the way, you'll learn about the SQLite file format, SQL syntax and more.
1125
1226
# Keep this under 70 characters
1327
short_description_md: |-
@@ -79,7 +93,7 @@ stages:
7993
```
8094
8195
We're only going to focus on one of these values: `database page size`. To find the page size, you'll need
82-
to read the [database header](https://www.sqlite.org/fileformat.html#the_database_header).
96+
to read the [database header](https://www.sqlite.org/fileformat.html#the_database_header).
8397
8498
Here's how the tester will execute your program:
8599
@@ -95,7 +109,7 @@ stages:
95109
marketing_md: |-
96110
In this stage, you'll implement one of SQLite's
97111
[dot-commands](https://www.sqlite.org/cli.html#special_commands_to_sqlite3_dot_commands_): `.dbinfo`. This command
98-
prints metadata related a SQLite database, and you'll implement one of these values: the database page size. You'll
112+
prints metadata related a SQLite database, and you'll implement one of these values: the database page size. You'll
99113
do this by parsing a file that uses the [SQLite database file format](https://www.sqlite.org/fileformat.html).
100114
101115
- slug: "table_count"
@@ -118,7 +132,7 @@ stages:
118132
data version: 1
119133
```
120134
121-
We implemented `database page size` in the last stage. In this stage, we'll focus on another value: `number of tables`.
135+
We implemented `database page size` in the last stage. In this stage, we'll focus on another value: `number of tables`.
122136
To find the number of tables, you'll need to count the number of rows in the
123137
[`sqlite_schema`](https://www.sqlite.org/fileformat.html#storage_of_the_sql_database_schema) table.
124138
@@ -135,7 +149,7 @@ stages:
135149
number of tables: 2
136150
```
137151
marketing_md: |-
138-
In this stage, you'll extend support for the .dbinfo command added in the previous stage. Specifically, you'll
152+
In this stage, you'll extend support for the .dbinfo command added in the previous stage. Specifically, you'll
139153
implement functionality to print the number of tables. You'll do this by parsing a file that uses the
140154
[SQLite database file format](https://www.sqlite.org/fileformat.html).
141155
@@ -349,7 +363,7 @@ stages:
349363
The test database contains a `companies` table with an index named `idx_companies_country` on the
350364
`country` column.
351365
352-
You can download a small version of this database to test locally, read the **Sample Databases** section in the **README**
366+
You can download a small version of this database to test locally, read the **Sample Databases** section in the **README**
353367
of your repository for details.
354368
355369
Here's how the tester will execute your program:

0 commit comments

Comments
 (0)