Nuggets of Truth!

4 Usability Testing Tools for Designers on a Budget

Webdesigner Depot - Fri, 07/21/2017 - 06:45

Have you ever encountered a website with confusing navigation? Been sent down the wrong path by misleading labels? Or needed your best detective skills to find a particular piece of content? It’s frustrating, isn’t it? What can companies do to ensure that users can find what they are looking for on a website?

Usability testing allows you to measure the effectiveness of the site structure and labelling against real user tasks. Get real users’ insights to help you evaluate which parts of your content hierarchy work well, and which parts don’t. So you can make informed design decisions about how to organize and label your content.

To help make the world a little easier to navigate and enjoy, you can use a technique called “Lab Usability Testing”. With this process, it is possible to get tips to improve UX and enhance the usability of your product. Individual testers whose profiles match those of the target users perform typical tasks with your product or a prototype. A researcher facilitates the quiz sessions and controls different conditions to identify usability problems and their causes.  While it is one of the most reliable methods to collect data and confirm or challenge assumptions, lab testing services are quite expensive.

Fortunately, there are some tools you can use for your business that are free, or relatively cheap.

1. Usability Hub

Usability Hub features five online tools that enable usability testing of a website or a web application using screenshots of pages:

Five Second Test

This tool can be used for optimizing the clarity of design by measuring a customer’s first impression.

Step 1. Upload a website screenshot and set a number of questions.

You can create your questions or choose one of the predefined questions such as “What product do you think this company sells?” or “Which element on the page did you focus on most?”. You can also ask people to rate the quality of this page between 1 (worst) and 5 (best).

Step 2. Show a design to people for five seconds and ask what they remembered.

Step 3. Check a report with answers. It can be organized as a list of keywords or as a word cloud.

First Click Analysis

This tool helps you estimate how efficient your designs are at letting users perform a proposed task.

Question Test

After uploading a design, you can assemble and investigate user feedback. In addition to the response data, the system creates a word cloud to help you identify regularly occurring keywords.

Navigation Test

This tool helps you enhance your conversion rate by analyzing how users navigate through your websites and applications.

Preference Test

This tool can be used to decide between design options by asking people which one they prefer.

Pricing: Responses from people you invite are free. Responses from the Usabilityhub tester panel start at $2.50 per user.

2. Optimal Workshop

With Optimal Workshop you can optimize your site using five different tools:

Tree Testing

This tool takes visual design out of the equation, allowing you to measure the effectiveness of your site structure and labelling against real user tasks.

First-click Testing

The tool records the first click. Heat maps will then show you exactly where users get troubled, or confused, by your content.

Step 1. Upload your screenshots or designs and add a list of typical user tasks

Step 2. Ask user to proceed with the task

Step 3. Check these insights and make any required changes.  

Card Sorting

Start by testing with the simple method of card sorting to find out how other users would classify and label content on your site. Following these patterns helps you organize content in a way that makes sense to the people using your products or services.

Pricing policy: free and paid versions; free version includes 10 responses per study and 3 tasks per study.

3. Feng-GUI

Feng-GUI simulates the user’s view for the first 5 seconds. This application creates an eye movement map on the page based on an algorithm that predicts what the real person is most likely to see.

Right on the main page of the site you can upload a screenshot and see the probable areas of the visitor’s attention.

Pricing policy: free and paid versions; you can upload 1 screenshot every 8 hours for free.

4. TestFairy

TestFairy is designed for iOS and Android Mobile beta testing. It provides you with video of the tests so that you can see what exactly went wrong on the customer side.

The process is simple: upload your app, invite your friends or colleagues to examine it, then check results when the tests are performed.

There are several ways to send your app to the people you would like to test it:

  • Email invitations: Enter your prospective testers’ email addresses, and send a message with a link to download the app.
  • Native testers app: There is a TestFairy app for downloading and installing the apps to be tested.
  • Web app: Testers who want to use an application but do not want to install a native app on their device can use this.
  • Public beta pages: You can publish a public beta landing page for every TestFairy application, with an open invitation.
In cases where this is needed, you can set your project to work in ‘strict mode’ that will require testers to login before they download your app.

With more than 10,000 devices in the mobile world, your app can look different on every device. One of the most challenging jobs for mobile developers is to make confident that any app looks the same on all devices. The tool provides you with reports allowing you to see how every part of your app looks on every device.

Pricing policy: free and paid (enterprise) versions.

Conclusion

Online tools for usability testing help find out how much the site meets the expectations of users. Following recommendations leads to increased involvement and, ultimately, conversion of visitors to buyers. Many companies spend millions on testing the effectiveness of their web resources. You can do this with the help of online services. Even small changes can lead to significant positive performance.

700+ Hand-Drawn Graphic Elements – only $24!

Source p img {display:inline-block; margin-right:10px;} .alignleft {float:left;} p.showcase {clear:both;} body#browserfriendly p, body#podcast p, div#emailbody p{margin:0;}

Draw a bad-ass geisha

Creative web design! - Thu, 07/20/2017 - 11:04

In this geisha illustration I wanted to capture a grungy, dark, urban vibe, laced with elegant traditional Japanese elements. The idea that kept coming up again and again was to make her ‘bad-ass’. That’s the core essence of Geiko – she's a geisha turned self-serving samurai, a vigilante within a dangerous cyberpunk universe. I got the idea from a competition to design a geisha or samurai character.

Here, I’ll explain how I developed this Geiko illustration, and my whole thought process and approach to the design. You’ll pick up tips on how to push your ideas forward and craft the final details. I want to leave you with concepts and methods you can adapt and use in your own work. So let’s start with the most crucial bit...

1. Visualise the big idea

Geiko is a young geisha doll, driven by anger and revenge, roaming the streets as she takes down all the bad men that hurt people like her (Click the icon in the top-right of the image to enlarge the picture)

The very first step is deciding the look and feel of the character and capturing it all with a rough sketch. The most important thing is knowing exactly how you want your audience to feel about your character, because this will drive your whole thought process from start to finish. My core idea was to design Geiko so that people’s gut reaction to seeing her is: “That’s bad-ass!”

2. Generate thumbnails

Develop initial rough ideas that fit in with the big idea (Click the icon in the top-right of the image to enlarge the picture)

With that clear goal in mind, I jump into SketchBook Pro and use the Triangle brush to sketch my ideas out, exploring and pushing them further while staying true to the original Geiko essence. I keep it loose and gestural at this point, making notes on the ideas that I’d like to take forward. Throughout this process I keep asking myself, “Is she bad-ass enough?”

3. Finalise the idea

Play with your favourite ideas to try out variations (Click the icon in the top-right of the image to enlarge the picture)

This is where I take all my favourite ideas that came out of the thumbnail process and explore how they can better capture Geiko’s essence. I duplicate my favourite thumbnail several times and try out those ideas, mixing more Japanese cultural elements back in with an urban cyberpunk twist. Don’t add too many details just yet. All you want to do here is finalise your big idea.

4. Polish and craft the design

Refine the final character more (Click the icon in the top-right of the image to enlarge the picture)

Everything from this point on is just polishing up. You’ll still be making some design choices, but the core essence shouldn’t change. I usually start with the face, because it’s the most important part of any character. If I get it right, the rest falls into place. There are no secrets here. I sketch with the Triangle brush and Eraser, pressing S to quickly flip between the two brushes.

5. Refine the clothing

Use references to draw realistic clothes (Click the icon in the top-right of the image to enlarge the picture)

The next major element to get right is her kimono. I start by grabbing some references. (But remember: references are just guides, so don’t feel bound by them.) Then I create a new layer and make a rough sketch, focusing on the design and flow of the wrinkles. For the final look, I use the Eraser to follow my initial line work on the black kimono and create the white-on-black effect.

6. Accessories and props

You can build the character's personality through accessories (Click the icon in the top-right of the image to enlarge the picture)

Using references, I work on the swords on her back, making a quick sketch in red to explore the function of the strap, while also playing with the idea of adding kunai knives. I also try to add clues about her personality, like a Totoro charm at the end of one of her swords. It’s subtle, but it helps make the character seem more well-rounded.

7. Bring in detail on her boots

White highlights create the impression of glossy leather-like fabric (Click the icon in the top-right of the image to enlarge the picture)

Next I start cleaning up Geiko’s boots. In a similar way to how I did the clothing, I use the Eraser to create the line work, which is consistent with the style of the image. Her footwear is inspired by a mixture of high-heeled boots with a sporty twist and Japanese ninja sandals. I want to create a glossy type of material for her legs, so I add white highlights to achieve that look.

8. Create the mechanical gauntlet

Tweaking details like this can bring them to life (Click the icon in the top-right of the image to enlarge the picture)

I want to keep the essence of my sketch, so I use the base silhouette of the gauntlet and start cleaning it up, erasing panel lines in, and drawing exposed wires to make it feel more customised instead of being built in a factory. I flick back and forth with the S key throughout, drawing lines in and erasing where necessary. I realise that the silhouetted gauntlet is blending in too much with her kimono, so I opt for a lighter version that helps to create a better read.

9. Stop… it’s paintover time!

A quick paintover puts the character in context (Click the icon in the top-right of the image to enlarge the picture)

Now that I’m almost done with the design, I take a step back and look for any bits I can push further. A quick paintover enables me to explore how I can exaggerate Geiko’s bad-assery. I add a more well-rounded toolset of weapons including samurai gun-swords and a traditional Japanese umbrella. Then I push the storytelling with dripping blood and bullet holes, along with a smoke trail that adds movement, mystery and depth.

10. Detail Geiko’s primary weapon

Build up details that add to the character's story (Click the icon in the top-right of the image to enlarge the picture)

From the loose sketch done in the paintover stage, I begin to finalise the main sword design. I don’t want her weapon to be elegant or well-crafted, but to feel more imposing and threatening, so I choose to go with an exaggerated butcher’s knife. I use the Ruler and Lazy Mouse features in SketchBook Pro to create the long, sweeping arcs in the blade, ensuring the line work feels rough and grungy.

11. Add the finishing touches

Even discreet Japanese writing needs to be accurate (Click the icon in the top-right of the image to enlarge the picture)

Before finishing up the design, I take the time to polish it up. I decide to add more details to her mask and sword, tweak the design of her cross-body strap and give her some branding and tattoos, making sure I use the correct Japanese phrases. Details like these count. I also include a shadow pass to add more depth, as well as the juxtaposition of her red demon eyes and rosy red cheeks.

12. Establish the background

The story becomes more believable with a background for your character (Click the icon in the top-right of the image to enlarge the picture)

With the character done, I jump into Photoshop to create the background and atmosphere to round off the piece. I imagine Geiko in a back alley, fresh from a fight. So I add a floor and wall pattern, making these more sci-fi and grungy looking to enhance the cyberpunk feel. I add a quick gradient to them, which helps pop the character from the background and add more depth to the image.

13. Build background details

Custom brushes and textures push the realism (Click the icon in the top-right of the image to enlarge the picture)

I now add extra details and textures to the environment. Bullet holes, dust particles and dripping blood help tell more of Geiko’s story and push the final illustration. I use masks to blend some of the line work out, and use texture on the background and character with custom brushes to help it appear less digital.

14. Bring in action cues to push the mood

Use quick movements to draw puffs of smoke (Click the icon in the top-right of the image to enlarge the picture)

