If you somehow catch a sympathetic ear then please try to get them to also change the default configuration (if you omit lcd.begin() statement) to the 16x2 configuration instead of the almost non-existent 16x1.
Don
While this is primarily an issue for other LiquidCrystal compatible library's it is something
to be aware of.
A potential problem with omitting lcd.begin() is that not all the LiquidCrystal compatible librarys call begin() from
their init() function which is often called from the constructors.
Some constructors and init() functions merely initialize their private object variables and perhaps set up
some of the Arduino pins but don't actually initialize the LCD hardware. The actual LCD initialization is
done later, often in begin().
The issue that comes into play is that not all the Arduino facilities are available when C++ constructors are called
because constructors are called so early during the C/C++ runtime initialization.
Because of this it may not be possible to initialize the LCD hardware if it is using something
more complex than directly connected 4/8 bit mode.
(I2c, serial, or some other hardware that may depend on interrupts, delay() etc...).
Just something to keep in mind.
--- bill