Perspectives from a User Experience (UX) Designer

User Experience (UX) Design is a design approach that focuses on how the end user perceives the product. Its aim is to provide the user with the most pleasing experience possible in terms of utility, emotional appeal, ease of use, and overall value. UX design can be applied to many different media, but for the sake of this review, I am referring to UX design in relation to digital media, such as applications and websites.

Read more

CISP: A novel, graph-based surveillance metadata repository

The CDC Integrated Surveillance Portal (CISP) prototype  is a comprehensive, real-time, interactive resource for CDC, its partners, and the public to explore and discover information about the full inventory of CDC’s Surveillance Systems, Programs, Registries, Health Surveys, Tools, and Collaboratives. CISP contains not only descriptive information about these CDC resources — CISP also describes the relationships between resources.

Read more

Team insights: $location. VS window.location() in Angular Applications

So, as with most things related to Angular, if there is an option to use Angular, or another (JQuery, JavaScript, Some-Other-Library-That-Is-Not-Angular) resource, we recommending using Angular.

Read more

Team insights: Angular, HTML5 mode, IE9 and Routing

One of the things that caused some mild consternation in our first Scrum sprint was Angular and IE9. For those unfamiliar with Scrum, it is a specific agile software development framework / methodology for managing product development.  A sprint is a specific period of time to carry out work.

Read more

End to End (E2E) Testing and Protractor: A Developer Perspective

End-to-end testing is a methodology used to test whether the flow of an application is performing as designed from start to finish.  This becomes essential as an application grows in scope and complexity and it becomes unfeasible to manually test for new features, catch bugs and notice regressions.  These types of tests are also meant to capture bugs that come up during the integration between components that would not be caught during unit tests. For those unfamiliar with unit testing, it focuses on testing small individual “units” of source code.

Read more

Optimizing Web Application Page Weight: A developer perspective

Optimizing for performance can fall by the wayside when developing in a fast-paced environment such as the Informatics Innovation Unit (IIU).  The IIU team strives to rapidly build out web application prototypes.  Often, to get a prototype “into the hands” of our clients as quickly as possible, we are forced to adopt a “we’ll get to that later” philosophy.  This issue came to the forefront when, out of curiosity, I tested our sites through Google’s PageSpeed Insights and was surprised to learn that, even though our sites ran well in our testing and production environments, our sites had page weights of more than 3mb and scored relatively poorly on their speed tests.  This result was well over the average of 1.7mbs, which meant that for slower connections our sites would have a prolonged load time.

Luckily there were some fairly simple actions we could take to reduce page weight and improve site performance.  I wanted to highlight a few of them here with focus on how to accomplish them when working with full stack JavaScript applications since that’s what we focus on in IIU…

Read more

What’s new in EMCAScript 6 (ES6): A developer perspective

EMCAScript 6 (ES6) is that latest version of JavaScript that was released in June 2015. I have been using and testing ES6 over the past few weeks. I feel that there are some great features that will improve the quality of life for developers who use simple scripts, as well as complex web applications. I wanted to highlight some of these features that would be useful for anyone developing with JavaScript.

Read more

The evolution of HL7 Standards: V2 to FHIR

HL7 is the abbreviation for the term, Health Level-7.   The organization, HL7, provides international standards for the structuring and transmission of clinical and administrative data in the healthcare domain.   One HL7 interoperability specification used for many years has been version 2.x, otherwise known as V2.  V2 has been a standard used to codify medical (led by billing) information and transmit it between computerized medical systems. The standard was developed and finalized during the 1980s, and thus was optimized for lower memory and storage usage in the very early stages of networked computing; thus it was an implicitly typed flat-file.

Read more

Using Git for an Effective Development Workflow

Overview The following is an outline of the branching, merging, and workflow conventions that can help development teams manage parallel feature development and release management. This workflow style is taken directly from http://nvie.com/posts/a­successful-git­branching­model/ Please visit that site to read the full­ length post on the details of this method.

Read more