For even more depth and mood, I add action cues like smoke at Geiko’s feet. I use the Lasso tool to create the shape of the smoke, taking into account the wind direction that may tilt it slightly. I do this quickly to capture the motion, instead of lingering on it too long and making it too refined. Once I fill in my selection, to make it appear more like smoke I reduce the Opacity and use a mask to blend out specific parts even more, letting the background elements pop through.

15. Add a brand to your work

Identify your work as yours (Click the icon in the top-right of the image to enlarge the picture)

Branding, like your logo or signature and website URL, helps make your illustration yours wherever it ends up. People will always know whom to credit and future clients can contact you easily. Don’t forget to give it a title, too. It’ll help finish it off and make the piece feel more considered and complete.

This article originally appeared in ImagineFX issue 149. Buy it here!

Related articles:


Google Redesigns its Mobile Search

Webdesigner Depot - Thu, 07/20/2017 - 10:45

Google’s minimal search page has consistently been heralded as a minimalist masterpiece since it first appeared in 1996. It’s been argued by numerous designers—myself included—that it was the perception of Google as a ‘pure’ unadulterated search was more central to Google’s rise and eventual dominance, than the merits of its (in)famous algorithm.

So it’s something of a surprise to learn that Google is abandoning this minimalist approach in its mobile apps in favor of a social media-style newsfeed.

Starting in North America immediately, and rolling out worldwide in the coming weeks, Google on iOS and Android will now show users a ‘personalized’ newsfeed, before they enter a search term.

News, editorials, videos, images, and music shown in the feed will be based on previous searches by the same user. You’ll also have the option to tap a ‘follow’ button to add interesting topics to your feed. But that’s not all, according to Shashi Thakur, VP Engineering, Google:

your feed will not only be based on your interactions with Google, but also factor in what’s trending in your area and around the world

Not a fan of Game of Thrones? Too bad, if everyone’s watching it, you will be too. Bad news for those of us that didn’t get around to season 3 yet.

Naturally one of the biggest concerns about this shift in emphasis is that Google will editorialize content. It’s impossible to avoid bias; even an AI, making decisions based on mathematical formula has bias coded in. Anyone who has ever seen personalized advertising online (everyone), will know how difficult tech companies find it to accurately tailor this type of content.

Of course Google didn’t knock this one out in the course of a lunch hour. It’s a fair bet that its annual turnover is greater than the combined lifetime incomes of everyone who’ll ever read these words, Google have tested and tested and tested and tested this. Neither is this move entirely unprecedented; G+ attempted to build a social network by piggy-backing on Google’s core service, and the newsfeed itself has already been trialled since 2016.

Google’s aim is simple: keep users on Google. Whether it’s AMP, or Material Design, Google’s focus—like any profitable business—is on retaining quality customers, especially on mobile. As Shashi Thakur stated:

The more you use Google, the better your feed will be

The impact goes beyond SEO. Two decades ago Google launched a bold, unashamedly minimal site amongst a sea of maximalism. That bravery resulted in a timeless design that established a brand and changed the web. By taking Google’s mobile search in a new direction, the company is changing the way we find, and therefore consume, content online.

700+ Hand-Drawn Graphic Elements – only $24!

Source p img {display:inline-block; margin-right:10px;} .alignleft {float:left;} p.showcase {clear:both;} body#browserfriendly p, body#podcast p, div#emailbody p{margin:0;}

Get Computer Arts' Self-Promo issue completely free!

Creative web design! - Thu, 07/20/2017 - 10:07

We post reams of articles for artists and designers every week: tutorials, advice, news, features, reviews, and loads more. 

To make things easier, each week we curate a weekly email digest of the best content from Creative Bloq and its associated brands Computer Arts, net, ImagineFX, Paint & Draw, Web Designer, 3D Artist and 3D World.

If you're not already signed up, here's an even better reason to get involved: a completely free digital edition of Computer Arts' Self Promo issue. As sold for £6, its crammed with inspiring ideas to get you and your work in front of clients. And it's yours to keep and read on your Mac, PC or mobile.

So, to get the best of Creative Bloq every week, and your free digital edition of Computer Arts issue 260, just enter your email address into the form below (we promise we won't sell it), and look out for the link in your inbox.

New tool to make GIFs fast

Creative web design! - Thu, 07/20/2017 - 09:58

Lots of us use GIFs every day to communicate ideas or feelings more smoothly than words allow. A quick search through your inbox or Slack channel is sure to turf up lots of funny reaction GIFs, but they're capable of more than just oiling the wheels of office banter. For designer and remote worker Steven Fabre, GIFs are an invaluable way to show interactions in designs.

Whereas videos, video calls and screen recordings are relatively time-consuming, Fabre found that GIFs were a straight to the point way of communicating with teams remotely.

"The problem was, creating those GIFs was extremely time-consuming," Fabre explains. "I would design my states in Sketch and export those so I could open them in Photoshop. From there, I would overlay them on top of each other and turn visibility on and off via the timeline. And to make things worse, every time I would make a change in my design, I had to go through this whole cumbersome process all over again."

To this end, Fabre created Gifmock, a simple desktop application for macOS that helps users to create high quality GIFs from their mockups.

Create your perfect mockup GIF with Gifmock

With the Gifmock Sketch plugin, users can design interaction states and instantly turn them into frames. Once the frames and timings are perfected, the GIFs can be easily exported to Slack or wherever your team is based.

Alternatively, animations can be designed in After Effects. Just drag and drop a video to automatically turn it into a GIF without having to worry about a compromise of quality and frame rate. Once it's ready, you can publish the GIF on Dribbble.

Photos and Keynotes slides can also be imported into Gifmock to create engaging GIFs that can be used on Twitter. To get the perfect look, the timing of the frames can be changed, plus you can crop them all at once with a real-time thumbnail preview.

Fancy creating your own mockup GIFs? You can grab Gifmock for $14, with no rolling subscriptions to get locked into. You can even download a free 14 day trial to see if you like it before you buy it.

Some designers are already using it for, er, mainly important work:

Related articles:

​Edit your website, from your website

CSS-Tricks - Thu, 07/20/2017 - 09:44

Stuck making "a few easy changes" to the website for someone? Component IO makes it quick and simple for you or your team to make edits (even for non-technical users).

You can manage content with a WYSIWYG editor or instantly update HTML, CSS, and JavaScript right from your website. Make changes faster, empower your team, and avoid redeployment bugs. Works with every web technology, from WordPress to Rails to React.

Join hundreds of projects already using Component IO, with a free tier and plans from $7.95/mo. It's built to make web development easier for everyone.

Try it free

Direct Link to ArticlePermalink

​Edit your website, from your website is a post from CSS-Tricks

Playing with Shadow DOM

CSS-Tricks - Thu, 07/20/2017 - 09:44

About a year ago, Twitter announced it would start displaying embedded tweets with the shadow DOM rather than an <iframe>, if the browser supports shadom DOM?

Why? Well, speed is one reason.

They say:

Much lower memory utilization in the browser, and much faster render times. Tweets will appear faster and pages will scroll more smoothly, even when displaying multiple Tweets on the same page.

Why the choice? Why is it necessary to use either iframes or shadow DOM? Why not just inject the content onto the page?

It's a totally understandable need for control. An embedded Tweet should look and behave just exactly like an embedded Tweet. They don't want to worry about the styles of the page bleeding in and messing that up.

An <iframe> makes style scoping very easy. Point the src of the iframe at a URL that displays what you want an embedded tweet to look like, and you're good. The only styles used will be those you include in that document.

Twitter does this iframe-injection in a progressive enhancement and syndication-friendly way. They provide a <blockquote> with the Tweet and a <script>. The script does the iframe-injection. If the script doesn't run, no matter, a happy blockquote. If the script does run, a fully functional embedded Tweet.

That script is the key here. Scripts can do just about anything, and they host it, so they can change it up anytime. That's what they use to detect shadow DOM support and go that route instead. And as we covered, shadow DOM is faster to render and has lower memory needs. Shadow DOM can also help with the style scoping thing, which we'll look at in a moment.

Height flexibility

There's another thing too, that happens to be near and dear to my heart. An <iframe> doesn't adjust in height to fit its contents like you expect other elements to do. You set a height and that's that. It will have scrollbars, if you allow it and the content needs it. Back in the Wufoo days, we had to jump quite a few hoops to get embedded forms (in frames) to be as tall as they needed to be. Today, at CodePen, our Embedded Pens have adjustable heights, but there isn't any option for just "as tall as they need to be". (I'm exactly sure if that makes sense for CodePen Embeds or not, but anyway, you can't do it right now.)

An element with a shadow DOM is just like any other element and that it will expand to the content naturally. I'm sure that is appealing to Twitter as well. If they calculate the height wrong, they run the risk of cutting of content or at least having the embedded Tweet look busted.

Most Basic Usage

Here's the bare minimum of how you establish a shadow DOM and put stuff in it:

See the Pen Most basic shadow DOM by Chris Coyier (@chriscoyier) on CodePen.

Notice how the styling within the Shadow DOM doesn't leak out to the regular paragraph element? Both paragraphs would be red if they did.

And notice how the paragraph inside the shadow DOM isn't sans-serif like the one outside? Well, normally that would be. Inherited styles still inherit through the shadow DOM (so in that way it's not quite as strong a barrier as an iframe). But, we're forcing it back to the initial state on purpose like this:

:host { all: initial; } Handling that fallback

My first thought for dealing with a fallback for browsers that don't support shadow DOM was that you could chuck the same exact content you were stuffing into the shadow DOM into an iframe with srcdoc, like...

<iframe srcdoc="the same content">

Or more likely this is something you're doing in JavaScript, so you'd test for support first, then either do the shadow DOM stuff or dynamically create the iframe:

See the Pen Shadow DOM Basic by Chris Coyier (@chriscoyier) on CodePen.

Turns out srcdoc isn't the best choice (alone) for a fallback as there is no IE or Edge support for it. But also that it's not too big of a deal to just use a data URL for the regular src. Here's a fork by Šime Vidas where he fixes that up:

