Interview: Active Theory Wins Developer Site of the Year at Awwwards London

Mar 25 5:34am Awwwards - Blog
There was a buzz in Central London this February as key figures in digital design united to hear talks from experts in UX, Web Design and VR and network...
Read More

How Do I Publish My Writing Online?

Mar 25 2:08am Designbeep
How to get your writing out there online If you love to write, the joy of doing so may be enough for you. But what if you want to share your talent with others? It does not matter whether you are a poet, a short story writer or simply someone who likes to express their opinion by creating articles, you may come to a point where you want place content online for people to see. The good news is that you can do this for free. It’s possible to use a content management system (CMS), such as WordPress, to get...
Read More

What Sort of Hosting Should I Choose for My Website?

Mar 24 5:30pm SitePoint
Having a website is a bit like having a child. It's rewarding to watch them grow, but they require time, effort, and a watchful eye. Providing an environment that meets their needs will ensure their healthy, ongoing growth. A website can grow in terms of content, structure and functionality, and these have implications for your site's home—your web hosting. Invest some time considering the options. In this article we’ll help you choose the appropriate type of web hosting by listing some key decisions about your website and the amount of assistance you’ll need setting it up and maintaining it. If you missed our first article, I Need a Website. What Do I Need to Know About Hosting?, you might want to check it out before reading this one. What Types of Web Hosting Are There? One thing that complicates the choice of web hosting is the overwhelming number of options out there! Here’s a quick rundown. The most affordable hosting plans are shared hosting. They cost less because you share a server with others. You split the cost, but you also split the storage and bandwidth. If another site gets a lot of traffic, yours might suffer. A dedicated server’s resources are completely available to your website. You get all of the storage and bandwidth, and you may be responsible for the management of the computer as well. Cloud hosting is a cluster of maintained servers that scale when necessary to give your website even more resources than a dedicated server. In each case you’re typically offered a choice of plans with different options at different price points. These vary from provider to provider. So, which type of hosting is best for your site? Answer the following questions to find out. 1. How Many Pages Will Your Site Have? You might be surprised by how little space a basic website needs. You might also be surprised by how fast a website can grow. So choose a hosting plan that provides enough room to store your website now, with plenty of room to grow in the future. Continue reading \%What Sort of Hosting Should I Choose for My Website?\%...
Read More

Five CSS Performance Tools to Speed up Your Website

Mar 24 3:30pm SitePoint
This article is part of a series created in partnership with SiteGround. Thank you for supporting the partners who make SitePoint possible. In this article, I'm going to list five CSS performance tools that will help you put your website on a CSS diet for a fast loading experience. Why Is Page Speed so Important? A fast loading website is crucial to the success of your website. There are research findings to support the view that users get quickly impatient if they have to wait even a few seconds for web content to appear. When this happens on your website, their experience degrades noticeably with the consequence that your website gets fewer visits and fewer conversions, which ends up hurting your business. There are a number of factors that affect web performance, e.g., the number of HTTP requests, bloated code, heavy media files, etc. How you write CSS and how your stylesheet gets loaded in the browser can have significant impact on a few of those precious milliseconds which make the difference between visitors staying on your website and clicking their way toward your competition. Let's see how the tools below can help to fix your CSS for top-notch web performance. TestMyCSS TestMyCSS is a free online optimization tool with tons of features. It checks for redundancy, validation errors, unused CSS, and best practices. You can start to use it right away, just type the url to a website's CSS file, and TestMyCSS spits out all the items that need improvement. Not only that, you can also find helpful hints on How to simplify complex selectors Duplicated CSS properties and selectors you need to get rid of The number of !important declarations present in the code Unecessary class specificity Unecessary IE fixes Prefixed CSS properties which don't need vendor prefixes any more Class or ID rules qualified with tag names, e.g., a.primary-link Inappropriate use of universal selectors. Stylelint Stylelint is an ambitious CSS linter that works with PostCSS, an open source tool to write state of the art CSS. A linter is a program that goes through your code and catches any potential errors. Stylelint can Flag errors like typos, invalid hex colors, duplicate selectors, etc. Enforce best practices Enforce coding style conventions like consistent spacing in each CSS rule, etc. Provide support for new cutting edge CSS syntax Automatically fix some minor...
Read More

20 CSS Tutorials for Beginners

Mar 24 1:20pm Line25
Today’s article gathers 20 CSS tutorials for beginners that will teach you some neat CSS tricks to improve your design skills. If you want to learn how to create 3D button styles, social link buttons, progress buttons, navigation menus, 3d typography, menus, and more, these CSS tutorials for beginners are just what you were looking […] The post 20 CSS Tutorials for Beginners appeared first on Line25.
Read More

Cut the File Size with These Three HTML Minification Tools

Mar 24 12:30pm SitePoint
This article is part of a series created in partnership with SiteGround. Thank you for supporting the partners who make SitePoint possible. Although there isn't clear agreement on the benefits of HTML minification, if you test your website on Google's PageSpeed Insights, part of the answer you could get as a result is that you should minify HTML, CSS and JavaScript. Minifying a resource means getting rid of redundant elements, that is, elements which the browser doesn't need in order to process the document correctly. Applying this concept to a HTML document, minification could include things like: Stripping HTML comments, as well as comments inside inline CSS and JavaScript code Removing white space both in HTML code and inline CSS and JavaScript Removing unnecessary quotes, empty attributes, etc. Getting rid of CDATA sections These operations contribute to keep the file size down, but also make it easier to keep the code clean and maintainable. GZipping Versus Minifying Resources Is still worth minifying HTML if you're using GZip? One of the arguments against HTML minification is that, gzipping HTML pages already gets rid of white space and reduces file size. This makes minification quite useless. Continue reading \%Cut the File Size with These Three HTML Minification Tools\%...
Read More


Mar 24 12:03pm siiimple
We’re a team of makers, thinkers, explorers and theatre singers. We approach work and play with curiosity and experimentation, using what we learn to create meaningful digital products that connect with people, just like you.
Read More

Creating Strictly Typed Arrays and Collections in PHP

