Jump to content

IPS 4.0 backward compatibility


steadyoptions

Recommended Posts

I read on different occasions that 4.0 release will require most hooks, skins and third party applications to be redone.

In my opinion, this is completely unacceptable. One of the first rules of any new software release is backwards compatibly. When I was working as a Software developer, people got fired for breaking backward compatibility. This is so wrong that I don't even know where to begin.

Of course this is very good news for all skin and hooks developers who can charge money for new versions of the skins and the hooks. But very bad news for forum owners who already paid for all those improvements and now will have to pay again for the same stuff.

Link to comment
Share on other sites

  • Replies 101
  • Created
  • Last Reply

nothing forces a person to upgrade.

personally the way the core app and hierarchy is changing is worth more to me than any mod I have.

and I think its due to these hierarchy/core app changes that is what would cause compatibility issues.

most devs I have seen talk about it didn't plan to charge differently or extra, of course thats not a definite item just what I have read so far.

Link to comment
Share on other sites

Why would you have to pay again? If it's a paid hook / mod you will in most cases get the update for free (assuming the mod author updates it). The only time I recall having to pay again was when the mod was significantly upgraded and I think there was an upgrade price rather than paying in full again.

Tip from a long time user. Don't upgrade to Version 4 as soon as it comes out. Wait for several updates before even contemplating upgrading. Also wait for any critical hooks / mods / skins to be updated as well. Also a good idea to set up a test board. That way you can check whether hooks and mods still work.

As for backward compatibility. I do Beta testing for a major 3D app company. Pretty common for plugins not to work in the new version. Plugin developers have to update their plugins and I've never had to pay to get the updated version of the plugin.

Link to comment
Share on other sites

With web software, it's extremely difficult to make something backwards compatible for so long. The '3.x' codebase has been around for 5-6 years, and the current skin has been around for 2 years. The web moves very fast - new technologies arrive that enables better software to be built. For example, take a look at the changes that PHP itself has undergone in those 5 years. Even PHP itself isn't backwards compatible indefinitely.

We have to move with the times. We can't build a framework using these new updated technologies while still catering for 5 year old code. The web rarely works like Microsoft Windows (where they control every aspect of the platform). To move forwards, we have to cut loose and work with modern code. We don't do it often, but 4.0 is one of those times. The code we're writing now sets us up for the next 5-6 years.

So, the key then isn't maintaining backwards compatibility, but making the process easy. We'll be helping our development community by releasing preview software well in advance of final to give them time to update, by providing ample documentation that will help, and by being on hand to assist them. We've already had a couple of developer chats about key new functionality, and there'll be more of those as we get closer to a beta version. Remember, it's in our interests that developers update their products too :)

Link to comment
Share on other sites

Why would you have to pay again? If it's a paid hook / mod you will in most cases get the update for free (assuming the mod author updates it). The only time I recall having to pay again was when the mod was significantly upgraded and I think there was an upgrade price rather than paying in full again.

Tip from a long time user. Don't upgrade to Version 4 as soon as it comes out. Wait for several updates before even contemplating upgrading. Also wait for any critical hooks / mods / skins to be updated as well. Also a good idea to set up a test board. That way you can check whether hooks and mods still work.

As for backward compatibility. I do Beta testing for a major 3D app company. Pretty common for plugins not to work in the new version. Plugin developers have to update their plugins and I've never had to pay to get the updated version of the plugin.

This is definitely a good advise, and it probably applies to most products, not only software.

As for paying again - here is just one example:

http://www.ipbforumskins.com/forums/topic/6538-skins-and-ipb-40/#entry30158

"All skins will need to be repurchased for 4.x as they will be coded entirely from scratch."

Maybe it is different with web design. I was developing real time firmware, and backward compatibility was always a number one issue. If we sell our firmware to a customer and he developed his applications on top of it using some APIs that we provide, those applications have to work with all new releases. I'm sure the customers would be very unhappy if they had to change their application after each firmware upgrade, not to mention to code it from scratch.

Link to comment
Share on other sites

One of the first rules of any new software release is backwards compatibly. When I was working as a Software developer, people got fired for breaking backward compatibility. This is so wrong that I don't even know where to begin.


Let me look up “Backward compatibility”:

In telecommunications and computing, a product or technology is backward or downward compatible if it can work with input generated by an older product or technology.

And I have no doubt, that IPS will deliver that with the 4.0 release (or any other major version jump). You will be able to upgrade every existing board and convert all the old content (like forum posts, settings and the like) without loosing any data.