let content = ` <style> body { /* for fallback iframe */ margin: 0; } p { border: 1px solid #ccc; padding: 1rem; color: red; font-family: sans-serif; } </style> <p>Element with Shadow DOM</p> `; let el = document.querySelector('.my-element'); if (document.body.attachShadow) { let shadow = el.attachShadow({ mode: 'open' }); // Allows JS access inside shadow.innerHTML = content; } else { let newiframe = document.createElement('iframe'); 'srcdoc' in newiframe ? newiframe.srcdoc = content : newiframe.src = 'data:text/html;charset=UTF-8,' + content; let parent = el.parentNode; parent.replaceChild(newiframe, el); } TL;DR
  • Shadow DOM is pretty cool.
  • It's comparable to an iframe in many ways, including style encapsulation. Embedded third-party content is a pretty good use case.
  • It's possible to use it while falling back to an iframe pretty easily.
  • It's a part of the larger world of web components, but you don't have to go all-in on all that if you don't want to.

Here's another simple demo (this one using a custom element), but instead of rolling our own back support, it's polyfilled.

Playing with Shadow DOM is a post from CSS-Tricks

How videogame graphics and movie VFX are converging

Creative web design! - Thu, 07/20/2017 - 09:00

Convergence has been a key buzzword across the 3D industry over the last few years. The worlds of game graphics and movie VFX are advancing, and with this change, a natural crossover is happening. We're now seeing that the production methods used in the creation of digital art for movies and games are very similar.

This has been partly triggered by the rise of new technologies such as VR, and with both areas using the same tools such as Maya and ZBrush, but it wasn't that long ago that a single plant in the film Avatar had more polygons than an entire game environment.

Motion capture in games

Motion capture is a big area where we're seeing more and more convergence. I still get excited teaching PBR texturing to my students, knowing I am using implementations of the Disney GGX shader in real-time engines. 

Motion capture in games has allowed a more complex world of storytelling to evolve, with technology allowing game makers to create characters who are relatable and human in their facial expressions and physical mannerisms. 

Just look at the work of Imaginarium on Squadron 42, Naughty Dog's The Last of Us and Guerrilla Games' Horizon Zero Dawn. With the development of characters in games using motion capture, this allows the exploration of wider human themes.

Real-time rendering technology

Game developer DICE recreated the Star Wars universe with great effect for Battlefront

One of the other big developments that's occurred in this space – which we've seen most recently at events such as the Games Developers Conference (GDC) – is the power of real-time rendering.

Epic's Unreal Engine has really stolen a march on this, and it has recently teamed up with The Mill and Chevrolet to demonstrate the engine's potential with the short film Human Race. Merging live action storytelling with real-time visual effects, the film showcases how these technologies are pushing the limits by using real-time rendering in a game engine.

The fact that a similar approach was used for some of the scenes in Star Wars: Rogue One by ILM, using a tweaked version of Unreal Engine 4, just adds to its credentials. The team used this technology to bring the droid K-2SO to life in real time. 

While at the moment this technique is predominately being used for hard surfaces, it's surely only a matter of time before it supports more diverse objects. 

We're also seeing companies such as performance capture studio Imaginarium expanding to adapt to this change, with Andy Serkis' recently unveiling Imaginati Studios, a game developing studio with a focus on real-time solutions using Unreal Engine 4.

Photogrammetry in games

Another area where there is a real convergence and crossover of talent is in the use of photogrammetry, which involves taking photographic data of an object from many angles and converting it into stunningly realistic fully textured digital models. 

Creating game assets from photographs may not be new, but the process has now reached the kind of standards we are used to seeing in film production. 

From the incredibly realistic recreation of the Star Wars universe by DICE in Star Wars Battlefront to Crytek's Ryse: Son of Rome, the bar of video game graphics is getting higher and higher. It might be hyperbolic to suggest the visuals of Ryse are parallel to the classic film Gladiator, but it is nevertheless a stunning realisation of ancient Rome. 

The Vanishing of Ethan Carter is another game that uses photogrammetry to great effect. Epic Games' Paragon, where photoshoots were used to capture HDR lighting on hair and skin, is another fantastic example. 

Some of the most compelling-looking graphics in games were created with photographic processes, and photogrammetry has played a huge part in driving games graphics forward.

Photogrammetry was used heavily in horror adventure game The Vanishing of Ethan Carter

Epic Games used Agisoft PhotoScan to capture its images, but there are many issues native to the photogrammetry process that need to be solved. Dealing with reflections in photos of objects and poor lighting can be a real challenge, and can reduce the realism of the final output. 

But this is where the marriage of technology and artistry come together. In the fantastic blog Imperfection for Perfection, technical artist Min Oh outlines Epic Games' process, detailing the use of colour checkers and capturing lighting conditions using VFX standard grey and chrome balls. 

Other inspiration comes from the team at DICE, who overcame lighting issues when capturing Darth Vader's helmet by removing light information from source images. 

Famed VFX supervisor Kim Libreri, who is now CTO at Epic Games, predicted that graphics would be indistinguishable from reality in a decade in 2012. And a few years on, it seems like we're well on our way.

Simon Fenton is head of games at Escape Studios, which runs courses including game art and VFX.

This article originally appeared in 3D World issue 223. Buy it here!

Related articles:

How to be an award-winning illustrator

Creative web design! - Thu, 07/20/2017 - 08:00

What did you do when you turned 30? Award-winning creative Yuko Shimizu saved up, swapped her corporate job in Japan for art school and became a globally acclaimed illustrator.

It didn't happen overnight. In fact it took three years to get the cash together. But as Shimizu – who counts Microsoft, The New York Times and iconic designer Stefan Sagmeister amongst her many collaborators – points out, you're never too old to achieve your dream.

"If America has a glass ceiling, Japan has a glass table," she begins, before explaining that a mentally abusive boss finally gave her the push she needed to abandon the safety of a regular pay cheque and study art for the first time, aged 34. "I was wearing jeans with 18-year-olds and faking it," she laughs.

Shimizu illustrated the DVD cover and products for popular Japanese metal band Maximum the Hormone

Pursuing a creative career was a life-changing decision, but over the last decade and more Shimizu has built an inspirational illustration portfolio.

Her work lives on Gap T-shirts, Pepsi cans, Visa billboards, Penguin covers and the pages of New Yorker, Rolling Stone and Time. She's been profiled in Computer Arts magazine, published a monograph and more.

What has she learned in that time? Primarily that it's never too late to do what you want to do, whether you're 19 or 90.

"We never get younger than who we are today," she urges. "Start working on that dream today."

Here are seven of Shimizu's best tips for making it as an illustrator...

01. Take at least one small risk every day

Yuko Shimizu's portrait of The Clash for soccer magazine 8 by 8

"I'm not talking about jay-walking or stopping the bus where there's no stop," laughs Shimizu. "Some people have a signature style and every job is a variation of that. But repeating the same things over and over drove me nuts – that's why I quit my corporate job."

"However, clients do have a timeline. So, every time I get a new project I throw in maybe 10-25 per cent of something I haven't done before. It might be a new colour scheme, or just something I haven't drawn: something that makes me a bit nervous but really excited."

"If it's 50 per cent new I'll freak out and my client won't call again. But I do lots of small jobs. If I do 10, I can grow without taking too much risk. I know I'm on the right track."

02. It's ok to turn down a job…

Batman Detective Comics #52 variant cover for DC Universe

Why? "Because there are always others who want to do it. When I turn down a job I always suggest someone else," she explains.

"When I moved from Japan, there were so many people who helped me along the way. Some of my professors gave me contacts, and said mention my name and they'll call you back. I don't know the way to thank all those who helped me, so I try to help those who need it now."

03. Always draw something a photo can't do

Cover image for a short science fiction story written by Charlie Jane Anders for TOR.com

"Now that photography is good again, I've been finding that clients want photography," she says. "I sometimes seem to only get jobs when art directors think that photography won't work, so I always try and do something a photo can't do."

04. Avoid projects that will prevent a good night's sleep

NY Times Book Review cover for the highly anticipated US release of the new book by Haruki Murakami, Colorless Tsukuru Tazaki and His Years of Pilgrimage

Shimizu isn't referring to the all-nighters: "I mean things I'll be ashamed of," she clarifies. "Oil. Gambling. Everyone has something that's important to them – a job that means they won't be able to sleep at night. Don't do it."

05. A project isn't a success unless the client thinks so

Illustration for The Nation's 150th anniversary issue

Not all of her projects are showcased on her website. There are some projects where Shimizu feels both "proud and embarrassed" at the same time.

"But the bottom line is I worked hard and the client loved it. You can't make a personal masterpiece that the client doesn't want," she reasons.

06. Never work for free: it undercuts others

Illustration by Shimizu for Men’s Health Magazine

"As a professional you make mistakes, and learn and get better," says Shimizu. "But there are mistakes you don't need to make because other people made them for you already. In this case, me," she added, explaining that she once gave a persistent start-up a pre-existing illustration for free.

"They said I'd get exposure. Sometimes you do; sometimes you don't. This time I did – a lot. And then I forgot about it, until another illustrator contacted me saying she'd been asked to provide an image for free and asking what the deal was."

Shimizu realised she'd essentially told the client it never had to pay for art. "Artists are always willing to give their art for exposure. You get tricked into doing it. You feel like you're winning but you're actually losing. That's my story of shame. Don't ever do this. Artwork is called work because it's work."

07. Some things are more rewarding than money

One of two Dumbo 80-foot wide murals created with Sagmeister & Walsh

"Whenever I have time I try and do charity work," says Shimizu. "It's a great feeling being an artist. If you're a professional and making a living, it's nice to take time off and do charity work. But if you're not, don't worry," she smiles. "Keep yourself on track for where you want to go and work your way there. Then you'll be able to make time for charity work."

Related articles: 

Adaptive Web Design author shares his accessibility quest

Creative web design! - Thu, 07/20/2017 - 07:00

Aaron Gustafson, web standards and accessibility advocate and author of Adaptive Web Design, will present a keynote at Generate London on 22 September about adaptive interfaces. This will include an introduction to a battle-tested tool for planning, discussing, building and testing adaptive interfaces.

"Hiya," a voice says as Skype begins to wake and warm up. The image clears to reveal Aaron Gustafson – bearded, smiling and reclining in his chair. He starts telling his story by explaining his here and now.

"I'm probably best known for being a big advocate of progressive enhancement," he says. "I've been singing its praises since 2004 and that work has become much more relevant in the world of mobile and responsive web design... with all these devices with different configurations, capabilities and – in some cases – liabilities. Beyond that, I'm pretty involved with the Open Device Lab."

Rather modestly, Gustafson glosses over his achievements. He's a regular speaker on the web circuit, web standards and accessibility advocate at Microsoft, runs web development consultancy Easy Designs, spearheaded Web Standards Sherpa and has written a book entitled Adaptive Web Design.

At Generate London, Aaron Gustafson will demonstrate how adaptive interfaces smartly morph to meet their users’ needs
Late web design starter

Casting his mind back however, Gustafson admits his love affair with computers was a slow-burner. "I wasn't a prodigy in high school. I had friends who had email accounts but that always seemed too geeky for me. I didn't take any computer science classes," he recalls. 

"I first went on the web in 1995. I was an avid music fan and the first site I went to was Sony.com. All I saw was this black screen with white words that said 'Image' with square brackets in various positions. I thought: this web thing is bullshit!"

Thankfully, a Jurassic-era Mosaic browser rode to the rescue and Gustafson finally 'saw the web'. "There were lots of table layouts, marble backgrounds with gold lettering and giant Times New Roman text," he laughs.

Learning to code with book and floppy disks

Gustafson remembers the early days of web design

"I started out doing web stuff in 1996. I was an aspiring journalist and magazine publisher back in college, and I was running a music and entertainment magazine and learned from a friend how to make a web page. I wanted to learn more, so taught myself using a book called Creating and Enhancing Netscape Web Pages by Andrew Shafran. 

"It's funny to think back now... It was all hand-coding. I also had a copy of Photoshop 3 on 3.5-inch floppy disks. That's how I got into web design."

In 1999, Gustafson landed his first paying web job – working for the Bradenton Herald newspaper. "Back then," he laughs, "I was the content management system. This was way back before we had CMSes and XML was 'the future'. 

"I went into the Herald at 11 o'clock at night and worked until seven in the morning, and I picked which stories went out on the site. I'd pull the stories out of Quark, drop them into Dreamweaver and use Fetch to get them out on our server."

"Work hard, stay humble" is the designer's mantra

After a few years freelancing and a few full-time jobs, Gustafson ended up working for an advertising company called Cronin & Co. "I came on as their lead web guy – I was the middleman between the design team and the web folks. 

"I had taught myself PHP and MySQL and knew quite a bit about frontend development... HTML, JavaScript and CSS. Coming from a print background, I was able to bridge the gap and make sure the designers weren't designing anything the developers couldn't make and vice versa."

Working on the Web Standards Project

Beyond progressive enhancement – a sphere which we can safely say he has made his own – Gustafson is also a prominent member of the web community. 

He was one of the managers of the Web Standards Project (WaSP), a grassroots group founded in 1988. At that time, Netscape and Microsoft split the browser market between themselves and produced platforms that weren't compatible. 

With designers and developers fighting on two fronts, the web had become fragmented and WaSP – a pack of volunteers and visionaries from around the world – set out to heal it. They advocated open source, consistency, accessibility and portability. We've got a lot to thank them for.

A screen print of Erin Crocombe's design for Gustafson's Adaptive Web Design poster contest

So, what attracted Gustafson to the church of web standards? Back in the early 2000s, Gustafson read an article entitled 'CSS Design: Going to Print' by Eric Meyer on A List Apart. Meyer detailed how to create and design print style sheets that would format web content for off-screen reading and printing.

"Back then, I'd become quite the master of table layouts. That was the way we built things, but it always felt weird. So I read Eric's article and thought: there's a lot more to this CSS stuff. I started to read everything I could, and I immediately understood that web standards was a way forward. 

"I saw how fragile the web we were building was... If you had an error in your code and something went wrong, the entire thing could fall apart.

He recalls his time freelancing at Gartner, where there were separate style sheets for each browser, and the team used JavaScript to decide which sheet to serve. "I remember all of the heinous JavaScript we were writing and editing. It was so painful. Then, a lightbulb went on in my head – I thought, 'This web standards thing makes a lot of sense!' If we're able to establish standards, it creates a solid foundation upon which we can build better experiences."

From there, by his own admission, Gustafson was like a sponge, absorbing anything and everything he could find about web standards. Writing about the topic was followed by speaking about it, and in 2006 Gustafson joined WaSP himself. 

He spent his early days working on "some pretty cool stuff" , including collaborating with the team at Internet Explorer to improve the JavaScript interpreter and to adopt the W3C's Event Model.

Another winner from the poster contest, by Guus van Zeeland. "The lines are proposed fold marks to 'adapt' the poster," Gustafson explains

Quite soon Gustafson was invited to become a manager at WaSP. "After Glenda Sims, Derek Featherstone and I took over, we worked with Microsoft a bit more to improve Internet Explorer, launched Web Standards Sherpa and began our small business outreach campaign... but eventually we decided it was time to shut down WaSP."

The mission, he says, to a degree, was over too. "The web standards war – trying to get interoperable standards across browsers – was won at that point. There's still work to be done, but we're in a much better place than we were 10 or 15 years ago."

The standards war might be won but Gustafson doesn't seem like a man ready to turn off his Mac and go fishing. Rather, he explains, there are still many risks to the web's apparent wellbeing. 

"The app mentality is a threat. This idea of creating walled gardens which are 'of the web', but not the web itself. They use web technologies and rely on the fundamentals of HTTP, but the resources they provide access to aren't addressable from the web. That scares me. Having indicators about where you can find content is a huge part of the web's power."

Inside the bubble

The second edition of Gustafson's book Adaptive Web Design

Another big fear for Gustafson is to do with equal access. "Those of us building websites are technically savvy and tend to have more income to spend, so we have more expensive devices like iPhones and high-end Androids. That leads us to have a very myopic view of what the 'mobile web' is, and what web access on a mobile device needs to be."

To underline his point, he explains he's consulting with a store that's begun selling cheap tablets. "I asked the web team if they're testing on the devices they sell. There was stunned silence on the phone. We're surrounded by high-end devices and get into the mindset that this is the mobile web. We miss the low-end devices with Android, a bad processor and a crappy screen."

This brings us to Gustafson's primary hunting ground: adaptive design. "Progressive enhancement underpins everything I do," Gustafson says. "The entire idea is that you're creating sites, content, web pages, whatever it is, without placing any technological restrictions on the users. 

"With progressive enhancement, you focus on the content and the key tasks of the page, and build up the experience from there, layering on different technologies. The experience is more of a continuum from a basic one that might just be text with links, right up to a fully interactive one."

Gustafson has written and contributed to a number of web design books

Gustafson's philosophy centres around giving different people – or more correctly, different devices – different experiences. "It's all about recognising that it's okay for people to have different experiences of an interface as long as those experiences are positive and as long as they can accomplish the tasks they set out to," he says.

"The name of my book, Adaptive Web Design, came about because 'Progressive Enhancement' has a very sterile sound to it. We liked the idea of a web experience that could adapt to the user." Little did Gustafson know, the book version of Ethan Marcotte's 'Responsive Web Design' article would be launching at around the same time, prompting a flurry of 'adaptive versus responsive' discussions.

"Ultimately the two approaches are very much aligned," says Gustafson. "According to Ethan, responsive design is three things: media queries, fluid grids and flexible images. Those three things absolutely should be part of a page's progressive enhancement. 

"That said, you can build a desktop-first responsive site and work from the largest size down to the smallest. The lowest common denominator devices don't have media query support... So, if you were to flip it the other way and practice responsive web design from a mobile-first perspective, that aligns perfectly with progressive enhancement. For me, responsive is a technique that comes under the umbrella of progressive enhancement."

Gustafson is at pains to point out that building with progressive enhancement doesn't necessarily mean sites cost more to make. "When you get into this mindset of progressive enhancement, it adds very little. You start to realise how browsers work. An underlying feature in HTML and CSS is fault tolerance... The system can cope with problems without throwing errors to the user."

In HTML and CSS, he points out, browsers ignore what they don't understand. Recognising this is key to writing HTML5 such that browsers that don't even understand HTML4 will still render the content. "The browser will expose any text inside the element, it'll just ignore the element," he explains. 

"So, you have the brilliant system of fallbacks within HTML and within CSS that empower you to drive a baseline of support for older devices whilst, at the same time, being able to reach for the stars."

Photography: Chloe Wright

This article originally appeared in net magazine issue 256 (August 2014).

Aaron Gustafson will appear at Generate London in September, alongside 16 other great speakers, including Anton & Irene, Steve Fisher, Seb Lee-Delisle, Léonie Watson, Zell Liew and more. They'll cover a whole range of topics from prototyping at Netflix via UX strategy to web performance. Also, make sure to check out the workshops. If you opt for a combined workshop and conference pass, you can save £95!

You might also enjoy these interviews:

5 Things Users Want to Know Sooner Rather Than Later

Webdesigner Depot - Thu, 07/20/2017 - 06:45

When I go to any website, I’m looking for something. I may want to buy a product, or find information, or browse random memes, but whatever it is, I have a goal in mind. That goal could even be subconscious, but it’s there. Human beings never do anything without a reason. Whether or not they know what that reason is, or can articulate it, is a whole different story.

Like most people, I go with the website that gives me what I want the fastest. That’s it. As a designer myself, my familiarity with things like design patterns and search engines gives me an edge in finding what I want. But sometimes, even I can’t find the darn “buy this” button for a good thirty seconds.

Why, then…would you ever hide the most commonly-looked-for bits of information from people?

Why, then…would you ever hide the most commonly-looked-for bits of information from people? Why would you make it difficult in any way for them to get what they want, especially when what they want is to give you their time, attention, or even money? If they have to look for this important info, that means it’s hidden, or may as well be.

Now, designers mostly don’t do this on purpose. But it happens. In the interest of helping users find what they need, and making you some money, here’s what users are looking for first and foremost, more or less in this order:

1. What Is It, and Sometimes Why Is It?

Okay, lots of users browse around with an idea of what they’re looking for. But sometimes, a user is going to land on, let’s say your product page, because a friend sent them a link and said, “Check this out, dude!” In those situations, you really want to have at least a bit of text that describes what the product is and does.

tell me, in simple non-industry jargon, what you do.

That’s an obvious example, perhaps. People always describe and show off their products, right? Well, things are often less clear with companies that sell services. I can’t count the number of times I’ve landed on a site that describes what they do purely in terms of benefits: “enrich your life”, “harder, better, faster, stronger”, etc.

That’s all well and good, but only after you actually tell me, in simple non-industry jargon, what you do.

2. How Much Does It Cost?

This is the obvious next step. Let’s say a website looks like it has what you need. It’s going to fill that gaping void in your life—probably—and you want it now. Well, you want it, but how much are they asking? A user should never have to go hunting for the cost of the product, service, or information.

Mind you, you should be making the cost clear, even if you’re not asking for money. Sites that offer stuff for free often try to hide the true cost of membership. Do you need their information? Their viewership alone? Their action in support of your cause? Make this information easy to find. Be up front, and people will respect you for that.

Obvious-yet-apparently-necessary corollary: Hidden fees will make them hate you.

How Do I Get Rid of It?

One thing users will also want to know, that kinda falls under the “cost”, is how long they’ve got to commit to this product or service. What is your policy on refunds, cancellations, or returns? You probably don’t want to put this information in your sales copy, unless you want to emphasize the idea that your product is a low-risk investment. In any case, it should be readily available. A link you find in the middle of the page, rather than somewhere in the footer.

3. How Good Is It?

After a user has assessed the cost of a thing, they want to know if it’s really going to be worth the money they’re shelling out. Obviously, you can throw some marketing copy up there, and try to convince them yourselves, but of course you’re going to say it’s great. You’re the one making it!

This is where social proof comes in. Testimonials are only the beginning. Be proactive and link to third party reviews. Link to your social media. Invite prospective customers to become a part of your online community before they’ve even bought your product.

4. Where Do I Get It?

Please just put a clearly labelled “Download” link at the top of the page or Github repository.

Okay, now they want to get the thing. Most commercial websites have figured out that calls to action need to be big, flashy, and obvious. Not all of them have figured it out, but most of them have by now. It’s typically older sites that remain somewhat confusing.

Where I have had a problem with hidden download buttons, since forever, is in the world of free software. That’s both freeware and proper open source projects. This is understandable, given that most of the people making these websites are volunteers, and most are somewhat new to web design.

If this describes you, I say: “Thank you for your contribution. Please just put a clearly labelled ‘Download’ link at the top of the page or Github repository.”

5. How Can I Talk to You Directly?

There are sites out there that kind of hide their contact info. Some do it from ignorance. Others do it out of a sincere desire to never talk to their customers—I get that, I really do; on top of the usual client problems, I’m a huge introvert, so I understand.

That said, you need channels for talking to humans. Even if it’s just a Twitter account, that information needs to be more or less front-and-center. Even if they never talk to you, users want to know they have the option of getting in touch with a human if something goes wrong.

Conclusion

The best designers remember that they are also users. They are consumers, just like everybody else, only they’re quite a bit more educated on web design patterns. If your product or service is bad, tricking people into buying it will mean they never trust you again. If you have a good product or service, then offering all necessary information right up front can only help you sell more of it.

And for the love of all that is good and decent, put that “Download” button somewhere I can see it.

700+ Hand-Drawn Graphic Elements – only $24!

Source p img {display:inline-block; margin-right:10px;} .alignleft {float:left;} p.showcase {clear:both;} body#browserfriendly p, body#podcast p, div#emailbody p{margin:0;}

iOS 11 preview for designers: release date, news and specs

Creative web design! - Thu, 07/20/2017 - 06:00

iOS 11 has now been released in beta for iPads, iPad Pros and iPhones, so what key features does Apple's new mobile OS bring for creative professionals? This roundup aims to bring you the latest news, rumours, full release dates and specs of iOS 11 for designers, to help you know what to expect.

Apple's iPad Pro has brought designers, artists and motion pros a brilliant mix of power and portability, with the excellent Apple Pencil also offering a way to sketch out ideas with a huge amount of precision. But its original iOS still felt like an operating system for phones and tablets – not for serious professional work. Does Apple's new iOS overcome these workflow hurdles? What can we expect from iOS 11, and how and when can we get it?

When is iOS 11 released?

iOS 11 is now available as a public beta – so you can download it right now to your iPad or iPhone. To do this, you’ll need to sign up to the (free) Apple Beta Software Program. Once you’ve done this, you install a profile to your device and download the beta. 

You should back up your device first using iCloud or iTunes – but don’t worry, you can go back to iOS 10 at any point if you need to (although you will need to reset your device first).

If you’re not into early adoption, Apple says iOS 11's final release date will be some time this autumn (rumoured to be in September, along with the anticipated iPhone 8) and will presumably be pushed out as an update in the usual way.

What’s great about iOS 11 for designers?

Work across several devices with ease in iOS 11

iOS 11 transforms the iPad into a serious productivity tool for creative professionals through a number of very cool features. 

Files app for working across devices and apps

Possibly the most interesting of these is the new Files app. Yep, it sounds a tad dull, but it means you now can easily save, browse and manage all of your files on your iPad – plus those in apps, on your other iOS devices, on iCloud Drive and cloud services such as Dropbox and, most excellently, Adobe Creative Cloud. 

The latter means you have access to your work, wherever you are, without even having to launch Adobe’s mobile apps. You can tag your files and folders as well – just like on macOS.

Better multitasking

The next great thing is multitasking. Yes, there has been multitasking functionality in previous versions of iOS, but iOS 11 takes it up to, er, 11! You can still run a couple of apps at once using the Split View (two apps running side-by-side) and Slide Over (two apps running with one in a floating window), as introduced in iOS 9. There are slightly different ways of launching these, and you can now add a third app on an iPad Pro.

Drag and drop images into emails for easy sharing with colleagues and client

Drag and drop

But the introduction of drag and drop is a real game-changer for creatives. We know, it sounds so simple, but drag and drop is what the iPad has been missing for so long. So now when you have two apps open you can drag say, an image from one of your creative apps to your email easily. This used to be a matter of sharing from your creative app. It’s much easier now – and the new Dock, now available from any screen – echoes that in macOS.

Many apps will be updated to support iOS 11's drag and drop functionality, including Adobe’s mobile apps, the ace Procreate and Morpholio Trace. 

Essentially, with this release, iOS is closer to macOS than ever before. And that’s obviously a great thing (maybe we’re one step closer to a Surface Book-like Apple laptop – we can dream, can’t we?).

What’s new with Apple Pencil?

iOS 11 gives Apple Pencil greater functionality

If you’ve got an iPad Pro and Apple Pencil (after all, the Apple Pencil won’t work with other iPad models), iOS 11 brings some interesting new updates to the sublime stylus's abilities. 

For example, Instant Notes gives you the ability to simply start drawing on your lock screen, with the sketch or note automatically then appearing in the Notes app – great if you need to quickly capture an idea. 

And marking up PDF files is just as easy – you don’t need to select any kind of tools, just start drawing. The same goes for sketching within emails. 

The Apple Pencil hardware remains the same, but the way iOS 11 works with it has been greatly improved.

What else is new in iOS 11?

There’s a few other things that designers may use – including the built-in document scanner (good for contracts) and a better keyboard. But the most exciting other introduction is ARKit.

What is ARKit?

ARKit is Apple's new platform for developers to help them bring high-quality augmented reality (AR) experiences to iPhone and iPad using the built-in camera, processors, and motion sensors in iOS devices.

According to Apple, ARKit enables developers to tap into the latest computer vision technologies to build detailed and compelling virtual content on top of real-world scenes for interactive gaming, immersive shopping experiences, industrial design and more.

We’re yet to see what it can do properly, but it’s a hugely exciting development that could open up a new world – literally – for apps and how they interact with the world around us.

What about for my iPhone?

The new loops tool is a fun addition to the Camera app in iOS 11

Aside from the Apple Pencil functionality, pretty much everything else is the same on iPhone as it is on iPad. But you obviously use your devices in different ways. 

For photography nuts, the new pro filters in the Camera app will more than suffice, and Live Photos get a bit of a revamp as well. As well as being able to create a short motion clip with Live Photos, you can now create a loop effect, a bounce effect – making your photos rock back-and-forth – and a Long Exposure. The latter will be brilliant for capturing night time inspiration, we reckon.

What do I need to run iOS 11?

You’ll need a relatively new iPad or iPhone to get the most out of iOS 11. Apple says you’ll need at least an iPad Mini 2 or iPhone 5s. Of course, anything newer than this will make the OS run a lot smoother. 

And to use Apple Pencil you’ll need an iPad Pro 9.7-, 10.5- or 12.9-inch. If the rumours are true then the iPhone 8 and iPad Pro 2 could be announced before the official release date of iOS 11.

Related articles:

Start your web dev career with this massive bundle

Creative web design! - Thu, 07/20/2017 - 04:58

Every web developer gets their start somewhere. If you haven't found yours yet, then why not try the Beginner Web Development Bundle? It has everything you need to start learning to build your own websites, and you can get it now for 96% off the retail price!

For an aspiring web developer, the Beginner Web Development Bundle is the perfect starting place. This collection of professionally taught courses will lay the foundations of how to work with the most important languages in web development – from PHP and JavaScript to HTML5 and CSS3 – to bring your dream sites to life. There are four courses with tons of actionable lessons that will get you up to speed fast.

You can get the Beginner Web Development Bundle on sale for 96% off the retail price, at just $29 (approx £22)! That’s a massive saving on a course that could launch your next career, so grab this deal today!

The 23 best Illustrator brushes

Creative web design! - Thu, 07/20/2017 - 02:00

Brushes are a great way to beef up your Adobe Illustrator work. You can go a long way with Illustrator's basic tools, but with the right set of brushes – and the flexible way in which Illustrator allows them to be used on vector shapes – you can quickly and easily add texture and character to any piece of work.

Managing brushes is more straightforward than ever before; with Illustrator CC, you can now save your brushes to your Creative Cloud library for easy access, no matter which machine you're using at the time. 

There's also the handy new Brush CC tool that allows you to define and share artwork in the form of brushes directly from your iOS device. These elements of workflow finessing means it's perhaps time to look again at brushes in Illustrator, so without further ado here are 20 of the best!

01. 8 free stipple shading Illustrator brushes
  • Price: Free
  • Artist/Designer: Chris Spooner

Build up tone and shade with these brilliant free Illustrator brushes

Designer Chris Spooner – aka Spoongraphics – crafted this free pack of eight stipple shading brushes to help you easily paint grungy details onto your artwork with Illustrator’s brush tool. 

Stippling is a traditional technique that uses lots of dots at different densities to build up tones and shade, and is particularly effective for creating a retro effect in your illustrations.  

02. Free halftone vector brushes

Quickly create halftones with this set of free Illustrator brushes
  • Price: Free
  • Artist/Designer: Rob Brink

This sample selection of free halftone Illustrator brushes are part of a larger pack of halftone vector brushes. Created by UI/UX designer Rob Brink, they’re perfect for adding old-school texture to your illustrations, without spending a penny.

03. Rodeo

Old rope for no money
  • Price: Free
  • Artist/Designer: The Vector Lab

Yee-hah! Rope can be really fiddly to draw, so if you need some in your imagery the go for this easy option instead. Rodeo is a hand-drawn rope brush for Adobe Illustrator CC. You can apply it to any path, as well as change the rope width and colour.

04. Marker pen strokes

These marker pen brushes are magic
  • Price: Free
  • Artist/Designer: FudgeGraphics

Get your sharpie on with this set of 64 free marker pen strokes and scribbles, and give your designs a more natural, hand-drawn look. They're high quality and compatible with all versions of Illustrator from CS onwards, and they're free for both personal and commercial work.

05. Smoke

Light up your work with this excellent smoke
  • Price: Free
  • Artist/Designer: R2010

This set of smoke-like brushes is perfect for adding a bit of atmosphere to any illustration, whether it's for backgrounds or things that smoke, steam or mist. Play around with the opacity and blend modes in Illustrator to get some really nice effects.

06. Doodle lines

You can use these doodle brushes commercially for a very reasonable price
  • Price: Free (for personal use)
  • Artist/Designer: Mels Brushes

If doodling by hand is too much effort for you then achieve the same look with this set of free doodle brushes. It's a varied and versatile selection that allows you to create a hand-drawn sketched look, as well as decorative borders, curls and doodle style illustrations. They're free for personal use, while a licence for commercial use will cost you just £4.

07. Illustrator wedge brushes

 wedge

Create classy designs with this pack of wedge brushes
  • Price: Free
  • Artist/Designer: Mels Brushes

Free for non-commercial use, this pack of Illustrator brushes by freelance illustrator and graphic designer Mels Brushes is perfect for adding swirls, swishes and decorative curls to your designs.

08. Floral vector and brush pack

Best free Illustrator brushes - Floral vector and brush pack

A wider selection of florals than that which ships with Illustrator
  • Price: Free for personal and commercial use
  • Artist/Designer: Stock Graphic Designs

This handy set of floral plate-inspired brushes is also available as a set of EPS assets for those times when you simply want to drop in stock art into your project. 

The quality of the art itself is comparable to the free florals that ship with Illustrator, but there's a wider selection available here, and the fact that they're not part of Illustrator's default arsenal means you're less likely to get instant recognition of the source.

09. Fur Illustrator brushes

 fur

Sometimes you need to add hair...
  • Price: Free
  • Artist/Designer: Mels Brushes

Need to add a furry effect? These eight hairy Illustrator brushes from Mels Brushes work particularly well when you build them up using different tones. They're free for personal use, and you can buy a license for commercial projects.

10. Abstract brushes

Best free Illustrator brushes - Abstract brushes

These abstract brushes can be used to create crazy embellishments
  • Price: Free
  • Artist/Designer: alethiologie

Deviantart is always a good place to find free-to-use resources and assets, as this example from alethiologie demonstrates. A handy set of brushes that you can use to create abstract shapes and patterns, including some pretty crazy-looking ornaments.

11. Lino cut brushes

Best free Illustrator brushes - Lino cut brushes

These free Illustrator brushes give a hand-finished look
  • Price: Free (for personal use)
  • Artist/Designer: Mels Brushes

This is another example of digital replicating the natural imperfections of analogue artwork, but for all its irony, these free-for-personal-use brushes have a wonderful quality to them that brings out a lovely hand-finished look in your artwork.

12. Vector Brush toolbox

You get 200 best-selling vector brushes, including sponge and ink splatter brushes, halftone, pencil, charcoal, watercolor and more, in this pack
  • Price: $49
  • Artist/Designer: RetroSupply

We mentioned there were two paid-for options in this list – and you’ll soon see why the Vector Brush Toolbox earns its place in a round-up of the best Illustrator brushes. 

Including six of RetroSupply’s best-selling Illustrator brush packs – that’s over 200 best-selling vector brushes – the Vector Brush Toolbox is the ultimate brush kit for illustrators, giving you every brush you’ll ever need for vector-based drawing. (Plus, you save $41 when you buy the bundle.)

Next: More excellent Illustrator brushes

13. 15 paint brushes

Best free Illustrator brushes - 15 paint brushes

These brushes are based on real paint brushes
  • Price: Free
  • Artist/Designer: Think Design

This set of 15 paintbrush-inspired brushes has been around a while, but the real-media feel they offer means they're still well worth downloading and installing. This is even more the case given they're absolutely free of charge. 

The brushes themselves are each based around a different style of real paint brush, offering a beautiful feeling of paint oozing out under the pressure of the brush. Great for those times when you want something a little less clean and imperfect.

14. Dry paint brush strokes

 dry paint

Produce handdrawn-looking brush strokes with this free pack
  • Price: Free
  • Artist/Designer: Scorp1

To add a dry brush stroke effect to your designs, try this free pack from Duesseldorf-based designer Scorp1. According to Scorp1, the brushes were created using a dry brush with acrylic color, scanned, vectorised with Streamline and corrected manually where needed.

15. Mycanthus brush pack

 Mycanthus

For some extra flourish, try this pack of art and scatterbrushes
  • Price: Free
  • Artist/Designer: r2010

Mycanthus brush pack 1 contains five ornamental art brushes and five scatter brushes. "I call this pack 'Mycanthus' – since I didn't stick with traditional acanthus leaf designs," says Deviant Art member r2010. The pack is free to use – just send r2010 a link to your work "to make it worthwhile".

16. Doodle Pattern Zentangle Borders

 pattern

These brushes are well-suited to borders
  • Price: Free
  • Artist/Designer: Mels Brushes

Another from designer Mels Brushes, this pack of 28 doodled zentangle style Illustrator pattern brushes will add a handdrawn feel to your art work – and they're free for personal use.

17. Pattern brushes

 patterns

For stunning patterns, look no further than this set of 15 free Illustrator brushes
  • Price: Free
  • Artist/Designer: Gina Startup

This set of 15 Illustrator pattern brushes is perfect for creating vector borders and frames. Designed by New York-based digital artist Gina Startup – aka StarwaltDesign – they're all free.

18. Stipple shading brushes

Best free Illustrator brushes - stipple shading

These stipple shading and scatter brushes are a great addition
  • Price: Free (for personal use, check with author for commercial use)
  • Artist/Designer: Chris Spooner

Chris Spooner is well known to many designers on the web for his excellent tutorials and free resources. This selection of eight stipple shading and scatter brushes will make a lovely and versatile addition to your brush collection, allowing you to create fantastic half-tone style shading on your artwork with ease. Spooner has even provided a mini-tutorial showing how to get started with the brushes for best effect.

19. 57 multi-colored Illustrator brushes

Best free Illustrator brushes - 57 multi-colored brushes

These free Illustrator brushes recreate oil brushes
  • Price: Free
  • Artist/Designer: Grant Friedman (Colorburned)

This lovely collection of 57 real-media-like brushes recreates the feeling of traditional oil brushes, alongside the vivid colour that medium provides. Created by Grant Friedman specifically as a free download, the brushes are nonetheless of a high quality and very useable in your projects.

20. Free floral brushes for Illustrator

Best free Illustrator brushes - floral brushes

These free floral brushes are beautiful in their simplicity
  • Price: Free
  • Artist/Designer: Gratiela Dascalu

Created by Romanian web designer, Gratiela Dascalu, this set of twelve beautifully simple floral brushes make short work of crafting flora-based embellishments. The brushes are free for both personal and commercial use, so you can get stuck straight in to using them on client projects too.

21. Grunge

Best Illustrator brushes - Grunge

These mucky brushes will cost you but it's worth it
  • Price: $2.50 per pack
  • Artist/Designer: Seth (TheMeatGrinder)

Another gem from Deviantart, these deliciously mucky brushes come at a price: $2.50 per pack, of which there are two. Despite the (very low) cost, it's difficult to begrudge paying for a bit of grunge, especially when the brushes themselves create such visually gorgeous lines!

22. 3D star scatter brushes

Best free Illustrator brushes - 3D star scatter

These free brushes add a retro feel to your vector project
  • Price: Free
  • Artist/Designer: brushportal.com

This is a pretty basic set of 24 scatter brushes for Illustrator, but the 3D effect works well for retro artwork and the colours/shading lends itself well to the same. Great if you need to add a little sparkle to some artwork in a hurry, and free!

23. Paper tooth brushes

Best free Illustrator brushes - Paper tooth

Great for adding an authentic torn-paper feel
  • Price: Free
  • Artist/Designer: Equal and Opposite

A paper's tooth is the slight ragged edge or the nooks and crannies you'll inevitably find where the fibres of the medium have knitted together. These brushes create a look of authenticity in your artwork, accentuating and simulating the effect of a paper stock with bite!

Related articles:

Implementing Webmentions

CSS-Tricks - Wed, 07/19/2017 - 14:46

We get a decent amount of comments on blog posts right here on CSS-Tricks (thanks!), but I'd also say the hay day for that is over. These days, if someone writes some sort of reaction to a blog post, it could be on their own blog, or more likely, on some social media site. It makes sense. That's their home base and it's more useful to them to keep their words there.

It's a shame, though. This fragmented conversation is slightly more useful for each individual person, it's less useful as a whole. There is no canonical conversation thread. That's what Webmentions are all about, an official spec! In a sense, they allow the conversation to be dispursed but brought all together in a canonical conversation thread on the main post.

Webmentions don't need to be an alternative to comments, although when you pop over to real Drew McLellan's post you'll see he's using them that way. They can be in addition to "regular" comments. Surely the idea of turning off regular comments is appealing from a community perspective (less asshats likely when you need to link to your published words) and a technical debt perspective.

Rachel Andrew also recently implemented them, and this is classic Jeremy Keith stuff.

Direct Link to ArticlePermalink

Implementing Webmentions is a post from CSS-Tricks

How to convince users your site's faster than it really is

Creative web design! - Wed, 07/19/2017 - 10:56

Before getting to the psychological part of performance optimisation, let's answer one question: what is web performance? For the majority of frontend developers, the answer would cover things like page response time, speed of animations, load times. 

Guess what? The world is a cruel place and unfortunately not only web developers have access to the web. So how do regular users gauge web performance? Usually it's 'fast' or 'slow' ("The SpeedIndex of this site isn't as good as of that one. 280 millisecond slower first paint is the reason, I guess" – said no user without DevTools ever).

These diverging approaches to performance come from the fact that our estimation of time can be objective (the time we can measure with a stopwatch, the way we developers approach it) or subjective (time as it's perceived by users).

The reason why we should be looking at subjective, or psychological, performance is that unless users perceive the site as fast or faster, whatever we've done to our performance optimisation matters very little. 

Time perception in humans

Mental activity makes waiting barely noticeable

Perception of time by humans is a complex process. We can sense the flow of time, but the exact nature of the mechanism by which this is done remains unclear. The lack of a dedicated brain area for temporal processing makes understanding the process difficult. This does not mean we are out of control. There is enough knowledge about it for the purpose of performance optimisation. Let's start with the basic functional mechanism.

Event in a nutshell

Our memories about some period in time consist of events. Try to remember your last vacation. Probably, you don't recall it as a continuous process but rather as a set of events: dinner with a loved one, trip to mountains, broken leg (maybe that last one is just me, but nevertheless, you get the idea). The same happens on the web, all interactions with a web application are defined by events: loading a site, requesting a page, searching information and so on.

Almost all of such events can be split further into smaller events or phases. For example, the event of loading a page usually consists of the following two phases:

  • User is looking at the white screen
  • User starts consuming the information on the page

Here, the original event (fully loading requested page) is not necessary over and might continue in the background, considering some basic optimisations are in action.

Phases during which our brain is triggered into active state and is forced to output information or process incoming one (typing, reading, etc) are called active. On the other hand phases when our brain is idling (looking at the white screen) are called passive. Multiple research suggests that people have a tendency to significantly (by about 36%) overestimate passive durations while underestimating active durations. Why so?

Sometimes there is a big difference between time measurable with a stopwatch, and time as we perceive it

At any given moment our limited attentional resources are divided between all the concurrent tasks, including timing. As aforementioned, the brain lacks a dedicated temporal processing area, and to build our perception of time, it has to use information from different sensors. During the active phase of an event, mental activity drags attentional resources off the temporal processing, making users consider the wait as a shorter one or not noticeable at all.

Passive phase is not defined only by brain idling. Typical features of it are:

  • Waste of time: The more valuable the customers' time, the more negative their perception of those that waste it
  • Boredom: This is the result of the idling state. Boredom arises when an individual does not get enough interesting information
  • Lack of control: Users either have to wait for the event to be over or cancel the event (close the tab in our case). Lack of perceived control has a significant, negative impact on human physical and psychological well-being

Due to these features, users' complaints about waiting, in most cases, are related exactly to the passive phase. Let's summarise:

  • User's interaction happens discretely: loading a page, returning search results etc
  • Events, even remaining objectively unchanged, can be split into active and passive phases
  • Active phase is well tolerated by users, does not cause troubles and does not need to be treated anyhow. Contrary to active, passive phase is the core of the waiting problem and is the part that should be addressed

Using this knowledge let's proceed to the basics of psychological performance optimisation (PPO).

Reducing perceived waiting time

Psychological performance optimisation does not change the duration of an event; instead it extends the active phase at the cost of the passive one

Here we should make an important note, changing the objective duration of the event is not the aim of PPO even though most of the techniques do reduce objective durations. Instead, it's all about manipulating users perception of time.

So how do we make users perceive an event as a shorter one without changing its objective duration? Simply, within the time limits of an event, we should reduce the harmless passive phase by increasing the tolerable active one. We should either a) start the active phase as soon as possible or b) keep users in the active phase as long as possible. Once this becomes clear, understanding a lot of performance optimisation techniques and their purpose won't be a problem for you.

