Introduction
Many have asked why I embarked on the journey to start Sublinks. In this article, I summarize the key events and motivations that led me to create a new project instead of contributing to the Lemmy Core. My decision stems from a combination of personal experiences, community interactions, and technical challenges that shaped my path in the world of online community management.
Starting Discuss.online
My journey began with the inception of Discuss.online, spurred by my dissatisfaction with Reddit and involvement in the Rexxit movement of 2023. Anticipating a significant exodus from Reddit, I prepared an extensive infrastructure to accommodate a large influx of users, expecting many to follow in pursuit of a more fulfilling online community experience.
Establishing the Official Lemmy Admin Matrix Space
In the course of managing Discuss.online, I realized the need for a more structured platform for Lemmy administrators. This led me to establish a new Matrix Space, intended as a centralized forum for administrators to convene and exchange ideas. After reaching out to the Lemmy core developers and receiving their endorsement, the old space was closed in favor of this new, organized platform. A subsequent PR I submitted to update all relevant links to this space was also approved, significantly aiding in its rapid growth.
Identifying the Need for Better Moderation Tools
Interacting with various administrators exposed a common frustration regarding the inadequacy of moderation tools on Lemmy. To address this, I formed the Lemmy Moderation Tools community and actively sought feedback on the community's most pressing needs. This led to the formulation of a detailed project plan, which I shared for community feedback.
Creating SocialCare.Cloud
Through these discussions, the concept of SocialCare.Cloud was born. My vision was to extend Lemmy's capabilities with an external tool designed to enhance moderation and collaboration. The development began using PHP, MySQL, and the Laravel Framework, aiming for quick deployment. However, I encountered limitations with the Lemmy API, which hindered the integration of additional features. Contemplating an overhaul of the API, I ultimately decided against it due to its extensive use in mobile apps and the complexities involved.
A Change of Mindset
Faced with these challenges, my frustration grew. Despite significant efforts to revolutionize Lemmy's moderation, I found myself at a crossroads. This led me to pivot my focus, deciding to learn Rust and contribute directly to Lemmy's core.
Contributing to Lemmy
Conversations with Lemmy's core developers about potential enhancements in moderation tools revealed a lack of a structured roadmap, pending further funding. While I was free to propose extensions to the core, there was no assurance of their integration.
Abandoning SocialCare.Cloud
Given the daunting task of creating a new API and reworking the database structure, coupled with high operational costs, I reluctantly decided to abandon SocialCare.Cloud. This decision was exacerbated by the realization that community contributions might not suffice to sustain the service.
Upgrading to latest
During this period, I maintained my instance on Lemmy's latest
tag, unaware that it represented the latest development branch. An unexpected update to version 0.19, which altered date formats in the API, led to my instance being delisted from join-lemmy.org due to incompatibility with their crawler. This significantly stunted the growth of my instance, as I was no longer visible on a major discovery platform for Lemmy communities.
Sublinks
In the wake of these experiences, I contemplated shutting down Discuss.online but instead chose to innovate. I embarked on developing Sublinks, a backend platform to replace Lemmy on my instance while maintaining compatibility with Lemmy's API and ActivityPub. The initial idea was to name it Fedlinks and a domain was purchased, but a naming conflict led to the final choice of Sublinks.
Shared Frustrations
Many administrators in the Matrix channels shared my frustrations with Lemmy. Discussions about whether to contribute to the core, start something new, or shut down instances were common. In revealing my plans for Sublinks, I found that several were intrigued and considered similar paths for their instances. I had commitments from other instances to switch to Sublinks upon its parity milestone's completion.
When I mentioned the project to the folks over at Lemmy.World, they were glad to help out. They shared quite a few of my concerns about features needed for large scale moderation and scaling. One of Lemmy's admin, Rooki (aka Pdzly), immediately started contributing code - he closed 9 issues within a couple days (he's a beast).
Growth in contributors
In revealing my plans for Sublinks, I found that several admins were intrigued and considered similar paths for their instances. In a move to advance Sublinks, I enlisted the help of two friends. Kenny, with his expertise in front-end development, and Joe, adept at building backend services, came on board. My focus remained on refining the core functionalities of Sublinks, ensuring a robust and efficient system. The project quickly caught the attention of the broader community due to the support of Lemmy.World. As word spread, enthusiasm and interest in participating surged. This influx of interest led me to swiftly organize the project's structure and objectives. In a move that reflected both the project's ethos and my belief in collaborative development, I decided to open-source Sublinks, inviting a broader community contribution. Within just a month, the project grew from a solo endeavor to a vibrant team of about 15 members. This diverse group brought a wealth of skills to the table – from coding and planning to design and strategy. Each contributor played a unique role in shaping Sublinks, turning it into a collective project driven by shared passion and expertise.
A notable development in this journey was the involvement of the creators of two major Lemmy themes, Pangora & Photon. Disenchanted with their experiences with the Lemmy Core team, they decided to cease their projects and joined forces with us. Their decision to contribute to Sublinks was a significant affirmation of the project's potential and direction.
Today, Sublinks stands as a testament to global collaboration and shared goals. We hold weekly touch base meetings, connecting people from all corners of the world. These sessions are not just about tracking progress; they're a celebration of a shared vision and collective effort towards building something truly impactful in the online community space.
2024/01/26 edit: Added additional details about the involvement of Lemmy.World.