Can you describe your business?
The Company's proprietary software, eFLOW Unified Content PlatformTM, provides customers with a single, effective, flexible end-to-end solution to capture, classify, process, validate and deliver critical information to document and content management applications, ERP or CRM via a single platform. eFLOW offers organizations a single point of contact and control for delivering valuable information to enterprise information systems, via a single platform and a single set of business rules. This allows customers to integrate data from multiple sources, including the Internet, paper, fax, microfilm, microfiche and email, and of different types such as invoices, freight and shipping bills, purchase orders and others, and provides a single connection to enterprise applications. Our vertical solutions include the Invoice Reader for Accounts Payable departments operations, and Automated Mailroom for management of enterprise mailrooms operations.
Why did you choose ASP.NET 2.0?
Most of the code of our eFLOW platform is written in C#. When we decided to web-enable our solution, ASP.NET 2.0 was the first option that we considered. After preliminary tests of various scenarios we realized the expected overall development cycle and software performance are ultimately best with ASP.NET.
How did ASP.NET AJAX help you improve your user experience?
In our case, ASP.NET AJAX is not only a way to improve the user experience, but it is the fundamental enabler. Before the ASP.NET AJAX beta bits (also known as Atlas), we couldn't even imagine putting up our WinForms based client software on the Web. The software requirements are so numerous, and demand such a level of interactivity and responsiveness, that the risks associated with the development using pre-ASP.NET AJAX technologies was high above an acceptable thresholds.
What ASP.NET AJAX features did you take advantage of?
Above all, we've used the JavaScript language extensions for compliance with OO programming model. To develop a complex and manageable application one needs to have interfaces, inheritance, overriding and other OO tooling. As we all know, JavaScript language itself, as well as numerous other JavaScript frameworks do not provide this and ASP.NET AJAX finally overcomes this major disadvantage. We've used most (if not all) of the ASP.NET AJAX client classes in our JavaScript web-client application. In addition, we use the Sys.UI.Preview namespace controls that bring in some important concepts and tools. We use the xml-script to represent different forms layouts. We have included the AJAX controls toolkit to quickly and almost effortlessly get some great looking effects. So, the answer to your question is that we've needed it and used it all.
What was the ASP.NET AJAX development experience like?
When we've started the development, there was still no documentation about the technology. Still, we were able to use find, and learn how to use any class we needed within the ASP.NET AJAX client scripts framework. The ASP.NET AJAX client library sources were sufficiently clear to fully understand how to use framework. Since the documentation is available, the learning curve has been further shortened. Extending the functionality of the provided classes was also very easy as it is done in a usual OO way by deriving from the appropriate base classes available in the ASP.NET AJAX, and implementing specific functionalities. Since the release of the Visual Studio 2008, the whole thing got even better. Now, I find my self forgetting weather I am in JavaScript or in the C# program – the development look and feel is so alike with the provided tooling that one can easily switch one for another.
What other Microsoft technologies does your site use?
We use many other Microsoft technologies as well. We use the Windows Server 2003/2008 as the server OS, Microsoft SQL Server as database server, Internet Information Services as web application server, ADAM as out-of-the-box LDAP server and Microsoft Cluster Service for clustered environments. In other eFLOW Platform components, we also make use of WCF, WPF, WWF and SharePoint, and for the development and it's management we use Visual Studio 2008 as the IDE, Microsoft Project for project management, Microsoft Team Foundation Server for source control and Microsoft Build Server for nightly builds.
Anything else you want to add?
We are looking closely into Nikhil Kothari's Script# project and we believe that it has a great future. We are eager to see the future developments in the web technology and we feel very confident that we have selected the Microsoft's toolset as the base technology for our products.