Guest Blogger Tutorials
Thinking JavaScript
I was teaching a JavaScript workshop the other day and one of the attendees asked me a JS brain teaser during the lunch break that really got me thinking. His claim was that he ran across it accidentally, but I'm a bit skeptical; it might just...
Focusing on Focus
What's up my a11y allies? Were you aware that the mouse and keyboard handle focus differently? Well it's true. Both handle them differently, and depending on what browser you are in also matters...a lot actually. Focus is a crucial element to the usage and experience of the...
Shoelace.css: A Back to the Basics CSS Starter Kit
CSS frameworks such as Bootstrap and Semantic UI have become an essential part of web design. They provide the necessary resets, default styles, and components that save us hours and hours of work. Most CSS frameworks are built using preprocessors such as Less or Sass, which is...
Streaming Data with Fetch() and NDJSON
*"If you stream it, you can do it" -- Walt Disney[^1] * Streams are trickling into the scene as we search for ways to improve performance. What if instead of waiting for our entire ajax response to complete, we could start showing the data as it arrives? Streams...
Chris Coyier: Some Amazing Work on CodePen III
I'm back! David asked me to rope up some of my favorite stuff on CodePen again, which I both love doing, and wince at the thought of having to pick so few favorites. I like a ton of stuff on...
JPEG Compression with Guetzli
A little while ago Google released its Guetzli JPEG encoder, which claims a 20-30% improvement in file size over libjpeg. Being intrigued, I decided to give it a go. My tool of choice for optimizing JPEGs has long been jpeg-recompress, one of the...
Functional Programming (FP) By Any Other Name…
Don't worry, this is not YAMA (yet another monad article)! Instead, I want to talk about a library I've recently released that offers a helpful twist on typical functional programming ("FP") operations (like
map(..)
,compose(..)
, etc). Before we jump in: if you're like me and have tried...Modern JavaScript Apps with Neutrino
Utilize tooling that harnesses the power of Webpack with ease of simple presets to quickly start JavaScript projects, all without upfront configuration. Taking the plunge into starting a new JS project often brings along a significant effort into preparing your environment prior to starting development on the...
WhitestormJS v2 Beta: New Ecosystem
We always improve our apps: refactor, update dependencies, practices as well as user experience. In whitestorm.js v2 we update API, app structure. The main goal of the second version is to improve flexibility as much as we can. 3D rendering is a bit more complicated than I...
How Blockchain Technology Will Secure Online Payments
Look around at the business climate today and you will find a multitude of fintech startups, including bitcoin exchange ones. This tells us that the financial services industry is ripe for disruption, and the most prominent candidate is blockchain. Blockchain is to banks as the...