Mar 24 12:00pm SitePoint
One of the language features announced back in PHP 5.6 was the addition of the ... token to denote that a function or method accepts a variable length of arguments. Something I rarely see mentioned is that it’s possible to combine this feature with type hints to essentially create typed arrays. For example, we could have a Movie class with a method to set an array of air dates that only accepts DateTimeImmutable objects: <?php class Movie { private $dates = []; public function setAirDates(\DateTimeImmutable ...$dates) { $this->dates = $dates; } public function getAirDates() { return $this->dates; } } We can now pass a variable number of separate DateTimeImmutable objects to the setAirDates() method: <?php $movie = new Movie(); $movie->setAirDates( \DateTimeImmutable::createFromFormat('Y-m-d', '2017-01-28'), \DateTimeImmutable::createFromFormat('Y-m-d', '2017-02-22') ); If we were to pass something else than a DateTimeImmutable, a string for example, a fatal error would be thrown: If we instead already had an array of DateTimeImmutable objects that we wanted to pass to setAirDates(), we could again use the ... token, but this time to unpack them: <?php $dates = [ \DateTimeImmutable::createFromFormat('Y-m-d', '2017-01-28'), \DateTimeImmutable::createFromFormat('Y-m-d', '2017-02-22'), ]; $movie = new Movie(); $movie->setAirDates(...$dates); If the array were to contain a value that is not of the expected type, we would still get the fatal error mentioned earlier. Additionally, we can use scalar types the same way starting from PHP 7. For example, we can add a method to set a list of ratings as floats on our Movie class: <?php declare(strict\_types=1); class Movie { private $dates = []; private $ratings = []; public function setAirDates(\DateTimeImmutable ...$dates) { /* ... */ } public function getAirDates() : array { /* ... */ } public function setRatings(float ...$ratings) { $this->ratings = $ratings; } public function getAverageRating() : float { if (empty($this->ratings)) { return 0; } $total = 0; foreach ($this->ratings as $rating) { $total += $rating; } return $total / count($this->ratings); } } Again, this ensures that the ratings property will always contain floats without us having to loop over all th...
Read More

Introduction to The Elm Architecture and How to Build our First Application

Mar 24 10:11am CSS-Tricks
Creating our first Elm application might seem like a hard task. The new syntax and the new paradigm can be intimidating if you haven't used other functional programming languages before. But once you create your first application, you will understand why Elm has been gaining so much attention lately. Article Series: Why Elm? (And How To Get Started With It) Introduction to The Elm Architecture and How to Build our First Application (You are here!) In this article, we are … Introduction to The Elm Architecture and How to Build our First Application is a post from CSS-Tricks...
Read More

Web Development Reading List #175: GraphQL, IndexedDB2, And An Open Ethical Internet

Mar 24 6:53am Smashing Magazine
    With GraphQL, FQL, and IndexedDB2, we have new tools at our fingertips that allow us to build products that are not only more flexible but also faster. With this week’s Web Development Reading List, we’ll dive a bit deeper into these promising technologies and combine this with thoughts about the openness of the internet, ethical choices, and building inclusive products. So without further ado, let’s get started! Chrome 57 just hit stable, now the Chrome developer team announced Chrome 58 beta. It includes IndexedDB2.0 support and improvements to iframe navigation. Among the smaller changes are also auto-pause/resume of video on Android when the window is in the background and the fact that HTTPS is now required for the Web Notifications API.The post Web Development Reading List #175: GraphQL, IndexedDB2, And An Open Ethical Internet appeared first on Smashing Magazine.
Read More

Stay Organized: The 10 Best Cross-Platform Calendars

Mar 24 4:00am noupe
One important tool for every human, and especially for web workers, is the calendar. A majority of the daily organization is done on them – and not just on a single device such as the [...]...
Read More

10 WPML-Ready WordPress Themes

Mar 23 7:58pm Designbeep
How to Earn with Social Stock Hi there and here is something new and cool for you. Today we will talk about splendid project launched by Template Monster. This is a unique opportunity for you and your friends to get splendid prizes and get in a flow of web design. Let’s see what we have here and explore every detail. Now you need to answer several plain questions. Do you spend much time online? Do you have many friends in social nets? If your answer is yes, so here is an awesome offer for you. Listen up and learn more...
Read More

A Beginners Guide to Designing Conversational Interfaces

Mar 23 4:45pm Webdesigner Depot
Whether you love them or hate them, conversational interfaces have started making a significant impact in the business/brand communication landscape. Though many businesses have realized that conversational interfaces are likely to cause a major shift in brand communication there are many who are skeptical about CIs.  CIs have limitations, but they are here to stay and […]...
Read More

Writing JavaScript with Accessibility in Mind

Mar 23 4:00pm SitePoint
Tips on how to improve the accessibility of your JavaScript components and provide users with more and better ways to interact with your website or web app. This article was originally published on Medium. In my first post Writing HTML with accessibility in mind I explained why and how I got started with web accessibility. I also shared some tips on how you can improve your markup in order to make your websites more accessible. Some of these were pretty basic but nevertheless valuable. It all boils down to two of the most important unwritten rules in front-end development: Learn the basics and take enough time to plan and write HTML. Both you and your users will benefit from clean and semantic markup. Luckily, HTML is not the only language we have to make websites, but the more complex the language, the easier things can go wrong and JavaScript can get very complex. Whilst being content that our code works, it's easy to forget about users with other input devices than a mouse or touch pad, e.g. keyboard or screen reader users. In this second article of four about web accessibility I have gathered some tips on what to consider when writing JavaScript and how to make your JavaScript components more accessible. JavaScript Is Not the Enemy Before you read my tips I want to point out one important thing — making an accessible site doesn't mean that you have to decide whether to use JavaScript or not. Accessibility is about making content available to as many people as possible, which also includes users with old browsers and computers, slow internet connections, strict security restrictions (e.g. no JavaScript) and so on. The experience under conditions like these, where JavaScript may not work or take too long to load, might not be ideal but is still good enough if the website is accessible and usable. If JavaScript is executable it can even be used to improve accessibility. Sara Soueidan has written about her experiences creating a tooltip widget in Building a fully-accessible help tooltip… is harder than I thought. She explains how every single no-JS solution came with a very bad downside that negatively affected the user experience and why JavaScript is important for accessibility. Marco Zehe wrote a lot more about JavaScript and accessibility in his article JavaScript is not an enemy of accessibility! I highly suggest you read his post. But enough wi...
Read More

You Kinda Can Use Custom Fonts in HTML Emails

Mar 23 2:17pm CSS-Tricks
And you use them pretty much just like you'd use custom fonts on a website. Jaina Mistry had the scoop on this last year over on the Litmus blog: While web fonts don't have universal support, here are the email clients where they are supported: AOL Mail Native Android mail app (not Gmail app) Apple Mail iOS Mail Outlook 2000 app Aside from using a JavaScript font loader, which definitely won't work in email (no email client will be … You Kinda Can Use Custom Fonts in HTML Emails is a post from CSS-Tricks...
Read More

An Introduction to the CSS Grid Layout Module

