I've logged into a few new web apps recently, and have experienced that 'what do I do now?' feeling on the first use.
For that reason, I'm putting a lot of effort into merging my sign up workflow and user experience into the first few uses of my app, keeping them on board and walking them through the app, hopefully motivating my users to put the effort into learning the application.
A few concrete I'm ideas I'm using on my home screen.
1) The ability to easily seed the database with sample data and then drop that data when they are ready to start entering their own.
2) Integrated tutorials that walk them through the use of the software within the context of their own user account.
3) Integrated help files accessible right in the app, not hidden away on the public site.
4) Optional detailed tooltips which they can turn off once they become proficient with the app.
5) Subtle marketing messages to keep the user excited and interested.
Dashboards for the proficient user are probably a different question. (Maybe users wouldn't want to be bothered with the above, and would appreciate a traditional management information overview style of dashboard.) I haven't decided how yet, but I want to move from one style of dashboard to the other as the user moves from beginner to advanced, helping move from new user to expert.
There is also a relevant post by 37 Signals on this topic:
http://gettingreal.37signals.com/ch09_The_Blank_Slate.php For the design of traditional management information BI dashboards, I can't recommend this book highly enough:
The most important thing for any dashboard is the ability to select exactly which gadgets and what type of information to be on the dashboard, instead of several preselected graphs and tables, which in most cases are only slightly relevant to the information that I'm really interested in. It would be really nice if there is an option to change the way in which the data is presented, i.e whether some chart is pie chart or bar chart, etc.
Unfortunately, most of the dashboard that I saw do not have such flexibility.
Tips for brand new clients in a very non-technical market One thing that I've been doing very successfully is creating STEP 1, STEP 2, STEP 3, etc. They are the ONLY things that a brand new client can do. If he tries to go to a menu item like "Reports", he gets redirected to "Before you can view reports, you have to set up X".
For example, I have a product for churches that allows church members to set up automatic tithes. Before a church can do anything in the system, they have to create at least one offering, enter in Authorize.net details, enter billing details, etc. Once a step has been completed, it changes colors and instead of "set up now" it says "done". When all steps are complete, the client never sees these again...ever.
After system has been set up completely, they see basic reports, recent tithes, etc.
I've been thinking a lot (and trying to implement) incremental UI. When someone creates an account, give them one big option "Start here" or "Upload your first file here" (and a few others like account, sign out). Then once they've done that, show them the second action, "Great, now share it with friends...". Don't show them again once they've done it.