How to Add Two-factor Authentication to cPanel and WHM

Original Source: https://www.hongkiat.com/blog/adding-2fa-to-cpanel-whm/

Simple tutorial on adding two-factor authentication on your web hosting’s control panel to further secure your website.

The post How to Add Two-factor Authentication to cPanel and WHM appeared first…

Visit hongkiat.com for full content.

Nike Air Max 720 Illustration & Typography

Original Source: http://feedproxy.google.com/~r/abduzeedo/~3/3DiC7Od0Ejw/nike-air-max-720-illustration-typography

Nike Air Max 720 Illustration & Typography

Nike Air Max 720 Illustration & Typography

AoiroStudio
Apr 13, 2018

Happy Friday guys! Already the end of the week and hope your week went pretty well. We are cooking with the idea for keeping Fridays entirely for you guys, we would pick projects that we have received from our community through Facebook or Instagram and feature them on ABDZ. Let’s start it off with the work of Wes L Cockx who is a 3D illustrator based in Brussels, Belgium. He is sharing his project about Nike Air Max 720 and it’s always amazing seeing artists making awesome work with 3D. Something that we dearly love on Abduzeedo, hope you will enjoy!

3D illustrations for Nike’s Air Max 270 Air by you release China, Air Max Day 2018. Lightness • Biggest Air • Movement • Innovation

More Links
Learn more about Wes L Cockx
Follow the work of Wes L Cockx on Behance
Illustration & Typography
Nike Air Max 720 Illustration & TypographyNike Air Max 720 Illustration & TypographyNike Air Max 720 Illustration & TypographyNike Air Max 720 Illustration & TypographyNike Air Max 720 Illustration & TypographyNike Air Max 720 Illustration & TypographyNike Air Max 720 Illustration & TypographyNike Air Max 720 Illustration & TypographyNike Air Max 720 Illustration & Typography
Video

illustration
Typography
3d


Nuance Power PDF: Best Adobe Acrobat Alternative

Original Source: https://www.hongkiat.com/blog/nuance-power-pdf/

If I ask you to name a utility for working with PDFs, you may quickly answer “Adobe Acrobat”. However, there are many affordable alternatives that work equally well; and Nuance Power PDF is one of…

Visit hongkiat.com for full content.

Collective #406

Original Source: http://feedproxy.google.com/~r/tympanus/~3/hZ9d7MXF5P4/

C406_WOTW

Inspirational Website of the Week: Célia Lopez

A great design with some futuristic details and effects. Our pick this week.

Get inspired

C406_hellosign

Our Sponsor
Everything IT requires and Developers love

With a robust SDK, amazing support, detailed documentation, and super clean dashboard, HelloSign API is sure to make your team happy.

Try it today

C406_colorperception

Color: From Hexcodes to Eyeballs

Jamie Wong’s fantastic exploration of electromagnetic radiation, optical biology, colorimetry, and display hardware.

Read it

C406_keyframes

@keyframers 1.0.0

The @keyframers premier, where David Khourshid and Stephen Shaw live code an animation.

Watch it

C406_weather

Displaying the Weather With Serverless and Colors

Join Burke Holland in this fun project where he builds a weather bulb that shows a certain color based on the outside temperature.

Read it

C406_glide

Glide 3.0

The carousel library Glide has evolved into a dependency-free and light-weight script. Made by Jędrzej Chałubek.

Check it out

C406_brutalist

Brutalist design is the bad influence we all need

An interesting read by Maria Grilo where she explains Brutalist design.

Read it

C406_react-spring

Why React needed yet another animation library. Introducing: react-spring

Read all about react-spring, a new animation library for React. By Paul Henschel.

Read it

C406_font

Free Font: Quiapo Free

A great brush typeface inspired by the signs hanged behind the windshield of Filipino jeepneys. By Aaron Amar.

Free Font

C406_geofont

Geometric Letters

Alaa Alnuaimi designed this geometric font that reuses a small number of simple geometric shapes.

Check it out

C406_es6

ES6 Syntax and Feature Overview

An introduction to ES6 syntax and features, such as classes, Promises, constants, and destructuring, with one-to-one comparisons to older versions of JavaScript. By Tania Rascia.

Read it

C406_offline

Going Offline

Chapter 1 of Jeremy Keith’s new book “Going Offline”.

Read it

C406_webassembly

Sneak Peek at WebAssembly Studio

