Building on Stacks: Why I Launched an NFT-Gated Blog (And Why You Should Too)
I've been following the Stacks project and ecosystem for a while. Since the beginning, I've always wanted to build something on it because I always felt it had a lot of potential. However, I would end up postponing those plans because I thought the timing was wrong. The technology was too brittle, the developer experience was behind, documentation wasn't in place, and the users weren't there. In summary, the project wasn't mature enough to dive into, so I end up abandoning my projects. But things have changed.
Stacks has undergone a massive transformation in the past couple of years, and the community around it is now flourishing. There are thousands of daily transactions on the network, a significant amount of capital deployed in various protocols, and many institutional players enthusiastic about what's happening. On the code side, tools are way more solid than they used to be, the developer experience has improved a lot, and you can now set up workflows to take ideas from your machine to the world with confidence. These are signs of one thing: the time to build on Stacks has come!
So, I embarked on the journey, and it's been quite enjoyable. I'm surprised by how things changed compared to when I first tried building on the platform around 2019. Today, I can quickly spin up a local Stacks network, run tests for my contracts, and create a full authentication flow. I discover new things every day, and I've never been so excited about a tool since the beginning of my career more than a decade ago. But, of course, it's not all sunshine and roses. While working on Stacks today is viable - you can see many complex applications in production with good UX - if I compare it to my experience working as a web developer, I can only help but feel we still need to catch up.
The reasons are various. I'm more experienced and knowledgeable about traditional web development than blockchain development, and the industry is way more mature. The challenges I face when working with the web are well understood, and the community has extensively discussed the many paths to solving them for quite some time now. In blockchain development, that's only sometimes true. Although Stacks has seen a flourishing renascence for the past years, it is still young compared to other development ecosystems. So, the "collective mind" is still in its infancy. Builders are still connecting the dots and understanding how blockchain technology and Stacks fit into their processes and workflows. Everyone researches way more than they would need in a typical Web2 company. Everyone is still learning. At this moment, understanding how everyone is learning is vital.
When you look at where knowledge about Stacks lives today, you'll notice content is too sparse. You have technical documentation, which is only sometimes exhaustive or easily discoverable. You have StackOverflow questions here and there, some tutorials hanging around different blogging platforms, YouTube videos, experimental repositories with code, and topics on the Stacks Forum. However, there needs to be a concise place to start aggregating this knowledge. For less experienced developers, connecting the dots and understanding how to coordinate the different layers when working with Stacks is more challenging in the current reality. For the more advanced developers, the problem is the lack of space to discuss best practices, special techniques, how to approach trickier topics like security, blockchain indexing or even on the business side, how to effectively build teams around Stacks apps, how to go about tokens, and so forth.
That's just a phase in the natural flow of maturing developer ecosystems, and I'm confident this will be fine with adoption. The community will create an abundance of content about Stack. But still, as a builder doing a lot of discovery myself, I needed a place to aggregate all the knowledge I was collecting from all those different sources. On the other hand, I'm doing a lot of experimentation, and I have ideas I'd like to share with others to get some feedback, but I need help figuring out where is the best place to share those ideas. Or I know: it is the blog! The blog has been THE TOOL for sharing knowledge and discussing ideas in the programming world. Of course, creating one dedicated to Stacks made sense!
I remember when I was first learning to program. Blogs were where I'd learn new techniques, follow the latest trends, and discover new tools. And more important than all that, they allowed me to understand how the much more experienced developers would think about technical problems. Blogs are awesome! But I don't follow or know any blogs about Stacks and Clarity or its ecosystem. Not even Bitcoin, although I'm pretty sure if I start digging, I'll find many (please, send me suggestions!). I know there's Sigle, a blogging platform and a very early Stacks project, but going through their explorer page, I couldn't find much going on even there. So it became even more apparent: it is time to blog about Stacks!
But you know what that old problem is with blogs and developers, right? A developer wants to start a blog. They then find the latest tools for authoring blogs. They try a bunch of them, find issues with them, hate themselves for even considering WordPress, and finally decide they need to build their own thing. When the tool is finally ready, they don't want to write anymore. Maybe a "Hello World" post or a few posts every year - that's it. Well, I want my blogging about Stacks to be different from that. I want to dive into the ins and outs of blockchain development and record every step of the way. Sharing knowledge is the best way to become a technology expert, and becoming an expert in blockchain development will come in handy in the next few years. How about I ensure discipline, write consistently, improve my technical communication skills, and so on? We blockchain people know the answer, right? Incentives! I need the right incentives, and the right incentive for writing more consistently is having an audience that keeps me accountable. Wait, so now everything went full circle! I want to write about Stacks but to do it; I need incentives. But Stacks is a programmable incentive machine. So, I should be able to use Stacks to help me write more about it. BOOOM!
The result is this blog. Because I'm sure there are many people with infinitely more knowledge than I do about the things I'll write about, I made it an open-source template. One of them may want to write more about Stacks, too. They may also need incentives. Who knows?
But yes, this blog is based on a simple template you can use to build on top and explore different ideas. It features the key elements of creating a private community to incentivise you to write more. An NFT that works as the entry pass for the community, for which you can charge a fee. The tools to create public & private content based on whether you're an NFT owner. The tools to allow a secondary market for the community's NFTs. And a technology stack that is easy to maintain.
If you would like to try it out, head to stxdev.xyz's Github, follow the getting started guide, and in a few minutes, you can be up and running your own NFT-gated Stacks blog.
For my version of the blog, the stxdev blog that you're reading now, here is what's about to come:
- How to do authentication in Stack web applications;
- A series with a technical overview of prominent hacks in the Stacks ecosystem;
- Monolithic Smart Contracts vs. Micro Smart Contracts - the tradeoffs;
- How to work with Smart Contract templates;
- An analysis of the TVL vs Value Transacted ratio of the prominent DeFi protocols.
I'll also share all the developments of my side-project, Felix.
I plan to make those articles available for the blog's NFT holders from the moment they're minimally understandable. Then, they will be discussed and improved within the private community on Console and released to the public a few months later. If you're interested in a few of those topics, make sure to mint your blog's token sooner rather than later. Head to the membership page.
Thanks for reading, and if you liked it, make sure to follow me on X: @vicnicius.