At first, it might look like an unusual view at performance. But when it comes to the examples of the PPO there is nothing new I could tell. As long as you do performance optimisations, there is a high chance you're already using PPO even, possibly, without realising it. The list of relevant techniques includes but is not limited to:

  • Critical rendering path optimisation: rendering the very first bits of information on the screen as soon as possible. If we speak events, this one is for loading a site or a new page.
  • Optimistic UI: update interface in response to user's actions optimistically, disturbing the user only if something goes wrong. Optimistic UI is useful for any type of non-critical action.
  • Resource hints: rather new specification of special <link> instructions to the browser that speed up communication and connection to external hosts or assets on your own site. Very broad field of application when it comes to events, from faster loading of subsequent pages on the same site to faster loading of the external pages if you need to.
  • PRPL: pattern in general and its separate parts. Again, when it comes to events, PRPL pattern benefits loading the whole site or a newly requested page.
  • Animations: probably the most seductive tool available to our disposal. But it comes with a warning. Animations, removing the boredom of the passive wait, indeed can significantly improve time perception of short events, related to the same page: outputting search results, putting item into cart, requesting additional information etc. It might even be used for cross-page transitions in SPAs. But, animations done badly might significantly harm not only performance, but also accessibility and overall perception of the project.

When we talk about psychological time, unfortunately, there is no way we could universally measure perception. But, are there any metrics we could rely upon in order to know how good our site is perceived by users?