Learn about WebAssembly.Studio, an online IDE that helps you learn and teach others about WebAssembly.

Read it

C406_webanim

The State of Web Animation

Megan Zlock explores the current state of web animations in this two part series. Check out part 1, too.

Read it

C406_productivity

Productivity

A very interesting read on productivity by Sam Altman.

Read it

C406_fuzzball

Fuzzball

Great three.js fun with David Lenaerts’ Fuzzball.

Check it out

C406_editorial

Editorial Design and CSS Grid: Inspiration and examples

To illustrate (and celebrate) the approach between editorial design and web design, Ricardo Prieto has set out to design some pages of the 99U Quarterly Magazine with CSS Grid.

Read it

C406_cssrender

How CSS works: Parsing & painting CSS in the critical rendering path

Benjamin Johnson’s first article in a series where he takes a deep dive into exploring CSS as well as its attached ecosystem.

Read it

C406_moose

Moose

Great free stock photos that are made to fit together.

Check it out

C406_vscode

Top JavaScript VSCode Extensions for Faster Development

Arfat Salman lists some great VSCode extensions he uses on a day-to-day basis.

Read it

C406_atalanta

Free Font: Atalanta

A strong display typeface designed by Jose Manuel Vega.

Get it

C406_pattern

Memphis Space Seamless Patterns

Some gorgeous retro Memphis patterns made by Creative Veila.

Get it

Collective #406 was written by Pedro Botelho and published on Codrops.

Jump start your app career with this bundle

Original Source: http://feedproxy.google.com/~r/CreativeBloq/~3/xo1w0S9nrpg/jump-start-your-app-career-with-this-bundle

Knowing how to build for mobile is an invaluable skill with nearly endless opportunities. You can get your start in the mobile development field with the eduCBA Mobile App Development Lifetime Subscription Bundle. It's on sale now for 96 per cent off the retail price.

You'll learn the basics of the languages that make up the fundamentals of mobile. Whether you want to build for iOS or Android, you'll find a course in this bundle to get you on track. There are over 100 courses and 250 hours of content that will teach you how to design the user experience people want, build the apps and games people will love, and get your app to the top of the charts.

The eduCBA Mobile App Development Lifetime Subscription Bundle is valued at over $797, but you can save 96 per cent off the retail price. That means you’ll pay just $29 (approx. £20) for a bundle that could put you on the road to your next career.

Related articles:

How to make an appBuild apps that work offlineThe 34 best photo apps

How Blockchain and Cryptocurrency Workflow in 2018

Original Source: http://feedproxy.google.com/~r/Designrfix/~3/HIyar2JWmOU/blockchain-cryptocurrency-workflow-2018

Bitcoin and Blockchain were the talk of the town (the town being the world!) in 2017. There was a lot of buzz around the sudden hike in the prices of Bitcoin and people from all walks of life invested a buck or two in the money-making scheme. While that was for Bitcoin in 2017, the […]

The post How Blockchain and Cryptocurrency Workflow in 2018 appeared first on designrfix.com.

Setting the Right Boundaries for Your Web Design Clients

Original Source: http://feedproxy.google.com/~r/1stwebdesigner/~3/CTPUzX4yrl4/

Providing awesome customer service should be among the top goals of any freelance web designer. Too often we hear about those who never respond to client requests or are otherwise difficult to deal with. Usually it seems we hear these stories from new clients that have come to us after a “bad experience” with another designer.

Of course, most of us will go out of our way to make a client happy. Even if it means leaving our comfort zone or bending our own rule – we make the best effort that we possibly can.

But as you gain experience, you start to realize that there is an incredibly fine line between pleasing clients and becoming a human doormat. This is when you need to take a step back and assess what, if any, boundaries you have put in place. What, you don’t have boundaries? Well let’s take care of that right here and now.

Knowing Where to Draw the Line

Figuring out which kinds of boundaries you need to put up can be difficult. While you don’t want to be taken advantage of, you also don’t want to come off as either aloof or unwilling to help. To find the right answer, you have to look within yourself.

Boundaries are a very personal thing and chances are that yours won’t be the same as mine. As our personalities are different, so are the “lines in the sand” that we draw. But in general, you’ll want to consider the following scenarios:

Clients Who Expect You to Work Outside of Normal Business Hours
This one is a symptom of the always-connected world we live in. Many businesses now have a culture that permits after-hours communication between team members. Therefore, we’re expected to be ready and available whenever someone needs us. It doesn’t matter if you’re on vacation, at your child’s athletic event or just trying to watch your favorite show.

