XF2 developer feedback

Lukas W.

Well-known member
I held this feedback back for quite some time, but now that I am close to putting my project online for letting my friends test it, I wanted to take myself the time to give you guys some feedback from a developer perspective.

So far I have accumulated a little over 12.000 lines of php code and nearly 500 lines of javascript code throughout my project and writing nearly every single one has been fun. It is a vast improvement to XF1. While writing add-ons in XF1 has been fun in the first months, I rather quickly grew tired of it. Programming difficulties seem to grow exponentially with the complexity of the add-on and I had to do so many workarounds to get stuff working the way I wanted it to, because there was simply no easy way to get it done out of the box. Weird rewrites if you wanted to extend this bit, or that bit, no place to directly hook into various save positions, plainly painful to work with for a large period. One of the reasons my interest dropped - as mentioned before - rather quickly and I decided to spent the little amount of time I have each day on other activities.

Nearly all that pain has simply vanished now with XF2. No matter what I want to extend, no matter what I wish to reuse for my own purpose, everything feels easy to hook into, easy to understand and easy to rebuild. I feared that my first excitement would fall off quickly after the "wow, this is a brand new experience"-feeling wears off, but it didn't. I went from simple controller extensions to avatar uploads, custom login providers, custom payment providers, extended the editor, and so forth. The rise in difficulty was absolutely neglectable and in no relation to the seeming complexity growth of the task. It was literally the opposite experience than in XF1.

Over the course of the years I've played around with different softwares, modded bits and pieces here and there, but nothing kept me as excited as XF2 did. If someone has ever done a mod for SMF, compare that experience to doing an add-on for XF2 and you get a general glimpse on the impression I want to bring across here.

However, now that I praised you to heaven, I want to drop some criticism as well. While most of the code in XF2 is self-explanatory if you know what is going on (e.g. if you have some experience in php), the in-file documentation seems to be gone. I can't really tell if it is just a feeling, but to me it seems that the number of comments and hints has vastly decreased. It is mostly no problem for me, but I can imagine that this brings great trouble to less experienced coders or to people, that are not so familiar with the system itself. Getting used to it took me admittedly a bit more time than XF1.
Especially unpleasing was working with the container system of the XF-App. Whenever I saw that something was drawn from the app container, I normally utter a sigh, cause I know it'll take me quite a few minutes to figure out what exactly it is this time, where it comes from, what is stored that, what it's capable of, etc. It really lacks explanation or documentation in every sense, or - to not do you any wrong here - it is so well hidden, that I haven't been able to find it.

Enough of the harsh words though for now. I wanted to thank you for the great work you've done with XF2. Rewriting the complete code base has definitely been worth the effort and I am quite sure that I wont grow weary of working with XF2 anytime soon. Big thank you, you've done an amazing job.
 
Last edited:

AlexT

Well-known member
I am not sure if I remember correctly but I think there was a time (vBulletin?) when Kier & co. successively updated the function documention etc. after the initial stable release.
 
Top