How Being a Consultant Taught me to Appreciate the Value of Time

In a recent job interview with a potential Atom, we were talking about some of the differences between product companies and life at a software consultancy like Atomic. One topic that arose was tracking time, and it occurred to me how much tracking work time at Atomic has changed the way I approach my work and personal time. Read more on How Being a Consultant Taught me to Appreciate the Value of Time…

Multiple HTTP Requests for an AngularJS + Google Sheets Prototype

As I continued to build out my AngularJS + Google Sheets prototype, I ran into another problem. I wanted to load the data from two Google Sheets and access the data in the same function. I created this example, which loads in one Sheet with weather forecasts and another with weather types and descriptions, as a proxy. Read more on Multiple HTTP Requests for an AngularJS + Google Sheets Prototype…

JSON to XML with AngularJS in Preparation for InDesign

In a recent project, I wanted to use Google Sheets as a content management system: the source for a print layout and a website. I wanted the content to reside in a single, easily editable location.

In order to achieve that outcome, InDesign requires the data in an XML file. But first, I had to convert the JSON data in Google Sheets to XML. This would allow me to customize the tag names to leverage the custom mapping styles feature within InDesign, which would make it a breeze to update the InDesign document as the content of the book changed. Read more on JSON to XML with AngularJS in Preparation for InDesign…

Creating a Dynamic Catalog with InDesign Templates & XML Data

My task for a recent project was creating a print catalog. The catalog content was constantly being updated, but each entry needed to have the same visual style. I knew there must be a way to do a majority of the design work and then “data merge” the content to the style, but it sure wasn’t easy to figure out. 

It took a ton of time piecing together a number of blog posts and experiments to find a repeatable process that worked for me. So here is my solution, combining InDesign and XML. Read more on Creating a Dynamic Catalog with InDesign Templates & XML Data…

How InVision’s Inspect Can Give Your Team One Source of Design Truth

Turning your visual designs into a polished product can be a challenge. This is especially true when the person creating the visuals is not the one to create the code. Depending on your project’s team structure, you as a designer may have heard questions like this:

Read more on How InVision’s Inspect Can Give Your Team One Source of Design Truth…

First Thoughts with InVision’s Craft Plug-in for Sketch

I have been quite a fan of the products from InVision.  They make creating clickable prototypes a breeze.

For quite a while now, InVision has supported uploading entire Sketch files, which has reduced the user’s pain of exporting each asset individually and then uploading those assets to InVision.  They are now taking things one step further with the Craft tool. Read more on First Thoughts with InVision’s Craft Plug-in for Sketch…

Adding Google Analytics to an AngularJS App with ngRoutes

As my recent project using Google Sheets and AngularJS grew into a successful prototype, I ran into a series of issues creating a feedback loop. I wanted to set up a tracking tool for page hits and log searches by users. My goal was to identify the pages that were used the most and the least in order to understand which tools were popular and which were not. Tracking this information would allow us to do more internal teaching or start phasing out the tools that were not helpful. So, I thought hey, I’ll just use Google Analytics; it’s easy. Wow, was I mistaken.
Read more on Adding Google Analytics to an AngularJS App with ngRoutes…