Skip to end of metadata
Go to start of metadata

You are viewing an old version of this page. View the current version.

Compare with Current View Page History

Version 1 Next »

Overview Ember v. React

The transition from Ember to React marks a significant step forward for Pricefx. The transition from Ember to React for Pricefx interfaces brings significant enhancements in performance, scalability, and user experience. We appreciate your support and collaboration as we navigate this transition together.

React users will benefit from enhanced features and functionalities, such as customizable dashboards and improved error handling, alongside better integration with CRM systems and third-party tools.

image-20240708-100643.png

image-20240708-104627.png

This move to React aligns with industry standards, future-proofing the platform and providing users access to the latest innovations and enhancements. With the migration to React, Pricefx aims to deliver a more responsive, reliable, and user-friendly application, ultimately enhancing the overall user experience. The transition also addresses the end-of-life status of Ember, scheduled for Q2 2025, mitigating potential security vulnerabilities associated with outdated technology. Major customers have already successfully transitioned to React, demonstrating the viability and benefits of this strategic shift. Overall, the move from Ember to React is designed to significantly improve the functionality, security, and scalability of Pricefx interfaces, ensuring a superior and future-proof user experience.

Learning Curve and Developer Onboarding

Ember's strong conventions and integrated tooling make it easier for new developers to understand the project structure and start contributing quickly. This consistency can reduce onboarding time and improve productivity. However, Ember's specific conventions and idioms may require a steeper initial learning curve. Additionally, skills learned in Ember may not be as easily transferable to other frameworks or libraries, potentially limiting career mobility for developers.

In contrast, skills learned in React are highly transferable due to its popularity and the widespread use of its ecosystem. This is beneficial for both developers and organizations, as there's a larger pool of React talent available. However, the lack of enforced conventions can lead to varied approaches within the same project, making it harder for new developers to get up to speed. This can result in longer onboarding times and potential inconsistencies in the codebase.

Performance and Scalability

Ember provides a consistent approach to handling performance and scalability through its conventions and tools like Ember Data. This can simplify the development process and ensure applications perform well under load. However, Ember's two-way data binding and full DOM updates can lead to performance bottlenecks in large and complex applications. Custom performance optimizations may be harder to implement, which could impact the user experience.

React’s virtual DOM and fine-grained control over component rendering lead to better performance, especially in large applications. This can result in a smoother and more responsive user experience. The trade-off is that managing performance optimizations and scalability requires more effort from developers, as React doesn't provide built-in solutions for every scenario. This can increase the complexity of the development process.

Transitioning from Ember to React: Key Insights and Future Directions

Reasons for Moving from Ember to React

The decision to move from Ember to React was driven by several factors:

  • Power and Talent: Ember lacked the power we needed, and finding skilled engineers was challenging.

  • Technology for Scaling: React provided the necessary technology to scale our product effectively.

  • Consistency: React ensured a consistent experience across the application, aligning with the rest of our technology stack.

  • Resource Efficiency: Supporting multiple front-end technologies was draining our resources, making a single, robust solution like React more viable.

Key Points to Know

As we move forward, here are some critical points to keep in mind:

  • All new features will be developed exclusively in React.

  • Ember is now deprecated, with minimal support and no library upgrades, leading to potential security issues.

  • Ember will reach its end of life in Q2 2025, with the release of version 15.0.

Risk and Configuration for Migration

The migration from Ember to React varies in risk and configuration needs across different product areas:

  • Dashboards: Low to no risk, no configuration needed.

  • Quoting/Agreements/Rebates Lists: Low to no risk, no configuration needed.

  • Quoting/Agreements/Rebates Details: Testing required, minimal configuration needed.

React Adoption

Our adoption rates for React show a promising trend:

  • 28% of our customers have adopted React (excluding Dashboards).

  • 72% are still using other technologies.

Features & Enhancements in New Versions

The new versions come with several notable features and enhancements:

  • Handling Thousands of Line Items: Improved performance and efficiency.

  • Errors & Alerts Framework: Enhanced error handling and alerting capabilities.

  • Flexible Layout: More adaptable and customizable interface layouts.

  • Better Integrations: Improved CRM integrations and context linking with other Pricefx capabilities.

Steps to Get Started with React

To transition to React, follow these steps:

  1. Enable and Test in QA Environment: Start by enabling React in your QA environment and conducting thorough testing.

  2. Enable in Production Later: Once testing is complete, enable React in your production environment.

image-20240708-104748.png

Both React and Ember are available on each cluster/partition and can be enabled through Feature Flags. It is also possible to enable React for individual users.

Timeline

Here is a timeline of our planned activities:

image-20240708-104943.png

The proposed plan gives shared cluster customers one year to plan ahead of the end-of-life (EOL), with private clusters having more flexibility if they comply with the N-1 policy.

  • No labels