Interesting reads — volume #8

Luka Peharda
Feb 27 · 6 min read

A curated list of interesting articles, tweets, books, and podcasts mainly (but not exclusively) about web development.

I bet you thought I won’t be able to deliver interesting reads for two months in a row? Well, aren’t you a pessimist :) To be honest, I’m surprised myself that I did.

It seems that the trick of spending 5 minutes on it every day is working for me. So if you are having trouble with grit, here is what you need to do — dedicate 5 mins each day for the task that you are having a problem with and add it to your calendar app as a recurring task. Do not skip on notifications as they can be quite helpful when starting.

On some days you’ll end up spending less than 5mins and on some days a bit more. It does not matter. What matters is that you keep up with it and compound the work each day.

On to the content for this month, a lot of WordPress, Laravel and JavaScript articles and tips this month. Even though they are showcased in some framework or an app (what would you call a WordPress, a framework, or an app, or maybe both?) most of its principles are universal and can be applied to different programming languages and frameworks.

Website Builders vs. Website Consultants

Great overview of why website building tools (either being SaaS or WP plugins) are much cheaper than an agency or consultant fees. I’m not saying that website builders are bad, heck I’m even a part of a development team for OptimizePress WordPress builder (page builder made for marketers, coaches & creators), but you (and your clients) need to know its limitations and its disadvantages. I’ve bookmarked this article and I’m sharing it with every one of my clients that complains about my prices. And you should do this too.

James Clear: The ultimate productivity hack is saying no

James Clear is an author of amazing book Atomic Habits that anyone interested in improving themselves and their habits should read. This tweet is a simple yet most effective productivity hack ever.

No “yes.” Either “HELL YEAH!” or “no.” from Derek Sivers’ book “Anything you want” ties in nicely with this and this quote is something that I’ve started to use this year as guidance whether to get involved in a project or not.

The Rise Of The State Machines

Using state machines when dealing with complex data or UI states that changes from user-initiated action are something that I’ve started using lately and it can be a sanity saver in a complex scenario. It takes a while to get used to it but when you do, and you implement it properly, you won’t be having inconsistent situations anymore. This old article from Smashing Mag is something I’ve discovered recently, but as most of their articles are, it is really nicely written with great examples and easy to follow.

Integrated systems for integrated programmers

Interesting opinion and overview of microservice craze by @DHH. He certainly makes several good points about microservices vs. integrated applications and suggests that by using “conceptual compression” you could easily fit the whole application in your brain without reverting to splitting it up and using microservice architecture.

Easily create animated loading spinners

Simple but very useful web tool for generating loading spinner graphics with several formats to export to (GIF, SVG, CSS, PNG, …). And while we are on the subject of small single-purpose tools for web developers, be sure to check out Tiny Helpers — a collection of free single-purpose online tools for web developers.

JavaScript Techniques For Server-Side Applications

Caleb Porzio explains how to make small portions of your app “dynamic” without reverting to using a JavaScript framework by using server-side rendered partials. I’ve been using it lately in some of my Laravel and WordPress projects in stuff like search and data filtering and it feels really responsive while super fast to build.

As you can see in his videos, even Github uses a system like that and have an amazing custom HTML element library for this.

Btw. seems like Caleb is on 🔥lately and is cranking out stuff at a rapid pace. Check out his “Eloquent’s missing array driver” package for Laravel. I don’t know how I managed to live this long without this one 😀

Everyone has JavaScript, right?

Flowchart overview of scenarios where your user (or their browser) might not have JavaScript enabled or allowed. It makes you wonder if we are relying on it too much…

Laravel Mailcoach Tests repository

Repo with all tests from the Mailcoach app pulled out so you can learn from them. Another great repo by Spatie. Btw. do check the Mailcoach app — a self-hosted email list manager built using Laravel.

Implementing Dark mode with TailwindCSS

What a wonderful way of implementing dark (or light) mode when using the TailwindCSS (a utility-first) CSS framework. Abdelrahman wanted to create a light mode for his website and did that by adding extra “screen” size definition which he then uses as a prefix for his classes. A simple and elegant solution. And you can use the same concept for styling your pages for print.

I’ve used this solution on my brand new personal page to add light mode in under half an hour.

And while we’re at the subject of light and dark mode, check out to see how to change favicon according to the selected mode.

While we’re at the subject of TailwindCSS, I’ve been discussing utility-first CSS frameworks with my colleagues who are not so fond of them and couldn’t see why they are useful and what are the benefits. Well, one of the biggest benefits in my mind is that they solve one of the biggest problems in programming — naming things 😂

Using them you will not have to worry about what class name to use for different HTML elements and if they make sense. I know this may sound like a joke, and in a way it is, but it definitely leaves a lot of headspace for doing work that matters to you.

The 8 Biggest Mistakes to Avoid When Applying For a Remote Job

If you are thinking about changing a job and you are interested in doing remote work be sure to read this article by Doist and adjust your strategy. Despite the article’s title sounding like a typical bait, there is really some good advice here.

How to avoid large function signatures by using pending objects

A great tactic for avoiding large function signatures — using pending objects and PHP’s __destruct object method for “executing” a pending object.

This is all for this month’s Interesting Reads which I believe is biggest so far. Feel free to clap. Or not. Or to comment or even share this. I’d appreciate it.

Luka Peharda

Written by

Web developer specialised in WordPress and Laravel

More From Medium

Welcome to a place where words matter. On Medium, smart voices and original ideas take center stage - with no ads in sight. Watch
Follow all the topics you care about, and we’ll deliver the best stories for you to your homepage and inbox. Explore
Get unlimited access to the best stories on Medium — and support writers while you’re at it. Just $5/month. Upgrade