Building an Analytics Experience
with SAS and HTML5
Nikola Markovic
Boemska
1st Feb 2017

We are a software company & SAS Partner consultancy. Amongst other things we specialise in building bespoke Analytics Apps with our clients.
From dashboards and one-off simple applications, to Progressive Web Applications and Mobile Apps, to large-scale Information Systems, our focus is on the productionisation of Analytics while considering the importance that User Experience plays in its adoption.


What I will talk about
What HTML5 Apps are (+ demos)
How they work
Why?
The Future & The Questions
What do you mean by Apps?
What is a HTML5 App
An App that loads and runs in the browser
and
Any 'native-ish' App that uses those same browser technologies
(ie. most apps today)
How a HTML5 App works
How a SAS-powered HTML5 App works
What is H54S
A poorly named open-source library that lets HTML5 developers & SAS developers easily develop HTML5-based Enterprise Analytics Apps.
Boemska HTML5 Data Adapter for SAS
How a HTML5 SAS App works
How a HTML5 SAS App works
%include '/pub/sasautos/h54s.sas';
%hfsGetDataset(datain,work.additions);
data back;
set sashelp.class
(obs=3 keep=name sex weight)
work.additions;
run;
proc sort data=mydata; by name; run;
%hfsHeader;
%hfsOutDataset(rtrnd, work, back);
%hfsFooter;var adapter = new h54s({hostUrl: 'myServer:8080/'});
var myFirstTable = [
{ name: 'Allan', sex: 'M', weight: 101.1 },
{ name: 'Abdul', sex: 'M', weight: 133.7 }
];
var tables = new h54s.Tables(myFirstTable, 'datain');
adapter.call('/Apps/myFirstService',
tables, function(err, res) {
if(err) {
console.log(err);
} else {
console.log(res.rtrnd);
}
});

H54S Features & Examples
- Bidirectional Data Transport
uses datasets as primary atomic format
(superseding parameters)
- Clientside logging & system messaging facility
(making apps so much easier to support)
H54S Features & Examples
- Handling of clientside sessions & SASLogon Redirects
- Continuous, predictable User Experience
- Simple integration with most APIs, Open Source libraries and 3rd Party visualisation tools (AngularJS, Highcharts, Google Maps, Postgres/PostGIS, everything)
Architecture Benefits
(Enterprise Integration)
-
Out-Of-Box Single Sign-On
-
Pre-configured Transport Level Security
-
Per-request Authorisation
- Granular, role based Metadata security
(happy to talk about this for hours)
Deployment & BAU Benefits
- Easily deployed and updated with SAS 9.4:
Web/WebServer/htdocs & a SAS .spk
- User & role management is controlled by Metadata & governed by existing SAS JML procedures
-
No additional platform work required, Zero up-front infrastucture cost. Uses existing kit.
-
Easily supported and updated by widely available skillsets: JavaScript frontend + SAS backend.
No proprietary lock-in.
Why?
- Business users love SAS.
Questions

Apps for your Enterprise
By Nikola Markovic
Apps for your Enterprise
Apps and stuff
- 710