Personally, I think that if it takes you one day per porter's handbook page you're doing it wrong. I'd recommend reading the overall sections familiarizing yourself with the architecture & underlying concepts. Then, move on to examining existing ports. Once you encounter something in an existing port that you don't understand based on what you've read in the handbook before, go look that particular thing up in the handbook. Use it more as a reference.
For example, there is no point in reading all the sections about "how to use perl", "how to use go", "how to use ..." if you know that you're going to port a python module.
Also, doing wins over studying with this sort of thing. There is no harm done by just starting to create a Makefile and going step-by-step. Use
ports-mgmt/poudriere-devel to easily test your ports. In many cases it will tell you what is not working out. Tools like
portlint
and
portclippy
are also helpful at times (and somewhat mandatory before your port gets submitted anyway).
Depending your experience with building software, it might also be helpful to start with something easier in the beginning. I don't know bpy but it could be a bit hairy in the beginning as I assume that you'll have to deal with the blender dependency which may or may not need different options etc.
Compared to other OS / ecosystems, I feel like FreeBSD has a very easy approach to creating & maintaining ports. I created my first port about a year ago and now it's seven (with more in the pipeline).
The TL;DR of this is: Don't get discouraged by not knowing things - none of us knew anything about anything. We all learned it - one way or another