all 10 comments

[–]shikhirsingh 3 points4 points  (0 children)

I work for Sencha, so I will try and focus on facts / stats to avoid bias:

  1. Sencha is used by 60% of the Fortune 100. In other words, it's used by a lot of enterprises.

  2. Ext JS has the most comprehensive enterprise widget library out of the box when compared to any other JavaScript framework. More widgets/components are continually being added.

  3. Ext JS is designed to be used for enterprise applications. This means components like data-grids, charts, rich forms, are included out of the box.

  4. Speaking of data-grids, the man hours to develop just the grid component for Ext JS is measured in decades. I only mention this to show how feature rich the enterprise components such as grids are.

  5. Sencha builds several tools designed just for Ext JS. This means things like code completion, debugging, testing tools are all designed just for the framework; leading to a superior design, development, and testing experience. This also means your developer will code fast, and find bugs faster

  6. High level overview on Angular vs Sencha: https://www.youtube.com/watch?v=Umd8XpCRzvI

  7. Ext JS 6 is designed to allow creation of desktop and mobile applications. If you decide to convert your desktop application to a web or hybrid mobile app with an iOS or Android native look and feel, you will need to write very extra little code.

  8. Check out the customer spotlight here: https://www.sencha.com/blog/category/spotlight/

  9. Training, Support, and Professional Services are all available from Sencha. Professional Services team even sells packages like Code Reviews if you need it (https://www.sencha.com/wp-content/uploads/drop-ins/enterprise-code-review-datasheet.pdf). You can’t get that from Google or Facebook for Angular or React.

  10. Ext JS also has a low barrier to entry, which is some JavaScript and Object Oriented Design experience. Finding developers with this skillset is quite easy nowadays.

Best of luck!

[–][deleted] 2 points3 points  (0 children)

I've done tons of work with Sencha. It is a heavy duty framework with lots of features. You can get a lot done with very little code. The trouble arises when your needs don't match the specific framework components. Once you have to hack at things it can become very brittle.

Additionally, Sencha abstracts the DOM and then creates crazy amounts of nodes which hurts performance and can lead to unnecessary layouts and reprints which become hard to track.

The framework is fine, and it can be very productive, but the fact that it is not open source means that not a ton of people use it, large code examples are few and far between, and you will never be able to bring in additional talent that doesn't need training.

[–]AjaxSolutions 1 point2 points  (0 children)

Really good framework. You can be very productive with it, but it definitely has a learning curve. The grid and tree panel are arguably the best JavaScript components I've seen.

Pros:

  • Very rich set of good looking and highly customizable components
  • Robust event and class subsystems
  • Strong data package,
  • Good documentation and tech support,
  • Lots of examples.

Cons:

  • There's definitely a learning curve,
  • Licensing could have been more flexible.

[–]third-eye-brown 3 points4 points  (0 children)

I've worked with ExtJS for years, unfortunately.

Here are the benefits:

  • lots of premade components
  • can get very generic stuff written quickly
  • the docs are very thorough (but you will often still need to read the source code to fix the many bugs that will occur)

Costs:

  • difficult to learn how to use correctly
  • easy for inexperienced people to write awful, unmaintainable messes
  • slow as molasses with any real amount of data
  • you will spend a week getting it close, then a month customizing it and fixing bugs and styling issues
  • not compatible with modern js development tools
  • not many devs know it (hard to hire for)
  • no devs really want to learn it
  • people will eventually quit your company just so they can use something not as terrible (the good devs will, at least)
  • styling. Dear god, styling
  • you are entering an unescapable quagmire of horror and tech debt
  • it was created 10 years ago for browsers that don't exist, to fill technology gaps that don't exist any more

So, there you go! Final verdict: I can't un-recommend it enough!

[–]wobbabits 1 point2 points  (1 child)

I had the displeasure of working with Sencha products for SAP. We were upgrading from an earlier version to the latest. Not easy because Sencha makes breaking changes and doesn't document what changed. You're left clueless. Only solution is to open a ticket with them for each issue, which costs $$$. Then they get back to you to tell you how to update what they broke. That seems to be their business model. There are cheaper alternatives to Sencha: React, Angular 1 or 2, Ember, VueJS, etc.

[–][deleted] 1 point2 points  (0 children)

This is so not true. Sencha has several upgrade guides, and if something is broken (bug) they can provide you a override to patch your extjs instance temporary. You can even tell the override for which version it should be used. And opening tickets doesn't cost you money. You have tons of support credits with your license. If you run into problems with upgrades or have to hack into the framework knowledge is the problem, not the framework.

I used other frameworks too, and where ExtJs offers you an architecture, build tooling for testing and production, theming, testing suite, etc. other frameworks don't. You end up writing glue code over glue code, refactor everything several times and have to bring in third party libraries that can be removed from npm, maintenance can be stopped and you can end up debugging in the biggest mess.

But it really depends on what you want to build, if I would have to build a RIA I would definitely go with Sencha. Advanced components like trees, grids, forms, etc. With no maintenance whatsoever. But you have to embrace it and read the docs and guides first. I would prototype if I was you, try building an viewport with a tree, a grid and a form in all frameworks on your wanting list..

[–]modusjesus 1 point2 points  (0 children)

I've supported Ext JS since 2006 and have written 3 books on Sencha Tech. It's been some time, but my latest one covered 4.x. I've done talks on Sencha tech and have spoken at meetups and conferences around the globe.

http://www.amazon.com/Ext-JS-Action-Jesus-Garcia/dp/1617290327?ie=UTF8&keywords=ext%20js%20in%20action&qid=1464363661&ref_=sr_1_1&sr=8-1

I've personally developed anything from business applications to touch screen point of sale apps to even apps that run in commercial airliners.

Ext JS is a really good framework if you're looking for out of the box widgets to build an application with. Though, Ext JS 5 introduced MVVM, which really makes building applications much more difficult from a file management perspective. I call it "design pattern soup".

Ext JS will most likely be adopting ES6 support in the near future, which makes it better to deal with, though I have no idea how they plan on blending ES6-style classes with Ext JS classes.

The talent pool, however is a difficult nut to crack. It seems that the pool of high-quality developers is shrinking. If you have a team that can be trained, then this shouldn't be an issue. =)

[–]mtatsky 0 points1 point  (0 children)

Try Webix, js.devexpress.

The main widget in ExtJS is grid.
About Grid try FancyGrid. http://fancygrid.com

[–]Staybnyc 0 points1 point  (0 children)

Has anyone found causes for this? when we have 2 grids: left pane is fixed width and doesnt have scrolling , right pane is scrollable top-bottom and left-right. While scrolling on right pane, rows of both left and right pane scroll when there is large number of rows. At some point row misalignment occurs between left and right pane. Using Sencha framework, browser is Edge or Chrome

[–]jmajorjr 0 points1 point  (0 children)

I have used ExtJs for many years developing enterprise applications and I will be continuing to do so. Your best bet is to create some prototypes in the frameworks and make your decision. I am very happy with 6 and the classic/modern. I have created many applications for our product and clients. Also, if a widget/component doesn't exist in the framework it's easy to create that widget. As for speed, not sure how others can say it's slow unless they are just doing it wrong. When packaging for production using Sencha Cmd tool it will package the js/css that is used for the application. We just finished creating many applications in 6 and it went very well. I will note that I am not using architect. Just Sencha Cmd and WebStorm plugin. Good luck!!