Search
Using Cypress to Write Tests for a React Application
12.6.2019
End-to-end tests are written to assert the flow of an application from start to finish. Instead of handling the tests yourself — you know, manually clicking all over the application — you can write a test that runs as you build the application. That’s what we call continuous integration and it’s...
What if we got aspect-ratio sized images by doing almost nothing?
7.6.2019
Say you have an image you're using in an <img> that is 800x600 pixels. Will it actually display as 800px wide on your site? It's very likely that it will not. We tend to put images into flexible container elements, and the image inside is set to width: 100%;. So perhaps that image ends...
Why Bitpay Is Really Charging More for BTC Transactions
6.6.2019
Bitpay has recently been attacked on social media for charging an extra fee for BTC transactions that it doesn’t ask of BCH users. The reality is that the company simply has to cover its operational costs related to the BTC network, whose fees are currently very high again. Also Read: How...
Dogecoin Price Analysis: Well, It Doesn’t Seem To Be Dead After All!
5.6.2019
Just hearing the name Dogecoin makes people giggle, at least that’s what it is good for! However, with the periodic update, it seems to lie Bitcoin might not quit anytime soon. The value might be surging downwards, but it is surely gaining attention from everywhere. And maybe that was enough...
Bitcoin's Overnight Crash Doesn't Stop Experts From Remaining Macro Bullish
2.6.2019
On the eve of May 31, Bitcoin briefly dropped to $8,000 in an 11% drop: Are experts still macro bullish on its price trend? Analysts breakdown potential scenarios in which bitcoin recovers to a new 2019 high or drops below key supports
10 Web Performance Audit Tips for Your Next Billion Users in 2018: Resolution Switching
26.5.2019
We need to learn that when it comes to responsive design, this doesn’t cut it for responsive images:
img {
width: 100%;
height: auto;
}
This is not a silver bulle
10 Web Performance Audit Tips for Your Next Billion Users in 2019: Resolution Switching
26.5.2019
We need to learn that when it comes to responsive design, this doesn’t cut it for responsive images:
img {
width: 100%;
height: auto;
}
This is not a silver bulle
Facebook Globalcoin: Bitcoin Killer or Bitcoin Multiplier?
25.5.2019
It may sound like a 2014-era shitcoin, but Globalcoin is this year’s most anticipated new digital asset. It doesn’t matter that it’s not decentralized, not permissionless, and not even crypto. The only question that really matters is what does Facebook’s currency spell...
Front-End Documentation, Style Guides and the Rise of MDX
23.5.2019
You can have the best open source project in the world but, if it doesn’t have good documentation, chances are it’ll never take off. In the office, good documentation could save you having to repeatedly answer the same questions. Documentation ensures that people can figure out how things work...
The “Inside” Problem
20.5.2019
So, you're working on a design. You need a full-width container element because the design has a background-color that goes from edge-to-edge horizontally. But the content inside doesn’t necessarily need to be edge-to-edge. You want to:
Limit the width (for large screens)
Pad the edges
Center...
Everything You Ever Wanted to Know About inputmode
17.5.2019
The inputmode global attribute provides a hint to browsers for devices with onscreen keyboards to help them decide which keyboard to display when a user has selected any input or textarea element.
<input type="text" inputmode="" />
<textarea inputmode="" />
Unlike changing the type...
Our Value of Money Is Subjective But That Doesn’t Make It Meaningless
14.5.2019
In my last op-ed, I discussed how the value we place on items and goods is subjective based on Carl Menger’s Subjective Theory of Value and how these concepts apply to people’s perception of value with things like fiat, gold, and bitcoin. The post outlined the idea that money cannot...
All of It Dark, All of It P2P: After the Binance Hack, Bitcoin Doesn’t Cut It
10.5.2019
That Binance could have colluded with miners to roll back hack transactions means bitcoin is not resistant enough to censorship, says Amir Taaki
Naming things to improve accessibility
2.5.2019
I like the this wrap-up statement from Hidde de Vries:
In modern browsers, our markup becomes an accessibility tree that ultimately informs what our interface looks like to assistive technologies. It doesn’t matter as much whether you’ve written this markup:
in a .html file
in Twig, Handlebars...
Interviewing for a Technical Position Doesn’t Have to Be Scary
26.4.2019
Jacob Schatz (@jakecodes) is a staff engineer over at GitLab and was kind enough to share how he conducts job interviews for technical positions and his thinking process for them. Technical interviews are talked about often and can be a touchy subject for some, so it’s worth noting that this...
Faking env() to Use it Now
18.4.2019
There is already an env() function in CSS, but it kinda came out of nowhere as an Apple thing for dealing with "The Notch" but it has made it's way to be a draft spec. The point will be for UAs or authors to declare variables that cannot be changed. Global const for CSS, sorta.
That spec doesn't...
Creating Reusable Base Classes in TypeScript with a Real-Life Example
18.4.2019
Hey CSS-Tricksters! Bryan Hughes was kind enough to take a concept from an existing post he published on converting to TypeScript and take it a few couple steps further in this post to elaborate on creating reusable base classes. While this post doesn’t require reading the other one, it’s certainly...
Inline SVG… Cached
12.4.2019
I wrote that using inline <svg> icons makes for the best icon system. I still think that's true. It's the easiest possible way to drop an icon onto a page. No network request, perfectly styleable.
But inlining code has some drawbacks, one of which is that it doesn't take advantage...
Accessibility Events
11.4.2019
“There isn't some way to know when—…?”
There is always a pause here. The client knows what they're asking, and I know what they're asking, but putting it into words—saying it out loud—turns unexpectedly difficult.
In the moments before the asking, it was a purely technical question—no different...
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...