It’s understandable that not everyone is keen on doing this. In my career, I’ve often responded to non-emergencies after hours and have found that it’s usually something that causes more stress than it’s worth. I end up thinking about whatever subject the client contacted me about and it becomes near impossible to relax.

On the other hand, some people don’t necessarily mind a few quick emails after hours. So it’s up to you to decide how you feel about this kind of expectation. You can either cheerfully reply to messages at the dinner table or you can let it wait until the next business day. A solid compromise might be to reply by saying “Thanks for your note. I’ll get back to you on this first thing tomorrow”. If a client can’t accept that you have a life outside of work, then too bad for them.

Clients Who Expect You to Work Outside of Normal Business Hours

Clients Who Keep Changing Their Mind
We’ve all dealt with clients who flip-flop on various parts of the web design process. Maybe they keep switching colors, suggesting different fonts or even layouts. It can be maddening to a designer who is on a tight deadline or juggling multiple projects.

Some of this can be classified as just the normal back-and-forth of a project. But there can come a point where you are repeatedly asked to change the same thing over and over again. This can be especially frustrating when it comes to the more complex parts of a website.

One of the toughest things I’ve dealt with in this area are times when a client has asked for some sort of functionality that requires a lot of research and development – only to trash it afterwards. It can feel like a colossal waste of time.

The best solution here is to set your limits in writing. Somewhere in your contract, mention that you’re happy to make revisions. But also note that repeated or lengthy changes may lead to extra costs. It may not completely save your sanity, but could provide you with some extra cash for your trouble.

Clients Who Keep Changing Their Mind

Incessant Phone Calls or Emails
There are times when clients will need to reach out to you and you should welcome them to do so. But like anything else, there are some people who will take advantage of your willingness to help. All of the sudden you’re being asked advice on things that are at best vaguely related to their website. Or maybe they assume you’re excited to have them bounce every idea in their head off of you while getting some free access to your expertise.

This puts you in a bit of a no-win situation. You certainly don’t want to continue to provide this person with unlimited free support regarding their poodle’s skin condition. But it’s not particularly easy to say something without causing offense.

Personally, confrontation isn’t my thing. So I look for alternatives whenever possible. I don’t typically recommend this type of behavior, but here it goes. If the calls or messages really are too much and often unrelated to your business relationship with a client – let them sit for awhile. Let your phone go to voicemail and allow emails to sit in your inbox for at least a few hours.

When you do finally get back to them, tell them that you’re sorry for the delayed response and that you’ve been incredibly busy. If you’re not available the minute they have a thought in their head, they might just forget the whole thing. If they still won’t leave you alone, then it might be time to be a little more firm in your response.

Incessant Phone Calls or Emails

Chronically Late Payers
Ah, there’s nothing like the feeling of hustling to get a client’s “must-have” request done in record time and then waiting six months to be paid. Perhaps there’s no other situation that will make a freelancer feel more used and unappreciated.

This may also be the easiest of all boundaries to set. If a client is consistently behind in paying, they are not worth rushing around for. When you run into someone who is always hard to get a hold of when it’s time to pay an invoice, tell them that you can’t spend your time working on projects that you may not receive payment for.

Better yet, add a clause to your contracts that specifies late fees or even a refusal of service if a client is several months behind. If someone’s not paying you, why deal with them at all?

Chronically Late Payers

It’s Up to You

The thing about setting boundaries is that you have to be the one to both enact and enforce them. Because, while you can declare that you won’t stand for certain client behavior, it doesn’t mean much if you don’t actually follow through. It’s tough to do, but also quite necessary.

The more your business grows, the more you’ll need to stand up for yourself and your interests. Do it now, before it’s too late!


50+ Sites to Download Free Sound Effects for Almost Everything

Original Source: https://www.hongkiat.com/blog/download-free-sound-effects/

Best websites to download different kinds of music, sound effects, vocals, and audio snippets etc. for free.

The post 50+ Sites to Download Free Sound Effects for Almost Everything appeared first on…

Visit hongkiat.com for full content.

Typographic Illustration for ESPN NEXT

Original Source: http://feedproxy.google.com/~r/abduzeedo/~3/jmJs15SbvPc/typographic-illustration-espn-next

Typographic Illustration for ESPN NEXT

