A working engineer's account of how PHP and Ruby actually resolve, install and load dependencies, treated as two ecosystems with a shared lesson structure rather than merged into generic advice. You will cover Composer's composer.lock against Bundler's Gemfile.lock and what each does and does not pin, native extensions written in C in both ecosystems and what that means for review, the difference between autoloading and an explicit require and when each actually executes code, private registries and the source priority confusion attack, version constraint operators that look similar but resolve differently, and the long tail of abandoned packages that older codebases in both ecosystems accumulate. It closes with overriding a vulnerable transitive dependency, upgrading a dependency several major versions behind, and the PHP and Ruby appendix of a policy that has to hold across many ecosystems. Companion to the published Java, JavaScript, Python and Go courses in the same series.
Nothing. Every course, exam, and certificate on the catalog is free — including retakes. All you need is a free Safeguard account.
None. The flagship course, Safeguard Certified Practitioner, is a beginner-level course — basic familiarity with how software is built helps, but every exam question is answerable from the lessons themselves.
You can retake it after a 24-hour cooldown, as many times as you need. Retakes are free, and each attempt draws a fresh random set of questions.
The Safeguard Certified Practitioner credential is valid for 24 months from issue. The expiry date is printed on the certificate and shown live on its public verification page. Renewing means passing the current exam again.