Biff v0.7.4 has been released. This release mainly contains a bunch of stylistic and structural changes to the starter project. Upgrading for existing projects isn't crucial, but it wouldn't hurt to glance over the release notes + commits linked therein so you're familiar with what new projects will look like going forward.
For example, the biggest change is that
biff/start-system and company are now deprecated: since Biff's dependency injection/component system has such a small implementation anyway, I decided it makes a lot more sense to inline it into new projects instead of hiding it away behind a library function. This way it takes less effort to see how it works.
This points to one of Biff's design principles: I try to write the code in a way that supports learning and understanding. I don't want Biff to be a black box; I want people to be able to grasp how it's working under the hood. Towards that end I often think about which details are important for people to know about right away, and which can be tucked away behind library code until you decide to read some of Biff's source.
I've made a pass over almost the entirety of Biff's documentation and have brought it all up-to-date.
The Get Started section is more concise and consolidated. I removed entirely the bit that talked about the various libraries and such that make up Biff, since I figured it was redundant with the landing page and the reference section.
The tutorial has been rewritten for Biff v0.7.4, as has the accompanying git repo. The project in that repo is also easier to start up since the
config.edn file has been checked into source, which has been a point of friction for at least a few people. The code diffs in the tutorial are easier to copy and paste now because I discovered the
user-select: none CSS setting.
The reference section has also been brought up-to-date with Biff v0.7.4, and there are a few larger changes:
Finally, I've added a brand-new section: Essays. I've just published the first essay there, mentioned above. Later I intend to create additional sections for how-to articles and videos, respectively.
If you peruse the site, you may also notice (depending on how plugged into Biff you are) that I've redesigned the whole thing. Biff is in a fairly polished state right now, and I wanted the website to reflect that 🙂.
Finally, the roadmap: over the next month or two at least I plan to focus on writing/creating more essays, how-to articles and videos. I think that Biff's core features and documentation are sufficient for now and that the most leverage will come from marketing, basically.
I'm especially interested in reaching people who aren't yet in the Clojure community and using Biff as a way to bring them in, at least for those who do web dev. Partially this means I'll be writing essays with a non-Clojure audience in mind. I'd also like to learn more about SEO, as I think search traffic would be an appropriate channel to focus on for Biff.
This is my current content TODO list. Let me know if there are any items you'd be particularly interested in.
Published by Jacob O'Bryant on 19 Apr 2023