generated from btholt/next-course-starter
-
Notifications
You must be signed in to change notification settings - Fork 10
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
- Loading branch information
Showing
5 changed files
with
72 additions
and
88 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -1,78 +1,69 @@ | ||
--- | ||
--- | ||
|
||
``` | ||
0930: Introduction | ||
1000: Getting started with SQLite | ||
1100: SQL Basics | ||
1200: Lunch | ||
1300: Data types | ||
1400: Managing SQLite tables and databases | ||
1500: Indexing | ||
1600: Transactions\ | ||
0930: Extensions | ||
1000: Scaling SQLite | ||
1100: SQLite vs other databases | ||
1200: Lunch | ||
1300: Building real-world apps with SQLite | ||
1400: Wrap-up | ||
``` | ||
|
||
Agenda: | ||
|
||
Intro to SQLite Conceptual | ||
|
||
- Brief history | ||
- It's everywhere | ||
- It runs on everything | ||
- Now it can scale up | ||
|
||
Intro to SQLite Execution | ||
|
||
- It's a file | ||
- It's still SQL | ||
- https://www.sqlite.org/omitted.html | ||
- https://www.sqlite.org/quirks.html | ||
- CLI | ||
- Chinook: https://github.com/lerocha/chinook-database | ||
|
||
SQL Basics | ||
|
||
- Selects | ||
- Inserts | ||
- Updates | ||
- Deletes | ||
- Order | ||
- Tables | ||
|
||
A bit more advanced | ||
|
||
- Relationships | ||
- Joins | ||
- Foreign Keys | ||
- Functions / Aggregations / Group | ||
- Query Performance | ||
- Transactions | ||
|
||
Node.js Exercise: Show movies | ||
|
||
Particular to SQLite | ||
|
||
- Dynamic Data Types | ||
- Limits | ||
- Triggers | ||
- Views | ||
|
||
Extensions | ||
|
||
- JSON | ||
- Full Text Search | ||
- Vector | ||
|
||
Growing SQLite | ||
|
||
- Litestream / Backups | ||
- LiteFS / Network Access | ||
- SQLite vs libSQL | ||
|
||
TODO – subqueries | ||
Hello! And welcome to the Complete Intro to SQLite, as taught by Brian Holt for Frontend Masters. In this course you will get learn the basics of SQL, the core features of SQLite, how to build a Node.js app with SQLite, what interesting and unique to SQLite as compared to other databases, some advance JSON ways to use SQLite, and what the future holds for SQLite with things like Litestream, LiteFS, and libSQL. | ||
|
||
## Who is this course for? | ||
|
||
You, hopefully. This course shouldn't be your first exposure to programming or the command line, and it does use a bit of JavaScript so it would help if you knew bit of JavaScript. There's also some very light Docker use but I'll explain all of it so it's okay if you don't need Docker. Luckily I've taught courses on these subjects if you want to brush up! | ||
|
||
- [Complete Intro to Web Dev][web-dev] | ||
- [Complete Intro to Linux and the CLI][cli] | ||
- [Complete Intro to Containers][containers] | ||
|
||
These are great if you need help on any of those subjects. You do not any exposure to SQL prior to this course, the first part of it is basic querying in SQL. It is a brief intro, and if you want SQL, you can take my [Complete Intro to SQL][sql] which uses Postgres but nearly all of it would apply to SQLite as well. | ||
|
||
## Who am I? | ||
|
||
My name is Brian and I am a staff product manager at [Neon][neon]. Neon is now my _third_ database company I've worked (fourth if you count Microsoft!) and I just love working developers and data. Have a good grasp of databases is essential to any app building and a little bit of skill and experience here will serve you well throughout your entire career! | ||
|
||
Prior to Neon, I've work as a PM and engineer at SQLite Cloud, Snowflake, Stripe, Microsoft, LinkedIn, Netflix, Reddit, and some other smaller companies. I've also been fortunate to teach at Frontend Masters a number of times and I'll keep doing it until they kick me out! | ||
|
||
I'm a recent transplant to Sacramento, CA. Previous to that, I've lived in Salt Lake City, San Francisco, Seattle, Montana, and northern Italy. When not teaching or working you'll find me snowboarding, playing Dota 2 poorly, drinking a cold beer, hot coffee, or smoky whisky, playing with my son and dog, and hacking on some side project for fun. | ||
|
||
Please catch up with me on social media, would love to chat. I will warn you: I am awful at responding to direct messages! | ||
|
||
- [Twitter][twitter] | ||
- [GitHub][github] | ||
- [LinkedIn][linkedin] | ||
|
||
## What tools are your using? | ||
|
||
- Visual Studio Code – I used to work at Microsoft on VS Code so it's no surprise that I'll be using it in this course. | ||
- Firefox – I want more than Chromium to exist so I support Firefox where I can. Feel free to use any browser; it won't matter in this course. | ||
- Terminal.app – I used to use iTerm2 and Hyper but in the end I appreciate how fast the default terminal is. | ||
- Docker Desktop – the last sections of the course lightly use Docker. Feel free to install it and follow along or just watch and read if you don't want to install Docker. | ||
|
||
## What <font/theme/extension> are you using? | ||
|
||
- Visual Studio Code | ||
- Dark+ Theme – It comes installed by default but it's not the default theme anymore. I'm so used to it that I can't switch. | ||
- [MonoLisa][monolisa] font – I like fonts and I look at it all day so I was okay paying for it. I have [ligatures][ligatures] enabled which is why you might see strange glyphs. If you want ligatures but don't want to pay, the linked ligature article has a few. I like Cascadia Code from Microsoft. | ||
- [vscode-icons][vscode-icons] – Lots of neat icons for VS Code and it's free. | ||
- Terminal | ||
- zsh – It comes with macOS now and I'm _way_ too lazy to switch back to bash. | ||
- [Dracula theme][dracula] – I like the pastels. I would use it in VS Code too if Dark+ wasn't ingrained in my blood. | ||
- [Starship Prompt][starship] – Very cool prompt that's just pretty. Also shows you what sort of project you're in which is occasionally useful | ||
- [CaskaydiaCove Nerd Font][nerd] – This works with Starship prompt to give you the JS logos and all those extra glyphs. It's based on Cascadia Code. | ||
|
||
## Where to File Issues | ||
|
||
I write these courses and take care to avoid making mistakes. However, when teaching hours of material, mistakes are inevitable, both here in the grammar and in the course with the material. However, I (and the wonderful team at Frontend Masters) are constantly correcting the mistakes so that those of you that come later get the best product possible. If you find an error, we'd love to fix it. The best way to do this is to [open a pull request or file an issue on the GitHub repo][issue]. While I'm always happy to chat and give advice on social media, I can't be tech support for everyone. And if you file it on GitHub, those who come later can Google the same answer you got. | ||
|
||
## Star this repo! | ||
|
||
I would love it if you would take a sec and [star the repo on GitHub][star] | ||
|
||
[web-dev]: https://frontendmasters.com/courses/web-development-v3/ | ||
[cli]: https://frontendmasters.com/courses/linux-command-line/ | ||
[containers]: https://frontendmasters.com/courses/complete-intro-containers-v2/ | ||
[sql]: https://frontendmasters.com/courses/sql/ | ||
[neon]: https://neon.tech/ | ||
[twitter]: https://twitter.com/holtbt | ||
[github]: https://github.com/btholt | ||
[linkedin]: https://www.linkedin.com/in/btholt/ | ||
[ligatures]: https://worldofzero.com/posts/enable-font-ligatures-vscode/ | ||
[monolisa]: https://www.monolisa.dev/ | ||
[vscode-icons]: https://marketplace.visualstudio.com/items?itemName=vscode-icons-team.vscode-icons | ||
[dracula]: https://draculatheme.com/terminal | ||
[starship]: https://starship.rs/ | ||
[nerd]: https://www.nerdfonts.com/font-downloads | ||
[issue]: https://github.com/btholt/complete-intro-to-sqlite/issues | ||
[star]: https://github.com/btholt/complete-intro-to-sqlite |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file was deleted.
Oops, something went wrong.
Empty file.