What to measure?

Conventional parameters like an onload event are not very informative for measuring perception as they do not take users into consideration. Instead, we should rely on the new generation of metrics:

  • First Meaningful Paint: this parameter is responsible for triggering your user from passive to active in the phase of the page loading event. But rendering on its own might not be enough. The browser window might still be unresponsive to a user's interactions due to the browser's blocked main thread.
  • Time to Interactive (TTI): this is exactly the parameter that shows when users can actually use the site instead of simply taking a look at it.

Both parameters can be measured with popular monitoring tools like WebPagetest or Lighthouse. It also lands in Chrome DevTools. It goes without saying that these parameters should be as low as possible. You might also want to keep an eye on the Speed Index parameter to know how fast the visual part (not only the first paint) of your page is being output.

Conclusion

We've covered the basic principles of PPO. I would encourage you to keep going, read papers and any materials you can find on time perception. You will be surprised how weird and controversial our brain is. Better understanding of how humans are wired up might give you new opportunities in your work.  

This article originally appeared in net magazine issue 293; buy it here!

Related articles:

How to animate the Disney way

Creative web design! - Wed, 07/19/2017 - 09:54

Dan Povenmire and Jeff ‘Swampy’ Marsh are two modern-day heroes of American animation. Their talents span drawing, animating, writing and producing, and they even write their own songs. While they’ve worked on top programmes like The Simpsons on Fox and Rocko’s Modern Life at Nickelodeon, they’ve also created their very own shows for Disney.

