You can just say `make hello` — no Makefile required! And then run with `./hello` instead of invoking the more obscure a.out
Obviously that doesn’t scale, but for a beginner it’s simple.
replies(2):
For bigger projects they are considered an anti-pattern and should be disabled (-r), because they can cause all kinds of surprises, (actually, using make to begin with is sortof an anti-pattern) . For example, implicit rules may try to compile using Fortran if it finds a file ending with .f, that's just the tip of the iceberg, getting unexpected outputs or missing outputs is another danger. There are also claims that disabling them can give a performance boost.