Today in the news, reports that Microsoft per-CPU pricing will treat multi-cored CPUs as one. The fact that intelligent people should even have to think about this is further evidence, if any were needed, that per-CPU software pricing is Broken As Designed. To start with, it’s unstable in the face of Moore’s law and things like multi-coring. Second, and this argument is really unanswerable, it’s radically decoupled from both the cost to the vendor and the value to the user. For infrastructure, the per-employee pricing that we’re trying here at Sun out seems to be the best bet for capturing the buyer value. There are some other classes of applications that deliver a lot of value but are used by small groups; CRM, traditional BI (but my last company Antarctica is trying to break that mold), trader’s-desk systems. For small-group software per-identified-user or per-parallel-user can each sometimes make sense. But I am completely at a loss to think of a single software scenario where per-CPU pricing is rational or defensible.