Honestly, had a lot of fun making this one. How'd you like it and do you wanna see more? Finally gonna be continuing the System Design playlist: ua-cam.com/video/lFomAYu_Ug0/v-deo.html And here's the full write up: blog.neetcode.io/p/notion-uses-sqlite-caching
To be honest, I immediately liked the video just by reading the title and without even watching the video. I was like "finally something new and not even new but also really interesting topic". Would like more of those kind of videos in the future, thank you
Great great video! I have stumbled upon the "How Notion Cut Latency" posts on Linkedin multiple times previously, but the textual material always seemed too heavy or contained too much jargon to comprehend easily without losing patience. This video format & someone explaining as we go - is SOOO SOO much better! Please keep doing this. There's a lot of DSA content on UA-cam but almost no content such as this video. This could also be NeetCode's near future niche.
Graphics make all the complex concepts you cover super approachable. More 20-minute videos please! This was excellent. You covered all the important points concisely and only cut out details that can be found in the newsletter. I would suggest a TLDR of some kind at the start.
I usually dont comment on the videos, but this made me comment because of your effort you put in the video creating it! Amazing video dude! I really liked the flow of the video and everything else.
Everything is good 📈😊, honestly It makes me stick to the video to the end. You should add the visuals like these to persuade the System design and very informative video BTW, I hope like me everyone expect this like understandable and knowledgeable video from you in the future . Thank you.
Naive Question: does Notion solve for race between tabs? I.e. let’s say you have two tabs open on the same task but they are in two different states. one is newer - let’s say 2 paragraphs in the task description One with staler data. Focus is on the tab with the new data, and now you move to the old tab, add one char to your stale description and navigate to a different task. Will you lose your paragraphs ? (I don’t use notion… but intrigued)
Bit of a correction here: web workers do not allow parallel actions, only concurrent actions. The distinction between these terms is that parallel means actions are being performed at precisely the same time, such as on multiple cores, while concurrent means that multiple tasks may be in progress at the same time, but at any given moment, only a single action is taking place. Basically, web workers can do stuff while other threads are blocked/waiting but no two JavaScript threads will ever be executing instructions at precisely the same time.
Loved the visuals loved the explanation and drawings. For the video, if anything I would love more depth. I feel that's what's mainly missing in all of UA-cam. Totally in for much longer videos or series where you fully cover a concept in high level and actual code/tech level. Hope to see that! For the newsletter I want to read it, but wonder can we only read it in the emails ? nowhere else? Just like to read in light mode or reading mode of some browsers if possible.
Liked the diagram pictures used & the length of the video was nice, I learned that this was possible from this video & knowing the pitfalls like the OPFS causing data corruption will save a lot of headaches I imagine.
I loved all the visuals and the explanations. I would prefer if these videos were 15 to 20 mins and not longer. The blog post can provide additional details. Also, this was one the best explanations I have seen to date.
great content i loved it but by the way at 11:35 i wanna say that basically threads share the same memory but processes don't , this is why processes they have to communicate through channels
ah good catch, in this case i believe while web workers run in a separate thread, from a programming perspective to me it still feels like they communicate with the main js thread the way different processes would communicate with each other. this is such a subtle point tho so someone please correct me if im wrong
Dunno about cutting latency, but they did a lot if shite to make notion slow right after initial release. I remember how at first I was pretty happy how it was snappy as hell, but when our teams started to fill more documents it become slower. And then they've released a new update with new features and everything turned into a turtle - everything was slow as hell. Including simple selection and opening context menu.
Awesome !!! The details, the code and yes the pictures - very very useful ... I have also signed up for your newsletter. Your leetcode videos are gold standard, and so was this.
Very cool video. Liked those hand-on explanation. The way you actually showed application tab, it's memory usage and the js file with log statements. Pls continue your good work. Looking forward to learn more from you!
Awsome video, awsome topic as well. I wanted to learn more about using sqlite for caching, particularly now with WASM tools like the sqlite-vec extension for vector search!! This was great! Visuals were great!
Love the video. Maybe I'm in the minority, but i'd love if you could "test" a video where there aren't as many edits stitched together if that makes sense. ie when you make a statement, let the clip run into the next section and leave the pauses. It'll let the idea settle and sink easier, although the con here is that you'll get longer videos. Just a thought.
the visuals are good. obviously could always be better but i dont have further feedback on how. for the vid length could definitely cut it a bit. Thanks as always
This was extremely awesome and kept my attention intact and curiosity raised, drawing and images way of explanation is better (atleast for e) than rambling while showing up bunch of text. Thankyou so much. Btw might be a naive question, how do you get to know about news as such ? what are your sources?
Awesome awesome video! Thank you for taking the time to draw and give a great explanation of their system, I found it really helped and connected all the pieces together! You are the GOAT. I love these types of videos. Keep up the great work!
Pictures and diagrams are a requirement. Rather than creating your own you can use some icon library and grab what you need. Boring standards is better than flashy when learning, it's more important that everyone is on the same page.
Superb Content Bro! Expecting more and more such videos and more images ,graphics and code samples and less Text. I felt 20 minute is less , 30 minutes should be fine.
Great video man! If you do get time make more videos on these concepts, atleast for things in you newsletter that you fell are video worthy! Again, great video man!
Loved the video, I like how you explained system design Often with bytebytego (which I do like) I do feel a little stumped at times Also if I understand correctly we are literally having a database on the client side?!? That seems wild, but why didn't they just use indexedDB
im so tired of programming man i just wanna sit and read a book man its so sad, I wanna get a ton of money in lottary or some unknown billioonaire uncle so I can just enjoy my life instead of focusing everything about practicing every day after work just to get freaking MONEY
Hi nav, I really enjoied a lot your video. I'm mind of tech lead in the places I work. We are doing aí stuff. And it's very good to me to see how others experts are solving their problems
Keep doing these videos, i learned a lot from this. Also this just made me realize than as a self taught sometimes you can invent your own solutions to overcome programming problems like workarounds same as what notion did with race requests etc
I actually prefer Informative videos and 'Hour-long-videos' actually doesn't matter to me yk, I'd like if you produce such contents as I really feel your ability to explain is pretty neat. Oh and also, really nice and informative visuals I really appreciate it.
Just subscribed to your newsletter, if you open the website from a mobile phone you can't find any place to sign up, i had to write the exact url to get it
I don't think there's a limit to how far neetcode can go again 😓 Just when you think bro has settled and we can have some time to make a meaningful catch-up, he blasts off again. I'm tired 😩.
i think it's a good idea, but most users that have old phones don't usually pay for their service ... they even can't download the newer versions of the app ! same applies for computers, if you can't spend 800$ for a good PC, there is a higher chance your not paying for anything & you'll end up downloading an older cracked unstable version of the app if we keep focusing on those users that don't spend money to use some of your services the company will end up spending more & earning less. many companies sometimes focus on Apple users even when they are only 60% of users because they are more likely to pay for an app than Android users & they represent the 80% of their earnings. it's just business, but everything comes with a cost like Data Corruption & they will have to find a better way as you explained !
Honestly, had a lot of fun making this one. How'd you like it and do you wanna see more?
Finally gonna be continuing the System Design playlist: ua-cam.com/video/lFomAYu_Ug0/v-deo.html
And here's the full write up: blog.neetcode.io/p/notion-uses-sqlite-caching
Finally what we have all been waiting for. Neetdesign 🎉
Sure NeetCode. I really like the way you explain everything :)
yes , watched the video twice. its pure Gold. Need more and more videos.
For sure!
Yep really like this style of content, primeagen and t3gg theo are some of my favourite types specially as a beginner
To be honest, I immediately liked the video just by reading the title and without even watching the video. I was like "finally something new and not even new but also really interesting topic". Would like more of those kind of videos in the future, thank you
I love it.. the format, the video length, the topics coverage and of course the hands-on explanation. Looking forward to this series.
same here
Great great video! I have stumbled upon the "How Notion Cut Latency" posts on Linkedin multiple times previously, but the textual material always seemed too heavy or contained too much jargon to comprehend easily without losing patience. This video format & someone explaining as we go - is SOOO SOO much better! Please keep doing this. There's a lot of DSA content on UA-cam but almost no content such as this video. This could also be NeetCode's near future niche.
Great video. I loved the visuals and 10-20 minutes is the sweet spot for optimal length imo
Visuals are great. Lengthy videos are also nice, I'm not here for dopamine, I'm here for education. Keep up the good work man! 🙂
One interesting thing about this is OPFS. I've never actually used it before.
Can't wait to study this, but shouldn't you be posting this on the main channel?
My guess is: His main account probably maxed subscribers in cs job market, so opening another channel would bring more exposure and double income.
Graphics make all the complex concepts you cover super approachable. More 20-minute videos please!
This was excellent. You covered all the important points concisely and only cut out details that can be found in the newsletter.
I would suggest a TLDR of some kind at the start.
This video hit me at the perfect time. That shared web worker strategy is a surprise to me. Might save some bugs in my own code!
I usually dont comment on the videos, but this made me comment because of your effort you put in the video creating it! Amazing video dude! I really liked the flow of the video and everything else.
appreciate it 🙏🙏
I really liked Richard Hipp's lecture on his SQLite, cleared my mind on a couple things.
Everything is good 📈😊, honestly It makes me stick to the video to the end.
You should add the visuals like these to persuade the System design and very informative video BTW,
I hope like me everyone expect this like understandable and knowledgeable video from you in the future .
Thank you.
Naive Question: does Notion solve for race between tabs?
I.e. let’s say you have two tabs open on the same task but they are in two different states.
one is newer - let’s say 2 paragraphs in the task description
One with staler data.
Focus is on the tab with the new data, and now you move to the old tab, add one char to your stale description and navigate to a different task.
Will you lose your paragraphs ? (I don’t use notion… but intrigued)
Bit of a correction here: web workers do not allow parallel actions, only concurrent actions. The distinction between these terms is that parallel means actions are being performed at precisely the same time, such as on multiple cores, while concurrent means that multiple tasks may be in progress at the same time, but at any given moment, only a single action is taking place. Basically, web workers can do stuff while other threads are blocked/waiting but no two JavaScript threads will ever be executing instructions at precisely the same time.
"Latency is bad but you know what is worse..." I was totally expecting a sponsor plug there 😅
Nice thumbnail. The dark and faded blue looks really good against the black background, very easy to read.
Clean explanation. Need more high quality content like this. Good job my man🎉
Loved the visuals loved the explanation and drawings.
For the video, if anything I would love more depth. I feel that's what's mainly missing in all of UA-cam. Totally in for much longer videos or series where you fully cover a concept in high level and actual code/tech level. Hope to see that!
For the newsletter I want to read it, but wonder can we only read it in the emails ? nowhere else? Just like to read in light mode or reading mode of some browsers if possible.
Liked the diagram pictures used & the length of the video was nice, I learned that this was possible from this video & knowing the pitfalls like the OPFS causing data corruption will save a lot of headaches I imagine.
I loved all the visuals and the explanations. I would prefer if these videos were 15 to 20 mins and not longer. The blog post can provide additional details.
Also, this was one the best explanations I have seen to date.
This is so good keep doing it please ur the only person i can listen to talk
great content i loved it but by the way at 11:35 i wanna say that basically threads share the same memory but processes don't , this is why processes they have to communicate through channels
ah good catch, in this case i believe while web workers run in a separate thread, from a programming perspective to me it still feels like they communicate with the main js thread the way different processes would communicate with each other.
this is such a subtle point tho so someone please correct me if im wrong
Dunno about cutting latency, but they did a lot if shite to make notion slow right after initial release. I remember how at first I was pretty happy how it was snappy as hell, but when our teams started to fill more documents it become slower. And then they've released a new update with new features and everything turned into a turtle - everything was slow as hell. Including simple selection and opening context menu.
There is so much entry level stuff posted for tech in general its hard to find good sources for Mid + level development.
This is huge.
Awesome !!! The details, the code and yes the pictures - very very useful ... I have also signed up for your newsletter. Your leetcode videos are gold standard, and so was this.
I rarely put comments on videos. But have to say, this is good. Length is good. Content is non-generic. Learnt something that might come handy someday
The visuals were awesome, I made sure to subscribe to the newsletter!
Very cool video. Liked those hand-on explanation. The way you actually showed application tab, it's memory usage and the js file with log statements. Pls continue your good work. Looking forward to learn more from you!
Loved your way of explaining up the things, 19 minutes totaly worth to watch
Very refreshing video, between leetcode problem solving videos.
looking forward to see more system design lecture , Thank you.
Awsome video, awsome topic as well. I wanted to learn more about using sqlite for caching, particularly now with WASM tools like the sqlite-vec extension for vector search!! This was great!
Visuals were great!
Love the thorough run through and easy explanation!
Love the vid! Visuals help a lot, thanks for taking the time to draw them!
Great video you should keep the images and cover more details on each topic.
absolutely love the sys design videos, pls do more
Great job, man! I will check out your newsletter. Thanks!
Yes! Visuals are fantastic, especially for breaking down abstract concepts. Love this initiative.
Great video as usual, i love your explanation and diagrams! Keep up the good work, THANKS
Visuals are key to understanding any topic much faster and better. So, add more if necessary.
great video! love the visuals, length, and overall format 👍
sqlite is possibly the best piece of software written in the 21th century
Love seeing these system design videos, keep it up (but also keep up leetcode questions, I'm still unemployed)
Love stuff like this. Signed up for the newsletter.
20 min, visual and mixing several topics in your cocktail shaker would be great.
I like the coding, it really adds to the typical system design videos.
Great deep dive. I appreciate the visuals.
Cool video! I think the shared worker is called "service worker"?
BTW, you forgot to link the newsletter in the description
Do more of these videos plz!! Joined your newsletter!
Please do more videos like this! Please don't leave daily Leetcode problems too =] These 2x are "must have" to interview.
Love the video. Maybe I'm in the minority, but i'd love if you could "test" a video where there aren't as many edits stitched together if that makes sense. ie when you make a statement, let the clip run into the next section and leave the pauses. It'll let the idea settle and sink easier, although the con here is that you'll get longer videos. Just a thought.
I have a software interview tomorrow. Watching this to see if I can learn some system design lingo to trick them into thinking I know stuff.
the visuals are good. obviously could always be better but i dont have further feedback on how. for the vid length could definitely cut it a bit.
Thanks as always
This was extremely awesome and kept my attention intact and curiosity raised, drawing and images way of explanation is better (atleast for e) than rambling while showing up bunch of text. Thankyou so much.
Btw might be a naive question, how do you get to know about news as such ? what are your sources?
I love the video and the explanation and the detail and everything. You genuinely want your viewers to learn these things and it shows. Thanks
Love the content! Keep the visuals coming. they make things much easier to understand.
Awesome awesome video! Thank you for taking the time to draw and give a great explanation of their system, I found it really helped and connected all the pieces together! You are the GOAT. I love these types of videos. Keep up the great work!
The visual is amazing, keep doing it 🔥
Pictures and diagrams are a requirement. Rather than creating your own you can use some icon library and grab what you need. Boring standards is better than flashy when learning, it's more important that everyone is on the same page.
There is a key-value database like Firestore built into the browser (IndexedDB) without any limits. I guess Notion team's wants to write SQL
Loved the pictures. Explaination was amazing as well. And yup 20 minutes is ideal. Thanks for making this newsletter.
I love the video . I love the practical aspect. Kudos to you ....
need some more videos like this my man!!!!!! keep up the good work!
What a creative solution by Notion and creative product aswell
Dude do more system design. This was perfect
Superb Content Bro!
Expecting more and more such videos and more images ,graphics and code samples and less Text.
I felt 20 minute is less , 30 minutes should be fine.
Great video man! If you do get time make more videos on these concepts, atleast for things in you newsletter that you fell are video worthy!
Again, great video man!
Great video, good length and details enough to be awesome watch and educational keep it up
Great and helpful video. More system design videos please!
loved the video, it's perfect. Concise and letting me know the things possible as opposed to exactly how to do it.
Keep the style! This works really well and I understood everything. Thank you
not a single minute feels boring this is how one should explain System architecture 🔥
Loved the video, I like how you explained system design
Often with bytebytego (which I do like) I do feel a little stumped at times
Also if I understand correctly we are literally having a database on the client side?!? That seems wild, but why didn't they just use indexedDB
awesome explanation and liked the way you draw too.
This is awesome! I like the length of your video, your explanation and thought are clear as always! Please keep making these!
learnt something within 5 mins of the video. Quality content, thank you !
Honestly, Everything about your content, the way you share is just awesome for understanding. Looking forward for even more of these content.
That's some premium quality content here. Loved that
Also localstorage has a 5MiB limit
I'd love to hear even more details. wouldnt mind if u go towards 40 min long
I really like this video! I like the visuals, the length is perfect.
Great video man!!! Keep up the good work!!!
I really enjoy the explanation...
Great explanation, insightful ❤
Amazing video! Keep making more of these
im so tired of programming man i just wanna sit and read a book man its so sad, I wanna get a ton of money in lottary or some unknown billioonaire uncle so I can just enjoy my life instead of focusing everything about practicing every day after work just to get freaking MONEY
Excellent video, looking forward to have more like this. Really need some practical system design knowledge. Thanks for your videos as always
Hi nav, I really enjoied a lot your video. I'm mind of tech lead in the places I work. We are doing aí stuff.
And it's very good to me to see how others experts are solving their problems
Loved it, pictures conveyed a lot better👍
thank you so much, looking forward
Keep doing these videos, i learned a lot from this. Also this just made me realize than as a self taught sometimes you can invent your own solutions to overcome programming problems like workarounds same as what notion did with race requests etc
sick video. with a hands on explanation it was easy for a novice like me to understand it. i need moreeee
loved the video with the details , images and everyhting. it was soo clear and eays to understand, lots of knowledge as well!
great explanation, enjoyed the pictures
I actually prefer Informative videos and 'Hour-long-videos' actually doesn't matter to me yk, I'd like if you produce such contents as I really feel your ability to explain is pretty neat.
Oh and also, really nice and informative visuals I really appreciate it.
what prompted Notion team to use SQLite instead of SQL-like storage already available in the browser called indexDB?
Just subscribed to your newsletter, if you open the website from a mobile phone you can't find any place to sign up, i had to write the exact url to get it
I don't think there's a limit to how far neetcode can go again 😓
Just when you think bro has settled and we can have some time to make a meaningful catch-up, he blasts off again.
I'm tired 😩.
This is fire ! Keep more of these coming !
Great video, great explanations, great visuals
i think it's a good idea, but most users that have old phones don't usually pay for their service ... they even can't download the newer versions of the app ! same applies for computers, if you can't spend 800$ for a good PC, there is a higher chance your not paying for anything & you'll end up downloading an older cracked unstable version of the app
if we keep focusing on those users that don't spend money to use some of your services the company will end up spending more & earning less.
many companies sometimes focus on Apple users even when they are only 60% of users because they are more likely to pay for an app than Android users & they represent the 80% of their earnings.
it's just business, but everything comes with a cost like Data Corruption & they will have to find a better way as you explained !