Mar 23 2:00pm SitePoint
This article was updated on 23rd March, 2017. Specifically: browser support for CSS Grid Layout. As web applications become more and more complex, we need a more natural way to do advanced layouts easily without hacky solutions that use floats and other less burdensome techniques. An exciting new solution for creating layouts comes with the CSS Grid Layout Module. In this introductory tutorial, I’ll introduce you to this relatively new CSS feature, I’ll discuss the current browser support, and I’ll show you using some examples how the CSS Grid Layout Module works. [author\_more] What is the CSS Grid Layout Module? The core idea behind the Grid Layout is to divide a web page into columns and rows, along with the ability to position and size the building block elements based on the rows and columns we have created in terms of size, position, and layer. The grid also gives us a flexible way to change the position of elements with only CSS without any change to the HTML. This can be used with media queries to alter the layout at different breakpoints. Browser Support Before we can dive more into Grid Layout, it’s good to know the status of browser support, and how we can enable this feature in current browsers. Chrome and Firefox The awesome news is that since March 2017 both Chrome and Firefox browsers have CSS Grid Layout enabled by default Therefore, it’s recommended to use either Chrome or Firefox with the examples in this article, or with your own experimentations. Internet Explorer The first proposal of Grid Layout was developed by Microsoft, and IE10 shipped with an -ms prefixed implementation. If you take a look at support on Can I Use, you’ll see that both IE11 and Edge also support Grid Layout. Opera To enable Grid Layout in Opera, navigate to chrome://flags or opera://flags (either works in Opera), using the browser’s address bar and look for the Enable experimental Web Platform features flag. After you enable it, you will be asked to relaunch the browser. Grid Layout Polyfill A polyfill is also available to provide a working implementation of the Grid Module for current browsers. A Grid Layout Example Let’s start with an example to see the power of Grid Layout, and then I’ll explain some new concepts in more detail. Imagine you want to create a Twitter app with four full height columns layout (Tweets, Replies, Search, and Messa...
Read More

Showcase: Awesome Design to Code Services for Your Projects

Mar 23 12:50pm Line25
Many businesses and design agencies have web design/development teams in place. It’s somewhat unusual to find individual members of those teams who fully engage in both activities. Designers prefer doing design work, and developers prefer bringing designs to life. It’s the same with freelancers. Few freelance web designers have the expertise or experience to perform […] The post Showcase: Awesome Design to Code Services for Your Projects appeared first on Line25.
Read More

The Future | Inspired by Nature

Mar 23 9:32am Inspired Magazine
Inspired Magazine Inspired Magazine - creativity & inspiration daily Nature* feeds us, purifies the air we breathe and the water we drink. Unbeatable booster, it cures stress, sadness, reenergizes humans. It’s all around us but most of us fail to appreciate it or even notice it, which is a bit like turning the back on our own selves. No, we’re not going into a...Continue Reading The Future | Inspired by Nature → This post The Future | Inspired by Nature was written by Anca Rusu and first appearedon Inspired Magazine.
Read More

Expanding Bar Navigation Concept

Mar 23 9:21am Codrops
An experimental tab-like navigation concept where a content area is opened with an animation once an item is clicked. Expanding Bar Navigation Concept was written by Mary Lou and published on Codrops.
Read More

eBay Redesigns Its Homepage (Again)

Mar 23 8:45am Webdesigner Depot
They say that three time’s the charm. Maybe for eBay, two is all that it will take when it comes to its homepage design. In late 2013, the auction site last attempted a homepage redesign that wasn’t all that user-friendly. While the then-redesign was supposed to surface relevant goods based on the interests and browsing […]...
Read More

The Road To Resilient Web Design

Mar 23 7:41am Smashing Magazine
    Editor's Note: In the world of web design, we tend to become preoccupied with the here and now. In Resilient Web Design , Jeremy Keith emphasizes the importance of learning from the past in order to better prepare ourselves for the future. So, perhaps we should stop and think more beyond our present moment? The following is an excerpt from Jeremy's web book. Design adds clarity. Using colour, typography, hierarchy, contrast, and all the other tools at their disposal, designers can take an unordered jumble of information and turn it into something that’s easy to use and pleasurable to behold. Like life itself, design can win a small victory against the entropy of the universe, creating pockets of order from the raw materials of chaos. The Book of Kells is a beautifully illustrated manuscript created over 1200 years ago. It’s tempting to call it a work of art, but it is a work of design. The purpose of the book is to communicate a message; the gospels of the Christian religion. Through the use of illustration and calligraphy, that message is conveyed in an inviting context, making it pleasing to behold.The post The Road To Resilient Web Design appeared first on Smashing Magazine.
Read More

Seven Ways You Can Place Elements Using CSS Grid Layout

Mar 23 7:16am SitePoint
This article was updated on 23rd March, 2017. Specifically: browser support for CSS Grid Layout. In this article, we are going to learn seven ways in which you can place elements in a web page using the Grid Layout module. Previously, SitePoint published Introducing the CSS Grid Layout. Recently, I also wrote Where Things Are at in the CSS Grid Layout Working Draft. Here, the focus will be entirely on specific ways in which you can lay out elements on the web using CSS Grid. Now, let's go over each one of them. Addressing Browser Support for Grid Layout At this time, Grid Layout doesn't yet have consistent browser support. However, as of March 2017, both latest versions of Chrome and Firefox browsers have been released with CSS Grid Layout support by default. IE still supports the old implementation, Opera needs the Experimental Web Platform flag turned on, and Safari has no support at all. To properly work with all the examples in this article, I suggest you use either Chrome or Firefox. For readers who for some reason find it problematic to use these browsers, I have added a screenshot to show the final result of each technique. #1 Specifying Everything in Individual Properties This is the version we have been using to place the elements in our previous articles. This method is verbose but easy to understand. Basically, the left/right and top/bottom bounds of an element are specified using grid-column-start/grid-column-end and grid-row-start/grid-row-end properties. If an element is only going to span one row or column, you can omit the -end properties, this way you will have to write a little less CSS. In the demo below, element A has been placed in the second row and second column using the following CSS: [code language= css ] .a { grid-column-start: 2; grid-column-end: 3; grid-row-start: 2; grid-row-end: 3; } [/code] The same effect could be achieved by using: [code language= css ] .a { grid-column-start: 2; grid-row-start: 2; } [/code] See the Pen Specifying Everything in individual Properties by SitePoint (@SitePoint) on CodePen. #2 Using grid-row and grid-column Even though the CSS in our first example was readable and easy to understand, we had to use four different properties to place a single element. Instead of using four properties, we can just use two — grid-column and grid-row. Both these properties will take two val...
Read More

Hired Job Hunting Simplified