Similarly, when I upgrade Microsoft Word, I expect that every Word file I have on my computer still opens. I do not, however, expect that every third-party plugin, that was every built for any version of Word will continue to work for every future version of Word. That’s not only unrealistic and impossible (because the original software make has no control over what all the third party developers are actually doing), it would also result in inferior software, because the software maker would be stuck forever with everything the have setup in version 1.0.

And as Rikki pointed out, on the web it's even impossible to maintain original code forever. Just as the desktop OS changes and the desktop software (and all third-party plugins) need to adapt to that individually at some point or another, the underlying software on the web (like PHP) also change and IPS has to continue their software to make the best out of it.

Link to comment
Share on other sites

opentype hit the nail on the head.

Our software is backward compatible insomuch as that old data will be retained and updated as needed.

What you are talking about is allowing third party contributions, which we have no control over, still working. This isn't backwards compatibility, this is maintaining external APIs indefinitely until the end of time. It isn't feasible. For instance, the way our hooks system operates, both on the surface and under the hood, has been completely overhauled and we feel it is infinitely easier to use and more flexible than in the past. We couldn't do this if we made hooks work identically to previous releases. Action overloader hooks in previous releases would identify the classes to overload, which is fine. Those classes no longer exist in the new version - we moved away from "something_somethingelse_onemorething_thisistheclass" to namespaces, now that we can support a more modern release of PHP. Subsequently, it's simply not possible, without crippling our new version, to do such a thing.

The skin is 100% new from the ground up, so there is no way to make previous skins work. The same templates don't exist. We are using jQuery instead of PrototypeJS. The skin is now responsive. We are using far fewer images. It's just not possible to make those skins work.

At major releases (i.e. x.0.0) it is time to make a cut with the past and modernize our codebase for the future. :)

Link to comment
Share on other sites


Let me look up “Backward compatibility”:

And I have no doubt, that IPS will deliver that with the 4.0 release (or any other major version jump). You will be able to upgrade every existing board and convert all the old content (like forum posts, settings and the like) without loosing any data.

Similarly, when I upgrade Microsoft Word, I expect that every Word file I have on my computer still opens. I do not, however, expect that every third-party plugin, that was every built for any version of Word will continue to work for every future version of Word. That’s not only unrealistic and impossible (because the original software make has no control over what all the third party developers are actually doing), it would also result in inferior software, because the software maker would be stuck forever with everything the have setup in version 1.0.

And as Rikki pointed out, on the web it's even impossible to maintain original code forever. Just as the desktop OS changes and the desktop software (and all third-party plugins) need to adapt to that individually at some point or another, the underlying software on the web (like PHP) also change and IPS has to continue their software to make the best out of it.

This is actually a good example. Think of it this way:

When you upgrade from Windows 7 to Windows 8, don't you expect all products (including non Microsoft products) to work on Windows 8? How would you feel if after the upgrade, some of the products stopped working and you would be required to re-purchase them?? How would you feel that after you upgrade your Apple IOS, some of the apps stopped working?

I'm not saying that you have to keep the old code. But what IPS say is that the new code is replacing the old one, not written on top of it.

The bottom line is that to me as an end user, it doesn't really matter. I expect all products that work on the previous version to work on the new one, and this is not the case. As a minimum, I expect backward compatibility from 4.00 to 3.xx.

As a software developer myself, it is even more difficult for me to accept why it cannot work. I know this is a big challenge, and like I mentioned, this was one of the biggest issues for us in any new release. It just looks that IPS decided to go the easy path by not maintaining backward compatibility (or maybe this is what third party developers asked them to do so they can charge for new products "coded entirely from scratch"?)

Link to comment
Share on other sites

This is actually a good example. Think of it this way:

When you upgrade from Windows 7 to Windows 8, don't you expect all products (including non Microsoft products) to work on Windows 8? How would you feel if after the upgrade, some of the products stopped working and you would be required to re-purchase them?

Sounds like what happens to Microsoft Office every three years. Pretty sure I pay for it every single time.
Link to comment
Share on other sites

But what IPS say is that the new code is replacing the old one, not written on top of it.

Brandon has explained why this is necessary.

I choose good software over what you call “backward-compatible” software anytime.

That's why I don't use Windows. ;-)

or maybe this is what third party developers asked them to do so they can charge for new products "coded entirely from scratch"?

Please don't create a conspiracy theory here.