We caught up with them at the launch of Milo Murphy’s Law and asked them to share their top animation tips.

01. Photograph all your doodles

Characters in Milo Murphy's Law were based on old drawings

"I doodle all the time, and once I got a phone with a camera on it, I think it helped me a lot, because now I take pictures of every doodle I do," says Povenmire. "I also ‘favourite’ all the ones that I like and go back to them later on. 

"A lot of the characters in Milo Murphy’s Law were drawings that I’d done years earlier, like the character Decker, who is played by Christian Slater in the show. When we found out that he wanted to do a voice, I went back in my phone and found the doodle, and was like: ‘This guy!’"

02. Try to make your characters think

"Watch Nick Park," Marsh advises. "He has mastered the art of making the inanimate object appear to think. The moment things become real is when you can believe that these characters are thinking. It’s not how big they smile or how fluidly they move, it’s when you’ve created the illusion that the character is processing information, and that’s that magic moment.

"I was watching Creature Comforts and just went, ‘Oh, my God, he’s nailed everything.’ You watch the Brazilian Puma, who’s sitting there on the log, he’s like, ‘Where I would like to live, and spend most of my time…’ He’s out there, he’s thinking, he’s imagining, he’s seeing things from the past and the future and you go: That’s alive. That hunk of clay is now totally believable because he’s imagining, he’s remembering, he’s thinking."

