---
title: "Geni Jaho (@genijaho) | Hashnode"
description: "It's not a bug, it's a lifestyle! Read the latest articles by Geni Jaho on Hashnode."
url: "https://hashnode.com/@genijaho"
---

@genijaho

# Geni Jaho

@genijaho · Joined July 2021

It's not a bug, it's a lifestyle!

[Website](https://genijaho.dev/)

### [Simplifying work with custom stubs in Laravel](https://blog.genijaho.dev/simplifying-work-with-custom-stubs-in-laravel?utm_source=hashnode&utm_medium=feed)

Stubs are fake implementations of interfaces or classes that simulate the behavior of real services.

4 min read · [blog.genijaho.dev](https://blog.genijaho.dev/simplifying-work-with-custom-stubs-in-laravel?utm_source=hashnode&utm_medium=feed)

[May 17, 2025](https://hashnode.com/posts/simplifying-work-with-custom-stubs-in-laravel/6828b7062cccef1a9230ef6c)

### [Upgrading to Laravel 10, PHPUnit 10, and Pest 2](https://blog.genijaho.dev/upgrading-to-laravel-10-phpunit-10-and-pest-2?utm_source=hashnode&utm_medium=feed)

We're upgrading from Laravel 9 to 10, and PHPUnit 9 to 10, and, if all goes well, we'll top it off by migrating to Pest, the latest version. To keep the positive vibes on I'll skip an upgrade from PHP 8.1 to 8.2, just because I don't want to restart ...

4 min read · [blog.genijaho.dev](https://blog.genijaho.dev/upgrading-to-laravel-10-phpunit-10-and-pest-2?utm_source=hashnode&utm_medium=feed)

[Sep 17, 2023](https://hashnode.com/posts/upgrading-to-laravel-10-phpunit-10-and-pest-2/650708c0bbc7651b30a0ef3d)

### [Speed up GitHub Actions by caching Composer, Rector, & Pint](https://blog.genijaho.dev/speed-up-github-actions-by-caching-composer-rector-pint?utm_source=hashnode&utm_medium=feed)

GitHub's 2000 minutes per month of free usage of GitHub Actions is usually enough to handle light workflows. However, as more tech is run automatically, we are forced to upgrade to a paid plan or optimize our workflows. Currently, I am running Rector...

5 min read · [blog.genijaho.dev](https://blog.genijaho.dev/speed-up-github-actions-by-caching-composer-rector-pint?utm_source=hashnode&utm_medium=feed)

[Jun 20, 2023](https://hashnode.com/posts/speed-up-github-actions-by-caching-composer-rector-pint/6491be9395a46490eec745db)

### [Doing stricter checks in PHP](https://blog.genijaho.dev/doing-stricter-checks-in-php?utm_source=hashnode&utm_medium=feed)

A nice refactoring I've learned recently is to utilize types in conditionals. For years I’ve been doing if (!empty($posts)), but Rector, a tool to automatically refactor code, changed that to if ($posts === \[\]). The main advantage of using $posts ===...

3 min read · [blog.genijaho.dev](https://blog.genijaho.dev/doing-stricter-checks-in-php?utm_source=hashnode&utm_medium=feed)

[3](https://hashnode.com/posts/doing-stricter-checks-in-php/6431e0e593ca2d4575fcf3aa) [Apr 8, 2023](https://hashnode.com/posts/doing-stricter-checks-in-php/6431e0e593ca2d4575fcf3aa)

### [Upgrading to Eloquent accessors & mutators from Laravel 9](https://blog.genijaho.dev/upgrading-to-eloquent-accessors-and-mutators-from-laravel-9?utm_source=hashnode&utm_medium=feed)

Laravel 10 is making the headlines these days. However, many apps are stuck in older versions, or at least still use the syntax and methods of older releases. One of the most significant changes introduced in Laravel 9 is the syntax for accessors and...

3 min read · [blog.genijaho.dev](https://blog.genijaho.dev/upgrading-to-eloquent-accessors-and-mutators-from-laravel-9?utm_source=hashnode&utm_medium=feed)

[Feb 26, 2023](https://hashnode.com/posts/upgrading-to-eloquent-accessors-and-mutators-from-laravel-9/63fb4f481a49f4ca1696b73c)
