Note taking inside of VS Code

Video Statistics and Information

Video
Captions Word Cloud
Reddit Comments
Captions
all right hi everyone welcome to the visual studio code live stream my name is sanna i'm usually behind the scenes and usually burke is the one that you're interfacing with on camera he couldn't be here today so i will try my best to do my best burke impersonation the entire time i'm hosting let's see how that goes um as you know uh you know the year end of the year is here so i think this is probably our last live stream of the year thank you everyone for joining in every week as we have these we love the community that we've built over the time on youtube let us know what you want to see for the new year what can we do differently about our live streams who else do you want to see us bring on what parts of the editor do you want us to talk about let us know in the comments below um we'll restart on january 13th so just a couple of reminders like we always have make sure you subscribe to us on youtube youtube channel right here make sure you also check us out on tick tock that's where all the cool kids are you'll see a different side to us on there but i assure you it's equally as fun make sure you join the meetup group to continue to know about all the events we're doing on our live stream and you can also check us out on our website where we post uh previous recordings of the live stream and the calendar of what's next to come so without further ado i want to bring on our guests for today jonathan and kevin from dendrin dendron is a note-taking app for developers so welcome jonathan and kevin how are you guys doing today good how are you good yeah so i'm excited to just hear you i've used personally used engine and i think it's a really cool app so i'd love to hear from you guys um feel free to take it away yeah i loved you so thank you sana for the introduction and thrilled to be here today to talk about attention with all of you so what tension is it's a open source local first note-taking tool that we've built with native integration to vs code it's made by developers and for developers and that's one of the reasons why we built it inside of vs code vs code swoos world's most popular ide and it's already where we spent most of our time and as an ide what vs code allows us to do is look up organize and reference code from small code bases to really large ones and that's really how we think about dendrine so less is a note-taking tool but more as an ide but one for general knowledge now we'll explain what that means in a bit but first a little intro so i'm kevin i'm the founder of dendron so my background is as a software engineer i worked at aws for around five years before i left to do some consulting and then i started working on dungeon full-time in 2019 we launched in the summer of that year uh went into y combinator as well that same year and we've been building the product and growing ever since now my cto jonathan he is actually calling in from beijing but spiritually he's a lot closer to edmond than i am and i'll let him do his own introduction hi everyone my name is jonathan yarn uh thanks a lot for allowing us to be on the stream today um as kevin mentioned i'm actually a microsoft alumni i worked at microsoft in redmond for about six years uh i then moved to hong kong where i was the executive director of technology at goldman sachs uh and recently i've just joined on to dendron as the cto so the reason why me and jonathan both left 48 jobs to work on dungeon was because we found it difficult to work with information in our pio goals so as devs were people working in technology things changed all the time i know that i had a hard time keeping up with everything in aws and whether you're working back-end front-end or anywhere around the field of technology it is a lot and constantly a moving target every time you learn something it's already outdated and there's something cooler on hacker hakunis so with all this information it's impossible to keep in your head but it's also hard to externalize because then you can't find it again later and so essentially everything was just overwhelming and fundamentally the challenge is that we don't have tools for humans to manage knowledge at scale i know that when i say this claim most people will think of this and given our audience you'll probably think of this but the thing is that these are fundamentally different problems because when you have the index of all human knowledge and you're looking for a good result among billions and billions of possible well-structured well-linked pieces of information that's different than for example if you're searching through your onenote or your google drive and so this is where there's a gap when you're dealing with knowledge bases that are much smaller than the internet so your personal knowledge bases your institutional knowledge basis and this is the gap that we are aiming to fill with dendrite so our mission is to provide a tool to help humans organize reference and work with any amount of information now jonathan's going to explain how we do that thanks kevin so there's three key aspects to any information management system there's the input the process of getting data in retrieval process of getting data out and then maintenance which is as your knowledge base grows over time making sure that it still is organized and working for you so we test that most notating tools focus on the first thing the input they're highly optimized for you to be able to get your information quickly in but for most tools once you get past a certain threshold once your knowledge base grows past a certain size it becomes really hard to get that information back out so dendrin tries to change the paradigm by focusing on all three aspects and to do that we actually looked to software for inspiration so over the past many decades software tools um in the paradigms have become very sophisticated for managing really large code bases so the code bases for some of the most complex products in the world span millions of lines of code and we've developed all these paradigms such as adding structure modularity having world-class tools to work with that structure concepts like refactoring we thought why can't we take some of those concepts and apply it to managing information as well so that's really what we're trying to do with dendrin um so having said that kevin why don't you go ahead and walk us through some of the features of dendrine yeah uh thank you jonathan and something that you might have noticed during this talk is we've been presenting inside of vs code which you see right now this is a dangerous note and for the slides we're using a plug-in called gavil that and which is both a vs code extension as well as a markdown extension well this isn't necessarily a tension feature it does show you the power you get from building on top of these two foundations so in terms of getting to the actual demo let's try one thing i want to highlight from the beginning is that attention is just plain text marked down and this is awesome because um say you don't have access to an ide or other tooling because this is plain text you can open it in your existing tools like them for example in addition you can use your favorite version control to manage it we use them you can get file history and you can also access more powerful features like git blame for individual line annotations them um dungeon marked down and specifically we support github flavor markdown which means that anything you write on github you can also write indentron now in addition we support extensions to that so we support diagrams we also support math so you can write equations and we have something unique to them which we call node references so this is a syntax and what node references let you do is they let you embed notes into other notes so you can embed either a full note uh spec a specific section to your note or even arbitrary text within a note now jonathan is going to talk to you about how we find and organize notes in dungeon thanks kevin so already built into vs code there's some powerful uh commands to help you search information you have control p to look across file names ctrl f control shift f to search for raw text so with dendrite we introduce another tool to help you do that and we call it lookup and we invoke it with command l control l depending on your platform and with dendrine we organize our notes in the hierarchies and we use this lookup tool to build upon some of those structures and allow you to quickly traverse those hierarchies to find your notes so kevin's showing right now he's brought up lookup and let me go ahead and look up my python node and so notice that we use a dot delimited hierarchy and this means that we can represent both the folder and the note in plain text files we also have a custom tree view on the side which can let you see the logical view of the hierarchies all right so lookups not just for finding nodes we actually build it in such that you can create notes directly from lookup to so let's say i'm trying to record some new recipes that i've just been trying out so i bring up look up and if i type recipes and i can immediately create that note so look what makes it really easy to work with hierarchies um so let's bring to a different example that the audience is a little more familiar with we have notes here for programming languages and oftentimes if you're working with many programming languages in your day job uh it's often hard to context switch between them so sometimes for me i find it really hard to exactly remember what a boolean value is in various languages so let me take a look in python and i can look at my python boolean note and i can very quickly get a mapping of which values map to true and false all right but let's say i'm context switching again to a different language with lookup with just one quick query i can look up what a boolean value is in whatever language i'm working on next all right so another concept that dendrin introduces is schemas so schemas make it very efficient to look up data fire hotkeys by adding some additional structure to your high grades and they work pretty much just like how database schemas work so database schemas make sure that your data is consistent and dendrin does the same thing but for your notes so kevin's brought up this schema that we've designed for this language hierarchy and you can see it's just a yaml file and really schemas help with several things they help during note creation so for example let's add notes for a new language um so let's bring up lookup again and we're gonna start learning about this language called pig latin so as he types you can see that there's a book icon in lookup and this indicates that there's a schema match so he's created the pic latin note and you can see that there's already a pre-filled in template and that's another thing that schemes allow you to do they actually allow you to add templates based on schema matches so you can define structure for your notes automatically all right so let's take it one step farther let's go ahead and record what boolean represents so very quickly we can see another schema match for the boolean node with a different template applied all right okay so i've talked about schemas i've talked about lookup let's talk about how we allow you to navigate between notes with entran all right so kevin's going to bring up this lynx note and dendrin supports wikilinks for some folks who may be unaware of what wikileaks are you use this double bracket syntax and this lets you link from one note to another and if you hover over it and you hit ctrl enter you can then navigate to that note in the link now links are very powerful as you develop more and more knowledge or as you add more and more to your to your code through pkm um it's important to keep track of the various relationships between your ideas and your notes so we have several ways that allow you to do this so kevin's going to bring up the backlinks panel and in this view what you can see is every single note in your workspace that has a current link to the current note furthermore we also uh sorry sorry okay um sorry okay so kevin's brought up uh the graph view um but let me go ahead and uh talk about refactoring first okay sorry about that so another concept that we do uh that we introduced with dendrin is the concept of refactoring so i mentioned there's three key aspects to note taking tools and the third one is about maintenance so as codebases grow over time we have very powerful tooling within ides to refactor your your code so we thought why can't we apply those same concepts to your knowledge base as well so right now kevin is going to rename this link and because we're in escode we can take advantage of the semantics of having renamed symbols so just like you rename symbol with your code um you can also use f2 to rename a node and what happens here is that all the links that have linked to that note will automatically get updated to make sure that they don't get broken so we can refactor uh notes we can remember headers and we can also even take it one step further we can refactor an entire hierarchy and what we can do is just with one command is we can refactor uh let's say our python hierarchy to a monty hierarchy and this will update all the notes as well as update all the links that have been pointing to that so just as case study recently we've had our denture in wiki um where we were trying to make a lot of changes to it to update it and to make it better and we did a refactoring of it and it spanned over 300 files and over 2000 lines of information and because we had this refactor capability we're able to do it in just a matter of hours but without it it honestly would have probably taken weeks and we probably would have ended up with more broken links all right uh so with that kevin why don't you go ahead and talk about how you can modularize your information with engine yeah thank you jonathan so so far all the features we've been talking about have been about individual notes and so waltz um lets you well first vaults walk you up one ladder up that abstraction chain and let you work with collections of nodes so a vault is just a folder it's usually backed by git and they're kind of like modules in programming that lets you encapsulate common information into your reusable attraction that you can mix and match and use in different contexts now one of those contexts in dungeon is asset access control so for example right now this is done in the demo vault and this demo vault is available publicly on github if we can clone it and follow along as well but what i can also do is i can add a new vault call it secret and this vault will only live on my computer now this is a pretty common pattern for users they keep their personal notes on dropbox let's say and then they have their work notes on their computer but they use dendrin to manage both another use case for vaults is sharing your notes so anything any valid fault you can publish to github and then you can pull down using the git url we have some preset ones just for people to try out so i'm just going to pull down the dendrine wiki and so what this is is if you go to wiki.dension.so this is for public-facing user guide um fun fact about this is you can also use lookup on the wiki and it works kind of just like it does in vs code and when we add the vs code vault we end up pulling down all the notes from this public website so we can now access it locally so also one way of sharing your notes and the other way which we've just shown is publishing so anything in your workspace you can publish as a static site uh which you can host anywhere github and netfly are some of the most popular options the cool thing is once you publish your notes you can instantly share a link even to people that aren't using dungeon so say for example i don't know you have a web developer friend so it's looking for a new job well you can look up the dungeon jobs page you can generate a link to it and you can share with them that link and tell them about this cool note-taking tool show up that you heard about um in addition if it's published on github every page has an edit on github button so you can edit it using one click now the last thing i want to highlight brings us back to es code um i'm switching now to the attention code base and for the dungeon code base we actually have a dungeon workspace inside the docs folder what this means is this dungeon workspace it has access to the tension user guide and the dungeon developer docs so if you own the dension code base you're good to go without any further information the way that we've organized the various packages is every package has a hierarchy and what you'll notice is that you can link inside your denture notes to your code you can also do the opposite and this is really useful for example for when you're documenting code and sometimes doc strings just aren't enough for example you want to explain more of the life cycle um here i have a note back to the denogen uh vault and in here i have a rich diagram explaining how things work all right that's all for the demo i'm going to switch it back to jonathan for some closing remarks thanks kevin so hopefully now you've gotten a preview of some of our features you can get an idea of what we're trying to achieve with dendrin so what we're trying to do really is we're trying to help developers with the problem of information overload and we're trying to tackle this problem by adding structure and organization as well as a lot of powerful tooling on top of that and we want to make it such that you can manage your knowledge just like you're used to managing your code so as we think about how we're building out dendrin as a private product we're taking a bottoms-up approach to do it so we're trying to start by making a note-taking tool that developers and individuals really enjoy and that's really why we're integrating envious code which is to meet you where you already are so some stats kevin over there has actually amassed a 30 000 personal note collection that he has in dendrin and we have a various number of users in our community as well who have over 10 000 notes in their danger and workspace and we're trying to start with that foundation and then build upon it to build collaborative feature set to make dendrite and work great for teams things like bittersync and having access control and we're already using dendrite internally for our team our team workspace is already close to about 20 000 notes and we really drive everything out of this toolset so it's not just for our company documentation but also our user guide our developer docs our blog and also our company handbook so kevin i think did you want to share something from the company handbook with everyone yeah thanks for asking jonathan so part of the company handbook we have a mission statement which has been our north star since we started it as a company now this was said by vandenberg bush who is an early pioneer in this space of information science and essentially the gist of the code is there's too much information we don't have the tools to probably uh to pop poorly work with it now mind the date he said this in 1945. so 70 years ago there was too much information and we didn't have adequate tooling and today i would argue that the tooling really hasn't changed but the problem has gotten many orders of magnitude worse and this is essentially what we're trying to do with dungeon provide a tool that can give humans command over the inherited knowledge of the aegis if anything we have said today sounds interesting we've provided the vs code team with links which you should be able to see as part of the stream this is a getting started guide to uh download dungeon on the vs go to marketplace uh we have a github link where and so please star us submit issues we'll let us know if you found any bugs and finally we have a very vibrant disco channel there are over a thousand dendrologists that love to talk about anything knowledge management feel free to join connect with the community talk with the team ask questions or share funny cat pictures we don't judge all right with that uh we will now take questions all right cool thanks jonathan and kevin uh that definitely beats like the paper notebook that i got going it's not hierarchical and won't grow with all the information i'm trying to put in here so we've got a lot of questions from the audience um a couple came from paul watts and ranger code so but they asked a is this free or does this cost money to use and then how does dendrin make money so that they can you know sustain your ongoing development as a company yeah a great question and yes it is free um the client is open source and you can download it and it's available in both vs code and vs codeum the way that we plan on making money is uh john mentioned these team features we were working on we have existing teams that use engine but they find that working with just git is a little hard to do and so they're asking us for a better sync and uh easier usage and so we're actually working on a managed version that teams can use and or business model is really taking a look at players like confluence and um a place in and we actually we want to place them as a knowledge base of choice for technical teams and developers okay yeah i i definitely know a lot of uh uh employees that use confluence for note-taking as well um another question uh that we got from a couple people was um comparing this to other note-taking tools so christian asked what are the advantages of dendrine over obsidian is it just that it's integrated with vs code uh yeah so in addition to integration of vs code it's that the code is open source but also that we focus on structure and refactoring so in obsidian you know you can link your notes into graphs and this works well but you eventually hit a threshold usually at ten thousand notes where you can't find things and dendrin you don't just have to ask but really focus on how do you maintain your notes over time so that as your knowledge base goes you can still find what you need okay um we had mazar say that he was using nvim with markdown files and that this is a game changer so he thinks that's really cool um s also asks how it's different from notion which i know is a popular note-taking tool as well yeah um for notion it's kind of similar so one thing um where different is well you'll never have to wait for your notes to load um they're available right here on your file system otherwise you know we have the similar hierarchy that notion does but um going back to that case study that jonathan mentioned um we were able to completely refactor our hierarchies in dungeon in a matter of hours um changing over 2 000 files or 2000 lines and 300 files if you wanted to do that in notion good luck because nobody does that once you're stuck with something you're kind of done yeah just to read area on that a little bit i think at least for me uh the the thing that really opened my eyes as i was using dendrin was this concept of really like taking advantage of dry like don't repeat yourself having a lot of references throughout but then over time if you don't treat it like you treat references in code for example it's impossible to maintain that and maintain the links to make sure that everything still works over time and so that's a really i think differentiating factor with dendrite and our approach of trying to apply these software paradigms to make it sure that over time as your knowledge base grows and scales that you can still manage and have a hold over everything yeah i definitely have tried to use notion um and try to update lots of notes at once and it feels pretty manual um there was another question from adobe pirate cs that he asked if it's possible to join different markdown files based on a mind map mind map linking hierarchy and export it as a single pdf file i don't know what the use case for that is but in this case he thinks it's a good feature to add um yeah so for that you know we since uh we're on github we encourage anyone with issues to some more submit a feature request uh we look at any and all and we so the nice thing is like even if we don't have time to work on it right now um we you are free to contribute to the yeah you're free to contribute and we have developer docs and everything uh ready to go okay so um all the all the people that are watching if there are feature requests if you use other i guess uh you know note-taking tools that you like the features of that you want to see if dendrine can add the best thing to do is just go to the github issue figure out what the team is thinking figure out their roadmap as well and then join in with the community on github and discord exactly okay cool um i guess there's a couple minutes left um can you tell us more about like the community and like support aspect that uh you know dandruff provides like you mentioned discord so are there a lot of other i guess people that use dendrin and like how how do they share their note-taking style or like how their you know strategies yeah so um on discord we have uh specific channels where people can go to share uh their notes so for example we have tips and tricks schemas multi-vault so various areas of engine people will congregate around those channels and then also on dungeon itself we have a workflow section so for most common workflows like bullet journaling meeting nodes mobile um we cover ways of doing this um our most popular workflow and the one that we got come in from people we call it the amoeba essentially put everything together in one note until it gets too big and then refactor that note into smaller notes and you know basically create structure as you need it instead of forcing everything into your structure okay are there um also someone asked about like tutorials uh or showcases for how to get started with dendrine yes so when you start engine uh we actually start you off with a tutorial that walks you through some of the basics of what we just covered we're actually in the middle of a major revamp too because attention has redo weekly releases so it changes very fast and so we're doing currently doing a recall for tutorial which should go live on friday but this tutorial you can access when you start off in dungeon and also in the tutorial section for uh dungeon wiki all right sounds good so there you go if you want to try out dendrine for yourself be sure to install the extension today go through the tutorial um and if you have questions join the discord join the github um and let us know let the team know what you think um so we'll wrap up now any last thoughts or you know words from your end um just you know thank you so much for having us on um we love being nvs code um we spent most of our time in it so being able to take notes and everything else on top of it just made sense and in terms of you know where we're going pay attention we want to build the ide for general knowledge we're probably one percent of the way there and so we would love to have you know anybody that's listening anybody that's excited about this please like message me email me discord twitter any way that you know any way i can be reached and uh let me know what your ideas are and what you would like to do attention all right cool thank you so much jonathan and kevin and thank you to the audience for watching oh sorry go ahead jonathan oh i was just saying thank you thank you to you and the audience for your time and for having us on awesome cool and think have a happy holidays happy safe you know rest end of the year and we'll see you again in 2022 on the same live stream bye everyone
Info
Channel: Visual Studio Code
Views: 7,803
Rating: undefined out of 5
Keywords: vscode, vs code, visual studio code
Id: dW6m4_O0qvQ
Channel Id: undefined
Length: 30min 43sec (1843 seconds)
Published: Thu Dec 16 2021
Related Videos
Note
Please note that this website is currently a work in progress! Lots of interesting data and statistics to come.