Mar 23 6:52am CSS-Tricks
On Hired, companies apply to you, not the other way around. Upon getting approved your profile becomes visible to over 6,000 innovative companies, hiring for technical roles. So if you’re looking for new opportunities, but don't want the hassle of applying to all those companies, try Hired and let the companies apply to you! Direct Link to Article — Permalink… Hired – Job Hunting Simplified​ is a post from CSS-Tricks...
Read More

Modern JavaScript for Ancient Web Developers

Mar 23 6:51am CSS-Tricks
Gina Trapani: ... when you're learning modern JavaScript, there's a good chance that the solution to the problem you're having is still getting worked out. In fact, it's very possible it is only one code review away from getting merged into the package you're using. It's a weird time. So many of us are living so close to the edge. As Gina puts it, it's harder to find a 5-year-old Stack Overflow answer that solves your problem. New things drop … Modern JavaScript for Ancient Web Developers is a post from CSS-Tricks...
Read More

10 Fancy Free Magazine Themes for your WordPress

Mar 23 5:00am noupe
Magazine themes are getting increasingly more popular. They look nice and offer a lot of information directly on the landing page. As they are not only suitable for news websites, but also being used in [...]...
Read More

UCreatives Graphic Design Reading List

Mar 23 3:26am
We asked a few designers, marketers, and advertising professionals who’ve worked with UCreative to give us their recommends. These ... The post UCreative’s Graphic Design Reading List appeared first on
Read More

Scrum: Walking through a Story (Part 3)

Mar 23 2:00am SitePoint
The following is an extract from our book, Scrum: Novice to Ninja, written by M. David Green. Copies are sold in stores worldwide, or you can buy it in ebook form here. Demonstrating the Story A day before the demo, as part of the preparation, the product owner sits down with the junior engineer who owns the puppy story. They have already walked through the various components a number of times during the sprint, but the product owner wants to be sure all of the acceptance criteria can be demonstrated. Will we have this staged properly on production-ready servers in time for the demo? the product owner asks. Pretty much, the engineer replies. That's the server QA has been testing on. It should be fine for the demo. Continue reading \%Scrum: Walking through a Story (Part 3)\%...
Read More

Need to Catch Up on the AMP Debate?

Mar 22 10:09pm CSS-Tricks
The subject of AMP came up at a meetup I was at the other day. It came up in a Hey have y'all seen this thing yet? context. Some people have heard of it, some hadn't. Even among those who had heard of it, the vibe was mostly: this is newfangled tech. It's the future, probably. I guess it's a thing I gotta learn, I just haven't gotten around to it yet. Which makes sense. It's just like hearing about … Need to Catch Up on the AMP Debate? is a post from CSS-Tricks...
Read More

Editorial: Put Your Code Where Your Mouth Is

Mar 22 7:37pm SitePoint
We may be familiar with Siri, Google Now, and Cortana as the mobile operating system’s native voice-operated assistants, but Apple has gone a step further and published an API that allows developers to recognise speech and make use of it. iOS users are already used to Siri to interact with apps and dictate text, and […] Continue reading \%Editorial: Put Your Code Where Your Mouth Is\%...
Read More

Managing WordPress Updates with InfiniteWP

Mar 22 6:30pm SitePoint
This article is part of a series created in partnership with SiteGround. Thank you for supporting the partners who make SitePoint possible. InfiniteWP is an administration panel that provides almost effortless management of multiple WordPress websites. Do you administer more than one WordPress website for your organization? Do you host WordPress websites, or are you a developer who maintains sites for clients? This is the perfect tool for you, if so! What Problems Does It Solve? Plugin Updates - Keeping track of the endless security updates, bug fixes, and new-feature updates of every plugin deployed on your WordPress sites can be extremely tedious, especially if you have multiple sites to manage. These plugin updates can be done with a click of a button from InfiniteWP. Platform Updates - In addition, updates to the WordPress platform can be conducted from this central location as well. Are you familiar with the changes in the new version? If so, you can easily update all of your sites to it. Theme Updates - What about updates to themes (or parent themes) that have been used to build the UI of your websites? Those, too, can be updated all from the admin panel, whether you're using the same themes on multiple sites, or all unique ones. If it is updatable within WordPress, it will be updatable using InfiniteWP. Backups - In addition to all of the update features, InfiniteWP also allows you to take backups of your attached websites, the files and database of them. This enables you to update with confidence. Have some untested plugins to update? Back the site up first! Setting up InfiniteWP Installation and setup can be done in one of three ways: Install via WordPress Plugin Install via cPanel Manual Installation This mix of options means that whether you're on a shared host with a cPanel, on a VPS, or any other hosting option, it's likely that you'll be able to find a solution that meets your needs, and deploy InfiniteWP to manage your WordPress sites! Setting up a Site on InfiniteWP Once you've installed InfiniteWP and logged into the admin panel successfully, you'll encounter the dashboard screen. Your next step in connecting a website to your InfiniteWP dashboard will be to add the InfiniteWP plugin to the WordPress website you wish to manage with InfiniteWP. You can do this easily by going to your Plugins menu, choosing to Add a Plugin, and searching...
Read More

Simplifying Asynchronous Coding with Async Functions

Mar 22 4:00pm SitePoint
The debut of Promises in JavaScript has lit the internet on fire—they help developers break out of callback hell and solve a lot of problems that have plagued the asynchronous code of JavaScript programmers everywhere. Promises are far from flawless, though. They still require callbacks, can still be messy in complex situations, and are incredibly verbose. 22nd March 2017: This article has been updated to reflect changes to the specification, and current runtime support. With the advent of ES6 (referred to as ES2015 from here on), which not only made promises native to the language without requiring one of the countless available libraries, we also got generators. Generators have the ability to pause execution within a function, which means that by wrapping them in a utility function, we have the ability to wait for an asynchronous operation to finish before moving on to the next line of code. Suddenly your asynchronous code could start to look synchronous! But that was just the first step. Async functions are due to be released as part of ES2017 this year and native support is already growing. Async functions take the idea of using generators for asynchronous programming and give them their own simple and semantic syntax. Consequently, you don’t have to use a library to get that wrapping utility function, because that is handled in the background. To run the async/await code samples from this article, you'll need a compatible browser. Runtime Compatibility On the client-side, Chrome, Firefox and Opera now support async functions out of the box. Can I Use async-functions? Data on support for the async-functions feature across the major browsers from As of version 7.6, Node.js also ships with async/await enabled by default. Async Functions vs Generators Here is an example of using generators for asynchronous programming. It uses the Q library: var doAsyncOp = Q.async(function* () { var val = yield asynchronousOperation(); console.log(val); return val; }); Q.async is the wrapper function that handles everything behind the scenes. The * is what denotes the function as a generator function and yield is how you pause the function and let the wrapper function take over. Q.async will return a function that you can assign—as I have done—to doAsyncOp and subsequently invoke. Here’s what it looks like when you get rid of the cruft b...
Read More

