Design blueprints could mean the difference between a correctly implemented design that improves the user experience and satisfies customers and a confusing and inconsistent design that corrupts the user experience and displeases customers. For those of you who create digital products, design specs could mean the difference between efficient collaboration and a wasteful back-and-forth process with costly implementation mistakes and delivery delays. Specs can help you to build the right product more quickly and more efficiently. Effective collaboration requires effective communication. Investing in the development of workflows and tooling around to make this communication easier will pay off big with the effectiveness with which products are built.
Read more…
One of the reasons for AngularJS’ success is its outstanding ability to be tested. The main factor that made Sébastien switch from “Well, I just launch the app and see if everything works” to “I’ve got unit tests!” was that, for the first time, he could focus on what matters and on what he enjoys in programming: creating smart algorithms and nice UIs. After having fixed it, re-updated the application and apologized to customer service, he decided to entirely rewrite this component in test-driven development style. The test file ended up being twice as long as the component file. It has been improved a lot since, especially its poor performance, but it never failed again in production. Rock-solid code.
Read more…
Eight years is a long time on the web, yet for us it really doesn’t feel like a long journey at all. We’d love to share a few things that we’ve learned over the last years about the performance challenges of this very website and about the work we’ve done recently. If you want to craft a fast responsive website, you might find a few interesting nuggets worth considering. In this article you will find a little story about the things that happened on this little website over the last year. Thanks for keeping us reading throughout all these years. It means a lot. You are quite smashing indeed. You should know that.
Read more…
JavaScript-based animation is often as fast as CSS-based animation — sometimes even faster. CSS animation only appears to have a leg up because it’s typically compared to jQuery’s $.animate(), which is, in fact, very slow. However, JavaScript animation libraries that bypass jQuery deliver incredible performance by avoiding DOM manipulation as much as possible. In this article, Julian Shapiro will smash some myths, dive into some real-world animation examples and improve your design skills in the process. If you love designing practical UI animations for your projects, this article is for you!
Read more…
Most plugins try to do too many things, which makes it difficult for designers and developers to integrate them in their projects. Apple introduced the iPhone 5S, which was accompanied by a presentation website on which visitors were guided down sections of a page and whose messaging was reduced to one key function per section. Pete Rojwongsuriya found this to be a great way to present a product, minimizing the risk of visitors accidentally scrolling past key information, and he set out to find a plugin that does just this. To his surprise, he didn’t find a simple solution to integrate in his current projects. That is when One Page Scroll was born.
Read more…
In this article, Mattan Griffel will share best practices that he has discovered from using spaced repetition to learn and master a programming language. Some great articles on this topic are already out there, including “Memorizing a Programming Language Using Spaced Repetition Software” by Derek Sivers and “Janki Method” by Jack Kinsella. But because you’re busy, he’ll quickly summarize some of the best practices that I’ve learned along the way.
Read more…
If the 404 doesn’t help your visitors, then what’s the point of having carefully crafted memes, funny GIFs, or odd interactive games? A visitor could find themselves on a 404 page for one of many reasons: a mistyped address, a bad link from somewhere else, a deleted page or content that has moved elsewhere. While you can prevent errors from moved pages with redirects, you can’t control people’s mistakes. In this article, Donovan Hutchinson will show you how to have a better 404 page.
Read more…
Email is one of the most important tools for reaching your customer base. But with the ever-growing number of emails to send, getting them all out the door can seem a little overwhelming. By putting in place a solid email design workflow, you’ll be able to regularly ship engaging and mobile-friendly emails with ease. Incorporating a modular approach and a custom framework into your email workflow can lead to increased productivity and make it easier for you to iterate on your designs. You will have to make an initial investment of time to get everything up and running, but the result will improve your designs, the customer experience and your engagement rates, leading to happier customers and increased revenue.
Read more…
The process of telling a computer how to perform a task, such as generating a web page, is what web developers commonly call “programming,” but it’s only a subset of programming: imperative programming. There’s another type: declarative programming. With it, you tell a computer what, not how. This subtle shift in approach to programming has broad effects on how you build software, especially how you build the future web. So, let’s take a moment to investigate declarative programming and the web you can build with it.
Read more…
To make the right choices for your project, you need to start with a general approach, or methodology. You probably already know of BEM, one of those methodologies developed by a big company, but Maxim Shirshin decided to try BEM on a smaller scale. He wanted the same benefits that Yandex gets from BEM: code sharing, a live style guide, scalability, faster development. He is now convinced that BEM applies to small projects as well. Maxim has written down his findings, in case you find them useful!
Read more…