|UNLOCK CUSTOMER USAGE DATA, DRIVE CUSTOMER SUCCESS|
Engagement is a customizable measurement based on key data, such as visit, user performed actions, and business information. The measurement helps answer common key questions all web based businesses have: How engaged your users? How does this engagement change over time? Has engagement changed after releasing new features?
Reduce Churn: A wise woman once said: "it is easier and more cost effective to retain a customer than to go find a new one". Apptegic helps reduce churn by helping you understand what your customers are doing but also offers one distinct and important advantage. Behavioral based messaging. This is the killer feature, in my humble but biased opinion, whilst the user is in the application, and in real time, you can display messages based on their usage behavior. The traditional model is to analyze stats the next day, build an email campaign based on usage, then send out an email two days later. Ours is to collect metrics in real time, display relevant message whilst you are in the application, and increase your engagement with the product. By informing you with relevant information we can prevent you from losing that customer - churning.
Using Google Web Toolkit at Apptegic
At Apptegic we have built a large scalable application using common techniques recommended by the GWT community. Below are five tips that I would recommend to anyone building a large scale GWT application:
Tip 1: Scalability built-in
If you aren't using a design standard to build your application you are going to run into problems when you scale your application. You'll end up in a spaghetti highly-coupled mess. Believe me I have been there. For GWT I recommend GWTP. The guys over at GWTP are great. Over the past several years they have built a mature useful MVP implementation for GWT. I have used it on several products now and it just keeps getting better with time. I will leave their own marketing to help with the promotion. Grab the framework over at GitHub: https://github.com/ArcBees/GWTP
Tip 2: Decouple, decouple, decouple
Use the Dependency Injection design pattern. Separate all of your concerns into logical entities then when you need them inject them as a dependency via the constructor or autowiring a variable. For GWT the only choice is to use Google's GIN framework. If you know Spring DI it is the GWT client equivalent of @Autowired.
Tip 3: Helping the UI
GWT Query is basically a JQuery implementation for GWT. It has lots of helper methods for direct dom manipulation, binding events and animations. We found it to be great at writing succinct code that achieves a great deal. In addition it has an active plugin community which build various beautiful UI components. We use their draggable implementation and a fantastic looking combo box called GWT Chosen. Check out the GWT Chosen demo page its awesome.
GWT Query: http://code.google.com/p/gwtquery/
GWT Query Plugins: http://code.google.com/p/gwtquery-plugins/
GWT Chosen: http://jdramaix.github.com/gwtchosen/
Tip 4: Be careful when selecting Smart GWT
I am am split on SmartGWT. The widgets that come with GWT are woefully short of being fully featured. With SmartGWT you get fully featured widgets that are more difficult to customize visually. The problem lies in being able to mix the two. It is well documented that mixing SmartGWT with regular GWT widgets is not supported and from experience is painfully difficult to achieve successfully. My guideline would be: If you are building an internal product that requires a full feature set but you don't want to customize visually; or perhaps you are trying to prototype an idea and wan't to get something up and running quickly; then go with SmartGWT. If however you want to build a customer facing beautiful SaaS application then I would use native GWT and pick certain SmartGWT widgets selectively.
Tip 5: Build-in Customer Usage Analytics
If you are building a customer facing website and you want to understand how your users are utilizing your product. Then build-in analytics from the ground-up. As I am biased I will of course be recommending our own product - Apptegic. There are alternatives, so go check out the competition I am confident that you will like what Apptegic is offering.