03. Explore different emotions in your faces

Candace is happy – until you put her eyebrows in...

"If you do angry eyebrows and a happy face, it looks evil," says Povenmire. "If you do angry eyebrows and a sad face, it looks angry. If you do happy eyebrows and a sad mouth, you get perplexed. If you do sad eyebrows and a happy mouth, it looks like your character is in love.

"You can do all these different things, and then within that you can use the eyelids to change an expression entirely: between wide-open eyes for an evil expression, and half-open eyes for a dopey expression.

"It’s like Candace, the sister in Phineas and Ferb – she’s pretty happy right up until you put the eyebrows in, and then she’s screaming at her brothers. Up until that moment it’s, ‘Aaaah!’ and right then it becomes, ‘You are so busted.’"

04. Think in three dimensions

Working on The Simpsons helped Marsh understand how to make characters instantly believable

"If you think of Bart Simpson, his head is a cylinder, a Coke can," Marsh says. "Draw it, and turn that character in three dimensions. If he turns his head a certain way, you get a bigger circle on the top of his head and a smaller circle where his mouth is.

"If your character turns and moves in three dimensions in a way that feels solid, people believe it a lot quicker. That’s the big thing that I learned when I started working on The Simpsons – how to construct things in a three dimensional way."

05. Use simple geometry

Protagonist Phineas and antagonist Doofenshmirtz share the same geometry

"In Phineas and Ferb, what’s funny is that our protagonist Phineas and antagonist Doofenshmirtz are essentially the same – they’re triangles with two circles for eyes," Povenmire explains. "You can put the hair in and they’re still impossible to tell apart.

"But if you add a crooked nose and a mouth, suddenly, one triangle is Doofenshmirtz, whereas with Phineas, the point of the triangle is his nose and his mouth is behind it. They’re very much the same, just as Minnie Mouse is indistinguishable from Mickey – up to the point where you add features and they diverge."

06. Don't over-exaggerate

The duo have lots of experience animating for prime time shows

"How you handle exaggeration is down to the specific gag, and very much down to your sensibilities." Marsh reveals. "We both have a lot of experience in prime-time animation such as The Simpsons and Family Guy, where it’s all very small reactions, not a lot of exaggeration.

"We’ve also worked on big, cartoony shows like Rocko’s Modern Life and SpongeBob SquarePants. They had big, ridiculous events. We tried to meet somewhere in the middle for our shows Phineas and Ferb, and Milo Murphy’s Law.

"If you’re more in the middle generally, when you do go want to go extreme, it really plays big and that’s when you get the effect you want."

07. Animate the antic

Povenmire learnt a lot by animating big gestures

"There’s a standard thing in animation called ‘the antic’, which is really sort of three drawings, put in the right order," Povenmire continues. "So if I draw Phineas reacting to something, he’s going to go from a normal to an alert position.

"Something big happens, and he’s got to react to it big. If you just draw the normal pose and then upright pose, it will just be OK. But if you give him the opposite action, instead of his head just going up, you have it go down first and then up, it becomes a bigger reaction to something.

"That was something I learned early on when I was trying to animate somebody suddenly running out of frame. It didn’t look good at all until I gave him this whole swing back first – a big, cartoony anticipation of a movement and then have him run off.

"You’ve got to have your characters move in the opposite direction first to give it weight."

08. Don't try to be perfect

Nick Park's Feathers McGraw shows the power of good storytelling

"As much as I believe in the quality of animation, if you’re telling a good story with some strong characters, you don’t need Disney-level resources," adds Marsh.

"You have to define your characters really well and know who they are and believe in them. And then, even a stick figure drawing will do.

"Think of Nick Park’s The Wrong Trousers, and the character Feathers McGraw. He’s a bowling pin! He doesn’t have any expression at all. There’s no smile. He blinks – that’s literally all he can do. But you know when he’s being menacing and evil. You know when he’s discovered something. He changes the pace at which he walks, and he stops and turns."

This article was originally published in Computer Arts magazine issue 266. Buy it here.

Related articles:

Intro to Hoodie and React

CSS-Tricks - Wed, 07/19/2017 - 09:01

Let's take a look at Hoodie, the "Back-End as a Service" (BaaS) built specifically for front-end developers. I want to explain why I feel like it is a well-designed tool and deserves more exposure among the spectrum of competitors than it gets today. I've put together a demo that demonstrates some of the key features of the service, but I feel the need to first set the scene for its use case. Feel free to jump over to the demo repo if you want to get the code. Otherwise, join me for a brief overview.

Setting the Scene

It is no secret that JavaScript is eating the world these days and with its explosion in popularity, an ever-expanding ecosystem of tooling has arisen. The ease of developing a web app has skyrocketed in recent years thanks to these tools. Developer tools Prettier and ESLint give us freedom to write how we like and still output clean code. Frameworks like React and Vue provide indispensable models for creating interactive experiences. Build tools like Webpack and Babel allow us to use the latest and greatest language features and patterns without sacrificing speed and efficiency.

Much of the focus in JavaScript these days seems to be on front-end tools, but it does not mean there is no love to be found on the back-end. This same pattern of automation and abstraction is available on the server side, too, primarily in the form of what we call "Backend as a Service" (BaaS). This model provides a way for front end developers to link their web or mobile apps to backend services without the need to write server code.

Many of these services have been around for awhile, but no real winner has come forth. Parse, an early player in the space, was gobbled up by Facebook in 2013 and subsequently shut down. Firebase was acquired by Google and is slowly making headway in developing market share. Then only a few weeks ago, MongoDB announced their own BaaS, Stitch, with hopes of capitalizing on the market penetration of their DB.

BaaS Advantages

There are an overwhelming number of BaaS options, however, they all have the same primary advantages at their core.

  • Streamlined development: The obvious advantage of having no custom server is that it removes the need to develop one! This means your development team will perform less context switching and ultimately have more time to focus on core logic. No server language knowledge required!
  • No boilerplate servers: Many servers end up existing for the sole purpose of connecting a client with relevant data. This often results in massive amounts of web framework and DAL boilerplate code. The BaaS model removes the need for this repetitive code.

These are just the main advantages of BaaS. Hoodie provides these and many more unique capabilities that we will walk through in the next section.

Try on your Hoodie

To demonstrate some of the out-of-the-box functionality provided by Hoodie, I am going to walk you through a few pieces of a simple Markdown note taking web application. It is going to handle user authentication, full CRUD of users' notes, and the ability to keep working even when a connection to the internet is lost.

You can follow along with the code by cloning the hoodie-notes GitHub repository to your local machine and running it using the directions in the README.

This walkthrough is meant to focus on the implementation of the hoodie-client and thus, assumes prior knowledge of React, Redux, and ES6. Knowledge of these, although helpful, is not necessary to understand the scope of what we will discuss here.

The Basics

There are really only three things you have to do to get started with Hoodie.

  1. Place your static files in a folder called /public at the root of your project. We place our index.html and all transpiled JS and image files here so they can be exposed to clients.
  2. Initialize the Hoodie client in your front end code:

    const hoodie = new Hoodie({ url: window.location.origin, PouchDB: require('pouchdb-browser') })
  3. Start your hoodie server by running hoodie in the terminal

Of course, there is more to creating the app, but that is all you really need to get started!

User Auth

Hoodie makes user and session management incredibly simple. The Account API can be used to create users, manage their login sessions, and update their accounts. All code handling these API calls is stored in the user reducer.

When our app starts up, we see a login screen with the option to create a user or log in.

When either of these buttons are pressed, the corresponding Redux thunk is dispatched to handle the authentication. We use the signUp and signIn functions to handle these events. To create a new account, we make the following call:

