Why I Switched Back From DevRel to Engineering

Developer Relations - well-paid & fancy job that involves lots of traveling, speaking at conferences, interacting with developers regularly, and creating content. What's not to like? Why would anyone go back to coding? You'll see why in this article. A short note on DevRel In the…

Should New Developers Use AI Coding Tools?

AI coding tools like GitHub Copilot, ChatGPT and similar tools took the software development world by storm. Some developers love them, some dismiss them, and the rest are neutral. Personally, I enjoy using them, and I believe they can help developers of all levels, including new developers. However, there are…

Validate Environment Variables With Zod

This article teaches you how to validate environment variables with Zod. Zod is a validation library that enables you to validate your data against a pre-defined schema. The schema defines the type of your data. For instance, if you have the name field and you want to make sure it&…

Rethink Full-Stack Development: Is a Custom Backend the Best Choice?

This article covers the conventional way of building full-stack applications and why manually building your backend is not always the best choice. You'll see an alternative solution for your backend needs that can be used standalone or coupled with your custom-built backend. The issues with the traditional backend…

Powerful Form Validation With React Hook Form and Zod

Zod is a lightweight and powerful validation library for JavaScript and TypeScript applications. It enables you to define the structure of your data through schemas and validate the input data against those schemas. Although it can be used with JavaScript applications, Zod works greatly with TypeScript. Zod can automatically generate…

How to Create and Validate Forms With React Hook Form

React Hook Form (RHF) is a library for managing and validating forms. It's a performant library that improves the app performance by reducing the amount of code you need to write and minimizing the number of re-renders. RHF is also super light having zero dependencies. Lastly, you can…

Configure Ghost Mail with Gmail SMTP Server

Sending transactional emails from a self-hosted Ghost instance requires you to configure the mail manually. Transactional emails refer to emails containing password resets, member invitations, signup and login links. If you have a Gmail account, you can use the Gmail SMTP server for free to send up to 500 emails…