Sencha Inc. | HTML5 Apps

Blog

Implementation Spotlight: Attensa

May 13, 2010 | Jay Robinson

What is Attensa?

We provide software for medium-to-large companies and government agencies that manages the distribution of news and high-value information. Using standards like RSS and ATOM the Attensa StreamServer aggregates content and can distribute that information to users based on content filtering rules called SmartStreams. Beyond just 'Enterprise RSS', our integrations to systems like SharePoint make it possible to monitor content that was not previously exposed via RSS. By bringing together internet and internal content, we can offer knowledge workers a complete 'information dashboard' with at-a-glance updates on your industry, competitors, and markets.
Ext JS allowed us to develop a rich, sophisticated interface in less time and with a smaller development team than would have been needed with other JavaScript UI frameworks.
You can publish your own news streams using the built-in post editor, email-to-RSS, or rules that combine and filter a large number of feeds in real time to extract only information about a certain topic. We even have a full search engine built in. Our main web user interface is built almost entirely using Ext JS. We also offer portlets that can be used in SharePoint or in Java-based portal servers like WebSphere Portal or Liferay; the user interface for these portlets are also implemented using Ext JS. For Windows users, we have a pop-up alerts application to let users know when new high-priority information is available.

Why did you choose Ext?

Ext JS allowed us to develop a rich, sophisticated interface in less time and with a smaller development team than would have been needed with other JavaScript UI frameworks. Because Ext JS includes so many ready-to-use components there was significantly less from-scratch coding required. With other frameworks, we would have needed to build many components from scratch. With Ext JS, 95% of the components we needed were already there. We evaluated a lot of different UI frameworks to find one that offered broad functionality and a good out-of-the-box appearance. We also wanted to have confidence that the framework was widely used to ensure it would be supported and extended for years to come.

Do you have any advice for developers just starting out with Ext for the first time?

The learning curve looks steep when you're first getting started. Stick with it! The developer productivity is great once you understand how Ext JS works. We wish there had been books like 'Ext JS in Action' available when we were just starting out. Definitely start with a book if you're new. Until you're comfortable with Ext, it helps to use a super-incremental development style. Make a small change, refresh the browser to see the change before making the next small change. When something breaks, you'll always know which change was responsible. Download the code for the demos and use them to experiment with the controls that you plan to use. Also, always remember to search the forums. When we have problems at Attensa, it's incredible how often someone else has had the same issue before, and we find a simple solution is right there in a forum thread.

What makes Attensa unique?

Attensa provides the only solution to the Enterprise data silo problem. Knowledge workers in a large organization get information from many sources both on the internet (from internet sources like blogs and email newsletters, Lexis-Nexis which is widely used in law firms and large companies, and science journal aggregators like Ovid which are used by life science companies to support their researchers) and inside the firewall (from Microsoft SharePoint, content and document mangement systems, email distribution lists, and 'Enterprise 2.0' social software). The Attensa StreamServer brings all of these sources together in an easy-to-use software package that gives your users awareness of the information they need, when they need it, all in one place.

What features could we add to Ext to make building a rich application like Attensa easier in the future?

Sometimes solving a problem in Ext requires understanding of its internal implementation, or debugging an unexpected error might require tracing through the Ext JS source code. This can be daunting for a newbie. Perhaps error-checking assertions could be added (to the -debug.js versions only of course) to help ensure that developers get an error message that leads them in the right direction. A nice bug-tracking system like Jira would be helpful. We'd love a tutorial about how to build our own stripped-down distribution. Also we can't wait to try Ext Designer. It might be just the thing to make our development team even more productive.

Final thoughts?

The Attensa StreamServer's new user interface is attractive and rich, and it works well across all major browsers. A lot of the credit for this success goes to Ext JS. We have already upgraded the upcoming release to 3.2.1, and it's a solid release. For rich web apps that need complex user interface components, Ext JS is a solid choice.

There are 6 responses. Add yours.

Marek Stasikowski

4 years ago

I 1000% agree with the comment on assertions in the debug version of Ext. But the statement in Ext docs in the Ext.Error class already gave me hope that I’d see this one day. Keeping my fingers crossed for that.

Even André Fiskvik

4 years ago

Assertions, yes please! This would speed up development of ExtJS apps a whole lot.
Let’s just say I’m glad I don’t have track on the hours I’ve spent trying to debug weird error outputs coming from the internal components :D

It’s Interesting reading how others are using ExtJS in their systems.

Rodolf

4 years ago

hi, I m curious to know with all these images and graphs, how do you manage the current browser memory leak problems (firefox and others take all memory after some hours of use) when you use ExtJs in your projects ?
Note to reproduce problem : browsers don’t release memory when page is stopped manualy or by loading another content without the end of the previous (some Mo by content = some hundred Mo after some hours)

Jeff Nadler

4 years ago

@Rodolf:  We’re not having memory issues on the scale of what you’re describing.  Our app is indeed very DOM intensive and it does cause FireFox memory usage to increase notably.  However the memory usage reaches a plateau and stays there; we have tested this over multiple days of usage. 

It does not grow out of control, nor does it take ‘all memory’ in our testing.  It is certainly possible to create memory leaks during JavaScript development regardless of the toolkit you use.  Do some research on programming best practices, there are significant discussions in the Ext forums on preventing memory leaks.

car

4 years ago

This would speed up development of ExtJS apps a whole lot.
Let’s just say I’m glad I don’t have track on the hours I’ve spent trying to debug weird error outputs coming from the internal components :D

golf carts

3 years ago

Implementing spotlight is as essential as any work!! its related with the programming actually so there might be any error occurs if the process is not done, of some other error may disract that, so we should debugg it and make all the errors clear.

Comments are Gravatar enabled. Your email address will not be shown.

Commenting is not available in this channel entry.