Programming Computer Therory
===

In the world of programming, hardware and software are go in hand to hand. How do we have to evaluate the resource utilization while programming? For eg., when we design web-projects how do we estimate the number of requests that it will handle or  When we create a database how do estimate these many records or dbs or tables this server would be able to handle(for eg in a workstation with given configuration, resources etc.,). Is there are any theoretical computation to analyze   these like the O-notations for the algorithms? 