We consider an economy in which a heterogeneous population of agents have to choose among a common set of alternatives. The utilities associated to the different alternatives posses a common component and an individual component, which reflect differences in the underlying structure of agents preferences. The common components are characterized by a fixed term which describe the intrinsic utility of each choice, and by a social component which depends on the actual distribution of agents across the different alternatives. We analyze the case of linear positive externalities. Assuming a simple Markovian process for the revision of the selection process, we derive the equilibrium distribution of the population of agents. We analyze in details the extremal cases of few choices and large population of agents. The proposed models can be applied to different domains of economics, like technological adoption, location of production activities, co-evolution of business models or financial decision rules. The resulting self-reinforcing dynamics can be considered an alternative formulation of the Polya urn scheme developed by Brian Arthur et al. (1986) when the possibility of choice revision is taken into account. We analyze the differences and similarity of the two approaches.