Ending spoilers below.
I just finished the game (at least for the first time :))...while the ending was at least OK, I had one big issue.
During most of the game, you obtain passwords be acquiring an object with the password written on it. You might get this by killing someone, opening a safe, etc.
However, the end of the main quest involves activating a big gadget which has an activation code. In this scene you are just put in front of a keypad and have to start guessing.
To be fair, there are hints, which some might even call obvious. But since the entire game has been training you to expect a physical object with the password on it (an object which says "the password is: X", I didn't go into "figure out a puzzle" mode. I went into "WTF? Look it up on the internet" mode. When I did, I discovered the best part -- there are a couple of dialog paths which have you telling the code to someone else. If, in the final scene, I ask someone else to activate the gadget for me, I can tell them the code -- and the dialog option includes the code itself! Rather than figure out a puzzle, the game assumes I have figured it out.
Here is how it should have worked:
At the right point in the game, a side quest is spawned: "Figure out the Code". Your character has some way to try out the code (an option on the PIP Boy, another item, a console somewhere, etc.). Since it's a quest, maybe you can talk to a few people who might give you hints about how the code was created.
Once you enter the proper code, the quest is solved and the game knows that you have the code. If you enter dialogs involving the code before that, you can't tell anyone the code. If you have completed the quest, you can give away the code.
This would combine the dialog and puzzle solving objectives in a manner consistent with the game's engine and semantics.
I do get the feeling that the main quest was a bit forced.
Also, a color picture of clean water at the end would have been nice!