My client wanted to host his site with "Under Development" banner until it's finished. The only content on this site is graphic with that text. Should I block search engines in robots.txt until it's finished? This site will be linked from facebook etc before we'll finish it.
Websites are never truly finished, but why are you using 'Under Development'? This will annoy users, especially if you are driving traffic from social media. Don't do it. Educate your client on this and launch with an agreed set of minimum content.
You could soft launch (in other words don't publicize the site in any way), in which case I would block everything off with a robots.txt file so isn't crawled and not drive any traffic through social. To be honest, if it were me I'd just wait as 'Under Development' is bad.
If you have any content at all that is worth being indexed by search engines, I would allow for your site to be crawled and accessible while it's under development. I think it's better to get your content out there while you can.
Also, Google has been known to rank sites based on age. And Matt Cutts says that Google determines domain age by when it was first discovered and crawled instead of it's domain registration date. So it's better to have your site discovered now.
Sometimes it's better to launch a product or site when it's ready, especially if you think you can make a big splash on your release date. If your content is truly not useful at the moment, it could be better to hold out. It's possible that Google could discover your site, determine that it's useless and not come back to look at it later on.
But if you have any decent content on there now I would try to get it indexed while you can.