25

Dev manager: Php 8 is around the corner and i'd like to move the project to it
Dev: this would be a huge change I don't think you understand what you're asking...
Manager: Yes I understand, we'll plan 2-3weeks for the migration
Dev: the app is under symfony2.4, what you're asking is completly off the mark
Manager: look we'll plan it and we'll see don't be pessimist
Dev: ok whatever

I left the company, good luck to my fellow dev

Comments
  • 12
    @rooter language updates might be easy, but frameworks it another matter.

    I do not know about Symphony but if that has changed it can be really difficult.

    I moved a quite complex project from .net framework to .net core and while a lot was very easy, a few thing where we had to go off track and use some less common interfaces, not undocumented, just rarely used, we tumbled into a full rewrite since the whole structure was new and improved.

    And yes, it was much better and cleaner but being rarely needed there was a big deficiency in examples and existing solutions to use :)

    Took several weeks for that part and in total around 3-4 months before we had it into production.
  • 1
    @rooter this, everything should be okay as long as you have enough test coverage if not then you better start typing
  • 0
    Lines of code, times Amount of external package dependencies, times Pending major framework versions updates, times Pending major language versions.

    Upgrading from Symfony 4 to 5 might take an hour, a day or a week depending on project size.

    Minor framework version upgrades can give headaches if you have 150 composer packages installed -- one of them is going to contain some nasty semver-incompatible hack.

    But with multiple factors into play, the best you can do is decide which incremental upgrade is most important, and you'll probably just have to play catch up with the calendar, following upgrades of framework/language/packages as they were released chronologically.
  • 0
    @rooter rewrite as in every interface we used was gone, the very structure on how to get it setup changed beyond recognition.

    We had to spend two weeks just studying the new interfaces mapping out which ones that could solve each and every need we had.

    We did not rewrite our logic, just the implementation required to get it working on the netcore version.

    And we did have tests, not as much as I would have liked but around a couple of hundred tests verifying at a high level that it produced the same output

    After that we manually ran test of customer data through it verifying that it match previous output.

    That took about a week of manual testing.
  • 0
    @rooter so when was this python 3 migration? Python 3 is out since 2008 3rd party stuff is stable and available for it.
    PHP 8 isn't even here yet. There is a lot of code that is incompatible. So yes it probably is possible to change every framework and lib you use but than your have an unmaintainable mess as any security or normal update of the dependencies have to be patched with your changes.
Add Comment