A very good thing about the IPS software is that they have a subscription model that offers upgrades free of charge as long as you have a valid license. Just because you found one third-party developer who will charge for a new version, doesn't make it a valid complain about the IPS software or the majority of software available on the market place.

Link to comment
Share on other sites

Steadyoptions,

What everyone is saying here, all of your 1st party IPS content, posts / topics / members / attachments / etc, IS backward compatible. You won't lose any of that content.

Microsoft, while a 'decent' example, doesn't really cover the bases since they are both MS products. But there is the fair point that they do release a new version, that you would need to re-purchase if you wanted, you couldn't upgrade to for free.

Ultimately, would you prefer a product that has the capabilities of the modern web, or a product that is crippled by the need to ensure compatibility with the previous version that can't fully embrace the modern web?

There are functional programmatic differences with 4.0 that make it difficult, if not completely impossible, to marry the two.

Some contributors will likely release free updates for their files while others will charge for a new rewritten version. That will depend upon the author along with the scale of the application that's being rewritten and their current pricing structure. There are 5 minute hook updates and there will be 15 day code-base rewrites for full on complex applications. What you're asking of all contributors is a 'lifetime' license for a $15 application, that doesn't have a renewal, you purchased how long ago? Applications that have renewals, well that renewal should already cover future development.

You are not required to upgrade to 4.0 right away, IPS will still support the 3.4.x branch for some time.

Link to comment
Share on other sites

The person wants to upgrade.

and if they want current mods to work they will have to wait until devs update.

so all they need to do is....... nothing.

and everything will work fine.

some devs may decide to charge new for a 4.0 version, thats up to them as they will be supporting multiple versions and the board owners need to decide whats important to them.

to be honest I seldom see devs doing that though, every one I have dealt with has always been really good about this stuff and I think (pure opinion) for the most part this will not be an issue.

Link to comment
Share on other sites

Yes, I would prefer a good and modern product over backward compatible, but ideally, I would prefer to have both. Hard? Maybe. But definitely possible, and please don't tell me otherwise because I have some experience in software development (only 23 years or so). IPS made an executive decision not to go for backward compatibility. It's a compromise that most users can probably live with, but still a compromise. In the industries that I was working at such a compromise would probably put a company out of business within 6 months, but maybe it's different in web development business.

Personally I don't have too many third party applications, but for those who have and still want to upgrade, it could be a hassle, both time wise and money wise. Is the developer I pointed out (the one who will charge for the upgrades) an exception or a rule? I guess we will find out soon.

Link to comment
Share on other sites

steadyoptions - so what you're saying is that 3rd party skins should still work when IPS does a major upgrade? If so I think you have your head in the sand as this would probably mean IPS couldn't do anything too radical to change the way IPB looked.

I expect to pay for new skins / new versions of skins for version 4 as there is a significant amount of work for the skin developer to do. Hooks and mods are different and these are usually easy for them to upgrade to the new version of IPB and I don't expect to have to pay for new versions of them especially if I'm on a 6 month / 12 month contract with them. With those ones I expect the new version to be provided for free just as I get new versions of various software programs that I use for free where I pay an annual service fee.

Link to comment
Share on other sites

steadyoptions - so what you're saying is that 3rd party skins should still work when IPS does a major upgrade? If so I think you have your head in the sand as this would probably mean IPS couldn't do anything too radical to change the way IPB looked.

I expect to pay for new skins / new versions of skins for version 4 as there is a significant amount of work for the skin developer to do. Hooks and mods are different and these are usually easy for them to upgrade to the new version of IPB and I don't expect to have to pay for new versions of them especially if I'm on a 6 month / 12 month contract with them. With those ones I expect the new version to be provided for free just as I get new versions of various software programs that I use for free where I pay an annual service fee.

Yes, this is exactly what I would expect, in the same way as I would expect all my products to continue working when I upgrade from Windows 7 to Windows 8 (unless it is something 10 years old). And yes, if I buy a skin, I expect not to pay for it twice. Of course I can always stay with 3.xx, but I assume IPS will stop supporting it at some point.

Seeing all the responses, I can definitely understand why IPS made the decision not to support backwards compatibility. After all, if the customers don't think it's a big deal, why bother?

Link to comment
Share on other sites

Seeing all the responses, I can definitely understand why IPS made the decision not to support backwards compatibility. After all, if the customers don't think it's a big deal, why bother?


People in this thread have taken time to give you elaborate explanations of why things are the way the are and why the should be or have to be this way.