Collective #299

Mar 22 1:42pm Codrops
Samsy Lab * MoveTo * Omi * Testing Your Frontend Code * Gridprint * CSS Grid Fallbacks and Overrides Collective #299 was written by Pedro Botelho and published on Codrops.
Read More

How to Create WordPress MySQL Databases on cPanel

Mar 22 1:30pm SitePoint
WordPress’ success owes much to its quick and simple five-minute installation procedure. Yet the MySQL database still causes confusion for many. This tutorial describes how to create a database using cPanel, a popular platform management utility offered by many web hosts. We’ll also discuss how to use this database during a WordPress installation. The techniques can be used by any web application which requires MySQL. Let’s start with the basics and terminology… What is a Database? A database is a collection of organized data. That’s it. WordPress stores all its page, post, category and user data in a database. MySQL is a database management system (DBMS). It is software which allows you to create, update, read and delete data within a database. A single MySQL installation can manage any number of self-contained databases. You could have one for WordPress, another for Magento, and others for Drupal or whatever you need. There are plenty of alternatives but MySQL became popular for several reasons: it is free, open source software. It is now owned by Oracle but there are open MySQL-compatible options such as MariaDB. it became synonymous with PHP - the web’s most-used language/runtime which powers WordPress. Both PHP and MySQL appeared in the mid-1990s when web development was in its infancy. it adopts Structured Query Language (SQL) - a (fairly) standard language for creating data structures and data. it is fast, simple to install and has many third-party development tools. How do Applications Access a Database? Applications such as WordPress access their data via a database connection. In the case of MySQL, WordPress’ PHP code can only establish a connection when it knows: the address where MySQL is installed the name of the database it needs to access a user ID and password required to access that database A database “user” account must be defined for WordPress use. It can have a very strong password and set appropriate database permissions. How is Data Stored? MySQL and other SQL databases store data in relational tables. For example, you may have a set of article posts. Each post will have unique data, such as the title and body text. It will also have data used in other posts, such as the category and author details. Rather than repeat the same data again and again, we create separate tables: an author table containing an ID, t...
Read More

Javas Ternary Operator in Three Minutes

Mar 22 1:00pm SitePoint
Table of Contents Ternary Operator Syntax Ternary Operator as an Expression Nesting Multiple Operators Summary Comments The ternary operator is a form of syntactic sugar for if-then-else statements. It is also known as the conditional operator, which is perhaps a more meaningful name because it evaluates conditions like if does. Provided that the operator is […] Continue reading \%Java’s Ternary Operator in Three Minutes\%...
Read More

How to Create a Beautiful Portfolio Website with Squarespace

Mar 22 12:30pm SitePoint
This article was sponsored by Squarespace. Thank you for supporting the partners who make SitePoint possible. The need for creative workers is exploding, and the freelance gig economy has never been healthier — one in three Americans do independent work and demand is rapidly growing around the world. Competition for creative jobs is fiercer than it has ever been and you need to get noticed. If you’re a creative, how do you stand apart from your peers, grab the attention of a potential client, and build a successful, independent career? One of the best ways is to create a powerful, beautiful, and compelling portfolio website. Whether you’re a freelancer, independent worker, or business owner, a strong portfolio is both your calling card and your showcase — it’s the proof of your past skills, experience, and achievements. It gives your clients a reason to hire you. The days of just throwing up a few links onto a website and calling it a portfolio are, thankfully, fading into the past. Now, if you want to stand out, you need a portfolio website that’s stylish, well-designed, beautiful, easy-to-read, and that works across all devices. In other words, you need a Squarespace portfolio website. Squarespace provides a 14 day trial, so you can follow along with this tutorial for free. After your trial, use code SITEPOINT at checkout to get 10\% off your first order. Here’s how to build one. Why It’s Important to Have a Beautiful Portfolio Website Potential clients have vast choice when it comes to finding and hiring freelancers and other creatives. That makes your portfolio website an incredibly important part of your success. Your Squarespace portfolio website will: Let you prove to clients what you can do — you can share your unique skills, approaches, and experience, together with the strongest examples of your work. Improve your marketing — a good Squarespace portfolio website can help you with search engine optimization (SEO) and other marketing techniques. It will get your profile in front of more potential clients. Help you meet your desired rate — excellent work demands higher fees. When you can show the value of what you do, clients are more likely to pay better rates. Put you ahead of your competitors — most clients will be comparing several freelancers. If your Squarespace website looks, feels, and performs better than your c...
Read More

Killer GIFs: How Can an Animated GIF Become a Weapon?

Mar 22 12:00pm SitePoint
Before we tackle that question, let's jump back in time 20 years. Late on a sunny afternoon in 1997, thousands of school children simultaneously collapsed into seizures across Japan – 685 were hospitalized, some for more than two weeks. It was soon determined that they had all fallen watching exactly the same scene in an episode of Pokemon. In ‘Electric Soldier Porygo’, Pikachu uses his lightning attack to destroy incoming missiles. The animators had used a fast red and blue strobe effect to create the lightning which had unwittingly induced photosensitive epileptic seizures in a substantial number of Japanese viewers. Of course, this was an accident and quite a shock for Pokemon’s makers. In fact, the anime studio took a 4-month hiatus and steps were taken to avoid all high contrast strobing animations in future. But it seems some animators set out with more sinister intentions. Animating with Intent to Injure Last friday, a Maryland man, John Rayne Rivello, was indicted to stand trial for attempted murder with an animated GIF. In December last year, Rivello had taken extreme exception to writings of a Newsweek journalist Kurt Eichenwald and decided to take action. Aware of Eichenwald’s photosensitive epilepsy, Rivello created a large, flickering animated GIF with the words ‘You deserve a seizure for your post’ across the bottom. A short time later, Eichenwald’s wife found the writer collapsed and called 911. The FBI charged Rivello with ‘criminal cyberstalking with the intent to kill or cause bodily harm’. Eichenwald’s lawyer argues that in this situation, tweeting this carefully crafted GIF directly to his client was no different to mailing an explosive device or a poison. Rivello faces up to 10 years jail. So, could designers accidently trigger seizures? The good news is, probably not – it’s relatively difficult to accidentally trigger a seizure in vulnerable users. According to, problematic content would need to continuously flicker between 5 and 30 times per second. While we might create a flickering UI element, it’s less likely that it will continually animate. The flicker source also needs to be large – few animated spinners and loading graphics are going to be big enough to cause problems. In practice, movies, TV, entertainment lighting, video games and even pinball machines typically present more problems...
Read More

