I am currently a consultant, and usually work for extremely large companies. I have been programming for over 20 years, and understand hardware and administration well.
I first encountered Notes at release 3, but a quick read through its manuals showed it did not have capabilities to interest me. This is a symptom of being a programmer that I belittle later in the discussion about "Why Notes is Slow". The need to write true code is a sign of a real programmer; macro and scripting languages are not enough for us.
In 1996, I worked as a Notes Administrator in a company running Notes4.11a. Notes4 had gained a true programming language called LotusScript, but it was poorly designed. The language was overhauled for Notes4.1, and Notes4.11a was the first release worthy of use in production (and my programming skills.) While I was an administrator, we upgraded to Notes4.5 and then to Notes4.6. The key additional feature for Notes4.5 was the integrated web server. Most of the techniques in this book will work with Notes4.5, but it is expected that a much newer release would be used. The examples are tested with Notes5, unless demonstrating a feature that requires Notes6.