
Easing Animations in Canvas
The <canvas> element in HTML and Canvas API in JavaScript combine to form one of the main raster graphics and animation possibilities on the web. A
2,167 articles published in 2020.

The <canvas> element in HTML and Canvas API in JavaScript combine to form one of the main raster graphics and animation possibilities on the web. A

Every month, we present an overview of things the Smashing team has been working on — all in one place. We organized Smashing Meets on three days — events that were open to everyone in the web community. With sessions on performance, CSS, GraphQL, and creative courage, we made sure to leave plenty of time for Q&A, networking, competitions and prizes. The past few weeks have been quite challenging:

The ancients can teach us a thing or two about design — even web design. The Roman architect Vitruvius had buildings in mind when laying out his golden triad, but its principles are just as applicable to the web as they are to brick and mortar. Today’s article is about architecture, and how some of its core tenets apply to the worldwide web. Architectural terms are not unusual in web development,

Last year, Cloudflare announced the planned expansion of our partner program to help managed and professional service partners efficiently engage with Cloudflare and join us in our mission to help build a better Internet.

My program received a SIGSEGV signal and crashed with "Segmentation Fault" message. Where does the "V" come from? Did I read it wrong? Was there a "Segmentation *V*ault?"? Or did Linux authors make a mistake? Shouldn't the signal be named SIGSEGF?

“If we had this data what would it mean?” - read more about this PostgreSQL technique, what it is good for & how it works.

Three tips on involving engineers early, from a product designer at Coda.

Setting up a new repository with all the right linters for the different types of code can be time consuming and tedious. So many tools and configurations to choose from…

Sometimes simulating complex systems is the best way to understand them. Read more “HASH: a free, online platform for modeling the world”

Shopify’s Data team uses these foundational approaches to data warehousing and analysis empowering us to deliver the best results for our ecosystem.

When using cross-platform frameworks, people might forget the nuances of each of the platforms they want their code to run on. This article aims to address that. Today, Carmine Zaccagnino is going to see some of those differences and how to overcome them. More specifically, he’re going to talk about storage and UI differences, which are the ones that most often cause confusion to developers when w

The working world has drastically changed in the past few months. Navigating this new reality as an intern can bring some unique challenges to light.

Take control of your Dropbox team by improving your user lifecycle management with the Dropbox API

Background Machine Learning Operations (or MLOps) enables Data Scientists to work in a more collaborative fashion, by providing testing, lineage, versioning, and historical information in an automated way. Because the…

UI or User Interface test is a form of acceptance testing done to verify the user flows of your front-end application. The emphasis of these kinds of software tests is on the end-user that is the actual person who will be interacting with your web application on a variety of devices ranging from desktops, laptops to mobile devices. In this final part of Mirage JS Deep Dive series, Kelvin Omereshon

Cache Analytics gives you deeper exploration capabilities into Cloudflare’s content delivery services, making it easier than ever to improve the performance and economics of serving your website to the world.

As front-end developers, our job is working with browsers. Knowing how many we have and the health of them is always of great interest. As far as numbers go,

With a very recent Safari update, Web Animations API (WAAPI) is now supported without a flag in all modern browsers (except IE). Here’s a handy Pen

Connection of DB2 with PostgreSQL done with the extension db2_fwd | Migration of db2's data to PostgreSQL | Read data from DB2

A look inside how Segment’s product design team co-designs with researchers, product managers, and engineers.

Class of 2020, you did it! With schools turning to drive through diploma stops and recreating their campus in Minecraft, GitHub Education decided that celebrating this milestone for the next…

In this article, we’re going to learn how to use Immer to write reducers. When working with React, we maintain a lot of state. To make updates to our state, we need to write a lot of reducers. Manually writing reducers results in bloated code where we have to touch almost every part of our state. This is tedious and error-prone. In this article, Chidi Orjil going to see how Immer brings more simpl

In this episode of the Smashing Podcast, we’re talking about learning React. What’s React like to work with, and how can experienced developers get started? Drew McLellan chats to Mina Markham to find out.

In this blog post we’ll explore three tricks that can be used for data science that helped us solve real problems for our customer support group and our customers. Two for natural language processing in a customer support context and one for identifying attack Internet attack traffic.

Developer Experience¹ is a term² with a self-declaring meaning — the experience of developers — but it eludes definition in the sense that people invoke it at

Flywheel is my WordPress hosting partner here. I use Local every day for my WordPress local development environment and use their hosting for all my WordPress

This is a guest post by Eunice Do, Data Engineer at TripleLift, a technology company leading the next generation of programmatic advertising. What is the name of your system and where can we find out more about it? The system is the data pipeline at TripleLift. TripleLift is an adtech company, and like most companies in this industry, we deal with high volumes of data on a daily basis. Over the la

How to prioritize tests relative to everything else.

With the right apps, working from home is a blessing for those with a disability. Working from home allows you to attend to your medical needs in ways that might be disruptive in an office, like running a nebulizer or using an IV. Or you may avoid the hassle of navigating a building that’s not truly accessible. In this article, Claudio Luis Vera explains what to keep in mind when choosing between

Questions to help people decide what to learn

Health Check Analytics is now live and available to all Pro, Business and Enterprise customers! We are very excited to help decrease your time to resolution and ensure your application reliability is maximised.

Here’s the plan! We’re going to build a styled select element. Not just the outside, but the inside too. Total styling control. Plus we’re going to make it

