Disappointed about 5.7/5.8, is it worth starting a major new project on 5.6 in 2017?

Permalink
I work as a professional web developer for a company that operates several large sites, and often freelance setting up sites for other businesses.

I've been through plenty of CMS, and love C5. Haven't been using anything else in 5+ years.

The love has started to falter with 5.7/5.8 though, despite my best efforts. I've honestly tried to get on board with both versions at least five times now, each time setting up a full real world site and starting to customize it.

I gave up each time and reverted to 5.6. The code base of the new versions is AWESOME and super clean. But the UI, to me, is objectively worse in so many ways big and small. I don't usually mind bold design changes, never been the type to gripe about moved cheese (I build UIs too, so I know how it is). But the new paradigms don't work for me, nor my colleagues, at all. Things that were a breeze and grouped in perfectly logical locations are now scattered in sidebars. So many UI things feel like they've been broken for no good reason. Also 5.8 is actually slower than 5.6 on our servers, for whatever reason (I realize that is not the norm and can probably be fixed). Plus we'd have to purchase all templates and add-ons we have for 5.6 again, a significant expense.

We need to relaunch our main web site this year, a major investment of time and effort that should last at least 4 to 5 years.

Is it feasible to build such a site on C5 5.6 at this point? Are there any major arguments against?

Is the 5.6 branch still in active development? Does it still get security updates? Is it still seeing significant usage? Do other users feel like I do?

... or is it time to look for a different platform if you're not on board with where 5.7 & 5.8 are heading? That would be so sad.

I looked through the forum but the latest I managed to find on the topic was from 2014.

pekka
 
JohntheFish replied on at Permalink Reply
JohntheFish
5.6.3.4 has not been updated for a long time. But that is primarily because it hasn't needed to be. It still works. Its reliable. It doesn't have many of the shiny features of 5.7 or v8.

I find my new projects split about 2/3 on v8 (or 5.7), and about 1/3 on 5.6.3.4. Theme development on v8 or 5.7 is nicer than on 5.6. Simple block development is about the same. Anything else is usually more complex.

Core versions since 5.6.x are still buggy at the edges. The basic web site building stuff is OK. The functionality that pushes the limits is risky and unless you are on a very long term project that can wait for core releases to fix bugs round the edges, you need to be able to get into the code and work round them or patch in bug fixes from GitHub.

Each new core version continues to bring breaking changes, usually quite small, but it all adds up if your own code happens to use whatever changed.

Whilst all the ideas for new features to extend the core are exciting, I really feel more attention needs to be given to just getting everything currently there more stable, fixing bugs and also toughening up the engineering to make it better able to survive bugs. The php error 'Call to a member function on a non-object' is far too common.

Too much of the core works on the assumption that surrounding core modules work correctly, rather than defending itself against the chance that surrounding core code may not be working correctly.

Relationships between data and code in v8 are complex, so when something goes wrong it can leave skewed entries in the database and the core then can't cope with the broken data. The relationships are typically too complex to be fixed easily with a dive into phpMyAdmin and a site then has to live with with a legacy of consequences (or be scrapped and start with a clean install). A core that assumed data could be damaged would provide some data cleaning and repair.

5.6 didn't provide any of that failure-proofing, but it is only 10% the size and everything fitted together more simply.

The thing many developers seem to forget is that as far as the general public browsing a web site is concerned, as long as it delivers the content they want and isn't too slow, they don't care what it was built with. The underlying technology is only relevant to the developers and site owners.

A site should be built with v8 or 5.7 where it works for that site's purpose and the developers involved are comfortable building with it and the owner is happy living with it. Same for 5.6.
pekka replied on at Permalink Reply
pekka
All this makes a lot of sense. Thanks!

Do you know if 5.6 is still supported security-wise? As in, should a vulnerability become public, is there a good chance there will be a fix available?

There is very little that I missed from 5.6, so that would definitely be a good way forward. Plus we have many hundreds of dollars in extensions that we could go on using.
JohntheFish replied on at Permalink Best Answer Reply
JohntheFish
If 5.6 has all the features you need, then I wouldn't worry. Some addon/theme developers are no longer providing support for 5.6 addons, so check that first. The worst that could happen in the future is a host ends support for php5.6 and insists on php7. There is a workaround for that, but it isn't officially supported.

The main issue as a web developer is that some potential customers view your site (and mine) as part of a CV and like to see the latest and shiniest - which reminds me, my own support site is still running happily on 5.6.3.4 :-) . I still get plenty of new business spread across versions 5.6 to 8.1 split as above.

With a large number of sites still on c5.6, no upgrade path for anything beyond basic content and new developers only knowing v8, there may even be a growth in opportunities for those able to support 5.6 sites.