How to publish your PWA onto the Google Play Store

Thanks to the Trusted Web Activity feature in Chrome 72 on Android, the Google Play Store is now open for Progressive Web Apps. Chrome 72 for Android is now shipping from the Play Store to all users and this version included Trusted Web Activity (TWA), that in a nutshell is a way to open Chrome […]

The Modem Dialup Sound, Visualised

Remember the dialup sound of your modem from back in the day? Those beeps and glitches aren’t just random garbage, but they’re the handshake between two modems trying to agree on which language they’ll be speaking to one another. Oona Räisänen has created this nice poster of a spectogram of said handshake, detailing what each […]

useHooks(🐠) – Easy to understand React Hook recipes

Hooks are an upcoming feature that lets you use state and other React features without writing a class. This websites provides easy to understand code examples to help you understand how hooks work and hopefully inspire you to take advantage of them in your next project. useHooks(🐠) → 💁‍♂️ Not familiar with Hooks? The announcement […]

Creating vs. Shipping

Creating is easy. Shipping is the hard part, and countless companies never quite figure it out. Sure, they might release their software, but that’s not the same as shipping. No company is perfect, but it makes a big difference when they genuinely care. Shipping is about consistency. It’s regularly updated help documents. It’s responsive and […]

Tools to automatically format PHP, JavaScript and CSS files

Good writeup by Freek on how to get PHP-CS-Fixer and Prettier up and running. When working on a project with other people, it’s important to pick a coding standard. Agreeing on a coding standard makes the code more readable for all developers that need to touch the project. It’s easy to make mistakes against those […]

Multilingual Sites: Styling translated text

Ire Aderinokun on why you should use the :lang pseudo-class over the lang attribute selector (e.g. [lang]) for language-specific styles: The problem with having language-specific styles based on the [lang] attribute selector is that the selector isn’t actually aware of the language of the element. It’s just like any other “dumb” attribute selector. This can […]