Over the past few months, we have been adding a lot of key features to the platform—some released, some to be announced very soon. These new things have helped round the service into shape, but the opportunity and challenge now will be to pull it all together and ensure dev.to is a cohesive environment capable of connecting developers with great ideas, knowledge, and peers, without being cluttered.
With that, I spent the weekend revamping a few areas of the site that had been sitting around in an "minimum viable product" state for a long time. They needed a few touches in order to be truly useful (and scaleable).
At the end of this post I have a note about the latest in our open source project.
You can now follow podcasts as though you'd follow users or tags on the site. Once you follow a podcast, for example, Software Engineering Daily, their episodes will show up in your feed in a podcast section of your home feed when they have released new episodes on that day.
The podcast section has been around for a while on the site, and while always promising, it lacked some key functionality and was buggy. There are still some kinks to work out, but I hope this will give it some momentum. Being able to discover, listen to, and discuss software podcasts on dev.to is a fabulous thing.
We currently pull in 65 Podcasts from around the developer world, all with consent from the podcasters and all using original source files so the podcasters get full credit for downloads through our platform. If you know any podcasts that could be added, help put us in touch with the folks who run the show!
I gave the reading list a fabulous makeover. You can now search and filter with ease, as well as "archive" posts that you no longer need (but still may want to retrieve later). There are additional filtering and sorting options that can be available soon, but the important part is the rewrite which will make additional features possible.
The new reading list is written in Preact and backed by an Algolia private index of your saved posts. It's blazing fast and will scale to as many posts as you care to save.
Save posts by hitting the
SAVE button in the list view or the
bookmark icon on a reading page. The lack of cohesion on this button is an example of work that needs to be done, but I plan on devoting a lot of time to the general usability of the site, great things to come!
It's only been a few hours, but I already find myself making much better use of my reading list. (Located on the left-hand sidebar of the home page). I cannot wait to usher in similar gains across the site.
The search functionality will be rewritten similar to the reading list. I'd describe the general effort as cohesion and design improvements. Expect a lot of great stuff in the near future—in addition to the brand new things coming soon. Improvements to the editors are also forthcoming, as are niceties like autocomplete on usernames and things like that.
While improved, these new changes may have bugs or missing features, feel free to open an issue.
The goal of "cohesion" is the toughest thing to manage in terms of our open source project. It's not always clear what the improvement should be. However, every improvement in terms of code readability, test coverage, etc. helps the overall velocity of the core team. If you can find some code and improve it locally, it is a major help.
We also continue to march forward in the "generalization" efforts of the platform. I believe this summer it will be feasible for users to stand up their own community sites if they'd like. Re-using our open source platform for a site about recipes or dogs or anything under the sun will be fun to see. I am also starting to feel like a private this platform could be a very useful internal tool for companies in order to guarantee privacy and extensibility for organizational communication and information distribution.
If you'd like to contribute to the generalization effort, the process is generally to find something that is hardcoded, and find a way to make it backed by environment variables or database tables. Many of the patterns for this have already been established, but we need to get in there and do the work.