Search
Planning for Responsive Images
13.3.2019
The first time I made an image responsive, it was as simple as coding these four lines:
img {
max-width: 100%;
height auto; /* default */
}
Though that worked for me as a developer, it wasn’t the best for the audience. What happens if the the image in the src attribute is heavy? On high-end...
Accessibility is not a “React Problem”
11.3.2019
Leslie Cohn-Wein's main point:
While [lots of divs, inline styles, focus management problems] are valid concerns, it should be noted that nothing in React prevents us from building accessible web apps.
True. I'm quite capable (and sadly, guilty) of building inaccessible interfaces with React...
Diana Smith’s Top 5 CSS Properties She Uses to Produce CSS Art
20.2.2019
Have you seen Diana Smith's CSS drawings? Stunning. These far transcend the CSS drawings that sort of crudely replicate a flat SVG scene, like I might attempt. We were lucky enough for her to post some of her CSS drawing techniques here last year.
Well, Diana has also listed the top five...
Don’t Get Clever with Login Forms
19.2.2019
Brad points out some UX problems with a variety of apps that are doing things a little outside of the norm when it comes to their login forms. There is already a bunch of things to get right with forms to begin with (e.g. use the right input types, label your inputs, don't have whack password...
STAR Apps: A New Generation of Front-End Tooling for Development Workflows
18.1.2019
Product teams from AirBnb and New York Times to Shopify and Artsy (among many others) are converging on a new set of best practices and technologies for building the web apps that their businesses depend on. This trend reflects core principles and solve underlying problems that we may share, so...
How Well Do You Know CSS Layout?
15.1.2019
The difference between a CSS good experience and a long frustrating one is oftentimes a matter of a few small details. CSS is indeed nuanced. One of the most common areas where I see struggles is layout. Personally, I like to study patterns. I notice that I tend to use a small group of patterns...
Fighting FOIT and FOUT Together
19.12.2018
Lots from Divya with the setup:
There are 2 kinds of problems that can arise when using webfonts; Flash of invisible text (FOIT) and Flash of Unstyled Text (FOUT) ... If we were to compare them, FOUT is of course the lesser of the two evils
If you wanna fight FOIT, the easiest tool is...
Rendering Lists Using React Virtualized
13.12.2018
Working with data in React is relatively easy because React is designed to handle data as state. The hassle begins when the amount of data you need to consume becomes massive. For example, say you have to handle a dataset which is between 500-1,000 records. This can result in massive loads and lead...
Edge’s Announcements
6.12.2018
The public-consumption blog post:
Ultimately, we want to make the web experience better for many different audiences. People using Microsoft Edge (and potentially other browsers) will experience improved compatibility with all web sites, while getting the best-possible battery life and hardware...
Three Questions to Ask of Every Bug You Encounter
19.11.2018
Bugs. Errors. Exceptions. Problems. Issues. Whatever you call them in the moment, bugs are deeply associated with failure. Specifically, our own failure to write perfect code. These “failures” can
5 Ways to Convert React Class Components to Functional Components w/ React Hooks
19.11.2018
In the latest alpha release of React, a new concept was introduced, it is called Hooks. Hooks were introduced to React to solve many problems as explained in the
CSS: A New Kind of JavaScript
19.7.2018
In this wacky and satirical post, Heydon Pickering describes a wild new technology called Cascading Style Sheets that solves a lot of the problems you might bump into when styling things with JavaScript:
A good sign that a technology is not fit for purpose is how much we have to rely on workarounds...
Design Systems at GitHub
12.7.2018
Here’s a nifty post by Diana Mounter all about the design systems team at GitHub that details how the team was formed, the problems they've faced and how they've adapted along the way:
When I started working at GitHub in late 2015, I noticed that there were many undocumented patterns, I had...
Code Challenge #12: JavaScript String Manipulation
10.7.2018
Last time on the Code Challenge #11 we solved problems in JavaScript using functions to manipulate objec
One-Offs
2.7.2018
There is this sentiment that you don't design the homepage of a site first. For most sites, it's an anomaly. It's unlike any other page and not something to base the patterns you use for the rest of the site or help inform other pages.
You might call it a one-off.1
One-offs are OK! A world without...
JavaScript Functional Programming (Solution to Code Challenge #11)
22.6.2018
Tried the code challenge #11? In that, we delved into solving basic array problems using array methods s
Using Custom Fonts With SVG in an Image Tag
21.6.2018
When we produce a PNG image, we use an <img> tag or a CSS background, and that's about it. It is dead simple and guaranteed to work.
PNG is way simpler to use in HTML than SVG
Unfortunately, the same cannot be said for SVG, despite its many advantages. Although you're spoiled for choices...
Collective #420
31.5.2018
Sculpting Software Animation * Solving Life's Problems with CSS * Critters * Goat * code.xyz * Proppy * Deno * Prerender-loader
Collective #420 was written by Pedro Botelho and published on Codrops
Solving Life’s Problems with CSS
28.5.2018
Or: When all you have is a CSS hammer, the world looks like a CSS nail.
Whenever I hear a perfectly nice comment like, "Yeah, representing the tech field!" in response to my pure-CSS art, I get a sharp feeling of panic.
Like many people who work on UIs for a living, I have difficulty applying...
How Error Monitoring Helps You Find Bugs BEFORE Users Do
18.5.2018
One of the biggest distractions to any software team building web and mobile applications is the act of fixing up problems in previously written code.
I'm willing to bet that your personal p