There are some neat interactive demos in here from Thiru Manikandan. There are a couple of very tricky things with z-index that never fail to confuse. In

Adding Internationalization to your Vue.js application has a lot of use cases and in this tutorial, we’re going to learn how to do this with the Vue I18n plugin and how to set it up in our application.

Six years ago, Cloudflare started Project Galileo to provide free services to vulnerable nonprofits, journalism and independent media voices online who might otherwise be in danger of being silenced by cyberattacks.

Here's a two-second review. If an element has an ID, you can link to it with natural browser behavior. It's great if headings have them, because it's often

A CSS methodology from Andy Bell:

I needed a numbered list of blog posts to be listed with the last/high first and going down from there. Like this:

Who's Hiring? * InterviewCamp.io has hours of system design content. They also do live system design discussions every week. They break down interview prep into fundamental building blocks. Try out their platform. * Triplebyte lets exceptional software engineers skip screening steps at hundreds of top tech companies like Apple, Dropbox, Mixpanel, and Instacart. Make your job search O(1), not O(n).

Developers write tests to ensure correctness and allow future changes to be made safely. However, as the number of features grows, so does the number of tests. Tests are a double-edged sword. On one hand, well-written ones catch bugs and maintain a program’s stability, but as the code base grows, a high number of tests impedes scalability because they take a long time to run and increase the likel

At Slack, Quality is a shared responsibility. The Quality Engineering team is focused on creating a culture of testing, increasing test coverage, and helping the company ship high-quality features faster. We encourage all our developers to write and own end-to-end (E2E) tests. In turn, Quality Engineering (QE) is responsible for the frameworks used and provides…

In this article, Adeneye David Abiodun explains how to build a facial recognition web app with React by using the Face Recognition API, as well as the Face Detection model and Predict API. The app built in this article is similar to the face detection box on a pop-up camera in a mobile phone — it’s able to detect a human face in any image fetched from the Internet. Please note that you will need t

We own and operate physical infrastructure for our backend services. We need an effective way to route arbitrary TCP and UDP traffic between services and also from outside these data centers.

You can create stripes in CSS. That’s all I thought about in terms of CSS background patterns for a long time. There’s nothing wrong with stripes; stripes are

Šime Vidas with the lowdown on what these pseudo-selectors are and why they will be useful:

Table functions & performance: Solve performance issues related to stored procedures and or a composite data type in PostgreSQL

So far, we have seen how we can create records with Mirage, intercept API requests via route handlers and, last but not least, how the shape of the data returned to us from Mirage is affected. In this third part of Mirage JS Deep Dive series, Kelvin Omereshone will be focusing on using `response`, `timing` and `passthrough` in Mirage for a better handle on simulating an actual backend server. Howe

Stress isn’t just something that makes people feel uncomfortable. It stimulates the urge to “fight” or “flight”. The very last thing you want is to design a website that stresses visitors out, leading them to dread the experience or abandon it entirely. There are many things that might invoke this response from your visitors, including the design. In the following guide, we’re going to look at som

Several months ago, I realized that I had a lot of sensitive files on my computer (my diary, if you must know) that I was afraid of losing, but I didn’t feel comfortable putting them in something like Google Drive or Dropbox. Introducing UtahFS.

I discovered CSS about a decade ago while trying to modify the look of a blog I had created. Pretty soon, I was able to code cool things with more

To make the move from “site” to app, we’ll need to dive into the world of “app-generated” content. In this article, Bryan Robinson will get you started in this world with the power of serverless data. He’ll start with a simple demo by ingesting and posting data to FaunaDB and then extend that functionality in a full-fledged application using Auth0, FaunaDB’s Token system and User-Defined Functions

Right questions don’t simply roll off the tongue, but it’s a handy skill everyone can train. The following pieces of advice will help you to formulate questions that foster reliable answers from your users and clients. Slava Shestopalov will talk about 12 kinds of questions explained with examples. The first part includes six frequent mistakes and how to fix them. The second part presents six ways

There's some interesting CSS trickery in Jason Pamental's latest Web Fonts & Typography News. Jason wanted to bring swipeable columns to his digital book

We can use JavaScript to get the value of a CSS custom property. Robin wrote up a detailed explanation about this in Get a CSS Custom Property Value with

Here’s a fantastic case study where Ivan Akulov looks at the rather popular writing app Notion and how the team might improve the performance in a variety of

In this tutorial, Shedrack Akintayo is going to learn about higher-order components, the syntax of higher-order components, as well as use cases for them. In the process, you will build a higher-order component from an existing React component. By the end of this tutorial, you will understand the basics of higher-order components and how to build them.

I'm excited to announce the upcoming launch of Cloudflare TV. A 24x7 live television broadcast, streamed globally via the Cloudflare network. You can tune in to the pre-broadcast station and check out the upcoming schedule at: cloudflare.tv

A walkthrough on how we are improving the reliability of our management services running in each data center by using Nomad for dynamic task scheduling.

Constructing an equivalent experience may mean changing the way you think about development and design, and potentially reevaluating your existing work. In this article, Eric Bailey will discuss learning how to embrace an equivalent, inclusive mindset. He will also provide practical, robust ways to improve your websites and web apps by providing solutions to common, everyday barriers cited by the

We stand firmly behind the Black Lives Matter movement. We have always stood strongly behind introducing a wide range of voices to Smashing publications and conferences. Positive change is difficult, but it’s possible. It takes work, time, and dedication. We are fully committed as a team to see it through.