You don't seem to be willing to understand any of that. You just stick to your unrealistic expectations and now you even blame the IPS customers for causing that IPS handles their upgrades in a (in your opinion) wrong way. That's just ridiculous.

It's always easy to blame everyone else if the world doesn't work the way you expect it to be. But never forget that there is also always a chance that there might have been something wrong with your expectations in the first place. But that's the great thing about online forums: One can learn something every day in every thread. But one needs to be open to listen to other people's arguments first.

Link to comment
Share on other sites

And yes, if I buy a skin, I expect not to pay for it twice. Of course I can always stay with 3.xx, but I assume IPS will stop supporting it at some point.

Ironically you're not using any custom skins at your forums so at this point in time you'll have nothing to pay when version 4 comes out.

Link to comment
Share on other sites

We need major rewrite so many things can improve and our sites will benefit from that.

If you want backward compatibility on a web script , you basically want a bloated slow software on your hand.

What we hope and believe IPB team will deliver is a modern and extremely fast loading script which is easy to extend and customise so we can get our developers customise it according to our needs.

Link to comment
Share on other sites

People in this thread have taken time to give you elaborate explanations of why things are the way the are and why the should be or have to be this way.

You don't seem to be willing to understand any of that. You just stick to your unrealistic expectations and now you even blame the IPS customers for causing that IPS handles their upgrades in a (in your opinion) wrong way. That's just ridiculous.

It's always easy to blame everyone else if the world doesn't work the way you expect it to be. But never forget that there is also always a chance that there might have been something wrong with your expectations in the first place. But that's the great thing about online forums: One can learn something every day in every thread. But one needs to be open to listen to other people's arguments first.

I apologize for having high expectations. I provide the highest level of service to my customers and I expect the same from others, but obviously I was wrong in this case.

You try to explain to me why maintaining backward compatibility might be a difficult task. As an end user, I don't care. This is a really simple concept, and it applied to any product:

1. I buy a product.

2. I buy or develop an application using the APIs that the product provides.

3. When the next release of the product comes, I expect that after the upgrade my applications will work seamlessly.

I'm not sure why it is so difficult to accept. Is it realistic to expect? Based on the responses here, probably not. But this is how it SHOULD work.

Link to comment
Share on other sites

I'd also like the cheap coil on my tuarus to work on my crown vic, after all they are both ford.

guess what?

it doesn't.

4 is a MAJOR release.

people who went from xp straight to win7 had many apps/drivers that (MFC printers good example) that did not work. SHould MS have not released 7 until third party app made itself compatible?

no.

Link to comment
Share on other sites

I'd also like the cheap coil on my tuarus to work on my crown vic, after all they are both ford.

guess what?

it doesn't.

4 is a MAJOR release.

people who went from xp straight to win7 had many apps/drivers that (MFC printers good example) that did not work. SHould MS have not released 7 until third party app made itself compatible?

no.

Not sure how ford example is relevant..

I would agree that VERY OLD products might not work. This is not an issue. The issue is if I purchase one of the new skins that work with the latest version (3.4.6) and then stops working with 4.0.0. Again, as a customer, I don't care if this is a major or minor release.

I have been in firmware development for over 20 years. My last company was developing biometric products. We had an old generation of products, and then decided to switch to a new generation. It was not a major release, it was a completely new product (firmware, software, platform - everything was designed from scratch). Many of our customers developed their own applications based on the old products. The new product could not leave our company without testing that every single application that our customers developed would work seamlessly on the new product. This is how it SHOULD work.

Link to comment
Share on other sites

The new product could not leave our company without testing that every single application that our customers developed would work seamlessly on the new product. This is how it SHOULD work.

Fine if you've only got a handful of customers to work with. Expecting IPS to make version 4 compatible with hundreds if not several thousand hooks and mods is totally unrealistic. That said I fully expect the mod / hook authors of the ones that I use (both free and paid) to provide a free update that's compatible with IPB 4 if it's required. We're talking about $5 - $20 mods / hooks here by the way. Very few are higher than this.

As for skins, once you've been around for a while you know not to lash out on a new skin when a new forum version is imminent. I'm a bit surprised that a number of skin authors have brought out new skins recently. They should be holding off until version 4 is out.

Link to comment
Share on other sites

Archived

This topic is now archived and is closed to further replies.

  • Recently Browsing   0 members

    • No registered users viewing this page.

×
×
  • Create New...