XenForo & Legacy Code

James

Well-known member
I think every forum solution out there suffers from having legacy code in the software. It's something that's unavoidable without constantly rewriting your architecture.

With this in mind, do the XF devs feel that XF may contain some legacy code within a few releases (obviously with the up-to-date technology currently used, we're probably looking at XenForo 3/4), or is it a priority of the devs to keep on top of the moving technology and move the software along with it?

Of course, if it wasn't a priority it'd be understandable, and it could be a problem to make major changes due to the development community, but I figured I'd ask the question.
 
I think every forum solution out there suffers from having legacy code in the software. It's something that's unavoidable without constantly rewriting your architecture.

With this in mind, do the XF devs feel that XF may contain some legacy code within a few releases (obviously with the up-to-date technology currently used, we're probably looking at XenForo 3/4), or is it a priority of the devs to keep on top of the moving technology and move the software along with it?

Of course, if it wasn't a priority it'd be understandable, and it could be a problem to make major changes due to the development community, but I figured I'd ask the question.

I do not think legacy code is a bad thing.

The community, customers, and developers need to adjust to some status quo of things. The reality is, that, technology keeps changing every week. Trying to catch up with that is going to be both annoying and futile.

Just look at the change from YUI to JQuery, other than fanboyism I would argue we didn't get anything significant from that. Today it is Zend Framework, tomorrow, Zend Framework will be not the best thing out there and there is going to be a more interesting platform.

We need code to be STABLE for us to develop our solutions. Imagine that after only 1 year Kier said "you know what, this framework is more modern, and we did a full rewrite for it".. oh .. no features, because we are using more modern technology that will enable us to develop better features in the future (...)

At some point you have to hold with whatever you have and just grow over that. Look at what the "rewrite" of vB has brought them. Almost all templates broken, a lot of addons broken, the feedback has not been particularly good. One person cannot go through that every year, or anything near frequently.

So .. we NEED legacy code. STABLE code. In such a way that ...
... more features can be added
... the addon base can grow
... the templates can grow

We cannot have that if core things are changing often. And maybe, in 5 years, we can start talking about a rewrite to whatever the best technology is out there. And a migration plan. Because that is how IT works.

Please note legacy does not mean stagnate, a lot of minor improvements can be introduced once the architecture is ready. For vBulletin, they added the inline mod, they added AJAX features .. a lot of things that gave the software a big jump without actually having to compromise the legacy code. But there is a time to refactor and a time to grow. A cycle to improve, and a cycle to impress. Balancing them out is the key.
 
But there is a time to refactor and a time to grow. A cycle to improve, and a cycle to impress. Balancing them out is the key.
Exactly, and this is what I was enquiring about :) I agree with your post completely, and making changes to the architecture is going to create hell and we're not going to have any mods in a couple of years if that's the case. I was just wondering what their stance was on this matter ;)
 
I think that happens when we hit 2.0, the time when things need major reworking across the whole board. However XenForo definitely came in hot with the latest standards that are becoming adopted everywhere. I imagine the codebase we have now will do us well for a few years before completely reworking it would need to be considered.

Otherwise, I can see "minor" major changes in 1.x releases in certain areas, such a when something takes too long of a time to process and could be improved but doing it in a 1.0.x release would cause more problems. Thankfully with the way XenForo is built, I would assume such things will not be that difficult.
 
Top Bottom