Project Migration from Flex to HTML5 / JS

Thursday, 03 May 2018 08:33

In November 2011, there were rumors that Adobe would stop the further development of the Flash player for mobile browsers. Nevertheless, Adobe continued to release new versions of the framework until January 2016. However, at the end of July 2017, company representatives announced that by 2020, Flash would no longer be supported. In addition to Flash, they are also going to stop support for Flex, which is a framework for web-applications based on Flash. That is the reason why all the projects performed on Flex need to be migrated to new technologies.

project_migration

We, therefore, asked our Head of the Enterprise Department, Pavel Borel , to share his opinion on the situation and to tell how our developers deal with it.

pavel_borel

- Pavel, what do you think this process of support cessation is going to look like?

- Well, I think it is vital to understand that each browser has its own plan. Google Chrome , Mozila Firefox , Microsoft Edge and Safari have published precise descriptions of how and when they are going to do that. If you look though, you will notice that there is not much time left. So, I wouldn’t recommend delaying the migration.


- What do you think, are there many projects developed on Flex?

- About 10 years ago Flex was in hype, so I think there were lots of those. But I’m not sure about exact numbers.


- Do we currently have any projects to migrate from Flex to HTML5?

- All of our long-term clients who have previously used Flex, now want their projects to be migrated to HTML5, AngularJS, etc.

All of our current Flex projects are pretty extensive. Many of our developers are involved in the process. The biggest project is estimated for several thousand man-days. More than ten developers are going to work on this project for about two years. However, we also work on smaller projects.


- Do we have developers who are good at Flex?

- Before Flex became popular, many projects were developed on HTML and Java. About a decade ago, when everybody began to actively develop on Flex, our developers quickly mastered this technology.

Our second direction is HTML5 development. Therefore, we have many universal specialists who are proficient in both technologies. That is great! Thanks to our specialists' experience on Flex, they can see how the program works on one technology and then minimize the differences in performance of the product that is developed on another technology. These developers are also able to implement new interfaces on HTML5, with no changes in the server part. This saves a significant amount of time and budget.


- What is the best solution for companies that have previously used Flex?

- On the blog, Adobe offers the following alternatives to Flex: HTML5, JavaScript, and CSS. We usually use Angular 5, since it boosts the performance of many complex solutions based on HTML5. We also use React. It is dependent on the customer's demands.


- What happens if a project stays on Flex?

- Even after 2020, browsers will still be able to turn on Flash, when necessary. Therefore, a product is still going to work for a while. No one can say for sure when Flash will completely stop working.

There are periodic security holes or bugs in Flex, as well as in some other technologies. In developing technologies, they are eliminated through regular updates. Therefore, if a product is based on Flex and holes are detected, it will probably be banned. As a result, you will not be able to turn it on. However, there will still be some workarounds. For example, the product can be launched in an older browser version. That is not a viable option. We must develop and move forward.


- Is it difficult to migrate a project to another technology?

- Creating a new interface on Angular, for example, is almost like developing a project from scratch. However, when a working application developed on Flex already exists, it is then easier to recreate a similar interface on another technology. While working on such a project, a developer clearly understands whether the product works correctly or not. Also, there are no such situations when a customer changes the basic requirements.

There are no automatic tools, converters or magic buttons, which would convert the code automatically into the new one. It usually happens as follows: we have a sample and we make a new similar interface.


- How long does it take to migrate a project?

- It depends on the specifics of the project and on how the product was originally developed.

Let’s assume that we are dealing with a complex product. The development of the front-end takes 1000 man-days and the development of the back-end takes 1000 man-days as well. This does not mean that the development of a new interface on HTML5 will take another 1,000 man-days. In this case, the work will be easier to perform, due to the fact that all of the functionalities have already been fixed. Everything is ready and everyone knows exactly how the product should work. You just need to redesign the front-end. Therefore, the development will take much less time. If we have a project that was not very complex and was developed in 50 man-days, then it will take about the same time to migrate it.


- Can the customer make any corrections or change something during the migration process?

- Sure! During the migration process, customers often ask to change the interface. The product must be improved constantly. The first direction for improvement is the addition of new functions. The second direction is improving and optimizing the interface for more convenient usage. This increases the satisfaction of the end users. That's why during the migration to HTML5, you can also change the interface. This reduces costs and kills two birds with one stone. You can migrate the project for a new technology and change the interface at the same time.


- What specialists are usually needed for this type of project?

- As with any other project, it is usually a team of developers, business analysts and a project manager. When developing new interfaces on HTML5, we also often add unit and end-to-end automatic tests. This team would then include some QA's. The size of the team depends on the amount of work and time allocated to the project.


- What’s your opinion on the end of a Flex-era?

- I wouldn’t say that I am sorry. There was the time when it was a very good technology to use. About 10 years ago, when HTML was not yet well developed, Flex was far ahead. But now, when HTML5 is ahead, Flex solutions are passing out. The technological possibilities are improving. We need to move forward, in order to develop and master new technologies.


- The Flex destiny can overtake other technologies. What can developers do about it?

- There is no panacea for that. It is necessary to understand that the modern world is moving forward rapidly. The technologies that are popular now, aren't going to stay popular forever. We must monitor the trends and be able to adapt to new technologies quickly.


1753


Item tags