Parallel Programming with Pthreads in PHP the Fundamentals

Mar 22 12:00pm SitePoint
PHP developers seem to rarely utilise parallelism. The appeal of the simplicity of synchronous, single-threaded programming certainly is high, but sometimes the usage of a little concurrency can bring some worthwhile performance improvements. In this article, we will be taking a look at how threading can be achieved in PHP with the pthreads extension. This will require a ZTS (Zend Thread Safety) version of PHP 7.x installed, along with the pthreads v3 installed. (At the time of writing, PHP 7.1 users will need to install from the master branch of the pthreads repo - see this article's section for details on building third-party extensions from source.) Just as a quick clarification: pthreads v2 targets PHP 5.x and is no longer supported; pthreads v3 targets PHP 7.x and is being actively developed. A big thank you to Joe Watkins (creator of the pthreads extension) for proofreading and helping to improve my article! When Not to Use Pthreads Before we move on, I would first like to clarify when you should not (as well as cannot) use the pthreads extension. In pthreads v2, the recommendation was that pthreads should not be used in a web server environment (i.e. in an FCGI process). As of pthreads v3, this recommendation has been enforced, so now you simply cannot use it in a web server environment. The two prominent reasons for this are: It is not safe to use multiple threads in such an environment (causing IO issues, amongst other problems). It does not scale well. For example, let's say you have a PHP script that creates a new thread to handle some work, and that script is executed upon each request. This means that for each request, your application will create one new thread (this is a 1:1 threading model - one thread to one request). If your application is serving 1,000 requests per second, then it is creating 1,000 threads per second! Having this many threads running on a single machine will quickly inundate it, and the problem will only be exacerbated as the request rate increases. That's why threading is not a good solution in such an environment. If you're looking for threading as a solution to IO-blocking tasks (such as performing HTTP requests), then let me point you in the direction of asynchronous programming, which can be achieved via frameworks such as Amp. SitePoint has released some excellent articles that cover this topic (such as writing as...
Read More

20 Beautiful Fractal Brushes for Photoshop

Mar 22 11:13am Line25
Photoshop brushes are indispensable tools that allow you to accurately apply different effects on your designs. Photoshop includes some basic brushes but you can always download and add more, depending on what you are looking for. This article consists of 20 beautiful fractal brushes for Photoshop. These high-quality Photoshop brushes can come in handy when […] The post 20 Beautiful Fractal Brushes for Photoshop appeared first on Line25.
Read More

iOS Speech APIs Tutorial

Mar 22 11:00am SitePoint
With the launch of iOS 10 developers can make use of a new exciting API: Speech Recognition. The concept of translating audio to text is known to both the users and the developers. iOS has offered this feature through Siri, and its keyboard dictation button in the previous versions. Yet, the new framework has more benefits and is easy to implement, as you are soon to discover. The code for this article can be downloaded on GitHub. Dictation was hard to work with, because of its limitations. It was possible to access it only through the default keyboard, or elements that support TextKit. If the keyboard language wasn’t supported, too bad for you! Recognition could only be performed on live audio, and all you had in return was plain text. That could be more than enough for certain apps, but you may want to do a little more. The API offers more functionalities to the developers. It allows them to use the framework anywhere in their app, without the need of the keyboard presence. Audio can be given as input from a pre-recorded file, or a live source. In both cases, you have control on when to start and stop the operation, which was not possible before. Additionally, the language can be set regardless of the system language. You can choose between over 50 available languages. Continue reading \%iOS Speech APIs Tutorial\%...
Read More


Mar 22 10:10am CSS-Tricks
curates well-designed patterns Indeed it does! Bonus: Lisbon Azulejos is full of lovely patterns created by Mathieu Grac based on tiles from the city of Lisbon. It has interesting UI to explore them. Direct Link to Article — Permalink… Novapattern is a post from CSS-Tricks...
Read More

Inclusive Components

Mar 22 10:03am CSS-Tricks
Heydon Pickering with a new project: A blog trying to be a pattern library. Each post explores the design of a robust, accessible interface component. Just one post so far on Toggle Buttons, but it's a doozy. Direct Link to Article — Permalink… Inclusive Components is a post from CSS-Tricks...
Read More

The Fast Way from Freelance Designer to Design Firm

Mar 22 8:45am Webdesigner Depot
Picture it: New York City, 2010; you’re working full-time as a digital designer for one of the world’s largest advertising agencies. The paycheck is steady, the hours are (somewhat) flexible, and you really never have to take work home with you. To sweeten the pot, there are plenty of perks–free swag from clients and swanky […]...
Read More

Converting PSD To WordPress And Joomla Templates

Mar 22 8:27am Best PSD to HTML
In today’s world, creating a feature rich and fully functional website is a huge task in itself. When we look at the most popular prevailing web design technologies you will come across two overly used platforms – Joomla and WordPress. Using these most versatile platforms you can easily create a CMS based website with expandable […]...
Read More

The Impact of WordPress on the PSD To HTML Business

Mar 22 8:21am Best PSD to HTML
Any creative designer knows how hard it is to design beautiful and different layouts day in and day out. To create something truly different every day and not just unique but a masterpiece is a difficult task. It comes with the responsibility of the creative artist to let their creative juices flowing constantly all the […]...
Read More

8 Strategies to Create The Perfect .COM Domain Name For Your Website

Mar 22 8:07am Designbeep
To get that perfect brand name you’ve always wanted for your business or blog, you’ll need to demonstrate a lot of creativity and flexibility. When selecting your domain name extension, .COM remains the best option. According to the result of a finding by Registrar Stats, the most popular name extension is .COM, with 75\% of domain names ending with that extension, followed by .NET and .ORG. If you’re wondering why it’s the most preferred TLD. Well, because it’s easier to remember, plus many users are more accustomed to a .com ending to a domain. With over three decades of top...
Read More

Why a Positive User Experience is Critical for Websites and Blogs

Mar 22 7:53am Designbeep
Google is by far the biggest search engine on the planet, and although upstarts like DuckDuckGo are snapping at its heels, the mighty Google still dominates. For this reason, it is important to place Google front and center when devising strategies to build an online audience. SEO is a mystery to many people. They assume that if they write a blog or build a website, people will visit. Sadly, this isn’t always the case. Anyone can build a website using, but success is not guaranteed. There are literally billions of websites out there, languishing in dark corners of the...
Read More

Improve Your Billing Forms UX In One Day

Mar 22 5:58am Smashing Magazine
    The checkout page is the last page a user visits before finally decide to complete a purchase on your website. It’s where window shoppers turn into paying customers. If you want to leave a good impression, you should provide optimal usability of the billing form and improve it wherever it is possible to. In less than one day, you can add some simple and useful features to your project to make your billing form user-friendly and easy to fill in. A demo with all the functions covered below is available. You can find its code in the GitHub repository.The post Improve Your Billing Form’s UX In One Day appeared first on Smashing Magazine.
Read More

Scrum: Working through a Story (Part 2)

Mar 22 2:00am SitePoint
The following is an extract from our book, Scrum: Novice to Ninja, written by M. David Green. Copies are sold in stores worldwide, or you can buy it in ebook form here. On the second day of the sprint, the product owner and the QA engineer both attend standup again. All the engineers are present, and nobody has any blockers for the stories they're working on. As the scrum master is just about to dismiss the team, one of the engineers speaks up. I have a quick question about how this puppy story is going to work with the help pages on the site, the engineer says. I was thinking about it last night, and it's going to be confusing for people in the beta if there's nothing on the help pages that explains what the beta is, and how to get back to the regular site. Continue reading \%Scrum: Working through a Story (Part 2)\%...
Read More

Increasing Productivity by Slowing Down, with Jason Lengstorf

Mar 21 9:40pm SitePoint
In this episode, Tim and David are joined by Jason Lengstorf, a developer and designer at IBM. They discuss increasing productivity by slowing down, work-life balance, avoiding burnout, knowing your limitations, dealing with public criticism, making tasks action-oriented, timely, ownable and measurable, recognizing that you’re not your code, coding first and asking questions later, and setting yourself on fire. Continue reading \%Increasing Productivity by Slowing Down, with Jason Lengstorf\%...
Read More

How Much Is My App Worth and How Do I Sell It?

Mar 21 4:30pm SitePoint
So you’ve built an awesome app that has been downloaded from the app store bazillions of times. Congratulations! But now you want to move on — you don’t have time to maintain it, some other projects are calling out to you, or something else has happened that means you can no longer give it the love it deserves. What do you do? Why don’t you sell it? Why not get your reward for all the effort you put in to build the app and grow the customer base to where it is now, and let someone else give it what it needs to flourish in future? Here at Flippa we have facilitated thousands of app sales over the years, and we have thousands of active buyers who may be looking for an app exactly like yours! The goal of this post is to share the benefit of that experience with you, to help you better understand what your app might be worth and how you could sell it. How Much Is My App Worth? The value of your app is the largest sum any one individual is willing to pay for it. If you’re thinking that’s not very helpful, we’re not finished yet! Please read on. Valuation Type #1: Cash is King! Have you heard that saying before? It’s certainly true for app valuation — whilst not the only consideration, your net cash flow is probably the most important one. The only way to work out your net cash flow is to sum up all the cash generated by your app, and subtract all related expenses. Cash generated may include download fees. Costs may include costs to update & maintain the app, licensing costs, app store fees, and so on. Be sure to include all your costs! For example, if you as the owner/developer spend your own time maintaining the app, that is a cost a new owner will need to incur (either in their own time or in paying someone else to do it), so it should be included. Once you know your net cash flow, the next step is to convert that into a value for your app. Welcome to the world of valuation using multiples. Pay close attention — this will be your friend (and sometimes, your foe) for any business you ever sell or buy. Let’s say your app generates $100,000 in net cash flow per year. The multiple can vary widely depending on a range of factors, however for the vast majority of apps the multiple will be around 2x - 3x. So your app would be worth somewhere between $200,000 and $300,000. Not bad, right? The factors that impact your multiple include: G...
Read More

Retrofit Your Website as a Progressive Web App

Mar 21 4:00pm SitePoint
There's been a lot of buzz around Progressive Web Apps (PWAs) lately, with many people questioning whether they represent the future of the (mobile) web. I'm not going to get into the whole native app vs PWA debate, but one thing is for sure — they go a long way to enhancing mobile and improving its user experience. With mobile web access destined to surpass that of all other devices combined by 2018, can you afford to ignore this trend? The good news is that making a PWA is not hard. In fact, it's quite possible to take an existing website and convert it into a PWA. And that's exactly what I'll be doing in this tutorial — by the time you're finished, you'll have a website that behaves like a native web app. It will work offline and have it's own home screen icon. What Are Progressive Web Apps? Progressive Web Apps (referred to as PWAs ) are an exciting innovation in web technology. PWAs comprise a mixture of technologies to make a web app function like a native mobile app. The benefits for developers and users overcome the constraints imposed by web-only and native-only solutions: You only need one app developed with open, standard W3C web technologies. There's no need to develop separate native codebases. Users can discover and try your app before installation. There's no need to use an AppStore, abide with arcane rules or pay fees. Application updates occur automatically without user interaction. Users are prompted to install which adds an icon to their home screen. When launched, the PWA displays an attractive splash screen. The browser chrome options can be modified if necessary to provide a full-screen experience. Essential files are cached locally so PWAs respond faster than standard web apps (they can even be faster than native apps). Installation is lightweight - perhaps a few hundred KB of cached data. All data exchanges must occur over a secure HTTPS connection. PWAs function offline and can synchronize data when the connection returns. It's early days, but case studies are positive. Flipkart, India's largest e-commerce site, experienced a 70\% increase in sales conversions and trebled on-site time when they abandoned their native app for a PWA. Alibaba, the world's largest business trading platform, experienced a similar conversion rate increase of 76\%. Solid PWA technology support is available in Firefox, Chrome and the other Blink-based...
Read More

How You Can Use HTML5 Custom Data Attributes and Why

Mar 21 2:00pm SitePoint
In this article, I am going to show you how you can use HTML5 custom data attributes. I'm also going to present you with some use cases that you can find helpful in your work as a developer. Why Custom Data Attributes? Very often we need to store information associated with different DOM elements. This information might not be essential for readers, but having easy access to it would make life a lot easier for us developers. For instance, let's say you have a list of different restaurants on a webpage. Before HTML5, if you wanted to store information about the type of food offered by restaurants or their distance from the visitor, you would have used the HTML class attribute. What if you also needed to store the restaurant id to see which particular restaurant the user would want to visit? Here are a few problems with the HTML class-based approach. Classes are not meant to store data like this. Their main purpose is to allow the developer to assign style information to a set of elements. Each additional piece of information requires us to add a new class to our element. This makes it harder to parse the data in JavaScript to actually get what we need. Let's say a given class name begins with numbers. If you decide to later style the elements based on that data in the class name, you will have to either escape the number or use attribute selectors in your stylesheet. To get rid of these issues, HTML5 has introduced custom data attributes. All attributes on an element whose name starts with data- are data attributes. You can also use these data attributes to style your elements. Next, let's dive into the basics of data attributes and learn how you can access their values in CSS and JavaScript. The HTML Syntax As I mentioned earlier, the name of a data attribute will always start with data-. Here is an example: [code language= html ] <li data-type= veg data-distance= 2miles data-identifier= 10318 >Salad King</li> [/code] You can now use these data attributes to search and sort restaurants for your visitors. For example, you can now show them all the vegetarian restaurants within a certain distance. The name of a valid custom data attribute always begins with the prefix data-. Also, the name must only contain letters, numbers, hyphen (-), dot (.), colon (:) or underscore (\_). It cannot contain capital letters. There are two things that...
Read More

Server-Side Swift: Comparing Vapor and Perfect

Mar 21 1:00pm SitePoint
One of the reasons Swift has become a major player in web development is that there is a variety of great quality frameworks to build web apps. Not all frameworks are created equal, and not all frameworks \_feel\_ equal. My goal here to compare Perfect and Vapor in terms of their popularity, ease-of-use, features, and community; in order to help you decide which framework is right for you. Vapor has the private backing of a consultancy and Perfect raised $1.5 million in seed funding last year. With the social foothold that Perfect has both in seniority and numbers, one could say that it's the most popular. Then again, Vapor released version 1 in September of 2016 (four months old at the time of this publication) and has risen in popularity to nearly match Perfect in stars and public activity. Popularity is hard to quantify, so here are the facts as of March 2017, and I'll let you decide: Continue reading \%Server-Side Swift: Comparing Vapor and Perfect\%...
Read More

How to Handoff Designs with Sketch and InVision

Mar 21 12:00pm SitePoint
Design handoff is about transitioning a web or app design from the hands of the designer to the hands of the developer who will then code it. That hasn’t always been easy. Developers don’t typically use design software like Photoshop or Sketch, but they need to know everything about the design nonetheless. What colors are being used, specifically? Which fonts? How much space is there between this element and that element? Developers need to know. Enter Inspect, by InVision. Why InVision is Now a Designers Dream InVision App started out as a browser-based prototyping tool with a repertoire of highly-useful collaboration tools. It was a game-changer for designers. Last year the InVision team released Craft, an add-on to Photoshop and Sketch, which at first enabled designers to: Quickly add real data to their designs Duplicate objects horizontally and vertically Create shared libraries of assets and styles And, some time later, they added the ability to: Prototype user flows directly in Sketch Sync your exportable assets into InVision And now, you can sync your designs into InVision and developers can inspect them (and generate real code from them). Prototyping, collaboration, design handoff — the circle is now complete, all under one subscription. A designers dream, right? If you’re not that familiar with InVision and Craft yet, our very own Design & UX editor, Alex Walker, introduced us to Craft last year and discussed the original features. If you’re already familiar with what Craft already offers, read on as we explore an extended workflow where we handoff designs to developers using Sketch, Craft and InVision Inspect. Installing Craft Before we begin, download Craft for Sketch (Photoshop users should be able to follow along as well, but this tutorial will use Sketch in the screenshots) and also download the Android N GUI Kit .sketch file by DeveloperTown. After you’ve installed Craft for Sketch, you’ll be able to toggle the Craft toolbar using command + P. Organising Your Layers But before we begin hastily handing our design off, we first have to organize it. Remember: developers may not have the design tools from Sketch at-hand, but they still see the design how you see the design — that means we have to rename ambiguously named layers like “Rectangle 41” to something like “Button Background”, and delete redundant/unused...
Read More

Personal Website Builders to Use in 2017

Mar 21 11:55am Line25
If you are right about to establish your online presence to reach your business or personal goals, having a website is not a whim, but a necessity. This is one of the most effective and eventually rewarding methods to get the most out of your project, irrespective of its specialization. To build a quality website, […] The post Personal Website Builders to Use in 2017 appeared first on Line25.
Read More

Beyond The Browser: From Web Apps To Desktop Apps

Mar 21 8:54am Smashing Magazine
    I started out as a web developer, and that's now one part of what I do as a full-stack developer, but never had I imagined I'd create things for the desktop. I love the web. I love how altruistic our community is, how it embraces open-source, testing and pushing the envelope. I love discovering beautiful websites and powerful apps. When I was first tasked with creating a desktop app, I was apprehensive and intimidated. It seemed like it would be difficult, or at least… different.The post Beyond The Browser: From Web Apps To Desktop Apps appeared first on Smashing Magazine.
Read More

Text Effects with CSS (and a little contenteditable trick)

Mar 21 8:46am CSS-Tricks
Mandy Michael has been creating some incredible text effects with just the power of CSS. She uses every trick in the book: gradients, transforms, pseudo elements, shadows, and clipping paths to name a few. They are all real web text too. Custom fonts typically, but no images, canvas, or SVG or anything like that. Take a look at this beautiful effect: See the Pen CSS only 3D paper fold text effect by Mandy Michael (@mandymichael) on CodePen.… Text Effects with CSS (and a little contenteditable trick) is a post from CSS-Tricks...
Read More

Build a successful creative portfolio with Allyou

Mar 21 8:45am Webdesigner Depot
Every creative needs a good portfolio. Whether you’re focussed on typography or photography, layout or user experience, your portfolio is what defines you professionally. As with most things, the quality of your portfolio is determined by the appropriateness of the tools you use. All too often we see great work, presented poorly, because the designer […]...
Read More

Zeroing the Desk

Mar 21 8:42am CSS-Tricks
Brendan Dawes: After a recording session on one of those large mixing desks, after you've twiddled countless knobs and push around many faders you do something called zeroing the desk. This is were you turn every control and push every fader back to zero, so that when the next engineer comes in he or she isn't going to jump out of their seat when a large sub-bass whacks them straight in the face and possibly blows something up. It's a … Zeroing the Desk is a post from CSS-Tricks...
Read More

The Next Smashing Magazine

Mar 21 8:39am CSS-Tricks
Congrats to the big team over there assembled to take on this major redesign process. Unlike our redesigns around here that are usually more like realignments with minor dev work and UX sprinkles each iteration, this was a ground-up rebuild for them. They migrated a bunch of different platforms all into one, a static-site based system with all front end APIs. It's gotta feel good to pull all that stuff into one system. I remember when I used to have … The Next Smashing Magazine is a post from CSS-Tricks...
Read More