Back to all posts

Using real sample data to make great designs

Helping you create a customized JSON file to generate product related content.

Most of us know 'Death to Lorem Ipsum' and the benefits of designing products with real content. Smarter people in the design community have written about it so let me skip that.

For the purposes of this article, we’ll be working with JavaScript Object Notation a.k.a JSON. It is a data exchange format that is used for transmitting data. In the simplest of terms, its main purpose is to do two things: it should be easy to read for a human, and it should be easy to parse for a machine.

A JSON file can hold lots of sample real data and when used with our designs, it can skyrocket them from flat and pretty to functional and kick-ass.

For example, if you’re building the next Tinder, a JSON file can generate a good number of random names and other personal details. After reading this article, you’ll be able to filter those names based on gender, nationality and more.

To learn more about JSON, you can start with: http://www.json.org/ or even better, take your team's front-end developer out for a drink and they'll explain it to you. The latter has lots of benefits. 👊🏼

Things you’ll need

  1. Craft by Invision or any other content generating plugin that can import a JSON file.
  2. Sketch or Photoshop as your design tool
  3. Mockaroo.com, Randomuser.me and uinames.com as your random data generator. These are our trump cards and each of them has it's own benefits. I've only picked three but feel free to suggest more.
  4. Ironman Action figure for motivational purposes because why not!


Quick note on the random generators

Screenshots of Mockaroo, Randomuser and UInames

Mockaroo by Mark Brocato supports around 100 data types — from basic ones likes email and time to interesting ones like Drug company, IBAN, and MAC address. It also allows you to use personal datasets and Regular Expressions a.k.a Regex ( Yes! the chat with your front-end developer will come in handy here ).

UInames by Thom is simple and neat. It helps you refine profile names based on region and gender. For e.g If your users are from Germany, Zoe Keller sounds more apt than Muhammad Sen. This was extremely useful to me when I was building some local products.

Randomuser by Keith Armstrong & Arron Hunt also has some good basic data types of which profile pics and Birthdays stand out.

Four simple steps

1. Write it down

Start by listing down the data types needed for the project. This will help you to choose the right random generator among the three.

2. Fire the request

Everything about the services are explained in their documentation. However here's two quick tips; After the service link, start with '?' and separate each filter with '&'.

For example, to generate 50 results of profile pics for a ladies club the randomuser request will be : …/?format=json&results=50&gender=female. Some examples towards the end of this post will help you better.

Note: Only for randomuser, start with the format parameter i.e., JSON.

3. Save the file

Now that you've generated the file with parameters, all you need to do is right-click to save the file in JSON format. You can skip this step if you’ve used Mockaroo because they have the option to download the file.

Saving a JSON file in the correct format.

4. Load the file in Sketch or Photoshop

This step needs no instructions. I know you’re good at it but if you’re stuck, visit the data section in https://www.invisionapp.com/craft to see how a JSON file is loaded.

Some examples

1. Drugs and the companies used by the French

  1. French names from UInames
    http://uinames.com/api/?region=france&amount=10
  2. Profile photos from Randomuser
    http://api.randomuser.me/?format=json&results=25
  3. Drug and Company from Mockaroo
Mockaroo screenshot

2. Internal users (Full Names) with their MAC address and App version

Full name, MAC address and App version from Mockaroo

Choosing a data type in mockaroo

3. Profile photos of all the members of a ladies club

Profile photos from Randomuser
http://api.randomuser.me/?format=json&gender=female&results=25

Connecting the JSON file using Craft and loading the first profile photo.

Craft screenshot.

Depending on the number of requests made, JSON file will take some time to download all the profiles. You can see it at work here:

Duplicating the content takes some time.

Can we take you from stuck to unstuck?

We'd love to hear from you

Product Design

The ‘Product’ is the website, service, application, interactive thing being worked on by the business. The practice of Product Design is similar in a lot of ways to UX Design. It involves the coming together of many specific design disciplines...

Call to action (CTA)

A call to action is a marketing term that refers to a prompt that invokes a response leading to a sale. When referring to a call to action (CTA) in the digital design world we usually mean the interactive element that leads to the next step in the experience - something that needs to be clicked or tapped.

User testing

