Last week we talked to a Principal Scientist (let’s call him Ken) at one of the worlds largest pharmaceutical companies. Ken gave us some really great insight into why and how they use SmartClient.
Ken’s organizationÂ provides software support (at varying levels) for thousands of in-house scientists scattered across “innumerable areas of expertise and roles”. ScientistsÂ come to hisÂ group when they need customized or unified solutions from software developers with domain knowledge.
The web applications that Ken’s team writes are obviously used by peopleÂ who are highly educated. Their time is precious and their patience low. They demandÂ “solutions that are highlyÂ sophisticated“, and they haveÂ “uncompromised expectations on ease-of-use.” Â TheyÂ “have many ideas, theories, and hypothesis that they want to explore”, so there is a long list of web applications to be developed, and also a long list of feature requests raisedÂ as their hypothesis unfold.Â Their work also generates and requires analysis of “huge volumes of data“.
For Ken, these demands meant he needed a platform that:
- Can handle volume data from both performance and a usability perspectives
- Has intuitive, high productivity UI components
- Supports rapid developmentÂ ofÂ web applications
With several years experience using SmartClient, Ken said:
I really like Smartclient because I can create new solutions quickly and then easily adapt to userâ€™s feature requests as they evolve because itâ€™s usually only a matter of re-configuring how Iâ€™m creating Smartclient objects. I donâ€™t need to be too careful about collecting all possible use-cases up front because when they come to a new understanding of their own expectations, I donâ€™t need to tell them that weâ€™d need to change technologies to deliver their new ideas.
ListGrid,Â FormItem, andÂ DynamicForm are the key widgets I turn to.
I also highly value theÂ support forum. I imagine thatÂ my needs which are sometimesÂ off theÂ beaten track, so I highly value the rapid turnaround on enhancements, bug fixes and/or suggestions.
Here are just a few of the solutions Ken’s team built this yearÂ (note that all of these are leveraging ourÂ new ‘Tahoe‘ skin):
#1 Bulk Data Handling – “PPB Editor”
The â€œPPB Editorâ€ (you can think of it as an electronic lab notebook) was written to enable scientists to rapidly load bulk data into a 3rd party data storage solution. The 3rd party had provided their own GUI, but it was too tedious to use at the scale the scientists required. It also didnâ€™t match theÂ scientistâ€™s workflow. Furthermore, by writing theirÂ own interface, theyÂ have a convenient place to implement theirÂ own business rules (e.g., â€œautocalculatorsâ€ and validation) to help people conform the raw data they collect to expectations set by the business and to support analytics. In particular, SmartClient helped with the following:
- Binding to Datasources extremely quickly
- ListGridÂ Expanding rows capabilities to allow additional information to beÂ accessed without adding an unmanageable number of columns
- FormItem was also aÂ key feature â€” particularlyÂ since a class can be defined once and reused in both ListGrid and DynamicForm contexts. This meant that in theirÂ bulk editor, they can leverage multiple widgets to update the same data – saving much development effort and providing the scientists with the optimal UI.
- Formula fields (see here for more details)
#2 Analytics – “Mylo”
- Charting (see here for more details)
- Log scale
- Mean & deviation
- Error bars
Export to Excel
Binding to Datasources
#3 Hypothesis testing – Plate Layout
The â€œPlate Layoutâ€ tool came about when a scientist described an upcoming technical challenge to Ken. Ken then created aÂ GUI in less than one dayÂ that the scientist couldÂ use to test a hypothesis.
For Ken, the ability to rapidly develop web applications makes SmartClient indispensable in the pharmaceutical research and development environment.
Thanks much for the insights, ‘Ken’.
The Isomorphic Team