hoodie.account.signUp({ username: 'guest', password: '1234' }) .then(account => { // successful creation }).catch(err => { // account creation failure })

Once we have an account in the system, we can login in the future with:

hoodie.account.signIn({ username: 'guest', password: '1234' }) .then(account => { // successful login }).catch(err => { // login failure })

We now have user authentication, authorization, and session management without writing a single line of server code. To add a cherry on top, Hoodie manages sessions in local storage, meaning that you can refresh the page without the need to log back in. To leverage this, we can execute the following logic the initial rendering of our app:

hoodie.account.get() .then({ session, username }=> { if (session) console.log(`${username} is already logged in!`) }).catch(err => { // session check failure })

And to logout we only need to call hoodie.account.signOut(). Cool!

CRUD Notes

Perhaps the nicest thing about user management in Hoodie is that all documents created while logged in are only accessible by that authenticated user. Authorization is entirely abstracted from us, allowing us to focus on the simple logic of creating, retrieving, updating, and deleting documents using the Store API. All code handling these API calls is stored in the notes reducer.

Let's start off with creating a new note:

hoodie.store.add({ title: '', text: '' }) .then(note => console.log(note)) .catch(err => console.error(err))

We can pass any object we would like to the add function, but here we create an empty note with a title and text field. In return, we are given a new object in the Hoodie datastore with its corresponding unique ID and the properties we gave it.

When we want to update that document, it is as simple as passing that same note back in with the updated (or even new) properties:

hoodie.store.update(note) .then(note => console.log(note)) .catch(err => console.error(err))

Hoodie handles all the diffing and associated logic that it takes to update the store. All we need to do is pass in the note to the update function. Then, when the user elects to delete that note, we pass its ID to the remove function:

hoodie.store.remove(note._id) .then(()=> console.log(`Removed note ${note._id}`)) .catch(err => console.error(err))

The last thing we need to do is retrieve our notes when the user logs back in. Since we are only storing notes in the datastore, we can go ahead and retrieve all of the user's documents with the findAll function:

hoodie.store.findAll() .then(notes => console.log(notes)) .catch(err => console.error(err))

If we wanted, we could use the find function to look up individual documents as well.

Putting all of these calls together, we've essentially replaced a /notes REST API endpoint that otherwise would have required a fair amount of boilerplate request handling and DAL code. You might say this is lazy, but I'd say we are working smart!

Monitoring the connection status

Hoodie was built with an offline-first mentality, meaning that it assumes that clients will be offline for extended periods of time during their session. This attitude prioritizes the handling of these events such that it does not produce errors, but instead allows users to keep working as usual without fear of data loss. This functionality is enabled under the hood by PouchDB and a clever syncing strategy, however, the developer using the hoodie-client does not need to be privy to this as it is all handled behind the scenes.

We'll see how this improves our user experience in a bit, but first let's see how we can monitor this connection using the Connection Status API. When the app first renders, we can establish listeners for our connection status on the root component like so:

componentDidMount() { hoodie.connectionStatus.startChecking({interval: 3000}) hoodie.connectionStatus.on('disconnect', () => this.props.updateStatus(false)) hoodie.connectionStatus.on('reconnect', () => this.props.updateStatus(true)) }

In this case, we tell Hoodie to periodically check our connection status and then attach two listeners to handle changes in connections. When either of these events fire, we update the corresponding value in our Redux store and adjust the connection indicator in the UI accordingly. This is all the code we need to alert the user that they have lost a connection to our server.

To test this, open up the app in a browser. You'll see the connection indicator in the top left of the app. If you stop the server while the page is still open, you will see the status change to "Disconnected" on the next interval.

While you are disconnected, you can continue to add, edit, and remove notes as you would otherwise. Changes are stored locally and Hoodie keeps track of the changes that are made while you are offline.

Once you're ready, turn the server back on and the indicator will once again change back to "Connected" status. Hoodie then syncs with the server in the background and the user is none the wiser about the lapse of connectivity (outside of our indicator, of course).

If you don't believe it's that easy, go ahead and refresh your page. You'll see that the data you created while offline is all there, as if you never lost the connection. Pretty incredible stuff considering we did nothing to make it happen!

Why I Like Hoodie

Hoodie is not the only BaaS offering by any means, but I consider it a great option for several reasons

  1. Simple API: In this walkthrough, we were able to cover 3 out of 4 of the Hoodie APIs. They are incredibly simple, without much superfluous functionality. I am a big fan of simplicity over complexity until the latter cannot be avoided and Hoodie definitely fits that bill.
  2. Free and self-hosted: Putting Hoodie into production yourself can seem like a drag, but I believe such a service gives you long-term assurance. Paid, hosted services require a bet on that service's reliability and longevity (see: Parse). This, along with vendor lock-in, keep me on the side of self-hosting when it makes sense.
  3. Open Source: No explanation needed here...support the OSS community!
  4. Offline-first: Hoodie provides a seamless solution to the relevant problem of intermittent connectivity and removes the burden of implementation from developers.
  5. Plugins: Hoodie supports 3rd party plugins to provide support for additional server-side functionality outside the scope of the API. It allows for some clever solutions when you begin to miss the flexibility of having your own server.
  6. Philosophy: The developers who built and support Hoodie have clearly thought hard about what the service represents and why they built it. Their promotion of openness, empowerment, and decentralization (among other things) is great to see at the core of an open source project. I love everything about this!
Considerations

Before you make the call to cut ties with your server in favor of a BaaS like Hoodie, there are some things you should consider.

Do you favor increased development speed or future flexibility? If the former is your priority, then go with a BaaS! If you really care about performance and scale, you're probably better off spinning up your own server(s). This points toward using a BaaS for an MVP or light-weight app and creating a custom server for well-defined, complex applications.

Does your app require integration with any 3rd party services? If so, it is likely you will need the flexibility of your own server for implementing your own custom implementation logic rather than constrain yourself to a Hoodie plugin.

Lastly, the documentation for Hoodie is severely lacking. It will help you get started, but many API definitions are missing from the docs and you will have to fill in some of the blanks yourself. This is mitigated by the fact that the interface is extremely well thought out. Nonetheless, it makes for a frustrating experience if you are used to complete documentation.

Conclusion

For front end developers, using a BaaS is a great prospect when considering your options for creating a web application. It avoids the need for writing server logic and implementing what essentially amounts to a boilerplate REST API. Hoodie delivers this possibility, with the added bonus of a clean interface, simple user management, and offline-first capabilities.

If all you need is a simple CRUD application, consider using Hoodie for your next app!

Additional Resources

Intro to Hoodie and React is a post from CSS-Tricks

The new traditional art tools you need this July

Creative web design! - Wed, 07/19/2017 - 08:00

Whether you're looking to switch disciplines and try something new, or brush up on old skills, there's a ton of cool new art books to help you on your way. This month we've got guides on oil painting, how to draw manga and urban drawing techniques, plus a new and brilliantly named art craze: Zentangle. And not just regular Zentangle, but botanical Zentangle. We've also rounded up some the best tools to help you get started in each of these fields. 

We look at a book that asks questions about creativity – what a good idea looks like, where it comes from – which is perfect for anyone suffering from bout of creative block. We also check in with Somerset House and its Print Club London film poster exhibition, and we've got our eye on a new, limited edition Moleskine collaboration. 

01. Five-Minute Sketching: Landscapes

Get sketching on the move, even when you're short on time

This new book by urban sketcher Virginia Hein contains over 50 exercises to help artists of any level quickly sketch landscapes. "Suitable for both new and aspiring artists," publisher Search Press says, "this easy-to-use handbook will loosen up your creativity and show you how to sketch while outdoors or on the move, even if you have only a few minutes to spare."

02. Posh pencils

These charming pencils each feature an original design

London-based stationery designer Katie Leamon has created a new range of luxury pencils that are perfect for any budding urban sketcher. Traditionally made and inspired by nursery rhymes, fables and fairytales, the pack contains six mixed-grade pencils, each decorated with an original design. They cover everything you need for detail, textures, and tone. 

03. Rolling Stones Moleskine

Choose from silk, denim, velvet or PU leather

This new, limited edition Moleskine collaboration sees the much-loved notebook brand join forces with one of the greatest bands of all time. The hook-up offers a series of covers made from rock'n'roll materials – silk, denim, velvet and PU leather – all of which include the Rolling Stones logo, the iconic tongue-and-lip design, created by English art designer John Pasche.

04. Zentangle

This new drawing craze is supposed to relax you

The Zentangle method is the process of drawing structured, repetitive patterns. Supporters say it increases focus, wellbeing and creativity. "With a focus on simple mark-making as well as drawing with the intention to relax and be creative," Quarto, the publisher of this new book, says, "tangle drawing is a powerful tool for people looking to tap into their inner artist." 

The book contains more than 200 tangle-inspired botanical illustrations, with written instruction on how to draw them. 

05. Summer Screen film prints

Posters on sale include Blow-Up by Lucille Clerc

Print Club London and Somerset House are collaborating on their fifth annual film poster exhibition celebrating the Film4 Summer Screen. The Dalston-based studio is inviting artists and illustrators to create screen-printed posters for the new and classic films shown at the outdoor events taking place in London this summer. The adjoining exhibition runs from 3-23 August. If you can't make it, posters are on sale here

06. Manga for beginners

Learn how to turn basic shapes into expressive characters

In her new book, Edinburgh-based manga artist Yishan Li shows you how to draw manga-style characters and creatures. You'll start with basic shapes, and learn how to turn circles, squares, and rectangles into witches, wizards, and monsters. This guide contains over 130 step-by-step drawings and more than 1,000 individual illustrations.

07. Manga art set

These pens are smooth and smudge-resistant

Faber-Castell offers one of the best manga starter sets around. Its pens use water-based ink that's acid-free, waterproof and fade-resistant. The pens glide smoothly and are smudge-resistant, with the largest pen offering a brush-like line. They are professional-level pens at an entry level price.

08. What's in an idea?

This book might prompt more questions than it answers

If you're suffering from creative block, perhaps you need to go back to basics: What does an idea look like and where does it come from? "Grant Snider’s illustrations will motivate you to explore these questions, inspire you to come up with your own answers and, like all Gordian knots, prompt even more questions,” promises publisher Abrams. 

09. The Encyclopaedia of Oil Techniques

A comprehensive A-Z reference to oils

Search Press is publishing a new, up-to-date edition of Jeremy Galton's popular encyclopaedia of oil painting. This A-Z reference book is split into two sections: the first offers step-by-step demonstrations that guide artists through a variety of techniques, and the second focuses on themes and common subjects, including landscapes, buildings, portraits, still life, skies and water.

10. Oil painting box set

This set is one of the best rated around

Royal & Langnickel's oil painting set for beginners is one of the best-rated around. The UK brand offers everything you need to get started, including brushes, a selection of colours, a beginner's guide to oils, and canvas boards, all housed in a compact, portable and well-made wooden box. 

Related articles:

Super-minimalist packaging trademarks white space

Creative web design! - Wed, 07/19/2017 - 07:00

There's minimalist design, and then there's the new range of products from the appropriately named company, Brandless. Based in San Francisco and Minneapolis, the company claims to be a group of thinkers with big dreams about changing the world. To turn its ideas into reality, Brandless has launched a range of extremely minimalist products.

We say 'extremely minimalist' because Brandless has taken the drastic step of trademarking a white box design for its food and home items. Co-designed with the help of Brooklyn agency Red Antler, each product is made up of a single colour with the white box design dropped on top. The text in the boxes is effectively negative space, and is readable thanks to the colour underneath shining through.

"With Brandless, we wanted to invent something completely fresh and new," say the pair behind the design, Tina Sharkey and Ido Leffler.

"Something that puts purpose into every product and message shared, and models a new kind of relationship between people and the companies built to serve them – directly, with integrity, transparency, authenticity, and democratised access."

So far, so Silicon Valley. But the lack of identity means that the products are dodging a fee known as BrandTax, which in turn has let Brandless set a standardised price across all its items.

Explore the range of products by clicking left or right in the gallery below, and if you live in the US and like what you see, you can order the Brandless goodies online.

Related articles:

Pages

Subscribe to Shelton Graphics aggregator