Introducing Blueprinter

A new way to format and serialize APIs. Blueprinter is a declarative and fast Ruby object to JSON serializer, an alternative to solutions like Active Model Serializers. Why build another serializer? When we began writing Blueprinter, existing options at the time of writing were few, most suffered from poor performance and hard to read code. Procore has a very large API, with hundreds of endpoints representing hundreds more data structures. We needed a fast, simple option that we could use across our gamut of different needs. We noticed an opportunity to solve our needs as well as something we could... Read More

Twisted Tales

Making Redux Saga scalable with TDD, SOLID principles and the Narrator Design Pattern There and Back Again... Asynchronous code is hard. Talking to a server is one of the most critical parts of a modern web application, and being able to write tests around this communication layer is imperative. The JavaScript ecosystem has some excellent state management solutions, with Redux being probably the most popular flavor. This simple and intuitive library provides the best solution we've seen to a longstanding problem, and is built with testability in mind. However, we've found that the asynchronous libraries commonly used with Redux can... Read More

Procore Sponsors and Attends the Grace Hopper Conference

Last week, Procore sponsored the Grace Hopper Conference and gave developers from Research and Development the opportunity to attend. Twenty-five of them decided to go and promote Women in Construction, Women in Engineering, and Diversity & Inclusion. The Grace Hopper Conference is the world's largest gathering of women technologists featuring speakers like Melinda Gates, founder of the Bill & Melinda Gates foundation, as well as Dr. Fei-Fei Li, the Chief Scientist at Google Cloud. The event is designed to bring women together from across the globe who are involved in technology––a male-dominated industry––in order to encourage the sharing... Read More

Transforming Data Into Insight

This article was originally published on Procore's corporate blog. Construction is changing. While paper and pencils may seem pervasive in the industry, their days are numbered as new forms of technology make capturing, reporting and managing information much easier. But evolution brings a new set of challenges to the table, namely collecting, managing and analyzing all this newly acquired data. The scale of this challenge is even more astounding when you consider the wide range of sources for data these days. Excel and accounting systems aren’t the only culprits when it comes to generating masses of data. This scale... Read More

Improving Essential Workflows in a Legacy Code Base

Procore provides a suite of project management tools for teams collaborating to build large-scale construction projects. The tools allow our customers to share access to critical items like documents, scheduling systems, and data. We offer a native iOS app for our customers to access their documents from iPhones and iPads. One of the most important documents they need access to are Drawings (also called blueprints or plans). Over the last few weeks we’ve been focused on enhancing the performance of our Drawings tool to provide a great experience to our customers navigating through thousands of Drawings. When we first... Read More