CINXE.COM
Engineering Health
<!DOCTYPE html> <html lang="en"> <head> <meta name="generator" content="Hugo 0.96.0" /> <meta charset="UTF-8"> <meta name="viewport" content="width=device-width, initial-scale=1, shrink-to-fit=no"> <title> Engineering Health </title><meta name="description" content="a blog by engineers, for engineers"><meta name="author" content="Cerner Engineering"> <link rel="icon" href="/favicon.png"> <link rel="stylesheet" href="/dist/main.2b1315bd4c5d4f5eb804.min.css"> <link rel="canonical" href="https://engineering.cerner.com/"> <link href="https://engineering.cerner.com/index.xml" rel="alternate" type="application/rss+xml" title="Engineering Health"> <link href="https://engineering.cerner.com/index.xml" rel="feed" type="application/rss+xml" title="Engineering Health"><script src="/js/jquery-3.5.1.min.js"></script><meta property="og:title" content="Engineering Health" /> <meta property="og:description" content="a blog by engineers, for engineers" /> <meta property="og:type" content="website" /> <meta property="og:url" content="https://engineering.cerner.com/" /><meta property="og:image" content="https://engineering.cerner.com/images/alan-grace.png"/><meta property="og:site_name" content="Cerner Engineering" /> <meta itemprop="name" content="Engineering Health"> <meta itemprop="description" content="a blog by engineers, for engineers"><meta name="twitter:card" content="summary_large_image"/> <meta name="twitter:image" content="https://engineering.cerner.com/images/alan-grace.png"/> <meta name="twitter:title" content="Engineering Health"/> <meta name="twitter:description" content="a blog by engineers, for engineers"/> </head> <body> <nav class="navbar navbar-expand-md navbar-light bg-light fixed-top shadow-sm" id="navbar-main-menu"> <div class="container"> <a class="navbar-brand" href="/"><img src="/logo.png" style='height: 40px;' /></a> <button class="navbar-toggler collapsed" type="button" data-toggle="collapse" data-target="#main-menu" aria-controls="main-menu" aria-expanded="false" aria-label="Toggle navigation"> <span class="navbar-toggler-icon"></span> </button> <div id="main-menu" class="collapse navbar-collapse" > <ul class="nav navbar-nav ml-auto"> <li class="nav-item"><a class="nav-link" href="/">Home</a></li> <li class="nav-item"><a class="nav-link" href="/culture/">Culture</a></li> <li class="nav-item"><a class="nav-link" href="/open-source/">Open Source</a></li> <li class="nav-item"><a class="nav-link" href="/tech-talks/">Tech Talks</a></li> <li class="nav-item"><a class="nav-link" href="/careers/">Careers</a></li> </ul> <div class="form-inline my-2 my-lg-0 searchbox"> <input id="search-by" type="search" class="form-control mr-sm-2" placeholder="Search" aria-label="Search"> </div> <script type="text/javascript" src="/js/lunr.min.js"></script> <script type="text/javascript" src="/js/auto-complete.min.js"></script> <script type="text/javascript"> var baseurl = "https:\/\/engineering.cerner.com"; </script> <script type="text/javascript" src="/js/search.js"></script> </div> </div> </nav> <main class="homepage container py-6"> <div class="hero row"> <div class="col py-lg-5"> <h1 class="display-4 font-weight-bold">Engineering Health</h1><h3 class="font-weight-normal text-muted">a blog by engineers, for engineers</h3></div> <div class="col position-relative py-lg-7 pb-5"><div class="homepage-image"> <img src="/images/alan-grace.png" class="img-fluid"> </div></div> </div> <div class="articles row row-cols-1 row-cols-lg-3"> <div class="col mb-3"> <div class="card h-100"> <a href="/blog/learn-what-the-rules-dont-cover/" class="d-block"><img data-src="/blog/learn-what-the-rules-dont-cover/HPRW2_hu5f96b186196f9cf791688032fe4bb195_190909_700x350_fill_q75_box_smart1.jpg" class="card-img-top mx-auto d-block" alt="Learn what the rules don't cover"><div class="card-body"> <h4 class="card-title">Learn what the rules don't cover</h4> <p class="card-text text-muted text-uppercase">April 19, 2013</p> <div class="card-text"> Most technical problems are like games. All of them have a way to win and all of them have rules; the easiest way to ensure you always win is to learn the rules inside and out, and more importantly what the rules don’t cover! Paying attention to what the rules don’t cover is what leads to out of the box thinking. What sets the great players apart from the rest is learning what the rules don’t cover which allows for creativity and, sometimes, shortcuts. </div> </div> </a> </div> </div> <div class="col mb-3"> <div class="card h-100"> <a href="/blog/ruby-at-cerner/" class="d-block"><img data-src="/blog/ruby-at-cerner/the.foxes-4c_hu7547722a8b728f33654c008d07c5b5b0_7048_700x350_fill_box_smart1_3.png" class="card-img-top mx-auto d-block" alt="Ruby at Cerner"><div class="card-body"> <h4 class="card-title">Ruby at Cerner</h4> <p class="card-text text-muted text-uppercase">April 5, 2013</p> <div class="card-text"> Cerner’s journey with Ruby started in the summer of 2009. We selected Ruby on Rails for rapid development of the Cerner Store to prepare for release at the Cerner Health Conference that year. In three months, with three engineers and a designer, we wrote and released the first version of an e-commerce web application. Two of those engineers, including me, had never worked with Ruby before but quickly realized the power and expressiveness of the language due to resources like Why’s (Poignant) Guide to Ruby. </div> </div> </a> </div> </div> <div class="col mb-3"> <div class="card h-100"> <a href="/blog/modularity-in-medical-imaging/" class="d-block"><img data-src="/blog/modularity-in-medical-imaging/Figure-1_hu43e72fb6463dfb8adeedf9a412b2cb74_164619_700x350_fill_box_smart1_3.png" class="card-img-top mx-auto d-block" alt="Modularity in Medical Imaging"><div class="card-body"> <h4 class="card-title">Modularity in Medical Imaging</h4> <p class="card-text text-muted text-uppercase">March 29, 2013</p> <div class="card-text"> Developers often take for granted the level of flexibility and customization that is available within the software they use every day. Consumers of imaging software have traditionally been completely confined to interpret exams a specific way, and frequently in ways that are unintuitive. Every physician, specialist, technologist, med student, and others across the continuum of care has a preference as to not only how exams are laid out, but what information is displayed with the images and what transformations would be applied or processed automatically. </div> </div> </a> </div> </div> <div class="col mb-3"> <div class="card h-100"> <a href="/blog/cerner-and-tycho/" class="d-block"><img data-src="/blog/cerner-and-tycho/P2-PomConfiguration-Edit2_hu6cb5dac69225d3ce7157f41a275bdaad_200952_700x350_fill_box_smart1_3.png" class="card-img-top mx-auto d-block" alt="Cerner and Tycho"><div class="card-body"> <h4 class="card-title">Cerner and Tycho</h4> <p class="card-text text-muted text-uppercase">March 27, 2013</p> <div class="card-text"> Introduction Tycho is a build tool for integration between PDE and Maven. Cerner has a long history of working with Eclipse RCP but P2 integration is something of a more recent phenomenon. This post is going to talk about how Cerner is using Tycho, what prompted our transition to Tycho and how we accomplished moving our build to using Tycho. Why we use Tycho The first question when evaluating any tool is asking yourself: “why would I use that”? </div> </div> </a> </div> </div> <div class="col mb-3"> <div class="card h-100"> <a href="/blog/near-real-time-processing-over-hadoop-and-hbase/" class="d-block"><img data-src="/blog/near-real-time-processing-over-hadoop-and-hbase/chart-search-screen_hu26ee20457c5aa986f1cc23f95c01380d_648930_700x350_fill_box_smart1_3.png" class="card-img-top mx-auto d-block" alt="Near Real-time Processing Over Hadoop and HBase"><div class="card-body"> <h4 class="card-title">Near Real-time Processing Over Hadoop and HBase</h4> <p class="card-text text-muted text-uppercase">February 27, 2013</p> <div class="card-text"> From MapReduce to realtime This post covers much of the Near-Realtime Processing Over HBase talk I’m giving at ApacheCon NA 2013 in blog form. It also draws from the Hadoop, HBase, and Healthcare talk from StrataConf/Hadoop World 2012. The first significant use of Hadoop at Cerner came in building search indexes for patient charts. While creation of simple search indexes is almost commoditized, we wanted a better experience based on clinical semantics. </div> </div> </a> </div> </div> <div class="col mb-3"> <div class="card h-100"> <a href="/blog/evangelizing-user-experience/" class="d-block"><img data-src="/blog/evangelizing-user-experience/roadNotes_before_huf7c3e169f390c06ddf0f18116a36b0c9_244540_700x350_fill_box_smart1_3.png" class="card-img-top mx-auto d-block" alt="Evangelizing User Experience"><div class="card-body"> <h4 class="card-title">Evangelizing User Experience</h4> <p class="card-text text-muted text-uppercase">February 12, 2013</p> <div class="card-text"> In the dark ages of development, great software meant packing in the functionality. People began doing more and more with their software. Updates meant newer and more exciting functionality. Sounds great, right? Of course it does, but something went horribly wrong. Slowly we became inundated with cluttered screens as software developers struggled to find a place to put their latest innovative functionality. Buttons began adding up and before we knew it, we were inventing user interface controls like ribbons to hold all the buttons. </div> </div> </a> </div> </div> <div class="col mb-3"> <div class="card h-100"> <a href="/blog/why-engineering-health/" class="d-block"><div class="card-body"> <h4 class="card-title">Why Engineering Health?</h4> <p class="card-text text-muted text-uppercase">February 4, 2013</p> <div class="card-text"> Hello and welcome to a public face for Cerner Engineering, by Cerner Engineering associates, to talk about engineering, technology, and all of the other awesome things we do. Cerner has been recognized as a visionary company, transforming the delivery of healthcare around the world. Improving the health of individuals and the delivery of care is an extremely large, complex, ever-changing problem. Along with the efforts of our strategists and consultant organizations, solving this problem takes a ton of smart folks in our Engineering and CernerWorks Hosting organizations, who are free to play with, adopt, and embrace new technologies and ways of working. </div> </div> </a> </div> </div> <div class="col mb-3"> <div class="card h-100"> <a href="/blog/composable-mapreduce-with-hadoop-and-crunch/" class="d-block"><img data-src="/blog/composable-mapreduce-with-hadoop-and-crunch/diagram1_hu7094931f5df834b55429a2ec082916c6_53870_700x350_fill_box_smart1_3.png" class="card-img-top mx-auto d-block" alt="Composable MapReduce with Hadoop and Crunch"><div class="card-body"> <h4 class="card-title">Composable MapReduce with Hadoop and Crunch</h4> <p class="card-text text-muted text-uppercase">February 3, 2013</p> <div class="card-text"> Most developers know this pattern well: we design a set of schemas to represent our data, and then work with that data via a query language. This works great in most cases, but becomes a challenge as data sets grow to an arbitrary size and complexity. Data sets can become too large to query and update with conventional means. These challenges often arise with Hadoop, simply because Hadoop is a popular tool to tackle such data sets. </div> </div> </a> </div> </div> </div> <nav aria-label="Navigation"> <ul class="pagination justify-content-center"> <li class="page-item"><a class="page-link" href="/page/9/" tabindex="-1">Previous</a></li> <li class="page-item"><a class="page-link" href="/">1</a></li> <li class="page-item"><a class="page-link" href="/page/2/">2</a></li> <li class="page-item"><a class="page-link" href="/page/3/">3</a></li> <li class="page-item"><a class="page-link" href="/page/4/">4</a></li> <li class="page-item"><a class="page-link" href="/page/5/">5</a></li> <li class="page-item"><a class="page-link" href="/page/6/">6</a></li> <li class="page-item"><a class="page-link" href="/page/7/">7</a></li> <li class="page-item"><a class="page-link" href="/page/8/">8</a></li> <li class="page-item"><a class="page-link" href="/page/9/">9</a></li> <li class="page-item"><a class="page-link" href="/page/10/">10</a></li> </ul> </nav> </main> <footer class="footer text-center bg-dark py-6"> <div class="container"> <div class="row"> <div class="col"> <ul class="list-inline"> <li class="list-inline-item"><a href="https://engineering.cerner.com/index.xml" rel="alternate" type="application/rss+xml" class="icons d-block"> <span class="fa-stack fa-lg"> <i class="fa fa-circle fa-stack-2x"></i> <i class="fa fa-rss fa-stack-1x fa-inverse"></i> </span> </a></li><li class="list-inline-item"> <a href="https://github.com/cerner" class="icons d-block"> <span class="fa-stack fa-lg"> <i class="fa fa-circle fa-stack-2x"></i> <i class="fab fa-github fa-stack-1x fa-inverse"></i> </span> </a> </li><li class="list-inline-item"> <a href="https://www.instagram.com/cernercorporation/" class="icons d-block"> <span class="fa-stack fa-lg"> <i class="fa fa-circle fa-stack-2x"></i> <i class="fab fa-instagram fa-stack-1x fa-inverse"></i> </span> </a> </li><li class="list-inline-item"> <a href="https://www.linkedin.com/company/cerner-corporation" class="icons d-block"> <span class="fa-stack fa-lg"> <i class="fa fa-circle fa-stack-2x"></i> <i class="fab fa-linkedin fa-stack-1x fa-inverse"></i> </span> </a> </li><li class="list-inline-item"> <a href="https://twitter.com/intent/follow?original_referer=https%3A%2F%2Fengineering.cerner.com%2F&screen_name=CernerEng" class="icons d-block"> <span class="fa-stack fa-lg"> <i class="fa fa-circle fa-stack-2x"></i> <i class="fab fa-twitter fa-stack-1x fa-inverse"></i> </span> </a> </li><li class="list-inline-item"> <a href="https://www.youtube.com/user/cernereng?sub_confirmation=1" class="icons d-block"> <span class="fa-stack fa-lg"> <i class="fa fa-circle fa-stack-2x"></i> <i class="fab fa-youtube fa-stack-1x fa-inverse"></i> </span> </a> </li> </ul> <p class="text-light"> Copyright © 2023 </p> <p class="text-light"> Made with ❤️ by Cerner engineers. </p> </div> </div> </div> </footer> <script src="/dist/main.0f92af9103b4f0550a4b.min.js"></script> </body> </html>