Search
Simulating Mouse Movement
15.4.2019
If you've ever had to display an interactive animation during a live talk or a class, then you may know that it's not always easy to interact with your slides and while talking.
This happened to me when I needed to show this particles demo to my students. I didn't want to have to stay next to...
Using the Web Speech API for Multilingual Translations
12.4.2019
Since the early days of science fiction, we have fantasized about machines that talk to us. Today it is commonplace. Even so, the technology for making websites talk is still pretty new.
We can make our pages on the web talk using the SpeechSynthesis part of the Web Speech API. This is still...
Edge Goes Chromium: What Does it Mean for Front-End Developers?
11.4.2019
In December 2018, Microsoft announced that Edge would adopt Chromium, the open source project that powers Google Chrome. Many within the industry reacted with sadness at the loss of browser diversity. Personally, I was jubilant. An official release date has yet to be announced, but it will be...
Under-Engineered Toggles
10.4.2019
Toggles. Switches. Whatever you want to call them, they've been with us for some time and have been a dominant a staple for many form interfaces. They're even baked right into many CSS frameworks, including Bootstrap and Foundation.
It's easy to think of them in binary terms: on and off. Off...
Testing for Visual Regressions with Percy
8.4.2019
It’s a Herculean task to test
Community Coding For The Web
8.4.2019
Open source barriers
Right now, it's too hard to contribute to open source.
This leads to a few things that are bad:
People who have good ideas don't co
Revisiting the Rendering Tier
5.4.2019
Have you ever created a well-intentioned, thoughtful design system only to watch it grow into an ever-increasing and scary codebase? I've been working in sort of the opposite direction, inheriting the scary codebase and trying to create a thoughtful system from it.
Here's Alex Sanders on the topic...
Decaying Sites
4.4.2019
Websites have a tendency to decay all by themselves. Link rot, they call it. Unpaid domain name registrations. Companies that have gone out of business. Site owners that have lost interest. What's sadder than a 404? Landing on a holding page of a URL that used to exist, but now has fallen into...
Form Validation in Under an Hour with Vuelidate
2.4.2019
Form validation has a reputation for being tricky to implement. In this tutorial, we’ll break things down to alleviate some of that pain. Creating nice abstractions for forms is something that Vue.js excels at and Vuelidate is personally my favorite option for validations because it doesn't require...
CSS Houdini Could Change the Way We Write and Manage CSS
28.3.2019
CSS Houdini may be the most exciting development in CSS. Houdini is comprised of a number of separate APIs, each shipping to browsers separately, and some that have already shipped (here's the browser support). The Paint API is one of them. I’m very excited about it and recently started to think...
Jetpack Gutenberg Blocks
28.3.2019
I remember when Gutenberg was released into core, because I was at WordCamp US that day. A number of months have gone by now, so I imagine more and more of us on WordPress sites have dipped our toes into it. I just wrote about our first foray here on CSS-Tricks and using Gutenberg to power...
Breaking CSS Custom Properties out of :root Might Be a Good Idea
27.3.2019
CSS Custom Properties have been a hot topic for a while now, with tons of great articles about them, from great primers on how they work to creative tutorials to do some real magic with them. If you’ve read more than one or two articles on the topic, then I’m sure you’ve noticed that they start...
TheWestTour: Ice, Products, and 2G
26.3.2019
“Do people speak English in Africa?”, “Do high school students have access to smartphones and computers?” These series of challenging questions made me know I was amongst the right crowd and the lo
The Biggest Barrier to Building in DeFi
25.3.2019
DeFi services have the potential to make managing finances easier than ever before: We’ve entered the era of programmable financial instruments. DeFi promises us complete control over our funds, stronger security infrastructure, seamless payment functionality, and investment options previously only...
Set Commit Author with git or hg
24.3.2019
Knowing who authored a code patch is a sacred and important practice in the world of software engineering. Knowing the author gives the reviewer an idea of trust level, know who to ask questions about the patch, and gives credit to the genius of an important fix. There have been times when...
How blockchain will disrupt the communication industry
22.3.2019
From the CMC editorial desk: One of the things we’ve always wanted to explore is what mass adoption of blockchain technology looks like. Here we have some examples of how it will change the face of the communication industry in […]
The post How blockchain will disrupt the communication...
Adding Search to Your Site with JavaScript
20.3.2019
Static website generators like Gatsby and Jekyll are popular because they allow the creation of complex, templated pages that can be hosted anywhere. But the awesome simplicity of website generators is also limiting. Search is particularly hard. How do you allow users to search when you have...
Using Local with Flywheel
19.3.2019
Have you seen Local by Flywheel? It's a native app for helping set up local WordPress developer environments. I absolutely love it and use it to do all my local WordPress development work. It brings a lovingly designed GUI to highly technical tasks in a way that I think works very well. Plus...
I Don’t Hate Arrow Functions
19.3.2019
TL;DR Arrow functions are fine for certain usages, but they have so many variations that they need to be carefully controlled to not break down the readability of the code. While arrow functions clearly have a ubiquitous community consensus (though not unanimous support!), it turns...
Creating a Python Class Generator for VS Code
19.3.2019
My motto...when you have a problem, do something about. I hated stubbing out Python classes so I created an extension in Visual Studio Code to do it for me. In this article, let's walk through how