Time-saving Chrome DevTools Shortcuts thumbnail

It is impossible to imagine modern web development without the use of Chrome DevTools. Thanks to a clean UI and continuous improvements to meet real-world needs, the tool has  become the go-to live development environment that surpasses many contemporary IDEs in both functionality and performance. But how productive are you…

42 Things I Learned from Working in IT thumbnail

When I was hired on at Lucid, we had fewer than 100 employees. At that time, computer and hardware responsibilities were split between DevOps, security, and office management. If you had any issue with your computer or other hardware, your best bet was to figure it out yourself or just…

Agile Documentation: Keeping Your Team in Sync in an Agile World thumbnail

Remember writing a detailed lab report or paper in school? We’ve all been there, and I doubt many of us really enjoyed it. Process and product development documentation can leave that same sour taste in your mouth if it’s just documentation for the sake of documentation. Documentation can take hours…

The Critical Path: Optimizing Load Times With the Chrome DevTools thumbnail

Recently, my team was tasked with delivering a limited version of Lucidchart to embed inside another application. Because Lucidchart would only represent a small part of the total functionality visible to the user, we wanted to make sure that we didn’t bog down the overall load time. Our total time…

Fantastic Testers and How to Hire Them, Part 2 thumbnail

Introduction Welcome back to the blog, and welcome back to this series on hiring fantastic testers. Previously in part one, I talked about what to consider before you even start the process of hiring a tester. To find a good candidate, you have to look for certain traits: curiosity, creativity,…

JavaScriptCore - The Holy Grail of Cross Platform thumbnail

The perfect cross-platform solution. The Holy Grail. The El Dorado of app development. The dream that multiple languages have promised, but none have delivered. As we speak, there are likely a dozen cross-platform projects in the R&D phase—all with a couple years worth of funding and all being built with…

How to Debug Disk Full Errors in Redshift thumbnail

When working with Amazon’s Redshift for the first time, it doesn’t take long to realize it’s different from other relational databases. You have new options like COPY and UNLOAD, and you lose familiar helpers like key constraints. You can work faster with larger sets of data than you ever could…

Mobile Test Automation That Works thumbnail

At Lucid, we automated half of our manual regression testing for our Lucidchart Android app—knocking the regression cycle down from six to three hours.  As Lucid moves toward a continuous release cycle, we are working to reduce manual QA testing for server and native releases to only one hour of…

Compile-time Dependency Injection With Play thumbnail

The Play Framework provides a lot of features, which makes it incredibly easy to scale infrastructure. However, scaling a codebase is more difficult. As developers create new components and more complex relationships, the codebase can become unruly for all. To help with this problem, one can use a dependency injection…

I recently finished a project which required me to modify an annotation macro for Scala using the Scala Macros Paradise project. Because I was extensively modifying a macro that we were already using, I wanted to write tests to prevent breaking our current workflow and to check that the new…