Rodrigo: the limitation with markdown is that markdown is actually flat,
if you go to the RA syntax, trio of markdown is a list of block components. You have like headings, paragraph and you have the root and all, all these blog elements, you don't have nesting,
[00:00:26] Introduction
Andrew: Hello, welcome to Deb Tools fm, this podcast about developer tools and the people who make 'em. I'm Andrew, and this is my co-host Justin.
Justin: Hey everyone, uh, we're really excited to have, uh, Rodrigo Pombo on. Uh, so Rodrigo, uh, you are very well known, uh, for creating Code Hike, uh, which is, uh, a tool that I'm excited to talk about. Uh, it's like, it's probably one of the most interesting like code documentation tools out there right now. But before we dive into that, uh, we'd like to hear a little bit more about you.
So would you like to take a moment to tell our audience a little bit more about yourself?
[00:01:01] Rodrigo Pombo's Background
Rodrigo: Yeah. Hi. So thank you for inviting me first. Nice to be here. Uh, so yeah, I'm Rodrigo Pombo. Most people call me Pombo. Uh, I've been doing software development for the last 16 years. I think I. Uh, I used to have a normal show in Argentina where I'm from until I quit in 2018. Uh, I took some kind of sabbatical time there, spent most of the time exploring, uh, developer tools, open source, mostly around the React ecosystem. Um, well fast, fast forward to now, uh, after all those years of. Exploration and several open source project. Uh, I think I found kind of my niche, uh, which roughly we can say is around UIs for, for technical content. Uh, so yeah, now I spend most of my time working on, on cold hike, as you mentioned, uh, and also doing related work to, to that.
Andrew: Cool.
[00:02:05] Introduction to Code Hike
Andrew: So for our listeners who might not know what Code Hike is, can you explain to them, uh, the type of documentation experiences that you can produce with it?
Rodrigo: Yeah, so, so it, it kind of mutated from, uh, BCO to B one, but right now it's, it's a tool to. To like process, uh, content from Marda and, and let you render it with React in any way you want. And it's especially good for, for technical content and for documentation where it has, uh, a lot of helper for, for code blocks.
And, and you can build any type of, of layout really. We have a few in the documentation that. That you can copy, uh, and use, but, but it has a freedom to do anything you can do with react. You, you, you can render it.
Andrew: Yeah, I think the first time I saw your content was a Scrolly coding demo years and years ago, and it just blew my mind of how like, well, it, it did at communicating what was happening on the page. It has lots of nice animation that come in from the side, it highlights lines, and it's all based on markdown. Um, Justin, you wanna take a question?
Justin: Yeah. Uh, sort of when I first saw it, it, oh, it was my internet running. Um.
Rodrigo: I'm losing you
Andrew: yeah. Justin, you are cutting out a good bit.
Justin: Uh, cool. Gimme a second. Hopefully it stabilizes.
Andrew: Oh
Justin: Oh, boy. Um, yeah, it's okay. It's, it's buffering in the background, so We'll, uh, I'll, I'll try to get the question out and we'll, we'll go through it. Um, so when I first, uh, saw code hike, as you know, like Andrew was saying, it was like the, the thing that stood out to me was mostly is like highlighting line numbers as you sort of went along, like scroll through the example.
[00:03:30] The Evolution of Code Hike
Justin: Um, what sort of like motivated creating that? How did you get to the point where you're like, okay, I need a tool like this. Uh, and like for the initial goals, like what you're trying to accomplish.
Rodrigo: Yeah, so that's how all started. It was actually in, in a blog post I was writing on, I think it was 2017. Um, I. When everyone was using Medium, the, the blogging platform. So I was writing a series of blog posts about, about how to build your own react, right? It, it went like step by step, how to build a mini react from, from scratch.
And I put a lot of effort in the, in the content of those blog posts, but the, the like medium, like. The medium was, was like, felt like very limiting to the, to the way of how, how to present that, that content to, to the user. It feels like I have like some, uh, let me see how, how I can put it easy. Uh, it, it, it feels like you have like, uh.
All the concepts in my head. And when I put it in, in Medium, the Belonging platform, it flattened out all, all the content. And, and I couldn't explain that as, as good as I want. So, uh, it was very frustrating also because the web, it's a very powerful medium. Medium with small m, not big m uh, and, and it was.
I couldn't use it to express it in the way I want. So that took me on a long trip to, to, to finally build my, my own, um, blog, my own blog with just one blog post. It took me a lot of time to build, uh, but now I have the freedom to, to present the, the content the way I, I, I wanted. Well, I, I regrow the, the, the blog posts and also it was at the same time that React, the React team was rewriting React.
So the content was new too. So, uh, I, I took that as an opportunity to build it in a, in a richer way, like in a most more expressive way. And it really. Like it had, it had like a really good reception from like, from everyone. I, I, I saw a lot of people sharing it. Uh, it was like in the, in the front page of Hacker News for, for almost one day.
And, and still now people are still sharing that, that blog post for from six years or so. I think that the, the presentation of the content matter a lot. In the way that like, people received that blog post. It wasn't just the content, but I think mostly it was the presentation. So, yeah, and, and that's like for that blog, I, I used it like the first version of Call Hike.
I mean, it was inside the blog. It wasn't a library then, but yeah, that was like the first version.
Andrew: Yeah, we had Josh come out on, uh, a few episodes ago and he mentioned that like, you don't, you wanna code for the medium you're in. You don't wanna just produce a dead fish when you're on a website where you can produce very rich content experiences and, uh. It is definitely a much richer content experience when, uh, presenting stuff with Code Hike.
You mentioned that, uh, a lot has changed from zero to one and probably a lot has changed in the React ecosystem since you wrote that first demo. So what was the journey like going from zero to to one and what work did it take?
Rodrigo: Well, yeah, so the fir the. I don't know how to call the pre B one. So B zero, uh, was like a set of components of predefined components. Like you have like that scroll coding layout. You have another one with like what kind of tabs, but different, uh, you have like a slideshow, uh, but you can only use that component and.
Maybe style them with CSS and good luck. Like that's, that's all. So with B one, I wanted to not provide any component, any prefin component ~~and, ~~and let like the user build those components, like use whatever component they want. I also provide those component as examples in the in the dots. Kind of what, like Chad cn you know, it's very popular right now to just provide the call and now it's your problem.
Uh, so yeah, so that was the biggest change that is now you can do a lot more stuff with call hype one on, but it's also harder because you have to do it yourself, right? Uh, so that's the trade off and I'm pretty happy with that trade off. Some people aren't, aren't as happy, but maybe because it's early.
And the idea is that the ecosystem provide those components for you. If, if, if you want something that is plug and play and, and you are, have it like that. But, uh, it's, uh, there are some companies that are already using B one and, and they're really happy with the flexibility. So I think it was a, a good, good choice.
[00:09:13] Ad
Justin: I'd like to thank the work OS team for sponsoring this week's episode. If you're a founder, an early stage engineer, you've probably been in that moment where you get your first enterprise customer through the door and they've got this long checklist of features that they need saml, SEIM, audit logs, rback, and you're just like, okay, well there goes r whole backlog.
And that's where Work OS comes in. It gives you a full suite of enterprise features. So single signon directory sync, user management, audit logs, fine grain auth. They even have, their own secure credential storage vault solution. And this is all in a developer first platform. And the product is really good. The SDKs are clean. The APIs are super consistent. The docs are delightful, like example driven. This just makes sense.
Everything fills designed for builders who just want to get work done and focus on their product. So instead of burning weeks, building all these things yourself and while your product languages give work less a try.
That's work os.com. Again, thanks the Work OS team for supporting us.
Um,
[00:10:29] Challenges and Innovations in Markdown
Justin: kind of the interesting thing here is, uh, so Code Hike is a tool for making. Um, markdown content like tech Mark, technical markdown content, uh, have these like very rich presentations and displays. But that means like you have to author the markdown in such a way that you can like find places to hook into.
Um, and. You know, there, there's like, this has been a challenge for a long time. It's like, how do I enrich my markdown to like really show what I'm like wanting to show? And some people will break out into HTML and then, you know, others like Stripe famously created Mark Dock because they felt a markdown just like wasn't enough.
Um, so talk a little bit about your approach is like, how do you. Express the things that code hike, uh, can do in markdown and like what kind of, uh, decisions did you have to make and like additions or, or whatever.
Rodrigo: Yeah. So. Actually that, that was like the, the movement, the movement from visitor to B one in cold hike. Um, I, I spent like a lot of time thinking what was really the problem I was trying to solve and the, the problem I, I found that the limitation with markdown is that markdown is actually like flat, it's.
If you go to the RA syntax, trio of markdown is a list of block components. You have like headings, paragraph code, blogs, quotes, um, I know lists and, and you have the root and all, all these lists of blog elements, you don't have nesting, right? Uh, and that gives you something flat. And when you. When you need to map that flat content to something, uh, to a rich ui, you, you can kind of have a problem with, because that list of element is, doesn't have any structure and you can manipulate it.
Very good. It is not like when you are doing a, a query to a database and you, you get like structured content. Right. And you can manipulate that. Well, not structured content, structured data, data, and you can manipulate that data and render, render it as, as you want. Right? So I, I found that that was the, the problem that I was trying to solve.
So I, we needed like a bit more structure in markdown, to allow the freedom to render it then. Any way so in a structure to get freedom. Uh, so wait, what, what was the question? Forgot? Uh,
Justin: Well, just like how did you get, uh, over the limitations of markdown? So, so I mean, just like, for example, it's like, oh, I want to display a code blog, but I want it to have a highlight in it, and like Markdown doesn't have any opinions about that.
Rodrigo: yeah. So. To work overcome that. I, I, I try to think like the less amount of change to markdown to allow that structure mostly is like, to have like a hierarchy, you know? And when you open a markdown file on, on, for example, on BS code, you get like a little panel with the outline. I don't know if, if it says that you have like an outline and, and that's has a.
Hierarchy, right? Because it, it uses each heading from the mar file to form a tree, like different, heading with different levels and, and you have a tree. So what I try to do is to use that like hinder and like hierarchy in the mar content to structure the content, uh, and then to. Let let the, the anyone use it from, from a React component.
So what what does is to add, uh, little annotations to the headings and to some other places, to, to then, uh, parts that annotate those annotations and, and, and give structure to, to the content. And so when you import it, uh, and react mostly. In React, uh, you can use it, uh, and have structured content.
Andrew: This is a, a much different approach than you would take if like you're just starting out an MDX. Like with MDX, you can create components. So like your first gut instinct might be to be let's just wrap things in components and start adding that structure. But as you said, uh, markdown really doesn't have indentations.
So you get into this place where you're like, interweaving JSX and markdown, and it gets super messy. And I'm, I'm a pretty big fan of this annotation style that seems very light on the actual like. Like impact upon the content.
Rodrigo: Yeah, it's also trying to, to keep, like if you change it too much, all the tooling that already use markdown, it start to break. So. That one, that was also one of the idea to make it minimal. So I don't know if you open a, a mar file that uses code hack annotations in, in GitHub, for example, it's still very readable.
It's, it's not something very strange. Right. Yeah.
Justin: Yeah, I
Rodrigo: it also uses.
Justin: sorry.
Rodrigo: Yeah, no, and, and it also uses like all the tooling in, in VS code, for example, you have the outline and it's really good for, for when you have a, a big file with, with many sections you can like navigate the code with, with that outline or also collapse the headings when you collapse, uh, one heading and you collapse all the section.
And, and that's. Like I use it a lot when I am altering content in in Martin that use code annotation. I use it a lot and it's very useful.
Justin: I like a lot of, uh, in the examples. Uh, so if you're doing like something like code folding, you just have a comment, uh, inside the code block or just like, which would control the code folding. And, uh, I mean it's nice because like even if that renders, that's fine. It's just a comment, you know, so somebody copied the raw.
Code and like paste it in their code base or whatever, the comment's not gonna break the code. So it it like, it's a nice, it's a nice approach and it reminds me, um, in some ways of like some of the stuff that, uh, Shey two slash does, which I think you actually use that under the hood for TypeScript, right.
Andrew: Uh, you cut out a bit in the last
Rodrigo: Yeah, you good at
Justin: ~~oh, yeah. Yeah. Uh, uh, so you use like, t uh, you're in some places you're using like, uh, uh, ~~cheeky two slash Right. Uh, the library that, um, kinda lets you do type annotations and
stuff.
Rodrigo: No, no. We, we, we use similar, something similar. We, we like the same features, but, but it's not, you could choose, yeah.
Justin: Gotcha.
Andrew: let's, let's dive into that a little bit because, uh, you created your whole own, uh, syntax highlighting, uh, library. So why did you do that? And like, why didn't you just choose one of the off the shelf ones like Shey.
Rodrigo: Yeah. Well, that it's actually like shaky, uh, and lighter, which is the, the, the cold highlighting library that, that I use for cold hike. I. They are both like a layer above the, the VS code, syntax highlighter. So it's not a super big layer. Like it's, it's small. It's a small library and yeah. Yeah. I needed something custom because of the way, uh, I use annotations inside code blocks, which are comments, so I need to.
Like process those, those comments at the syntax highlighting time. So yeah, that, that was the reason. And, and it's, and it's really good how, uh, shaky, especially how, uh, Anthony Fu, which is, uh, the maintainer of shaky now, uh, he's very good at open source. So, uh, most of the improvements to chicken to chicken, they are like separate packages.
And so we can benefit for, for, from that too. And that's all because of how, how Anthony is so good at doing open source. It's like a machine. I, I don't know how to, how he does it.
Andrew: Yeah, there are those few people in the community that are just like powerhouses. And it's like, how, how, how do you do it? Uh, with a lot of help. That's the answer. Um, so an interesting thing around cheeky or around your coat, hier, lighter, brighter, is it, or lighter.
Rodrigo: Lighter.
[00:18:56] React Server Components and Code Hike
Andrew: Lighter, uh, is it integrates with React server components and, uh, code Hike as a whole is very server components focused.
And from what I saw from the outside, it felt like a lot of 1.0 was like, oh no React server ca components came out. How does this change how we look at this problem? So how have you used React server components throughout these projects to make it easier?
Rodrigo: Yeah, it was actually like one of the reason to, to do the B one because there, there were a lot of features that if I wanted to implement it without React server components, I would have to do it in. In GH plugins or remark plugins, which are plugins that run at, at build time, and they are part of the markdown pipeline.
And I don't, I don't want to get too specific, but now with, with React server component, I can leave that to the user because, uh, when you use code, how you, you only like. You use any React component you want to, to render the content. And that can also be a, a server component. So a big one is syntax highlighting, like you can do whatever you want before or after syntax highlighting, uh, before B one you, you need like to add configuration to the remark plugin that does the highlighting.
And it was kind of. Limiting the, the amount of things you can do, but now you can do whatever you want because it's your react component. Uh, I provide some examples, like one of them is, is something similar to shaky slash, which is adding some type script information to type script codebooks. But yeah, there are, there are a lot of use case, uh. You can take advantage of? Of React server components For content websites specifically?
Andrew: I built out my own like storybook replacement and I found like almost every turn it's like, wow, this is easier and less intensive. Markdown being a big one of them, like before React server components, markdown and react components was a whole lot of not fun just 'cause it's like I have a string of markdown, how do I render that on the client?
Then you get into huge libraries with lots of trade-offs. But when you like kind of pair that back and make it a server components thing, it's like, wow, I can actually throw out all those libraries and start think of thinking of things in primitives and like the libraries that those libraries used and like suddenly the world opens up.
Rodrigo: Yeah. Yeah. Gives you a lot more flexibility. And it's also. It's, it was kind of when, when they lounge, when React server components is, it has this server right in, in the React server component that people are sometimes confused that you can also use them at build time. So it's, it's not that you need a server and this is, that's, that's great for content website.
For static website because we are using. You're using React to do things that otherwise you will have to know how to write a remark, plugin, or a re high plugin, and it's just for the developer experience, just much, much better.
Justin: I think that's some, that's still a big confusion in the React community is like server components. Yes, there's a server, but the server could be the build server and it doesn't actually mean that you need to be running a server all the time. Um. So I, I want to talk a little bit about, uh, a post that you had written, uh, semi recently, uh, the Curse of Markdown.
Um, and just sort of like, maybe you can just sort of reframe, uh, the, the story that you're telling here. 'cause I, I think it's really fascinating. Um, yeah. Do you wanna tell us about the cursive markdown?
Rodrigo: Yeah. Yeah. So. Yeah, that, that's about,
let, lemme start like this. So, you know when, when you have a new technology or a, a new medium, you usually have like three phases. The first phase is when, when you, people copy things from before, from old media or old technologies. Uh, like for example, when. The first year of tv it was just radio shows, or the first car was a horse car without the horse.
I don't know. Uh, so that's like the comorphic phase in the right, that where you're coping things from, from, from the past. Then you have like an exploration phase where. Where people are, start exploring new ways of, of doing things, new formats. And most of them fail, but some, some of, of these format like, uh, stick and you have like the, the last phase where, where you have like more like format more, more, more native to the, to the new medium.
Right? Like taking advantage of, of this. New like tools or, or medium or, and uh, like, well, we, we talking before, like the content websites are, most content websites are like in the first phase, right? It's kind of the same as you open any content website. It is mostly like, like a book or a magazine, and I blame Mark for that.
That's what I call it, the course of markdown, because Mardo is so good that people don't, don't want to leave it and do different things. So the trade off between the cost of doing something and the benefits of, of doing it with Mar, since the cost is so slow because it has so good tooling and it's so simple to use.
Uh, we, we stayed in the, in the safe place of, of the, this comorphic phase where, where we copy all, all media and, and what this, this takes to the, to what I talked before about the limits of markdown and, and what can we do to, to make it more, more like us usable for. For building like richer, uh, presentations, presentation of content.
So yeah. That, that's what I call the, the cards like that. Martin is so good that, that it, it isn't letting us explore new ways of doing, doing things.
Justin: I think going back to, again, looping back to conversation earlier, um, part of it is the expressivity, uh, that. Sort of missing out. So, uh, markdown is famously not standard. There's like GitHub flavored markdown and there's like a bunch of other like, kind of types of markdown. Of course, now we have MDX components in markdown.
So, uh, I, I wanted to just to talk briefly about your thoughts on, um, like. Markdown standards and portability. So it's like as you're adding new components to code hike, that might require some extra, you know, just like, oh, you have to add this after the language, in the code fence. Or you have to add this comment, or you need to add this, like, special, uh, bang, bang.
Or, you know, like whatever it may be. It's like, how do you sort of like. Uh, work through the trade off of like extra syntex to get to this like richness that you ultimately want.
Rodrigo: Yeah. So that's, that's a, like a real problem or even a real reason for, for not using cold hack, uh, because you are using like this non-standard orientation. Well, nothing is standard right now, but, um, portability is, is one of the reason that why Marham is so good. Um, that's why I. I mentioned, I tried that my priority was to add the minimal, uh, changes to margan or minimal annotations, uh, to achieve, uh, what, what I wanted, and also to make them easier, easy to search and replace in, in case needed.
And also don't break any tooling that already use marm. So it's, it's not ideal, but. We, we took some, some measurements to, to, to avoid problems, but yeah. And yeah, Marlon is so popular that, yeah, it has so many flavors that it's just part of it.
Andrew: it. must
be hard.
Rodrigo: I consider that using a different extension too, but that will mean a lot of work too.
Make tooling work too. So we are here.
Justin: Yeah, totally. I mean, I think this landed out in a good place though, right? You've, you've made some really good trade-offs. Um, and, you know, this is just, this is just a part of the story. So it's like, you know, if you were to go down the Mark Dock Road and you're like, ah, I'm gonna make a new, you know. Markup language, then you have to like convince everyone that they should use it. And then you have to write all the tools and the LSP and all the other stuff and do all the marketing and the mind share. And it's like you just like wanna make good rich document experiences, not like boil the ocean. So.
Rodrigo: Yeah. True.
Andrew: It must be hard to walk this line in some cases though, 'cause it's probably very tempting sometimes to be like, oh, I want this experience and I'm kind of like trapped with exclamation points and comments. Has there ever been a time where you've wanted to go that over that line but had to pull yourself back?
Rodrigo: Uh, at first, like before, like I took a very long time to before B one, um, to define what, what I really wanted. So I kind of already know all the things I want there. There are some things that I haven't added yet. But I have, like, I, I know how to add them because I, I already planned them. Uh, so there, there isn't like, like now it's, it's not that I think, oh, I, I want to add this stuff.
Like, I try like a lot of different syntaxes, uh, a lot of ways, and I, I'm, I'm really hap, well, not really happy. But from all the options, this one is the one that makes me happier, and, and it's already has all the features that I need.
[00:30:06] Sustainability and Funding of Open Source Projects
Andrew: So on the road to 1.0, uh, during the V zero days, you had a pretty unique way to fund the project. Uh, on the website you had a bunch of examples with all your, uh, all your code height code, but some of them were locked behind, like support tiers. So can you explain that methodology to us and how it went?
Rodrigo: Yeah, that was like, I was experimenting, like all the open source project, trying to find a way to, to make it sustainable. Um, and I tried that like mostly to, to bring attention to people that, hey, this project needs, uh, sponsors because. I, I also leave it like, if you open the dev tools, you can like unlock the, the, the example from the dev tools and also the, the examples were open source too.
So it wasn't, uh, like a really a real paywall. But it was good to bring like attention to people that, Hey, um. Maybe you can sponsor this thing and, and also like give some credit, like each example has like five people that sponsor the, the exam, the project. And I use it to unlock that example. And it worked.
But I also realized that you don't, you don't make a project sustainable with just, uh, people sponsoring it. You need like companies, uh, and. Like bigger, bigger sponsorships because if it's just people sponsoring with $10 each, you need a lot of people. Uh, so yeah. But yeah, it was fun. I, I also got one issue in GitHub accusing me of, of.
Of killing people or something like that. Because say every time you, you put, uh, you hide an example, you are taking time from people and it feel some, all the time that people spend you kill. Like I don't, uh, yeah, people are very entitled. Some, sometimes.
Justin: yeah, for sure. Uh, that's the unfortunate thing about open source is that I think people get so used to having something free when you, like, dare say, oh wait, I need to make a, a living. And I spend a lot of time on this and I like working on. It and I would like to keep working on it. Please help me.
They're just like, no.
Rodrigo: Yeah. People, I, I, I don't care about people get, uh, angry with, with that type of approach. I, I saw that there, there are a couple more projects now doing that too. And I saw in Twitter, like people complaining about that and it's so frustrating.
Justin: So, how's the transition to the new founding model? Uh, so you've got like corporate sponsors now. Is that, is that going well? Do you feel like the project's more sustainable?
Rodrigo: Yeah, I, I, right now I have only one corporate sponsor just to have more, but now I, I'm focusing more on since, since I think the project is in a good state now, uh, I'm focusing more on, on working with companies, um, to help them adopt cold hike. And since I'm the leading expert in. Can charge, uh, good money for that.
So I'm taking that approach now and it's also very useful for me to, like, for dog fooding, like to using the library. And so far it's like I didn't have to make too much changes to, to use it. So that's why I think it's in good state. I still have to improve like the, the dogs like. Always the dogs and, and maybe some more, uh, exposure or, or marketing or go to conferences and all that part of, uh, project that also takes time.
Justin: You muted Andrew. Sorry.
Andrew: Every time I mute myself, I do that. Um, so in creating code hike, you've created a whole. Bunch of components of varying complexity. I was flipping through the docs and there's so many that like, speak to me like the trans pile code block. Amazing. You write TypeScript, it shows TypeScript and JavaScript.
Super cool. Uh, of the components you've created so far, which has been your favorite and which one's been the hardest to create?
Rodrigo: Good question. Um. One of my favorites is, is it's kind of small and a small thing is, uh, one that falls, uh, in line code, like I use it for, specifically for tailing classes. You know, when you have a cold sample with, uh, a very long tailing class. So I use that with a regular expression and annotation with a regular expression, and it's an annotation that falls.
That regular expression into like three dots, and when you click it, it expands, but it makes the, the code blocks match, like cleaner. Um, well also tool tips, like I think tool tips are so good that, uh, providing information on, on demand, um, and we call how you, you can put them anywhere. You can put it in the text or you can put it in the code and you can put code inside the tooltip.
So. It's, uh, really useful. And then there's some components that compare, like two things. Like it may be cold and cold. Like for example, I know you have a JavaScript and tight script and you want to match things, and, and when you hover one side, uh, it shows you like, it highlights the, the, the other side that, that correspond with what you're hovering.
That's good. Not, not only call, um, in calling in both sides, but call and the demo in the other side. It's, uh, it's very useful too. And, and I think it's, it helps a lot with very complex things that when you're trying to explain complex thing and, and having it like the option to like, interact and, and show you the, the mapping between the, the two sides is very useful. Which one is the hardest? Uh, I don't know.
Andrew: The whole thing.
Rodrigo: Maybe, uh, we used to have in, in before B one. Um. Some code blocks that also run like the, like the demo with using something like, uh, web containers or, or sand pack, which is another thing that they can run, uh, things in the browser. And that was hard because of the integration mostly with sandag or uh, web containers.
And, but I, I don't even have an example now with B one something I, I, I'm missing, but it's also because it's very like specific to a particular like thing you are doing. So it's hard to put genetic examples.
Justin: So it sounds like, uh, code hike is pretty stable. You've kind of got like a lot of the things that you wanted to do with it done. You're sort of working with companies now to help integrate it. Uh, but it, it sort of begs the question as like, I'm, I'm sure you still have like a list of things that you really, really want to do and like, what does that, what does that look like for you?
What does the future of code hike look like?
Rodrigo: Well, it's, it's mostly around cold ha. Not really in cold ha. There are a few things that I still want to add to cold to, sorry, to cold hike. Um, but yeah, there, there are small things, but I really want to work on, on, on showing people like the power of cold hike. Uh, so that means building like examples or working with companies to, to help them.
Build the things. And so most of my to-do list is in, in that, uh, part of the, of the, but also there's tooling that I, I would love to do because with now that you have like structure markdown, you, you can have like schemas too, right? So you can use a subtle schema and define the. The, the shape of the content.
And when you have like something, um, that isn't the shape you want, you can throw one error, but you could also use that schema for better, for better out authoring experience. Uh, right now, as I say, I use the outline of VS. Code a lot to navigate. But if I, if I already know the schema of the content. It could be much easier to, to navigate and to write the content and to edit it, but I'm realistic.
I know that won't happen, uh, in the near future, but that, that is something that I, I would love to, to,
have.
Andrew: Uh, you, so you said you've been working with companies. Is there any company that shipped like a very code hike enhanced documentation experience yet?
Rodrigo: Um, I know the first one, I, I didn't work with them, but the, the first adopter of everyone was, uh, Twilio. Um, they, they did some cool stuff, uh, I I saw recently. I. Also, uh, Matt, Matt,
uh, he's, uh, releasing a, an AI course and, and, and he's using the, a version of this chronic calling that is really nice. And currently I'm working with Solana too. Uh, I think this week we released the, the API reference with some, some. School interactions ~~and what else? ~~
Andrew: ~~Yeah. ~~
Rodrigo: ~~Well, there are more, ~~
~~but ~~
Andrew: Yeah. Those are some great examples.
[00:40:10] Future of Content Authoring
Andrew: Uh, so wrapping up here, we always like to ask a future facing question, and for you it's what do you think the future of content authoring is? We got a whole bunch of markdown. Uh, it kind of took the world by storm, I'd say in the last like 10 to 15 years. Do you think that's the format of the future or will we see something new come about?
Rodrigo: Well now with all the LMS generating markdown, the, the amount of markdown generated every day has skyrocketed. Right? So it definitely will be a big part of the future. Um, and the future of content in general, like.
I really like how, uh, LLMs in general AI generates, like, can customize the content to a specific user, right? So it can personalize, personalize it, summarize it, give it in the right level of abstraction. Uh, that's great. But, but what, what I think is missing is this, this thing we were talking about like the, the right.
Presentation, like the right level of richness in the, in the response. Uh, and I, I mean, like I tell you some experiments, I, I've been doing that you ask a question to, um, a for example, and it gives you like markdown back, right? Uh, I've been doing some experiments where I asked, uh, church, BT to. I ask, the prompt is like this, so give me the description of the best UI possible that answers this question, right?
And, and then I take that description, I put it and put it in B zero, for example, or in vault, those UI generation tools. And it's not that good. Like I wish that will. I think in the future it will be much better and also this speed right now of doing all that is obviously slow, but I expect it to get better and I'm excited to for that, to get better because it will be amazing if it happens, right?
Like to, to have something that gives you like that content in the best way possible to consume it. Amazing.
Andrew: Yeah, it, it, it would be an, an interesting world where you have a bunch of non-technical people writing, uh, markdown content and then just being like highlighting blocks and being like, now present this the best way you can to the user. And then like, getting like good bespoke experiences. That would be a quite the world to live in.
[00:42:53] Conclusion
Andrew: Well, that wraps it up for our questions this week. Uh, Rodrigo, thank you for coming on. This was a very interesting jaunt into the world of code hike and all the amazing wor work that you've done. So thank you for coming on.
Justin: Yeah, it's great to have you and Code Hike is is excellent. I'm excited to see what you do with it in your future.
Rodrigo: Thank you guys. Bye-bye.