Typographic Illustration for ESPN NEXT

abduzeedo
Apr 19, 2018

Pablo Olivera recently had the privilege to work with ESPN The Magazine on their NEXT Feature. The project included a typographic Intro Illustration a flat logotype of the Intro type and some custom letters which later turned into a font.

The feature is about up coming and young star athletes, the next stars of their specific sports. The intro piece needed to have a futuristic feel to it so we used 3D type with LED styled lighting inner strips.

The sports featured included Football, Baseball, Hockey and Basketball. I used line illustrations from each of the sports respective playing field/court to surround the type.

The custom font took its styling form the intro type, keeping the inline and geometric angles to tie the feature together nicely. The font is a case alternative font allowing the Inline version or the solid version to be used by lower case or uppercase.

Typographic Illustration

For more information about Pablo Olivera check out:

INSTAGRAM
FACEBOOK
DRIBBBLE  

Typography
illustration


Clean Code with ES6 Default Parameters & Property Shorthands

Original Source: https://www.sitepoint.com/es6-default-parameters/

Creating a method also means writing an API — whether it’s for yourself, another developer on your team, or other developers using your project. Depending on the size, complexity, and purpose of your function, you have to think of default settings and the API of your input/output.

Default function parameters and property shorthands are two handy features of ES6 that can help you write your API.

ES6 Default Parameters

Let’s freshen up our knowledge quickly and take a look at the syntax again. Default parameters allow us to initialize functions with default values. A default is used when an argument is either omitted or undefined — meaning null is a valid value. A default parameter can be anything from a number to another function.

// Basic syntax
function multiply (a, b = 2) {
return a * b;
}
multiply(5); // 10

// Default parameters are also available to later default parameters
function foo (num = 1, multi = multiply(num)) {
return [num, multi];
}
foo(); // [1, 2]
foo(6); // [6, 12]

A real-world example

Let’s take a basic function and demonstrate how default parameters can speed up your development and make the code better organized.

Our example method is called createElement(). It takes a few configuration arguments, and returns an HTML element. The API looks like this:

// We want a <p> element, with some text content and two classes attached.
// Returns <p class=”very-special-text super-big”>Such unique text</p>
createElement(‘p’, {
content: ‘Such unique text’,
classNames: [‘very-special-text’, ‘super-big’]
});

// To make this method even more useful, it should always return a default
// element when any argument is left out or none are passed at all.
createElement(); // <div class=”module-text default”>Very default</div>

The implementation of this won’t have much logic, but can become quite large due to it’s default coverage.

// Without default parameters it looks quite bloated and unnecessary large.
function createElement (tag, config) {
tag = tag || ‘div’;
config = config || {};

const element = document.createElement(tag);
const content = config.content || ‘Very default’;
const text = document.createTextNode(content);
let classNames = config.classNames;

if (classNames === undefined) {
classNames = [‘module-text’, ‘default’];
}

element.classList.add(…classNames);
element.appendChild(text);

return element;
}

So far, so good. What’s happening here? We’re doing the following:

setting default values for both our parameters tag and config, in case they aren’t passed (note that some linters don’t like parameter reassigning)
creating constants with the actual content (and default values)
checking if classNames is defined, and assigning a default array if not
creating and modifying the element before we return it.

Now let’s take this function and optimize it to be cleaner, faster to write, and so that it’s more obvious what its purpose is:

// Default all the things
function createElement (tag = ‘div’, {
content = ‘Very default’,
classNames = [‘module-text’, ‘special’]
} = {}) {
const element = document.createElement(tag);
const text = document.createTextNode(content);

element.classList.add(…classNames);
element.appendChild(text);

return element;
}

We didn’t touch the function’s logic, but removed all default handling from the function body. The function signature now contains all defaults.

Let me further explain one part, which might be slightly confusing:

// What exactly happens here?
function createElement ({
content = ‘Very default’,
classNames = [‘module-text’, ‘special’]
} = {}) {
// function body
}

We not only declare a default object parameter, but also default object properties. This makes it more obvious what the default configuration is supposed to look like, rather than only declaring a default object (e.g. config = {}) and later setting default properties. It might take some additional time to get used to it, but in the end it improves your workflow.

Of course, we could still argue with larger configurations that it might create more overhead and it’d be simpler to just keep the default handling inside of the function body.

Continue reading %Clean Code with ES6 Default Parameters & Property Shorthands%