Ep. 32 - HubSpot Dev Site: An Origin Story with A.J. and Brooke | Devs:After Dark

AJ LaPorte and Brooke redesigned developers.hubspot.com with a CMS-React architecture and islands for interactivity. They prioritized a "Get Started" entry point for new developers, tackled performance issues with Tailwind CDN, and built pillar pages and AI-enhanced SEO into the content strategy.
Chapters
Do you still want me to play the video just, just for you, or—
Yeah, you know what, just make me feel good. That's good. Yeah.
Okay. Yeah, we can do that.
Yeah, sure. Here we go. It is bright and sunny in the Midwest on World Smile Day, and today we have a very, very awesome episode where we're going to talk about the developer's website with no co-host because— and for those of you on video, you'll notice that AJ is here, but AJ is a guest today instead of a co-host because both himself and our guest Brooke, who's been here before, and others as well. Tremendous amount of work on the developer's website that just cannot go unbragged about. At least I want them to brag about it. But before we get started, let me, let me pose this to you. The printing press, the telegraph, the telephone, the internet, the iPhone, And social media. Now, what do these things have in common? Technological platforms. Now, surely with that much greatness in the platform world, there could be no room for any other platform on the planet. Well, number one, I don't know anyone named Shirley, and number two, you would be absolutely wrong because the HubSpot Developers Platform is the next iteration in that long line of great platforms. And what's even better is all you have to do is go to developers.hubspot.com to learn more about it. I mean, you can craft seamless experiences that'll help your business and other businesses as well grow better, powered by HubSpot's smart CRM. Now I know what you're saying. Well, okay, that's a, that's a wonderful tagline that you probably read off the website, which I may have, But at the end of the day, you're going to have to realize too, you're going to be able to have better robust applications that you basically are fueling your applications. You're going to be able to surface way more insights than you used to be able to, let's say rewind the clocks back 5 years, 10 years, and then you're actually going to be able to act on this data that you're going to collect. And those things are going to be key when trying to either compete with the next brand in your vertical or when you're trying to create these wonderful experiences. Let's say you're a service provider. So all I can tell you right now is you need to go to developers.hubspot.com to find out so much more. Not to mention that it's a great looking website when you get there, but you will be able to go through, you'll be able to explore the developer docs, you'll be able to see what's new with regards to everything because not just that, but recently I would say probably about what, like 2 weeks ago if not more, we just had inbound. So all of these things on top of what we just talked about right here launched, upgraded, new features, so much more. So there's a lot there to take in. But again, go to developers.hubspot.com and you will be able to see all of that and so much more. So with that being said, I did mention that yes, there is a very specific reason why we have our guests on. on today. I'm going to let them introduce themselves first and then we're going to dive in and we're going to start talking about the developer's website. Take it away, guys.
Go ahead, Brooke.
Awesome. Well, hi everybody. I have been on this podcast a couple of times now, so I hope you all recognize me. My name is Brooke and I am one of the developer advocates on our team and I specifically focus on development operations and writing content, making videos, that kind of stuff. So you can see me on the HubSpot Developer YouTube channel, and you can also read my blogs on our developers.hubspot.com/blog. And I'm here today because I was one of the people who helped to build out our new developer website.
And as many of you know, I'm AJ. I'm also a developer advocate here at HubSpot, and I was also a part of that team that helped basically build the developer's website and, uh, the new stuff that's out there. So yeah, it's, it's been an adventure for sure.
One of these days we're gonna have to create a leaderboard for how many times people have been on the show so that way we can see, because John's up there and now Brooke's up there. I think Brooke took, uh, took it over John's spot. It was like the most— Really?
I think I've been on here 3 times. Yeah, this is my third, this is my third appearance.
So yeah, I think that's, I think that's the record so far. So, so everyone who wants to be a guest out there, that's the— you got to shoot for to break records, right? Records are there to be broken. So let's go, let's, let's see some of those, uh, forms on the, on our website there for our guest speakers. But, but enough joking around on my part. But I really want— let's, let's start and let's get right into talking about this. Because like, this is one of those things where it's like, there's so much that we could potentially talk about that 1 hour unfortunately doesn't always— pretty much isn't really going to be able to cover all the amazing things and the amount of hard work that everyone on the team there did in order to make this happen. But I want to try to go over as many of the highlights as humanly possible there. So I'll just kind of— I'll just— between the two of you, you can popcorn it back and forth. But like, one of the first, like, questions that I have would be the new features. Like, can we talk about some of the new features that are on the site that weren't there before?
Yeah, absolutely. I can pull up the site too.
Yeah, we'll do that.
Yeah, let's get some visuals on the screen.
Right.
There we go.
So one of the Newer features that you can almost see right away on the very front there is like we have this really cool like console looking thing, but we can, we could talk about that in a little bit. But let's talk about one of the features that I think a lot of people are gonna enjoy. And it's kind of like this little thing that we added in. And if you actually look in the top right, you're gonna see this little green like status light. And believe it or not, that's actually attached to HubSpot status page. So before it was like always the questions with developers going like, oh hey, is there something happening right now? Like is there an outage? Is there this? Or that. We wanted to be able to surface that information more because that's a lot of what we saw inside looking at the community Slack and just community forums. When we started out to look for like features that we wanted to add, we did a lot of research into what people were basically saying about the site or what people have been just talking about in general, and then kind of went back and said, okay, well, how can we incorporate some of this into this site to give them more information? Like, we wanted to condense a lot of what we had because we'll be honest, like the previous page, it was a bit long, right? There were some sections on there that, you know, we probably could have done away with or shortened or made smaller. And we really wanted to make a more clean approach when we went forward with this site. So just to say, like one of those features we added was the status page indicator. Now, for those that don't know, we use Status Page by Atlassian. A lot of companies use that. You know, it's out there. One of the really great things about Status Page is they actually give you a JSON file that is connected to that status that is always refreshed. correction. If I'm not mistaken, I think it's 30-second intervals is by default. But it basically will always update that JSON file with your latest status that is posted on your status page. So, what we did is we hooked right into that. And we're pulling directly from that JSON file. So, that status indicator that you see on the page, if there ever is an issue, within 30 seconds or so, it should update and constantly, like, give you that status. We have plans to basically build out on that a little bit more and, you know, add a little bit more to it. So when you actually like hover over or click, you can get a little bit more information. But right now, if you were to click that, it'll take you directly to the status page and the statuses should be synced up.
Yeah, the status indicator is a very cool feature. And I think my biggest thing about this website is the new IA. I think that The way that we redesigned the mega menus and the footer and everything that you see is we really streamlined it into different things that we think are the most important to surface rather than just dumping you with all of these links that aren't really that important to you. So now we have very targeted buckets within our mega menu, get started, apps, CMS, tooling, and marketplace. And all of those link directly to our developer documentation. So, they take you directly to things that are important to you and not just random pages that aren't going to service you anything.
And shout out too to the really well-written descriptions underneath the links as well. I think like especially with mega menus and stuff, like you see people try to attempt that. And it really, uh, there isn't— they either don't have enough content to fill a mega menu but like put the mega menu on there so they can say they have a mega menu, or, uh, it's very, um— I would say that there's maybe there's like too much imagery to it. But like, I think this is like the perfect balance to be able to like both have links, some imagery, but as well as just really good descriptions. I think that's always With stuff like that.
And that was something that even when we were discussing, like, you know, we, we had our previous things in the menus prior, right? And it was like the one-line label to go where you wanted. And we were of the same thought pattern of like, we need to provide more, but like, how much is too much? How much— you know, we can't write a paragraph underneath each menu item in a, in a mega menu. It gets overloaded. You don't want to be visually cluttered. So we kind of went with this approach of like Maybe no more. I want to say we did like 30 characters. No, 30, 35 characters.
I think it's 35 characters.
Yeah, like we limited it to like, this was what we set out. Like, it can't be more than this because if it goes beyond 2 lines, we may lose people visually when trying to read. You know, we really wanted to do our best to condense and just be very succinct and to the point because as anybody who's listening who's a developer will know, Like developers deal in a lot of facts. We deal in a lot of like data. So we don't have time to read a giant paragraph when 3 words will convey exactly what we need. So that's what we wanted to do is we wanted to take that approach of like give you as much technical information as you need clear and upfront right away to make the decision of where you need to go on the site.
Not to mention too that on mobile responsiveness as well, it would've been like reading a book on your phone. Do you know what I mean? That would have been— I've seen, I've seen ones that do that, uh, you know, in other, uh, verticals, and it was just like almost to the point. And then, and the two— yet then you have to worry about like the, the proper scrolling, you know, on an overlay or something like that, where it's just now you have like 9,000 other problems that now come about when none of them should even be an issue. So yeah, I think that this is just— it's very, very well planned out from the menu perspective. For sure.
Thank you. Yeah, we worked, we worked a lot with the menu. We worked cross-functionally as well. So, um, as many know, not just developers.hubspot.com was updated, but our documentation was updated as well too. So there was another team that worked specifically on that, and that is on the Mintlify platform. But that team and our team kind of worked together when it came to the IA, and we had one solid, like, Let's take the approach of making sure that whatever the IA is that we put on the main site reflects in the docs, or like we use the same verbiage, we use the same callouts and things like that because we want consistency between everything that somebody goes to accomplish when they come to the developer site.
100%.
I mean, the only complaint I would have is just in the footer. I don't see a callout to like one of the best podcasts that I think I've ever listened to. But I mean, like, I mean, there's always room to improve.
I mean, you have a social media link directly directly to YouTube, you can get all of the podcasts on YouTube.
That's fair. That's fair. Okay. I mean, I'm selfish. That's fair though. That's fair. I like— but no, even that too, I really like the, um, I'm gonna say minimalistic approach to the footer, but maybe that's not was the intention. But like the way I like, because I'm, I'm one of those people that like I'm really picky about like design elements, right?
And there's a certain, um, I don't know, I was over—
what's the best word for it? Use too many links in the footer. I don't know what the fancy word for that would be, but like, I have seen way too many websites where like that is the most egregious thing because it's almost like, well, we have to link to everything. Now, whether that's just a poor design choice or whether that's someone from an SEO perspective told them you have to have an internal link for everything right on this page, but I've always noticed like one of the most egregious things I've seen in a footer is is that is just like this. It almost looks like Yahoo before Google, you know what I mean? Like it was just like this directory. It was just like really weird. But, um, but no, again, kudos to this as well because it's just, it's very to the point. It's very, it's— I don't want to call it minimalistic because I don't want to make it seem like there's not a lot there. That's not what I mean by that. But in comparison to what I've seen, less is more. And this is Like the perfect amount.
So, well, I mean, and that circles back to when we said like we were strategic about what we did. You know, we, we wanted to make sure that anything that we put on this site was there for a reason. It wasn't just information thrown on a page to, you know, this isn't a kind of like if you build it, they will come scenario, right?
Right.
You can build things all day long, but you need to be a little strategic in how you go about laying it out. And that goes down from interactions to verbiage to color scheme. Like everything needs to be thought out because every little interaction is in a way like a plus or minus point system for somebody when they're looking at something, right? You accumulate enough positive points, you get brand champions, you get people that are wanting to interact with your product more, wanting to be a part of the ecosystem more. Whereas if you start giving more negative things, you're gonna see people pull away and not wanna be a part of it as much. So we wanted to do as much as we could to just keep those points moving forward and in a good, like, to the right and up, as they say in marketing, right? To the right and up on the charts. We wanted to make sure that we did that, but we also wanted to make sure that we did it as a— at a— at a, like, not a disservice to our community, right? So, like, we did ask the community a lot of things. We took a lot of feedback in from what we were seeing, what we were hearing. We reached out to a couple of select devs that we knew to ask them questions about, like, hey, if you could have this on here, what would you want? You know, like the whole magic wand question. And to go off that, like, old DevMPS things, we did sift through, like, old feedback that we had gotten from people before. And, you know, we looked at it all to make sure that what we were planning was something that people were going to want to use.
No, that thought process shows. Question for you, Brooke. Like, I know I'm very— I'm a person that's very, like, anything I work on, I hate. Like, that I create, I'm just really, really weird and hard on myself about that. But, like, Was there a— was there something in particular when working on the site that you really like fell in love with when you were working on it? Because I get that, but then I hate whatever I do because I'm just weird. But like most people, most normal people like find a particular thing, especially when building a website that they like, and they start working on it. And it's like one of the things that when they see it, they are just like super proud of. Did you have any moments in there?
Yeah, that's a great question. So The biggest piece of the website that I worked on was our blog and changelog, and all of those, for people who are familiar with it, use our HubSpot CMS. So all of that data is being pulled in dynamically from the backend of where we host all of our web pages. And the biggest thing that we updated here is really more of like a behind-the-scenes thing. Like, you don't really see it like on the page, but behind the scenes We went from using pure Hubble to using CMS React. And so the biggest thing that I'm proud of is learning how to use islands, which is a way to add interactivity on the client side when you're using server-side rendered stuff so that the rest of the page is static HTML. But especially on the changelog page where you see this announced and upcoming section here, this is— oh my goodness, I'm getting a phone call.
Oh, no.
I've got to cancel that. But anyway, so here on the developer changelog page, when you are seeing this announced and upcoming section, this is the only interactive piece on the page. So, it makes it very performative. It makes it really easy to serve it up and be really good for all users regardless of their internet connection because you're not, you know, rendering that JavaScript along with all of the server stuff. It's only hydrated once it's on the client side. That's really what I was very proud of, was figuring that out because that was a really big hurdle from when we were changing our overall site from using the Hubl approach to using the CMS React approach.
Excellent. Now I imagine too with something where you're making— I don't want to say dramatic changes because I don't want to make it seem like, oh my God, we had to do it. But like when you're making, I would say, very impactful changes like this, there had to— I'm imagining there had to have been like other type of challenges that came up that weren't like roadblocks, so to speak, but did kind of— because I mean, granted, another wonderful thing that your team does is putting in the effort to look at the metrics, look at the data, go back and see and like Ask questions of both developers and community as far as what they want to see or what they like and don't like. Were there any other type of challenges that came up when you were making these significant improvements?
I mean, one challenge I will say—
I'm sorry.
I'm just going to say it because it's kind of funny and we laugh about it now. It's Tailwind. Tailwind was a— for those that have ever used any kind of AI coding, Cursor, like we were big on using Cursor when we built this. Mainly for many reasons, not just for like the AI assistance and like code completion, things like that. Like, yes, that was beneficial. But like what a lot of people might not realize is when building with it, sometimes it decides what it's going to use in certain things.
Mm-hmm.
And to kind of go forward and Kind of go a little— not as much of a tangent, but like one of the things that is used a lot is components in React, right? We basically looked at what the documentation platform was using when it came to how do we go about what we're going to use for React and components and things like that. And we saw the component library they were using, which was Shad. A lot of people use Shad as like their base and then they build off of it. So we said, well, let's make everything consistent. Let's use Shad. So, we started using Shad. And if, as you know, like building a brand new site is different from modifying a current site, right? You still have your existing classes. You have what you need. When building new, we needed to start fresh. And we kind of had an accelerated timeline that we had to work on. So, we're like, okay, well, let's just start building. So, we started building and we're like, okay, yeah, let's just use Tailwind. Sure. Like it was recommended. Let's go forward with it. As we started getting like halfway through the project, We're like, man, Tailwind is really messing up some of the things we're doing. Because what you have to remember is at the same time when you're looking at this site, HubSpot's main site of hubspot.com has CSS variables. Has like a lot of work done to it already. And we're trying to match branding to be consistent amongst the company.
Yeah.
So, we're not gonna recreate our own variables. We might as well reuse, you know, what is it? DRY, right? The DRY code thing. Like we want to To have reusable code. And we wanted it to where if a brand change happens to happen, we don't have to go up and update 15 times in our site. You know, it'll just happen. So, that was one of the things where as we started building that consistency, Tailwind started to show its edges of like this isn't gonna work. And then that's where it was honestly really, really funny. Brooke took it up and was like we're ripping Tailwind out because this is getting to be crazy. It was night and day once we got it removed. Brooke, if you want to speak more to the process of having to go through and get rid of it, because I know that was a big part that you did, but that was something that I think was a challenge for us as we started to get closer to launch of, okay, Tailwind's now causing issues versus helping us more.
Yeah. Well, the thing that was causing issues with that was a very classic beginner developer mistake, which was using CDN in production. Because with Tailwind and all of these different Node stuff, it's supposed to be you package it up and compile it before you put it on your site. And we were like, well, we haven't really done that with this. And we're still new to the CMS React stuff. So, let's just throw the CDN in there just to make sure it always loads, all that stuff. You know, when you go onto the site, in the console, it said in the big yellow warning area, remove the CDN, it's not good for performance. And I was all like, AJ, we need to get rid of this. We need to— because the website was also taking really long to load.
Yeah.
And all of us know that if you are on a website that takes longer than like 2 seconds to load, people leave. So, I was like, we got to do something about this. But the thing is, we were relying on it quite a bit inside of our code because, you know, all the utility classes were very helpful. So, we didn't have to, like, write our own Flexbox and all that good stuff. And so, I was like, okay, I'm gonna help use AI to help me get through this. One thing I asked it to do was, like, go through and find every instance of a Tailwind class and then use the HubSpot variant of that class.
Mm-hmm.
That the HubSpot brand guidelines have. And that was really helpful to like go through and lint all of my code and figure out where all of those were. And then I said, okay, if there's any Tailwind left, like let's actually make sure that we compile all of this before we upload it to the site so we can get rid of the CDN. And it was really nice because when I went ahead and implemented that, I also gave AI the prerogative to write up Some changelog documentation on that. Or not just changelog documentation, but just documentation on that process of using Tailwind. So, if anybody, like, in the future, like, starts working on this and they don't know how Tailwind works or, like, how we've implemented it into our site, they can read that documentation that was written by AI. And it will tell it exactly this is the exact npx command that you need to run before you go ahead and run the upload for the build.
See, that's smart too because I think one of the things that, at least from what I've heard when people are talking about using AI as a helper with code to work smarter, not harder, is the documentation part. Because it's like you have all these things and you have all these changes that are happening instantly, but yet the person with the prompt engineer, if you will, may understand what they're doing at that moment, but then there's always that out of sight, out of mind. Yeah, someone else is gonna have to take this over maybe at some point and iterate on this or repair this, you know, hopefully not the latter. But no, again, kudos to that as well for thinking of that ahead of time too, because like in a fast-paced world where things have to get done quickly, sometimes those— I don't want to say little things, but those are things that sometimes fall off the radar slightly, and then it, as you can imagine, probably hurts a lot more in the long run than it does when you're, you know, just when it's, you know, out of sight, out of mind. So no, that's— I'm really glad that you and the team did that as well because that's fantastic.
No, it definitely—
it was.
And like, as you said, like, we were on a really, really very accelerated timeline, to put it bluntly. Like, we had a lot less time than normally you would For anybody who's typically built a HubSpot theme or website or anything knows, you know, 5 to 6 months is average. We were a lot shorter than that when we did this. But it was— what was nice about— what was some of what was nice about some of that is that it was mainly Brooke, Ashley, and I that did— Ashley Webster— that did the things that you see on developers.hubspot.com. So anything that is docs related was done with another team, and we worked cross-collaboratively to stay in touch to make sure we were aligned. But everything that's not on the docs was performed by the 3 of us. And what was nice is we were able to divide and conquer, right? So when these bigger pieces like this would come up, it was basically like, okay, who's gonna take it and run with it and who wants to do it? So for instance, you spoke about mobile navigation and mobile menus before and like the footer, that was all Ashley. Ashley just was like, I'll take it. And we said, okay.
Right.
And Ashley did her thing and it turned out fantastic.
Right.
Yeah.
And shout out to Ashley too, if I hadn't said that earlier. I can't remember if I did. I talk so much, I can't remember what I say about 10 minutes ago. But, uh, yeah, no, also shout out to Ashley too because she's also on your team and also put in a tremendous amount of work with this as well. So yeah, but no, mobile navigation is, is really good. I really like it because it's like, it feels, you know what I mean? Like there's some people, like there's some sites that like I've used their mobile navigation and it works, right? Saying it works is What I like to call like the bare minimum, right? It works, right? As opposed to like it feels like this is what I'm supposed to be using on the phone. And I— to me there's a distinct difference. And this feels like this is how I should be using it on the phone versus, well, it's the other navigation but skinnier and it works. So it is very cool. I do like it.
Mm-hmm.
Let's, um, I wanted to ask too, like Because there was— there's these leaps and bounds, right? Or what most people would call iterations, right? Over the years, like, with the direction of this particular version, right? Like, what are some of the differences versus, like, the past iterations? Like, what about this one made it so much more special?
Let's see. I think overall, like we, in the years past, when you look at the different, we'll call iterations of the site, right? And this is feedback that we heard called out too, like, oh hey, you guys are making another version of your site? Yeah, yeah, we're making another version. And, you know, having been at HubSpot almost 6 years now, like I could tell you, yeah, there's been at least like 3 different versions that I know of the developer's website. And things like that.
And, and that's not, that's not too uncut. Like, no, I mean, 3 over 6 years, like, is not bad, right? Because people always look at that and they— and, and not to go off on a tangent, but like, just for like those who are listening, I'd be curious too, like, in the comments when you're watching this, like, let me know. Like, it— that, that to me doesn't seem so bad, especially in, in a, in a time where like, um, technology's turning over quicker.
Yeah.
Let's put it this way. If we were still back in the days where it was just vanilla CSS and dare I say HTML that wasn't too dynamic, maybe database-driven at the time, turning over a website every year or every other year might have seemed a bit much because it wasn't— not that there wasn't newer technologies, but not something to the point where you would have to redo things and say, well, we need to do this now, right? Like maybe if your site was static and went to dynamic, let's say that. Yeah, understandably. But like now, if you told me like it's been changed 3 times over 6-year period in this day and age, I would think nothing of it.
Yeah. And that, and that's exactly it, right? Like, so it, when it came up and it was, the big thing was like HubSpot rebranded too. If you notice, like they changed colors, they changed up the look and feel, we'll call it that. Well, our site had a completely different look and feel. And it's not that we ever tried to stray away from branding. We tried to stay consistent in the past. But it was like, it is a bit different when you come to a developer site because you're expecting more technical resources versus your standard user resources that you would get on like our knowledge base, for instance.
Yeah.
So when we thought about like the new site, we did have a big debate internally of Do we just update what we have or do we go forward and align closer to the brand? And then that's where we made the decision like, yeah, let's align closer. Let's really hammer it in with making sure everything you see from ads to whatever all is still relevant when you come to the developer site, right? I mean, I'm sure anybody who scrolled Facebook recently has seen the HubSpot ad about AI and everything that we've been doing, right? AI is another portion of it that we had to think about. You know, we're no longer in this world where people are coming to sites to learn how to develop. AI is coming to our sites now. And it's ingesting information.
Right.
Yeah.
So, when we talk about like past iterations of the website and how it was built, those weren't really built in it for an AI world.
Right.
Where AI is doing a lot of the coding or is assisting people in giving solutions. When we built the new site, we had to think about that as well, of how can we build a site that is both informational still to the humans that we service, but is also going to be easy enough for the AIs that are going to be servicing as well to come and ingest the information to get moving and to get going.
You basically have a new clientele that you're trying to service. Also too, quick side note, shout out also, if you haven't already, SEO in the AI world, We have now 2 episodes of that. It's kind of like a miniseries that we're doing. We first spoke with Victor Pan about that on our first episode, and then we spoke with Michelle Jensen on our second one. We plan to keep going with those because this is a theme, if you will, that continues or that will continue to keep injecting itself into any kind of development work or any type of SEO work. whether you like it or not. So, um, but yeah, it's, um, like you were saying, there, there is like a brand new, uh, customer, if you will, that you have to take into consideration for that. So, um, but yeah, again, that just— I guess that just speaks to both yourself, uh, Brooke, and Ashley, is the thought process that goes behind this, right? Because there's, there's sites too where it's just like— I've seen them where it's like, hey, we've got a brand new look, we've got all this, this, and this, and it's like when you really were looking at it, it was like, yeah, it's just basically you've changed some RGBA colors and you have a new site. Not what I would consider by definition, you know, a site update, if you will. But it's more than just that, because I've seen people try to do that with a little bit of coding change and try to pass that off as a new version. But like, the thought process and the things that came out of that. are undeniable when looking at the site today. So, exactly.
And I think you said it well when you said, like, you know, we weren't just putting a new paint of, you know, a new coat of paint on a house. We were rebuilding the house. And we wanted to have a good foundation. We wanted to be able to, you know, scale. We wanted to build something that was scalable, which is why we went with the React route of it all. You know, it gave us way more limitation— or it gave us way less limitations. And it was more about, like, The power of thought was really our limitation at that point of what we wanted to do. And I mean, naturally platforms have limitations, right? They have their API limits or whatever other limits. So working within the natural limits of the platform, naturally, but it gave us the ability to think outside the box. Like as everybody knows, Hubbell is great and Hubbell is, you know, it's been a staple of building on HubSpot, but you can do a lot more with React than you can with Hubbell.
Yeah.
And you can kind of do the same things in a way, but you can also use Hubbell in React, which was nice. So we were able to like, basically have the best of both worlds combined together as we moved forward building it. And then a lot of it was this strategization, which Brooke, you were instrumental, you and Ashley, when it came to strategizing, like the 3 of us getting together. So I don't know if you want to speak to a lot of like the content siloing, because I know you, you did a lot of like the wrangling of all the content that we had going on.
Yeah. So, you know, like I talked about with like our IA, like content was like a very big piece. of this overhaul. Like, we really went through and were very honest with ourselves about what we had on the site. And we did a whole site audit where we went through and we just said, does this need to be here or not? And then from there, we really went back to the basics and thought about what we wanted the happy path to be when you get to the website. If you're a new person, if you're someone who's been here before, that kind of stuff. And what we realized was that our site isn't servicing anybody really well. So what we did was we had just a meeting with us and our manager, Chris Riley, where we just sat out and we drew out literally on paper, like what we wanted that happy path to be. And our big thing that we focused on when it came to this content redesign was use cases because When it comes to like the regular HubSpot site, that is, in my opinion, like very markety, very sales-focused. It's not focused on like the nitty-gritty, which is where the developer site comes in. We really are focused on that. We're focused on servicing not only new customers, but customers who have been around who just really want to know like what they can do, especially with the new developer platform. And so that's how we really kind of came up with how our content is being bucketed into what we call data in, data out, how to visualize your data within HubSpot, and then how to act on that data. So making updates based on the data that you see in there. And so that was really our guiding ethos when we thought about our content and we created net new landing pages for all of that that we consider to be like our new evergreen pillar pages. And I think, you know, we talked about AI. I think having pillar pages is very important for AI crawlers so that they see that and they understand like this is your main offerings and this is what your website is really trying to tell the story of. And so that was a really fun exercise to go through thinking about all that because previously we just did one-off landing pages on like very specific things like that were so niche that you couldn't even find it because we didn't even have it connected to the website header. Like you couldn't find those pages unless someone sent you the URL, which is in my opinion, not a great way to scaffold out your website. Every page should be able to lead you to another page on a website. Like there should never be a path where you get to and then you're like, I can't go any further in the website. That is in my opinion, very bad user experience. And so that was why we were really thoughtful about all of this. We, we thought about the design side, we thought about the content side, we thought about the, the structure of our code, all of that stuff.
I couldn't agree more because there's— there comes a point too where— and again, I'm referencing like just other sites, not one in particular that I can remember, but like ones that I've seen where like creating that path for the user, right? Instead of taking the time to go backwards and say, okay, well, let's, let's look at our personas, let's look at our user base and try to solve the problems for them, you know, within the web page, right? And kind of like scaffold that out or silo it out or however you want to describe it, where I've just seen more people more lean towards, uh, well, let's just put a slider in the header and we're going to dump a bunch of stuff in there and we'll try to accommodate for like 70 different things, right? And they'll just, eventually they'll just, they'll click through it and they'll, of course, isn't that what everyone does? They click through 70 sliders. But yeah, I really do appreciate the approach of really kind of sitting down and identifying what those, you can call 'em problems, call 'em personas, but at a certain point there are like those content silos that are not just, they're not too niche, but they're broad enough where you can drill down. And then like you said, the importance of when— now that AI has stolen rank zero from just about everybody, it's important for it to, or any like agent to see that content and understand and kind of filter down that. I guess you'd call it a funnel, but— But yeah, just be able to read that and understand that better is, again, that's— I just don't think a lot of people do that. I think they think they're doing it, but I don't think they have the experience or the empathy in order to accomplish it like teams at HubSpot and your team specifically does. So I just don't think they— I think people think they do what you guys have done, But I think that their definition isn't the same in most cases.
So, and I think a lot of it too, as you mentioned, like experience. But I think, and I think we've talked about this in the past with Dennis, where there's a difference between experience, knowledge, and wisdom, right? And I think that like we have a lot of experience, our team, but we also have a lot of wisdom. I mean, if you think about it, the 3 of us together, like Brooke was an academy professor. She literally has taught people constantly about everything with HubSpot and to do it. So I mean, I can't think of anybody better to have on a team to strategize than literally a person who's teaching everybody else on how to do stuff.
So do it right. Exactly.
And Ashley, who came over from— I won't mention the company, just I don't know if we can, but she came over from a company and like she brought all her experience with from her dev advocacy days and like literally getting her experience from like being relatively new at HubSpot when it came to like doing the developer docs and stuff like that. That was cool because we got experience from the outside in as well. And I think like the, just the culmination of our experiences and our wisdom together is what really helped set the motion for the strategy and everything else that came about.
Oh, that's fantastic. And yeah, and it shows too, because like I said, there's people that say they do that and then you can kind of see in the end result that it's not quite that.
Yeah, we have receipts. We have receipts for all the research we did. So yeah.
That's a good way of putting it. Absolutely. Let's talk about the the hero section of the website? Because that's another thing that when you were showing it to me, I saw it and I was just like, I really like that. I think that that's— it's, you know, like there's plenty of websites that use the— and I'm gonna— I can't remember what the— like there's a couple of JavaScript— I'm gonna use the word frameworks, but that's probably not the right word. But what is it? Typescript? There's like a type one that does this, like, you know, the type functionality, right?
Yeah.
Um, I've seen plenty of sites that have it and it's, it really is more for like, hey, look at this cool thing my hero section does. Like, it really doesn't offer much like value in a sense of like describing something or, or to like take like a, a fancy little tagline and it'll change the last word. And I say that with experience because I used to do that all the time with like real estate websites where I'm like, you know, buy your home, own your home, you know, win your— like, you know, like that kind of like cheesy stuff. It was more like emotion invoking. But this one is like one of the examples of like when you're using that, like how it is actually impactful and not just like fluffy, I guess is the best way to describe it. Was that— can you talk a little bit about that and like how that came about?
So it's actually really funny. The idea of the whole CLI-looking area was actually just the idea of Chris Riley. He— when we were first strategizing about this, one of the first things you see, and it's the first one that loads when it comes up there, is HS Get Started, right?
Mm-hmm.
So, HS Get Started, that's kind of like our motto right now. Like, that is— like, get started is literally on anybody's document, any platform you go to or any thing you want to do, get started is how you get started with it. You know, that's the big call to action. So, we wanted to rally around that. And then Chris was like, you know, I just— he's like, I would just love to have it in a terminal. Like, I just want a working CLI. And we kind of were thinking to ourselves, like, we could do this. Like, we could make one that kind of fake looks like a terminal, operates like a terminal. And then, like, to your point, Nick, like— Yes, everybody can have a slider, but what if the text is rotated out and was commands? It was just this idea that we just kept throwing ideas back and forth. This is where using AI like Cursor and stuff came in really helpful because we could have easily coded all this JS stuff by ourselves to say, oh, rotate the lines, do this, do that. I just let Cursor do it when it came to the rotation of the text, to be honest, because it was one of those things where it was like, This is actually a HubSpot module. So if you drop this onto a page, it is a repeatable module where you can choose the next thing that rotates in. You can set the HS, the command key, and then the link afterwards. Like, when you're looking at it, you have to remember these are actual modules within HubSpot that have configurations.
Mm-hmm.
So a lot of the stuff we're building is that activity of like, how do people, you know, are gonna enter the information? How is it gonna look when it's, you know, explained out? So, we did let Cursor do most of the JavaScripty stuff of working.
Right.
But then that's also where we were like, okay, well, like what else could it do? Because one of the things Chris said is like, I want a video on the homepage. Okay. What do we do? Do we pop a modal? Do we do— and again, it's like, well, we got a CLI. Let's load the video in the CLI. Like, so it's just one of those things where like we just kept circling back to the CLI. And then, you know, we did add some fun stuff just because like I know how I am when I go to sites. And if I see something that looks like a CLI, I'm going to click buttons. I'm going to click things to make them do whatever.
You're Easter egg hunting is what you're doing. Yeah, everybody, everybody does.
It's fun. And I knew of like 3 developers in our community that I knew were going to click these buttons even if there wasn't interactivity. So I was like, you know what, I'm just going to add it in just as a surprise because I guarantee you one of those 3 is going to click it. Sure enough, The exact day we launched it, I immediately got a DM from one of them. It was Carter. I knew Carter was going to click those buttons. Part of me, we added little interactivity elements sprinkled throughout because it's just fun. We wanted to give developers that feel of you're technically interacting with the CLI like you normally would. If you click any of those 3 terminal buttons, yes, it will minimize. Yes, it will disappear for a second and come back, or it will expand out. We really tried to make it just fun overall.
I'm trying to punch in the Konami code, but nothing's happening. I don't know if I'm doing it right.
It's in progress. We are looking at Konami code.
We have lots of Easter eggs that we want to do. But like we talked about earlier with the accelerated timeline, that is, you know, when you're working on a site like this, when you're working on any project, it's It's like you just got to get to the MVP. You got to have a good MVP, but you got to get to the MVP before any of the bells and whistles. And so for me, that MVP was making sure that the website looks nice, it serves up the correct content when you ask for it, and it is just a place that you can, you know, enjoy when you go to it. Like, I, I come from a UX background, so like, I, I really care about the user experience. I care about, you know, if we, if we look at the data, like, what is the, the heat map of like where people are looking at, like eye tracking and stuff like that. That to me is interesting. So for me, it's not just about like the aesthetics, but it's also about the usability of what we see. And accessibility was a big part of that MVP, making sure that we had all of our correct tags, that we were being WCAG compliant. That was a big— piece of the site as well.
Am I the only one that gets nerded out with heat maps too? Because like I always remember, uh, like Crazy Egg was like one of the very first ones, right? And that was like, I was just infatuated with that. I wanted to use it on everything and like show people like, let me show you where everybody's looking at everything. I just, I thought it was one of the coolest things ever invented. So, um, but I'm, yeah, I'm glad that again, it's, it's, I, you know what, it's, it's honestly just to not, not to, um, boil it down to something and make it sound like it's real simple. But there's like, there's just this mindset of making it not just the usability, but there's just, there's a mindset and a thought process that, I mean, you could try to replicate, right? You could try to have AI do it for you. But like, there's, there's just something about both yourself and AJ and Ashley as well that like, that team, it's— you just— it's a team that essentially you cannot clone if you tried to. It's just there's a lot of thought, empathy, and like you said, just with the UX stuff alone, you know, probably all of us have been in situations where we're using something similar and have had frustrations. And to be able to take that and apply that and then solve a problem with that, because it's not always easy. Like sometimes you will try to do these things and you You may not get the intended result that you're trying to solve for, but you like— it just, it feels like everything on here, you've, you've been able to both look at it, identify it, tackle it, and then make it fun. And even the make it fun part is it sounds easy, but it's not.
It truly isn't.
So yeah, it's one of those things where like just looking at this and using this in the capacity I have so far is there isn't a thing yet where I'm like, oh, that's all right. It's like, no, this is pretty— like, even up to the point where the command line tells you, like, the day and time that you got to the page and, like, all this. Like, there's, like, little— I don't know, those little things to me, like, I, you know, depending on, like, what site you're kind of looking at, if it's not a tech site, if it's not a thing, sure, some of those things get lost in the ether. But, like, I think with the clientele that use this site or will go through this site at some point, I don't think any of these tiny little details that are very thoughtful are ever going to get overlooked.
So, well, and, and to your point, like, we did add, like, for instance, like, it does show the ex— the exact date and time that you load up the site and stuff like that. And like, and this is where, like, you know, Brooke and Ashley kind of reined me in because I am one of those people where, like, I will keep going with, like, little things when I have the extra time. As I'm—
Yeah, no, you don't say, huh?
And right, everyone again, you're just a very creative person.
And I had on there originally the actual remote IP address of your own IP when you go there.
I didn't know we were gonna mention that.
So it was actually kind of funny because like I put it on there and like everybody's testing, all of a sudden it was like, like, like at the same time, like Brooke's pinging me, Ash is pinging me, John's pinging me, they're like, um, PII, man, I don't think we can do that. I'm like, oh, that's right. So I mean, and it was a good idea, right? It was a funny—
It was a great idea.
It's got your IP address, your credit score underneath that, like, yeah, your experience score.
So what do you— what's next, my Social Security number?
Like, yeah, exactly.
That was like the jokes I was getting, and I was like, oh, I did not even think about it. Like, I was thinking of it from the fun interactive, like, hey, right, not, uh, wait a minute. And like, yeah, you're right, we shouldn't put that on there.
My gosh.
Hey, that's the, that's the wisdom piece that you were talking about earlier.
Exactly, exactly. And you know, like, and some— and like, I'll admit, sometimes the wisdom goes to the side for fun, and it's like, that's where like it's great to I have, you know, 2 teammates that I was working with who literally, like, we all kind of held guardrails to each other in a great way. And it wasn't like accusatory guardrails or anything. It was more like, hey, that is awesome, but we— PII, man, I don't think we could do it. And I'm like, oh my gosh, you're right.
Yeah.
So like, we pulled it off. But like, one of the things, um, and, and Dennis had this idea and it was brilliant, but we also pulled it off because John brought up great points about it, is Dennis found a list of like fictitious or fictitious TV shows that have ever showed IP addresses.
Yeah, like Silicon Valley, I think, right?
Yeah, there was an episode of Star Trek: The Next Generation where they had the IP address of the Enterprise, and we were going to have that be one of the IP addresses. But the problem is, is that could actually be a real IP address. Yeah, so like we can't really use it. And so like there's little things like that where like we tried to say like, okay, well, you know, like technically like a lot of these entertainment companies own the domain. Yeah, but now we're getting into, you know, copyright, and we're like, yeah, we're just Oh, 127, let's do it.
Yeah, the weeds get kind of thick there where you're kind of like spending more time like looking up copyright infringement or IP, you know what I mean, than you are like building. So it's—
Yeah, and that's, and that's where we said, okay, like, you know, the time limit for this particular piece that we're building is over. You know, log it as an issue of a future thing maybe, but we got to move on to the next thing. And, and again, that's where like the team was really great of working with each other going, okay, I think we spent too much time now, next thing. We gotta, we gotta keep moving.
Yeah.
And like, that's where That's why we have what we have now is we had some extra, we pulled it away, we pulled back and we said, okay, next thing.
Right. Well, I was going to ask you, how much money did you have to bribe Anton to get a testimonial from him?
Nothing. It was reused. No. Some of the testimonials you'll see are the same testimonials from the previous page. We did reuse some components, but we definitely updated them and we have been looking for other comments and stuff as they come around. So in the past, like, it was like set it and forget it. Expect now, like, that's going to be a lot— you're going to see things switching out a lot more on the site. There's going to be a lot more customization coming.
And I think that's one of those examples where, um, the, the whole, well, we have to have a testimonial, or we have to have a slider. Why? Well, because we need a slider. You got to have a slide. Like, what's the— what's going to be the function for it? This is one of the, like, the examples of, like, it, it always surprises me where, like, people try to match functionality to a site, but they don't match it to anything. They match it because like someone says they need to have it or that's the next coolest thing. I just, I, I think there's, there's something to be said about like when I— when a site, whether it's a one-pager or whether it's an entire like 500-page like business site, whatever it is, like the functionalities that are tied to something meaningful, um, I think speak volumes because like you can kind of tell when something's just I don't know. I don't wanna say cheesy, but like in a certain level, they do seem to like give off that vibe, right? When someone's using it just so you can say you've used it, right? Like, no, we're, you know, we're techie, we're this, like, look at all the cool things on our site. But then it's like, it doesn't really do anything. Like this slider tells a story, right? It tells multiple stories. So its use case is like— Chef's kiss, right?
It's perfect.
So, um, yeah, I think that's one of those things too. And, um, plus I just wanted to tease Anton. And 2 and 2, I mean, we maybe had to bribe him as well. But, um, or maybe because they were, you know, they've been guests on the show, they were like, you know, we know Nick, so it's cool. We'll be so— um, but I mean, either way, um, I, I do. But I do think, like, again, like, it's just these use cases of, uh, like, these certain functionalities and these certain UI aspects are They just speak volumes, right? Because I don't know, too many people try to cram too much stuff into one 5-pound bag and it unfortunately, like, it's very obvious when that happens. And yeah, no, this is one of those ones where it's the use cases are perfect for every single thing that's on here. So just a big shout out to that for sure. Let's turn. I want to ask, was there any other— actually, because you had mentioned, AJ, we were talking a little bit about Like with the use of AI and everything, was there any other type of like AI incorporations that you guys did with, you know, with any of the, uh, whether it's creation or even like maybe some of the groundwork to like set some of this stuff up that you and the team used?
Yeah, I mean, like I said, we used Cursor and, uh, you know, shout out to BJ who's been on the podcast before. They're working— they have the Elevate theme, as many know, that theme within HubSpot. And they were really awesome in saying like, hey, because it's a React-based theme, like, come take a look. And then they were also cueing us into like cursor rules, right? Like, we've used cursor rules in the past, but not in the way in which they were using them, which is like a full rules folder versus an individual file. So we got to like learn a little bit about cursor rules from BJ. And then that's honestly we put in a really big set of rules that did tons of different stuff for us. And it wasn't like we did it once. We were constantly updating these rules, constantly changing what the parameters of the rules were that we were asking for for Cursor. And that really did help level set a lot of things. Like one of the— I would say the biggest rules that we did was when we were building modules, you know, everybody always wants that one solution for a module that's like, yeah, but I have these fields that every module needs to have.
Yeah.
Okay. But every time I create a module, I got to remember to link it. I got to remember to do this. I got to remember to do that. We ended up setting up rules in place where literally all we had to say to Cursor was, hey, I'm going to be making a module. Build me the base. Here's the name of the module and everything. And it built the base functionality with wrapping sections. And then it would build out the actual fields.json to include all of the, like, elements that we wanted it to be and everything. Because we had like shared field settings for some modules. And it just includes them automatically and included all of our like wrappers that we had done. And anything we needed to get a base shell of a module ready was now instead of us having to set it up and maybe spend 30 minutes configuring all the code and doing everything was literally a 2-second question to AI. And then boom, it created the base for us. And then all we had to do was go in and add in the rest of what that module was supposed to So, that's just one example. But Brooke, do you want to talk to, like, the documentation stuff that we did? Because that was pretty crazy.
Yeah. Like I mentioned earlier, using AI to create the documentation, that is just like we mentioned, like, sometimes that can be like an afterthought. But, you know, ultimately, having documentation is important even if you're working on an internal project. Like, this was an internal project. Because you know, you're going to have people coming in and out who are working on this with you. And, you know, team members can change and different things like that. So having robust documentation is just like part and parcel of creating a good project. But it's very time-consuming. And like, you know, if you've been working on a module for like 2 days, you might honestly forget like what you added to that module or like how to even set it up and stuff like that. So having the documentation be generated by AI, We gave it a consistent structure, how we wanted the documentation to look, the sections that we wanted, all that good stuff inside of the rules that AJ was talking about. Then we would just say, hey, now that we've created this, write up a documentation on how to use this. It would just spit it out to you in a Markdown file and it was super easy to do and it saves a lot of time to do it that way. I think that's the biggest thing that I use AI for is things like that where it's like, yeah, I could do this, but it's going to take me 2 hours and is that worth my time?
Right.
And I can actually just like ask AI to do it and they'll do it just fine to the level that I want it to do. And then I can focus on the more important things, which are like strategizing and thinking about like, how do we get the, um, uh, the, oh my gosh, I can't think of the word right now. Uh, analytics. How do we How do we figure out the analytics and make sure that we are optimizing for AI search and those kinds of things? Because those are important questions that AI can't answer, but AI can create you a document about how this thing was created and how to use it in like 5 seconds.
Did either of you have any arguments with Cursor? I've, uh, just recently like been using it to do some stuff with themes, and, uh, I found myself, uh, having arguments with it being like Why are you doing this? Why, why aren't you listening to me? I like, I find myself like, I almost, I almost have to kind of go back to like, there was that episode we had with, uh, Caitlin Seegers where it was about like, like when you're having a conversation, like digital conversation, whether it's with a person or not, like to try to just be a little bit more human. And I was like, I was literally like getting mad at like, why are you doing this cursor? Like, what did you— are you not listening to me? And I was just like, and I was watching myself type and I'm like, what?
Like, What am I doing?
Like, what is it? It was, it was a really weird kind of like I had to check myself at the door there and be like, leave your attitude out there, bro. It was weird.
I have a really funny example of that. So I was like working one day and my husband was here because sometimes he works from home too. And I was like asking Cursor to like do something for me. I don't even remember what it was, but like it literally just said something and I'm all like, that doesn't exist. Like, this— I was like, this is not even real. And they're like, oh, you're so right, I'm sorry I lied. I'm like, why did you make this up? Like, it was like so dumb. I was like, this is— and like, the biggest thing that is sometimes an issue with AI, and hopefully it's like better if you use the Dev MCP that we just released, is sometimes HubSpot has a unique way of Making things work with the code, and so like when I'm using like the UI components, like when I have like different things that I'm trying to set on it, sometimes it'll write the code incorrectly or it'll give me like an option that's not even available on that UI component, and I'll be all like that that's not even a thing. Like you can't like I'll look oh you can like how you can hover over something and you can see like what is actually defined on that, and it'll be and the the documentation inside of it will say. These are the only options you have on this TypeScript thing. I'm like, AI, what are you doing? Are you not even listening to what is there? Sometimes I'm just like, I like when you code for me, but I also have to check your code every 5 minutes.
Yeah. No, absolutely 100%. I always find it weird because it literally— I can see how you could just lose track of— because it's believable. You know, at a certain point. And especially if you're just trying to test things out and you're trying to, like, work your way around something you're not familiar with. It's just like, yeah, the sky's red. Absolutely. Let's do it. Put it into the— put it into my cursor rules so next time I don't have to ask again. So, but yeah, it's— yeah.
Well, it's actually funny that you asked about, like, having the argument because that is literally what I did in the middle of this project.
Hmm.
Yeah. Is it was— I forgot what night it was I was working on it, but I got to a point where I was like, you know what? I've done a lot of work with cursor back and forth trying to solve things. I'm curious what it knows. Can it actually remember everything we've done? I literally just started chatting with it. What was interesting is I was like, give me a summary of what you think the project is so far and how it's coded. How are we doing? How's this? It started talking back and being like, oh, you're moving in this direction or you're going like that. I said, okay, well, do me this. You've had to reach out to our developer docs a lot, right? You've had to reach out to documentation elsewhere to provide me all of the information you have, what are the gaps? What's missing? Like, what did you not get when you went out to look for it that I can help work better for you? And believe it or not, it actually started documenting that.
Yeah, it was very cool.
In the documentation that we did, we modified the rule about halfway through the project. And now not only in like in— if you were to look at our folder structures, you would see like every module folder Inside of every module folder is an MD file of changes that were made to the module. Then literally it will say, hey, on this particular document, you should update XYZ to have more of a kitchen sink example or more of that. It's like now it's telling me what the LLMs need in order to better perform. A lot of it was literally, and I highly recommend anybody just have a chat with their own cursor thing when they're building, ask it to start self-documenting, ask it to start doing these things. Because what we— what I didn't expect was the self-documentation of literally like how it's working. Because then it started documenting how it was building certain things and why it was building it that way because of XYZ or because of what it looked up here and was doing it. So it really started to like grow into this almost like network of information That literally it was just like, okay, well, I'm just going to set and forget it. Then afterwards, we're compiling all of that now and we're looking at that and reviewing that and going, okay, yeah, is it just AI didn't understand how the doc was written? Could be. Or is it literally like, yeah, we didn't have this parameter example on there. Oh man, we did miss one. That's where Cursor has come in very handy in that.
Yeah, the parameter thing. What examples am I— or is The documentation missing. I mean, closer and closer to Iron Man's Jarvis every day. Like, at this point it's almost like, cursor, do you love me? Boolean, 1 or 0. Like, you know, but, uh, yeah, but that's a good, uh, I, I like that type of, like, that's a really good, uh, mentality as far as, like, not just like a, like almost like a ping pong match, like a back and forth, but like, go out and tell me, like, of the things you're using to convince me, like, What could change there? Like, you know what I mean? Because maybe the source that you're referencing needs to be different or something like that. That's actually— I hadn't really actually thought about it like that.
Because it's also interesting because like you can see Cursor when it's thinking and it kind of like tells you what it's thinking about. And it was interesting to start seeing the, like, the words that I was typing or the keywords that were being said to it start surfacing in its own, like, thinking. Or like one of the big things, like accessibility, right? We talked about that. reduced motion was, was a big thing.
Yeah.
For me in terms of accessibility because, you know, the last thing I would want is somebody to visit one of our sites and, you know, example, like a seizure because of flashing imagery.
Yeah.
Nobody wants that.
No.
But one of the big things is like we want to respect reduced motion if the browser asks for it. So I put that into one of the rules of like, hey, like we really need to check on reduced motion or whatever. Without even thinking about it, it started building in backup classes and reduced motion and things like that to CSS functionality and like any kind of animation functionality we had.
Mm-hmm.
And it was things where like we may not have thought about it in that exact moment, but because we thought about it early on and we put a rule in place to always think about it, it was always top of mind. So it was basically like having another developer that we would look at and go, hey, remember this for when I'm building. And they go, okay, we'll remember it for you. Don't worry. You just keep doing what you're doing. I'll check it. And that's where I think it came out pretty beneficial for us.
For sure.
Awesome. Very nice. We're almost running up on time, so I don't want to keep you guys too much longer. But the very last thing I would love to know is, like, if you're— if, okay, let's play a game. I've never— let's pretend I've never seen this site before and I've never been to it and I'm about to go to it now. What is, like, the one thing, if you had to pick one thing? And I know there's plenty of things here that are really fantastic, But if there was one thing that you really needed to brag about or wanted to like, wanted me to focus on, like what would that one thing be? And it can be at any level. Like let's say I don't know anything about coding, which some might argue that's true, or, you know, or I could be a, you know, a seasoned veteran as far as development. Like what is the one thing that you would want if I could only go here? Let's say like I can only go for like a couple seconds and then I had to like close out. What is the one thing that you would hope as an individual going here I saw?
Hmm.
That's a good one, isn't it?
Yeah.
Yeah.
Not, not to brag or anything, but—
Only a couple of seconds.
Yeah.
Honestly, I would say if you're new to starting out, the Get Started menu. Like that, we really did take a lot of craft and care and strategizing into the multiple paths that people can take, you know, who are coming to the site, whether you're new, you're experienced, you're seasoned. we wanted to be able to solve for everybody. So I would say definitely take a look at the menus. And honestly, if you are listening to this and you're looking at Get Started and you're like, yeah, but you're not getting— hit us up, let us know, give us feedback, tell us.
Yeah.
We want to be as connected to the community with this site because yes, we built the site, we're HubSpot, it's our site, but it's our site in ownership. In reality, the site is for the developers and it's really theirs as an information resource. So tell us what we're missing on there and what you need, because we want to make sure we provide it for you.
Yeah, I would agree with AJ about the Get Started thing. I think that that's like the biggest takeaway. That's why it's top of the website, HS Get Started.
And I like how it caters too to like learn the basics if you're like— so it takes into consideration that level of, uh, technological level of the individual. So yeah. Oh, that's fantastic. Well, I, I gotta say, thank you both, uh, for coming on and talking about this because it was something where, I mean, obviously being related to one of the people that worked on it, uh, directly, I, I do realize the amount of work that went into it. And both AJ, Brooke, and then Ashley as well, um, I really wanted to have as many of you as humanly possible come on and kind of talk about it and point out some of these really fantastic things that, um, I hope that other people see like I'm seeing it when I'm looking at it and noticing these things and like the, the thought that goes behind all of it. So huge thank you to both of you and Ashley as well, um, for doing this because again, the, you know, the, the, the iteration from what it was before to now in the time frame with the amount of care It is an equation that I can only imagine had very, very little room for miscalculation. And if this is the end result, well beyond anything anybody could have ever imagined. So thank you both for making this humanly possible. And AI possible too. I'll give Cursor a little bit of credit. I mean, that's fine. I mean, if we have to, but, um, but no, thank you both so much. Um, Is there anything else that you guys wanted to shout out about the site or any other thing you're working on that you wanted to mention?
I think just the last thing I want to say is like also check out naturally the developer documentation. The Netlify platform is powering it. It's a beautiful solution. That team also worked very, very hard to get everything running and going in the way that it is. And I mean, I'm floored by their output as well. It's a fantastic site. And Like, it really was a lot of coworking and just cross-functional organization just to stay on track together to make sure that we could all launch around the same.
I just wanted to tease that I am currently working on something as part of our DevRel Labs initiative here at HubSpot that is specifically tailored to AI. So just, you know, look for that in the coming few months.
And check out the blog as well 'cause there's plenty of information. I mean, there's multiple places at HubSpot, not just the Academy and other, you know, there's stuff on the blog as well that it's just, I mean, there's a wealth of knowledge there and it's like every one of them that you can get your hands on and like dig into is only going to be a net benefit for people. So check that out as well because Brooke did a fantastic job and put a lot of work into that. So yeah, definitely.
And I do want to give one more special shout out to both Brooke and Ashley, because one of the things with working on this project is we kind of all had our ideas, but then there were times where like we had to break away and just kind of silo and work in silos. And it's almost as if like we were all reading each other's minds, because every time something was brought up and like surfaced internally, like, hey, I finished this, what do you all think? It was like, that is literally what I was thinking in my head of doing. Like, I It was like one of those things, it's like, get out of my head. Like, it was crazy.
Like, it's AI, it's spying on all of you. That's why you just don't realize it yet.
I was probably gonna get ads soon for it on something.
It's like my Google Home, essentially. It's doing the same thing. Yeah, yeah, yeah. But no, thank you both. I really appreciate it. And, um, you know, as always, without, um, without people listening, without people sharing, uh, that's the only way that we, uh, as a podcast, you know, get kind of recognized. So you always— the only website you'll ever need, of course, is going to be devsafterdarkpod.com. Uh, you'll see a list of all the episodes, a little bit about the show. I plan on putting some shorts up there as well because, uh, I'd be remiss if I didn't take some of the dumb stuff I say and put it into short little, uh, YouTube clips, uh, and, uh, so everyone else can laugh at me like my co-workers do. So, uh, you'll be able to check that out very soon as well. And then of course Like I said, multiple, multiple paths that you can learn at HubSpot, and you should definitely not sleep on this one. And that's @HubSpotDevelopers, our YouTube channel, where you're going to find videos from not just ones like this from our podcast, but Brooke as well and others, you know, people from the community. So you're definitely gonna wanna check that out as well. And like I said, subscribe, like, it means the world to us. And, you know, we really, we wouldn't be able to do this if people weren't watching. watching. So we really do appreciate it. And, you know, I'll kind of leave it with this because we're giving shouts out. And you probably noticed that in the last couple episodes, we, you know, Dennis will be back. So Dennis, you know, we, we miss you and love you, boo.