User testing refers to a technique used in the design process to evaluate a product, feature or prototype with real users. There are several reasons why you might want to undergo usability testing, the most common is that it allows the design team to identify friction in a user experience they are designing, so that it can be addressed before being built or deployed.

WYSIWYG

WYSIWYG (pronounced WIZ-ee-wig) is an acronym for "What You See Is What You Get". It helps identify an an interface that allows user input resulting in an output that is rendered in a similar way. For example; a word processor application interface might resemble a piece of paper,so when printed the user can see how the output will appear.

Content Management System

A content management system (CMS) is an tool that allows a website editor/administrator to manage the content that is displayed. Websites are made of HTML and CSS to create pages. Pages can be hard-coded but would require technical development skills to make changes. A CMS usually allows a person without coding knowledge to amend existing and add new content to a website using a WYSIWYG interface.

Responsive Web Design

Responsive web design refers to a web page that dynamically adapts its layout to fit the size and orientation of the device on which it is viewed. A responsive design allows for a more optimised user experience across desktop and laptop computers as well as smartphones and tablets of varying sizes.

User Stories

User stories allow the functionality of a product or service to be expressed as written descriptions of an experience as seen from the users perspective. The writing of user stories creates a list of design and development tasks to complete in order to create any required functionality.

User Interface

A user interface (UI) is a conduit between human and computer interaction - the space where a user will interact with a computer or machine to complete tasks. The purpose of a UI is to enable a user to effectively control a computer or machine they are interacting with, and for feedback to be received in order to communicate effective completion of tasks.

Personas

A persona in UX Design is the characterisation of a user who represents a segment of your target audience. On a project you might create any number of personas to be representative of a range of user needs and desires. The solutions you design must answer these needs in order to deliver value to your target audience.

Card sorting

A great, reliable, inexpensive method for discovering patterns in how users would expect to find content or functionality. Card sorting is used to test the taxonomy of data with a group of subjects, usually to help inform the creation of the information architecture, user flow, or menu structure on a project.

Brainstorming

A technique used to generate ideas around a specific topic. Often done in groups, but can be done individuals. The process usually involves writing down all ideas around a topic onto paper, a whiteboard or stickies often implying some kind of association.

Minimum Viable Product

An MVP is a product that has the minimum set of features to prove the most essential hypothesis for a product. Businesses building a new product can create a Minimum Viable Product to prove that an idea is viable and warrants further investment. A further benefit being that the next stage of development can be informed by feedback obtained from testing that MVP.

Sitemap

A sitemap is a diagrammatic representation of a hierarchical system. It usually depicts the parent-sibling relationship between pages in a website, showing how sub pages might be arranged underneath their parent groupings. This arrangement forms a map of the site.

User journey

A user journey represents a sequence of events or experiences a user might encounter while using a product or service. A user journey can be mapped or designed to show the steps and choices presented as interactions, and the resulting actions.

Prototype

A prototype is draft representation built to test ideas for layout, behaviour and flow in a system. Prototypes are an indispensable tool for resolving a large number of potential issues in a concept or business before too many resources are deployed to put a design into production.

Wireframes

A Wireframe is a visual schematic that conveys a basic level of communication, structure and behaviour during the design of a system. Wireframes are low-fidelity designs that bypass including a detailed user interface or visual design, conveying just enough to get across the core idea.

Usability

To say something is usable is a qualitative statement about how easy that thing is to use. Usability is an assessment of how learnable a system is and how easy a user finds it to use. The usability of a system or product is a key factor in determining whether the user experience is a good one.

Information Architecture

Information architecture is the design and organisation of content, pages and data into a structure that aids users understanding of a system. A more organised system enables users to more easily find the information they require and complete the intended tasks.

UI Design

User Interface Design is the discipline of designing software interfaces for devices, ideally with a focus on maximising efficiency, responsiveness and aesthetics to foster a good user experience.

UX Design

The practice of User Experience (UX) Design is the coming together of many specific design related disciplines to improve the usability, responsiveness, uptake and aesthetics of a product or service.

User Experience

A general term that covers all aspects of a user's participation while engaging with something that has been designed. Usually when talking about User Experience in the digital design field it refers to the interactions, reactions, emotions and perceptions while using an app, service, website or product.