Flaky Tests: The Tester's F Word thumbnail

As an engineer reviewing failing tests, there is almost nothing worse than trying to debug and investigate a flaky test. A flaky test is one that when run multiple times, it sometimes passes and sometimes fails. From a developer perspective, tests are supposed to just work. When they fail, they…

Angular 2 has several different paradigms for bootstrapping an application. The default platform that is used in Angular’s examples is the dynamic browser platform. Platform browser means that this application is going to be bootstrapped in a browser and will therefore have direct access to the DOM and other browser…

Let’s be honest. Setting up a “modern” front end application in 2016 can be painful. Luckily the Angular 2 team has provided a command line tool, angular-cli, to help ease the pain. Although it is still in beta, angular-cli is a great way to set up an Angular 2 project…

How to Make a Presentation in LaTeX thumbnail

When I was tasked with creating a presentation to share with my co-workers at our weekly tech talk, I chose to use LaTeX. While I briefly considered other tools, like Google Slides or PowerPoint, using LaTeX allowed me to easily separate the styling from my content and create my own…

Tracking data in complex Java code:  A functional programming approach thumbnail

Companies across all industries are increasingly adopting cloud technologies. Naturally, many Visio users move to Lucidchart as they step into a more modern, collaborative, and integrated diagramming environment. To help make their transition as smooth as possible, users can import existing Visio documents into Lucidchart.  We’re constantly collecting feedback on…

Angular 2 and Observables: Data Sharing in a Multi-View Application thumbnail

Recently, I started on a project to migrate JavaScript to TypeScript in one of Lucidchart’s Angular 2 applications. This application has several components, each with its unique view. For those not familiar with Angular 2, a component is merely an encapsulation of a view on a webpage with its associated…

How to Create a Downtime Dashboard Tool with Zapier and Google Sheets thumbnail

At Lucid we want to monitor the health of our services both individually and in aggregate. Last month we worked on setting up a new downtime dashboard tool. We wanted the following functionality: a record of incidents containing the duration of downtime, the service(s) affected, and information about the cause…

5 Smart Strategies to Increasing Productivity in the Workplace thumbnail

In the information age that we live in, attention is one of the most precious resources a person has. Traditional advertisers, online companies, and device manufacturers fight hard for every millisecond  of a consumer’s attention. At a workplace, frequent distractions are one big productivity killer. On average, it takes 23…

Acing the Engineering Interview Part 2: In the Interview thumbnail

Coming in for an interview is the most intimidating part of the hiring process. In just three short hours, you have to answer questions, solve problems, and convince five or six interviewers that you are the person they need to hire. It starts with proper preparation, but even the most…