I spent quite a bit of time on StackOverflow and other StackExchange sites, especially when I am stuck with an particularly stubborn bug (or wanting some distraction). The answers there are generally reliable, helpful and well meaning, though you occasionally get a few snobby comments. So when I wanted to create a more user friendly stock ticker tagging WordPress, I immediately decided to steal... i mean reverse engineer, their tagging system.
Looking the page with Firebug, the tags box basically contains a text input element that gets pushed over when new tags gets inserted. It would look something like this:
Mongodb is a document-oriented NoSql (reads not-only-sql) database designed with scalability in mind. Data in mongodb are stored in BSON (binary JSON) format, and as of version 1.7/1.8, has a limit of 16MB. This is usually not a issue if you plan to use mongo to store data, but might be limiting if you plan to store binary files. Luckily, mongodb also offers a way to store large files, using GridFS, which transparently splits the data into chunks.
The Spring-Data-Mongodb project offers a nice high level framework for working with mongodb, which recently released 1.0.1.RELEASE version.